stream-chat-react-native-core 3.10.2 → 4.0.0-beta.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/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 -857
- 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 +30 -11
- 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 -857
- 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 +30 -11
- 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 +11 -0
- 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
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StyleSheet, Text, View } from 'react-native';
|
|
3
|
+
import { useTheme } from '../../contexts/themeContext/ThemeContext';
|
|
4
|
+
|
|
5
|
+
export type CooldownTimerProps = {
|
|
6
|
+
seconds: number;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
const CONTAINER_SIZE = 24;
|
|
10
|
+
const CONTAINER_HORIZONTAL_PADDING = 6;
|
|
11
|
+
const EXTRA_CHARACTER_PADDING = CONTAINER_SIZE - CONTAINER_HORIZONTAL_PADDING * 2;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* To avoid the container jumping between sizes when there are more
|
|
15
|
+
* than one character in the width of the container since we aren't
|
|
16
|
+
* using a monospaced font.
|
|
17
|
+
*/
|
|
18
|
+
const normalizeWidth = (seconds: number) =>
|
|
19
|
+
CONTAINER_SIZE + EXTRA_CHARACTER_PADDING * (`${seconds}`.length - 1);
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Renders an amount of seconds left for a cooldown to finish.
|
|
23
|
+
*
|
|
24
|
+
* See `useCountdown` for an example of how to set a countdown
|
|
25
|
+
* to use as the source of `seconds`.
|
|
26
|
+
**/
|
|
27
|
+
export const CooldownTimer = (props: CooldownTimerProps) => {
|
|
28
|
+
const { seconds } = props;
|
|
29
|
+
const {
|
|
30
|
+
theme: {
|
|
31
|
+
colors: { black, grey_gainsboro },
|
|
32
|
+
messageInput: {
|
|
33
|
+
cooldownTimer: { container, text },
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
} = useTheme();
|
|
37
|
+
|
|
38
|
+
return (
|
|
39
|
+
<View
|
|
40
|
+
style={[
|
|
41
|
+
styles.container,
|
|
42
|
+
{
|
|
43
|
+
backgroundColor: grey_gainsboro,
|
|
44
|
+
width: normalizeWidth(seconds),
|
|
45
|
+
},
|
|
46
|
+
container,
|
|
47
|
+
]}
|
|
48
|
+
>
|
|
49
|
+
<Text style={[styles.text, { color: black }, text]} testID='cooldown-seconds'>
|
|
50
|
+
{seconds}
|
|
51
|
+
</Text>
|
|
52
|
+
</View>
|
|
53
|
+
);
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const styles = StyleSheet.create({
|
|
57
|
+
container: {
|
|
58
|
+
alignItems: 'center',
|
|
59
|
+
borderRadius: CONTAINER_SIZE / 2,
|
|
60
|
+
height: CONTAINER_SIZE,
|
|
61
|
+
justifyContent: 'center',
|
|
62
|
+
minWidth: CONTAINER_SIZE,
|
|
63
|
+
paddingHorizontal: CONTAINER_HORIZONTAL_PADDING,
|
|
64
|
+
},
|
|
65
|
+
text: { fontSize: 16, fontWeight: '600' },
|
|
66
|
+
});
|
|
@@ -102,7 +102,7 @@ const FileUploadPreviewWithContext = <
|
|
|
102
102
|
|
|
103
103
|
const {
|
|
104
104
|
theme: {
|
|
105
|
-
colors: { black, grey, grey_whisper,
|
|
105
|
+
colors: { black, grey, grey_whisper, overlay },
|
|
106
106
|
messageInput: {
|
|
107
107
|
fileUploadPreview: {
|
|
108
108
|
dismiss,
|
|
@@ -182,7 +182,7 @@ const FileUploadPreviewWithContext = <
|
|
|
182
182
|
onPress={() => {
|
|
183
183
|
removeFile(item.id);
|
|
184
184
|
}}
|
|
185
|
-
style={[styles.dismiss, { backgroundColor:
|
|
185
|
+
style={[styles.dismiss, { backgroundColor: overlay }, dismiss]}
|
|
186
186
|
testID='remove-file-upload-preview'
|
|
187
187
|
>
|
|
188
188
|
<Close />
|
|
@@ -83,7 +83,7 @@ const ImageUploadPreviewWithContext = <
|
|
|
83
83
|
|
|
84
84
|
const {
|
|
85
85
|
theme: {
|
|
86
|
-
colors: {
|
|
86
|
+
colors: { overlay, white },
|
|
87
87
|
messageInput: {
|
|
88
88
|
imageUploadPreview: { dismiss, flatList, itemContainer, upload },
|
|
89
89
|
},
|
|
@@ -122,7 +122,7 @@ const ImageUploadPreviewWithContext = <
|
|
|
122
122
|
onPress={() => {
|
|
123
123
|
removeImage(item.id);
|
|
124
124
|
}}
|
|
125
|
-
style={[styles.dismiss, { backgroundColor:
|
|
125
|
+
style={[styles.dismiss, { backgroundColor: overlay }, dismiss]}
|
|
126
126
|
testID='remove-image-upload-preview'
|
|
127
127
|
>
|
|
128
128
|
<Close pathFill={white} />
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { StyleSheet, View } from 'react-native';
|
|
3
3
|
|
|
4
|
+
import { useOwnCapabilitiesContext } from '../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';
|
|
4
5
|
import {
|
|
5
6
|
MessageInputContextValue,
|
|
6
7
|
useMessageInputContext,
|
|
@@ -55,7 +56,6 @@ export type InputButtonsWithContextProps<
|
|
|
55
56
|
| 'showMoreOptions'
|
|
56
57
|
| 'text'
|
|
57
58
|
| 'toggleAttachmentPicker'
|
|
58
|
-
| 'uploadsEnabled'
|
|
59
59
|
>;
|
|
60
60
|
|
|
61
61
|
export const InputButtonsWithContext = <
|
|
@@ -82,7 +82,6 @@ export const InputButtonsWithContext = <
|
|
|
82
82
|
showMoreOptions,
|
|
83
83
|
text,
|
|
84
84
|
toggleAttachmentPicker,
|
|
85
|
-
uploadsEnabled,
|
|
86
85
|
} = props;
|
|
87
86
|
|
|
88
87
|
const {
|
|
@@ -91,6 +90,8 @@ export const InputButtonsWithContext = <
|
|
|
91
90
|
},
|
|
92
91
|
} = useTheme();
|
|
93
92
|
|
|
93
|
+
const ownCapabilities = useOwnCapabilitiesContext();
|
|
94
|
+
|
|
94
95
|
if (giphyActive) {
|
|
95
96
|
return null;
|
|
96
97
|
}
|
|
@@ -99,7 +100,7 @@ export const InputButtonsWithContext = <
|
|
|
99
100
|
<MoreOptionsButton handleOnPress={() => setShowMoreOptions(true)} />
|
|
100
101
|
) : (
|
|
101
102
|
<>
|
|
102
|
-
{(hasImagePicker || hasFilePicker) &&
|
|
103
|
+
{(hasImagePicker || hasFilePicker) && ownCapabilities.uploadFile && (
|
|
103
104
|
<View
|
|
104
105
|
style={[hasCommands ? styles.attachButtonContainer : undefined, attachButtonContainer]}
|
|
105
106
|
>
|
|
@@ -134,7 +135,6 @@ const areEqual = <
|
|
|
134
135
|
selectedPicker: prevSelectedPicker,
|
|
135
136
|
showMoreOptions: prevShowMoreOptions,
|
|
136
137
|
text: prevText,
|
|
137
|
-
uploadsEnabled: prevUploadsEnabled,
|
|
138
138
|
} = prevProps;
|
|
139
139
|
|
|
140
140
|
const {
|
|
@@ -145,7 +145,6 @@ const areEqual = <
|
|
|
145
145
|
selectedPicker: nextSelectedPicker,
|
|
146
146
|
showMoreOptions: nextShowMoreOptions,
|
|
147
147
|
text: nextText,
|
|
148
|
-
uploadsEnabled: nextUploadsEnabled,
|
|
149
148
|
} = nextProps;
|
|
150
149
|
|
|
151
150
|
if (prevHasImagePicker !== nextHasImagePicker) {
|
|
@@ -160,9 +159,6 @@ const areEqual = <
|
|
|
160
159
|
return false;
|
|
161
160
|
}
|
|
162
161
|
|
|
163
|
-
if (prevUploadsEnabled !== nextUploadsEnabled) {
|
|
164
|
-
return false;
|
|
165
|
-
}
|
|
166
162
|
if (prevSelectedPicker !== nextSelectedPicker) {
|
|
167
163
|
return false;
|
|
168
164
|
}
|
|
@@ -212,7 +208,6 @@ export const InputButtons = <
|
|
|
212
208
|
showMoreOptions,
|
|
213
209
|
text,
|
|
214
210
|
toggleAttachmentPicker,
|
|
215
|
-
uploadsEnabled,
|
|
216
211
|
} = useMessageInputContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
217
212
|
|
|
218
213
|
return (
|
|
@@ -231,7 +226,6 @@ export const InputButtons = <
|
|
|
231
226
|
showMoreOptions,
|
|
232
227
|
text,
|
|
233
228
|
toggleAttachmentPicker,
|
|
234
|
-
uploadsEnabled,
|
|
235
229
|
}}
|
|
236
230
|
{...props}
|
|
237
231
|
/>
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import React, { useEffect, useState } from 'react';
|
|
2
2
|
import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
|
|
3
3
|
|
|
4
|
+
import { useCountdown } from './hooks/useCountdown';
|
|
5
|
+
|
|
4
6
|
import { AttachmentSelectionBar } from '../AttachmentPicker/components/AttachmentSelectionBar';
|
|
5
7
|
import { AutoCompleteInput } from '../AutoCompleteInput/AutoCompleteInput';
|
|
6
|
-
import { SuggestionsList } from '../AutoCompleteInput/SuggestionsList';
|
|
7
8
|
|
|
8
9
|
import { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';
|
|
10
|
+
import { useOwnCapabilitiesContext } from '../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';
|
|
9
11
|
import {
|
|
10
12
|
ChannelContextValue,
|
|
11
13
|
useChannelContext,
|
|
@@ -120,6 +122,8 @@ type MessageInputPropsWithContext<
|
|
|
120
122
|
| 'additionalTextInputProps'
|
|
121
123
|
| 'asyncIds'
|
|
122
124
|
| 'asyncUploads'
|
|
125
|
+
| 'cooldownEndsAt'
|
|
126
|
+
| 'CooldownTimer'
|
|
123
127
|
| 'clearEditingState'
|
|
124
128
|
| 'clearQuotedMessageState'
|
|
125
129
|
| 'closeAttachmentPicker'
|
|
@@ -148,8 +152,15 @@ type MessageInputPropsWithContext<
|
|
|
148
152
|
| 'removeImage'
|
|
149
153
|
| 'uploadNewImage'
|
|
150
154
|
> &
|
|
151
|
-
Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'Reply'
|
|
152
|
-
Pick<
|
|
155
|
+
Pick<MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'Reply'> &
|
|
156
|
+
Pick<
|
|
157
|
+
SuggestionsContextValue<Co, Us>,
|
|
158
|
+
| 'AutoCompleteSuggestionHeader'
|
|
159
|
+
| 'AutoCompleteSuggestionItem'
|
|
160
|
+
| 'AutoCompleteSuggestionList'
|
|
161
|
+
| 'suggestions'
|
|
162
|
+
| 'triggerType'
|
|
163
|
+
> &
|
|
153
164
|
Pick<ThreadContextValue, 'thread'> &
|
|
154
165
|
Pick<TranslationContextValue, 't'> & {
|
|
155
166
|
threadList?: boolean;
|
|
@@ -170,10 +181,12 @@ const MessageInputWithContext = <
|
|
|
170
181
|
additionalTextInputProps,
|
|
171
182
|
asyncIds,
|
|
172
183
|
asyncUploads,
|
|
184
|
+
AutoCompleteSuggestionList,
|
|
173
185
|
clearEditingState,
|
|
174
186
|
clearQuotedMessageState,
|
|
175
187
|
closeAttachmentPicker,
|
|
176
|
-
|
|
188
|
+
cooldownEndsAt,
|
|
189
|
+
CooldownTimer,
|
|
177
190
|
disabled,
|
|
178
191
|
editing,
|
|
179
192
|
FileUploadPreview,
|
|
@@ -190,7 +203,6 @@ const MessageInputWithContext = <
|
|
|
190
203
|
mentionedUsers,
|
|
191
204
|
numberOfUploads,
|
|
192
205
|
quotedMessage,
|
|
193
|
-
quotedRepliesEnabled,
|
|
194
206
|
removeImage,
|
|
195
207
|
Reply,
|
|
196
208
|
resetInput,
|
|
@@ -201,10 +213,10 @@ const MessageInputWithContext = <
|
|
|
201
213
|
setShowMoreOptions,
|
|
202
214
|
ShowThreadMessageInChannelButton,
|
|
203
215
|
suggestions,
|
|
204
|
-
suggestionsTitle,
|
|
205
216
|
t,
|
|
206
217
|
thread,
|
|
207
218
|
threadList,
|
|
219
|
+
triggerType,
|
|
208
220
|
uploadNewImage,
|
|
209
221
|
watchers,
|
|
210
222
|
} = props;
|
|
@@ -236,7 +248,7 @@ const MessageInputWithContext = <
|
|
|
236
248
|
optionsContainer,
|
|
237
249
|
replyContainer,
|
|
238
250
|
sendButtonContainer,
|
|
239
|
-
suggestionsListContainer,
|
|
251
|
+
suggestionsListContainer: { container: suggestionListContainer },
|
|
240
252
|
},
|
|
241
253
|
},
|
|
242
254
|
} = useTheme();
|
|
@@ -251,6 +263,8 @@ const MessageInputWithContext = <
|
|
|
251
263
|
setSelectedImages,
|
|
252
264
|
} = useAttachmentPickerContext();
|
|
253
265
|
|
|
266
|
+
const { seconds: cooldownRemainingSeconds } = useCountdown(cooldownEndsAt);
|
|
267
|
+
|
|
254
268
|
/**
|
|
255
269
|
* Mounting and un-mounting logic are un-related in following useEffect.
|
|
256
270
|
* While mounting we want to pass maxNumberOfFiles (which is prop on Channel component)
|
|
@@ -462,9 +476,6 @@ const MessageInputWithContext = <
|
|
|
462
476
|
if (quotedMessage) {
|
|
463
477
|
clearQuotedMessageState();
|
|
464
478
|
}
|
|
465
|
-
if (inputBoxRef.current) {
|
|
466
|
-
inputBoxRef.current.blur();
|
|
467
|
-
}
|
|
468
479
|
}}
|
|
469
480
|
testID='close-button'
|
|
470
481
|
>
|
|
@@ -493,10 +504,7 @@ const MessageInputWithContext = <
|
|
|
493
504
|
inputBoxContainer,
|
|
494
505
|
]}
|
|
495
506
|
>
|
|
496
|
-
{((typeof editing !== 'boolean' &&
|
|
497
|
-
quotedRepliesEnabled &&
|
|
498
|
-
editing?.quoted_message) ||
|
|
499
|
-
quotedMessage) && (
|
|
507
|
+
{((typeof editing !== 'boolean' && editing?.quoted_message) || quotedMessage) && (
|
|
500
508
|
<View style={[styles.replyContainer, replyContainer]}>
|
|
501
509
|
<Reply />
|
|
502
510
|
</View>
|
|
@@ -538,6 +546,7 @@ const MessageInputWithContext = <
|
|
|
538
546
|
)}
|
|
539
547
|
<AutoCompleteInput<At, Ch, Co, Ev, Me, Re, Us>
|
|
540
548
|
additionalTextInputProps={additionalTextInputProps}
|
|
549
|
+
cooldownActive={!!cooldownRemainingSeconds}
|
|
541
550
|
/>
|
|
542
551
|
{giphyActive && (
|
|
543
552
|
<TouchableOpacity
|
|
@@ -554,26 +563,32 @@ const MessageInputWithContext = <
|
|
|
554
563
|
</View>
|
|
555
564
|
</View>
|
|
556
565
|
<View style={[styles.sendButtonContainer, sendButtonContainer]}>
|
|
557
|
-
|
|
566
|
+
{cooldownRemainingSeconds ? (
|
|
567
|
+
<CooldownTimer seconds={cooldownRemainingSeconds} />
|
|
568
|
+
) : (
|
|
569
|
+
<SendButton disabled={disabled || sending.current || !isValidMessage()} />
|
|
570
|
+
)}
|
|
558
571
|
</View>
|
|
559
572
|
</>
|
|
560
573
|
)}
|
|
561
574
|
</View>
|
|
562
575
|
<ShowThreadMessageInChannelButton threadList={threadList} />
|
|
563
576
|
</View>
|
|
564
|
-
|
|
577
|
+
|
|
578
|
+
{triggerType && suggestions ? (
|
|
565
579
|
<View
|
|
566
580
|
style={[
|
|
581
|
+
suggestionListContainer,
|
|
567
582
|
styles.suggestionsListContainer,
|
|
568
583
|
{ backgroundColor: white, bottom: height },
|
|
569
|
-
suggestionsListContainer,
|
|
570
584
|
]}
|
|
571
585
|
>
|
|
572
|
-
<
|
|
586
|
+
<AutoCompleteSuggestionList
|
|
573
587
|
active={!!suggestions}
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
588
|
+
data={suggestions.data}
|
|
589
|
+
onSelect={suggestions.onSelect}
|
|
590
|
+
queryText={suggestions.queryText}
|
|
591
|
+
triggerType={triggerType}
|
|
577
592
|
/>
|
|
578
593
|
</View>
|
|
579
594
|
) : null}
|
|
@@ -623,7 +638,6 @@ const areEqual = <
|
|
|
623
638
|
sending: prevSending,
|
|
624
639
|
showMoreOptions: prevShowMoreOptions,
|
|
625
640
|
suggestions: prevSuggestions,
|
|
626
|
-
suggestionsTitle: prevSuggestionsTitle,
|
|
627
641
|
t: prevT,
|
|
628
642
|
thread: prevThread,
|
|
629
643
|
threadList: prevThreadList,
|
|
@@ -642,7 +656,6 @@ const areEqual = <
|
|
|
642
656
|
sending: nextSending,
|
|
643
657
|
showMoreOptions: nextShowMoreOptions,
|
|
644
658
|
suggestions: nextSuggestions,
|
|
645
|
-
suggestionsTitle: nextSuggestionsTitle,
|
|
646
659
|
t: nextT,
|
|
647
660
|
thread: nextThread,
|
|
648
661
|
threadList: nextThreadList,
|
|
@@ -705,9 +718,6 @@ const areEqual = <
|
|
|
705
718
|
: !!prevSuggestions === !!nextSuggestions;
|
|
706
719
|
if (!suggestionsEqual) return false;
|
|
707
720
|
|
|
708
|
-
const suggestionsTitleEqual = prevSuggestionsTitle === nextSuggestionsTitle;
|
|
709
|
-
if (!suggestionsTitleEqual) return false;
|
|
710
|
-
|
|
711
721
|
const threadEqual =
|
|
712
722
|
prevThread?.id === nextThread?.id &&
|
|
713
723
|
prevThread?.text === nextThread?.text &&
|
|
@@ -755,6 +765,8 @@ export const MessageInput = <
|
|
|
755
765
|
>(
|
|
756
766
|
props: MessageInputProps<At, Ch, Co, Ev, Me, Re, Us>,
|
|
757
767
|
) => {
|
|
768
|
+
const ownCapabilities = useOwnCapabilitiesContext();
|
|
769
|
+
|
|
758
770
|
const { disabled = false, members, watchers } = useChannelContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
759
771
|
|
|
760
772
|
const {
|
|
@@ -764,6 +776,8 @@ export const MessageInput = <
|
|
|
764
776
|
clearEditingState,
|
|
765
777
|
clearQuotedMessageState,
|
|
766
778
|
closeAttachmentPicker,
|
|
779
|
+
cooldownEndsAt,
|
|
780
|
+
CooldownTimer,
|
|
767
781
|
editing,
|
|
768
782
|
FileUploadPreview,
|
|
769
783
|
fileUploads,
|
|
@@ -783,6 +797,7 @@ export const MessageInput = <
|
|
|
783
797
|
SendButton,
|
|
784
798
|
sending,
|
|
785
799
|
sendMessageAsync,
|
|
800
|
+
SendMessageDisallowedIndicator,
|
|
786
801
|
setGiphyActive,
|
|
787
802
|
setShowMoreOptions,
|
|
788
803
|
showMoreOptions,
|
|
@@ -790,24 +805,38 @@ export const MessageInput = <
|
|
|
790
805
|
uploadNewImage,
|
|
791
806
|
} = useMessageInputContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
792
807
|
|
|
793
|
-
const {
|
|
808
|
+
const { Reply } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
794
809
|
|
|
795
|
-
const {
|
|
810
|
+
const {
|
|
811
|
+
AutoCompleteSuggestionHeader,
|
|
812
|
+
AutoCompleteSuggestionItem,
|
|
813
|
+
AutoCompleteSuggestionList,
|
|
814
|
+
suggestions,
|
|
815
|
+
triggerType,
|
|
816
|
+
} = useSuggestionsContext<Co, Us>();
|
|
796
817
|
|
|
797
818
|
const { thread } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();
|
|
798
819
|
|
|
799
820
|
const { t } = useTranslationContext();
|
|
800
821
|
|
|
822
|
+
if (!ownCapabilities.sendMessage && SendMessageDisallowedIndicator) {
|
|
823
|
+
return <SendMessageDisallowedIndicator />;
|
|
824
|
+
}
|
|
825
|
+
|
|
801
826
|
return (
|
|
802
827
|
<MemoizedMessageInput
|
|
803
828
|
{...{
|
|
804
829
|
additionalTextInputProps,
|
|
805
830
|
asyncIds,
|
|
806
831
|
asyncUploads,
|
|
832
|
+
AutoCompleteSuggestionHeader,
|
|
833
|
+
AutoCompleteSuggestionItem,
|
|
834
|
+
AutoCompleteSuggestionList,
|
|
807
835
|
clearEditingState,
|
|
808
836
|
clearQuotedMessageState,
|
|
809
837
|
closeAttachmentPicker,
|
|
810
|
-
|
|
838
|
+
cooldownEndsAt,
|
|
839
|
+
CooldownTimer,
|
|
811
840
|
disabled,
|
|
812
841
|
editing,
|
|
813
842
|
FileUploadPreview,
|
|
@@ -824,7 +853,6 @@ export const MessageInput = <
|
|
|
824
853
|
mentionedUsers,
|
|
825
854
|
numberOfUploads,
|
|
826
855
|
quotedMessage,
|
|
827
|
-
quotedRepliesEnabled,
|
|
828
856
|
removeImage,
|
|
829
857
|
Reply,
|
|
830
858
|
resetInput,
|
|
@@ -836,9 +864,9 @@ export const MessageInput = <
|
|
|
836
864
|
showMoreOptions,
|
|
837
865
|
ShowThreadMessageInChannelButton,
|
|
838
866
|
suggestions,
|
|
839
|
-
suggestionsTitle,
|
|
840
867
|
t,
|
|
841
868
|
thread,
|
|
869
|
+
triggerType,
|
|
842
870
|
uploadNewImage,
|
|
843
871
|
watchers,
|
|
844
872
|
}}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StyleSheet, Text, View } from 'react-native';
|
|
3
|
+
|
|
4
|
+
import { useTranslationContext } from '../../contexts/translationContext/TranslationContext';
|
|
5
|
+
import { useTheme } from '../../contexts/themeContext/ThemeContext';
|
|
6
|
+
|
|
7
|
+
const styles = StyleSheet.create({
|
|
8
|
+
container: {
|
|
9
|
+
alignItems: 'center',
|
|
10
|
+
borderTopWidth: 1,
|
|
11
|
+
height: 50,
|
|
12
|
+
justifyContent: 'center',
|
|
13
|
+
},
|
|
14
|
+
text: {
|
|
15
|
+
fontSize: 17,
|
|
16
|
+
fontWeight: '400',
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export const SendMessageDisallowedIndicator = () => {
|
|
21
|
+
const { t } = useTranslationContext();
|
|
22
|
+
const {
|
|
23
|
+
theme: {
|
|
24
|
+
colors: { border, grey_dark },
|
|
25
|
+
messageInput: {
|
|
26
|
+
sendMessageDisallowedIndicator: { container, text },
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
} = useTheme();
|
|
30
|
+
return (
|
|
31
|
+
<View
|
|
32
|
+
style={[
|
|
33
|
+
styles.container,
|
|
34
|
+
{
|
|
35
|
+
borderTopColor: border,
|
|
36
|
+
height: 50,
|
|
37
|
+
},
|
|
38
|
+
container,
|
|
39
|
+
]}
|
|
40
|
+
testID='send-message-disallowed-indicator'
|
|
41
|
+
>
|
|
42
|
+
<Text style={[styles.text, { color: grey_dark }, text]}>
|
|
43
|
+
{t("You can't send messages in this channel")}
|
|
44
|
+
</Text>
|
|
45
|
+
</View>
|
|
46
|
+
);
|
|
47
|
+
};
|
|
@@ -87,7 +87,7 @@ export const ShowThreadMessageInChannelButtonWithContext: React.FC<ShowThreadMes
|
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
return (
|
|
90
|
-
<View style={[styles.container, container]}>
|
|
90
|
+
<View style={[styles.container, container]} testID='show-thread-message-in-channel-button'>
|
|
91
91
|
<TouchableOpacity
|
|
92
92
|
onPress={() => setSendThreadMessageInChannel((prevSendInChannel) => !prevSendInChannel)}
|
|
93
93
|
>
|