stream-chat-react-native-core 9.0.0-beta.1 → 9.0.0-beta.10
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/AITypingIndicatorView/AITypingIndicatorView.js +1 -1
- package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
- package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js +2 -3
- package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +2 -2
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileIcon.js +2 -2
- package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
- package/lib/commonjs/components/Attachment/FilePreview.js +2 -2
- package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +4 -4
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy/Giphy.js +2 -2
- package/lib/commonjs/components/Attachment/Giphy/Giphy.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js +1 -1
- package/lib/commonjs/components/Attachment/Giphy/GiphyImage.js.map +1 -1
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +2 -2
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js +2 -2
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js +2 -2
- package/lib/commonjs/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
- package/lib/commonjs/components/Attachment/VideoThumbnail.js +3 -3
- package/lib/commonjs/components/Attachment/VideoThumbnail.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +5 -8
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +2 -2
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js +9 -0
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js.map +1 -0
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js +10 -78
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerGenericContent.js +83 -0
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerGenericContent.js.map +1 -0
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +3 -3
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +3 -3
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +47 -36
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -2
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +14 -4
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelList.js +4 -4
- package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/commonjs/components/ChannelList/{ChannelListMessenger.js → ChannelListView.js} +9 -9
- package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -0
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +16 -9
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/{module/components/ChannelPreview/ChannelPreviewMessenger.js → commonjs/components/ChannelPreview/ChannelPreviewView.js} +8 -8
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +2 -2
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +2 -2
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +4 -4
- package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/types.js +4 -0
- package/lib/commonjs/components/ImageGallery/components/types.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js +2 -2
- package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +21 -16
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/Headers/MessageReminderHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/Headers/MessageSavedForLaterHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -0
- package/lib/commonjs/components/Message/MessageItemView/Headers/index.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple/MessageAvatar.js → commonjs/components/Message/MessageItemView/MessageAuthor.js} +10 -10
- package/lib/commonjs/components/Message/MessageItemView/MessageAuthor.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageBlocked.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/MessageBlocked.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageBounce.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageBubble.js +14 -88
- package/lib/commonjs/components/Message/MessageItemView/MessageBubble.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageContent.js +98 -63
- package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.js +4 -4
- package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageError.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageError.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageFooter.js +8 -3
- package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageHeader.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple/MessageSimple.js → MessageItemView/MessageItemView.js} +88 -84
- package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageReplies.js +3 -3
- package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/MessageRepliesAvatars.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageStatus.js +10 -32
- package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageSwipeContent.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/MessageSwipeContent.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/MessageTextContainer.js +7 -7
- package/lib/commonjs/components/Message/MessageItemView/MessageTextContainer.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/ReactionList/ReactionListBottom.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/ReactionList/ReactionListClustered.js +3 -3
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.js +3 -3
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/StreamingMessageView.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/StreamingMessageView.js.map +1 -0
- package/lib/commonjs/components/Message/MessageItemView/utils/generateMarkdownText.js.map +1 -0
- package/lib/commonjs/components/Message/MessageItemView/utils/generateMarkdownText.test.js.map +1 -0
- package/lib/commonjs/components/Message/MessageItemView/utils/parseLinks.js.map +1 -0
- package/lib/commonjs/components/Message/MessageItemView/utils/parseLinks.test.js.map +1 -0
- package/lib/{module/components/Message/MessageSimple → commonjs/components/Message/MessageItemView}/utils/renderText.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/utils/renderText.js.map +1 -0
- package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/utils/renderText.test.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +2 -0
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/MessageInput/{MessageInput.js → MessageComposer.js} +18 -12
- package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -0
- package/lib/commonjs/components/MessageInput/MessageComposerLeadingView.js +1 -1
- package/lib/commonjs/components/MessageInput/MessageComposerLeadingView.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js +2 -2
- package/lib/commonjs/components/MessageInput/MessageInputHeaderView.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInputTrailingView.js +1 -1
- package/lib/commonjs/components/MessageInput/MessageInputTrailingView.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +2 -2
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/StopMessageStreamingButton.js +2 -2
- package/lib/commonjs/components/MessageInput/StopMessageStreamingButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +16 -11
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +5 -5
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js +9 -9
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +6 -6
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +2 -2
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js +2 -3
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js +2 -2
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js +1 -1
- package/lib/commonjs/components/MessageInput/components/LinkPreviewList.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +3 -3
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageInput/contexts/MicPositionContext.js +1 -1
- package/lib/commonjs/components/MessageInput/contexts/MicPositionContext.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js +5 -16
- package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageFlashList.js +12 -5
- package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageSystem.js +1 -1
- package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/EmojiPickerList.js +5 -5
- package/lib/commonjs/components/MessageMenu/EmojiPickerList.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js +1 -8
- package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +1 -0
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/utils/toUnicodeScalarString.js +12 -0
- package/lib/commonjs/components/MessageMenu/utils/toUnicodeScalarString.js.map +1 -0
- package/lib/commonjs/components/Poll/components/PollAnswersList.js +52 -45
- package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollOption.js +24 -14
- package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +4 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js +46 -19
- package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/commonjs/components/Poll/hooks/usePollState.js +6 -3
- package/lib/commonjs/components/Poll/hooks/usePollState.js.map +1 -1
- package/lib/commonjs/components/Thread/Thread.js +6 -6
- package/lib/commonjs/components/Thread/Thread.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItem.js +46 -15
- package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js +23 -5
- package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
- package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js +48 -33
- package/lib/commonjs/components/UIComponents/PortalWhileClosingView.js.map +1 -1
- package/lib/commonjs/components/index.js +73 -40
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/ui/SpeedSettingsButton.js +3 -3
- package/lib/commonjs/components/ui/SpeedSettingsButton.js.map +1 -1
- package/lib/commonjs/components/ui/VideoPlayIndicator.js +3 -3
- package/lib/commonjs/components/ui/VideoPlayIndicator.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +15 -12
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js +18 -0
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -0
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -2
- 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/themeContext/utils/theme.js +12 -11
- package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/commonjs/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
- package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js +2 -2
- package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
- package/lib/commonjs/hooks/useAttachmentPickerState.js +2 -2
- package/lib/commonjs/hooks/useAttachmentPickerState.js.map +1 -1
- package/lib/commonjs/icons/index.js +11 -0
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/state-store/message-overlay-store.js +11 -1
- package/lib/commonjs/state-store/message-overlay-store.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js +1 -1
- package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
- package/lib/module/components/Attachment/Audio/AudioAttachment.js +2 -3
- package/lib/module/components/Attachment/Audio/AudioAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachment.js +1 -1
- package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachmentGroup.js +2 -2
- package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/module/components/Attachment/FileIcon.js +2 -2
- package/lib/module/components/Attachment/FileIcon.js.map +1 -1
- package/lib/module/components/Attachment/FilePreview.js +2 -2
- package/lib/module/components/Attachment/FilePreview.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +4 -4
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/Giphy/Giphy.js +2 -2
- package/lib/module/components/Attachment/Giphy/Giphy.js.map +1 -1
- package/lib/module/components/Attachment/Giphy/GiphyImage.js +1 -1
- package/lib/module/components/Attachment/Giphy/GiphyImage.js.map +1 -1
- package/lib/module/components/Attachment/UnsupportedAttachment.js +2 -2
- package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/module/components/Attachment/UrlPreview/URLPreview.js +2 -2
- package/lib/module/components/Attachment/UrlPreview/URLPreview.js.map +1 -1
- package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js +2 -2
- package/lib/module/components/Attachment/UrlPreview/URLPreviewCompact.js.map +1 -1
- package/lib/module/components/Attachment/VideoThumbnail.js +3 -3
- package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +5 -8
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +2 -2
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js +9 -0
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/shared.js.map +1 -0
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js +10 -78
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerGenericContent.js +83 -0
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerGenericContent.js.map +1 -0
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +2 -2
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +3 -3
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +4 -4
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +3 -3
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +47 -36
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -2
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +14 -4
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelList.js +4 -4
- package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/module/components/ChannelList/{ChannelListMessenger.js → ChannelListView.js} +9 -9
- package/lib/module/components/ChannelList/ChannelListView.js.map +1 -0
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +16 -9
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/{commonjs/components/ChannelPreview/ChannelPreviewMessenger.js → module/components/ChannelPreview/ChannelPreviewView.js} +8 -8
- package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -0
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +2 -2
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +2 -2
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGrid.js +4 -4
- package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/module/components/ImageGallery/components/types.js +4 -0
- package/lib/module/components/ImageGallery/components/types.js.map +1 -0
- package/lib/module/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js +2 -2
- package/lib/module/components/ImageGallery/hooks/useImageGalleryVideoPlayer.js.map +1 -1
- package/lib/module/components/Message/Message.js +21 -16
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.js +2 -2
- package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/Headers/MessageReminderHeader.js +2 -2
- package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/Headers/MessageSavedForLaterHeader.js +2 -2
- package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.js +2 -2
- package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -0
- package/lib/module/components/Message/MessageItemView/Headers/index.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple/MessageAvatar.js → module/components/Message/MessageItemView/MessageAuthor.js} +10 -10
- package/lib/module/components/Message/MessageItemView/MessageAuthor.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageBlocked.js +2 -2
- package/lib/module/components/Message/MessageItemView/MessageBlocked.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageBounce.js +1 -1
- package/lib/module/components/Message/MessageItemView/MessageBounce.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageBubble.js +14 -88
- package/lib/module/components/Message/MessageItemView/MessageBubble.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageContent.js +98 -63
- package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.js +4 -4
- package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageError.js +1 -1
- package/lib/module/components/Message/MessageItemView/MessageError.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageFooter.js +8 -3
- package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageHeader.js +1 -1
- package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple/MessageSimple.js → MessageItemView/MessageItemView.js} +88 -84
- package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageReplies.js +3 -3
- package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.js +2 -2
- package/lib/module/components/Message/MessageItemView/MessageRepliesAvatars.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageStatus.js +10 -32
- package/lib/module/components/Message/MessageItemView/MessageStatus.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageSwipeContent.js +2 -2
- package/lib/module/components/Message/MessageItemView/MessageSwipeContent.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/MessageTextContainer.js +7 -7
- package/lib/module/components/Message/MessageItemView/MessageTextContainer.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.js +2 -2
- package/lib/module/components/Message/MessageItemView/MessageTimestamp.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.js +1 -1
- package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/ReactionList/ReactionListBottom.js +2 -2
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListBottom.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/ReactionList/ReactionListClustered.js +3 -3
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.js +3 -3
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.js +2 -2
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.js +2 -2
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListTop.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/StreamingMessageView.js +2 -2
- package/lib/module/components/Message/MessageItemView/StreamingMessageView.js.map +1 -0
- package/lib/module/components/Message/MessageItemView/utils/generateMarkdownText.js.map +1 -0
- package/lib/module/components/Message/MessageItemView/utils/generateMarkdownText.test.js.map +1 -0
- package/lib/module/components/Message/MessageItemView/utils/parseLinks.js.map +1 -0
- package/lib/module/components/Message/MessageItemView/utils/parseLinks.test.js.map +1 -0
- package/lib/{commonjs/components/Message/MessageSimple → module/components/Message/MessageItemView}/utils/renderText.js +1 -1
- package/lib/module/components/Message/MessageItemView/utils/renderText.js.map +1 -0
- package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.js +1 -1
- package/lib/module/components/Message/MessageItemView/utils/renderText.test.js.map +1 -0
- package/lib/module/components/Message/hooks/useCreateMessageContext.js +2 -0
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/MessageInput/{MessageInput.js → MessageComposer.js} +18 -12
- package/lib/module/components/MessageInput/MessageComposer.js.map +1 -0
- package/lib/module/components/MessageInput/MessageComposerLeadingView.js +1 -1
- package/lib/module/components/MessageInput/MessageComposerLeadingView.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInputHeaderView.js +2 -2
- package/lib/module/components/MessageInput/MessageInputHeaderView.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInputTrailingView.js +1 -1
- package/lib/module/components/MessageInput/MessageInputTrailingView.js.map +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +2 -2
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/module/components/MessageInput/StopMessageStreamingButton.js +2 -2
- package/lib/module/components/MessageInput/StopMessageStreamingButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js +16 -11
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +5 -5
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js +9 -9
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +6 -6
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js +2 -2
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js +2 -3
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js +2 -2
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/index.js +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/module/components/MessageInput/components/LinkPreviewList.js +1 -1
- package/lib/module/components/MessageInput/components/LinkPreviewList.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/index.js +3 -3
- package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/module/components/MessageInput/contexts/MicPositionContext.js +1 -1
- package/lib/module/components/MessageInput/contexts/MicPositionContext.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useAudioRecorder.js +5 -16
- package/lib/module/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
- package/lib/module/components/MessageList/MessageFlashList.js +12 -5
- package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +1 -1
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/MessageSystem.js +1 -1
- package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/module/components/MessageMenu/EmojiPickerList.js +5 -5
- package/lib/module/components/MessageMenu/EmojiPickerList.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageReactionPicker.js +1 -8
- package/lib/module/components/MessageMenu/MessageReactionPicker.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageUserReactions.js +1 -0
- package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/module/components/MessageMenu/utils/toUnicodeScalarString.js +12 -0
- package/lib/module/components/MessageMenu/utils/toUnicodeScalarString.js.map +1 -0
- package/lib/module/components/Poll/components/PollAnswersList.js +52 -45
- package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/module/components/Poll/components/PollOption.js +24 -14
- package/lib/module/components/Poll/components/PollOption.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +4 -1
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResultItem.js +46 -19
- package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/module/components/Poll/hooks/usePollState.js +6 -3
- package/lib/module/components/Poll/hooks/usePollState.js.map +1 -1
- package/lib/module/components/Thread/Thread.js +6 -6
- package/lib/module/components/Thread/Thread.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItem.js +46 -15
- package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js +23 -5
- package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
- package/lib/module/components/UIComponents/PortalWhileClosingView.js +48 -33
- package/lib/module/components/UIComponents/PortalWhileClosingView.js.map +1 -1
- package/lib/module/components/index.js +73 -40
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/ui/SpeedSettingsButton.js +3 -3
- package/lib/module/components/ui/SpeedSettingsButton.js.map +1 -1
- package/lib/module/components/ui/VideoPlayIndicator.js +3 -3
- package/lib/module/components/ui/VideoPlayIndicator.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +15 -12
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js +18 -0
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContextBase.js.map +1 -0
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -2
- 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/themeContext/utils/theme.js +12 -11
- package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/module/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
- package/lib/module/hooks/messagePreview/useMessagePreviewText.js +2 -2
- package/lib/module/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
- package/lib/module/hooks/useAttachmentPickerState.js +2 -2
- package/lib/module/hooks/useAttachmentPickerState.js.map +1 -1
- package/lib/module/icons/index.js +11 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/state-store/message-overlay-store.js +11 -1
- package/lib/module/state-store/message-overlay-store.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts +1 -8
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/shared.d.ts +8 -0
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/shared.d.ts.map +1 -0
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts +2 -10
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerGenericContent.d.ts +13 -0
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerGenericContent.d.ts.map +1 -0
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +1 -1
- package/lib/typescript/components/Channel/Channel.d.ts +2 -2
- package/lib/typescript/components/Channel/Channel.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/ChannelList/ChannelList.d.ts +4 -4
- package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts +15 -0
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -0
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +1 -1
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +2 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/{ChannelPreviewMessenger.d.ts → ChannelPreviewView.d.ts} +5 -5
- package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -0
- package/lib/typescript/components/Chat/Chat.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +1 -11
- package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +1 -5
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryVideoControl.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryVideoControl.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +1 -4
- package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts.map +1 -1
- package/lib/typescript/components/ImageGallery/components/types.d.ts +21 -0
- package/lib/typescript/components/ImageGallery/components/types.d.ts.map +1 -0
- 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/Headers/MessagePinnedHeader.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/Headers/MessageReminderHeader.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/Headers/index.d.ts.map +1 -0
- package/lib/typescript/components/Message/{MessageSimple/MessageAvatar.d.ts → MessageItemView/MessageAuthor.d.ts} +5 -5
- package/lib/typescript/components/Message/MessageItemView/MessageAuthor.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageBlocked.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts +10 -0
- package/lib/typescript/components/Message/MessageItemView/MessageBubble.d.ts.map +1 -0
- package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageContent.d.ts +3 -4
- package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageError.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +14 -0
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageRepliesAvatars.d.ts.map +1 -0
- package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageStatus.d.ts +1 -5
- package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageSwipeContent.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageTextContainer.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageTimestamp.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListBottom.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListClustered.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListItem.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListItemWrapper.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/ReactionList/ReactionListTop.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/StreamingMessageView.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/utils/generateMarkdownText.d.ts.map +1 -0
- package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/utils/parseLinks.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/utils/parseLinks.test.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/utils/renderText.d.ts.map +1 -0
- package/lib/typescript/components/Message/MessageItemView/utils/renderText.test.d.ts.map +1 -0
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useStreamingMessage.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useStreamingMessage.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts +33 -0
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -0
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecorder.d.ts +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecorder.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/InputButtons/AttachButton.d.ts +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/MessageInput/hooks/useAudioRecorder.d.ts +1 -3
- package/lib/typescript/components/MessageInput/hooks/useAudioRecorder.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/MessageMenu/MessageReactionPicker.d.ts +0 -1
- package/lib/typescript/components/MessageMenu/MessageReactionPicker.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/utils/toUnicodeScalarString.d.ts +2 -0
- package/lib/typescript/components/MessageMenu/utils/toUnicodeScalarString.d.ts.map +1 -0
- package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollOption.d.ts +2 -1
- package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -1
- package/lib/typescript/components/Poll/hooks/usePollState.d.ts +1 -0
- package/lib/typescript/components/Poll/hooks/usePollState.d.ts.map +1 -1
- package/lib/typescript/components/Thread/Thread.d.ts +9 -9
- package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListItemMessagePreview.d.ts.map +1 -1
- package/lib/typescript/components/UIComponents/PortalWhileClosingView.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +28 -25
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +6 -6
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +3 -22
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts +19 -0
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContextBase.d.ts.map +1 -0
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +6 -0
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +8 -7
- 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 +56 -36
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
- package/lib/typescript/contexts/themeContext/ThemeContext.d.ts +11 -10
- package/lib/typescript/contexts/themeContext/ThemeContext.d.ts.map +1 -1
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +11 -10
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts.map +1 -1
- package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts +2 -1
- package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts.map +1 -1
- package/lib/typescript/icons/index.d.ts +1 -0
- package/lib/typescript/icons/index.d.ts.map +1 -1
- package/lib/typescript/state-store/message-overlay-store.d.ts +4 -0
- package/lib/typescript/state-store/message-overlay-store.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/offline-support/offline-feature.js +1 -1
- package/src/components/AITypingIndicatorView/AITypingIndicatorView.tsx +1 -1
- package/src/components/Attachment/Audio/AudioAttachment.tsx +2 -3
- package/src/components/Attachment/FileAttachment.tsx +1 -1
- package/src/components/Attachment/FileAttachmentGroup.tsx +2 -2
- package/src/components/Attachment/FileIcon.tsx +2 -2
- package/src/components/Attachment/FilePreview.tsx +2 -2
- package/src/components/Attachment/Gallery.tsx +4 -4
- package/src/components/Attachment/Giphy/Giphy.tsx +2 -2
- package/src/components/Attachment/Giphy/GiphyImage.tsx +1 -1
- package/src/components/Attachment/UnsupportedAttachment.tsx +2 -2
- package/src/components/Attachment/UrlPreview/URLPreview.tsx +2 -2
- package/src/components/Attachment/UrlPreview/URLPreviewCompact.tsx +2 -2
- package/src/components/Attachment/VideoThumbnail.tsx +2 -2
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.tsx +3 -12
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +1 -1
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/shared.ts +10 -0
- package/src/components/AttachmentPicker/components/AttachmentPickerContent.tsx +8 -84
- package/src/components/AttachmentPicker/components/AttachmentPickerGenericContent.tsx +90 -0
- package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +3 -3
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +1 -1
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +3 -3
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +4 -4
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +3 -3
- package/src/components/Channel/Channel.tsx +51 -38
- package/src/components/Channel/__tests__/ownCapabilities.test.js +2 -2
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +2 -2
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +14 -4
- package/src/components/ChannelList/ChannelList.tsx +7 -7
- package/src/components/ChannelList/{ChannelListMessenger.tsx → ChannelListView.tsx} +9 -9
- package/src/components/ChannelList/__tests__/ChannelList.test.js +45 -2
- package/src/components/ChannelList/__tests__/{ChannelListMessenger.test.js → ChannelListView.test.js} +4 -4
- package/src/components/ChannelList/hooks/usePaginatedChannels.ts +8 -5
- package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +2 -2
- package/src/components/ChannelPreview/{ChannelPreviewMessenger.tsx → ChannelPreviewView.tsx} +10 -12
- package/src/components/ChannelPreview/__tests__/{ChannelPreviewMessenger.test.js → ChannelPreviewView.test.js} +3 -3
- package/src/components/Chat/Chat.tsx +1 -1
- package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +4 -24
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +4 -12
- package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +1 -1
- package/src/components/ImageGallery/components/ImageGrid.tsx +4 -7
- package/src/components/ImageGallery/components/types.ts +25 -0
- package/src/components/ImageGallery/hooks/useImageGalleryVideoPlayer.ts +1 -1
- package/src/components/KeyboardCompatibleView/KeyboardCompatibleView.tsx +1 -1
- package/src/components/Message/Message.tsx +28 -21
- package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessageReminderHeader.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/Headers/MessageSavedForLaterHeader.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.tsx +1 -1
- package/src/components/Message/{MessageSimple/MessageAvatar.tsx → MessageItemView/MessageAuthor.tsx} +14 -14
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageBlocked.tsx +1 -1
- package/src/components/Message/MessageItemView/MessageBubble.tsx +145 -0
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageContent.tsx +135 -101
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.tsx +3 -3
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageFooter.tsx +10 -4
- package/src/components/Message/{MessageSimple/MessageSimple.tsx → MessageItemView/MessageItemView.tsx} +119 -99
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageReplies.tsx +2 -2
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageStatus.tsx +6 -39
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageSwipeContent.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageTextContainer.tsx +2 -2
- package/src/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListBottom.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListClustered.tsx +2 -2
- package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.tsx +2 -2
- package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/StreamingMessageView.tsx +1 -1
- package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/Message.test.js +4 -4
- package/src/components/Message/{MessageSimple/__tests__/MessageAvatar.test.js → MessageItemView/__tests__/MessageAuthor.test.js} +8 -8
- package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageContent.test.js +102 -13
- package/src/components/Message/{MessageSimple/__tests__/MessageSimple.test.js → MessageItemView/__tests__/MessageItemView.test.js} +52 -9
- package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/ReactionListTop.test.js +0 -3
- package/src/components/Message/{MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap → MessageItemView/__tests__/__snapshots__/MessageAuthor.test.js.snap} +2 -2
- package/src/components/Message/hooks/useCreateMessageContext.ts +2 -0
- package/src/components/Message/hooks/useStreamingMessage.ts +1 -1
- package/src/components/MessageInput/{MessageInput.tsx → MessageComposer.tsx} +25 -20
- package/src/components/MessageInput/MessageComposerLeadingView.tsx +1 -1
- package/src/components/MessageInput/MessageInputHeaderView.tsx +2 -2
- package/src/components/MessageInput/MessageInputTrailingView.tsx +1 -1
- package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
- package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +2 -2
- package/src/components/MessageInput/StopMessageStreamingButton.tsx +2 -2
- package/src/components/MessageInput/__tests__/{MessageInput.test.js → MessageComposer.test.js} +4 -4
- package/src/components/MessageInput/__tests__/SendMessageDisallowedIndicator.test.js +4 -4
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.tsx +1 -1
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadPreviewList.tsx +10 -6
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.tsx +5 -5
- package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +1 -1
- package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +1 -1
- package/src/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.tsx +1 -1
- package/src/components/MessageInput/components/AudioRecorder/AudioRecorder.tsx +12 -12
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +7 -7
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingInProgress.tsx +2 -2
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.tsx +1 -1
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingPreview.tsx +2 -3
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingWaveform.tsx +2 -2
- package/src/components/MessageInput/components/InputButtons/AttachButton.tsx +2 -2
- package/src/components/MessageInput/components/InputButtons/index.tsx +1 -1
- package/src/components/MessageInput/components/LinkPreviewList.tsx +1 -1
- package/src/components/MessageInput/components/OutputButtons/EditButton.tsx +1 -1
- package/src/components/MessageInput/components/OutputButtons/SendButton.tsx +1 -1
- package/src/components/MessageInput/components/OutputButtons/index.tsx +4 -4
- package/src/components/MessageInput/contexts/MicPositionContext.tsx +1 -1
- package/src/components/MessageInput/hooks/useAudioRecorder.tsx +7 -18
- package/src/components/MessageList/MessageFlashList.tsx +13 -4
- package/src/components/MessageList/MessageList.tsx +1 -1
- package/src/components/MessageList/MessageSystem.tsx +1 -1
- package/src/components/MessageMenu/EmojiPickerList.tsx +2 -2
- package/src/components/MessageMenu/MessageReactionPicker.tsx +0 -8
- package/src/components/MessageMenu/MessageUserReactions.tsx +1 -0
- package/src/components/MessageMenu/utils/toUnicodeScalarString.ts +5 -0
- package/src/components/Poll/components/PollAnswersList.tsx +45 -32
- package/src/components/Poll/components/PollOption.tsx +24 -15
- package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +4 -1
- package/src/components/Poll/components/PollResults/PollResultItem.tsx +36 -12
- package/src/components/Poll/hooks/usePollState.ts +4 -0
- package/src/components/Thread/Thread.tsx +15 -15
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +425 -385
- package/src/components/ThreadList/ThreadListItem.tsx +56 -10
- package/src/components/ThreadList/ThreadListItemMessagePreview.tsx +18 -3
- package/src/components/UIComponents/PortalWhileClosingView.tsx +50 -34
- package/src/components/index.ts +28 -25
- package/src/components/ui/SpeedSettingsButton.tsx +1 -1
- package/src/components/ui/VideoPlayIndicator.tsx +1 -1
- package/src/contexts/channelsContext/ChannelsContext.tsx +6 -6
- package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +9 -44
- package/src/contexts/imageGalleryContext/ImageGalleryContextBase.tsx +44 -0
- package/src/contexts/messageContext/MessageContext.tsx +6 -0
- package/src/contexts/messageInputContext/MessageInputContext.tsx +9 -8
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -2
- package/src/contexts/messagesContext/MessagesContext.tsx +58 -36
- package/src/contexts/themeContext/utils/theme.ts +22 -20
- package/src/contexts/threadsContext/ThreadListItemContext.tsx +2 -1
- package/src/hooks/messagePreview/useMessagePreviewText.tsx +1 -1
- package/src/hooks/useAttachmentPickerState.ts +1 -1
- package/src/icons/index.ts +1 -0
- package/src/state-store/message-overlay-store.ts +8 -0
- package/src/version.json +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +0 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/Headers/MessagePinnedHeader.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/Headers/MessageReminderHeader.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/Headers/SentToChannelHeader.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/Headers/index.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageBlocked.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageBounce.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageBubble.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageError.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageHeader.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSwipeContent.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTimestamp.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageWrapper.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListClustered.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListItem.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/StreamingMessageView.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/generateMarkdownText.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/generateMarkdownText.test.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +0 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +0 -1
- package/lib/commonjs/components/MessageInput/MessageInput.js.map +0 -1
- package/lib/module/components/ChannelList/ChannelListMessenger.js.map +0 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/Headers/MessagePinnedHeader.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/Headers/MessageReminderHeader.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/Headers/SentToChannelHeader.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/Headers/index.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageBlocked.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageBounce.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageBubble.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageError.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageHeader.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageSwipeContent.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageTimestamp.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/MessageWrapper.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListClustered.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListItem.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/StreamingMessageView.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/generateMarkdownText.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/generateMarkdownText.test.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +0 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +0 -1
- package/lib/module/components/MessageInput/MessageInput.js.map +0 -1
- package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +0 -15
- package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts.map +0 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/Headers/MessagePinnedHeader.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/Headers/MessageReminderHeader.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/Headers/MessageSavedForLaterHeader.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/Headers/SentToChannelHeader.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/Headers/index.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageBlocked.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageBounce.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageBubble.d.ts +0 -12
- package/lib/typescript/components/Message/MessageSimple/MessageBubble.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageError.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageHeader.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +0 -21
- package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageSwipeContent.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageTimestamp.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/MessageWrapper.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListBottom.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListClustered.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListItem.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListItemWrapper.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListTop.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/StreamingMessageView.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/utils/generateMarkdownText.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts.map +0 -1
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts.map +0 -1
- package/lib/typescript/components/MessageInput/MessageInput.d.ts +0 -33
- package/lib/typescript/components/MessageInput/MessageInput.d.ts.map +0 -1
- package/src/components/Message/MessageSimple/MessageBubble.tsx +0 -264
- /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/Headers/index.js +0 -0
- /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.js +0 -0
- /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.js +0 -0
- /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.js +0 -0
- /package/lib/commonjs/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.js +0 -0
- /package/lib/module/components/Message/{MessageSimple → MessageItemView}/Headers/index.js +0 -0
- /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.js +0 -0
- /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.js +0 -0
- /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.js +0 -0
- /package/lib/module/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.js +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessagePinnedHeader.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessageReminderHeader.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/MessageSavedForLaterHeader.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/SentToChannelHeader.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/Headers/index.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageBlocked.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageBounce.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageDeleted.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageError.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageFooter.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageHeader.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageReplies.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageRepliesAvatars.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageSwipeContent.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageTextContainer.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageTimestamp.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListBottom.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListClustered.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItem.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListItemWrapper.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/ReactionList/ReactionListTop.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/StreamingMessageView.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/renderText.d.ts +0 -0
- /package/lib/typescript/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.d.ts +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/Headers/index.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/MessageBounce.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/MessageError.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/MessageHeader.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/MessageWrapper.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessagePinnedHeader.test.js +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageReplies.test.js +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageStatus.test.js +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/MessageTextContainer.test.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/ReactionListBottom.test.js +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/__tests__/__snapshots__/MessageTextContainer.test.tsx.snap +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.test.ts +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/generateMarkdownText.ts +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.test.ts +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/parseLinks.ts +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/renderText.test.tsx +0 -0
- /package/src/components/Message/{MessageSimple → MessageItemView}/utils/renderText.tsx +0 -0
package/src/components/ChannelPreview/{ChannelPreviewMessenger.tsx → ChannelPreviewView.tsx}
RENAMED
|
@@ -20,7 +20,7 @@ import { useStableCallback } from '../../hooks';
|
|
|
20
20
|
import { primitives } from '../../theme';
|
|
21
21
|
import { ChannelAvatar } from '../ui/Avatar/ChannelAvatar';
|
|
22
22
|
|
|
23
|
-
export type
|
|
23
|
+
export type ChannelPreviewViewPropsWithContext = Pick<ChannelPreviewProps, 'channel'> &
|
|
24
24
|
Pick<
|
|
25
25
|
ChannelsContextValue,
|
|
26
26
|
| 'maxUnreadCount'
|
|
@@ -50,7 +50,7 @@ export type ChannelPreviewMessengerPropsWithContext = Pick<ChannelPreviewProps,
|
|
|
50
50
|
lastMessage?: LastMessageType;
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
const
|
|
53
|
+
const ChannelPreviewViewWithContext = (props: ChannelPreviewViewPropsWithContext) => {
|
|
54
54
|
const {
|
|
55
55
|
channel,
|
|
56
56
|
formatLatestMessageDate,
|
|
@@ -146,20 +146,18 @@ const ChannelPreviewMessengerWithContext = (props: ChannelPreviewMessengerPropsW
|
|
|
146
146
|
);
|
|
147
147
|
};
|
|
148
148
|
|
|
149
|
-
export type
|
|
150
|
-
|
|
151
|
-
> &
|
|
152
|
-
Pick<ChannelPreviewMessengerPropsWithContext, 'channel'>;
|
|
149
|
+
export type ChannelPreviewViewProps = Partial<Omit<ChannelPreviewViewPropsWithContext, 'channel'>> &
|
|
150
|
+
Pick<ChannelPreviewViewPropsWithContext, 'channel'>;
|
|
153
151
|
|
|
154
|
-
const
|
|
155
|
-
|
|
156
|
-
) as typeof
|
|
152
|
+
const MemoizedChannelPreviewViewWithContext = React.memo(
|
|
153
|
+
ChannelPreviewViewWithContext,
|
|
154
|
+
) as typeof ChannelPreviewViewWithContext;
|
|
157
155
|
|
|
158
156
|
/**
|
|
159
157
|
* This UI component displays an individual preview item for each channel in a list. It also receives all props
|
|
160
158
|
* from the ChannelPreview component.
|
|
161
159
|
*/
|
|
162
|
-
export const
|
|
160
|
+
export const ChannelPreviewView = (props: ChannelPreviewViewProps) => {
|
|
163
161
|
const {
|
|
164
162
|
forceUpdate,
|
|
165
163
|
maxUnreadCount,
|
|
@@ -172,7 +170,7 @@ export const ChannelPreviewMessenger = (props: ChannelPreviewMessengerProps) =>
|
|
|
172
170
|
mutedStatusPosition,
|
|
173
171
|
} = useChannelsContext();
|
|
174
172
|
return (
|
|
175
|
-
<
|
|
173
|
+
<MemoizedChannelPreviewViewWithContext
|
|
176
174
|
{...{
|
|
177
175
|
forceUpdate,
|
|
178
176
|
maxUnreadCount,
|
|
@@ -189,7 +187,7 @@ export const ChannelPreviewMessenger = (props: ChannelPreviewMessengerProps) =>
|
|
|
189
187
|
);
|
|
190
188
|
};
|
|
191
189
|
|
|
192
|
-
|
|
190
|
+
ChannelPreviewView.displayName = 'ChannelPreviewView{channelPreview}';
|
|
193
191
|
|
|
194
192
|
const useStyles = () => {
|
|
195
193
|
const {
|
|
@@ -11,16 +11,16 @@ import { generateMessage } from '../../../mock-builders/generator/message';
|
|
|
11
11
|
import { generateUser } from '../../../mock-builders/generator/user';
|
|
12
12
|
import { getTestClientWithUser } from '../../../mock-builders/mock';
|
|
13
13
|
import { Chat } from '../../Chat/Chat';
|
|
14
|
-
import {
|
|
14
|
+
import { ChannelPreviewView } from '../ChannelPreviewView';
|
|
15
15
|
|
|
16
|
-
describe('
|
|
16
|
+
describe('ChannelPreviewView', () => {
|
|
17
17
|
const clientUser = generateUser();
|
|
18
18
|
let chatClient;
|
|
19
19
|
let channel;
|
|
20
20
|
|
|
21
21
|
const getComponent = (props = {}) => (
|
|
22
22
|
<Chat client={chatClient}>
|
|
23
|
-
<
|
|
23
|
+
<ChannelPreviewView
|
|
24
24
|
channel={channel}
|
|
25
25
|
client={chatClient}
|
|
26
26
|
latestMessagePreview={{
|
|
@@ -109,7 +109,7 @@ export type ChatProps = Pick<ChatContextValue, 'client'> &
|
|
|
109
109
|
* import type { DeepPartial, Theme } from 'stream-chat-react-native';
|
|
110
110
|
*
|
|
111
111
|
* const theme: DeepPartial<Theme> = {
|
|
112
|
-
*
|
|
112
|
+
* messageItemView: {
|
|
113
113
|
* file: {
|
|
114
114
|
* container: {
|
|
115
115
|
* backgroundColor: 'red',
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
import React, { useMemo, useRef, useState } from 'react';
|
|
2
2
|
import { ActivityIndicator, StyleSheet, Text, View, ViewStyle } from 'react-native';
|
|
3
|
-
import Animated, {
|
|
4
|
-
Extrapolation,
|
|
5
|
-
interpolate,
|
|
6
|
-
SharedValue,
|
|
7
|
-
useAnimatedStyle,
|
|
8
|
-
} from 'react-native-reanimated';
|
|
3
|
+
import Animated, { Extrapolation, interpolate, useAnimatedStyle } from 'react-native-reanimated';
|
|
9
4
|
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
} from '../../../contexts/imageGalleryContext/ImageGalleryContext';
|
|
5
|
+
import type { ImageGalleryFooterProps, ImageGalleryVideoControlProps } from './types';
|
|
6
|
+
|
|
7
|
+
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
|
|
14
8
|
import { useTheme } from '../../../contexts/themeContext/ThemeContext';
|
|
15
9
|
import { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';
|
|
16
10
|
import { useStateStore } from '../../../hooks/useStateStore';
|
|
@@ -38,24 +32,10 @@ export type ImageGalleryFooterCustomComponent = ({
|
|
|
38
32
|
shareMenuOpen: boolean;
|
|
39
33
|
}) => React.ReactElement | null;
|
|
40
34
|
|
|
41
|
-
export type ImageGalleryVideoControlProps = {
|
|
42
|
-
attachmentId: string;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
35
|
export type ImageGalleryVideoControlComponent = ({
|
|
46
36
|
attachmentId,
|
|
47
37
|
}: ImageGalleryVideoControlProps) => React.ReactElement | null;
|
|
48
38
|
|
|
49
|
-
export type ImageGalleryFooterProps = Pick<
|
|
50
|
-
ImageGalleryProviderProps,
|
|
51
|
-
'ImageGalleryVideoControls'
|
|
52
|
-
> & {
|
|
53
|
-
accessibilityLabel: string;
|
|
54
|
-
opacity: SharedValue<number>;
|
|
55
|
-
openGridView: () => void;
|
|
56
|
-
visible: SharedValue<number>;
|
|
57
|
-
};
|
|
58
|
-
|
|
59
39
|
const imageGallerySelector = (state: ImageGalleryState) => ({
|
|
60
40
|
asset: state.assets[state.currentIndex],
|
|
61
41
|
currentIndex: state.currentIndex,
|
|
@@ -2,14 +2,11 @@ import React, { useEffect, useMemo, useState } from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { StyleSheet, Text, View, ViewStyle } from 'react-native';
|
|
4
4
|
|
|
5
|
-
import Animated, {
|
|
6
|
-
Extrapolation,
|
|
7
|
-
interpolate,
|
|
8
|
-
SharedValue,
|
|
9
|
-
useAnimatedStyle,
|
|
10
|
-
} from 'react-native-reanimated';
|
|
5
|
+
import Animated, { Extrapolation, interpolate, useAnimatedStyle } from 'react-native-reanimated';
|
|
11
6
|
|
|
12
|
-
import {
|
|
7
|
+
import type { ImageGalleryHeaderProps } from './types';
|
|
8
|
+
|
|
9
|
+
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
|
|
13
10
|
import { useOverlayContext } from '../../../contexts/overlayContext/OverlayContext';
|
|
14
11
|
import { useTheme } from '../../../contexts/themeContext/ThemeContext';
|
|
15
12
|
import { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';
|
|
@@ -26,11 +23,6 @@ const ReanimatedSafeAreaView = Animated.createAnimatedComponent
|
|
|
26
23
|
? Animated.createAnimatedComponent(SafeAreaView)
|
|
27
24
|
: SafeAreaView;
|
|
28
25
|
|
|
29
|
-
export type ImageGalleryHeaderProps = {
|
|
30
|
-
opacity: SharedValue<number>;
|
|
31
|
-
visible: SharedValue<number>;
|
|
32
|
-
};
|
|
33
|
-
|
|
34
26
|
const imageGallerySelector = (state: ImageGalleryState) => ({
|
|
35
27
|
asset: state.assets[state.currentIndex],
|
|
36
28
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useCallback, useMemo } from 'react';
|
|
2
2
|
import { StyleSheet, Text, View } from 'react-native';
|
|
3
3
|
|
|
4
|
-
import { ImageGalleryVideoControlProps } from './
|
|
4
|
+
import type { ImageGalleryVideoControlProps } from './types';
|
|
5
5
|
|
|
6
6
|
import { useTheme } from '../../../contexts/themeContext/ThemeContext';
|
|
7
7
|
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
2
|
import { Image, Pressable, StyleSheet, View } from 'react-native';
|
|
3
3
|
|
|
4
|
+
import type { ImageGalleryGridProps } from './types';
|
|
5
|
+
|
|
4
6
|
import { VideoThumbnail } from '../../../components/Attachment/VideoThumbnail';
|
|
5
|
-
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/
|
|
7
|
+
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
|
|
6
8
|
import { useTheme } from '../../../contexts/themeContext/ThemeContext';
|
|
7
9
|
import { useStateStore } from '../../../hooks/useStateStore';
|
|
8
10
|
import { useViewport } from '../../../hooks/useViewport';
|
|
@@ -11,7 +13,7 @@ import type {
|
|
|
11
13
|
ImageGalleryState,
|
|
12
14
|
} from '../../../state-store/image-gallery-state-store';
|
|
13
15
|
import { FileTypes } from '../../../types/types';
|
|
14
|
-
import { StreamBottomSheetModalFlatList } from '../../UIComponents';
|
|
16
|
+
import { StreamBottomSheetModalFlatList } from '../../UIComponents/StreamBottomSheetModalFlatList';
|
|
15
17
|
|
|
16
18
|
export type ImageGalleryGridImageComponent = ({
|
|
17
19
|
item,
|
|
@@ -51,11 +53,6 @@ const GridImage = ({ item }: { item: GridImageItem }) => {
|
|
|
51
53
|
|
|
52
54
|
const renderItem = ({ item }: { item: GridImageItem }) => <GridImage item={item} />;
|
|
53
55
|
|
|
54
|
-
export type ImageGalleryGridProps = {
|
|
55
|
-
closeGridView: () => void;
|
|
56
|
-
numberOfImageGalleryGridColumns?: number;
|
|
57
|
-
};
|
|
58
|
-
|
|
59
56
|
const imageGallerySelector = (state: ImageGalleryState) => ({
|
|
60
57
|
assets: state.assets,
|
|
61
58
|
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
|
|
3
|
+
import type { SharedValue } from 'react-native-reanimated';
|
|
4
|
+
|
|
5
|
+
export type ImageGalleryVideoControlProps = {
|
|
6
|
+
attachmentId: string;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export type ImageGalleryHeaderProps = {
|
|
10
|
+
opacity: SharedValue<number>;
|
|
11
|
+
visible: SharedValue<number>;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export type ImageGalleryFooterProps = {
|
|
15
|
+
accessibilityLabel: string;
|
|
16
|
+
ImageGalleryVideoControls?: React.ComponentType<ImageGalleryVideoControlProps>;
|
|
17
|
+
opacity: SharedValue<number>;
|
|
18
|
+
openGridView: () => void;
|
|
19
|
+
visible: SharedValue<number>;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export type ImageGalleryGridProps = {
|
|
23
|
+
closeGridView: () => void;
|
|
24
|
+
numberOfImageGalleryGridColumns?: number;
|
|
25
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
|
|
3
|
-
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/
|
|
3
|
+
import { useImageGalleryContext } from '../../../contexts/imageGalleryContext/ImageGalleryContextBase';
|
|
4
4
|
import { VideoPlayerOptions } from '../../../state-store/video-player';
|
|
5
5
|
|
|
6
6
|
export type UseImageGalleryVideoPlayerProps = VideoPlayerOptions;
|
|
@@ -41,7 +41,7 @@ export class KeyboardCompatibleView extends React.Component<
|
|
|
41
41
|
> = {
|
|
42
42
|
behavior: Platform.OS === 'ios' ? 'padding' : 'position',
|
|
43
43
|
enabled: true,
|
|
44
|
-
keyboardVerticalOffset: Platform.OS === 'ios' ? 86.5 : -300, // default
|
|
44
|
+
keyboardVerticalOffset: Platform.OS === 'ios' ? 86.5 : -300, // default MessageComposer height
|
|
45
45
|
};
|
|
46
46
|
|
|
47
47
|
_frame: LayoutRectangle | null = null;
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
GestureResponderEvent,
|
|
4
|
-
StyleProp,
|
|
5
|
-
StyleSheet,
|
|
6
|
-
useWindowDimensions,
|
|
7
|
-
View,
|
|
8
|
-
ViewStyle,
|
|
9
|
-
} from 'react-native';
|
|
2
|
+
import { GestureResponderEvent, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';
|
|
10
3
|
|
|
11
4
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
12
5
|
import { Portal } from 'react-native-teleport';
|
|
@@ -54,6 +47,7 @@ import { isVideoPlayerAvailable, NativeHandlers } from '../../native';
|
|
|
54
47
|
import {
|
|
55
48
|
closeOverlay,
|
|
56
49
|
openOverlay,
|
|
50
|
+
Rect,
|
|
57
51
|
setOverlayBottomH,
|
|
58
52
|
setOverlayMessageH,
|
|
59
53
|
setOverlayTopH,
|
|
@@ -209,7 +203,7 @@ export type MessagePropsWithContext = Pick<
|
|
|
209
203
|
| 'messageContentOrder'
|
|
210
204
|
| 'MessageBounce'
|
|
211
205
|
| 'MessageBlocked'
|
|
212
|
-
| '
|
|
206
|
+
| 'MessageItemView'
|
|
213
207
|
| 'onLongPressMessage'
|
|
214
208
|
| 'onPressInMessage'
|
|
215
209
|
| 'onPressMessage'
|
|
@@ -293,7 +287,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
293
287
|
MessageBounce,
|
|
294
288
|
messageContentOrder: messageContentOrderProp,
|
|
295
289
|
messagesContext,
|
|
296
|
-
|
|
290
|
+
MessageItemView,
|
|
297
291
|
onLongPressMessage: onLongPressMessageProp,
|
|
298
292
|
onPressInMessage: onPressInMessageProp,
|
|
299
293
|
onPressMessage: onPressMessageProp,
|
|
@@ -332,16 +326,18 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
332
326
|
const isMessageTypeDeleted = message.type === 'deleted';
|
|
333
327
|
const { client } = chatContext;
|
|
334
328
|
|
|
335
|
-
const
|
|
336
|
-
|
|
337
|
-
);
|
|
338
|
-
const { width: screenW } = useWindowDimensions();
|
|
329
|
+
const rectRef = useRef<Rect>(undefined);
|
|
330
|
+
const bubbleRect = useRef<Rect>(undefined);
|
|
331
|
+
const contextMenuAnchorRef = useRef<View>(null);
|
|
339
332
|
|
|
340
333
|
const showMessageOverlay = useStableCallback(async () => {
|
|
341
334
|
dismissKeyboard();
|
|
342
335
|
try {
|
|
343
336
|
const layout = await measureInWindow(messageWrapperRef, insets);
|
|
344
|
-
|
|
337
|
+
const bubbleLayout = await measureInWindow(contextMenuAnchorRef, insets).catch(() => layout);
|
|
338
|
+
|
|
339
|
+
rectRef.current = layout;
|
|
340
|
+
bubbleRect.current = bubbleLayout;
|
|
345
341
|
setOverlayMessageH(layout);
|
|
346
342
|
openOverlay({ id: messageOverlayId, messageId: message.id });
|
|
347
343
|
} catch (e) {
|
|
@@ -698,6 +694,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
698
694
|
actionsEnabled,
|
|
699
695
|
alignment,
|
|
700
696
|
channel,
|
|
697
|
+
contextMenuAnchorRef,
|
|
701
698
|
deliveredToCount,
|
|
702
699
|
dismissOverlay,
|
|
703
700
|
files: attachments.files,
|
|
@@ -815,6 +812,8 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
815
812
|
const styles = useStyles({
|
|
816
813
|
highlightedMessage: (isTargetedMessage || message.pinned) && !isMessageTypeDeleted,
|
|
817
814
|
});
|
|
815
|
+
const rect = rectRef.current;
|
|
816
|
+
const overlayItemsAnchorRect = bubbleRect.current ?? rect;
|
|
818
817
|
|
|
819
818
|
if (!(isMessageTypeDeleted || messageContentOrder.length)) {
|
|
820
819
|
return null;
|
|
@@ -841,7 +840,7 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
841
840
|
) : null}
|
|
842
841
|
{/*TODO: V9: Find a way to separate these in a dedicated file*/}
|
|
843
842
|
<Portal hostName={overlayActive && rect ? 'top-item' : undefined}>
|
|
844
|
-
{overlayActive && rect ? (
|
|
843
|
+
{overlayActive && rect && overlayItemsAnchorRect ? (
|
|
845
844
|
<View
|
|
846
845
|
onLayout={(e) => {
|
|
847
846
|
const { width: w, height: h } = e.nativeEvent.layout;
|
|
@@ -849,7 +848,10 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
849
848
|
setOverlayTopH({
|
|
850
849
|
h,
|
|
851
850
|
w,
|
|
852
|
-
x:
|
|
851
|
+
x:
|
|
852
|
+
alignment === 'right'
|
|
853
|
+
? overlayItemsAnchorRect.x + overlayItemsAnchorRect.w - w
|
|
854
|
+
: overlayItemsAnchorRect.x,
|
|
853
855
|
y: rect.y - h,
|
|
854
856
|
});
|
|
855
857
|
}}
|
|
@@ -865,7 +867,9 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
865
867
|
hostName={overlayActive ? 'message-overlay' : undefined}
|
|
866
868
|
style={overlayActive && rect ? { width: rect.w } : undefined}
|
|
867
869
|
>
|
|
868
|
-
<
|
|
870
|
+
<View ref={messageWrapperRef}>
|
|
871
|
+
<MessageItemView />
|
|
872
|
+
</View>
|
|
869
873
|
</Portal>
|
|
870
874
|
{showMessageReactions ? (
|
|
871
875
|
<BottomSheetModal
|
|
@@ -883,14 +887,17 @@ const MessageWithContext = (props: MessagePropsWithContext) => {
|
|
|
883
887
|
</BottomSheetModal>
|
|
884
888
|
) : null}
|
|
885
889
|
<Portal hostName={overlayActive && rect ? 'bottom-item' : undefined}>
|
|
886
|
-
{overlayActive && rect ? (
|
|
890
|
+
{overlayActive && rect && overlayItemsAnchorRect ? (
|
|
887
891
|
<View
|
|
888
892
|
onLayout={(e) => {
|
|
889
893
|
const { width: w, height: h } = e.nativeEvent.layout;
|
|
890
894
|
setOverlayBottomH({
|
|
891
895
|
h,
|
|
892
896
|
w,
|
|
893
|
-
x:
|
|
897
|
+
x:
|
|
898
|
+
alignment === 'right'
|
|
899
|
+
? overlayItemsAnchorRect.x + overlayItemsAnchorRect.w - w
|
|
900
|
+
: overlayItemsAnchorRect.x,
|
|
894
901
|
y: rect.y + rect.h,
|
|
895
902
|
});
|
|
896
903
|
}}
|
|
@@ -1132,7 +1139,7 @@ export const Message = (props: MessageProps) => {
|
|
|
1132
1139
|
const useStyles = ({ highlightedMessage }: { highlightedMessage?: boolean }) => {
|
|
1133
1140
|
const {
|
|
1134
1141
|
theme: {
|
|
1135
|
-
|
|
1142
|
+
messageItemView: { wrapper, targetedMessageContainer, blockedMessageContainer },
|
|
1136
1143
|
screenPadding,
|
|
1137
1144
|
semantics,
|
|
1138
1145
|
},
|
package/src/components/Message/{MessageSimple/MessageAvatar.tsx → MessageItemView/MessageAuthor.tsx}
RENAMED
|
@@ -9,18 +9,18 @@ import { useTheme } from '../../../contexts/themeContext/ThemeContext';
|
|
|
9
9
|
import { AvatarProps, UserAvatar } from '../../ui';
|
|
10
10
|
import { avatarSizes } from '../../ui/Avatar/constants';
|
|
11
11
|
|
|
12
|
-
export type
|
|
12
|
+
export type MessageAuthorPropsWithContext = Pick<
|
|
13
13
|
MessageContextValue,
|
|
14
14
|
'lastGroupMessage' | 'message' | 'showAvatar'
|
|
15
15
|
> &
|
|
16
16
|
Partial<Pick<AvatarProps, 'size'>>;
|
|
17
17
|
|
|
18
|
-
const
|
|
18
|
+
const MessageAuthorWithContext = (props: MessageAuthorPropsWithContext) => {
|
|
19
19
|
const { lastGroupMessage, message, showAvatar, size } = props;
|
|
20
20
|
const {
|
|
21
21
|
theme: {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
messageItemView: {
|
|
23
|
+
authorWrapper: { container },
|
|
24
24
|
},
|
|
25
25
|
},
|
|
26
26
|
} = useTheme();
|
|
@@ -28,7 +28,7 @@ const MessageAvatarWithContext = (props: MessageAvatarPropsWithContext) => {
|
|
|
28
28
|
const visible = typeof showAvatar === 'boolean' ? showAvatar : lastGroupMessage;
|
|
29
29
|
|
|
30
30
|
return (
|
|
31
|
-
<View style={container} testID='message-
|
|
31
|
+
<View style={container} testID='message-author'>
|
|
32
32
|
{visible && message.user ? (
|
|
33
33
|
<UserAvatar user={message.user} size={size ?? 'md'} />
|
|
34
34
|
) : (
|
|
@@ -39,8 +39,8 @@ const MessageAvatarWithContext = (props: MessageAvatarPropsWithContext) => {
|
|
|
39
39
|
};
|
|
40
40
|
|
|
41
41
|
const areEqual = (
|
|
42
|
-
prevProps:
|
|
43
|
-
nextProps:
|
|
42
|
+
prevProps: MessageAuthorPropsWithContext,
|
|
43
|
+
nextProps: MessageAuthorPropsWithContext,
|
|
44
44
|
) => {
|
|
45
45
|
const { lastGroupMessage: prevLastGroupMessage, message: prevMessage } = prevProps;
|
|
46
46
|
const { lastGroupMessage: nextLastGroupMessage, message: nextMessage } = nextProps;
|
|
@@ -61,18 +61,18 @@ const areEqual = (
|
|
|
61
61
|
return true;
|
|
62
62
|
};
|
|
63
63
|
|
|
64
|
-
const
|
|
65
|
-
|
|
64
|
+
const MemoizedMessageAuthor = React.memo(
|
|
65
|
+
MessageAuthorWithContext,
|
|
66
66
|
areEqual,
|
|
67
|
-
) as typeof
|
|
67
|
+
) as typeof MessageAuthorWithContext;
|
|
68
68
|
|
|
69
|
-
export type
|
|
69
|
+
export type MessageAuthorProps = Partial<MessageAuthorPropsWithContext>;
|
|
70
70
|
|
|
71
|
-
export const
|
|
71
|
+
export const MessageAuthor = (props: MessageAuthorProps) => {
|
|
72
72
|
const { lastGroupMessage, message, showAvatar } = useMessageContext();
|
|
73
73
|
|
|
74
74
|
return (
|
|
75
|
-
<
|
|
75
|
+
<MemoizedMessageAuthor
|
|
76
76
|
{...{
|
|
77
77
|
lastGroupMessage,
|
|
78
78
|
message,
|
|
@@ -83,4 +83,4 @@ export const MessageAvatar = (props: MessageAvatarProps) => {
|
|
|
83
83
|
);
|
|
84
84
|
};
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
MessageAuthor.displayName = 'MessageAuthor{messageItemView{authorWrapper}}';
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import React, { ReactNode, useMemo, useState } from 'react';
|
|
2
|
+
import { StyleSheet, View } from 'react-native';
|
|
3
|
+
import { Gesture, GestureDetector } from 'react-native-gesture-handler';
|
|
4
|
+
|
|
5
|
+
import Animated, {
|
|
6
|
+
interpolate,
|
|
7
|
+
runOnJS,
|
|
8
|
+
useAnimatedStyle,
|
|
9
|
+
useSharedValue,
|
|
10
|
+
withSpring,
|
|
11
|
+
} from 'react-native-reanimated';
|
|
12
|
+
|
|
13
|
+
import { MessageItemViewPropsWithContext } from './MessageItemView';
|
|
14
|
+
|
|
15
|
+
import { MessagesContextValue, useTheme } from '../../../contexts';
|
|
16
|
+
|
|
17
|
+
import { NativeHandlers } from '../../../native';
|
|
18
|
+
|
|
19
|
+
const AnimatedWrapper = Animated.createAnimatedComponent(View);
|
|
20
|
+
|
|
21
|
+
type SwipableMessageWrapperProps = Pick<MessagesContextValue, 'MessageSwipeContent'> &
|
|
22
|
+
Pick<MessageItemViewPropsWithContext, 'messageSwipeToReplyHitSlop'> & {
|
|
23
|
+
children: ReactNode;
|
|
24
|
+
onSwipe: () => void;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const SwipableMessageWrapper = React.memo((props: SwipableMessageWrapperProps) => {
|
|
28
|
+
const { MessageSwipeContent, children, messageSwipeToReplyHitSlop, onSwipe } = props;
|
|
29
|
+
|
|
30
|
+
const styles = useStyles();
|
|
31
|
+
|
|
32
|
+
const translateX = useSharedValue(0);
|
|
33
|
+
const touchStart = useSharedValue<{ x: number; y: number } | null>(null);
|
|
34
|
+
const isSwiping = useSharedValue<boolean>(false);
|
|
35
|
+
const [shouldRenderAnimatedWrapper, setShouldRenderAnimatedWrapper] = useState<boolean>(false);
|
|
36
|
+
|
|
37
|
+
const SWIPABLE_THRESHOLD = 25;
|
|
38
|
+
const MINIMUM_DISTANCE = 8;
|
|
39
|
+
|
|
40
|
+
const triggerHaptic = NativeHandlers.triggerHaptic;
|
|
41
|
+
|
|
42
|
+
const swipeGesture = useMemo(
|
|
43
|
+
() =>
|
|
44
|
+
Gesture.Pan()
|
|
45
|
+
.hitSlop(messageSwipeToReplyHitSlop)
|
|
46
|
+
.onBegin((event) => {
|
|
47
|
+
touchStart.value = { x: event.x, y: event.y };
|
|
48
|
+
})
|
|
49
|
+
.onTouchesMove((event, state) => {
|
|
50
|
+
if (!touchStart.value || !event.changedTouches.length) {
|
|
51
|
+
state.fail();
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const xDiff = Math.abs(event.changedTouches[0].x - touchStart.value.x);
|
|
56
|
+
const yDiff = Math.abs(event.changedTouches[0].y - touchStart.value.y);
|
|
57
|
+
const isHorizontalPanning = xDiff > yDiff;
|
|
58
|
+
const hasMinimumDistance = xDiff > MINIMUM_DISTANCE || yDiff > MINIMUM_DISTANCE;
|
|
59
|
+
|
|
60
|
+
// Only activate if there's significant horizontal movement
|
|
61
|
+
if (isHorizontalPanning && hasMinimumDistance) {
|
|
62
|
+
state.activate();
|
|
63
|
+
if (!isSwiping.value) {
|
|
64
|
+
runOnJS(setShouldRenderAnimatedWrapper)(true);
|
|
65
|
+
}
|
|
66
|
+
isSwiping.value = true;
|
|
67
|
+
} else if (hasMinimumDistance) {
|
|
68
|
+
// If there's significant movement but not horizontal, fail the gesture
|
|
69
|
+
state.fail();
|
|
70
|
+
}
|
|
71
|
+
})
|
|
72
|
+
.onStart(() => {
|
|
73
|
+
translateX.value = 0;
|
|
74
|
+
})
|
|
75
|
+
.onChange(({ translationX }) => {
|
|
76
|
+
if (translationX > 0) {
|
|
77
|
+
translateX.value = translationX;
|
|
78
|
+
}
|
|
79
|
+
})
|
|
80
|
+
.onEnd(() => {
|
|
81
|
+
if (translateX.value >= SWIPABLE_THRESHOLD) {
|
|
82
|
+
runOnJS(onSwipe)();
|
|
83
|
+
if (triggerHaptic) {
|
|
84
|
+
runOnJS(triggerHaptic)('impactMedium');
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
isSwiping.value = false;
|
|
88
|
+
translateX.value = withSpring(
|
|
89
|
+
0,
|
|
90
|
+
{
|
|
91
|
+
dampingRatio: 1,
|
|
92
|
+
duration: 500,
|
|
93
|
+
overshootClamping: true,
|
|
94
|
+
stiffness: 1,
|
|
95
|
+
},
|
|
96
|
+
() => {
|
|
97
|
+
runOnJS(setShouldRenderAnimatedWrapper)(false);
|
|
98
|
+
},
|
|
99
|
+
);
|
|
100
|
+
}),
|
|
101
|
+
[messageSwipeToReplyHitSlop, touchStart, isSwiping, translateX, onSwipe, triggerHaptic],
|
|
102
|
+
);
|
|
103
|
+
|
|
104
|
+
const swipeContentAnimatedStyle = useAnimatedStyle(
|
|
105
|
+
() => ({
|
|
106
|
+
opacity: interpolate(translateX.value, [0, SWIPABLE_THRESHOLD], [0, 1]),
|
|
107
|
+
width: translateX.value,
|
|
108
|
+
}),
|
|
109
|
+
[],
|
|
110
|
+
);
|
|
111
|
+
|
|
112
|
+
return (
|
|
113
|
+
<GestureDetector gesture={swipeGesture}>
|
|
114
|
+
<View hitSlop={messageSwipeToReplyHitSlop} style={styles.contentWrapper}>
|
|
115
|
+
{shouldRenderAnimatedWrapper ? (
|
|
116
|
+
<AnimatedWrapper style={[styles.swipeContentContainer, swipeContentAnimatedStyle]}>
|
|
117
|
+
{MessageSwipeContent ? <MessageSwipeContent /> : null}
|
|
118
|
+
</AnimatedWrapper>
|
|
119
|
+
) : null}
|
|
120
|
+
{children}
|
|
121
|
+
</View>
|
|
122
|
+
</GestureDetector>
|
|
123
|
+
);
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
const useStyles = () => {
|
|
127
|
+
const {
|
|
128
|
+
theme: {
|
|
129
|
+
messageItemView: { contentWrapper, swipeContentContainer },
|
|
130
|
+
},
|
|
131
|
+
} = useTheme();
|
|
132
|
+
return useMemo(() => {
|
|
133
|
+
return StyleSheet.create({
|
|
134
|
+
contentWrapper: {
|
|
135
|
+
alignItems: 'center',
|
|
136
|
+
flexDirection: 'row',
|
|
137
|
+
zIndex: 1, // To hide the stick inside the message content
|
|
138
|
+
...contentWrapper,
|
|
139
|
+
},
|
|
140
|
+
swipeContentContainer: {
|
|
141
|
+
...swipeContentContainer,
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
}, [contentWrapper, swipeContentContainer]);
|
|
145
|
+
};
|