stream-chat-react 9.4.0 → 10.0.0-theming-v2.2

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 (520) hide show
  1. package/dist/browser.full-bundle.js +16760 -13355
  2. package/dist/browser.full-bundle.js.map +1 -1
  3. package/dist/browser.full-bundle.min.js +20 -5
  4. package/dist/browser.full-bundle.min.js.map +1 -1
  5. package/dist/components/Attachment/Attachment.d.ts +1 -0
  6. package/dist/components/Attachment/Attachment.d.ts.map +1 -1
  7. package/dist/components/Attachment/Attachment.js +80 -35
  8. package/dist/components/Attachment/AttachmentActions.d.ts.map +1 -1
  9. package/dist/components/Attachment/AttachmentActions.js +2 -6
  10. package/dist/components/Attachment/AttachmentContainer.d.ts +12 -0
  11. package/dist/components/Attachment/AttachmentContainer.d.ts.map +1 -0
  12. package/dist/components/Attachment/AttachmentContainer.js +107 -0
  13. package/dist/components/Attachment/Audio.d.ts +11 -0
  14. package/dist/components/Attachment/Audio.d.ts.map +1 -1
  15. package/dist/components/Attachment/Audio.js +59 -32
  16. package/dist/components/Attachment/Card.d.ts +5 -20
  17. package/dist/components/Attachment/Card.d.ts.map +1 -1
  18. package/dist/components/Attachment/Card.js +93 -15
  19. package/dist/components/Attachment/DownloadButton.d.ts +6 -0
  20. package/dist/components/Attachment/DownloadButton.d.ts.map +1 -0
  21. package/dist/components/Attachment/DownloadButton.js +8 -0
  22. package/dist/components/Attachment/FileAttachment.d.ts +1 -1
  23. package/dist/components/Attachment/FileAttachment.d.ts.map +1 -1
  24. package/dist/components/Attachment/FileAttachment.js +23 -6
  25. package/dist/components/Attachment/FileSizeIndicator.d.ts +6 -0
  26. package/dist/components/Attachment/FileSizeIndicator.d.ts.map +1 -0
  27. package/dist/components/Attachment/FileSizeIndicator.js +8 -0
  28. package/dist/components/Attachment/hooks/useAudioController.d.ts +9 -0
  29. package/dist/components/Attachment/hooks/useAudioController.d.ts.map +1 -0
  30. package/dist/components/Attachment/hooks/useAudioController.js +45 -0
  31. package/dist/components/Attachment/icons.d.ts +5 -0
  32. package/dist/components/Attachment/icons.d.ts.map +1 -0
  33. package/dist/components/Attachment/icons.js +10 -0
  34. package/dist/components/Attachment/index.d.ts +1 -0
  35. package/dist/components/Attachment/index.d.ts.map +1 -1
  36. package/dist/components/Attachment/index.js +1 -0
  37. package/dist/components/Attachment/utils.d.ts +41 -4
  38. package/dist/components/Attachment/utils.d.ts.map +1 -1
  39. package/dist/components/Attachment/utils.js +63 -18
  40. package/dist/components/AutoCompleteTextarea/Item.d.ts.map +1 -1
  41. package/dist/components/AutoCompleteTextarea/Item.js +11 -4
  42. package/dist/components/AutoCompleteTextarea/List.d.ts +17 -1
  43. package/dist/components/AutoCompleteTextarea/List.d.ts.map +1 -1
  44. package/dist/components/AutoCompleteTextarea/List.js +19 -17
  45. package/dist/components/AutoCompleteTextarea/Textarea.d.ts +16 -2
  46. package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
  47. package/dist/components/AutoCompleteTextarea/Textarea.js +19 -16
  48. package/dist/components/AutoCompleteTextarea/utils.js +1 -1
  49. package/dist/components/Avatar/Avatar.js +10 -10
  50. package/dist/components/Channel/Channel.d.ts +7 -2
  51. package/dist/components/Channel/Channel.d.ts.map +1 -1
  52. package/dist/components/Channel/Channel.js +78 -69
  53. package/dist/components/Channel/LoadingChannel.d.ts +2 -0
  54. package/dist/components/Channel/LoadingChannel.d.ts.map +1 -0
  55. package/dist/components/Channel/LoadingChannel.js +20 -0
  56. package/dist/components/Channel/channelState.d.ts +1 -0
  57. package/dist/components/Channel/channelState.d.ts.map +1 -1
  58. package/dist/components/Channel/channelState.js +14 -9
  59. package/dist/components/Channel/hooks/useChannelContainerClasses.d.ts +9 -0
  60. package/dist/components/Channel/hooks/useChannelContainerClasses.d.ts.map +1 -0
  61. package/dist/components/Channel/hooks/useChannelContainerClasses.js +14 -0
  62. package/dist/components/Channel/hooks/useCreateChannelStateContext.js +6 -6
  63. package/dist/components/Channel/utils.d.ts +3 -0
  64. package/dist/components/Channel/utils.d.ts.map +1 -1
  65. package/dist/components/Channel/utils.js +9 -5
  66. package/dist/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
  67. package/dist/components/ChannelHeader/ChannelHeader.js +14 -9
  68. package/dist/components/ChannelList/ChannelList.d.ts +10 -4
  69. package/dist/components/ChannelList/ChannelList.d.ts.map +1 -1
  70. package/dist/components/ChannelList/ChannelList.js +32 -14
  71. package/dist/components/ChannelList/hooks/useChannelDeletedListener.js +10 -6
  72. package/dist/components/ChannelList/hooks/useChannelHiddenListener.js +10 -6
  73. package/dist/components/ChannelList/hooks/useChannelTruncatedListener.d.ts +1 -1
  74. package/dist/components/ChannelList/hooks/useChannelTruncatedListener.d.ts.map +1 -1
  75. package/dist/components/ChannelList/hooks/useChannelTruncatedListener.js +9 -5
  76. package/dist/components/ChannelList/hooks/useChannelUpdatedListener.d.ts +1 -1
  77. package/dist/components/ChannelList/hooks/useChannelUpdatedListener.d.ts.map +1 -1
  78. package/dist/components/ChannelList/hooks/useChannelUpdatedListener.js +9 -5
  79. package/dist/components/ChannelList/hooks/useChannelVisibleListener.js +9 -5
  80. package/dist/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts +1 -1
  81. package/dist/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts.map +1 -1
  82. package/dist/components/ChannelList/hooks/useMessageNewListener.js +9 -5
  83. package/dist/components/ChannelList/hooks/useMobileNavigation.d.ts +1 -1
  84. package/dist/components/ChannelList/hooks/useMobileNavigation.d.ts.map +1 -1
  85. package/dist/components/ChannelList/hooks/useNotificationAddedToChannelListener.js +9 -5
  86. package/dist/components/ChannelList/hooks/useNotificationMessageNewListener.js +9 -5
  87. package/dist/components/ChannelList/hooks/usePaginatedChannels.js +9 -5
  88. package/dist/components/ChannelList/hooks/useUserPresenceChangedListener.js +9 -5
  89. package/dist/components/ChannelList/utils.js +9 -5
  90. package/dist/components/ChannelPreview/ChannelPreview.d.ts +6 -0
  91. package/dist/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
  92. package/dist/components/ChannelPreview/ChannelPreview.js +5 -21
  93. package/dist/components/ChannelPreview/ChannelPreviewMessenger.d.ts.map +1 -1
  94. package/dist/components/ChannelPreview/ChannelPreviewMessenger.js +13 -9
  95. package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.d.ts +14 -0
  96. package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.d.ts.map +1 -0
  97. package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.js +29 -0
  98. package/dist/components/ChannelPreview/utils.js +2 -2
  99. package/dist/components/ChannelSearch/ChannelSearch.d.ts +6 -42
  100. package/dist/components/ChannelSearch/ChannelSearch.d.ts.map +1 -1
  101. package/dist/components/ChannelSearch/ChannelSearch.js +4 -160
  102. package/dist/components/ChannelSearch/SearchBar.d.ts +29 -0
  103. package/dist/components/ChannelSearch/SearchBar.d.ts.map +1 -0
  104. package/dist/components/ChannelSearch/SearchBar.js +93 -0
  105. package/dist/components/ChannelSearch/SearchInput.d.ts +9 -17
  106. package/dist/components/ChannelSearch/SearchInput.d.ts.map +1 -1
  107. package/dist/components/ChannelSearch/SearchInput.js +2 -4
  108. package/dist/components/ChannelSearch/SearchResults.d.ts +14 -8
  109. package/dist/components/ChannelSearch/SearchResults.d.ts.map +1 -1
  110. package/dist/components/ChannelSearch/SearchResults.js +44 -27
  111. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts +50 -0
  112. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts.map +1 -0
  113. package/dist/components/ChannelSearch/hooks/useChannelSearch.js +232 -0
  114. package/dist/components/ChannelSearch/icons.d.ts +6 -0
  115. package/dist/components/ChannelSearch/icons.d.ts.map +1 -0
  116. package/dist/components/ChannelSearch/icons.js +12 -0
  117. package/dist/components/Chat/Chat.d.ts.map +1 -1
  118. package/dist/components/Chat/Chat.js +4 -0
  119. package/dist/components/Chat/hooks/useChat.d.ts +1 -1
  120. package/dist/components/Chat/hooks/useChat.d.ts.map +1 -1
  121. package/dist/components/Chat/hooks/useChat.js +1 -1
  122. package/dist/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  123. package/dist/components/Chat/hooks/useCreateChatContext.js +3 -2
  124. package/dist/components/Chat/hooks/useCustomStyles.d.ts +1 -1
  125. package/dist/components/Chat/hooks/useCustomStyles.d.ts.map +1 -1
  126. package/dist/components/ChatAutoComplete/ChatAutoComplete.js +1 -1
  127. package/dist/components/DateSeparator/DateSeparator.js +1 -1
  128. package/dist/components/EmoticonItem/EmoticonItem.js +1 -1
  129. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts +1 -1
  130. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts.map +1 -1
  131. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.js +16 -3
  132. package/dist/components/EmptyStateIndicator/icons.d.ts +2 -0
  133. package/dist/components/EmptyStateIndicator/icons.d.ts.map +1 -0
  134. package/dist/components/EmptyStateIndicator/icons.js +3 -0
  135. package/dist/components/EventComponent/EventComponent.js +1 -1
  136. package/dist/components/Gallery/Gallery.d.ts.map +1 -1
  137. package/dist/components/Gallery/Gallery.js +16 -14
  138. package/dist/components/Gallery/Image.d.ts +7 -3
  139. package/dist/components/Gallery/Image.d.ts.map +1 -1
  140. package/dist/components/Gallery/Image.js +21 -9
  141. package/dist/components/Gallery/ModalGallery.d.ts +10 -0
  142. package/dist/components/Gallery/ModalGallery.d.ts.map +1 -0
  143. package/dist/components/Gallery/ModalGallery.js +16 -0
  144. package/dist/components/Gallery/index.d.ts +1 -1
  145. package/dist/components/Gallery/index.js +1 -1
  146. package/dist/components/InfiniteScrollPaginator/InfiniteScroll.d.ts +2 -0
  147. package/dist/components/InfiniteScrollPaginator/InfiniteScroll.d.ts.map +1 -1
  148. package/dist/components/InfiniteScrollPaginator/InfiniteScroll.js +4 -1
  149. package/dist/components/LoadMore/LoadMoreButton.js +2 -2
  150. package/dist/components/Loading/LoadingChannels.js +2 -2
  151. package/dist/components/Loading/LoadingIndicator.js +1 -1
  152. package/dist/components/MML/MML.js +1 -1
  153. package/dist/components/Message/FixedHeightMessage.js +3 -3
  154. package/dist/components/Message/MessageDeleted.js +2 -2
  155. package/dist/components/Message/MessageOptions.d.ts +1 -0
  156. package/dist/components/Message/MessageOptions.d.ts.map +1 -1
  157. package/dist/components/Message/MessageOptions.js +9 -16
  158. package/dist/components/Message/MessageRepliesCountButton.d.ts.map +1 -1
  159. package/dist/components/Message/MessageRepliesCountButton.js +8 -5
  160. package/dist/components/Message/MessageSimple.d.ts.map +1 -1
  161. package/dist/components/Message/MessageSimple.js +41 -21
  162. package/dist/components/Message/MessageStatus.d.ts.map +1 -1
  163. package/dist/components/Message/MessageStatus.js +17 -8
  164. package/dist/components/Message/MessageText.d.ts +1 -1
  165. package/dist/components/Message/MessageText.d.ts.map +1 -1
  166. package/dist/components/Message/MessageText.js +10 -14
  167. package/dist/components/Message/QuotedMessage.d.ts.map +1 -1
  168. package/dist/components/Message/QuotedMessage.js +8 -3
  169. package/dist/components/Message/hooks/index.d.ts +0 -2
  170. package/dist/components/Message/hooks/index.d.ts.map +1 -1
  171. package/dist/components/Message/hooks/index.js +0 -2
  172. package/dist/components/Message/hooks/useEditHandler.d.ts +1 -1
  173. package/dist/components/Message/hooks/useEditHandler.d.ts.map +1 -1
  174. package/dist/components/Message/hooks/useReactionHandler.d.ts +3 -3
  175. package/dist/components/Message/hooks/useReactionHandler.d.ts.map +1 -1
  176. package/dist/components/Message/hooks/useReactionHandler.js +11 -7
  177. package/dist/components/Message/hooks/useUserRole.d.ts +1 -1
  178. package/dist/components/Message/hooks/useUserRole.d.ts.map +1 -1
  179. package/dist/components/Message/icons.d.ts +6 -4
  180. package/dist/components/Message/icons.d.ts.map +1 -1
  181. package/dist/components/Message/icons.js +25 -10
  182. package/dist/components/Message/index.d.ts +0 -3
  183. package/dist/components/Message/index.d.ts.map +1 -1
  184. package/dist/components/Message/index.js +0 -3
  185. package/dist/components/Message/utils.js +10 -6
  186. package/dist/components/MessageActions/MessageActions.d.ts.map +1 -1
  187. package/dist/components/MessageActions/MessageActions.js +3 -3
  188. package/dist/components/MessageActions/MessageActionsBox.d.ts.map +1 -1
  189. package/dist/components/MessageActions/MessageActionsBox.js +14 -7
  190. package/dist/components/MessageInput/AttachmentPreviewList.d.ts +2 -0
  191. package/dist/components/MessageInput/AttachmentPreviewList.d.ts.map +1 -0
  192. package/dist/components/MessageInput/AttachmentPreviewList.js +60 -0
  193. package/dist/components/MessageInput/EditMessageForm.d.ts.map +1 -1
  194. package/dist/components/MessageInput/EditMessageForm.js +11 -6
  195. package/dist/components/MessageInput/EmojiPicker.d.ts +1 -1
  196. package/dist/components/MessageInput/EmojiPicker.d.ts.map +1 -1
  197. package/dist/components/MessageInput/EmojiPicker.js +14 -17
  198. package/dist/components/MessageInput/MessageInput.d.ts +1 -1
  199. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  200. package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
  201. package/dist/components/MessageInput/MessageInputFlat.js +84 -10
  202. package/dist/components/MessageInput/MessageInputSmall.d.ts +9 -0
  203. package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
  204. package/dist/components/MessageInput/MessageInputSmall.js +10 -1
  205. package/dist/components/MessageInput/QuotedMessagePreview.d.ts +2 -1
  206. package/dist/components/MessageInput/QuotedMessagePreview.d.ts.map +1 -1
  207. package/dist/components/MessageInput/QuotedMessagePreview.js +29 -22
  208. package/dist/components/MessageInput/UploadsPreview.d.ts +7 -0
  209. package/dist/components/MessageInput/UploadsPreview.d.ts.map +1 -1
  210. package/dist/components/MessageInput/UploadsPreview.js +17 -6
  211. package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
  212. package/dist/components/MessageInput/hooks/useAttachments.js +8 -1
  213. package/dist/components/MessageInput/hooks/useCommandTrigger.d.ts.map +1 -1
  214. package/dist/components/MessageInput/hooks/useCommandTrigger.js +6 -4
  215. package/dist/components/MessageInput/hooks/useCooldownTimer.d.ts +1 -1
  216. package/dist/components/MessageInput/hooks/useCooldownTimer.d.ts.map +1 -1
  217. package/dist/components/MessageInput/hooks/useCooldownTimer.js +4 -4
  218. package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts +1 -1
  219. package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts.map +1 -1
  220. package/dist/components/MessageInput/hooks/useEmojiTrigger.d.ts +1 -1
  221. package/dist/components/MessageInput/hooks/useEmojiTrigger.d.ts.map +1 -1
  222. package/dist/components/MessageInput/hooks/useEmojiTrigger.js +23 -19
  223. package/dist/components/MessageInput/hooks/useFileState.d.ts +7 -0
  224. package/dist/components/MessageInput/hooks/useFileState.d.ts.map +1 -0
  225. package/dist/components/MessageInput/hooks/useFileState.js +8 -0
  226. package/dist/components/MessageInput/hooks/useImageUploads.d.ts.map +1 -1
  227. package/dist/components/MessageInput/hooks/useImageUploads.js +17 -36
  228. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts +2 -6
  229. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
  230. package/dist/components/MessageInput/hooks/useSubmitHandler.js +10 -6
  231. package/dist/components/MessageInput/hooks/useUserTrigger.d.ts +1 -1
  232. package/dist/components/MessageInput/hooks/useUserTrigger.d.ts.map +1 -1
  233. package/dist/components/MessageInput/hooks/useUserTrigger.js +13 -9
  234. package/dist/components/MessageInput/hooks/utils.d.ts +1 -1
  235. package/dist/components/MessageInput/hooks/utils.d.ts.map +1 -1
  236. package/dist/components/MessageInput/icons.d.ts +12 -2
  237. package/dist/components/MessageInput/icons.d.ts.map +1 -1
  238. package/dist/components/MessageInput/icons.js +67 -7
  239. package/dist/components/MessageList/CustomNotification.js +1 -1
  240. package/dist/components/MessageList/MessageList.d.ts +3 -0
  241. package/dist/components/MessageList/MessageList.d.ts.map +1 -1
  242. package/dist/components/MessageList/MessageList.js +17 -14
  243. package/dist/components/MessageList/MessageListMainPanel.d.ts +3 -0
  244. package/dist/components/MessageList/MessageListMainPanel.d.ts.map +1 -0
  245. package/dist/components/MessageList/MessageListMainPanel.js +9 -0
  246. package/dist/components/MessageList/MessageListNotifications.d.ts +2 -0
  247. package/dist/components/MessageList/MessageListNotifications.d.ts.map +1 -1
  248. package/dist/components/MessageList/MessageListNotifications.js +2 -2
  249. package/dist/components/MessageList/MessageNotification.d.ts +9 -6
  250. package/dist/components/MessageList/MessageNotification.d.ts.map +1 -1
  251. package/dist/components/MessageList/MessageNotification.js +1 -1
  252. package/dist/components/MessageList/ScrollToBottomButton.d.ts +3 -0
  253. package/dist/components/MessageList/ScrollToBottomButton.d.ts.map +1 -0
  254. package/dist/components/MessageList/ScrollToBottomButton.js +53 -0
  255. package/dist/components/MessageList/VirtualizedMessageList.d.ts +5 -0
  256. package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
  257. package/dist/components/MessageList/VirtualizedMessageList.js +41 -14
  258. package/dist/components/MessageList/hooks/useMessageListElements.d.ts +1 -1
  259. package/dist/components/MessageList/hooks/useMessageListElements.d.ts.map +1 -1
  260. package/dist/components/MessageList/hooks/useMessageListElements.js +4 -3
  261. package/dist/components/MessageList/hooks/useMessageListScrollManager.d.ts.map +1 -1
  262. package/dist/components/MessageList/hooks/useMessageListScrollManager.js +3 -1
  263. package/dist/components/MessageList/hooks/useNewMessageNotification.d.ts +2 -0
  264. package/dist/components/MessageList/hooks/useNewMessageNotification.d.ts.map +1 -1
  265. package/dist/components/MessageList/hooks/useNewMessageNotification.js +8 -1
  266. package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts +1 -2
  267. package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts.map +1 -1
  268. package/dist/components/MessageList/hooks/useScrollLocationLogic.js +12 -30
  269. package/dist/components/MessageList/icons.d.ts +8 -0
  270. package/dist/components/MessageList/icons.d.ts.map +1 -0
  271. package/dist/components/MessageList/icons.js +11 -0
  272. package/dist/components/MessageList/index.d.ts +1 -0
  273. package/dist/components/MessageList/index.d.ts.map +1 -1
  274. package/dist/components/MessageList/index.js +1 -0
  275. package/dist/components/MessageList/utils.d.ts +4 -2
  276. package/dist/components/MessageList/utils.d.ts.map +1 -1
  277. package/dist/components/MessageList/utils.js +16 -3
  278. package/dist/components/Modal/Modal.d.ts +2 -2
  279. package/dist/components/Modal/Modal.d.ts.map +1 -1
  280. package/dist/components/Modal/Modal.js +18 -15
  281. package/dist/components/Modal/icons.d.ts +2 -0
  282. package/dist/components/Modal/icons.d.ts.map +1 -0
  283. package/dist/components/Modal/icons.js +5 -0
  284. package/dist/components/Reactions/ReactionSelector.d.ts +2 -0
  285. package/dist/components/Reactions/ReactionSelector.d.ts.map +1 -1
  286. package/dist/components/Reactions/ReactionSelector.js +18 -9
  287. package/dist/components/Reactions/ReactionsList.d.ts +3 -1
  288. package/dist/components/Reactions/ReactionsList.d.ts.map +1 -1
  289. package/dist/components/Reactions/ReactionsList.js +33 -47
  290. package/dist/components/Reactions/SimpleReactionsList.d.ts +3 -1
  291. package/dist/components/Reactions/SimpleReactionsList.d.ts.map +1 -1
  292. package/dist/components/Reactions/SimpleReactionsList.js +41 -58
  293. package/dist/components/Reactions/hooks/useProcessReactions.d.ts +21 -0
  294. package/dist/components/Reactions/hooks/useProcessReactions.d.ts.map +1 -0
  295. package/dist/components/Reactions/hooks/useProcessReactions.js +51 -0
  296. package/dist/components/Thread/Thread.d.ts +2 -6
  297. package/dist/components/Thread/Thread.d.ts.map +1 -1
  298. package/dist/components/Thread/Thread.js +21 -89
  299. package/dist/components/Thread/ThreadHead.d.ts +4 -0
  300. package/dist/components/Thread/ThreadHead.d.ts.map +1 -0
  301. package/dist/components/Thread/ThreadHead.js +21 -0
  302. package/dist/components/Thread/ThreadHeader.d.ts +12 -0
  303. package/dist/components/Thread/ThreadHeader.d.ts.map +1 -0
  304. package/dist/components/Thread/ThreadHeader.js +21 -0
  305. package/dist/components/Thread/ThreadStart.d.ts +2 -0
  306. package/dist/components/Thread/ThreadStart.d.ts.map +1 -0
  307. package/dist/components/Thread/ThreadStart.js +10 -0
  308. package/dist/components/Thread/icons.d.ts +4 -0
  309. package/dist/components/Thread/icons.d.ts.map +1 -0
  310. package/dist/components/Thread/icons.js +9 -0
  311. package/dist/components/Thread/index.d.ts +2 -0
  312. package/dist/components/Thread/index.d.ts.map +1 -1
  313. package/dist/components/Thread/index.js +2 -0
  314. package/dist/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
  315. package/dist/components/TypingIndicator/TypingIndicator.js +52 -9
  316. package/dist/components/UserItem/UserItem.d.ts +1 -1
  317. package/dist/components/UserItem/UserItem.d.ts.map +1 -1
  318. package/dist/components/UserItem/UserItem.js +15 -8
  319. package/dist/components/Window/Window.js +1 -1
  320. package/dist/constants/limits.d.ts +4 -0
  321. package/dist/constants/limits.d.ts.map +1 -0
  322. package/dist/constants/limits.js +3 -0
  323. package/dist/context/ChannelActionContext.d.ts +1 -1
  324. package/dist/context/ChannelActionContext.d.ts.map +1 -1
  325. package/dist/context/ChannelActionContext.js +1 -1
  326. package/dist/context/ChannelStateContext.d.ts +3 -2
  327. package/dist/context/ChannelStateContext.d.ts.map +1 -1
  328. package/dist/context/ChannelStateContext.js +1 -1
  329. package/dist/context/ChatContext.d.ts +5 -4
  330. package/dist/context/ChatContext.d.ts.map +1 -1
  331. package/dist/context/ChatContext.js +2 -2
  332. package/dist/context/ComponentContext.d.ts +6 -2
  333. package/dist/context/ComponentContext.d.ts.map +1 -1
  334. package/dist/context/ComponentContext.js +1 -1
  335. package/dist/context/EmojiContext.d.ts +1 -1
  336. package/dist/context/EmojiContext.d.ts.map +1 -1
  337. package/dist/context/EmojiContext.js +1 -1
  338. package/dist/context/MessageContext.d.ts +1 -1
  339. package/dist/context/MessageContext.d.ts.map +1 -1
  340. package/dist/context/MessageContext.js +1 -1
  341. package/dist/context/MessageInputContext.d.ts +1 -1
  342. package/dist/context/MessageInputContext.d.ts.map +1 -1
  343. package/dist/context/MessageInputContext.js +1 -1
  344. package/dist/context/TranslationContext.d.ts +2 -2
  345. package/dist/context/TranslationContext.d.ts.map +1 -1
  346. package/dist/context/TranslationContext.js +8 -4
  347. package/dist/context/TypingContext.d.ts +1 -1
  348. package/dist/context/TypingContext.d.ts.map +1 -1
  349. package/dist/context/TypingContext.js +1 -1
  350. package/dist/css/index.css +1 -1
  351. package/dist/css/index.css.map +1 -0
  352. package/dist/css/v2/index.css +1 -0
  353. package/dist/css/v2/index.css.map +1 -0
  354. package/dist/css/v2/index.layout.css +1 -0
  355. package/dist/css/v2/index.layout.css.map +1 -0
  356. package/dist/i18n/Streami18n.d.ts +8 -2
  357. package/dist/i18n/Streami18n.d.ts.map +1 -1
  358. package/dist/i18n/Streami18n.js +12 -12
  359. package/dist/i18n/de.json +8 -2
  360. package/dist/i18n/en.json +8 -2
  361. package/dist/i18n/es.json +9 -2
  362. package/dist/i18n/fr.json +9 -2
  363. package/dist/i18n/hi.json +8 -2
  364. package/dist/i18n/it.json +9 -2
  365. package/dist/i18n/ja.json +8 -2
  366. package/dist/i18n/ko.json +8 -2
  367. package/dist/i18n/nl.json +8 -2
  368. package/dist/i18n/pt.json +9 -2
  369. package/dist/i18n/ru.json +10 -2
  370. package/dist/i18n/tr.json +8 -2
  371. package/dist/index.cjs.js +9535 -4005
  372. package/dist/index.cjs.js.map +1 -1
  373. package/dist/scss/Attachment.scss +52 -22
  374. package/dist/scss/Audio.scss +1 -1
  375. package/dist/scss/Avatar.scss +1 -1
  376. package/dist/scss/ChannelList.scss +5 -1
  377. package/dist/scss/ChannelPreview.scss +25 -0
  378. package/dist/scss/ChannelSearch.scss +5 -3
  379. package/dist/scss/Gallery.scss +0 -20
  380. package/dist/scss/ImageCarousel.scss +39 -0
  381. package/dist/scss/LoadingChannels.scss +1 -1
  382. package/dist/scss/Message.scss +84 -86
  383. package/dist/scss/MessageActions.scss +15 -0
  384. package/dist/scss/MessageCommerce.scss +57 -13
  385. package/dist/scss/MessageInputFlat.scss +21 -9
  386. package/dist/scss/MessageList.scss +35 -3
  387. package/dist/scss/MessageLivestream.scss +23 -10
  388. package/dist/scss/MessageNotification.scss +7 -1
  389. package/dist/scss/MessageTeam.scss +37 -10
  390. package/dist/scss/Modal.scss +2 -0
  391. package/dist/scss/ReactionList.scss +14 -0
  392. package/dist/scss/ReactionSelector.scss +6 -0
  393. package/dist/scss/SendButton.scss +6 -0
  394. package/dist/scss/SmallMessageInput.scss +0 -1
  395. package/dist/scss/Thread.scss +21 -2
  396. package/dist/scss/Tooltip.scss +6 -3
  397. package/dist/scss/TypingIndicator.scss +5 -0
  398. package/dist/scss/_base.scss +26 -0
  399. package/dist/scss/_variables.scss +2 -1
  400. package/dist/scss/index.scss +5 -4
  401. package/dist/scss/v2/AttachmentList/AttachmentList-layout.scss +392 -0
  402. package/dist/scss/v2/AttachmentList/AttachmentList-theme.scss +400 -0
  403. package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-layout.scss +118 -0
  404. package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-theme.scss +150 -0
  405. package/dist/scss/v2/Autocomplete/Autocomplete-layout.scss +62 -0
  406. package/dist/scss/v2/Autocomplete/Autocomplete-theme.scss +207 -0
  407. package/dist/scss/v2/Avatar/Avatar-layout.scss +13 -0
  408. package/dist/scss/v2/Avatar/Avatar-theme.scss +42 -0
  409. package/dist/scss/v2/Channel/Channel-layout.scss +139 -0
  410. package/dist/scss/v2/Channel/Channel-theme.scss +99 -0
  411. package/dist/scss/v2/ChannelHeader/ChannelHeader-layout.scss +23 -0
  412. package/dist/scss/v2/ChannelHeader/ChannelHeader-theme.scss +43 -0
  413. package/dist/scss/v2/ChannelList/ChannelList-layout.scss +41 -0
  414. package/dist/scss/v2/ChannelList/ChannelList-theme.scss +87 -0
  415. package/dist/scss/v2/ChannelPreview/ChannelPreview-layout.scss +82 -0
  416. package/dist/scss/v2/ChannelPreview/ChannelPreview-theme.scss +108 -0
  417. package/dist/scss/v2/ChannelSearch/ChannelSearch-layout.scss +71 -0
  418. package/dist/scss/v2/ChannelSearch/ChannelSearch-theme.scss +190 -0
  419. package/dist/scss/v2/EditMessageForm/EditMessageForm-layout.scss +53 -0
  420. package/dist/scss/v2/EditMessageForm/EditMessageForm-theme.scss +50 -0
  421. package/dist/scss/v2/ImageCarousel/ImageCarousel-layout.scss +41 -0
  422. package/dist/scss/v2/ImageCarousel/ImageCarousel-theme.scss +15 -0
  423. package/dist/scss/v2/LoadingIndicator/LoadingIndicator-layout.scss +39 -0
  424. package/dist/scss/v2/LoadingIndicator/LoadingIndicator-theme.scss +12 -0
  425. package/dist/scss/v2/Message/Message-layout.scss +373 -0
  426. package/dist/scss/v2/Message/Message-theme.scss +353 -0
  427. package/dist/scss/v2/MessageActionsBox/MessageActionsBox-layout.scss +48 -0
  428. package/dist/scss/v2/MessageActionsBox/MessageActionsBox-theme.scss +69 -0
  429. package/dist/scss/v2/MessageInput/MessageInput-layout.scss +186 -0
  430. package/dist/scss/v2/MessageInput/MessageInput-theme.scss +221 -0
  431. package/dist/scss/v2/MessageList/MessageList-layout.scss +61 -0
  432. package/dist/scss/v2/MessageList/MessageList-theme.scss +105 -0
  433. package/dist/scss/v2/MessageList/VirtualizedMessageList-layout.scss +44 -0
  434. package/dist/scss/v2/MessageList/VirtualizedMessageList-theme.scss +32 -0
  435. package/dist/scss/v2/MessageReactions/MessageReactions-layout.scss +64 -0
  436. package/dist/scss/v2/MessageReactions/MessageReactions-theme.scss +75 -0
  437. package/dist/scss/v2/MessageReactions/MessageReactionsSelector-layout.scss +52 -0
  438. package/dist/scss/v2/MessageReactions/MessageReactionsSelector-theme.scss +83 -0
  439. package/dist/scss/v2/Modal/Modal-layout.scss +40 -0
  440. package/dist/scss/v2/Modal/Modal-theme.scss +82 -0
  441. package/dist/scss/v2/Notification/MessageNotification-layout.scss +12 -0
  442. package/dist/scss/v2/Notification/MessageNotification-theme.scss +34 -0
  443. package/dist/scss/v2/Notification/Notification-layout.scss +3 -0
  444. package/dist/scss/v2/Notification/Notification-theme.scss +32 -0
  445. package/dist/scss/v2/Notification/NotificationList-layout.scss +11 -0
  446. package/dist/scss/v2/Notification/NotificationList-theme.scss +31 -0
  447. package/dist/scss/v2/Thread/Thread-layout.scss +47 -0
  448. package/dist/scss/v2/Thread/Thread-theme.scss +82 -0
  449. package/dist/scss/v2/Tooltip/Tooltip-layout.scss +30 -0
  450. package/dist/scss/v2/Tooltip/Tooltip-theme.scss +36 -0
  451. package/dist/scss/v2/TypingIndicator/TypingIndicator-layout.scss +27 -0
  452. package/dist/scss/v2/TypingIndicator/TypingIndicator-theme.scss +68 -0
  453. package/dist/scss/v2/_base.scss +29 -0
  454. package/dist/scss/v2/_global-layout-variables.scss +65 -0
  455. package/dist/scss/v2/_global-theme-variables.scss +166 -0
  456. package/dist/scss/v2/_palette-variables.scss +55 -0
  457. package/dist/scss/v2/_utils.scss +188 -0
  458. package/dist/scss/v2/common/CTAButton/CTAButton-layout.scss +4 -0
  459. package/dist/scss/v2/common/CTAButton/CTAButton-theme.scss +42 -0
  460. package/dist/scss/v2/common/CircleFAButton/CircleFAButton-layout.scss +14 -0
  461. package/dist/scss/v2/common/CircleFAButton/CircleFAButton-theme.scss +35 -0
  462. package/dist/scss/v2/index.layout.scss +31 -0
  463. package/dist/scss/v2/index.scss +36 -0
  464. package/dist/scss/{vendor → v2/vendor}/emoji-mart.scss +27 -8
  465. package/dist/stories/add-message.stories.d.ts +0 -1
  466. package/dist/stories/add-message.stories.d.ts.map +1 -1
  467. package/dist/stories/add-message.stories.js +0 -1
  468. package/dist/stories/edit-message.stories.d.ts +0 -1
  469. package/dist/stories/edit-message.stories.d.ts.map +1 -1
  470. package/dist/stories/edit-message.stories.js +0 -1
  471. package/dist/stories/hello.stories.d.ts +0 -1
  472. package/dist/stories/hello.stories.d.ts.map +1 -1
  473. package/dist/stories/hello.stories.js +0 -1
  474. package/dist/stories/jump-to-message.stories.d.ts +0 -1
  475. package/dist/stories/jump-to-message.stories.d.ts.map +1 -1
  476. package/dist/stories/jump-to-message.stories.js +0 -1
  477. package/dist/stories/mark-read.stories.d.ts +0 -1
  478. package/dist/stories/mark-read.stories.d.ts.map +1 -1
  479. package/dist/stories/mark-read.stories.js +0 -1
  480. package/dist/stories/message-status-readby-tooltip.stories.d.ts +0 -1
  481. package/dist/stories/message-status-readby-tooltip.stories.d.ts.map +1 -1
  482. package/dist/stories/message-status-readby-tooltip.stories.js +0 -1
  483. package/dist/stories/navigate-long-message-lists.stories.d.ts +0 -2
  484. package/dist/stories/navigate-long-message-lists.stories.d.ts.map +1 -1
  485. package/dist/stories/navigate-long-message-lists.stories.js +1 -11
  486. package/dist/stories/toggle-message-actions.stories.d.ts +0 -1
  487. package/dist/stories/toggle-message-actions.stories.d.ts.map +1 -1
  488. package/dist/stories/toggle-message-actions.stories.js +0 -1
  489. package/dist/stories/utils.d.ts.map +1 -1
  490. package/dist/stories/utils.js +2 -1
  491. package/dist/types/types.d.ts +7 -0
  492. package/dist/types/types.d.ts.map +1 -1
  493. package/dist/utils.d.ts +2 -2
  494. package/dist/utils.d.ts.map +1 -1
  495. package/dist/utils.js +4 -4
  496. package/dist/version.d.ts +1 -1
  497. package/dist/version.d.ts.map +1 -1
  498. package/dist/version.js +1 -1
  499. package/package.json +12 -7
  500. package/dist/components/Gallery/ModalWrapper.d.ts +0 -14
  501. package/dist/components/Gallery/ModalWrapper.d.ts.map +0 -1
  502. package/dist/components/Gallery/ModalWrapper.js +0 -8
  503. package/dist/components/Message/MessageCommerce.d.ts +0 -10
  504. package/dist/components/Message/MessageCommerce.d.ts.map +0 -1
  505. package/dist/components/Message/MessageCommerce.js +0 -64
  506. package/dist/components/Message/MessageLivestream.d.ts +0 -16
  507. package/dist/components/Message/MessageLivestream.d.ts.map +0 -1
  508. package/dist/components/Message/MessageLivestream.js +0 -164
  509. package/dist/components/Message/MessageTeam.d.ts +0 -11
  510. package/dist/components/Message/MessageTeam.d.ts.map +0 -1
  511. package/dist/components/Message/MessageTeam.js +0 -110
  512. package/dist/components/Message/hooks/useBreakpoint.d.ts +0 -6
  513. package/dist/components/Message/hooks/useBreakpoint.d.ts.map +0 -1
  514. package/dist/components/Message/hooks/useBreakpoint.js +0 -18
  515. package/dist/components/Message/hooks/useMobilePress.d.ts +0 -5
  516. package/dist/components/Message/hooks/useMobilePress.d.ts.map +0 -1
  517. package/dist/components/Message/hooks/useMobilePress.js +0 -33
  518. package/dist/scss/vendor/mml-react.scss +0 -1749
  519. package/dist/scss/vendor/react-file-utils.scss +0 -378
  520. package/dist/scss/vendor/react-image-gallery.scss +0 -224
