stream-chat-react-native-core 3.10.1 → 4.0.0-beta.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.
- package/lib/commonjs/components/Attachment/Card.js +18 -15
- package/lib/commonjs/components/Attachment/Card.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +8 -15
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy.js +3 -3
- package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +21 -45
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
- package/lib/commonjs/components/Avatar/GroupAvatar.js +3 -9
- package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +293 -208
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +5 -5
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +9 -31
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
- package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +1 -0
- package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +32 -20
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +8 -7
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js +12 -5
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +1 -2
- package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +14 -16
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +144 -851
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +39 -38
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +4 -2
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +24 -16
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +5 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +27 -13
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +19 -20
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +7 -3
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +52 -80
- package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +42 -14
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +1 -5
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +294 -0
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useMessageActions.js +559 -0
- package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -0
- package/lib/commonjs/components/Message/utils/messageActions.js +17 -15
- package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CooldownTimer.js +78 -0
- package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -0
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js +2 -2
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +2 -2
- package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/InputButtons.js +16 -21
- package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInput.js +90 -62
- package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +1 -0
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useCooldown.js +63 -0
- package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -0
- package/lib/commonjs/components/MessageInput/hooks/useCountdown.js +57 -0
- package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -0
- package/lib/commonjs/components/MessageList/DateHeader.js +2 -2
- package/lib/commonjs/components/MessageList/DateHeader.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineDateSeparator.js +2 -2
- package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +75 -42
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js +16 -3
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getDateSeparators.js +2 -1
- package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +10 -5
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/{module/components/MessageOverlay/MessageActions.js → commonjs/components/MessageOverlay/MessageActionList.js} +33 -85
- package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -0
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +131 -0
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -0
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +83 -70
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +38 -0
- package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
- package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +1 -0
- package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
- package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
- package/lib/commonjs/components/Thread/Thread.js +13 -4
- package/lib/commonjs/components/Thread/Thread.js.map +1 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +9 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/docs/ListProps.md +1 -1
- package/lib/commonjs/components/index.js +107 -55
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +68 -0
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -0
- package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +155 -0
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -0
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +144 -0
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -0
- package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +112 -78
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +31 -24
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
- package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +19 -32
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/commonjs/contexts/themeContext/utils/theme.js +25 -9
- package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
- package/lib/commonjs/emoji-data/compiled.js +0 -315
- package/lib/commonjs/emoji-data/compiled.js.map +1 -1
- package/lib/commonjs/emoji-data/emojiNames.js +0 -105
- package/lib/commonjs/emoji-data/emojiNames.js.map +1 -1
- package/lib/commonjs/emoji-data/emojis.js +0 -175
- package/lib/commonjs/emoji-data/emojis.js.map +1 -1
- package/lib/commonjs/i18n/en.json +9 -3
- package/lib/commonjs/i18n/fr.json +9 -3
- package/lib/commonjs/i18n/hi.json +9 -3
- package/lib/commonjs/i18n/it.json +9 -3
- package/lib/commonjs/i18n/ja.json +9 -0
- package/lib/commonjs/i18n/ko.json +9 -0
- package/lib/commonjs/i18n/nl.json +9 -3
- package/lib/commonjs/i18n/ru.json +9 -3
- package/lib/commonjs/i18n/tr.json +10 -4
- package/lib/commonjs/icons/Pin.js +42 -0
- package/lib/commonjs/icons/Pin.js.map +1 -0
- package/lib/commonjs/icons/PinHeader.js +38 -0
- package/lib/commonjs/icons/PinHeader.js.map +1 -0
- package/lib/commonjs/icons/Unpin.js +38 -0
- package/lib/commonjs/icons/Unpin.js.map +1 -0
- package/lib/commonjs/icons/index.js +39 -0
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/mock-builders/api/sendMessage.js +4 -1
- package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/channel.js +1 -0
- package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
- package/lib/commonjs/mock-builders/mock.js +2 -2
- package/lib/commonjs/mock-builders/mock.js.map +1 -1
- package/lib/commonjs/native.js +1 -7
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/utils/date.js +13 -0
- package/lib/commonjs/utils/date.js.map +1 -0
- package/lib/commonjs/utils/utils.js +9 -7
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/Card.js +18 -15
- package/lib/module/components/Attachment/Card.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +8 -15
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/Giphy.js +3 -3
- package/lib/module/components/Attachment/Giphy.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +21 -45
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/{CommandsItem.js → AutoCompleteSuggestionCommandIcon.js} +21 -94
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +145 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +248 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +223 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -0
- package/lib/module/components/Avatar/GroupAvatar.js +3 -9
- package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +293 -208
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js +5 -5
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +7 -5
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +9 -31
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +35 -0
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -0
- package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +1 -0
- package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +32 -20
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +8 -7
- package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js +16 -7
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js +2 -1
- package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
- package/lib/module/components/Chat/hooks/useIsOnline.js +12 -5
- package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/module/components/ImageGallery/ImageGallery.js +1 -2
- package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +14 -16
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/module/components/Message/Message.js +144 -851
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js +39 -38
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js +4 -2
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageFooter.js +24 -16
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +122 -0
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -0
- package/lib/module/components/Message/MessageSimple/MessageReplies.js +5 -1
- package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageSimple.js +27 -13
- package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageStatus.js +19 -20
- package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +7 -3
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/ReactionList.js +52 -80
- package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.js +42 -14
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js +1 -5
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js +294 -0
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -0
- package/lib/module/components/Message/hooks/useMessageActions.js +559 -0
- package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -0
- package/lib/module/components/Message/utils/messageActions.js +17 -15
- package/lib/module/components/Message/utils/messageActions.js.map +1 -1
- package/lib/module/components/MessageInput/CooldownTimer.js +78 -0
- package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -0
- package/lib/module/components/MessageInput/FileUploadPreview.js +2 -2
- package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/ImageUploadPreview.js +2 -2
- package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/InputButtons.js +16 -21
- package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInput.js +90 -62
- package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +71 -0
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -0
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +1 -0
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useCooldown.js +63 -0
- package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -0
- package/lib/module/components/MessageInput/hooks/useCountdown.js +57 -0
- package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -0
- package/lib/module/components/MessageList/DateHeader.js +2 -2
- package/lib/module/components/MessageList/DateHeader.js.map +1 -1
- package/lib/module/components/MessageList/InlineDateSeparator.js +2 -2
- package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +75 -42
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js +16 -3
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/components/MessageList/utils/getDateSeparators.js +2 -1
- package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js +10 -5
- package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/{commonjs/components/MessageOverlay/MessageActions.js → module/components/MessageOverlay/MessageActionList.js} +33 -85
- package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -0
- package/lib/module/components/MessageOverlay/MessageActionListItem.js +131 -0
- package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -0
- package/lib/module/components/MessageOverlay/MessageOverlay.js +83 -70
- package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayBackdrop.js +38 -0
- package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
- package/lib/module/components/MessageOverlay/OverlayReactionList.js +1 -0
- package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js +37 -0
- package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
- package/lib/module/components/Thread/Thread.js +13 -4
- package/lib/module/components/Thread/Thread.js.map +1 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js +9 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/docs/ListProps.md +1 -1
- package/lib/module/components/index.js +107 -55
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +68 -0
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -0
- package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +155 -0
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -0
- package/lib/module/contexts/channelsStateContext/useChannelState.js +144 -0
- package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -0
- package/lib/module/contexts/messageContext/MessageContext.js +2 -2
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +112 -78
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +9 -5
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayProvider.js +31 -24
- package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +61 -0
- package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -0
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +19 -32
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/module/contexts/themeContext/utils/theme.js +25 -9
- package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
- package/lib/module/emoji-data/compiled.js +0 -315
- package/lib/module/emoji-data/compiled.js.map +1 -1
- package/lib/module/emoji-data/emojiNames.js +0 -105
- package/lib/module/emoji-data/emojiNames.js.map +1 -1
- package/lib/module/emoji-data/emojis.js +0 -175
- package/lib/module/emoji-data/emojis.js.map +1 -1
- package/lib/module/i18n/en.json +9 -3
- package/lib/module/i18n/fr.json +9 -3
- package/lib/module/i18n/hi.json +9 -3
- package/lib/module/i18n/it.json +9 -3
- package/lib/module/i18n/ja.json +9 -0
- package/lib/module/i18n/ko.json +9 -0
- package/lib/module/i18n/nl.json +9 -3
- package/lib/module/i18n/ru.json +9 -3
- package/lib/module/i18n/tr.json +10 -4
- package/lib/module/icons/Pin.js +42 -0
- package/lib/module/icons/Pin.js.map +1 -0
- package/lib/module/icons/PinHeader.js +38 -0
- package/lib/module/icons/PinHeader.js.map +1 -0
- package/lib/module/icons/Unpin.js +38 -0
- package/lib/module/icons/Unpin.js.map +1 -0
- package/lib/module/icons/index.js +39 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/mock-builders/api/sendMessage.js +4 -1
- package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/module/mock-builders/generator/channel.js +1 -0
- package/lib/module/mock-builders/generator/channel.js.map +1 -1
- package/lib/module/mock-builders/mock.js +2 -2
- package/lib/module/mock-builders/mock.js.map +1 -1
- package/lib/module/native.js +1 -7
- package/lib/module/native.js.map +1 -1
- package/lib/module/utils/date.js +13 -0
- package/lib/module/utils/date.js.map +1 -0
- package/lib/module/utils/utils.js +9 -7
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Card.d.ts +2 -0
- package/lib/typescript/components/Attachment/Gallery.d.ts +3 -2
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +7 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +4 -0
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +8 -0
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +10 -0
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +22 -0
- package/lib/typescript/components/Channel/Channel.d.ts +11 -10
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -68
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -126
- package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +7 -0
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +12 -0
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +1 -0
- package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts +1 -1
- package/lib/typescript/components/Message/Message.d.ts +3 -2
- package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +8 -0
- package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +1 -0
- package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +2 -1
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +1 -0
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +15 -0
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +26 -0
- package/lib/typescript/components/Message/utils/messageActions.d.ts +22 -21
- package/lib/typescript/components/MessageInput/CooldownTimer.d.ts +10 -0
- package/lib/typescript/components/MessageInput/InputButtons.d.ts +1 -1
- package/lib/typescript/components/MessageInput/MessageInput.d.ts +1 -1
- package/lib/typescript/components/MessageInput/SendMessageDisallowedIndicator.d.ts +1 -0
- package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +9 -0
- package/lib/typescript/components/MessageInput/hooks/useCountdown.d.ts +8 -0
- package/lib/typescript/components/MessageList/MessageList.d.ts +2 -1
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +1 -0
- package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +12 -0
- package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +20 -0
- package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +4 -4
- package/lib/typescript/components/MessageOverlay/OverlayBackdrop.d.ts +6 -0
- package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +12 -0
- package/lib/typescript/components/index.d.ts +11 -7
- package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts +9 -0
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +28 -30
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +1 -1
- package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +41 -0
- package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +20 -0
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +2 -6
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +15 -6
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
- package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +8 -11
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +15 -106
- package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +10 -3
- package/lib/typescript/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.d.ts +25 -0
- package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +15 -14
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +24 -8
- package/lib/typescript/contexts/utils/getDisplayName.d.ts +2 -2
- package/lib/typescript/i18n/en.json +9 -3
- package/lib/typescript/i18n/fr.json +9 -3
- package/lib/typescript/i18n/hi.json +9 -3
- package/lib/typescript/i18n/it.json +9 -3
- package/lib/typescript/i18n/ja.json +9 -0
- package/lib/typescript/i18n/ko.json +9 -0
- package/lib/typescript/i18n/nl.json +9 -3
- package/lib/typescript/i18n/ru.json +9 -3
- package/lib/typescript/i18n/tr.json +10 -4
- package/lib/typescript/icons/Pin.d.ts +3 -0
- package/lib/typescript/icons/PinHeader.d.ts +3 -0
- package/lib/typescript/icons/Unpin.d.ts +3 -0
- package/lib/typescript/icons/index.d.ts +3 -0
- package/lib/typescript/native.d.ts +1 -9
- package/lib/typescript/utils/Streami18n.d.ts +9 -6
- package/lib/typescript/utils/date.d.ts +2 -0
- package/lib/typescript/utils/utils.d.ts +8 -10
- package/package.json +5 -3
- package/src/components/Attachment/Card.tsx +5 -1
- package/src/components/Attachment/Gallery.tsx +5 -10
- package/src/components/Attachment/Giphy.tsx +3 -3
- package/src/components/Attachment/__tests__/Attachment.test.js +13 -6
- package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +41 -27
- package/src/components/AutoCompleteInput/{CommandsItem.tsx → AutoCompleteSuggestionCommandIcon.tsx} +2 -56
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +109 -0
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +154 -0
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +213 -0
- package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +0 -4
- package/src/components/Avatar/GroupAvatar.tsx +0 -19
- package/src/components/Avatar/__tests__/Avatar.test.js +0 -28
- package/src/components/Channel/Channel.tsx +225 -176
- package/src/components/Channel/__tests__/Channel.test.js +25 -20
- package/src/components/Channel/__tests__/ownCapabilities.test.js +376 -0
- package/src/components/Channel/hooks/useCreateChannelContext.ts +6 -6
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +4 -3
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +9 -30
- package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +53 -0
- package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +1 -1
- package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +4 -1
- package/src/components/ChannelList/hooks/usePaginatedChannels.ts +16 -4
- package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +4 -1
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +6 -0
- package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +2 -1
- package/src/components/Chat/__tests__/Chat.test.js +6 -2
- package/src/components/Chat/hooks/useIsOnline.ts +8 -5
- package/src/components/ImageGallery/ImageGallery.tsx +3 -2
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +4 -5
- package/src/components/Indicators/LoadingErrorIndicator.tsx +1 -1
- package/src/components/Message/Message.tsx +140 -579
- package/src/components/Message/MessageSimple/MessageContent.tsx +21 -22
- package/src/components/Message/MessageSimple/MessageDeleted.tsx +5 -2
- package/src/components/Message/MessageSimple/MessageFooter.tsx +36 -17
- package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +150 -0
- package/src/components/Message/MessageSimple/MessageReplies.tsx +5 -0
- package/src/components/Message/MessageSimple/MessageSimple.tsx +47 -26
- package/src/components/Message/MessageSimple/MessageStatus.tsx +10 -29
- package/src/components/Message/MessageSimple/MessageTextContainer.tsx +5 -0
- package/src/components/Message/MessageSimple/ReactionList.tsx +64 -77
- package/src/components/Message/MessageSimple/__tests__/Message.test.js +0 -1
- package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +32 -22
- package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +53 -0
- package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +80 -0
- package/src/components/Message/MessageSimple/utils/renderText.tsx +25 -3
- package/src/components/Message/hooks/useCreateMessageContext.ts +0 -5
- package/src/components/Message/hooks/useMessageActionHandlers.ts +163 -0
- package/src/components/Message/hooks/useMessageActions.tsx +381 -0
- package/src/components/Message/utils/messageActions.ts +64 -38
- package/src/components/MessageInput/CooldownTimer.tsx +66 -0
- package/src/components/MessageInput/FileUploadPreview.tsx +2 -2
- package/src/components/MessageInput/ImageUploadPreview.tsx +2 -2
- package/src/components/MessageInput/InputButtons.tsx +4 -10
- package/src/components/MessageInput/MessageInput.tsx +59 -31
- package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +47 -0
- package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +1 -1
- package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +29 -29
- package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +12 -12
- package/src/components/MessageInput/__tests__/MessageInput.test.js +8 -16
- package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +6061 -2789
- package/src/components/MessageInput/__tests__/__snapshots__/ImageUploadPreview.test.js.snap +1912 -1572
- package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +1167 -282
- package/src/components/MessageInput/__tests__/__snapshots__/UploadProgressIndicator.test.js.snap +4 -4
- package/src/components/MessageInput/hooks/useCooldown.ts +60 -0
- package/src/components/MessageInput/hooks/useCountdown.ts +47 -0
- package/src/components/MessageList/DateHeader.tsx +2 -2
- package/src/components/MessageList/InlineDateSeparator.tsx +2 -2
- package/src/components/MessageList/MessageList.tsx +60 -36
- package/src/components/MessageList/__tests__/MessageList.test.js +231 -106
- package/src/components/MessageList/hooks/useMessageList.ts +14 -2
- package/src/components/MessageList/utils/getDateSeparators.ts +4 -3
- package/src/components/MessageList/utils/getGroupStyles.ts +13 -7
- package/src/components/MessageOverlay/{MessageActions.tsx → MessageActionList.tsx} +57 -89
- package/src/components/MessageOverlay/MessageActionListItem.tsx +111 -0
- package/src/components/MessageOverlay/MessageOverlay.tsx +242 -205
- package/src/components/MessageOverlay/OverlayBackdrop.tsx +17 -0
- package/src/components/MessageOverlay/OverlayReactionList.tsx +1 -1
- package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +43 -0
- package/src/components/Thread/Thread.tsx +8 -0
- package/src/components/Thread/__tests__/Thread.test.js +28 -101
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +1085 -1018
- package/src/components/Thread/components/ThreadFooterComponent.tsx +13 -1
- package/src/components/docs/ListProps.md +1 -1
- package/src/components/index.ts +11 -7
- package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +33 -0
- package/src/contexts/channelContext/ChannelContext.tsx +27 -30
- package/src/contexts/channelsContext/ChannelsContext.tsx +1 -1
- package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +287 -0
- package/src/contexts/channelsStateContext/useChannelState.ts +206 -0
- package/src/contexts/messageContext/MessageContext.tsx +1 -8
- package/src/contexts/messageInputContext/MessageInputContext.tsx +56 -18
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +7 -3
- package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +12 -12
- package/src/contexts/messagesContext/MessagesContext.tsx +28 -129
- package/src/contexts/overlayContext/OverlayContext.tsx +10 -4
- package/src/contexts/overlayContext/OverlayProvider.tsx +21 -20
- package/src/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.tsx +38 -0
- package/src/contexts/suggestionsContext/SuggestionsContext.tsx +27 -48
- package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +0 -1
- package/src/contexts/themeContext/utils/theme.ts +48 -16
- package/src/contexts/translationContext/TranslationContext.tsx +1 -1
- package/src/contexts/utils/getDisplayName.ts +2 -1
- package/src/emoji-data/compiled.ts +1830 -9609
- package/src/emoji-data/emojiNames.ts +0 -140
- package/src/emoji-data/emojis.ts +0 -210
- package/src/i18n/en.json +9 -3
- package/src/i18n/fr.json +9 -3
- package/src/i18n/hi.json +9 -3
- package/src/i18n/it.json +9 -3
- package/src/i18n/ja.json +9 -0
- package/src/i18n/ko.json +9 -0
- package/src/i18n/nl.json +9 -3
- package/src/i18n/ru.json +9 -3
- package/src/i18n/tr.json +10 -4
- package/src/icons/Pin.tsx +17 -0
- package/src/icons/PinHeader.tsx +12 -0
- package/src/icons/Unpin.tsx +12 -0
- package/src/icons/index.ts +3 -0
- package/src/mock-builders/api/sendMessage.js +3 -2
- package/src/mock-builders/generator/channel.js +18 -0
- package/src/mock-builders/mock.js +2 -2
- package/src/native.ts +1 -13
- package/src/utils/date.ts +4 -0
- package/src/utils/utils.ts +14 -12
- package/src/version.json +1 -1
- package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js +0 -78
- package/lib/commonjs/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
- package/lib/commonjs/components/AutoCompleteInput/CommandsItem.js.map +0 -1
- package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js +0 -81
- package/lib/commonjs/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
- package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js +0 -75
- package/lib/commonjs/components/AutoCompleteInput/EmojisItem.js.map +0 -1
- package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js +0 -125
- package/lib/commonjs/components/AutoCompleteInput/MentionsItem.js.map +0 -1
- package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js +0 -199
- package/lib/commonjs/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
- package/lib/commonjs/components/MessageOverlay/MessageActions.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/CommandsHeader.js +0 -78
- package/lib/module/components/AutoCompleteInput/CommandsHeader.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/CommandsItem.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/EmojisHeader.js +0 -81
- package/lib/module/components/AutoCompleteInput/EmojisHeader.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/EmojisItem.js +0 -75
- package/lib/module/components/AutoCompleteInput/EmojisItem.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/MentionsItem.js +0 -125
- package/lib/module/components/AutoCompleteInput/MentionsItem.js.map +0 -1
- package/lib/module/components/AutoCompleteInput/SuggestionsList.js +0 -199
- package/lib/module/components/AutoCompleteInput/SuggestionsList.js.map +0 -1
- package/lib/module/components/MessageOverlay/MessageActions.js.map +0 -1
- package/lib/typescript/components/AutoCompleteInput/CommandsHeader.d.ts +0 -2
- package/lib/typescript/components/AutoCompleteInput/CommandsItem.d.ts +0 -15
- package/lib/typescript/components/AutoCompleteInput/EmojisHeader.d.ts +0 -5
- package/lib/typescript/components/AutoCompleteInput/EmojisItem.d.ts +0 -12
- package/lib/typescript/components/AutoCompleteInput/MentionsItem.d.ts +0 -16
- package/lib/typescript/components/AutoCompleteInput/SuggestionsList.d.ts +0 -13
- package/lib/typescript/components/MessageOverlay/MessageActions.d.ts +0 -11
- package/src/components/AutoCompleteInput/CommandsHeader.tsx +0 -43
- package/src/components/AutoCompleteInput/EmojisHeader.tsx +0 -45
- package/src/components/AutoCompleteInput/EmojisItem.tsx +0 -52
- package/src/components/AutoCompleteInput/MentionsItem.tsx +0 -74
- package/src/components/AutoCompleteInput/SuggestionsList.tsx +0 -138
- package/src/components/AutoCompleteInput/__tests__/CommandsItem.test.js +0 -26
- package/src/components/AutoCompleteInput/__tests__/MentionsItem.test.js +0 -62
- package/src/components/MessageList/__tests__/__snapshots__/MessageList.test.js.snap +0 -936
|
@@ -45,6 +45,7 @@ import { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/
|
|
|
45
45
|
import { MessageContent as MessageContentDefault } from '../Message/MessageSimple/MessageContent';
|
|
46
46
|
import { MessageDeleted as MessageDeletedDefault } from '../Message/MessageSimple/MessageDeleted';
|
|
47
47
|
import { MessageFooter as MessageFooterDefault } from '../Message/MessageSimple/MessageFooter';
|
|
48
|
+
import { MessagePinnedHeader as MessagePinnedHeaderDefault } from '../Message/MessageSimple/MessagePinnedHeader';
|
|
48
49
|
import { MessageReplies as MessageRepliesDefault } from '../Message/MessageSimple/MessageReplies';
|
|
49
50
|
import { MessageRepliesAvatars as MessageRepliesAvatarsDefault } from '../Message/MessageSimple/MessageRepliesAvatars';
|
|
50
51
|
import { MessageSimple as MessageSimpleDefault } from '../Message/MessageSimple/MessageSimple';
|
|
@@ -52,11 +53,13 @@ import { MessageStatus as MessageStatusDefault } from '../Message/MessageSimple/
|
|
|
52
53
|
import { ReactionList as ReactionListDefault } from '../Message/MessageSimple/ReactionList';
|
|
53
54
|
import { AttachButton as AttachButtonDefault } from '../MessageInput/AttachButton';
|
|
54
55
|
import { CommandsButton as CommandsButtonDefault } from '../MessageInput/CommandsButton';
|
|
56
|
+
import { CooldownTimer as CooldownTimerDefault } from '../MessageInput/CooldownTimer';
|
|
55
57
|
import { FileUploadPreview as FileUploadPreviewDefault } from '../MessageInput/FileUploadPreview';
|
|
56
58
|
import { ImageUploadPreview as ImageUploadPreviewDefault } from '../MessageInput/ImageUploadPreview';
|
|
57
59
|
import { InputButtons as InputButtonsDefault } from '../MessageInput/InputButtons';
|
|
58
60
|
import { MoreOptionsButton as MoreOptionsButtonDefault } from '../MessageInput/MoreOptionsButton';
|
|
59
61
|
import { SendButton as SendButtonDefault } from '../MessageInput/SendButton';
|
|
62
|
+
import { SendMessageDisallowedIndicator as SendMessageDisallowedIndicatorDefault } from '../MessageInput/SendMessageDisallowedIndicator';
|
|
60
63
|
import { ShowThreadMessageInChannelButton as ShowThreadMessageInChannelButtonDefault } from '../MessageInput/ShowThreadMessageInChannelButton';
|
|
61
64
|
import { UploadProgressIndicator as UploadProgressIndicatorDefault } from '../MessageInput/UploadProgressIndicator';
|
|
62
65
|
import { DateHeader as DateHeaderDefault } from '../MessageList/DateHeader';
|
|
@@ -69,20 +72,18 @@ import { TypingIndicator as TypingIndicatorDefault } from '../MessageList/Typing
|
|
|
69
72
|
import { TypingIndicatorContainer as TypingIndicatorContainerDefault } from '../MessageList/TypingIndicatorContainer';
|
|
70
73
|
import { OverlayReactionList as OverlayReactionListDefault } from '../MessageOverlay/OverlayReactionList';
|
|
71
74
|
import { Reply as ReplyDefault } from '../Reply/Reply';
|
|
75
|
+
import { AutoCompleteSuggestionList as AutoCompleteSuggestionListDefault } from '../AutoCompleteInput/AutoCompleteSuggestionList';
|
|
76
|
+
import { AutoCompleteSuggestionHeader as AutoCompleteSuggestionHeaderDefault } from '../AutoCompleteInput/AutoCompleteSuggestionHeader';
|
|
77
|
+
import { AutoCompleteSuggestionItem as AutoCompleteSuggestionItemDefault } from '../AutoCompleteInput/AutoCompleteSuggestionItem';
|
|
72
78
|
|
|
73
|
-
import {
|
|
74
|
-
|
|
75
|
-
ChannelContextValue,
|
|
76
|
-
ChannelProvider,
|
|
77
|
-
} from '../../contexts/channelContext/ChannelContext';
|
|
79
|
+
import { ChannelContextValue, ChannelProvider } from '../../contexts/channelContext/ChannelContext';
|
|
80
|
+
import { useChannelState } from '../../contexts/channelsStateContext/useChannelState';
|
|
78
81
|
import { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';
|
|
79
82
|
import {
|
|
80
|
-
InputConfig,
|
|
81
83
|
InputMessageInputContextValue,
|
|
82
84
|
MessageInputProvider,
|
|
83
85
|
} from '../../contexts/messageInputContext/MessageInputContext';
|
|
84
86
|
import {
|
|
85
|
-
MessagesConfig,
|
|
86
87
|
MessagesContextValue,
|
|
87
88
|
MessagesProvider,
|
|
88
89
|
} from '../../contexts/messagesContext/MessagesContext';
|
|
@@ -100,7 +101,7 @@ import {
|
|
|
100
101
|
TranslationContextValue,
|
|
101
102
|
useTranslationContext,
|
|
102
103
|
} from '../../contexts/translationContext/TranslationContext';
|
|
103
|
-
import {
|
|
104
|
+
import { TypingProvider } from '../../contexts/typingContext/TypingContext';
|
|
104
105
|
import {
|
|
105
106
|
LOLReaction,
|
|
106
107
|
LoveReaction,
|
|
@@ -112,6 +113,7 @@ import { FlatList as FlatListDefault } from '../../native';
|
|
|
112
113
|
import { generateRandomId, ReactionData } from '../../utils/utils';
|
|
113
114
|
|
|
114
115
|
import type { MessageType } from '../MessageList/hooks/useMessageList';
|
|
116
|
+
import type { UseChannelStateValue } from '../../contexts/channelsStateContext/useChannelState';
|
|
115
117
|
|
|
116
118
|
import type {
|
|
117
119
|
DefaultAttachmentType,
|
|
@@ -123,6 +125,11 @@ import type {
|
|
|
123
125
|
DefaultUserType,
|
|
124
126
|
UnknownType,
|
|
125
127
|
} from '../../types/types';
|
|
128
|
+
import { useCreateOwnCapabilitiesContext } from './hooks/useCreateOwnCapabilitiesContext';
|
|
129
|
+
import {
|
|
130
|
+
OwnCapabilitiesContextValue,
|
|
131
|
+
OwnCapabilitiesProvider,
|
|
132
|
+
} from '../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';
|
|
126
133
|
|
|
127
134
|
const styles = StyleSheet.create({
|
|
128
135
|
selectChannel: { fontWeight: 'bold', padding: 16 },
|
|
@@ -182,22 +189,22 @@ export type ChannelPropsWithContext<
|
|
|
182
189
|
Me extends UnknownType = DefaultMessageType,
|
|
183
190
|
Re extends UnknownType = DefaultReactionType,
|
|
184
191
|
Us extends UnknownType = DefaultUserType,
|
|
185
|
-
> =
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
> &
|
|
192
|
+
> = Pick<ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'channel'> &
|
|
193
|
+
Partial<
|
|
194
|
+
Pick<
|
|
195
|
+
ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>,
|
|
196
|
+
| 'EmptyStateIndicator'
|
|
197
|
+
| 'enableMessageGroupingByUser'
|
|
198
|
+
| 'enforceUniqueReaction'
|
|
199
|
+
| 'giphyEnabled'
|
|
200
|
+
| 'hideStickyDateHeader'
|
|
201
|
+
| 'hideDateSeparators'
|
|
202
|
+
| 'LoadingIndicator'
|
|
203
|
+
| 'maxTimeBetweenGroupedMessages'
|
|
204
|
+
| 'NetworkDownIndicator'
|
|
205
|
+
| 'StickyHeader'
|
|
206
|
+
>
|
|
207
|
+
> &
|
|
201
208
|
Pick<ChatContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'client'> &
|
|
202
209
|
Partial<
|
|
203
210
|
Omit<
|
|
@@ -205,7 +212,12 @@ export type ChannelPropsWithContext<
|
|
|
205
212
|
'quotedMessage' | 'editing' | 'clearEditingState' | 'clearQuotedMessageState' | 'sendMessage'
|
|
206
213
|
>
|
|
207
214
|
> &
|
|
208
|
-
Partial<
|
|
215
|
+
Partial<
|
|
216
|
+
Pick<
|
|
217
|
+
SuggestionsContextValue<Co, Us>,
|
|
218
|
+
'AutoCompleteSuggestionHeader' | 'AutoCompleteSuggestionItem' | 'AutoCompleteSuggestionList'
|
|
219
|
+
>
|
|
220
|
+
> &
|
|
209
221
|
Pick<TranslationContextValue, 't'> &
|
|
210
222
|
Partial<
|
|
211
223
|
Pick<
|
|
@@ -213,28 +225,24 @@ export type ChannelPropsWithContext<
|
|
|
213
225
|
'messages' | 'loadingMore' | 'loadingMoreRecent'
|
|
214
226
|
>
|
|
215
227
|
> &
|
|
228
|
+
UseChannelStateValue<At, Ch, Co, Ev, Me, Re, Us> &
|
|
216
229
|
Partial<
|
|
217
230
|
Pick<
|
|
218
231
|
MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>,
|
|
219
232
|
| 'additionalTouchableProps'
|
|
220
|
-
| 'animatedLongPress'
|
|
221
233
|
| 'Attachment'
|
|
222
234
|
| 'AttachmentActions'
|
|
223
|
-
| 'blockUser'
|
|
224
235
|
| 'Card'
|
|
225
236
|
| 'CardCover'
|
|
226
237
|
| 'CardFooter'
|
|
227
238
|
| 'CardHeader'
|
|
228
|
-
| 'copyMessage'
|
|
229
239
|
| 'DateHeader'
|
|
230
|
-
| '
|
|
240
|
+
| 'deletedMessagesVisibilityType'
|
|
231
241
|
| 'disableTypingIndicator'
|
|
232
242
|
| 'dismissKeyboardOnMessageTouch'
|
|
233
|
-
| 'editMessage'
|
|
234
243
|
| 'FileAttachment'
|
|
235
244
|
| 'FileAttachmentIcon'
|
|
236
245
|
| 'FileAttachmentGroup'
|
|
237
|
-
| 'flagMessage'
|
|
238
246
|
| 'FlatList'
|
|
239
247
|
| 'forceAlignMessages'
|
|
240
248
|
| 'formatDate'
|
|
@@ -246,6 +254,7 @@ export type ChannelPropsWithContext<
|
|
|
246
254
|
| 'handleEdit'
|
|
247
255
|
| 'handleFlag'
|
|
248
256
|
| 'handleMute'
|
|
257
|
+
| 'handlePinMessage'
|
|
249
258
|
| 'handleReaction'
|
|
250
259
|
| 'handleQuotedReply'
|
|
251
260
|
| 'handleRetry'
|
|
@@ -263,27 +272,23 @@ export type ChannelPropsWithContext<
|
|
|
263
272
|
| 'MessageFooter'
|
|
264
273
|
| 'MessageHeader'
|
|
265
274
|
| 'MessageList'
|
|
275
|
+
| 'MessagePinnedHeader'
|
|
266
276
|
| 'MessageReplies'
|
|
267
277
|
| 'MessageRepliesAvatars'
|
|
268
278
|
| 'MessageSimple'
|
|
269
279
|
| 'MessageStatus'
|
|
270
280
|
| 'MessageSystem'
|
|
271
281
|
| 'MessageText'
|
|
272
|
-
| 'muteUser'
|
|
273
282
|
| 'myMessageTheme'
|
|
274
|
-
| 'onDoubleTapMessage'
|
|
275
283
|
| 'onLongPressMessage'
|
|
276
284
|
| 'onPressInMessage'
|
|
277
285
|
| 'onPressMessage'
|
|
278
286
|
| 'OverlayReactionList'
|
|
279
|
-
| 'quotedReply'
|
|
280
287
|
| 'ReactionList'
|
|
281
288
|
| 'Reply'
|
|
282
|
-
| 'retry'
|
|
283
289
|
| 'ScrollToBottomButton'
|
|
284
290
|
| 'selectReaction'
|
|
285
291
|
| 'supportedReactions'
|
|
286
|
-
| 'threadReply'
|
|
287
292
|
| 'TypingIndicator'
|
|
288
293
|
| 'TypingIndicatorContainer'
|
|
289
294
|
| 'UrlPreview'
|
|
@@ -292,6 +297,7 @@ export type ChannelPropsWithContext<
|
|
|
292
297
|
Partial<
|
|
293
298
|
Pick<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'allowThreadMessagesInChannel' | 'thread'>
|
|
294
299
|
> & {
|
|
300
|
+
shouldSyncChannel: boolean;
|
|
295
301
|
/**
|
|
296
302
|
* Additional props passed to keyboard avoiding view
|
|
297
303
|
*/
|
|
@@ -369,15 +375,13 @@ export type ChannelPropsWithContext<
|
|
|
369
375
|
LoadingErrorIndicator?: React.ComponentType<LoadingErrorProps>;
|
|
370
376
|
maxMessageLength?: number;
|
|
371
377
|
messageId?: string;
|
|
372
|
-
mutesEnabled?: boolean;
|
|
373
378
|
newMessageStateUpdateThrottleInterval?: number;
|
|
374
|
-
|
|
375
|
-
reactionsEnabled?: boolean;
|
|
376
|
-
readEventsEnabled?: boolean;
|
|
379
|
+
overrideOwnCapabilities?: OwnCapabilitiesContextValue;
|
|
377
380
|
stateUpdateThrottleInterval?: number;
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
+
/**
|
|
382
|
+
* Tells if channel is rendering a thread list
|
|
383
|
+
*/
|
|
384
|
+
threadList?: boolean;
|
|
381
385
|
};
|
|
382
386
|
|
|
383
387
|
const ChannelWithContext = <
|
|
@@ -394,15 +398,16 @@ const ChannelWithContext = <
|
|
|
394
398
|
const {
|
|
395
399
|
additionalKeyboardAvoidingViewProps,
|
|
396
400
|
additionalTextInputProps,
|
|
397
|
-
animatedLongPress,
|
|
398
401
|
additionalTouchableProps,
|
|
399
402
|
allowThreadMessagesInChannel = true,
|
|
400
403
|
AttachButton = AttachButtonDefault,
|
|
401
404
|
Attachment = AttachmentDefault,
|
|
402
405
|
AttachmentActions = AttachmentActionsDefault,
|
|
406
|
+
AutoCompleteSuggestionHeader = AutoCompleteSuggestionHeaderDefault,
|
|
407
|
+
AutoCompleteSuggestionItem = AutoCompleteSuggestionItemDefault,
|
|
408
|
+
AutoCompleteSuggestionList = AutoCompleteSuggestionListDefault,
|
|
403
409
|
autoCompleteSuggestionsLimit,
|
|
404
410
|
autoCompleteTriggerSettings,
|
|
405
|
-
blockUser,
|
|
406
411
|
Card = CardDefault,
|
|
407
412
|
CardCover,
|
|
408
413
|
CardFooter,
|
|
@@ -410,12 +415,11 @@ const ChannelWithContext = <
|
|
|
410
415
|
channel,
|
|
411
416
|
children,
|
|
412
417
|
client,
|
|
413
|
-
closeSuggestions,
|
|
414
418
|
CommandsButton = CommandsButtonDefault,
|
|
415
419
|
compressImageQuality,
|
|
416
|
-
|
|
420
|
+
CooldownTimer = CooldownTimerDefault,
|
|
417
421
|
DateHeader = DateHeaderDefault,
|
|
418
|
-
|
|
422
|
+
deletedMessagesVisibilityType = 'always',
|
|
419
423
|
disableIfFrozenChannel = true,
|
|
420
424
|
disableKeyboardCompatibleView = false,
|
|
421
425
|
disableTypingIndicator,
|
|
@@ -425,15 +429,13 @@ const ChannelWithContext = <
|
|
|
425
429
|
doMarkReadRequest,
|
|
426
430
|
doSendMessageRequest,
|
|
427
431
|
doUpdateMessageRequest,
|
|
428
|
-
editMessage: editMessageProp,
|
|
429
432
|
EmptyStateIndicator = EmptyStateIndicatorDefault,
|
|
430
433
|
enableMessageGroupingByUser = true,
|
|
431
434
|
enforceUniqueReaction = false,
|
|
432
435
|
FileAttachment = FileAttachmentDefault,
|
|
433
|
-
FileAttachmentIcon = FileIconDefault,
|
|
434
436
|
FileAttachmentGroup = FileAttachmentGroupDefault,
|
|
437
|
+
FileAttachmentIcon = FileIconDefault,
|
|
435
438
|
FileUploadPreview = FileUploadPreviewDefault,
|
|
436
|
-
flagMessage,
|
|
437
439
|
FlatList = FlatListDefault,
|
|
438
440
|
forceAlignMessages,
|
|
439
441
|
formatDate,
|
|
@@ -447,6 +449,7 @@ const ChannelWithContext = <
|
|
|
447
449
|
handleEdit,
|
|
448
450
|
handleFlag,
|
|
449
451
|
handleMute,
|
|
452
|
+
handlePinMessage,
|
|
450
453
|
handleQuotedReply,
|
|
451
454
|
handleReaction,
|
|
452
455
|
handleRetry,
|
|
@@ -466,19 +469,18 @@ const ChannelWithContext = <
|
|
|
466
469
|
keyboardBehavior,
|
|
467
470
|
KeyboardCompatibleView = KeyboardCompatibleViewDefault,
|
|
468
471
|
keyboardVerticalOffset,
|
|
469
|
-
|
|
470
|
-
legacyImageViewerSwipeBehaviour = true,
|
|
472
|
+
legacyImageViewerSwipeBehaviour = false,
|
|
471
473
|
LoadingErrorIndicator = LoadingErrorIndicatorDefault,
|
|
472
474
|
LoadingIndicator = LoadingIndicatorDefault,
|
|
473
475
|
loadingMore: loadingMoreProp,
|
|
474
476
|
loadingMoreRecent: loadingMoreRecentProp,
|
|
475
477
|
markdownRules,
|
|
476
|
-
messageId,
|
|
477
478
|
maxMessageLength: maxMessageLengthProp,
|
|
478
479
|
maxNumberOfFiles = 10,
|
|
479
480
|
maxTimeBetweenGroupedMessages,
|
|
480
481
|
mentionAllAppUsersEnabled = false,
|
|
481
482
|
mentionAllAppUsersQuery,
|
|
483
|
+
members,
|
|
482
484
|
Message = MessageDefault,
|
|
483
485
|
messageActions,
|
|
484
486
|
MessageAvatar = MessageAvatarDefault,
|
|
@@ -487,55 +489,59 @@ const ChannelWithContext = <
|
|
|
487
489
|
MessageDeleted = MessageDeletedDefault,
|
|
488
490
|
MessageFooter = MessageFooterDefault,
|
|
489
491
|
MessageHeader,
|
|
492
|
+
messageId,
|
|
490
493
|
MessageList = MessageListDefault,
|
|
494
|
+
MessagePinnedHeader = MessagePinnedHeaderDefault,
|
|
491
495
|
MessageReplies = MessageRepliesDefault,
|
|
492
496
|
MessageRepliesAvatars = MessageRepliesAvatarsDefault,
|
|
493
|
-
messages
|
|
497
|
+
messages,
|
|
494
498
|
MessageSimple = MessageSimpleDefault,
|
|
495
499
|
MessageStatus = MessageStatusDefault,
|
|
496
500
|
MessageSystem = MessageSystemDefault,
|
|
497
501
|
MessageText,
|
|
498
502
|
MoreOptionsButton = MoreOptionsButtonDefault,
|
|
499
|
-
mutesEnabled: mutesEnabledProp,
|
|
500
|
-
muteUser,
|
|
501
503
|
myMessageTheme,
|
|
502
504
|
newMessageStateUpdateThrottleInterval = defaultThrottleInterval,
|
|
503
505
|
NetworkDownIndicator = NetworkDownIndicatorDefault,
|
|
504
506
|
numberOfLines = 5,
|
|
505
507
|
onChangeText,
|
|
506
|
-
onDoubleTapMessage,
|
|
507
508
|
onLongPressMessage,
|
|
508
|
-
|
|
509
|
+
overrideOwnCapabilities,
|
|
509
510
|
onPressInMessage,
|
|
510
|
-
|
|
511
|
+
onPressMessage,
|
|
511
512
|
OverlayReactionList = OverlayReactionListDefault,
|
|
512
|
-
quotedRepliesEnabled: quotedRepliesEnabledProp,
|
|
513
|
-
quotedReply,
|
|
514
513
|
ReactionList = ReactionListDefault,
|
|
515
|
-
|
|
516
|
-
readEventsEnabled: readEventsEnabledProp,
|
|
514
|
+
read,
|
|
517
515
|
Reply = ReplyDefault,
|
|
518
|
-
retry,
|
|
519
516
|
ScrollToBottomButton = ScrollToBottomButtonDefault,
|
|
520
517
|
selectReaction,
|
|
521
518
|
SendButton = SendButtonDefault,
|
|
519
|
+
SendMessageDisallowedIndicator = SendMessageDisallowedIndicatorDefault,
|
|
522
520
|
sendImageAsync = false,
|
|
523
521
|
setInputRef,
|
|
522
|
+
setMembers,
|
|
523
|
+
setMessages,
|
|
524
|
+
setRead,
|
|
525
|
+
setThreadMessages,
|
|
526
|
+
setTyping,
|
|
527
|
+
setWatcherCount,
|
|
528
|
+
setWatchers,
|
|
529
|
+
shouldSyncChannel,
|
|
524
530
|
ShowThreadMessageInChannelButton = ShowThreadMessageInChannelButtonDefault,
|
|
525
531
|
stateUpdateThrottleInterval = defaultThrottleInterval,
|
|
526
532
|
StickyHeader,
|
|
527
533
|
supportedReactions = reactionData,
|
|
528
534
|
t,
|
|
529
535
|
thread: threadProps,
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
536
|
+
threadList,
|
|
537
|
+
threadMessages,
|
|
538
|
+
typing,
|
|
533
539
|
TypingIndicator = TypingIndicatorDefault,
|
|
534
540
|
TypingIndicatorContainer = TypingIndicatorContainerDefault,
|
|
535
|
-
updateSuggestions,
|
|
536
541
|
UploadProgressIndicator = UploadProgressIndicatorDefault,
|
|
537
|
-
uploadsEnabled: uploadsEnabledProp,
|
|
538
542
|
UrlPreview = CardDefault,
|
|
543
|
+
watcherCount,
|
|
544
|
+
watchers,
|
|
539
545
|
} = props;
|
|
540
546
|
|
|
541
547
|
const {
|
|
@@ -546,48 +552,30 @@ const ChannelWithContext = <
|
|
|
546
552
|
} = useTheme();
|
|
547
553
|
const [deleted, setDeleted] = useState(false);
|
|
548
554
|
const [editing, setEditing] = useState<boolean | MessageType<At, Ch, Co, Ev, Me, Re, Us>>(false);
|
|
549
|
-
const [error, setError] = useState(false);
|
|
555
|
+
const [error, setError] = useState<Error | boolean>(false);
|
|
550
556
|
const [hasMore, setHasMore] = useState(true);
|
|
551
557
|
const [lastRead, setLastRead] =
|
|
552
558
|
useState<ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['lastRead']>();
|
|
553
|
-
const [loading, setLoading] = useState(
|
|
559
|
+
const [loading, setLoading] = useState(!channel?.state.messages.length);
|
|
554
560
|
const [loadingMore, setLoadingMore] = useState(false);
|
|
555
561
|
|
|
556
562
|
const [loadingMoreRecent, setLoadingMoreRecent] = useState(false);
|
|
557
|
-
const [messages, setMessages] = useState<
|
|
558
|
-
PaginatedMessageListContextValue<At, Ch, Co, Ev, Me, Re, Us>['messages']
|
|
559
|
-
>([]);
|
|
560
|
-
|
|
561
|
-
const [members, setMembers] = useState<
|
|
562
|
-
ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['members']
|
|
563
|
-
>({});
|
|
564
563
|
const [quotedMessage, setQuotedMessage] =
|
|
565
564
|
useState<boolean | MessageType<At, Ch, Co, Ev, Me, Re, Us>>(false);
|
|
566
|
-
const [read, setRead] = useState<ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['read']>({});
|
|
567
565
|
const [thread, setThread] = useState<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>['thread']>(
|
|
568
566
|
threadProps || null,
|
|
569
567
|
);
|
|
570
568
|
const [threadHasMore, setThreadHasMore] = useState(true);
|
|
571
569
|
const [threadLoadingMore, setThreadLoadingMore] = useState(false);
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
>((threadProps?.id && channel?.state?.threads?.[threadProps.id]) || []);
|
|
575
|
-
const [typing, setTyping] = useState<TypingContextValue<At, Ch, Co, Ev, Me, Re, Us>['typing']>(
|
|
576
|
-
{},
|
|
577
|
-
);
|
|
578
|
-
const [watcherCount, setWatcherCount] =
|
|
579
|
-
useState<ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['watcherCount']>();
|
|
580
|
-
const [watchers, setWatchers] = useState<
|
|
581
|
-
ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>['watchers']
|
|
582
|
-
>({});
|
|
570
|
+
|
|
571
|
+
const [syncingChannel, setSyncingChannel] = useState(false);
|
|
583
572
|
|
|
584
573
|
const { setTargetedMessage, targetedMessage } = useTargetedMessage(messageId);
|
|
585
574
|
|
|
586
575
|
const channelId = channel?.id || '';
|
|
587
576
|
useEffect(() => {
|
|
588
577
|
const initChannel = () => {
|
|
589
|
-
if (!channel) return;
|
|
590
|
-
|
|
578
|
+
if (!channel || !shouldSyncChannel) return;
|
|
591
579
|
/**
|
|
592
580
|
* Loading channel at first unread message requires channel to be initialized in the first place,
|
|
593
581
|
* since we use read state on channel to decide what offset to load channel at.
|
|
@@ -627,7 +615,7 @@ const ChannelWithContext = <
|
|
|
627
615
|
|
|
628
616
|
const threadPropsExists = !!threadProps;
|
|
629
617
|
useEffect(() => {
|
|
630
|
-
if (threadProps) {
|
|
618
|
+
if (threadProps && shouldSyncChannel) {
|
|
631
619
|
setThread(threadProps);
|
|
632
620
|
if (channel && threadProps?.id) {
|
|
633
621
|
setThreadMessages(channel.state.threads?.[threadProps.id] || []);
|
|
@@ -740,7 +728,7 @@ const ChannelWithContext = <
|
|
|
740
728
|
).current;
|
|
741
729
|
|
|
742
730
|
const connectionRecoveredHandler = () => {
|
|
743
|
-
if (channel) {
|
|
731
|
+
if (channel && shouldSyncChannel) {
|
|
744
732
|
copyChannelState();
|
|
745
733
|
if (thread) {
|
|
746
734
|
setThreadMessages([...channel.state.threads[thread.id]]);
|
|
@@ -749,31 +737,33 @@ const ChannelWithContext = <
|
|
|
749
737
|
};
|
|
750
738
|
|
|
751
739
|
const connectionChangedHandler = (event: ConnectionChangeEvent) => {
|
|
752
|
-
if (event.online) {
|
|
740
|
+
if (event.online && shouldSyncChannel) {
|
|
753
741
|
resyncChannel();
|
|
754
742
|
}
|
|
755
743
|
};
|
|
756
744
|
|
|
757
745
|
const handleEvent: EventHandler<At, Ch, Co, Ev, Me, Re, Us> = (event) => {
|
|
758
|
-
if (
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
746
|
+
if (shouldSyncChannel) {
|
|
747
|
+
if (thread) {
|
|
748
|
+
const updatedThreadMessages =
|
|
749
|
+
(thread.id && channel && channel.state.threads[thread.id]) || threadMessages;
|
|
750
|
+
setThreadMessages(updatedThreadMessages);
|
|
751
|
+
}
|
|
763
752
|
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
753
|
+
if (channel && thread && event.message?.id === thread.id) {
|
|
754
|
+
const updatedThread = channel.state.formatMessage(event.message);
|
|
755
|
+
setThread(updatedThread);
|
|
756
|
+
}
|
|
768
757
|
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
758
|
+
if (event.type === 'typing.start' || event.type === 'typing.stop') {
|
|
759
|
+
copyTypingState();
|
|
760
|
+
} else if (event.type === 'message.read') {
|
|
761
|
+
copyReadState();
|
|
762
|
+
} else if (event.type === 'message.new') {
|
|
763
|
+
copyMessagesState();
|
|
764
|
+
} else if (channel) {
|
|
765
|
+
copyChannelState();
|
|
766
|
+
}
|
|
777
767
|
}
|
|
778
768
|
};
|
|
779
769
|
|
|
@@ -806,11 +796,12 @@ const ChannelWithContext = <
|
|
|
806
796
|
clientSubscriptions.forEach((s) => s.unsubscribe());
|
|
807
797
|
channelSubscriptions.forEach((s) => s.unsubscribe());
|
|
808
798
|
};
|
|
809
|
-
}, [channelId, connectionRecoveredHandler, handleEvent]);
|
|
799
|
+
}, [channelId, connectionChangedHandler, connectionRecoveredHandler, handleEvent]);
|
|
810
800
|
|
|
811
801
|
const channelQueryCall = async (queryCall: () => void = () => null) => {
|
|
812
802
|
setError(false);
|
|
813
|
-
|
|
803
|
+
// Skips setting loading state when there are messages in the channel
|
|
804
|
+
setLoading(!channel?.state.messages.length);
|
|
814
805
|
|
|
815
806
|
try {
|
|
816
807
|
await queryCall();
|
|
@@ -818,7 +809,11 @@ const ChannelWithContext = <
|
|
|
818
809
|
setHasMore(true);
|
|
819
810
|
copyChannelState();
|
|
820
811
|
} catch (err) {
|
|
821
|
-
|
|
812
|
+
if (err instanceof Error) {
|
|
813
|
+
setError(err);
|
|
814
|
+
} else {
|
|
815
|
+
setError(true);
|
|
816
|
+
}
|
|
822
817
|
setLoading(false);
|
|
823
818
|
setLastRead(new Date());
|
|
824
819
|
}
|
|
@@ -954,22 +949,33 @@ const ChannelWithContext = <
|
|
|
954
949
|
const limit = 50;
|
|
955
950
|
channel.state.threads[parentID] = [];
|
|
956
951
|
const queryResponse = await channel.getReplies(parentID, {
|
|
957
|
-
limit
|
|
952
|
+
limit,
|
|
958
953
|
});
|
|
959
954
|
|
|
960
955
|
const updatedHasMore = queryResponse.messages.length === limit;
|
|
961
956
|
const updatedThreadMessages = channel.state.threads[parentID] || [];
|
|
962
957
|
loadMoreThreadFinished(updatedHasMore, updatedThreadMessages);
|
|
958
|
+
const { messages } = await channel.getMessagesById([parentID]);
|
|
959
|
+
const [threadMessage] = messages;
|
|
960
|
+
if (threadMessage) {
|
|
961
|
+
const formattedMessage = channel.state.formatMessage(threadMessage);
|
|
962
|
+
setThread(formattedMessage);
|
|
963
|
+
}
|
|
963
964
|
} catch (err) {
|
|
964
965
|
console.warn('Thread loading request failed with error', err);
|
|
965
|
-
|
|
966
|
+
if (err instanceof Error) {
|
|
967
|
+
setError(err);
|
|
968
|
+
} else {
|
|
969
|
+
setError(true);
|
|
970
|
+
}
|
|
966
971
|
setThreadLoadingMore(false);
|
|
967
972
|
throw err;
|
|
968
973
|
}
|
|
969
974
|
};
|
|
970
975
|
|
|
971
976
|
const resyncChannel = async () => {
|
|
972
|
-
if (!channel) return;
|
|
977
|
+
if (!channel || syncingChannel) return;
|
|
978
|
+
setSyncingChannel(true);
|
|
973
979
|
|
|
974
980
|
setError(false);
|
|
975
981
|
try {
|
|
@@ -1064,9 +1070,15 @@ const ChannelWithContext = <
|
|
|
1064
1070
|
setThreadMessages([...channel.state.threads[thread.id]]);
|
|
1065
1071
|
}
|
|
1066
1072
|
} catch (err) {
|
|
1067
|
-
|
|
1073
|
+
if (err instanceof Error) {
|
|
1074
|
+
setError(err);
|
|
1075
|
+
} else {
|
|
1076
|
+
setError(true);
|
|
1077
|
+
}
|
|
1068
1078
|
setLoading(false);
|
|
1069
1079
|
}
|
|
1080
|
+
|
|
1081
|
+
setSyncingChannel(false);
|
|
1070
1082
|
};
|
|
1071
1083
|
|
|
1072
1084
|
const reloadChannel = () =>
|
|
@@ -1185,24 +1197,6 @@ const ChannelWithContext = <
|
|
|
1185
1197
|
*/
|
|
1186
1198
|
const clientChannelConfig = getChannelConfigSafely();
|
|
1187
1199
|
|
|
1188
|
-
const messagesConfig: MessagesConfig = {
|
|
1189
|
-
/**
|
|
1190
|
-
* Replace with backend flag once its ready
|
|
1191
|
-
*/
|
|
1192
|
-
mutesEnabled: mutesEnabledProp ?? clientChannelConfig?.mutes ?? true,
|
|
1193
|
-
quotedRepliesEnabled: quotedRepliesEnabledProp ?? true,
|
|
1194
|
-
reactionsEnabled: reactionsEnabledProp ?? clientChannelConfig?.reactions ?? true,
|
|
1195
|
-
threadRepliesEnabled: threadRepliesEnabledProp ?? clientChannelConfig?.replies ?? true,
|
|
1196
|
-
};
|
|
1197
|
-
const channelConfig: ChannelConfig = {
|
|
1198
|
-
readEventsEnabled: readEventsEnabledProp ?? clientChannelConfig?.read_events ?? true,
|
|
1199
|
-
typingEventsEnabled: typingEventsEnabledProp ?? clientChannelConfig?.typing_events ?? true,
|
|
1200
|
-
};
|
|
1201
|
-
const inputConfig: InputConfig = {
|
|
1202
|
-
maxMessageLength: maxMessageLengthProp ?? clientChannelConfig?.max_message_length ?? undefined,
|
|
1203
|
-
uploadsEnabled: uploadsEnabledProp ?? clientChannelConfig?.uploads ?? true,
|
|
1204
|
-
};
|
|
1205
|
-
|
|
1206
1200
|
/**
|
|
1207
1201
|
* MESSAGE METHODS
|
|
1208
1202
|
*/
|
|
@@ -1334,7 +1328,6 @@ const ChannelWithContext = <
|
|
|
1334
1328
|
} else if (channel) {
|
|
1335
1329
|
messageResponse = await channel.sendMessage(messageData);
|
|
1336
1330
|
}
|
|
1337
|
-
|
|
1338
1331
|
if (messageResponse.message) {
|
|
1339
1332
|
messageResponse.message.status = 'received';
|
|
1340
1333
|
if (retrying) {
|
|
@@ -1432,7 +1425,11 @@ const ChannelWithContext = <
|
|
|
1432
1425
|
}
|
|
1433
1426
|
} catch (err) {
|
|
1434
1427
|
console.warn('Message pagination request failed with error', err);
|
|
1435
|
-
|
|
1428
|
+
if (err instanceof Error) {
|
|
1429
|
+
setError(err);
|
|
1430
|
+
} else {
|
|
1431
|
+
setError(true);
|
|
1432
|
+
}
|
|
1436
1433
|
setLoadingMore(false);
|
|
1437
1434
|
throw err;
|
|
1438
1435
|
}
|
|
@@ -1467,7 +1464,11 @@ const ChannelWithContext = <
|
|
|
1467
1464
|
}
|
|
1468
1465
|
} catch (err) {
|
|
1469
1466
|
console.warn('Message pagination request failed with error', err);
|
|
1470
|
-
|
|
1467
|
+
if (err instanceof Error) {
|
|
1468
|
+
setError(err);
|
|
1469
|
+
} else {
|
|
1470
|
+
setError(true);
|
|
1471
|
+
}
|
|
1471
1472
|
setLoadingMoreRecent(false);
|
|
1472
1473
|
throw err;
|
|
1473
1474
|
}
|
|
@@ -1606,14 +1607,22 @@ const ChannelWithContext = <
|
|
|
1606
1607
|
}
|
|
1607
1608
|
} catch (err) {
|
|
1608
1609
|
console.warn('Message pagination request failed with error', err);
|
|
1609
|
-
|
|
1610
|
+
if (err instanceof Error) {
|
|
1611
|
+
setError(err);
|
|
1612
|
+
} else {
|
|
1613
|
+
setError(true);
|
|
1614
|
+
}
|
|
1610
1615
|
setThreadLoadingMore(false);
|
|
1611
1616
|
throw err;
|
|
1612
1617
|
}
|
|
1613
1618
|
};
|
|
1614
1619
|
|
|
1620
|
+
const ownCapabilitiesContext = useCreateOwnCapabilitiesContext({
|
|
1621
|
+
channel,
|
|
1622
|
+
overrideCapabilities: overrideOwnCapabilities,
|
|
1623
|
+
});
|
|
1624
|
+
|
|
1615
1625
|
const channelContext = useCreateChannelContext({
|
|
1616
|
-
...channelConfig,
|
|
1617
1626
|
channel,
|
|
1618
1627
|
disabled: !!channel?.data?.frozen && disableIfFrozenChannel,
|
|
1619
1628
|
EmptyStateIndicator,
|
|
@@ -1626,6 +1635,7 @@ const ChannelWithContext = <
|
|
|
1626
1635
|
hideDateSeparators,
|
|
1627
1636
|
hideStickyDateHeader,
|
|
1628
1637
|
isAdmin,
|
|
1638
|
+
isChannelActive: shouldSyncChannel,
|
|
1629
1639
|
isModerator,
|
|
1630
1640
|
isOwner,
|
|
1631
1641
|
lastRead,
|
|
@@ -1643,12 +1653,12 @@ const ChannelWithContext = <
|
|
|
1643
1653
|
setTargetedMessage,
|
|
1644
1654
|
StickyHeader,
|
|
1645
1655
|
targetedMessage,
|
|
1656
|
+
threadList,
|
|
1646
1657
|
watcherCount,
|
|
1647
1658
|
watchers,
|
|
1648
1659
|
});
|
|
1649
1660
|
|
|
1650
|
-
const
|
|
1651
|
-
...inputConfig,
|
|
1661
|
+
const inputMessageInputContext = useCreateInputMessageInputContext({
|
|
1652
1662
|
additionalTextInputProps,
|
|
1653
1663
|
AttachButton,
|
|
1654
1664
|
autoCompleteSuggestionsLimit,
|
|
@@ -1658,6 +1668,7 @@ const ChannelWithContext = <
|
|
|
1658
1668
|
clearQuotedMessageState,
|
|
1659
1669
|
CommandsButton,
|
|
1660
1670
|
compressImageQuality,
|
|
1671
|
+
CooldownTimer,
|
|
1661
1672
|
doDocUploadRequest,
|
|
1662
1673
|
doImageUploadRequest,
|
|
1663
1674
|
editing,
|
|
@@ -1670,6 +1681,7 @@ const ChannelWithContext = <
|
|
|
1670
1681
|
initialValue,
|
|
1671
1682
|
Input,
|
|
1672
1683
|
InputButtons,
|
|
1684
|
+
maxMessageLength: maxMessageLengthProp ?? clientChannelConfig?.max_message_length ?? undefined,
|
|
1673
1685
|
maxNumberOfFiles,
|
|
1674
1686
|
mentionAllAppUsersEnabled,
|
|
1675
1687
|
mentionAllAppUsersQuery,
|
|
@@ -1680,6 +1692,7 @@ const ChannelWithContext = <
|
|
|
1680
1692
|
SendButton,
|
|
1681
1693
|
sendImageAsync,
|
|
1682
1694
|
sendMessage,
|
|
1695
|
+
SendMessageDisallowedIndicator,
|
|
1683
1696
|
setInputRef,
|
|
1684
1697
|
setQuotedMessageState,
|
|
1685
1698
|
ShowThreadMessageInChannelButton,
|
|
@@ -1694,34 +1707,28 @@ const ChannelWithContext = <
|
|
|
1694
1707
|
loadingMoreRecentProp !== undefined ? loadingMoreRecentProp : loadingMoreRecent,
|
|
1695
1708
|
loadMore,
|
|
1696
1709
|
loadMoreRecent,
|
|
1697
|
-
messages
|
|
1710
|
+
messages,
|
|
1698
1711
|
setLoadingMore,
|
|
1699
1712
|
setLoadingMoreRecent,
|
|
1700
1713
|
});
|
|
1701
1714
|
|
|
1702
1715
|
const messagesContext = useCreateMessagesContext({
|
|
1703
|
-
...messagesConfig,
|
|
1704
1716
|
additionalTouchableProps,
|
|
1705
|
-
animatedLongPress,
|
|
1706
1717
|
Attachment,
|
|
1707
1718
|
AttachmentActions,
|
|
1708
|
-
blockUser,
|
|
1709
1719
|
Card,
|
|
1710
1720
|
CardCover,
|
|
1711
1721
|
CardFooter,
|
|
1712
1722
|
CardHeader,
|
|
1713
1723
|
channelId,
|
|
1714
|
-
copyMessage,
|
|
1715
1724
|
DateHeader,
|
|
1716
|
-
|
|
1725
|
+
deletedMessagesVisibilityType,
|
|
1717
1726
|
disableTypingIndicator,
|
|
1718
1727
|
dismissKeyboardOnMessageTouch,
|
|
1719
|
-
editMessage: editMessageProp,
|
|
1720
1728
|
enableMessageGroupingByUser,
|
|
1721
1729
|
FileAttachment,
|
|
1722
1730
|
FileAttachmentGroup,
|
|
1723
1731
|
FileAttachmentIcon,
|
|
1724
|
-
flagMessage,
|
|
1725
1732
|
FlatList,
|
|
1726
1733
|
forceAlignMessages,
|
|
1727
1734
|
formatDate,
|
|
@@ -1733,6 +1740,7 @@ const ChannelWithContext = <
|
|
|
1733
1740
|
handleEdit,
|
|
1734
1741
|
handleFlag,
|
|
1735
1742
|
handleMute,
|
|
1743
|
+
handlePinMessage,
|
|
1736
1744
|
handleQuotedReply,
|
|
1737
1745
|
handleReaction,
|
|
1738
1746
|
handleRetry,
|
|
@@ -1751,41 +1759,38 @@ const ChannelWithContext = <
|
|
|
1751
1759
|
MessageFooter,
|
|
1752
1760
|
MessageHeader,
|
|
1753
1761
|
MessageList,
|
|
1762
|
+
MessagePinnedHeader,
|
|
1754
1763
|
MessageReplies,
|
|
1755
1764
|
MessageRepliesAvatars,
|
|
1756
1765
|
MessageSimple,
|
|
1757
1766
|
MessageStatus,
|
|
1758
1767
|
MessageSystem,
|
|
1759
1768
|
MessageText,
|
|
1760
|
-
muteUser,
|
|
1761
1769
|
myMessageTheme,
|
|
1762
|
-
onDoubleTapMessage,
|
|
1763
1770
|
onLongPressMessage,
|
|
1764
1771
|
onPressInMessage,
|
|
1765
1772
|
onPressMessage,
|
|
1766
1773
|
OverlayReactionList,
|
|
1767
|
-
quotedReply,
|
|
1768
1774
|
ReactionList,
|
|
1769
1775
|
removeMessage,
|
|
1770
1776
|
Reply,
|
|
1771
|
-
retry,
|
|
1772
1777
|
retrySendMessage,
|
|
1773
1778
|
ScrollToBottomButton,
|
|
1774
1779
|
selectReaction,
|
|
1775
1780
|
setEditingState,
|
|
1776
1781
|
setQuotedMessageState,
|
|
1777
1782
|
supportedReactions,
|
|
1778
|
-
|
|
1783
|
+
targetedMessage,
|
|
1779
1784
|
TypingIndicator,
|
|
1780
1785
|
TypingIndicatorContainer,
|
|
1781
1786
|
updateMessage,
|
|
1782
1787
|
UrlPreview,
|
|
1783
1788
|
});
|
|
1784
1789
|
|
|
1785
|
-
const suggestionsContext
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1790
|
+
const suggestionsContext = {
|
|
1791
|
+
AutoCompleteSuggestionHeader,
|
|
1792
|
+
AutoCompleteSuggestionItem,
|
|
1793
|
+
AutoCompleteSuggestionList,
|
|
1789
1794
|
};
|
|
1790
1795
|
|
|
1791
1796
|
const threadContext = useCreateThreadContext({
|
|
@@ -1828,19 +1833,23 @@ const ChannelWithContext = <
|
|
|
1828
1833
|
{...additionalKeyboardAvoidingViewProps}
|
|
1829
1834
|
>
|
|
1830
1835
|
<ChannelProvider<At, Ch, Co, Ev, Me, Re, Us> value={channelContext}>
|
|
1831
|
-
<
|
|
1832
|
-
<
|
|
1833
|
-
<
|
|
1834
|
-
<
|
|
1835
|
-
<
|
|
1836
|
-
<
|
|
1837
|
-
<
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1836
|
+
<OwnCapabilitiesProvider value={ownCapabilitiesContext}>
|
|
1837
|
+
<TypingProvider<At, Ch, Co, Ev, Me, Re, Us> value={typingContext}>
|
|
1838
|
+
<PaginatedMessageListProvider<At, Ch, Co, Ev, Me, Re, Us> value={messageListContext}>
|
|
1839
|
+
<MessagesProvider<At, Ch, Co, Ev, Me, Re, Us> value={messagesContext}>
|
|
1840
|
+
<ThreadProvider<At, Ch, Co, Ev, Me, Re, Us> value={threadContext}>
|
|
1841
|
+
<SuggestionsProvider<Co, Us> value={suggestionsContext}>
|
|
1842
|
+
<MessageInputProvider<At, Ch, Co, Ev, Me, Re, Us>
|
|
1843
|
+
value={inputMessageInputContext}
|
|
1844
|
+
>
|
|
1845
|
+
<View style={{ height: '100%' }}>{children}</View>
|
|
1846
|
+
</MessageInputProvider>
|
|
1847
|
+
</SuggestionsProvider>
|
|
1848
|
+
</ThreadProvider>
|
|
1849
|
+
</MessagesProvider>
|
|
1850
|
+
</PaginatedMessageListProvider>
|
|
1851
|
+
</TypingProvider>
|
|
1852
|
+
</OwnCapabilitiesProvider>
|
|
1844
1853
|
</ChannelProvider>
|
|
1845
1854
|
</KeyboardCompatibleView>
|
|
1846
1855
|
);
|
|
@@ -1854,7 +1863,8 @@ export type ChannelProps<
|
|
|
1854
1863
|
Me extends UnknownType = DefaultMessageType,
|
|
1855
1864
|
Re extends UnknownType = DefaultReactionType,
|
|
1856
1865
|
Us extends UnknownType = DefaultUserType,
|
|
1857
|
-
> = Partial<ChannelPropsWithContext<At, Ch, Co, Ev, Me, Re, Us
|
|
1866
|
+
> = Partial<Omit<ChannelPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'channel'>> &
|
|
1867
|
+
Pick<ChannelPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'channel'>;
|
|
1858
1868
|
|
|
1859
1869
|
/**
|
|
1860
1870
|
*
|
|
@@ -1878,6 +1888,28 @@ export const Channel = <
|
|
|
1878
1888
|
const { client } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
1879
1889
|
const { t } = useTranslationContext();
|
|
1880
1890
|
|
|
1891
|
+
const shouldSyncChannel = props.thread?.id ? !!props.threadList : true;
|
|
1892
|
+
|
|
1893
|
+
const {
|
|
1894
|
+
members,
|
|
1895
|
+
messages,
|
|
1896
|
+
read,
|
|
1897
|
+
setMembers,
|
|
1898
|
+
setMessages,
|
|
1899
|
+
setRead,
|
|
1900
|
+
setThreadMessages,
|
|
1901
|
+
setTyping,
|
|
1902
|
+
setWatcherCount,
|
|
1903
|
+
setWatchers,
|
|
1904
|
+
threadMessages,
|
|
1905
|
+
typing,
|
|
1906
|
+
watcherCount,
|
|
1907
|
+
watchers,
|
|
1908
|
+
} = useChannelState<At, Ch, Co, Ev, Me, Re, Us>(
|
|
1909
|
+
props.channel,
|
|
1910
|
+
props.threadList ? props.thread?.id : undefined,
|
|
1911
|
+
);
|
|
1912
|
+
|
|
1881
1913
|
return (
|
|
1882
1914
|
<ChannelWithContext<At, Ch, Co, Ev, Me, Re, Us>
|
|
1883
1915
|
{...{
|
|
@@ -1885,6 +1917,23 @@ export const Channel = <
|
|
|
1885
1917
|
t,
|
|
1886
1918
|
}}
|
|
1887
1919
|
{...props}
|
|
1920
|
+
shouldSyncChannel={shouldSyncChannel}
|
|
1921
|
+
{...{
|
|
1922
|
+
members,
|
|
1923
|
+
messages: props.messages || messages,
|
|
1924
|
+
read,
|
|
1925
|
+
setMembers,
|
|
1926
|
+
setMessages,
|
|
1927
|
+
setRead,
|
|
1928
|
+
setThreadMessages,
|
|
1929
|
+
setTyping,
|
|
1930
|
+
setWatcherCount,
|
|
1931
|
+
setWatchers,
|
|
1932
|
+
threadMessages,
|
|
1933
|
+
typing,
|
|
1934
|
+
watcherCount,
|
|
1935
|
+
watchers,
|
|
1936
|
+
}}
|
|
1888
1937
|
/>
|
|
1889
1938
|
);
|
|
1890
1939
|
};
|