stream-chat-react 9.4.1 → 10.0.0-theming-v2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.full-bundle.js +16392 -10717
- package/dist/browser.full-bundle.js.map +1 -1
- package/dist/browser.full-bundle.min.js +20 -5
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/components/Attachment/Attachment.d.ts +1 -0
- package/dist/components/Attachment/Attachment.d.ts.map +1 -1
- package/dist/components/Attachment/Attachment.js +80 -35
- package/dist/components/Attachment/AttachmentActions.d.ts.map +1 -1
- package/dist/components/Attachment/AttachmentActions.js +2 -6
- package/dist/components/Attachment/AttachmentContainer.d.ts +12 -0
- package/dist/components/Attachment/AttachmentContainer.d.ts.map +1 -0
- package/dist/components/Attachment/AttachmentContainer.js +106 -0
- package/dist/components/Attachment/Audio.d.ts +11 -0
- package/dist/components/Attachment/Audio.d.ts.map +1 -1
- package/dist/components/Attachment/Audio.js +59 -32
- package/dist/components/Attachment/Card.d.ts +5 -20
- package/dist/components/Attachment/Card.d.ts.map +1 -1
- package/dist/components/Attachment/Card.js +93 -15
- package/dist/components/Attachment/DownloadButton.d.ts +6 -0
- package/dist/components/Attachment/DownloadButton.d.ts.map +1 -0
- package/dist/components/Attachment/DownloadButton.js +8 -0
- package/dist/components/Attachment/FileAttachment.d.ts +1 -1
- package/dist/components/Attachment/FileAttachment.d.ts.map +1 -1
- package/dist/components/Attachment/FileAttachment.js +23 -6
- package/dist/components/Attachment/FileSizeIndicator.d.ts +6 -0
- package/dist/components/Attachment/FileSizeIndicator.d.ts.map +1 -0
- package/dist/components/Attachment/FileSizeIndicator.js +8 -0
- package/dist/components/Attachment/hooks/useAudioController.d.ts +9 -0
- package/dist/components/Attachment/hooks/useAudioController.d.ts.map +1 -0
- package/dist/components/Attachment/hooks/useAudioController.js +45 -0
- package/dist/components/Attachment/icons.d.ts +5 -0
- package/dist/components/Attachment/icons.d.ts.map +1 -0
- package/dist/components/Attachment/icons.js +10 -0
- package/dist/components/Attachment/index.d.ts +1 -0
- package/dist/components/Attachment/index.d.ts.map +1 -1
- package/dist/components/Attachment/index.js +1 -0
- package/dist/components/Attachment/utils.d.ts +40 -4
- package/dist/components/Attachment/utils.d.ts.map +1 -1
- package/dist/components/Attachment/utils.js +58 -18
- package/dist/components/AutoCompleteTextarea/Item.d.ts.map +1 -1
- package/dist/components/AutoCompleteTextarea/Item.js +11 -4
- package/dist/components/AutoCompleteTextarea/List.d.ts +17 -1
- package/dist/components/AutoCompleteTextarea/List.d.ts.map +1 -1
- package/dist/components/AutoCompleteTextarea/List.js +19 -17
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts +16 -2
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
- package/dist/components/AutoCompleteTextarea/Textarea.js +19 -16
- package/dist/components/AutoCompleteTextarea/utils.js +1 -1
- package/dist/components/Avatar/Avatar.js +10 -10
- package/dist/components/Channel/Channel.d.ts +7 -2
- package/dist/components/Channel/Channel.d.ts.map +1 -1
- package/dist/components/Channel/Channel.js +78 -69
- package/dist/components/Channel/LoadingChannel.d.ts +2 -0
- package/dist/components/Channel/LoadingChannel.d.ts.map +1 -0
- package/dist/components/Channel/LoadingChannel.js +20 -0
- package/dist/components/Channel/channelState.d.ts +1 -0
- package/dist/components/Channel/channelState.d.ts.map +1 -1
- package/dist/components/Channel/channelState.js +14 -9
- package/dist/components/Channel/hooks/useChannelContainerClasses.d.ts +9 -0
- package/dist/components/Channel/hooks/useChannelContainerClasses.d.ts.map +1 -0
- package/dist/components/Channel/hooks/useChannelContainerClasses.js +14 -0
- package/dist/components/Channel/hooks/useCreateChannelStateContext.js +6 -6
- package/dist/components/Channel/utils.d.ts +3 -0
- package/dist/components/Channel/utils.d.ts.map +1 -1
- package/dist/components/Channel/utils.js +9 -5
- package/dist/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
- package/dist/components/ChannelHeader/ChannelHeader.js +14 -9
- package/dist/components/ChannelList/ChannelList.d.ts +10 -4
- package/dist/components/ChannelList/ChannelList.d.ts.map +1 -1
- package/dist/components/ChannelList/ChannelList.js +32 -14
- package/dist/components/ChannelList/hooks/useChannelDeletedListener.js +10 -6
- package/dist/components/ChannelList/hooks/useChannelHiddenListener.js +10 -6
- package/dist/components/ChannelList/hooks/useChannelTruncatedListener.d.ts +1 -1
- package/dist/components/ChannelList/hooks/useChannelTruncatedListener.d.ts.map +1 -1
- package/dist/components/ChannelList/hooks/useChannelTruncatedListener.js +9 -5
- package/dist/components/ChannelList/hooks/useChannelUpdatedListener.d.ts +1 -1
- package/dist/components/ChannelList/hooks/useChannelUpdatedListener.d.ts.map +1 -1
- package/dist/components/ChannelList/hooks/useChannelUpdatedListener.js +9 -5
- package/dist/components/ChannelList/hooks/useChannelVisibleListener.js +9 -5
- package/dist/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts +1 -1
- package/dist/components/ChannelList/hooks/useConnectionRecoveredListener.d.ts.map +1 -1
- package/dist/components/ChannelList/hooks/useMessageNewListener.js +9 -5
- package/dist/components/ChannelList/hooks/useMobileNavigation.d.ts +1 -1
- package/dist/components/ChannelList/hooks/useMobileNavigation.d.ts.map +1 -1
- package/dist/components/ChannelList/hooks/useNotificationAddedToChannelListener.js +9 -5
- package/dist/components/ChannelList/hooks/useNotificationMessageNewListener.js +9 -5
- package/dist/components/ChannelList/hooks/usePaginatedChannels.js +9 -5
- package/dist/components/ChannelList/hooks/useUserPresenceChangedListener.js +9 -5
- package/dist/components/ChannelList/utils.js +9 -5
- package/dist/components/ChannelPreview/ChannelPreview.d.ts +6 -0
- package/dist/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
- package/dist/components/ChannelPreview/ChannelPreview.js +5 -21
- package/dist/components/ChannelPreview/ChannelPreviewMessenger.d.ts.map +1 -1
- package/dist/components/ChannelPreview/ChannelPreviewMessenger.js +13 -9
- package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.d.ts +14 -0
- package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.d.ts.map +1 -0
- package/dist/components/ChannelPreview/hooks/useChannelPreviewInfo.js +29 -0
- package/dist/components/ChannelPreview/utils.js +2 -2
- package/dist/components/ChannelSearch/ChannelSearch.d.ts +6 -42
- package/dist/components/ChannelSearch/ChannelSearch.d.ts.map +1 -1
- package/dist/components/ChannelSearch/ChannelSearch.js +4 -160
- package/dist/components/ChannelSearch/SearchBar.d.ts +29 -0
- package/dist/components/ChannelSearch/SearchBar.d.ts.map +1 -0
- package/dist/components/ChannelSearch/SearchBar.js +93 -0
- package/dist/components/ChannelSearch/SearchInput.d.ts +9 -17
- package/dist/components/ChannelSearch/SearchInput.d.ts.map +1 -1
- package/dist/components/ChannelSearch/SearchInput.js +2 -4
- package/dist/components/ChannelSearch/SearchResults.d.ts +14 -8
- package/dist/components/ChannelSearch/SearchResults.d.ts.map +1 -1
- package/dist/components/ChannelSearch/SearchResults.js +44 -27
- package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts +50 -0
- package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts.map +1 -0
- package/dist/components/ChannelSearch/hooks/useChannelSearch.js +232 -0
- package/dist/components/ChannelSearch/icons.d.ts +6 -0
- package/dist/components/ChannelSearch/icons.d.ts.map +1 -0
- package/dist/components/ChannelSearch/icons.js +12 -0
- package/dist/components/Chat/Chat.d.ts.map +1 -1
- package/dist/components/Chat/Chat.js +4 -0
- package/dist/components/Chat/hooks/useChat.d.ts +1 -1
- package/dist/components/Chat/hooks/useChat.d.ts.map +1 -1
- package/dist/components/Chat/hooks/useChat.js +1 -1
- package/dist/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
- package/dist/components/Chat/hooks/useCreateChatContext.js +3 -2
- package/dist/components/Chat/hooks/useCustomStyles.d.ts +1 -1
- package/dist/components/Chat/hooks/useCustomStyles.d.ts.map +1 -1
- package/dist/components/ChatAutoComplete/ChatAutoComplete.js +1 -1
- package/dist/components/DateSeparator/DateSeparator.js +1 -1
- package/dist/components/EmoticonItem/EmoticonItem.js +1 -1
- package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts +1 -1
- package/dist/components/EmptyStateIndicator/EmptyStateIndicator.d.ts.map +1 -1
- package/dist/components/EmptyStateIndicator/EmptyStateIndicator.js +16 -3
- package/dist/components/EmptyStateIndicator/icons.d.ts +2 -0
- package/dist/components/EmptyStateIndicator/icons.d.ts.map +1 -0
- package/dist/components/EmptyStateIndicator/icons.js +3 -0
- package/dist/components/EventComponent/EventComponent.js +1 -1
- package/dist/components/Gallery/Gallery.d.ts.map +1 -1
- package/dist/components/Gallery/Gallery.js +16 -14
- package/dist/components/Gallery/Image.d.ts +7 -3
- package/dist/components/Gallery/Image.d.ts.map +1 -1
- package/dist/components/Gallery/Image.js +21 -9
- package/dist/components/Gallery/ModalGallery.d.ts +10 -0
- package/dist/components/Gallery/ModalGallery.d.ts.map +1 -0
- package/dist/components/Gallery/ModalGallery.js +16 -0
- package/dist/components/Gallery/index.d.ts +1 -1
- package/dist/components/Gallery/index.js +1 -1
- package/dist/components/InfiniteScrollPaginator/InfiniteScroll.d.ts +2 -0
- package/dist/components/InfiniteScrollPaginator/InfiniteScroll.d.ts.map +1 -1
- package/dist/components/InfiniteScrollPaginator/InfiniteScroll.js +4 -1
- package/dist/components/LoadMore/LoadMoreButton.js +2 -2
- package/dist/components/Loading/LoadingChannels.js +2 -2
- package/dist/components/Loading/LoadingIndicator.js +1 -1
- package/dist/components/MML/MML.js +1 -1
- package/dist/components/Message/FixedHeightMessage.js +3 -3
- package/dist/components/Message/MessageDeleted.js +2 -2
- package/dist/components/Message/MessageOptions.d.ts +1 -0
- package/dist/components/Message/MessageOptions.d.ts.map +1 -1
- package/dist/components/Message/MessageOptions.js +9 -16
- package/dist/components/Message/MessageRepliesCountButton.d.ts.map +1 -1
- package/dist/components/Message/MessageRepliesCountButton.js +8 -5
- package/dist/components/Message/MessageSimple.d.ts.map +1 -1
- package/dist/components/Message/MessageSimple.js +41 -21
- package/dist/components/Message/MessageStatus.d.ts.map +1 -1
- package/dist/components/Message/MessageStatus.js +17 -8
- package/dist/components/Message/MessageText.d.ts +1 -1
- package/dist/components/Message/MessageText.d.ts.map +1 -1
- package/dist/components/Message/MessageText.js +10 -14
- package/dist/components/Message/QuotedMessage.d.ts.map +1 -1
- package/dist/components/Message/QuotedMessage.js +8 -3
- package/dist/components/Message/hooks/index.d.ts +0 -2
- package/dist/components/Message/hooks/index.d.ts.map +1 -1
- package/dist/components/Message/hooks/index.js +0 -2
- package/dist/components/Message/hooks/useEditHandler.d.ts +1 -1
- package/dist/components/Message/hooks/useEditHandler.d.ts.map +1 -1
- package/dist/components/Message/hooks/useReactionHandler.d.ts +3 -3
- package/dist/components/Message/hooks/useReactionHandler.d.ts.map +1 -1
- package/dist/components/Message/hooks/useReactionHandler.js +11 -7
- package/dist/components/Message/hooks/useUserRole.d.ts +1 -1
- package/dist/components/Message/hooks/useUserRole.d.ts.map +1 -1
- package/dist/components/Message/icons.d.ts +6 -4
- package/dist/components/Message/icons.d.ts.map +1 -1
- package/dist/components/Message/icons.js +25 -10
- package/dist/components/Message/index.d.ts +0 -3
- package/dist/components/Message/index.d.ts.map +1 -1
- package/dist/components/Message/index.js +0 -3
- package/dist/components/Message/utils.js +10 -6
- package/dist/components/MessageActions/MessageActions.d.ts.map +1 -1
- package/dist/components/MessageActions/MessageActions.js +3 -3
- package/dist/components/MessageActions/MessageActionsBox.d.ts.map +1 -1
- package/dist/components/MessageActions/MessageActionsBox.js +14 -7
- package/dist/components/MessageInput/AttachmentPreviewList.d.ts +2 -0
- package/dist/components/MessageInput/AttachmentPreviewList.d.ts.map +1 -0
- package/dist/components/MessageInput/AttachmentPreviewList.js +60 -0
- package/dist/components/MessageInput/EditMessageForm.d.ts.map +1 -1
- package/dist/components/MessageInput/EditMessageForm.js +11 -6
- package/dist/components/MessageInput/EmojiPicker.d.ts +1 -1
- package/dist/components/MessageInput/EmojiPicker.d.ts.map +1 -1
- package/dist/components/MessageInput/EmojiPicker.js +14 -17
- package/dist/components/MessageInput/MessageInput.d.ts +1 -1
- package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
- package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
- package/dist/components/MessageInput/MessageInputFlat.js +84 -10
- package/dist/components/MessageInput/MessageInputSmall.d.ts +9 -0
- package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
- package/dist/components/MessageInput/MessageInputSmall.js +10 -1
- package/dist/components/MessageInput/QuotedMessagePreview.d.ts +2 -1
- package/dist/components/MessageInput/QuotedMessagePreview.d.ts.map +1 -1
- package/dist/components/MessageInput/QuotedMessagePreview.js +29 -22
- package/dist/components/MessageInput/UploadsPreview.d.ts +7 -0
- package/dist/components/MessageInput/UploadsPreview.d.ts.map +1 -1
- package/dist/components/MessageInput/UploadsPreview.js +17 -6
- package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useAttachments.js +8 -1
- package/dist/components/MessageInput/hooks/useCommandTrigger.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useCommandTrigger.js +6 -4
- package/dist/components/MessageInput/hooks/useCooldownTimer.d.ts +1 -1
- package/dist/components/MessageInput/hooks/useCooldownTimer.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useCooldownTimer.js +4 -4
- package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts +1 -1
- package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useEmojiTrigger.d.ts +1 -1
- package/dist/components/MessageInput/hooks/useEmojiTrigger.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useEmojiTrigger.js +23 -19
- package/dist/components/MessageInput/hooks/useFileState.d.ts +7 -0
- package/dist/components/MessageInput/hooks/useFileState.d.ts.map +1 -0
- package/dist/components/MessageInput/hooks/useFileState.js +8 -0
- package/dist/components/MessageInput/hooks/useImageUploads.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useImageUploads.js +17 -36
- package/dist/components/MessageInput/hooks/useMessageInputState.d.ts +2 -6
- package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useSubmitHandler.js +10 -6
- package/dist/components/MessageInput/hooks/useUserTrigger.d.ts +1 -1
- package/dist/components/MessageInput/hooks/useUserTrigger.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useUserTrigger.js +13 -9
- package/dist/components/MessageInput/hooks/utils.d.ts +1 -1
- package/dist/components/MessageInput/hooks/utils.d.ts.map +1 -1
- package/dist/components/MessageInput/icons.d.ts +12 -2
- package/dist/components/MessageInput/icons.d.ts.map +1 -1
- package/dist/components/MessageInput/icons.js +67 -7
- package/dist/components/MessageList/CustomNotification.js +1 -1
- package/dist/components/MessageList/MessageList.d.ts +3 -0
- package/dist/components/MessageList/MessageList.d.ts.map +1 -1
- package/dist/components/MessageList/MessageList.js +17 -14
- package/dist/components/MessageList/MessageListMainPanel.d.ts +3 -0
- package/dist/components/MessageList/MessageListMainPanel.d.ts.map +1 -0
- package/dist/components/MessageList/MessageListMainPanel.js +9 -0
- package/dist/components/MessageList/MessageListNotifications.d.ts +2 -0
- package/dist/components/MessageList/MessageListNotifications.d.ts.map +1 -1
- package/dist/components/MessageList/MessageListNotifications.js +2 -2
- package/dist/components/MessageList/MessageNotification.d.ts +9 -6
- package/dist/components/MessageList/MessageNotification.d.ts.map +1 -1
- package/dist/components/MessageList/MessageNotification.js +1 -1
- package/dist/components/MessageList/ScrollToBottomButton.d.ts +3 -0
- package/dist/components/MessageList/ScrollToBottomButton.d.ts.map +1 -0
- package/dist/components/MessageList/ScrollToBottomButton.js +53 -0
- package/dist/components/MessageList/VirtualizedMessageList.d.ts +5 -0
- package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
- package/dist/components/MessageList/VirtualizedMessageList.js +41 -14
- package/dist/components/MessageList/hooks/useMessageListElements.d.ts +1 -1
- package/dist/components/MessageList/hooks/useMessageListElements.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useMessageListElements.js +4 -3
- package/dist/components/MessageList/hooks/useMessageListScrollManager.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useMessageListScrollManager.js +3 -1
- package/dist/components/MessageList/hooks/useNewMessageNotification.d.ts +2 -0
- package/dist/components/MessageList/hooks/useNewMessageNotification.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useNewMessageNotification.js +8 -1
- package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts +1 -2
- package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useScrollLocationLogic.js +12 -30
- package/dist/components/MessageList/icons.d.ts +8 -0
- package/dist/components/MessageList/icons.d.ts.map +1 -0
- package/dist/components/MessageList/icons.js +11 -0
- package/dist/components/MessageList/index.d.ts +1 -0
- package/dist/components/MessageList/index.d.ts.map +1 -1
- package/dist/components/MessageList/index.js +1 -0
- package/dist/components/MessageList/utils.d.ts +4 -2
- package/dist/components/MessageList/utils.d.ts.map +1 -1
- package/dist/components/MessageList/utils.js +16 -3
- package/dist/components/Modal/Modal.d.ts +2 -2
- package/dist/components/Modal/Modal.d.ts.map +1 -1
- package/dist/components/Modal/Modal.js +18 -15
- package/dist/components/Modal/icons.d.ts +2 -0
- package/dist/components/Modal/icons.d.ts.map +1 -0
- package/dist/components/Modal/icons.js +5 -0
- package/dist/components/Reactions/ReactionSelector.d.ts +2 -0
- package/dist/components/Reactions/ReactionSelector.d.ts.map +1 -1
- package/dist/components/Reactions/ReactionSelector.js +18 -9
- package/dist/components/Reactions/ReactionsList.d.ts +3 -1
- package/dist/components/Reactions/ReactionsList.d.ts.map +1 -1
- package/dist/components/Reactions/ReactionsList.js +33 -47
- package/dist/components/Reactions/SimpleReactionsList.d.ts +3 -1
- package/dist/components/Reactions/SimpleReactionsList.d.ts.map +1 -1
- package/dist/components/Reactions/SimpleReactionsList.js +41 -58
- package/dist/components/Reactions/hooks/useProcessReactions.d.ts +21 -0
- package/dist/components/Reactions/hooks/useProcessReactions.d.ts.map +1 -0
- package/dist/components/Reactions/hooks/useProcessReactions.js +51 -0
- package/dist/components/Thread/Thread.d.ts +2 -6
- package/dist/components/Thread/Thread.d.ts.map +1 -1
- package/dist/components/Thread/Thread.js +21 -89
- package/dist/components/Thread/ThreadHead.d.ts +4 -0
- package/dist/components/Thread/ThreadHead.d.ts.map +1 -0
- package/dist/components/Thread/ThreadHead.js +21 -0
- package/dist/components/Thread/ThreadHeader.d.ts +12 -0
- package/dist/components/Thread/ThreadHeader.d.ts.map +1 -0
- package/dist/components/Thread/ThreadHeader.js +21 -0
- package/dist/components/Thread/ThreadStart.d.ts +2 -0
- package/dist/components/Thread/ThreadStart.d.ts.map +1 -0
- package/dist/components/Thread/ThreadStart.js +10 -0
- package/dist/components/Thread/icons.d.ts +4 -0
- package/dist/components/Thread/icons.d.ts.map +1 -0
- package/dist/components/Thread/icons.js +9 -0
- package/dist/components/Thread/index.d.ts +2 -0
- package/dist/components/Thread/index.d.ts.map +1 -1
- package/dist/components/Thread/index.js +2 -0
- package/dist/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
- package/dist/components/TypingIndicator/TypingIndicator.js +52 -9
- package/dist/components/UserItem/UserItem.d.ts +1 -1
- package/dist/components/UserItem/UserItem.d.ts.map +1 -1
- package/dist/components/UserItem/UserItem.js +15 -8
- package/dist/components/Window/Window.js +1 -1
- package/dist/constants/limits.d.ts +4 -0
- package/dist/constants/limits.d.ts.map +1 -0
- package/dist/constants/limits.js +3 -0
- package/dist/context/ChannelActionContext.d.ts +1 -1
- package/dist/context/ChannelActionContext.d.ts.map +1 -1
- package/dist/context/ChannelActionContext.js +1 -1
- package/dist/context/ChannelStateContext.d.ts +3 -2
- package/dist/context/ChannelStateContext.d.ts.map +1 -1
- package/dist/context/ChannelStateContext.js +1 -1
- package/dist/context/ChatContext.d.ts +5 -4
- package/dist/context/ChatContext.d.ts.map +1 -1
- package/dist/context/ChatContext.js +2 -2
- package/dist/context/ComponentContext.d.ts +6 -2
- package/dist/context/ComponentContext.d.ts.map +1 -1
- package/dist/context/ComponentContext.js +1 -1
- package/dist/context/EmojiContext.d.ts +1 -1
- package/dist/context/EmojiContext.d.ts.map +1 -1
- package/dist/context/EmojiContext.js +1 -1
- package/dist/context/MessageContext.d.ts +1 -1
- package/dist/context/MessageContext.d.ts.map +1 -1
- package/dist/context/MessageContext.js +1 -1
- package/dist/context/MessageInputContext.d.ts +1 -1
- package/dist/context/MessageInputContext.d.ts.map +1 -1
- package/dist/context/MessageInputContext.js +1 -1
- package/dist/context/TranslationContext.d.ts +2 -2
- package/dist/context/TranslationContext.d.ts.map +1 -1
- package/dist/context/TranslationContext.js +8 -4
- package/dist/context/TypingContext.d.ts +1 -1
- package/dist/context/TypingContext.d.ts.map +1 -1
- package/dist/context/TypingContext.js +1 -1
- package/dist/css/index.css +1 -1
- package/dist/css/index.css.map +1 -0
- package/dist/css/v2/index.css +1 -0
- package/dist/css/v2/index.css.map +1 -0
- package/dist/css/v2/index.layout.css +1 -0
- package/dist/css/v2/index.layout.css.map +1 -0
- package/dist/i18n/Streami18n.d.ts +8 -2
- package/dist/i18n/Streami18n.d.ts.map +1 -1
- package/dist/i18n/Streami18n.js +12 -12
- package/dist/i18n/de.json +8 -2
- package/dist/i18n/en.json +8 -2
- package/dist/i18n/es.json +9 -2
- package/dist/i18n/fr.json +9 -2
- package/dist/i18n/hi.json +8 -2
- package/dist/i18n/it.json +9 -2
- package/dist/i18n/ja.json +8 -2
- package/dist/i18n/ko.json +8 -2
- package/dist/i18n/nl.json +8 -2
- package/dist/i18n/pt.json +9 -2
- package/dist/i18n/ru.json +10 -2
- package/dist/i18n/tr.json +8 -2
- package/dist/index.cjs.js +8773 -3961
- package/dist/index.cjs.js.map +1 -1
- package/dist/scss/Attachment.scss +52 -22
- package/dist/scss/Audio.scss +1 -1
- package/dist/scss/Avatar.scss +1 -1
- package/dist/scss/ChannelList.scss +5 -1
- package/dist/scss/ChannelPreview.scss +25 -0
- package/dist/scss/ChannelSearch.scss +5 -3
- package/dist/scss/Gallery.scss +0 -20
- package/dist/scss/ImageCarousel.scss +39 -0
- package/dist/scss/LoadingChannels.scss +1 -1
- package/dist/scss/Message.scss +84 -86
- package/dist/scss/MessageActions.scss +15 -0
- package/dist/scss/MessageCommerce.scss +57 -13
- package/dist/scss/MessageInputFlat.scss +21 -9
- package/dist/scss/MessageList.scss +35 -3
- package/dist/scss/MessageLivestream.scss +23 -10
- package/dist/scss/MessageNotification.scss +7 -1
- package/dist/scss/MessageTeam.scss +37 -10
- package/dist/scss/Modal.scss +2 -0
- package/dist/scss/ReactionList.scss +14 -0
- package/dist/scss/ReactionSelector.scss +6 -0
- package/dist/scss/SendButton.scss +6 -0
- package/dist/scss/SmallMessageInput.scss +0 -1
- package/dist/scss/Thread.scss +21 -2
- package/dist/scss/Tooltip.scss +6 -3
- package/dist/scss/TypingIndicator.scss +5 -0
- package/dist/scss/_base.scss +26 -0
- package/dist/scss/_variables.scss +2 -1
- package/dist/scss/index.scss +5 -4
- package/dist/scss/v2/AttachmentList/AttachmentList-layout.scss +392 -0
- package/dist/scss/v2/AttachmentList/AttachmentList-theme.scss +400 -0
- package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-layout.scss +118 -0
- package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-theme.scss +150 -0
- package/dist/scss/v2/Autocomplete/Autocomplete-layout.scss +62 -0
- package/dist/scss/v2/Autocomplete/Autocomplete-theme.scss +207 -0
- package/dist/scss/v2/Avatar/Avatar-layout.scss +13 -0
- package/dist/scss/v2/Avatar/Avatar-theme.scss +42 -0
- package/dist/scss/v2/Channel/Channel-layout.scss +139 -0
- package/dist/scss/v2/Channel/Channel-theme.scss +99 -0
- package/dist/scss/v2/ChannelHeader/ChannelHeader-layout.scss +23 -0
- package/dist/scss/v2/ChannelHeader/ChannelHeader-theme.scss +43 -0
- package/dist/scss/v2/ChannelList/ChannelList-layout.scss +41 -0
- package/dist/scss/v2/ChannelList/ChannelList-theme.scss +87 -0
- package/dist/scss/v2/ChannelPreview/ChannelPreview-layout.scss +82 -0
- package/dist/scss/v2/ChannelPreview/ChannelPreview-theme.scss +108 -0
- package/dist/scss/v2/ChannelSearch/ChannelSearch-layout.scss +71 -0
- package/dist/scss/v2/ChannelSearch/ChannelSearch-theme.scss +190 -0
- package/dist/scss/v2/EditMessageForm/EditMessageForm-layout.scss +53 -0
- package/dist/scss/v2/EditMessageForm/EditMessageForm-theme.scss +50 -0
- package/dist/scss/v2/ImageCarousel/ImageCarousel-layout.scss +41 -0
- package/dist/scss/v2/ImageCarousel/ImageCarousel-theme.scss +15 -0
- package/dist/scss/v2/LoadingIndicator/LoadingIndicator-layout.scss +39 -0
- package/dist/scss/v2/LoadingIndicator/LoadingIndicator-theme.scss +12 -0
- package/dist/scss/v2/Message/Message-layout.scss +373 -0
- package/dist/scss/v2/Message/Message-theme.scss +353 -0
- package/dist/scss/v2/MessageActionsBox/MessageActionsBox-layout.scss +48 -0
- package/dist/scss/v2/MessageActionsBox/MessageActionsBox-theme.scss +69 -0
- package/dist/scss/v2/MessageInput/MessageInput-layout.scss +186 -0
- package/dist/scss/v2/MessageInput/MessageInput-theme.scss +221 -0
- package/dist/scss/v2/MessageList/MessageList-layout.scss +61 -0
- package/dist/scss/v2/MessageList/MessageList-theme.scss +105 -0
- package/dist/scss/v2/MessageList/VirtualizedMessageList-layout.scss +44 -0
- package/dist/scss/v2/MessageList/VirtualizedMessageList-theme.scss +32 -0
- package/dist/scss/v2/MessageReactions/MessageReactions-layout.scss +64 -0
- package/dist/scss/v2/MessageReactions/MessageReactions-theme.scss +75 -0
- package/dist/scss/v2/MessageReactions/MessageReactionsSelector-layout.scss +52 -0
- package/dist/scss/v2/MessageReactions/MessageReactionsSelector-theme.scss +83 -0
- package/dist/scss/v2/Modal/Modal-layout.scss +40 -0
- package/dist/scss/v2/Modal/Modal-theme.scss +82 -0
- package/dist/scss/v2/Notification/MessageNotification-layout.scss +12 -0
- package/dist/scss/v2/Notification/MessageNotification-theme.scss +34 -0
- package/dist/scss/v2/Notification/Notification-layout.scss +3 -0
- package/dist/scss/v2/Notification/Notification-theme.scss +32 -0
- package/dist/scss/v2/Notification/NotificationList-layout.scss +11 -0
- package/dist/scss/v2/Notification/NotificationList-theme.scss +31 -0
- package/dist/scss/v2/Thread/Thread-layout.scss +47 -0
- package/dist/scss/v2/Thread/Thread-theme.scss +82 -0
- package/dist/scss/v2/Tooltip/Tooltip-layout.scss +30 -0
- package/dist/scss/v2/Tooltip/Tooltip-theme.scss +36 -0
- package/dist/scss/v2/TypingIndicator/TypingIndicator-layout.scss +27 -0
- package/dist/scss/v2/TypingIndicator/TypingIndicator-theme.scss +68 -0
- package/dist/scss/v2/_base.scss +29 -0
- package/dist/scss/v2/_global-layout-variables.scss +65 -0
- package/dist/scss/v2/_global-theme-variables.scss +166 -0
- package/dist/scss/v2/_palette-variables.scss +55 -0
- package/dist/scss/v2/_utils.scss +188 -0
- package/dist/scss/v2/common/CTAButton/CTAButton-layout.scss +4 -0
- package/dist/scss/v2/common/CTAButton/CTAButton-theme.scss +42 -0
- package/dist/scss/v2/common/CircleFAButton/CircleFAButton-layout.scss +14 -0
- package/dist/scss/v2/common/CircleFAButton/CircleFAButton-theme.scss +35 -0
- package/dist/scss/v2/index.layout.scss +31 -0
- package/dist/scss/v2/index.scss +36 -0
- package/dist/scss/{vendor → v2/vendor}/emoji-mart.scss +27 -8
- package/dist/stories/add-message.stories.d.ts +0 -1
- package/dist/stories/add-message.stories.d.ts.map +1 -1
- package/dist/stories/add-message.stories.js +0 -1
- package/dist/stories/edit-message.stories.d.ts +0 -1
- package/dist/stories/edit-message.stories.d.ts.map +1 -1
- package/dist/stories/edit-message.stories.js +0 -1
- package/dist/stories/hello.stories.d.ts +0 -1
- package/dist/stories/hello.stories.d.ts.map +1 -1
- package/dist/stories/hello.stories.js +0 -1
- package/dist/stories/jump-to-message.stories.d.ts +0 -1
- package/dist/stories/jump-to-message.stories.d.ts.map +1 -1
- package/dist/stories/jump-to-message.stories.js +0 -1
- package/dist/stories/mark-read.stories.d.ts +0 -1
- package/dist/stories/mark-read.stories.d.ts.map +1 -1
- package/dist/stories/mark-read.stories.js +0 -1
- package/dist/stories/message-status-readby-tooltip.stories.d.ts +0 -1
- package/dist/stories/message-status-readby-tooltip.stories.d.ts.map +1 -1
- package/dist/stories/message-status-readby-tooltip.stories.js +0 -1
- package/dist/stories/navigate-long-message-lists.stories.d.ts +0 -2
- package/dist/stories/navigate-long-message-lists.stories.d.ts.map +1 -1
- package/dist/stories/navigate-long-message-lists.stories.js +1 -11
- package/dist/stories/toggle-message-actions.stories.d.ts +0 -1
- package/dist/stories/toggle-message-actions.stories.d.ts.map +1 -1
- package/dist/stories/toggle-message-actions.stories.js +0 -1
- package/dist/stories/utils.d.ts.map +1 -1
- package/dist/stories/utils.js +2 -1
- package/dist/types/types.d.ts +7 -0
- package/dist/types/types.d.ts.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +4 -4
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/package.json +11 -7
- package/dist/components/Gallery/ModalWrapper.d.ts +0 -14
- package/dist/components/Gallery/ModalWrapper.d.ts.map +0 -1
- package/dist/components/Gallery/ModalWrapper.js +0 -8
- package/dist/components/Message/MessageCommerce.d.ts +0 -10
- package/dist/components/Message/MessageCommerce.d.ts.map +0 -1
- package/dist/components/Message/MessageCommerce.js +0 -64
- package/dist/components/Message/MessageLivestream.d.ts +0 -16
- package/dist/components/Message/MessageLivestream.d.ts.map +0 -1
- package/dist/components/Message/MessageLivestream.js +0 -164
- package/dist/components/Message/MessageTeam.d.ts +0 -11
- package/dist/components/Message/MessageTeam.d.ts.map +0 -1
- package/dist/components/Message/MessageTeam.js +0 -110
- package/dist/components/Message/hooks/useBreakpoint.d.ts +0 -6
- package/dist/components/Message/hooks/useBreakpoint.d.ts.map +0 -1
- package/dist/components/Message/hooks/useBreakpoint.js +0 -18
- package/dist/components/Message/hooks/useMobilePress.d.ts +0 -5
- package/dist/components/Message/hooks/useMobilePress.d.ts.map +0 -1
- package/dist/components/Message/hooks/useMobilePress.js +0 -33
- package/dist/scss/vendor/mml-react.scss +0 -1749
- package/dist/scss/vendor/react-file-utils.scss +0 -378
- 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?: (
|
|
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,
|
|
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,
|
|
39
|
-
|
|
40
|
-
|
|
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,
|
|
39
|
-
|
|
40
|
-
|
|
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,
|
|
50
|
-
|
|
51
|
-
|
|
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,
|
|
3
|
-
|
|
4
|
-
|
|
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,
|
|
39
|
-
|
|
40
|
-
|
|
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;
|
|
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 {
|
|
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 =
|
|
23
|
-
var _e = useState(
|
|
24
|
-
var _f = useState(
|
|
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":"
|
|
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 (
|
|
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: "
|
|
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-
|
|
23
|
-
React.createElement("
|
|
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
|
|
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 "/"
|
|
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 {
|
|
3
|
-
import {
|
|
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
|
-
|
|
8
|
-
|
|
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
|
|
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,
|
|
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
|
-
|
|
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
|
|
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, {
|
|
164
|
-
query && (React.createElement(SearchResults, {
|
|
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
|