@@ -1,2 +1,2 @@
1
- export declare const useMobileNavigation: (channelListRef: React.RefObject<HTMLDivElement>, navOpen: boolean, closeMobileNav?: (() => void) | undefined) => void;
1
+ export declare const useMobileNavigation: (channelListRef: React.RefObject<HTMLDivElement>, navOpen: boolean, closeMobileNav?: () => void) => void;
2
2
  //# sourceMappingURL=useMobileNavigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMobileNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelList/hooks/useMobileNavigation.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,mBACd,MAAM,SAAS,CAAC,cAAc,CAAC,WACtC,OAAO,0BACO,IAAI,sBAoB5B,CAAC"}
1
+ {"version":3,"file":"useMobileNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelList/hooks/useMobileNavigation.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,mBACd,MAAM,SAAS,CAAC,cAAc,CAAC,WACtC,OAAO,mBACC,MAAM,IAAI,SAoB5B,CAAC"}
@@ -34,10 +34,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
38
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
39
- to[j] = from[i];
40
- return to;
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
41
45
  };
42
46
  import { useEffect } from 'react';
43
47
  import uniqBy from 'lodash.uniqby';
@@ -61,7 +65,7 @@ export var useNotificationAddedToChannelListener = function (setChannels, custom
61
65
  return [4 /*yield*/, getChannel(client, event.channel.type, event.channel.id)];
62
66
  case 2:
63
67
  channel_1 = _b.sent();
64
- setChannels(function (channels) { return uniqBy(__spreadArray([channel_1], channels), 'cid'); });
68
+ setChannels(function (channels) { return uniqBy(__spreadArray([channel_1], channels, true), 'cid'); });
65
69
  _b.label = 3;
66
70
  case 3: return [2 /*return*/];
67
71
  }
