stream-chat-react-native-core 9.0.0-beta.31 → 9.0.0-beta.32
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/Attachment.js +15 -52
- package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js +4 -6
- package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -10
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/commonjs/components/Attachment/FilePreview.js +3 -6
- package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +9 -28
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/GalleryImage.js +3 -3
- package/lib/commonjs/components/Attachment/GalleryImage.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js +7 -13
- package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js.map +1 -1
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +4 -6
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js +3 -3
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js +3 -3
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +4 -2
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +7 -4
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +9 -13
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +9 -418
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +0 -8
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +3 -77
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +2 -132
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelList.js +1 -57
- package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js +4 -2
- package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListView.js +11 -20
- package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +1 -39
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js +3 -2
- package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +4 -6
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +6 -18
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js +8 -28
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelSwipableWrapper.js +3 -3
- package/lib/commonjs/components/ChannelPreview/ChannelSwipableWrapper.js.map +1 -1
- package/lib/commonjs/components/Chat/Chat.js +4 -6
- package/lib/commonjs/components/Chat/Chat.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +0 -2
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +7 -9
- package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +4 -2
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +9 -13
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js +4 -2
- package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageContent.js +18 -39
- package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js +5 -7
- package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js +4 -8
- package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js +8 -16
- package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js +13 -35
- package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js +3 -5
- package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js +3 -3
- package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js +6 -4
- package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js +6 -8
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js +7 -11
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageComposer.js +15 -55
- package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js +5 -5
- package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +9 -17
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +5 -5
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +5 -5
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +5 -5
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +4 -4
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js +3 -2
- package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +7 -13
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageFlashList.js +14 -40
- package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +12 -38
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/StickyHeader.js +3 -1
- package/lib/commonjs/components/MessageList/StickyHeader.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageActionList.js +4 -2
- package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageMenu.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +4 -8
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +4 -2
- package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
- package/lib/commonjs/components/Poll/CreatePollContent.js +3 -1
- package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -1
- package/lib/commonjs/components/Poll/Poll.js +12 -9
- package/lib/commonjs/components/Poll/Poll.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollAnswersList.js +5 -3
- package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollOption.js +5 -3
- package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +5 -3
- package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js +4 -2
- package/lib/commonjs/components/Reply/Reply.js.map +1 -1
- package/lib/commonjs/components/Thread/Thread.js +4 -8
- package/lib/commonjs/components/Thread/Thread.js.map +1 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +4 -6
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadList.js +12 -15
- package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItem.js +8 -11
- package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/commonjs/components/ui/Avatar/Avatar.js +3 -3
- package/lib/commonjs/components/ui/Avatar/Avatar.js.map +1 -1
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/commonjs/contexts/componentsContext/ComponentsContext.js +37 -0
- package/lib/commonjs/contexts/componentsContext/ComponentsContext.js.map +1 -0
- package/lib/commonjs/contexts/componentsContext/PLAN.md +148 -0
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js +286 -0
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -0
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
- package/lib/commonjs/contexts/index.js +11 -0
- package/lib/commonjs/contexts/index.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js +7 -5
- package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +1 -4
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/commonjs/contexts/threadsContext/ThreadsContext.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/Attachment.js +15 -52
- package/lib/module/components/Attachment/Attachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachment.js +4 -6
- package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -10
- package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/module/components/Attachment/FilePreview.js +3 -6
- package/lib/module/components/Attachment/FilePreview.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +9 -28
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/GalleryImage.js +3 -3
- package/lib/module/components/Attachment/GalleryImage.js.map +1 -1
- package/lib/module/components/Attachment/Giphy/GiphyImage.js +7 -13
- package/lib/module/components/Attachment/Giphy/GiphyImage.js.map +1 -1
- package/lib/module/components/Attachment/UnsupportedAttachment.js +4 -6
- package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/module/components/Attachment/UrlPreview/URLPreview.js +3 -3
- package/lib/module/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
- package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js +3 -3
- package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js +4 -2
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +7 -4
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +9 -13
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +9 -418
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js +0 -8
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +3 -77
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +2 -132
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelList.js +1 -57
- package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js +4 -2
- package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListView.js +11 -20
- package/lib/module/components/ChannelList/ChannelListView.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +1 -39
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js +3 -2
- package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -6
- package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +6 -18
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewView.js +8 -28
- package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js +3 -3
- package/lib/module/components/ChannelPreview/ChannelSwipableWrapper.js.map +1 -1
- package/lib/module/components/Chat/Chat.js +4 -6
- package/lib/module/components/Chat/Chat.js.map +1 -1
- package/lib/module/components/Chat/hooks/useCreateChatContext.js +0 -2
- package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/module/components/ImageGallery/ImageGallery.js +7 -9
- package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +4 -2
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/module/components/Message/Message.js +9 -13
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageBubble.js +4 -2
- package/lib/module/components/Message/MessageItemView/MessageBubble.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageContent.js +18 -39
- package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageDeleted.js +5 -7
- package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageFooter.js +4 -8
- package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageHeader.js +8 -16
- package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageItemView.js +13 -35
- package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageReplies.js +3 -5
- package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageTextContainer.js +3 -3
- package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageWrapper.js +6 -4
- package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js +6 -8
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js +7 -11
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -1
- package/lib/module/components/MessageInput/MessageComposer.js +15 -55
- package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInputHeaderView.js +5 -5
- package/lib/module/components/MessageInput/MessageInputHeaderView.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +9 -17
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +5 -5
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +5 -5
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +5 -5
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/index.js +4 -4
- package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/module/components/MessageInput/components/LinkPreviewList.js +3 -2
- package/lib/module/components/MessageInput/components/LinkPreviewList.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/index.js +7 -13
- package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/module/components/MessageList/MessageFlashList.js +14 -40
- package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +12 -38
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/StickyHeader.js +3 -1
- package/lib/module/components/MessageList/StickyHeader.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageActionList.js +4 -2
- package/lib/module/components/MessageMenu/MessageActionList.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageMenu.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageUserReactions.js +4 -8
- package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +4 -2
- package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
- package/lib/module/components/Poll/CreatePollContent.js +3 -1
- package/lib/module/components/Poll/CreatePollContent.js.map +1 -1
- package/lib/module/components/Poll/Poll.js +12 -9
- package/lib/module/components/Poll/Poll.js.map +1 -1
- package/lib/module/components/Poll/components/PollAnswersList.js +5 -3
- package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/module/components/Poll/components/PollOption.js +5 -3
- package/lib/module/components/Poll/components/PollOption.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +5 -5
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResults.js +5 -3
- package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -1
- package/lib/module/components/Reply/Reply.js +4 -2
- package/lib/module/components/Reply/Reply.js.map +1 -1
- package/lib/module/components/Thread/Thread.js +4 -8
- package/lib/module/components/Thread/Thread.js.map +1 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js +4 -6
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadList.js +12 -15
- package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItem.js +8 -11
- package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/module/components/ui/Avatar/Avatar.js +3 -3
- package/lib/module/components/ui/Avatar/Avatar.js.map +1 -1
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/module/contexts/componentsContext/ComponentsContext.js +37 -0
- package/lib/module/contexts/componentsContext/ComponentsContext.js.map +1 -0
- package/lib/module/contexts/componentsContext/PLAN.md +148 -0
- package/lib/module/contexts/componentsContext/defaultComponents.js +286 -0
- package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -0
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +1 -9
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -1
- package/lib/module/contexts/index.js +11 -0
- package/lib/module/contexts/index.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -76
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js +7 -5
- package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayProvider.js +1 -4
- package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/module/contexts/threadsContext/ThreadsContext.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Attachment.d.ts +1 -1
- package/lib/typescript/components/Attachment/Attachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
- package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +1 -2
- package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/FilePreview.d.ts +2 -3
- package/lib/typescript/components/Attachment/FilePreview.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
- package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/GalleryImage.d.ts +3 -2
- package/lib/typescript/components/Attachment/GalleryImage.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts +4 -2
- package/lib/typescript/components/Attachment/Giphy/GiphyImage.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts +2 -3
- package/lib/typescript/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts +4 -3
- package/lib/typescript/components/Attachment/UrlPreview/URLPreview.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts +4 -3
- package/lib/typescript/components/Attachment/UrlPreview/URLPreviewCompact.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/AttachmentPicker.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +2 -3
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts.map +1 -1
- package/lib/typescript/components/Channel/Channel.d.ts +3 -28
- package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelList.d.ts +2 -10
- package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelListLoadingIndicator.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts +1 -1
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +1 -1
- package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts +1 -2
- package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +1 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts +1 -3
- package/lib/typescript/components/ChannelPreview/ChannelSwipableWrapper.d.ts.map +1 -1
- package/lib/typescript/components/Chat/Chat.d.ts +1 -7
- package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
- package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +6 -1
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/types.d.ts +0 -2
- package/lib/typescript/components/ImageGallery/components/types.d.ts.map +1 -1
- package/lib/typescript/components/Message/Message.d.ts +1 -1
- package/lib/typescript/components/Message/Message.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts +1 -2
- package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts +1 -2
- package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts +0 -2
- package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts +1 -2
- package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts +1 -2
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts +3 -4
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts +1 -1
- package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/LinkPreviewList.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +1 -1
- package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageFlashList.d.ts +1 -1
- package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageList.d.ts +1 -1
- package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/StickyHeader.d.ts +2 -3
- package/lib/typescript/components/MessageList/StickyHeader.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageActionList.d.ts +1 -2
- package/lib/typescript/components/MessageMenu/MessageActionList.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageMenu.d.ts +1 -2
- package/lib/typescript/components/MessageMenu/MessageMenu.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts +1 -1
- package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts +2 -3
- package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts.map +1 -1
- package/lib/typescript/components/Poll/CreatePollContent.d.ts +2 -2
- package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -1
- package/lib/typescript/components/Poll/Poll.d.ts +5 -8
- package/lib/typescript/components/Poll/Poll.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +1 -2
- package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollOption.d.ts +1 -2
- package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +1 -4
- package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts +1 -2
- package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts.map +1 -1
- package/lib/typescript/components/Reply/Reply.d.ts +4 -3
- package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
- package/lib/typescript/components/Thread/Thread.d.ts +2 -8
- package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +1 -2
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadList.d.ts +2 -3
- package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
- package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +0 -17
- package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts.map +1 -1
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +0 -23
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +0 -112
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
- package/lib/typescript/contexts/chatContext/ChatContext.d.ts +0 -5
- package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
- package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts +321 -0
- package/lib/typescript/contexts/componentsContext/ComponentsContext.d.ts.map +1 -0
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +296 -0
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -0
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts +0 -5
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts.map +1 -1
- package/lib/typescript/contexts/index.d.ts +1 -0
- package/lib/typescript/contexts/index.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +1 -169
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +3 -332
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
- package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts +2 -5
- package/lib/typescript/contexts/overlayContext/MessageOverlayHostLayer.d.ts.map +1 -1
- package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +0 -4
- package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts.map +1 -1
- package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts.map +1 -1
- package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts +0 -9
- package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/offline-support/offline-feature.js +64 -67
- package/src/components/Attachment/Attachment.tsx +7 -69
- package/src/components/Attachment/FileAttachment.tsx +4 -7
- package/src/components/Attachment/FileAttachmentGroup.tsx +9 -19
- package/src/components/Attachment/FilePreview.tsx +4 -9
- package/src/components/Attachment/Gallery.tsx +6 -83
- package/src/components/Attachment/GalleryImage.tsx +5 -4
- package/src/components/Attachment/Giphy/GiphyImage.tsx +15 -37
- package/src/components/Attachment/UnsupportedAttachment.tsx +5 -10
- package/src/components/Attachment/UrlPreview/URLPreview.tsx +6 -4
- package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx +6 -4
- package/src/components/AttachmentPicker/AttachmentPicker.tsx +2 -2
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +5 -4
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +4 -20
- package/src/components/Channel/Channel.tsx +31 -438
- package/src/components/Channel/__tests__/isAttachmentEqualHandler.test.js +12 -9
- package/src/components/Channel/hooks/useCreateChannelContext.ts +0 -8
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +1 -81
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +0 -130
- package/src/components/ChannelList/ChannelList.tsx +3 -76
- package/src/components/ChannelList/ChannelListLoadingIndicator.tsx +3 -1
- package/src/components/ChannelList/ChannelListView.tsx +12 -33
- package/src/components/ChannelList/__tests__/ChannelList.test.js +173 -116
- package/src/components/ChannelList/__tests__/ChannelListView.test.js +64 -41
- package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +0 -39
- package/src/components/ChannelPreview/ChannelDetailsBottomSheet.tsx +2 -2
- package/src/components/ChannelPreview/ChannelPreview.tsx +6 -14
- package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +7 -33
- package/src/components/ChannelPreview/ChannelPreviewView.tsx +11 -40
- package/src/components/ChannelPreview/ChannelSwipableWrapper.tsx +2 -4
- package/src/components/ChannelPreview/__tests__/ChannelDetailsBottomSheet.test.tsx +16 -12
- package/src/components/ChannelPreview/__tests__/ChannelPreview.test.tsx +25 -24
- package/src/components/ChannelPreview/__tests__/ChannelSwipableWrapper.test.tsx +11 -6
- package/src/components/Chat/Chat.tsx +5 -12
- package/src/components/Chat/hooks/useCreateChatContext.ts +0 -2
- package/src/components/ImageGallery/ImageGallery.tsx +14 -16
- package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +0 -8
- package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +25 -21
- package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +3 -1
- package/src/components/ImageGallery/components/types.ts +0 -3
- package/src/components/Message/Message.tsx +11 -32
- package/src/components/Message/MessageItemView/MessageBubble.tsx +11 -7
- package/src/components/Message/MessageItemView/MessageContent.tsx +14 -47
- package/src/components/Message/MessageItemView/MessageDeleted.tsx +3 -9
- package/src/components/Message/MessageItemView/MessageFooter.tsx +2 -14
- package/src/components/Message/MessageItemView/MessageHeader.tsx +11 -29
- package/src/components/Message/MessageItemView/MessageItemView.tsx +10 -42
- package/src/components/Message/MessageItemView/MessageReplies.tsx +2 -8
- package/src/components/Message/MessageItemView/MessageTextContainer.tsx +4 -8
- package/src/components/Message/MessageItemView/MessageWrapper.tsx +4 -9
- package/src/components/Message/MessageItemView/ReactionList/ReactionListBottom.tsx +4 -12
- package/src/components/Message/MessageItemView/ReactionList/ReactionListTop.tsx +4 -20
- package/src/components/Message/MessageItemView/__tests__/MessageContent.test.js +47 -30
- package/src/components/Message/MessageItemView/__tests__/MessageItemView.test.js +16 -7
- package/src/components/Message/MessageItemView/__tests__/MessageTextContainer.test.tsx +8 -4
- package/src/components/MessageInput/MessageComposer.tsx +16 -76
- package/src/components/MessageInput/MessageInputHeaderView.tsx +3 -3
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.tsx +7 -35
- package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +2 -2
- package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +2 -2
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.tsx +6 -4
- package/src/components/MessageInput/components/InputButtons/index.tsx +4 -5
- package/src/components/MessageInput/components/LinkPreviewList.tsx +3 -2
- package/src/components/MessageInput/components/OutputButtons/index.tsx +4 -23
- package/src/components/MessageList/MessageFlashList.tsx +13 -57
- package/src/components/MessageList/MessageList.tsx +15 -57
- package/src/components/MessageList/StickyHeader.tsx +4 -3
- package/src/components/MessageMenu/MessageActionList.tsx +4 -3
- package/src/components/MessageMenu/MessageMenu.tsx +35 -47
- package/src/components/MessageMenu/MessageUserReactions.tsx +7 -27
- package/src/components/MessageMenu/MessageUserReactionsItem.tsx +3 -6
- package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +12 -11
- package/src/components/Poll/CreatePollContent.tsx +3 -4
- package/src/components/Poll/Poll.tsx +22 -24
- package/src/components/Poll/components/PollAnswersList.tsx +9 -11
- package/src/components/Poll/components/PollOption.tsx +9 -11
- package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +10 -11
- package/src/components/Poll/components/PollResults/PollResults.tsx +9 -15
- package/src/components/Reply/Reply.tsx +18 -5
- package/src/components/Thread/Thread.tsx +3 -18
- package/src/components/Thread/components/ThreadFooterComponent.tsx +10 -11
- package/src/components/ThreadList/ThreadList.tsx +14 -22
- package/src/components/ThreadList/ThreadListItem.tsx +6 -11
- package/src/components/ui/Avatar/Avatar.tsx +2 -2
- package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +0 -15
- package/src/contexts/channelContext/ChannelContext.tsx +0 -24
- package/src/contexts/channelsContext/ChannelsContext.tsx +0 -113
- package/src/contexts/chatContext/ChatContext.tsx +0 -5
- package/src/contexts/componentsContext/ComponentsContext.tsx +62 -0
- package/src/contexts/componentsContext/PLAN.md +148 -0
- package/src/contexts/componentsContext/__tests__/defaultComponents.test.ts +44 -0
- package/src/contexts/componentsContext/defaultComponents.ts +332 -0
- package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +0 -8
- package/src/contexts/imageGalleryContext/ImageGalleryContextBase.tsx +0 -10
- package/src/contexts/index.ts +1 -0
- package/src/contexts/messageInputContext/MessageInputContext.tsx +0 -185
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +1 -75
- package/src/contexts/messagesContext/MessagesContext.tsx +3 -358
- package/src/contexts/overlayContext/MessageOverlayHostLayer.tsx +5 -7
- package/src/contexts/overlayContext/OverlayContext.tsx +0 -4
- package/src/contexts/overlayContext/OverlayProvider.tsx +1 -2
- package/src/contexts/overlayContext/__tests__/MessageOverlayHostLayer.test.tsx +21 -6
- package/src/contexts/threadsContext/ThreadsContext.tsx +0 -9
- package/src/version.json +1 -1
|
@@ -16,6 +16,7 @@ import { openUrlSafely } from './utils/openUrlSafely';
|
|
|
16
16
|
|
|
17
17
|
import { useTranslationContext } from '../../contexts';
|
|
18
18
|
import { useChatConfigContext } from '../../contexts/chatConfigContext/ChatConfigContext';
|
|
19
|
+
import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
|
|
19
20
|
import {
|
|
20
21
|
ImageGalleryContextValue,
|
|
21
22
|
useImageGalleryContext,
|
|
@@ -54,14 +55,7 @@ export type GalleryPropsWithContext = Pick<ImageGalleryContextValue, 'imageGalle
|
|
|
54
55
|
| 'message'
|
|
55
56
|
| 'messageContentOrder'
|
|
56
57
|
> &
|
|
57
|
-
Pick<
|
|
58
|
-
MessagesContextValue,
|
|
59
|
-
| 'additionalPressableProps'
|
|
60
|
-
| 'VideoThumbnail'
|
|
61
|
-
| 'ImageLoadingIndicator'
|
|
62
|
-
| 'ImageLoadingFailedIndicator'
|
|
63
|
-
| 'myMessageTheme'
|
|
64
|
-
> &
|
|
58
|
+
Pick<MessagesContextValue, 'additionalPressableProps' | 'myMessageTheme'> &
|
|
65
59
|
Pick<OverlayContextValue, 'setOverlay'> & {
|
|
66
60
|
channelId: string | undefined;
|
|
67
61
|
messageHasOnlyOneMedia: boolean;
|
|
@@ -72,8 +66,6 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
72
66
|
additionalPressableProps,
|
|
73
67
|
alignment,
|
|
74
68
|
imageGalleryStateStore,
|
|
75
|
-
ImageLoadingFailedIndicator,
|
|
76
|
-
ImageLoadingIndicator,
|
|
77
69
|
images,
|
|
78
70
|
message,
|
|
79
71
|
onLongPress,
|
|
@@ -82,10 +74,8 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
82
74
|
preventPress,
|
|
83
75
|
setOverlay,
|
|
84
76
|
videos,
|
|
85
|
-
VideoThumbnail,
|
|
86
77
|
messageHasOnlyOneMedia = false,
|
|
87
78
|
} = props;
|
|
88
|
-
|
|
89
79
|
const { resizableCDNHosts } = useChatConfigContext();
|
|
90
80
|
const {
|
|
91
81
|
theme: {
|
|
@@ -103,9 +93,7 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
103
93
|
},
|
|
104
94
|
},
|
|
105
95
|
} = useTheme();
|
|
106
|
-
|
|
107
96
|
const styles = useStyles();
|
|
108
|
-
|
|
109
97
|
const sizeConfig = {
|
|
110
98
|
gridHeight,
|
|
111
99
|
gridWidth,
|
|
@@ -114,12 +102,10 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
114
102
|
minHeight,
|
|
115
103
|
minWidth,
|
|
116
104
|
};
|
|
117
|
-
|
|
118
105
|
const imagesAndVideos = [...(images || []), ...(videos || [])];
|
|
119
106
|
const imagesAndVideosValue = `${images?.length}${videos?.length}${images
|
|
120
107
|
?.map((i) => `${i.image_url}${i.thumb_url}`)
|
|
121
108
|
.join('')}${videos?.map((i) => `${i.image_url}${i.thumb_url}`).join('')}`;
|
|
122
|
-
|
|
123
109
|
const { height, invertedDirections, thumbnailGrid, width } = useMemo(
|
|
124
110
|
() =>
|
|
125
111
|
buildGallery({
|
|
@@ -130,12 +116,10 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
130
116
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
131
117
|
[imagesAndVideosValue],
|
|
132
118
|
);
|
|
133
|
-
|
|
134
119
|
if (!imagesAndVideos?.length) {
|
|
135
120
|
return null;
|
|
136
121
|
}
|
|
137
122
|
const numOfColumns = thumbnailGrid.length;
|
|
138
|
-
|
|
139
123
|
return (
|
|
140
124
|
<View
|
|
141
125
|
style={[
|
|
@@ -180,19 +164,15 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
180
164
|
width,
|
|
181
165
|
messageHasOnlyOneMedia,
|
|
182
166
|
});
|
|
183
|
-
|
|
184
167
|
if (!message) {
|
|
185
168
|
return null;
|
|
186
169
|
}
|
|
187
|
-
|
|
188
170
|
return (
|
|
189
171
|
<GalleryThumbnail
|
|
190
172
|
additionalPressableProps={additionalPressableProps}
|
|
191
173
|
borderRadius={borderRadius}
|
|
192
174
|
colIndex={colIndex}
|
|
193
175
|
imageGalleryStateStore={imageGalleryStateStore}
|
|
194
|
-
ImageLoadingFailedIndicator={ImageLoadingFailedIndicator}
|
|
195
|
-
ImageLoadingIndicator={ImageLoadingIndicator}
|
|
196
176
|
imagesAndVideos={imagesAndVideos}
|
|
197
177
|
invertedDirections={invertedDirections || false}
|
|
198
178
|
key={rowIndex}
|
|
@@ -206,7 +186,6 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
206
186
|
rowIndex={rowIndex}
|
|
207
187
|
setOverlay={setOverlay}
|
|
208
188
|
thumbnail={thumbnail}
|
|
209
|
-
VideoThumbnail={VideoThumbnail}
|
|
210
189
|
/>
|
|
211
190
|
);
|
|
212
191
|
})}
|
|
@@ -216,7 +195,6 @@ const GalleryWithContext = (props: GalleryPropsWithContext) => {
|
|
|
216
195
|
</View>
|
|
217
196
|
);
|
|
218
197
|
};
|
|
219
|
-
|
|
220
198
|
type GalleryThumbnailProps = {
|
|
221
199
|
borderRadius: GalleryImageBorderRadius;
|
|
222
200
|
colIndex: number;
|
|
@@ -227,24 +205,15 @@ type GalleryThumbnailProps = {
|
|
|
227
205
|
numOfRows: number;
|
|
228
206
|
rowIndex: number;
|
|
229
207
|
thumbnail: Thumbnail;
|
|
230
|
-
} & Pick<
|
|
231
|
-
MessagesContextValue,
|
|
232
|
-
| 'additionalPressableProps'
|
|
233
|
-
| 'VideoThumbnail'
|
|
234
|
-
| 'ImageLoadingIndicator'
|
|
235
|
-
| 'ImageLoadingFailedIndicator'
|
|
236
|
-
> &
|
|
208
|
+
} & Pick<MessagesContextValue, 'additionalPressableProps'> &
|
|
237
209
|
Pick<ImageGalleryContextValue, 'imageGalleryStateStore'> &
|
|
238
210
|
Pick<MessageContextValue, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> &
|
|
239
211
|
Pick<OverlayContextValue, 'setOverlay'>;
|
|
240
|
-
|
|
241
212
|
const GalleryThumbnail = ({
|
|
242
213
|
additionalPressableProps,
|
|
243
214
|
borderRadius,
|
|
244
215
|
colIndex,
|
|
245
216
|
imageGalleryStateStore,
|
|
246
|
-
ImageLoadingFailedIndicator,
|
|
247
|
-
ImageLoadingIndicator,
|
|
248
217
|
imagesAndVideos,
|
|
249
218
|
invertedDirections,
|
|
250
219
|
message,
|
|
@@ -257,8 +226,8 @@ const GalleryThumbnail = ({
|
|
|
257
226
|
rowIndex,
|
|
258
227
|
setOverlay,
|
|
259
228
|
thumbnail,
|
|
260
|
-
VideoThumbnail,
|
|
261
229
|
}: GalleryThumbnailProps) => {
|
|
230
|
+
const { VideoThumbnail } = useComponentsContext();
|
|
262
231
|
const {
|
|
263
232
|
theme: {
|
|
264
233
|
messageItemView: {
|
|
@@ -269,7 +238,6 @@ const GalleryThumbnail = ({
|
|
|
269
238
|
} = useTheme();
|
|
270
239
|
const { t } = useTranslationContext();
|
|
271
240
|
const styles = useStyles();
|
|
272
|
-
|
|
273
241
|
const openImageViewer = () => {
|
|
274
242
|
if (!message) {
|
|
275
243
|
return;
|
|
@@ -280,7 +248,6 @@ const GalleryThumbnail = ({
|
|
|
280
248
|
});
|
|
281
249
|
setOverlay('gallery');
|
|
282
250
|
};
|
|
283
|
-
|
|
284
251
|
const defaultOnPress = () => {
|
|
285
252
|
// If the url is defined then only try to open the file.
|
|
286
253
|
if (thumbnail.url) {
|
|
@@ -293,7 +260,6 @@ const GalleryThumbnail = ({
|
|
|
293
260
|
}
|
|
294
261
|
}
|
|
295
262
|
};
|
|
296
|
-
|
|
297
263
|
return (
|
|
298
264
|
<Pressable
|
|
299
265
|
disabled={preventPress}
|
|
@@ -339,8 +305,6 @@ const GalleryThumbnail = ({
|
|
|
339
305
|
) : (
|
|
340
306
|
<GalleryImageThumbnail
|
|
341
307
|
borderRadius={imageBorderRadius ?? borderRadius}
|
|
342
|
-
ImageLoadingFailedIndicator={ImageLoadingFailedIndicator}
|
|
343
|
-
ImageLoadingIndicator={ImageLoadingIndicator}
|
|
344
308
|
thumbnail={thumbnail}
|
|
345
309
|
/>
|
|
346
310
|
)}
|
|
@@ -362,16 +326,11 @@ const GalleryThumbnail = ({
|
|
|
362
326
|
</Pressable>
|
|
363
327
|
);
|
|
364
328
|
};
|
|
365
|
-
|
|
366
329
|
const GalleryImageThumbnail = ({
|
|
367
330
|
borderRadius,
|
|
368
|
-
ImageLoadingFailedIndicator,
|
|
369
|
-
ImageLoadingIndicator,
|
|
370
331
|
thumbnail,
|
|
371
|
-
}: Pick<
|
|
372
|
-
|
|
373
|
-
'ImageLoadingFailedIndicator' | 'ImageLoadingIndicator' | 'thumbnail' | 'borderRadius'
|
|
374
|
-
>) => {
|
|
332
|
+
}: Pick<GalleryThumbnailProps, 'thumbnail' | 'borderRadius'>) => {
|
|
333
|
+
const { ImageLoadingFailedIndicator, ImageLoadingIndicator } = useComponentsContext();
|
|
375
334
|
const {
|
|
376
335
|
isLoadingImage,
|
|
377
336
|
isLoadingImageError,
|
|
@@ -379,33 +338,27 @@ const GalleryImageThumbnail = ({
|
|
|
379
338
|
setLoadingImage,
|
|
380
339
|
setLoadingImageError,
|
|
381
340
|
} = useLoadingImage();
|
|
382
|
-
|
|
383
341
|
const {
|
|
384
342
|
theme: {
|
|
385
343
|
messageItemView: { gallery },
|
|
386
344
|
},
|
|
387
345
|
} = useTheme();
|
|
388
|
-
|
|
389
346
|
const styles = useStyles();
|
|
390
|
-
|
|
391
347
|
const onLoadStart = useStableCallback(() => {
|
|
392
348
|
setLoadingImageError(false);
|
|
393
349
|
setLoadingImage(true);
|
|
394
350
|
});
|
|
395
|
-
|
|
396
351
|
const onLoad = useStableCallback(() => {
|
|
397
352
|
setTimeout(() => {
|
|
398
353
|
setLoadingImage(false);
|
|
399
354
|
setLoadingImageError(false);
|
|
400
355
|
}, 0);
|
|
401
356
|
});
|
|
402
|
-
|
|
403
357
|
const onError = useStableCallback(({ nativeEvent: { error } }: ImageErrorEvent) => {
|
|
404
358
|
console.warn(error);
|
|
405
359
|
setLoadingImage(false);
|
|
406
360
|
setLoadingImageError(true);
|
|
407
361
|
});
|
|
408
|
-
|
|
409
362
|
return (
|
|
410
363
|
<View style={[styles.image, borderRadius]}>
|
|
411
364
|
{isLoadingImageError ? (
|
|
@@ -426,7 +379,6 @@ const GalleryImageThumbnail = ({
|
|
|
426
379
|
</View>
|
|
427
380
|
);
|
|
428
381
|
};
|
|
429
|
-
|
|
430
382
|
const areEqual = (prevProps: GalleryPropsWithContext, nextProps: GalleryPropsWithContext) => {
|
|
431
383
|
const {
|
|
432
384
|
alignment: prevAlignment,
|
|
@@ -442,19 +394,16 @@ const areEqual = (prevProps: GalleryPropsWithContext, nextProps: GalleryPropsWit
|
|
|
442
394
|
myMessageTheme: nextMyMessageTheme,
|
|
443
395
|
videos: nextVideos,
|
|
444
396
|
} = nextProps;
|
|
445
|
-
|
|
446
397
|
const alignmentEqual = prevAlignment === nextAlignment;
|
|
447
398
|
if (!alignmentEqual) {
|
|
448
399
|
return false;
|
|
449
400
|
}
|
|
450
|
-
|
|
451
401
|
const messageEqual =
|
|
452
402
|
prevMessage?.id === nextMessage?.id &&
|
|
453
403
|
`${prevMessage?.updated_at}` === `${nextMessage?.updated_at}`;
|
|
454
404
|
if (!messageEqual) {
|
|
455
405
|
return false;
|
|
456
406
|
}
|
|
457
|
-
|
|
458
407
|
const imagesEqual =
|
|
459
408
|
prevImages.length === nextImages.length &&
|
|
460
409
|
prevImages.every(
|
|
@@ -465,7 +414,6 @@ const areEqual = (prevProps: GalleryPropsWithContext, nextProps: GalleryPropsWit
|
|
|
465
414
|
if (!imagesEqual) {
|
|
466
415
|
return false;
|
|
467
416
|
}
|
|
468
|
-
|
|
469
417
|
const videosEqual =
|
|
470
418
|
prevVideos.length === nextVideos.length &&
|
|
471
419
|
prevVideos.every(
|
|
@@ -476,20 +424,15 @@ const areEqual = (prevProps: GalleryPropsWithContext, nextProps: GalleryPropsWit
|
|
|
476
424
|
if (!videosEqual) {
|
|
477
425
|
return false;
|
|
478
426
|
}
|
|
479
|
-
|
|
480
427
|
const messageThemeEqual =
|
|
481
428
|
JSON.stringify(prevMyMessageTheme) === JSON.stringify(nextMyMessageTheme);
|
|
482
429
|
if (!messageThemeEqual) {
|
|
483
430
|
return false;
|
|
484
431
|
}
|
|
485
|
-
|
|
486
432
|
return true;
|
|
487
433
|
};
|
|
488
|
-
|
|
489
434
|
const MemoizedGallery = React.memo(GalleryWithContext, areEqual) as typeof GalleryWithContext;
|
|
490
|
-
|
|
491
435
|
export type GalleryProps = Partial<GalleryPropsWithContext>;
|
|
492
|
-
|
|
493
436
|
/**
|
|
494
437
|
* UI component for card in attachments.
|
|
495
438
|
*/
|
|
@@ -497,8 +440,6 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
497
440
|
const {
|
|
498
441
|
alignment: propAlignment,
|
|
499
442
|
additionalPressableProps: propAdditionalPressableProps,
|
|
500
|
-
ImageLoadingFailedIndicator: PropImageLoadingFailedIndicator,
|
|
501
|
-
ImageLoadingIndicator: PropImageLoadingIndicator,
|
|
502
443
|
images: propImages,
|
|
503
444
|
message: propMessage,
|
|
504
445
|
myMessageTheme: propMyMessageTheme,
|
|
@@ -508,10 +449,8 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
508
449
|
preventPress: propPreventPress,
|
|
509
450
|
setOverlay: propSetOverlay,
|
|
510
451
|
videos: propVideos,
|
|
511
|
-
VideoThumbnail: PropVideoThumbnail,
|
|
512
452
|
messageContentOrder: propMessageContentOrder,
|
|
513
453
|
} = props;
|
|
514
|
-
|
|
515
454
|
const { imageGalleryStateStore } = useImageGalleryContext();
|
|
516
455
|
const {
|
|
517
456
|
alignment: contextAlignment,
|
|
@@ -526,13 +465,9 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
526
465
|
} = useMessageContext();
|
|
527
466
|
const {
|
|
528
467
|
additionalPressableProps: contextAdditionalPressableProps,
|
|
529
|
-
ImageLoadingFailedIndicator: ContextImageLoadingFailedIndicator,
|
|
530
|
-
ImageLoadingIndicator: ContextImageLoadingIndicator,
|
|
531
468
|
myMessageTheme: contextMyMessageTheme,
|
|
532
|
-
VideoThumbnail: ContextVideoThumnbnail,
|
|
533
469
|
} = useMessagesContext();
|
|
534
470
|
const { setOverlay: contextSetOverlay } = useOverlayContext();
|
|
535
|
-
|
|
536
471
|
const images = propImages ?? contextImages ?? [];
|
|
537
472
|
const videos = propVideos ?? contextVideos ?? [];
|
|
538
473
|
const imagesAndVideos = [...images, ...videos];
|
|
@@ -541,7 +476,6 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
541
476
|
if (!images.length && !videos.length) {
|
|
542
477
|
return null;
|
|
543
478
|
}
|
|
544
|
-
|
|
545
479
|
const additionalPressableProps = propAdditionalPressableProps || contextAdditionalPressableProps;
|
|
546
480
|
const onLongPress = propOnLongPress || contextOnLongPress;
|
|
547
481
|
const onPressIn = propOnPressIn || contextOnPressIn;
|
|
@@ -549,18 +483,12 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
549
483
|
const preventPress =
|
|
550
484
|
typeof propPreventPress === 'boolean' ? propPreventPress : contextPreventPress;
|
|
551
485
|
const setOverlay = propSetOverlay || contextSetOverlay;
|
|
552
|
-
const VideoThumbnail = PropVideoThumbnail || ContextVideoThumnbnail;
|
|
553
|
-
const ImageLoadingFailedIndicator =
|
|
554
|
-
PropImageLoadingFailedIndicator || ContextImageLoadingFailedIndicator;
|
|
555
|
-
const ImageLoadingIndicator = PropImageLoadingIndicator || ContextImageLoadingIndicator;
|
|
556
486
|
const myMessageTheme = propMyMessageTheme || contextMyMessageTheme;
|
|
557
487
|
const messageContentOrder = propMessageContentOrder || contextMessageContentOrder;
|
|
558
|
-
|
|
559
488
|
const messageHasOnlyOneMedia =
|
|
560
489
|
messageContentOrder?.length === 1 &&
|
|
561
490
|
messageContentOrder?.includes('gallery') &&
|
|
562
491
|
imagesAndVideos.length === 1;
|
|
563
|
-
|
|
564
492
|
return (
|
|
565
493
|
<MemoizedGallery
|
|
566
494
|
{...{
|
|
@@ -568,8 +496,6 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
568
496
|
alignment,
|
|
569
497
|
channelId: message?.cid,
|
|
570
498
|
imageGalleryStateStore,
|
|
571
|
-
ImageLoadingFailedIndicator,
|
|
572
|
-
ImageLoadingIndicator,
|
|
573
499
|
images,
|
|
574
500
|
message,
|
|
575
501
|
myMessageTheme,
|
|
@@ -579,14 +505,12 @@ export const Gallery = (props: GalleryProps) => {
|
|
|
579
505
|
preventPress,
|
|
580
506
|
setOverlay,
|
|
581
507
|
videos,
|
|
582
|
-
VideoThumbnail,
|
|
583
508
|
messageHasOnlyOneMedia,
|
|
584
509
|
messageContentOrder,
|
|
585
510
|
}}
|
|
586
511
|
/>
|
|
587
512
|
);
|
|
588
513
|
};
|
|
589
|
-
|
|
590
514
|
const useStyles = () => {
|
|
591
515
|
const {
|
|
592
516
|
theme: { semantics },
|
|
@@ -675,5 +599,4 @@ const useStyles = () => {
|
|
|
675
599
|
});
|
|
676
600
|
}, [semantics, isMyMessage]);
|
|
677
601
|
};
|
|
678
|
-
|
|
679
602
|
Gallery.displayName = 'Gallery{messageItemView{gallery}}';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Image, ImageProps, StyleSheet } from 'react-native';
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
|
|
5
5
|
|
|
6
6
|
import { getUrlWithoutParams, isLocalUrl, makeImageCompatibleUrl } from '../../utils/utils';
|
|
7
7
|
|
|
8
|
-
export type GalleryImageWithContextProps = GalleryImageProps &
|
|
9
|
-
|
|
8
|
+
export type GalleryImageWithContextProps = GalleryImageProps & {
|
|
9
|
+
ImageComponent?: React.ComponentType<ImageProps>;
|
|
10
|
+
};
|
|
10
11
|
|
|
11
12
|
export const GalleryImageWithContext = (props: GalleryImageWithContextProps) => {
|
|
12
13
|
const { ImageComponent = Image, uri, style, ...rest } = props;
|
|
@@ -48,7 +49,7 @@ export type GalleryImageProps = Omit<ImageProps, 'height' | 'source'> & {
|
|
|
48
49
|
};
|
|
49
50
|
|
|
50
51
|
export const GalleryImage = (props: GalleryImageProps) => {
|
|
51
|
-
const { ImageComponent } =
|
|
52
|
+
const { ImageComponent } = useComponentsContext();
|
|
52
53
|
|
|
53
54
|
return <MemoizedGalleryImage ImageComponent={ImageComponent} {...props} />;
|
|
54
55
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
|
-
import { Image, StyleSheet, View } from 'react-native';
|
|
2
|
+
import { Image, ImageProps, StyleSheet, View } from 'react-native';
|
|
3
3
|
|
|
4
4
|
import type { Attachment } from 'stream-chat';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { useComponentsContext } from '../../../contexts/componentsContext/ComponentsContext';
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
MessagesContextValue,
|
|
@@ -15,27 +15,19 @@ import { useLoadingImage } from '../../../hooks/useLoadingImage';
|
|
|
15
15
|
import { makeImageCompatibleUrl } from '../../../utils/utils';
|
|
16
16
|
import { GiphyBadge } from '../../ui/Badge/GiphyBadge';
|
|
17
17
|
|
|
18
|
-
export type GiphyImagePropsWithContext = Pick<
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
preview?: boolean;
|
|
28
|
-
};
|
|
18
|
+
export type GiphyImagePropsWithContext = Pick<MessagesContextValue, 'giphyVersion'> & {
|
|
19
|
+
ImageComponent?: React.ComponentType<ImageProps>;
|
|
20
|
+
} & {
|
|
21
|
+
attachment: Attachment;
|
|
22
|
+
/**
|
|
23
|
+
* Whether to render the preview image or the full image
|
|
24
|
+
*/
|
|
25
|
+
preview?: boolean;
|
|
26
|
+
};
|
|
29
27
|
|
|
30
28
|
const GiphyImageWithContext = (props: GiphyImagePropsWithContext) => {
|
|
31
|
-
const {
|
|
32
|
-
|
|
33
|
-
giphyVersion,
|
|
34
|
-
ImageComponent = Image,
|
|
35
|
-
ImageLoadingFailedIndicator,
|
|
36
|
-
ImageLoadingIndicator,
|
|
37
|
-
preview = false,
|
|
38
|
-
} = props;
|
|
29
|
+
const { attachment, giphyVersion, ImageComponent = Image, preview = false } = props;
|
|
30
|
+
const { ImageLoadingFailedIndicator, ImageLoadingIndicator } = useComponentsContext();
|
|
39
31
|
|
|
40
32
|
const { giphy: giphyData, image_url, thumb_url, type } = attachment;
|
|
41
33
|
|
|
@@ -168,25 +160,11 @@ export type GiphyImageProps = Partial<GiphyImagePropsWithContext> & {
|
|
|
168
160
|
* UI component for card in attachments.
|
|
169
161
|
*/
|
|
170
162
|
export const GiphyImage = (props: GiphyImageProps) => {
|
|
171
|
-
const { ImageComponent } =
|
|
163
|
+
const { ImageComponent } = useComponentsContext();
|
|
172
164
|
const { giphyVersion } = useMessagesContext();
|
|
173
165
|
|
|
174
|
-
const {
|
|
175
|
-
ImageLoadingFailedIndicator: ContextImageLoadingFailedIndicator,
|
|
176
|
-
ImageLoadingIndicator: ContextImageLoadingIndicator,
|
|
177
|
-
} = useMessagesContext();
|
|
178
|
-
const ImageLoadingFailedIndicator =
|
|
179
|
-
ContextImageLoadingFailedIndicator || props.ImageLoadingFailedIndicator;
|
|
180
|
-
const ImageLoadingIndicator = ContextImageLoadingIndicator || props.ImageLoadingIndicator;
|
|
181
|
-
|
|
182
166
|
return (
|
|
183
|
-
<MemoizedGiphyImage
|
|
184
|
-
giphyVersion={giphyVersion}
|
|
185
|
-
ImageComponent={ImageComponent}
|
|
186
|
-
ImageLoadingFailedIndicator={ImageLoadingFailedIndicator}
|
|
187
|
-
ImageLoadingIndicator={ImageLoadingIndicator}
|
|
188
|
-
{...props}
|
|
189
|
-
/>
|
|
167
|
+
<MemoizedGiphyImage giphyVersion={giphyVersion} ImageComponent={ImageComponent} {...props} />
|
|
190
168
|
);
|
|
191
169
|
};
|
|
192
170
|
|
|
@@ -3,32 +3,27 @@ import { StyleSheet, Text, View } from 'react-native';
|
|
|
3
3
|
|
|
4
4
|
import type { Attachment } from 'stream-chat';
|
|
5
5
|
|
|
6
|
-
import { FileIconProps } from './FileIcon';
|
|
6
|
+
import type { FileIconProps } from './FileIcon';
|
|
7
7
|
|
|
8
|
+
import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
|
|
8
9
|
import {
|
|
9
10
|
MessageContextValue,
|
|
10
11
|
useMessageContext,
|
|
11
12
|
} from '../../contexts/messageContext/MessageContext';
|
|
12
|
-
import {
|
|
13
|
-
MessagesContextValue,
|
|
14
|
-
useMessagesContext,
|
|
15
|
-
} from '../../contexts/messagesContext/MessagesContext';
|
|
16
13
|
import { useTheme } from '../../contexts/themeContext/ThemeContext';
|
|
17
14
|
import { useTranslationContext } from '../../contexts/translationContext/TranslationContext';
|
|
18
15
|
import { primitives } from '../../theme';
|
|
19
16
|
|
|
20
|
-
export type UnsupportedAttachmentProps = Partial<
|
|
21
|
-
Pick<MessagesContextValue, 'FileAttachmentIcon'> & Pick<MessageContextValue, 'isMyMessage'>
|
|
22
|
-
> & {
|
|
17
|
+
export type UnsupportedAttachmentProps = Partial<Pick<MessageContextValue, 'isMyMessage'>> & {
|
|
23
18
|
/** The attachment to render */
|
|
24
19
|
attachment: Attachment;
|
|
25
20
|
attachmentIconSize?: FileIconProps['size'];
|
|
26
21
|
};
|
|
27
22
|
|
|
28
23
|
export const UnsupportedAttachment = (props: UnsupportedAttachmentProps) => {
|
|
29
|
-
const { FileAttachmentIcon
|
|
24
|
+
const { FileAttachmentIcon } = useComponentsContext();
|
|
30
25
|
const { isMyMessage } = useMessageContext();
|
|
31
|
-
const { attachment, attachmentIconSize
|
|
26
|
+
const { attachment, attachmentIconSize } = props;
|
|
32
27
|
|
|
33
28
|
const styles = useStyles({ isMyMessage });
|
|
34
29
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
2
|
import {
|
|
3
3
|
Image,
|
|
4
|
+
ImageProps,
|
|
4
5
|
ImageStyle,
|
|
5
6
|
Pressable,
|
|
6
7
|
StyleProp,
|
|
@@ -13,7 +14,7 @@ import {
|
|
|
13
14
|
|
|
14
15
|
import type { Attachment } from 'stream-chat';
|
|
15
16
|
|
|
16
|
-
import {
|
|
17
|
+
import { useComponentsContext } from '../../../contexts/componentsContext/ComponentsContext';
|
|
17
18
|
|
|
18
19
|
import {
|
|
19
20
|
MessageContextValue,
|
|
@@ -32,8 +33,9 @@ import { VideoPlayIndicator } from '../../ui';
|
|
|
32
33
|
import { ImageBackground } from '../../UIComponents/ImageBackground';
|
|
33
34
|
import { openUrlSafely } from '../utils/openUrlSafely';
|
|
34
35
|
|
|
35
|
-
export type URLPreviewPropsWithContext =
|
|
36
|
-
|
|
36
|
+
export type URLPreviewPropsWithContext = {
|
|
37
|
+
ImageComponent?: React.ComponentType<ImageProps>;
|
|
38
|
+
} & Pick<MessageContextValue, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> &
|
|
37
39
|
Pick<
|
|
38
40
|
MessagesContextValue,
|
|
39
41
|
'additionalPressableProps' | 'myMessageTheme' | 'isAttachmentEqual'
|
|
@@ -210,7 +212,7 @@ export type URLPreviewProps = Partial<URLPreviewPropsWithContext> & {
|
|
|
210
212
|
* UI component for card in attachments.
|
|
211
213
|
*/
|
|
212
214
|
export const URLPreview = (props: URLPreviewProps) => {
|
|
213
|
-
const { ImageComponent } =
|
|
215
|
+
const { ImageComponent } = useComponentsContext();
|
|
214
216
|
const { message, onLongPress, onPress, onPressIn, preventPress } = useMessageContext();
|
|
215
217
|
const { additionalPressableProps, isAttachmentEqual, myMessageTheme } = useMessagesContext();
|
|
216
218
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
2
|
import {
|
|
3
3
|
Image,
|
|
4
|
+
ImageProps,
|
|
4
5
|
ImageStyle,
|
|
5
6
|
Pressable,
|
|
6
7
|
StyleProp,
|
|
@@ -13,7 +14,7 @@ import {
|
|
|
13
14
|
|
|
14
15
|
import type { Attachment } from 'stream-chat';
|
|
15
16
|
|
|
16
|
-
import {
|
|
17
|
+
import { useComponentsContext } from '../../../contexts/componentsContext/ComponentsContext';
|
|
17
18
|
|
|
18
19
|
import {
|
|
19
20
|
MessageContextValue,
|
|
@@ -32,8 +33,9 @@ import { VideoPlayIndicator } from '../../ui';
|
|
|
32
33
|
import { ImageBackground } from '../../UIComponents/ImageBackground';
|
|
33
34
|
import { openUrlSafely } from '../utils/openUrlSafely';
|
|
34
35
|
|
|
35
|
-
export type URLPreviewCompactPropsWithContext =
|
|
36
|
-
|
|
36
|
+
export type URLPreviewCompactPropsWithContext = {
|
|
37
|
+
ImageComponent?: React.ComponentType<ImageProps>;
|
|
38
|
+
} & Pick<MessageContextValue, 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> &
|
|
37
39
|
Pick<MessagesContextValue, 'additionalPressableProps' | 'myMessageTheme'> & {
|
|
38
40
|
attachment: Attachment;
|
|
39
41
|
channelId: string | undefined;
|
|
@@ -208,7 +210,7 @@ export type URLPreviewCompactProps = Partial<URLPreviewCompactPropsWithContext>
|
|
|
208
210
|
* UI component for card in attachments.
|
|
209
211
|
*/
|
|
210
212
|
export const URLPreviewCompact = (props: URLPreviewCompactProps) => {
|
|
211
|
-
const { ImageComponent } =
|
|
213
|
+
const { ImageComponent } = useComponentsContext();
|
|
212
214
|
const { message, onLongPress, onPress, onPressIn, preventPress } = useMessageContext();
|
|
213
215
|
const { additionalPressableProps, myMessageTheme } = useMessagesContext();
|
|
214
216
|
|
|
@@ -15,6 +15,7 @@ import dayjs from 'dayjs';
|
|
|
15
15
|
import duration from 'dayjs/plugin/duration';
|
|
16
16
|
|
|
17
17
|
import { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';
|
|
18
|
+
import { useComponentsContext } from '../../contexts/componentsContext/ComponentsContext';
|
|
18
19
|
import { useTheme } from '../../contexts/themeContext/ThemeContext';
|
|
19
20
|
import { useStableCallback } from '../../hooks';
|
|
20
21
|
import { BottomSheet } from '../BottomSheetCompatibility/BottomSheet';
|
|
@@ -35,12 +36,11 @@ export const AttachmentPicker = () => {
|
|
|
35
36
|
const {
|
|
36
37
|
closePicker,
|
|
37
38
|
attachmentPickerStore,
|
|
38
|
-
AttachmentPickerSelectionBar,
|
|
39
|
-
AttachmentPickerContent,
|
|
40
39
|
attachmentPickerBottomSheetHeight,
|
|
41
40
|
bottomSheetRef: ref,
|
|
42
41
|
disableAttachmentPicker,
|
|
43
42
|
} = useAttachmentPickerContext();
|
|
43
|
+
const { AttachmentPickerContent, AttachmentPickerSelectionBar } = useComponentsContext();
|
|
44
44
|
const {
|
|
45
45
|
theme: { semantics },
|
|
46
46
|
} = useTheme();
|
package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx
CHANGED
|
@@ -7,6 +7,7 @@ import { FileReference, isLocalImageAttachment, isLocalVideoAttachment } from 's
|
|
|
7
7
|
import { isIosLimited, type PhotoContentItemType } from './shared';
|
|
8
8
|
|
|
9
9
|
import { useAttachmentPickerContext } from '../../../../contexts';
|
|
10
|
+
import { useComponentsContext } from '../../../../contexts/componentsContext/ComponentsContext';
|
|
10
11
|
import { useAttachmentManagerState } from '../../../../contexts/messageInputContext/hooks/useAttachmentManagerState';
|
|
11
12
|
import { useMessageComposer } from '../../../../contexts/messageInputContext/hooks/useMessageComposer';
|
|
12
13
|
import { useMessageInputContext } from '../../../../contexts/messageInputContext/MessageInputContext';
|
|
@@ -26,8 +27,8 @@ type AttachmentPickerItemType = {
|
|
|
26
27
|
|
|
27
28
|
const AttachmentVideo = (props: AttachmentPickerItemType) => {
|
|
28
29
|
const { asset } = props;
|
|
29
|
-
const { numberOfAttachmentPickerImageColumns
|
|
30
|
-
|
|
30
|
+
const { numberOfAttachmentPickerImageColumns } = useAttachmentPickerContext();
|
|
31
|
+
const { ImageOverlaySelectedComponent } = useComponentsContext();
|
|
31
32
|
const { vw } = useViewport();
|
|
32
33
|
const { t } = useTranslationContext();
|
|
33
34
|
const messageComposer = useMessageComposer();
|
|
@@ -90,8 +91,8 @@ const AttachmentVideo = (props: AttachmentPickerItemType) => {
|
|
|
90
91
|
|
|
91
92
|
const AttachmentImage = (props: AttachmentPickerItemType) => {
|
|
92
93
|
const { asset } = props;
|
|
93
|
-
const { numberOfAttachmentPickerImageColumns
|
|
94
|
-
|
|
94
|
+
const { numberOfAttachmentPickerImageColumns } = useAttachmentPickerContext();
|
|
95
|
+
const { ImageOverlaySelectedComponent } = useComponentsContext();
|
|
95
96
|
const {
|
|
96
97
|
theme: {
|
|
97
98
|
attachmentPicker: { image, imageOverlay },
|