@@ -34,10 +34,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
38
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
39
- to[j] = from[i];
40
- return to;
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
41
45
  };
42
46
  import { useEffect } from 'react';
43
47
  import uniqBy from 'lodash.uniqby';
@@ -61,7 +65,7 @@ export var useNotificationMessageNewListener = function (setChannels, customHand
61
65
  return [4 /*yield*/, getChannel(client, event.channel.type, event.channel.id)];
62
66
  case 2:
63
67
  channel_1 = _b.sent();
64
- setChannels(function (channels) { return uniqBy(__spreadArray([channel_1], channels), 'cid'); });
68
+ setChannels(function (channels) { return uniqBy(__spreadArray([channel_1], channels, true), 'cid'); });
65
69
  _b.label = 3;
66
70
  case 3: return [2 /*return*/];
67
71
  }
@@ -45,10 +45,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
45
45
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
46
  }
47
47
  };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
49
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
50
- to[j] = from[i];
51
- return to;
48
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
+ if (ar || !(i in from)) {
51
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
+ ar[i] = from[i];
53
+ }
54
+ }
55
+ return to.concat(ar || Array.prototype.slice.call(from));
52
56
  };
53
57
  import { useEffect, useMemo, useState } from 'react';
54
58
  import { MAX_QUERY_CHANNELS_LIMIT } from '../utils';
@@ -81,7 +85,7 @@ export var usePaginatedChannels = function (client, filters, sort, options, acti
81
85
  return [4 /*yield*/, client.queryChannels(filters, sort || {}, newOptions)];
82
86
  case 2:
83
87
  channelQueryResponse = _b.sent();
84
- newChannels = queryType === 'reload' ? channelQueryResponse : __spreadArray(__spreadArray([], channels), channelQueryResponse);
88
+ newChannels = queryType === 'reload' ? channelQueryResponse : __spreadArray(__spreadArray([], channels, true), channelQueryResponse, true);
85
89
  setChannels(newChannels);
86
90
  setHasNextPage(channelQueryResponse.length >= newOptions.limit);
87
91
  // Set active channel only on load of first page
@@ -1,7 +1,11 @@
1
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
2
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
3
- to[j] = from[i];
4
- return to;
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
2
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
3
+ if (ar || !(i in from)) {
4
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5
+ ar[i] = from[i];
6
+ }
7
+ }
8
+ return to.concat(ar || Array.prototype.slice.call(from));
5
9
  };
6
10
  import { useEffect } from 'react';
7
11
  import { useChatContext } from '../../../context/ChatContext';
@@ -19,7 +23,7 @@ export var useUserPresenceChangedListener = function (setChannels) {
19
23
  newChannel.state.members[event.user.id].user = event.user;
20
24
  return newChannel;
21
25
  });
22
- return __spreadArray([], newChannels);
26
+ return __spreadArray([], newChannels, true);
23
27
  });
24
28
  };
25
29
  client.on('user.presence.changed', handleEvent);
@@ -34,10 +34,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
38
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
39
- to[j] = from[i];
40
- return to;
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
41
45
  };
42
46
  import uniqBy from 'lodash.uniqby';
43
47
  export var getChannel = function (client, type, id) { return __awaiter(void 0, void 0, void 0, function () {
@@ -62,5 +66,5 @@ export var moveChannelUp = function (_a) {
62
66
  return channels;
63
67
  // get channel to move up
64
68
  var channel = activeChannel || channels[channelIndex];
65
- return uniqBy(__spreadArray([channel], channels), 'cid');
69
+ return uniqBy(__spreadArray([channel], channels, true), 'cid');
66
70
  };
@@ -15,6 +15,8 @@ export declare type ChannelPreviewUIComponentProps<StreamChatGenerics extends De
15
15
  lastMessage?: StreamMessage<StreamChatGenerics>;
16
16
  /** Latest message preview to display, will be a string or JSX element supporting markdown. */
17
17
  latestMessage?: string | JSX.Element;
18
+ /** Custom ChannelPreview click handler function */
19
+ onSelect?: (event: React.MouseEvent) => void;
18
20
  /** Number of unread Messages */
19
21
  unread?: number;
20
22
  };
@@ -27,7 +29,11 @@ export declare type ChannelPreviewProps<StreamChatGenerics extends DefaultStream
27
29
  Avatar?: React.ComponentType<AvatarProps>;
28
30
  /** Forces the update of preview component on channel update */
29
31
  channelUpdateCount?: number;
32
+ /** Custom class for the channel preview root */
33
+ className?: string;
30
34
  key?: string;
35
+ /** Custom ChannelPreview click handler function */
36
+ onSelect?: (event: React.MouseEvent) => void;
31
37
  /** Custom UI component to display the channel preview in the list, defaults to and accepts same props as: [ChannelPreviewMessenger](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelPreview/ChannelPreviewMessenger.tsx) */
32
38
  Preview?: React.ComponentType<ChannelPreviewUIComponentProps<StreamChatGenerics>>;
33
39
  /** Setter for selected Channel */
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelPreview.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAMhE,OAAO,EAAE,gBAAgB,EAAkB,MAAM,2BAA2B,CAAC;AAG7E,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,8BAA8B,CACxC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,GAAG;IAC5C,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAChD,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IACrC,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,mBAAmB,CAC7B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,6MAA6M;IAC7M,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,sCAAsC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,+LAA+L;IAC/L,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC1C,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6PAA6P;IAC7P,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC5E,2CAA2C;IAC3C,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD,CAAC;AAEF,eAAO,MAAM,cAAc,0JA4F1B,CAAC"}
1
+ {"version":3,"file":"ChannelPreview.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAOhE,OAAO,EAAE,gBAAgB,EAAkB,MAAM,2BAA2B,CAAC;AAG7E,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,8BAA8B,CACxC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,GAAG;IAC5C,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAChD,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IACrC,mDAAmD;IACnD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC7C,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,mBAAmB,CAC7B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,6MAA6M;IAC7M,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,sCAAsC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,+LAA+L;IAC/L,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC1C,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC7C,6PAA6P;IAC7P,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC5E,2CAA2C;IAC3C,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD,CAAC;AAEF,eAAO,MAAM,cAAc,0JAyE1B,CAAC"}
@@ -12,17 +12,17 @@ var __assign = (this && this.__assign) || function () {
12
12
  import React, { useCallback, useEffect, useState } from 'react';
13
13
  import { ChannelPreviewMessenger } from './ChannelPreviewMessenger';
14
14
  import { useIsChannelMuted } from './hooks/useIsChannelMuted';
15
- import { getDisplayImage, getDisplayTitle, getLatestMessagePreview } from './utils';
15
+ import { useChannelPreviewInfo } from './hooks/useChannelPreviewInfo';
16
+ import { getLatestMessagePreview } from './utils';
16
17
  import { useChatContext } from '../../context/ChatContext';
17
18
  import { useTranslationContext } from '../../context/TranslationContext';
18
19
  export var ChannelPreview = function (props) {
19
20
  var channel = props.channel, _a = props.Preview, Preview = _a === void 0 ? ChannelPreviewMessenger : _a, channelUpdateCount = props.channelUpdateCount;
20
21
  var _b = useChatContext('ChannelPreview'), activeChannel = _b.channel, client = _b.client, setActiveChannel = _b.setActiveChannel;
21
22
  var _c = useTranslationContext('ChannelPreview'), t = _c.t, userLanguage = _c.userLanguage;
22
- var _d = useState(getDisplayTitle(channel, client.user)), displayTitle = _d[0], setDisplayTitle = _d[1];
23
- var _e = useState(getDisplayImage(channel, client.user)), displayImage = _e[0], setDisplayImage = _e[1];
24
- var _f = useState(channel.state.messages[channel.state.messages.length - 1]), lastMessage = _f[0], setLastMessage = _f[1];
25
- var _g = useState(0), unread = _g[0], setUnread = _g[1];
23
+ var _d = useChannelPreviewInfo({ channel: channel }), displayImage = _d.displayImage, displayTitle = _d.displayTitle;
24
+ var _e = useState(channel.state.messages[channel.state.messages.length - 1]), lastMessage = _e[0], setLastMessage = _e[1];
25
+ var _f = useState(0), unread = _f[0], setUnread = _f[1];
26
26
  var isActive = (activeChannel === null || activeChannel === void 0 ? void 0 : activeChannel.cid) === channel.cid;
27
27
  var muted = useIsChannelMuted(channel).muted;
28
28
  useEffect(function () {
@@ -59,22 +59,6 @@ export var ChannelPreview = function (props) {
59
59
  channel.off('message.deleted', handleEvent);
60
60
  };
61
61
  }, [refreshUnreadCount, channelUpdateCount]);
62
- useEffect(function () {
63
- var handleEvent = function () {
64
- setDisplayTitle(function (displayTitle) {
65
- var newDisplayTitle = getDisplayTitle(channel, client.user);
66
- return displayTitle !== newDisplayTitle ? newDisplayTitle : displayTitle;
67
- });
68
- setDisplayImage(function (displayImage) {
69
- var newDisplayImage = getDisplayImage(channel, client.user);
70
- return displayImage !== newDisplayImage ? newDisplayImage : displayImage;
71
- });
72
- };
73
- client.on('user.updated', handleEvent);
74
- return function () {
75
- client.off('user.updated', handleEvent);
76
- };
77
- }, []);
78
62
  if (!Preview)
79
63
  return null;
80
64
  var latestMessage = getLatestMessagePreview(channel, t, userLanguage);
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelPreviewMessenger.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreviewMessenger.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AA2DnE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,8JAES,CAAC"}
1
+ {"version":3,"file":"ChannelPreviewMessenger.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreviewMessenger.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAwEnE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,8JAES,CAAC"}
@@ -1,26 +1,30 @@
1
1
  import React, { useRef } from 'react';
2
+ import clsx from 'clsx';
2
3
  import { Avatar as DefaultAvatar } from '../Avatar';
3
4
  var UnMemoizedChannelPreviewMessenger = function (props) {
4
5
  var _a, _b;
5
- var active = props.active, _c = props.Avatar, Avatar = _c === void 0 ? DefaultAvatar : _c, channel = props.channel, displayImage = props.displayImage, displayTitle = props.displayTitle, latestMessage = props.latestMessage, setActiveChannel = props.setActiveChannel, unread = props.unread, watchers = props.watchers;
6
+ var active = props.active, _c = props.Avatar, Avatar = _c === void 0 ? DefaultAvatar : _c, channel = props.channel, _d = props.className, customClassName = _d === void 0 ? '' : _d, displayImage = props.displayImage, displayTitle = props.displayTitle, latestMessage = props.latestMessage, customOnSelectChannel = props.onSelect, setActiveChannel = props.setActiveChannel, unread = props.unread, watchers = props.watchers;
6
7
  var channelPreviewButton = useRef(null);
7
- var activeClass = active ? 'str-chat__channel-preview-messenger--active' : '';
8
- var unreadClass = unread && unread >= 1 ? 'str-chat__channel-preview-messenger--unread' : '';
9
8
  var avatarName = displayTitle || ((_b = (_a = channel.state.messages[channel.state.messages.length - 1]) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.id);
10
- var onSelectChannel = function () {
11
- if (setActiveChannel) {
9
+ var onSelectChannel = function (e) {
10
+ if (customOnSelectChannel) {
11
+ customOnSelectChannel(e);
12
+ }
13
+ else if (setActiveChannel) {
12
14
  setActiveChannel(channel, watchers);
13
15
  }
14
16
  if (channelPreviewButton === null || channelPreviewButton === void 0 ? void 0 : channelPreviewButton.current) {
15
17
  channelPreviewButton.current.blur();
16
18
  }
17
19
  };
18
- return (React.createElement("button", { "aria-label": "Select Channel: " + (displayTitle || ''), "aria-selected": active, className: "str-chat__channel-preview-messenger " + unreadClass + " " + activeClass, "data-testid": 'channel-preview-button', onClick: onSelectChannel, ref: channelPreviewButton, role: 'option' },
20
+ return (React.createElement("button", { "aria-label": "Select Channel: ".concat(displayTitle || ''), "aria-selected": active, className: clsx("str-chat__channel-preview-messenger str-chat__channel-preview", active && 'str-chat__channel-preview-messenger--active', unread && unread >= 1 && 'str-chat__channel-preview-messenger--unread', customClassName), "data-testid": 'channel-preview-button', onClick: onSelectChannel, ref: channelPreviewButton, role: 'option' },
19
21
  React.createElement("div", { className: 'str-chat__channel-preview-messenger--left' },
20
22
  React.createElement(Avatar, { image: displayImage, name: avatarName, size: 40 })),
21
- React.createElement("div", { className: 'str-chat__channel-preview-messenger--right' },
22
- React.createElement("div", { className: 'str-chat__channel-preview-messenger--name' },
23
- React.createElement("span", null, displayTitle)),
23
+ React.createElement("div", { className: 'str-chat__channel-preview-messenger--right str-chat__channel-preview-end' },
24
+ React.createElement("div", { className: 'str-chat__channel-preview-end-first-row' },
25
+ React.createElement("div", { className: 'str-chat__channel-preview-messenger--name' },
26
+ React.createElement("span", null, displayTitle)),
27
+ !!unread && (React.createElement("div", { className: 'str-chat__channel-preview-unread-badge', "data-testid": 'unread-badge' }, unread))),
24
28
  React.createElement("div", { className: 'str-chat__channel-preview-messenger--last-message' }, latestMessage))));
25
29
  };
26
30
  /**
@@ -0,0 +1,14 @@
1
+ import type { Channel } from 'stream-chat';
2
+ import type { DefaultStreamChatGenerics } from '../../../types/types';
3
+ export declare type ChannelPreviewInfoParams<StreamChatGenerics extends DefaultStreamChatGenerics> = {
4
+ channel: Channel<StreamChatGenerics>;
5
+ /** Manually set the image to render, defaults to the Channel image */
6
+ overrideImage?: string;
7
+ /** Set title manually */
8
+ overrideTitle?: string;
9
+ };
10
+ export declare const useChannelPreviewInfo: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: ChannelPreviewInfoParams<StreamChatGenerics>) => {
11
+ displayImage: string | undefined;
12
+ displayTitle: string | undefined;
13
+ };
14
+ //# sourceMappingURL=useChannelPreviewInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChannelPreviewInfo.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelPreview/hooks/useChannelPreviewInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAItE,oBAAY,wBAAwB,CAAC,kBAAkB,SAAS,yBAAyB,IAAI;IAC3F,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;CAiCjC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { getDisplayImage, getDisplayTitle } from '../utils';
3
+ import { useChatContext } from '../../../context';
4
+ export var useChannelPreviewInfo = function (props) {
5
+ var channel = props.channel, overrideImage = props.overrideImage, overrideTitle = props.overrideTitle;
6
+ var client = useChatContext('ChannelPreview').client;
7
+ var _a = useState(getDisplayTitle(channel, client.user)), displayTitle = _a[0], setDisplayTitle = _a[1];
8
+ var _b = useState(getDisplayImage(channel, client.user)), displayImage = _b[0], setDisplayImage = _b[1];
9
+ useEffect(function () {
10
+ var handleEvent = function () {
11
+ setDisplayTitle(function (displayTitle) {
12
+ var newDisplayTitle = getDisplayTitle(channel, client.user);
13
+ return displayTitle !== newDisplayTitle ? newDisplayTitle : displayTitle;
14
+ });
15
+ setDisplayImage(function (displayImage) {
16
+ var newDisplayImage = getDisplayImage(channel, client.user);
17
+ return displayImage !== newDisplayImage ? newDisplayImage : displayImage;
18
+ });
19
+ };
20
+ client.on('user.updated', handleEvent);
21
+ return function () {
22
+ client.off('user.updated', handleEvent);
23
+ };
24
+ }, []);
25
+ return {
26
+ displayImage: overrideImage || displayImage,
27
+ displayTitle: overrideTitle || displayTitle,
28
+ };
29
+ };
@@ -5,7 +5,7 @@ export var getLatestMessagePreview = function (channel, t, userLanguage) {
5
5
  var _a, _b;
6
6
  if (userLanguage === void 0) { userLanguage = 'en'; }
7
7
  var latestMessage = channel.state.messages[channel.state.messages.length - 1];
8
- var previewTextToRender = ((_a = latestMessage === null || latestMessage === void 0 ? void 0 : latestMessage.i18n) === null || _a === void 0 ? void 0 : _a[userLanguage + "_text"]) ||
8
+ var previewTextToRender = ((_a = latestMessage === null || latestMessage === void 0 ? void 0 : latestMessage.i18n) === null || _a === void 0 ? void 0 : _a["".concat(userLanguage, "_text")]) ||
9
9
  (latestMessage === null || latestMessage === void 0 ? void 0 : latestMessage.text);
10
10
  if (!latestMessage) {
11
11
  return t('Nothing yet...');
@@ -18,7 +18,7 @@ export var getLatestMessagePreview = function (channel, t, userLanguage) {
18
18
  return renderedText;
19
19
  }
20
20
  if (latestMessage.command) {
21
- return "/" + latestMessage.command;
21
+ return "/".concat(latestMessage.command);
22
22
  }
23
23
  if ((_b = latestMessage.attachments) === null || _b === void 0 ? void 0 : _b.length) {
24
24
  return t('🏙 Attachment...');
@@ -1,49 +1,13 @@
1
1
  import React from 'react';
2
- import { ChannelSearchFunctionParams, SearchInputProps } from './SearchInput';
3
- import { DropdownContainerProps, SearchResultItemProps } from './SearchResults';
4
- import { ChannelOrUserResponse } from './utils';
5
- import type { ChannelFilters, ChannelOptions, ChannelSort, UserFilters, UserOptions, UserSort } from 'stream-chat';
2
+ import { AdditionalSearchInputProps, SearchInputProps } from './SearchInput';
3
+ import { AdditionalSearchResultsProps } from './SearchResults';
6
4
  import type { DefaultStreamChatGenerics } from '../../types/types';
7
- export declare type SearchQueryParams<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
8
- channelFilters?: {
9
- filters?: ChannelFilters<StreamChatGenerics>;
10
- options?: ChannelOptions;
11
- sort?: ChannelSort<StreamChatGenerics>;
12
- };
13
- userFilters?: {
14
- filters?: UserFilters<StreamChatGenerics>;
15
- options?: UserOptions;
16
- sort?: UserSort<StreamChatGenerics>;
17
- };
18
- };
19
- export declare type ChannelSearchProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
20
- /** The type of channel to create on user result select, defaults to `messaging` */
21
- channelType?: string;
22
- /** Custom UI component to display all of the search results, defaults to accepts same props as: [DefaultDropdownContainer](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelSearch/SearchResults.tsx) */
23
- DropdownContainer?: React.ComponentType<DropdownContainerProps<StreamChatGenerics>>;
24
- /** Custom handler function to run on search result item selection */
25
- onSelectResult?: (result: ChannelOrUserResponse<StreamChatGenerics>) => Promise<void> | void;
26
- /** Custom placeholder text to be displayed in the search input */
27
- placeholder?: string;
28
- /** Display search results as an absolutely positioned popup, defaults to false and shows inline */
29
- popupResults?: boolean;
30
- /** Custom UI component to display empty search results */
31
- SearchEmpty?: React.ComponentType;
32
- /** Boolean to search for channels as well as users in the server query, default is false and just searches for users */
33
- searchForChannels?: boolean;
34
- /** Custom search function to override default */
35
- searchFunction?: (params: ChannelSearchFunctionParams<StreamChatGenerics>, event: React.BaseSyntheticEvent) => Promise<void> | void;
5
+ import type { SearchController } from './hooks/useChannelSearch';
6
+ export declare type AdditionalChannelSearchProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = AdditionalSearchInputProps & AdditionalSearchResultsProps<StreamChatGenerics> & {
36
7
  /** Custom UI component to display the search text input */
37
- SearchInput?: React.ComponentType<SearchInputProps<StreamChatGenerics>>;
38
- /** Custom UI component to display the search loading state */
39
- SearchLoading?: React.ComponentType;
40
- /** Object containing filters/sort/options overrides for user search */
41
- searchQueryParams?: SearchQueryParams<StreamChatGenerics>;
42
- /** Custom UI component to display a search result list item, defaults to and accepts same props as: [DefaultSearchResultItem](https://github.com/GetStream/stream-chat-react/blob/master/src/components/ChannelSearch/SearchResults.tsx) */
43
- SearchResultItem?: React.ComponentType<SearchResultItemProps<StreamChatGenerics>>;
44
- /** Custom UI component to display the search results header */
45
- SearchResultsHeader?: React.ComponentType;
8
+ SearchInput?: React.ComponentType<SearchInputProps>;
46
9
  };
10
+ export declare type ChannelSearchProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = AdditionalChannelSearchProps<StreamChatGenerics> & SearchController<StreamChatGenerics>;
47
11
  /**
48
12
  * The ChannelSearch component makes a query users call and displays the results in a list.
49
13
  * Clicking on a list item will navigate you into a channel with the selected user. It can be used
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelSearch.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelSearch/ChannelSearch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAG3D,OAAO,EACL,2BAA2B,EAE3B,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAiB,MAAM,iBAAiB,CAAC;AAE/F,OAAO,EAAE,qBAAqB,EAAa,MAAM,SAAS,CAAC;AAI3D,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,EACX,QAAQ,EACT,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,iBAAiB,CAC3B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,cAAc,CAAC,EAAE;QACf,OAAO,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAC7C,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,IAAI,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;KACxC,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC1C,OAAO,CAAC,EAAE,WAAW,CAAC;QACtB,IAAI,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAEF,oBAAY,kBAAkB,CAC5B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0OAA0O;IAC1O,iBAAiB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACpF,qEAAqE;IACrE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7F,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAClC,wHAAwH;IACxH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iDAAiD;IACjD,cAAc,CAAC,EAAE,CACf,MAAM,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,EACvD,KAAK,EAAE,KAAK,CAAC,kBAAkB,KAC5B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACxE,8DAA8D;IAC9D,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAC1D,4OAA4O;IAC5O,gBAAgB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,+DAA+D;IAC/D,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC3C,CAAC;AA4JF;;;;GAIG;AACH,eAAO,MAAM,aAAa,kJAAwE,CAAC"}
1
+ {"version":3,"file":"ChannelSearch.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelSearch/ChannelSearch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,0BAA0B,EAE1B,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,4BAA4B,EAAiB,MAAM,iBAAiB,CAAC;AAE9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,oBAAY,4BAA4B,CACtC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,0BAA0B,GAC5B,4BAA4B,CAAC,kBAAkB,CAAC,GAAG;IACjD,2DAA2D;IAC3D,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;CACrD,CAAC;AAEJ,oBAAY,kBAAkB,CAC5B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,4BAA4B,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;AAmD5F;;;;GAIG;AACH,eAAO,MAAM,aAAa,kJAAwE,CAAC"}
@@ -1,167 +1,11 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (_) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
49
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
50
- to[j] = from[i];
51
- return to;
52
- };
53
- import React, { useEffect, useRef, useState } from 'react';
54
- import throttle from 'lodash.throttle';
1
+ import React from 'react';
55
2
  import { SearchInput as DefaultSearchInput, } from './SearchInput';
56
3
  import { SearchResults } from './SearchResults';
57
- import { isChannel } from './utils';
58
- import { useChatContext } from '../../context/ChatContext';
59
4
  var UnMemoizedChannelSearch = function (props) {
60
- var _a = props.channelType, channelType = _a === void 0 ? 'messaging' : _a, DropdownContainer = props.DropdownContainer, onSelectResult = props.onSelectResult, placeholder = props.placeholder, _b = props.popupResults, popupResults = _b === void 0 ? false : _b, SearchEmpty = props.SearchEmpty, _c = props.searchForChannels, searchForChannels = _c === void 0 ? false : _c, searchFunction = props.searchFunction, _d = props.SearchInput, SearchInput = _d === void 0 ? DefaultSearchInput : _d, SearchLoading = props.SearchLoading, searchQueryParams = props.searchQueryParams, SearchResultItem = props.SearchResultItem, SearchResultsHeader = props.SearchResultsHeader;
61
- var _e = useChatContext('ChannelSearch'), client = _e.client, setActiveChannel = _e.setActiveChannel;
62
- var _f = useState(''), query = _f[0], setQuery = _f[1];
63
- var _g = useState([]), results = _g[0], setResults = _g[1];
64
- var _h = useState(false), resultsOpen = _h[0], setResultsOpen = _h[1];
65
- var _j = useState(false), searching = _j[0], setSearching = _j[1];
66
- var inputRef = useRef(null);
67
- var clearState = function () {
68
- setQuery('');
69
- setResults([]);
70
- setResultsOpen(false);
71
- setSearching(false);
72
- };
73
- useEffect(function () {
74
- var clickListener = function (event) {
75
- var _a;
76
- if (resultsOpen && event.target instanceof HTMLElement) {
77
- var isInputClick = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target);
78
- if (!isInputClick) {
79
- clearState();
80
- }
81
- }
82
- };
83
- document.addEventListener('click', clickListener);
84
- return function () { return document.removeEventListener('click', clickListener); };
85
- }, [resultsOpen]);
86
- var selectResult = function (result) { return __awaiter(void 0, void 0, void 0, function () {
87
- var newChannel;
88
- return __generator(this, function (_a) {
89
- switch (_a.label) {
90
- case 0:
91
- if (!client.userID)
92
- return [2 /*return*/];
93
- if (!isChannel(result)) return [3 /*break*/, 1];
94
- setActiveChannel(result);
95
- return [3 /*break*/, 3];
96
- case 1:
97
- newChannel = client.channel(channelType, { members: [client.userID, result.id] });
98
- return [4 /*yield*/, newChannel.watch()];
99
- case 2:
100
- _a.sent();
101
- setActiveChannel(newChannel);
102
- _a.label = 3;
103
- case 3:
104
- clearState();
105
- return [2 /*return*/];
106
- }
107
- });
108
- }); };
109
- var getChannels = function (text) { return __awaiter(void 0, void 0, void 0, function () {
110
- var userResponse, channelResponse, _a, channels, users_1, users, error_1;
111
- var _b, _c, _d, _e, _f, _g;
112
- return __generator(this, function (_h) {
113
- switch (_h.label) {
114
- case 0:
115
- if (!text || searching)
116
- return [2 /*return*/];
117
- setSearching(true);
118
- _h.label = 1;
119
- case 1:
120
- _h.trys.push([1, 6, , 7]);
121
- return [4 /*yield*/, client.queryUsers(__assign({ $or: [{ id: { $autocomplete: text } }, { name: { $autocomplete: text } }], id: { $ne: client.userID } }, (_b = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.userFilters) === null || _b === void 0 ? void 0 : _b.filters), __assign({ id: 1 }, (_c = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.userFilters) === null || _c === void 0 ? void 0 : _c.sort), __assign({ limit: 8 }, (_d = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.userFilters) === null || _d === void 0 ? void 0 : _d.options))];
122
- case 2:
123
- userResponse = _h.sent();
124
- if (!searchForChannels) return [3 /*break*/, 4];
125
- channelResponse = client.queryChannels(__assign({ name: { $autocomplete: text } }, (_e = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.channelFilters) === null || _e === void 0 ? void 0 : _e.filters), ((_f = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.channelFilters) === null || _f === void 0 ? void 0 : _f.sort) || {}, __assign({ limit: 5 }, (_g = searchQueryParams === null || searchQueryParams === void 0 ? void 0 : searchQueryParams.channelFilters) === null || _g === void 0 ? void 0 : _g.options));
126
- return [4 /*yield*/, Promise.all([channelResponse, userResponse])];
127
- case 3:
128
- _a = _h.sent(), channels = _a[0], users_1 = _a[1].users;
129
- setResults(__spreadArray(__spreadArray([], channels), users_1));
130
- setResultsOpen(true);
131
- setSearching(false);
132
- return [2 /*return*/];
133
- case 4: return [4 /*yield*/, Promise.resolve(userResponse)];
134
- case 5:
135
- users = (_h.sent()).users;
136
- setResults(users);
137
- setResultsOpen(true);
138
- return [3 /*break*/, 7];
139
- case 6:
140
- error_1 = _h.sent();
141
- clearState();
142
- console.error(error_1);
143
- return [3 /*break*/, 7];
144
- case 7:
145
- setSearching(false);
146
- return [2 /*return*/];
147
- }
148
- });
149
- }); };
150
- var getChannelsThrottled = throttle(getChannels, 200);
151
- var onSearch = function (event) {
152
- event.preventDefault();
153
- setQuery(event.target.value);
154
- getChannelsThrottled(event.target.value);
155
- };
156
- var channelSearchParams = {
157
- setQuery: setQuery,
158
- setResults: setResults,
159
- setResultsOpen: setResultsOpen,
160
- setSearching: setSearching,
161
- };
5
+ var clearState = props.clearState, SearchResultsList = props.SearchResultsList, inputRef = props.inputRef, onSearch = props.onSearch, placeholder = props.placeholder, _a = props.popupResults, popupResults = _a === void 0 ? false : _a, query = props.query, results = props.results, SearchEmpty = props.SearchEmpty, searching = props.searching, _b = props.SearchInput, SearchInput = _b === void 0 ? DefaultSearchInput : _b, SearchLoading = props.SearchLoading, SearchResultItem = props.SearchResultItem, SearchResultsHeader = props.SearchResultsHeader, selectResult = props.selectResult;
162
6
  return (React.createElement("div", { className: 'str-chat__channel-search', "data-testid": 'channel-search' },
163
- React.createElement(SearchInput, { channelSearchParams: channelSearchParams, inputRef: inputRef, onSearch: onSearch, placeholder: placeholder, query: query, searchFunction: searchFunction }),
164
- query && (React.createElement(SearchResults, { DropdownContainer: DropdownContainer, popupResults: popupResults, results: results, SearchEmpty: SearchEmpty, searching: searching, SearchLoading: SearchLoading, SearchResultItem: SearchResultItem, SearchResultsHeader: SearchResultsHeader, selectResult: onSelectResult || selectResult }))));
7
+ React.createElement(SearchInput, { clearState: clearState, inputRef: inputRef, onSearch: onSearch, placeholder: placeholder, query: query }),
8
+ query && (React.createElement(SearchResults, { popupResults: popupResults, results: results, SearchEmpty: SearchEmpty, searching: searching, SearchLoading: SearchLoading, SearchResultItem: SearchResultItem, SearchResultsHeader: SearchResultsHeader, SearchResultsList: SearchResultsList, selectResult: selectResult }))));
165
9
  };
166
10
  /**
167
11
  * The ChannelSearch component makes a query users call and displays the results in a list.
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import { SearchInputProps } from './SearchInput';
3
+ export declare type SearchBarController = {
4
+ /** Called on search input focus */
5
+ activateSearch: () => void;
6
+ /** Clears the search state, removes focus from the search input */
7
+ exitSearch: () => void;
8
+ /** Flag determining whether the search input is focused */
9
+ inputIsFocused: boolean;
10
+ /** Ref object for the input wrapper in the SearchBar */
11
+ searchBarRef: React.RefObject<HTMLDivElement>;
12
+ };
13
+ export declare type AdditionalSearchBarProps = {
14
+ /** Application menu to be displayed when clicked on MenuIcon */
15
+ AppMenu?: React.ComponentType;
16
+ /** Custom icon component used to clear the input value on click. Displayed within the search input wrapper. */
17
+ ClearInputIcon?: React.ComponentType;
18
+ /** Custom icon component used to terminate the search UI session on click. */
19
+ ExitSearchIcon?: React.ComponentType;
20
+ /** Custom icon component used to invoke context menu. */
21
+ MenuIcon?: React.ComponentType;
22
+ /** Custom UI component to display the search text input */
23
+ SearchInput?: React.ComponentType<SearchInputProps>;
24
+ /** Custom icon used to indicate search input. */
25
+ SearchInputIcon?: React.ComponentType;
26
+ };
27
+ export declare type SearchBarProps = AdditionalSearchBarProps & SearchBarController & SearchInputProps;
28
+ export declare const SearchBar: (props: SearchBarProps) => JSX.Element;
29
+ //# sourceMappingURL=SearchBar.d.ts.map