stream-chat-react-native-core 4.0.0-beta.2 → 4.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/Attachment/Attachment.js +12 -12
- package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/AttachmentActions.js +4 -4
- package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
- package/lib/commonjs/components/Attachment/Card.js +15 -15
- package/lib/commonjs/components/Attachment/Card.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js +8 -8
- package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +4 -4
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +97 -106
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy.js +112 -148
- package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/types.js +4 -0
- package/lib/commonjs/components/Attachment/utils/buildGallery/types.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/getAspectRatio.js +14 -0
- package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -0
- package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
- package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +9 -8
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- 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 +16 -16
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
- 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 +11 -11
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/Avatar/Avatar.js +13 -7
- package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
- package/lib/commonjs/components/Avatar/GroupAvatar.js +10 -4
- package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +64 -64
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelList.js +6 -6
- package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
- package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
- package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListMessenger.js +17 -17
- package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
- package/lib/commonjs/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
- package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
- package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/commonjs/components/ChannelList/utils.js +1 -1
- package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js +2 -2
- package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +4 -4
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
- package/lib/commonjs/components/Chat/Chat.js +4 -4
- package/lib/commonjs/components/Chat/Chat.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +89 -56
- package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +7 -7
- package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +5 -5
- package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingIndicator.js +9 -9
- package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +19 -15
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js +6 -6
- package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +19 -19
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +5 -5
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +20 -16
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js +10 -10
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
- package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +6 -6
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +15 -13
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +3 -3
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +51 -51
- package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js +89 -0
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +151 -81
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +240 -0
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +16 -3
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActions.js +18 -14
- package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
- package/lib/commonjs/components/Message/utils/removeReservedFields.js.map +1 -1
- package/lib/commonjs/components/MessageInput/AttachButton.js +3 -3
- package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CommandsButton.js +3 -3
- package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CooldownTimer.js +2 -2
- package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -1
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js +13 -13
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +7 -7
- package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/InputButtons.js +9 -9
- package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInput.js +40 -40
- package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MoreOptionsButton.js +3 -3
- package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendButton.js +5 -5
- package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useCountdown.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
- package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
- package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +28 -28
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageSystem.js +6 -6
- package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/commonjs/components/MessageList/TypingIndicator.js +5 -5
- package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +2 -2
- package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js +7 -7
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
- package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -1
- package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageActionList.js +5 -5
- package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +8 -8
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +41 -34
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +16 -16
- package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +31 -34
- package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
- package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
- package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js +25 -19
- package/lib/commonjs/components/Reply/Reply.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/Thread/components/ThreadFooterComponent.js +12 -12
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/docs/data.js +45 -45
- package/lib/commonjs/components/docs/data.js.map +1 -1
- package/lib/commonjs/components/index.js +26 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.js +2 -2
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +2 -2
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
- package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +2 -2
- package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +18 -14
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
- package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +33 -31
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +2 -2
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/commonjs/contexts/themeContext/ThemeContext.js +2 -2
- package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
- package/lib/commonjs/contexts/themeContext/utils/theme.js +20 -11
- package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/commonjs/contexts/threadContext/ThreadContext.js +2 -2
- package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/commonjs/contexts/translationContext/TranslationContext.js +3 -3
- package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/commonjs/contexts/typingContext/TypingContext.js +2 -2
- package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
- package/lib/commonjs/contexts/utils/getDisplayName.js.map +1 -1
- package/lib/commonjs/emoji-data/index.js +2 -2
- package/lib/commonjs/emoji-data/index.js.map +1 -1
- package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
- package/lib/commonjs/icons/UserAdmin.js +62 -0
- package/lib/commonjs/icons/UserAdmin.js.map +1 -0
- package/lib/commonjs/icons/index.js +0 -26
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/icons/utils/base.js +1 -1
- package/lib/commonjs/index.js +6 -6
- package/lib/commonjs/mock-builders/api/error.js +1 -1
- package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/attachment.js +1 -3
- package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/channel.js +101 -51
- package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/user.js +32 -33
- package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
- package/lib/commonjs/mock-builders/mock.js +1 -1
- package/lib/commonjs/native.js +1 -1
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js +7 -7
- package/lib/commonjs/styleguideComponents/ArgumentsRenderer.js.map +1 -1
- package/lib/commonjs/styleguideComponents/JsDoc.js +4 -4
- package/lib/commonjs/styleguideComponents/JsDoc.js.map +1 -1
- package/lib/commonjs/styleguideComponents/PathlineRenderer.js +7 -7
- package/lib/commonjs/styleguideComponents/PathlineRenderer.js.map +1 -1
- package/lib/commonjs/styleguideComponents/PropsRenderer.js +25 -25
- package/lib/commonjs/styleguideComponents/PropsRenderer.js.map +1 -1
- package/lib/commonjs/styleguideComponents/Wrapper.js +1 -1
- package/lib/commonjs/styleguideComponents/Wrapper.js.map +1 -1
- package/lib/commonjs/utils/Streami18n.js.map +1 -1
- package/lib/commonjs/utils/getResizedImageUrl.js +26 -0
- package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -0
- package/lib/commonjs/utils/getUrlOfImageAttachment.js +9 -0
- package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -0
- package/lib/commonjs/utils/utils.js +9 -3
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/Attachment.js +12 -12
- package/lib/module/components/Attachment/Attachment.js.map +1 -1
- package/lib/module/components/Attachment/AttachmentActions.js +4 -4
- package/lib/module/components/Attachment/AttachmentActions.js.map +1 -1
- package/lib/module/components/Attachment/Card.js +15 -15
- package/lib/module/components/Attachment/Card.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachment.js +8 -8
- package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachmentGroup.js +4 -4
- package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/module/components/Attachment/FileIcon.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +97 -106
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/Giphy.js +112 -148
- package/lib/module/components/Attachment/Giphy.js.map +1 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +46 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +88 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +75 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +43 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +30 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +49 -0
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -0
- package/lib/module/components/Attachment/utils/buildGallery/types.js +4 -0
- package/lib/module/components/Attachment/utils/buildGallery/types.js.map +1 -0
- package/lib/module/components/Attachment/utils/getAspectRatio.js +14 -0
- package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -0
- package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js +36 -0
- package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -0
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js +9 -8
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- 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 +16 -16
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js +7 -7
- 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 +11 -11
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/Avatar/Avatar.js +13 -7
- package/lib/module/components/Avatar/Avatar.js.map +1 -1
- package/lib/module/components/Avatar/GroupAvatar.js +10 -4
- package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +64 -64
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelList.js +6 -6
- package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +4 -4
- package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +6 -7
- package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +2 -2
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListMessenger.js +17 -17
- package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js +2 -2
- package/lib/module/components/ChannelList/hooks/listeners/useAddedToChannelNotification.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelDeleted.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelHidden.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelTruncated.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js +2 -2
- package/lib/module/components/ChannelList/hooks/listeners/useChannelVisible.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +2 -2
- package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +3 -3
- package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useUserPresence.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +2 -2
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +83 -70
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/module/components/ChannelList/utils.js +1 -1
- package/lib/module/components/ChannelList/utils.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelAvatar.js +2 -2
- package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreview.js +4 -4
- package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +4 -4
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js +48 -20
- package/lib/module/components/ChannelPreview/ChannelPreviewMessenger.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +51 -0
- package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -0
- package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +4 -4
- package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewTitle.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +2 -2
- package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
- package/lib/module/components/Chat/Chat.js +4 -4
- package/lib/module/components/Chat/Chat.js.map +1 -1
- package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
- package/lib/module/components/ImageGallery/ImageGallery.js +89 -56
- package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +2 -2
- package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +12 -12
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +28 -11
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGrid.js +7 -7
- package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGridHandle.js +5 -5
- package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
- package/lib/module/components/Indicators/LoadingIndicator.js +9 -9
- package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/module/components/Message/Message.js +19 -15
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageAvatar.js +6 -6
- package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js +19 -19
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js +5 -5
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageFooter.js +20 -16
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +6 -6
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageReplies.js +10 -10
- package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js +5 -5
- package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageSimple.js +6 -6
- package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageStatus.js +15 -13
- package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +3 -3
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/ReactionList.js +51 -51
- package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.js +89 -0
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -0
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js +46 -0
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.test.js.map +1 -0
- package/lib/module/components/Message/MessageSimple/utils/renderText.js +151 -81
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +240 -0
- package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -0
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js +16 -3
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActions.js +18 -14
- package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/module/components/Message/utils/messageActions.js.map +1 -1
- package/lib/module/components/Message/utils/removeReservedFields.js.map +1 -1
- package/lib/module/components/MessageInput/AttachButton.js +3 -3
- package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/module/components/MessageInput/CommandsButton.js +3 -3
- package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/module/components/MessageInput/CooldownTimer.js +2 -2
- package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -1
- package/lib/module/components/MessageInput/FileUploadPreview.js +13 -13
- package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/ImageUploadPreview.js +7 -7
- package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/InputButtons.js +9 -9
- package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInput.js +40 -40
- package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/module/components/MessageInput/MoreOptionsButton.js +3 -3
- package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
- package/lib/module/components/MessageInput/SendButton.js +5 -5
- package/lib/module/components/MessageInput/SendButton.js.map +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +2 -2
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -10
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useCountdown.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +4 -4
- package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +4 -4
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +4 -4
- package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +28 -28
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/MessageSystem.js +6 -6
- package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/module/components/MessageList/TypingIndicator.js +5 -5
- package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
- package/lib/module/components/MessageList/TypingIndicatorContainer.js +2 -2
- package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js +7 -7
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
- package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
- package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -1
- package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
- package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageActionList.js +5 -5
- package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageActionListItem.js +8 -8
- package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageOverlay.js +41 -34
- package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayBackdrop.js +1 -1
- package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactionList.js +16 -16
- package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactions.js +31 -34
- package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js +41 -0
- package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
- package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
- package/lib/module/components/Reply/Reply.js +25 -19
- package/lib/module/components/Reply/Reply.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/Thread/components/ThreadFooterComponent.js +12 -12
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/docs/data.js +45 -45
- package/lib/module/components/docs/data.js.map +1 -1
- package/lib/module/components/index.js +26 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +2 -2
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +2 -2
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.js +2 -2
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js +2 -2
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +3 -3
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/module/contexts/chatContext/ChatContext.js +2 -2
- package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +2 -2
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/module/contexts/keyboardContext/KeyboardContext.js +2 -2
- package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js +2 -2
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +18 -14
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +10 -3
- package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +5 -19
- package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +36 -0
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +105 -0
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
- package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayProvider.js +33 -31
- package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +1 -1
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +2 -2
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +2 -2
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/module/contexts/themeContext/ThemeContext.js +2 -2
- package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
- package/lib/module/contexts/themeContext/utils/theme.js +20 -11
- package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/module/contexts/threadContext/ThreadContext.js +2 -2
- package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/module/contexts/translationContext/TranslationContext.js +3 -3
- package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/module/contexts/typingContext/TypingContext.js +2 -2
- package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
- package/lib/module/contexts/utils/getDisplayName.js.map +1 -1
- package/lib/module/emoji-data/index.js +2 -2
- package/lib/module/emoji-data/index.js.map +1 -1
- package/lib/module/hooks/useStreami18n.js.map +1 -1
- package/lib/module/icons/UserAdmin.js +62 -0
- package/lib/module/icons/UserAdmin.js.map +1 -0
- package/lib/module/icons/index.js +0 -26
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/icons/utils/base.js +1 -1
- package/lib/module/index.js +6 -6
- package/lib/module/mock-builders/api/error.js +1 -1
- package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/module/mock-builders/generator/attachment.js +1 -3
- package/lib/module/mock-builders/generator/attachment.js.map +1 -1
- package/lib/module/mock-builders/generator/channel.js +101 -51
- package/lib/module/mock-builders/generator/channel.js.map +1 -1
- package/lib/module/mock-builders/generator/user.js +32 -33
- package/lib/module/mock-builders/generator/user.js.map +1 -1
- package/lib/module/mock-builders/mock.js +1 -1
- package/lib/module/native.js +1 -1
- package/lib/module/native.js.map +1 -1
- package/lib/module/styleguideComponents/ArgumentsRenderer.js +7 -7
- package/lib/module/styleguideComponents/ArgumentsRenderer.js.map +1 -1
- package/lib/module/styleguideComponents/JsDoc.js +4 -4
- package/lib/module/styleguideComponents/JsDoc.js.map +1 -1
- package/lib/module/styleguideComponents/PathlineRenderer.js +7 -7
- package/lib/module/styleguideComponents/PathlineRenderer.js.map +1 -1
- package/lib/module/styleguideComponents/PropsRenderer.js +25 -25
- package/lib/module/styleguideComponents/PropsRenderer.js.map +1 -1
- package/lib/module/styleguideComponents/Wrapper.js +1 -1
- package/lib/module/styleguideComponents/Wrapper.js.map +1 -1
- package/lib/module/utils/Streami18n.js.map +1 -1
- package/lib/module/utils/getResizedImageUrl.js +26 -0
- package/lib/module/utils/getResizedImageUrl.js.map +1 -0
- package/lib/module/utils/getUrlOfImageAttachment.js +9 -0
- package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -0
- package/lib/module/utils/utils.js +9 -3
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Attachment.d.ts +6 -6
- package/lib/typescript/components/Attachment/AttachmentActions.d.ts +5 -5
- package/lib/typescript/components/Attachment/Card.d.ts +5 -5
- package/lib/typescript/components/Attachment/FileAttachment.d.ts +6 -6
- package/lib/typescript/components/Attachment/FileAttachmentGroup.d.ts +4 -4
- package/lib/typescript/components/Attachment/Gallery.d.ts +6 -9
- package/lib/typescript/components/Attachment/Giphy.d.ts +7 -7
- package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +23 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +7 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +7 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +7 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +10 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +137 -0
- package/lib/typescript/components/Attachment/utils/buildGallery/types.d.ts +23 -0
- package/lib/typescript/components/Attachment/utils/getAspectRatio.d.ts +9 -0
- package/lib/typescript/components/Attachment/utils/getGalleryImageBorderRadius.d.ts +22 -0
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts +4 -4
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +3 -2
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionHeader.d.ts +4 -4
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +5 -5
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +10 -11
- package/lib/typescript/components/Avatar/Avatar.d.ts +1 -1
- package/lib/typescript/components/Channel/Channel.d.ts +10 -10
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +2 -2
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +3 -3
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +3 -3
- package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +4 -4
- package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +3 -3
- package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +2 -2
- package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +2 -2
- package/lib/typescript/components/ChannelList/ChannelList.d.ts +15 -15
- package/lib/typescript/components/ChannelList/ChannelListMessenger.d.ts +4 -4
- package/lib/typescript/components/ChannelList/hooks/listeners/useAddedToChannelNotification.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelDeleted.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelHidden.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelTruncated.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelVisible.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +2 -2
- package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessage.d.ts +4 -4
- package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.d.ts +5 -5
- package/lib/typescript/components/ChannelList/hooks/listeners/useUserPresence.d.ts +4 -4
- package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +2 -2
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +11 -9
- package/lib/typescript/components/ChannelList/utils.d.ts +7 -7
- package/lib/typescript/components/ChannelPreview/ChannelAvatar.d.ts +3 -3
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +7 -7
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts +4 -5
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +6 -6
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
- package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts +3 -3
- package/lib/typescript/components/ChannelPreview/ChannelPreviewTitle.d.ts +3 -3
- package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts +3 -3
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.d.ts +3 -3
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts +4 -4
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts +2 -2
- package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -5
- package/lib/typescript/components/Chat/Chat.d.ts +3 -3
- package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +2 -2
- package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +2 -2
- package/lib/typescript/components/Chat/hooks/useMutedUsers.d.ts +2 -2
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +12 -10
- package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +10 -10
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +10 -10
- package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +10 -10
- package/lib/typescript/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.d.ts +1 -0
- package/lib/typescript/components/Message/Message.d.ts +12 -12
- package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +5 -5
- package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +6 -6
- package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +8 -8
- package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/MessageReplies.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/MessageRepliesAvatars.d.ts +3 -3
- package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +6 -6
- package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +4 -4
- package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.d.ts +7 -0
- package/lib/typescript/components/Message/MessageSimple/utils/parseLinks.test.d.ts +1 -0
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +20 -6
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.test.d.ts +1 -0
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +2 -2
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +2 -2
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +5 -5
- package/lib/typescript/components/Message/utils/messageActions.d.ts +7 -7
- package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +2 -2
- package/lib/typescript/components/MessageInput/AttachButton.d.ts +5 -5
- package/lib/typescript/components/MessageInput/CommandsButton.d.ts +5 -5
- package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +4 -4
- package/lib/typescript/components/MessageInput/ImageUploadPreview.d.ts +4 -4
- package/lib/typescript/components/MessageInput/InputButtons.d.ts +5 -5
- package/lib/typescript/components/MessageInput/MessageInput.d.ts +4 -4
- package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +5 -5
- package/lib/typescript/components/MessageInput/SendButton.d.ts +4 -4
- package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +2 -2
- package/lib/typescript/components/MessageInput/hooks/useCooldown.d.ts +2 -2
- package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +2 -2
- package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +2 -2
- package/lib/typescript/components/MessageList/InlineLoadingMoreThreadIndicator.d.ts +2 -2
- package/lib/typescript/components/MessageList/MessageList.d.ts +7 -7
- package/lib/typescript/components/MessageList/MessageSystem.d.ts +5 -5
- package/lib/typescript/components/MessageList/TypingIndicator.d.ts +2 -2
- package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +4 -4
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +5 -5
- package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts +2 -2
- package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +3 -3
- package/lib/typescript/components/MessageList/utils/getDateSeparators.d.ts +4 -4
- package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +5 -5
- package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
- package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +8 -5
- package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +4 -4
- package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts +4 -3
- package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +4 -4
- package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +6 -6
- package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
- package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
- package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +1 -1
- package/lib/typescript/components/Reply/Reply.d.ts +5 -5
- package/lib/typescript/components/Thread/Thread.d.ts +8 -8
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +2 -2
- package/lib/typescript/components/index.d.ts +2 -0
- package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +2 -2
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +12 -12
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +30 -22
- package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +19 -19
- package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +17 -17
- package/lib/typescript/contexts/chatContext/ChatContext.d.ts +11 -11
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +8 -8
- package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +2 -2
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +12 -12
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +39 -37
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +3 -3
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +3 -3
- package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +27 -25
- package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +12 -0
- package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +1 -0
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +67 -67
- package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +8 -8
- package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts +2 -2
- package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +8 -8
- package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +21 -21
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +17 -8
- package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +10 -10
- package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +2 -2
- package/lib/typescript/contexts/typingContext/TypingContext.d.ts +8 -8
- package/lib/typescript/hooks/useStreami18n.d.ts +1 -1
- package/lib/typescript/icons/{Left.d.ts → UserAdmin.d.ts} +1 -1
- package/lib/typescript/icons/index.d.ts +0 -2
- package/lib/typescript/types/types.d.ts +16 -13
- package/lib/typescript/utils/Streami18n.d.ts +6 -6
- package/lib/typescript/utils/getResizedImageUrl.d.ts +19 -0
- package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +7 -0
- package/lib/typescript/utils/utils.d.ts +27 -22
- package/package.json +9 -13
- package/src/components/Attachment/Attachment.tsx +18 -59
- package/src/components/Attachment/AttachmentActions.tsx +17 -57
- package/src/components/Attachment/Card.tsx +17 -51
- package/src/components/Attachment/FileAttachment.tsx +16 -51
- package/src/components/Attachment/FileAttachmentGroup.tsx +16 -57
- package/src/components/Attachment/FileIcon.tsx +2 -2
- package/src/components/Attachment/Gallery.tsx +177 -242
- package/src/components/Attachment/Giphy.tsx +84 -128
- package/src/components/Attachment/__tests__/Attachment.test.js +11 -10
- package/src/components/Attachment/__tests__/Gallery.test.js +233 -0
- package/src/components/Attachment/__tests__/buildGallery.test.js +131 -0
- package/src/components/Attachment/utils/buildGallery/buildGallery.ts +77 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +91 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +66 -0
- package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +48 -0
- package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +188 -0
- package/src/components/Attachment/utils/buildGallery/types.ts +27 -0
- package/src/components/Attachment/utils/getAspectRatio.ts +21 -0
- package/src/components/Attachment/utils/getGalleryImageBorderRadius.ts +71 -0
- package/src/components/AttachmentPicker/AttachmentPicker.tsx +4 -2
- package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +23 -62
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +6 -4
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +13 -20
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +20 -25
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +25 -29
- package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +6 -8
- package/src/components/Avatar/Avatar.tsx +8 -11
- package/src/components/Avatar/GroupAvatar.tsx +7 -2
- package/src/components/Avatar/__tests__/Avatar.test.js +2 -2
- package/src/components/Channel/Channel.tsx +237 -313
- package/src/components/Channel/__tests__/Channel.test.js +10 -10
- package/src/components/Channel/__tests__/ownCapabilities.test.js +8 -8
- package/src/components/Channel/hooks/useCreateChannelContext.ts +4 -19
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +52 -68
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +4 -19
- package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +5 -19
- package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +16 -32
- package/src/components/Channel/hooks/useCreateThreadContext.ts +4 -19
- package/src/components/Channel/hooks/useCreateTypingContext.ts +4 -19
- package/src/components/ChannelList/ChannelList.tsx +36 -58
- package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +1 -2
- package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +3 -7
- package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +2 -2
- package/src/components/ChannelList/ChannelListMessenger.tsx +22 -74
- package/src/components/ChannelList/__tests__/ChannelList.test.js +73 -13
- package/src/components/ChannelList/__tests__/ChannelListMessenger.test.js +11 -12
- package/src/components/ChannelList/hooks/listeners/useAddedToChannelNotification.ts +17 -39
- package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +15 -37
- package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +15 -37
- package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +17 -39
- package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +15 -37
- package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +17 -39
- package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +3 -18
- package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +13 -36
- package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +17 -39
- package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +15 -37
- package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +11 -33
- package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +5 -21
- package/src/components/ChannelList/hooks/usePaginatedChannels.ts +89 -77
- package/src/components/ChannelList/utils.ts +9 -42
- package/src/components/ChannelPreview/ChannelAvatar.tsx +6 -29
- package/src/components/ChannelPreview/ChannelPreview.tsx +21 -54
- package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +13 -23
- package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +35 -55
- package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +50 -0
- package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +10 -30
- package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +7 -28
- package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +7 -27
- package/src/components/ChannelPreview/__tests__/ChannelPreview.test.js +8 -9
- package/src/components/ChannelPreview/__tests__/ChannelPreviewMessenger.test.js +8 -9
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayAvatar.ts +9 -30
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +8 -30
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +9 -30
- package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +29 -80
- package/src/components/Chat/Chat.tsx +17 -45
- package/src/components/Chat/__tests__/Chat.test.js +5 -5
- package/src/components/Chat/hooks/useCreateChatContext.ts +4 -19
- package/src/components/Chat/hooks/useIsOnline.ts +8 -22
- package/src/components/Chat/hooks/useMutedUsers.ts +5 -20
- package/src/components/ImageGallery/ImageGallery.tsx +109 -86
- package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
- package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +20 -15
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +42 -21
- package/src/components/ImageGallery/components/ImageGrid.tsx +47 -33
- package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
- package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +31 -0
- package/src/components/Indicators/LoadingIndicator.tsx +1 -2
- package/src/components/Message/Message.tsx +59 -112
- package/src/components/Message/MessageSimple/MessageAvatar.tsx +14 -56
- package/src/components/Message/MessageSimple/MessageContent.tsx +20 -64
- package/src/components/Message/MessageSimple/MessageDeleted.tsx +19 -61
- package/src/components/Message/MessageSimple/MessageFooter.tsx +28 -71
- package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +15 -56
- package/src/components/Message/MessageSimple/MessageReplies.tsx +15 -56
- package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +7 -29
- package/src/components/Message/MessageSimple/MessageSimple.tsx +16 -57
- package/src/components/Message/MessageSimple/MessageStatus.tsx +21 -58
- package/src/components/Message/MessageSimple/MessageTextContainer.tsx +19 -66
- package/src/components/Message/MessageSimple/ReactionList.tsx +47 -88
- package/src/components/Message/MessageSimple/__tests__/Message.test.js +9 -9
- package/src/components/Message/MessageSimple/__tests__/MessageAvatar.test.js +2 -2
- package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +9 -26
- package/src/components/Message/MessageSimple/__tests__/MessagePinnedHeader.test.js +2 -2
- package/src/components/Message/MessageSimple/__tests__/MessageReplies.test.js +2 -2
- package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +4 -5
- package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.js +2 -2
- package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +1 -1
- package/src/components/Message/MessageSimple/utils/parseLinks.test.ts +100 -0
- package/src/components/Message/MessageSimple/utils/parseLinks.ts +95 -0
- package/src/components/Message/MessageSimple/utils/renderText.test.tsx +70 -0
- package/src/components/Message/MessageSimple/utils/renderText.tsx +97 -94
- package/src/components/Message/hooks/useCreateMessageContext.ts +5 -21
- package/src/components/Message/hooks/useMessageActionHandlers.ts +21 -27
- package/src/components/Message/hooks/useMessageActions.tsx +21 -31
- package/src/components/Message/utils/messageActions.ts +9 -36
- package/src/components/Message/utils/removeReservedFields.ts +3 -18
- package/src/components/MessageInput/AttachButton.tsx +14 -56
- package/src/components/MessageInput/CommandsButton.tsx +16 -58
- package/src/components/MessageInput/CooldownTimer.tsx +1 -0
- package/src/components/MessageInput/FileUploadPreview.tsx +16 -58
- package/src/components/MessageInput/ImageUploadPreview.tsx +13 -56
- package/src/components/MessageInput/InputButtons.tsx +14 -55
- package/src/components/MessageInput/MessageInput.tsx +30 -72
- package/src/components/MessageInput/MoreOptionsButton.tsx +14 -56
- package/src/components/MessageInput/SendButton.tsx +13 -54
- package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
- package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +5 -20
- package/src/components/MessageInput/__tests__/AttachButton.test.js +2 -2
- package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +15 -17
- package/src/components/MessageInput/__tests__/ImageUploadPreview.test.js +3 -3
- package/src/components/MessageInput/__tests__/MessageInput.test.js +8 -8
- package/src/components/MessageInput/__tests__/SendButton.test.js +2 -2
- package/src/components/MessageInput/__tests__/UploadProgressIndicator.test.js +2 -2
- package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +1604 -4172
- package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +1 -643
- package/src/components/MessageInput/hooks/useCooldown.ts +7 -19
- package/src/components/MessageInput/hooks/useCountdown.ts +1 -0
- package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +3 -18
- package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +3 -18
- package/src/components/MessageList/InlineLoadingMoreThreadIndicator.tsx +3 -18
- package/src/components/MessageList/MessageList.tsx +37 -79
- package/src/components/MessageList/MessageSystem.tsx +7 -28
- package/src/components/MessageList/TypingIndicator.tsx +4 -20
- package/src/components/MessageList/TypingIndicatorContainer.tsx +14 -47
- package/src/components/MessageList/__tests__/MessageList.test.js +17 -17
- package/src/components/MessageList/__tests__/MessageSystem.test.js +3 -3
- package/src/components/MessageList/__tests__/ScrollToBottomButton.test.js +3 -3
- package/src/components/MessageList/__tests__/TypingIndicator.test.js +5 -6
- package/src/components/MessageList/__tests__/__snapshots__/TypingIndicator.test.js.snap +1 -1
- package/src/components/MessageList/hooks/useMessageList.ts +24 -59
- package/src/components/MessageList/hooks/useTypingString.ts +6 -22
- package/src/components/MessageList/utils/filterTypingUsers.ts +7 -28
- package/src/components/MessageList/utils/getDateSeparators.ts +6 -27
- package/src/components/MessageList/utils/getGroupStyles.ts +7 -29
- package/src/components/MessageList/utils/getLastReceivedMessage.ts +9 -19
- package/src/components/MessageList/utils/getReadStates.ts +5 -20
- package/src/components/MessageOverlay/MessageActionList.tsx +17 -58
- package/src/components/MessageOverlay/MessageActionListItem.tsx +23 -10
- package/src/components/MessageOverlay/MessageOverlay.tsx +56 -95
- package/src/components/MessageOverlay/OverlayBackdrop.tsx +1 -0
- package/src/components/MessageOverlay/OverlayReactionList.tsx +23 -78
- package/src/components/MessageOverlay/OverlayReactions.tsx +12 -8
- package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
- package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +1 -0
- package/src/components/Reply/Reply.tsx +44 -81
- package/src/components/Thread/Thread.tsx +24 -58
- package/src/components/Thread/__tests__/Thread.test.js +12 -14
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +13 -13
- package/src/components/Thread/components/ThreadFooterComponent.tsx +12 -48
- package/src/components/docs/data.js +38 -37
- package/src/components/index.ts +2 -0
- package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
- package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +10 -9
- package/src/contexts/channelContext/ChannelContext.tsx +16 -50
- package/src/contexts/channelsContext/ChannelsContext.tsx +37 -63
- package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +38 -116
- package/src/contexts/channelsStateContext/useChannelState.ts +28 -60
- package/src/contexts/chatContext/ChatContext.tsx +15 -51
- package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +13 -56
- package/src/contexts/keyboardContext/KeyboardContext.tsx +13 -8
- package/src/contexts/messageContext/MessageContext.tsx +16 -50
- package/src/contexts/messageInputContext/MessageInputContext.tsx +88 -134
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +6 -23
- package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -34
- package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +34 -90
- package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +46 -0
- package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
- package/src/contexts/messagesContext/MessagesContext.tsx +73 -112
- package/src/contexts/overlayContext/OverlayContext.tsx +28 -34
- package/src/contexts/overlayContext/OverlayProvider.tsx +36 -46
- package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +14 -55
- package/src/contexts/suggestionsContext/SuggestionsContext.tsx +42 -42
- package/src/contexts/suggestionsContext/__tests__/Suggestions.test.js +1 -0
- package/src/contexts/themeContext/ThemeContext.tsx +1 -0
- package/src/contexts/themeContext/utils/theme.ts +36 -19
- package/src/contexts/threadContext/ThreadContext.tsx +14 -48
- package/src/contexts/translationContext/TranslationContext.tsx +14 -9
- package/src/contexts/typingContext/TypingContext.tsx +12 -46
- package/src/contexts/utils/getDisplayName.ts +1 -0
- package/src/emoji-data/index.js +1 -1
- package/src/hooks/useStreami18n.ts +1 -1
- package/src/icons/UserAdmin.tsx +23 -0
- package/src/icons/index.ts +0 -2
- package/src/mock-builders/api/sendMessage.js +1 -0
- package/src/mock-builders/generator/attachment.js +0 -2
- package/src/mock-builders/generator/channel.js +101 -64
- package/src/mock-builders/generator/user.js +33 -26
- package/src/native.ts +1 -0
- package/src/styleguideComponents/ArgumentsRenderer.tsx +2 -1
- package/src/styleguideComponents/JsDoc.tsx +3 -1
- package/src/styleguideComponents/PathlineRenderer.tsx +2 -1
- package/src/styleguideComponents/PropsRenderer.tsx +7 -4
- package/src/styleguideComponents/Wrapper.tsx +1 -0
- package/src/types/types.ts +16 -18
- package/src/utils/Streami18n.ts +6 -6
- package/src/utils/__tests__/Streami18n.test.js +1 -2
- package/src/utils/getResizedImageUrl.ts +43 -0
- package/src/utils/getUrlOfImageAttachment.ts +10 -0
- package/src/utils/utils.ts +72 -132
- package/src/version.json +1 -1
- package/lib/commonjs/icons/Left.js +0 -38
- package/lib/commonjs/icons/Left.js.map +0 -1
- package/lib/commonjs/icons/Right.js +0 -38
- package/lib/commonjs/icons/Right.js.map +0 -1
- package/lib/module/icons/Left.js +0 -38
- package/lib/module/icons/Left.js.map +0 -1
- package/lib/module/icons/Right.js +0 -38
- package/lib/module/icons/Right.js.map +0 -1
- package/lib/typescript/icons/Right.d.ts +0 -3
- package/src/icons/Left.tsx +0 -12
- package/src/icons/Right.tsx +0 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Message.tsx"],"names":["MessageWithContext","props","isMessageTypeDeleted","message","type","channel","client","disabled","dismissKeyboard","dismissKeyboardOnMessageTouch","enableLongPress","enforceUniqueReaction","forceAlignMessages","goToMessage","groupStyles","handleBlock","handleCopy","handleDelete","handleEdit","handleFlag","handleMute","handlePinMessage","handleQuotedReply","handleReactionProp","handleReaction","handleRetry","handleThreadReply","lastReceivedId","members","messageActions","messageActionsProp","defaultMessageActions","messageContentOrderProp","messageContentOrder","messagesContext","MessageSimple","onLongPressProp","onLongPress","onLongPressMessageProp","onLongPressMessage","onPressProp","onPress","onPressMessageProp","onPressMessage","onPressInProp","onPressIn","onPressInMessageProp","onPressInMessage","onThreadSelect","openThread","OverlayReactionList","preventPress","removeMessage","retrySendMessage","selectReaction","setData","setEditingState","setOverlay","setQuotedMessageState","showAvatar","showMessageStatus","showUnreadUnderlay","style","supportedReactions","t","isTargetedMessage","threadList","updateMessage","theme","colors","bg_gradient_start","targetedMessageBackground","targetedMessageUnderlay","messageSimple","actionsEnabled","status","isMyMessage","userID","user","id","handleAction","name","value","sendAction","data","parent_id","onPressQuotedMessage","quotedMessage","error","Keyboard","dismiss","quoted_message","showMessageOverlay","alignment","attachments","Array","isArray","reduce","acc","cur","files","push","other","title_link","og_scrape_url","image_url","thumb_url","images","length","hasAttachmentActions","some","attachment","actions","filter","content","text","onlyEmojis","emojiRegex","test","onOpenThread","hasReactions","latest_reactions","clientId","reactions","reactionType","reactionsOfReactionType","reaction","hasOwnReaction","user_id","own","ownCapabilities","handleDeleteMessage","handleEditMessage","handleQuotedReplyMessage","handleResendMessage","handleToggleBanUser","handleToggleMuteUser","handleTogglePinMessage","handleToggleReaction","blockUser","copyMessage","deleteMessage","editMessage","flagMessage","muteUser","pinMessage","quotedReply","retry","threadReply","unpinMessage","messageReactions","isThreadMessage","dismissOverlay","sendReaction","undefined","Boolean","messageContext","messageReactionTitle","otherAttachments","actionHandlers","resendMessage","toggleBanUser","toggleMuteUser","toggleReaction","payload","defaultHandler","emitter","event","lastGroupMessage","pinned","backgroundColor","areEqual","prevProps","nextProps","prevGoToMessage","prevIsTargetedMessage","prevLastReceivedId","prevMembers","prevMessage","prevMutedUsers","mutedUsers","prevShowUnreadUnderlay","prevT","nextGoToMessage","nextIsTargetedMessage","nextLastReceivedId","nextMembers","nextMessage","nextMutedUsers","nextShowUnreadUnderlay","nextT","membersEqual","Object","keys","repliesEqual","reply_count","lastReceivedIdChangedAndMatters","goToMessageChangedAndMatters","quoted_message_id","isPrevMessageTypeDeleted","isNextMessageTypeDeleted","messageEqual","readBy","updated_at","isPrevQuotedMessageTypeDeleted","isNextQuotedMessageTypeDeleted","quotedMessageEqual","messageUserBannedEqual","banned","prevMessageAttachments","nextMessageAttachments","attachmentsEqual","every","index","latestReactionsEqual","mutedUserSame","mutedUser","target","showUnreadUnderlayEqual","tEqual","targetedMessageEqual","MemoizedMessage","React","memo","Message"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { GestureResponderEvent, Keyboard, StyleProp, View, ViewStyle } from 'react-native';\n\nimport { useCreateMessageContext } from './hooks/useCreateMessageContext';\nimport { messageActions as defaultMessageActions } from './utils/messageActions';\n\nimport {\n isMessageWithStylesReadByAndDateSeparator,\n MessageType,\n} from '../MessageList/hooks/useMessageList';\n\nimport { useOwnCapabilitiesContext } from '../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport {\n KeyboardContextValue,\n useKeyboardContext,\n} from '../../contexts/keyboardContext/KeyboardContext';\nimport {\n MessageContextValue,\n MessageProvider,\n Reactions,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessageOverlayContextValue,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport type { MessageActionListItemProps } from '../MessageOverlay/MessageActionListItem';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport {\n OverlayContextValue,\n useOverlayContext,\n} from '../../contexts/overlayContext/OverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\n\nimport { triggerHaptic } from '../../native';\nimport { emojiRegex } from '../../utils/utils';\n\nimport type { Attachment } from 'stream-chat';\n\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\nimport { useMessageActions } from './hooks/useMessageActions';\nimport { useMessageActionHandlers } from './hooks/useMessageActionHandlers';\n\nexport type TouchableHandlerPayload = {\n defaultHandler?: () => void;\n emitter?:\n | 'card'\n | 'fileAttachment'\n | 'gallery'\n | 'giphy'\n | 'message'\n | 'messageContent'\n | 'messageReplies'\n | 'reactionList'\n | 'textLink'\n | 'textMention';\n event?: GestureResponderEvent;\n};\n\nexport type MessageTouchableHandlerPayload<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = TouchableHandlerPayload & {\n actionHandlers?: MessageActionHandlers;\n message?: MessageType<At, Ch, Co, Ev, Me, Re, Us>;\n};\n\nexport type MessageActionHandlers = {\n deleteMessage: () => Promise<void>;\n editMessage: () => void;\n pinMessage: () => Promise<void>;\n quotedReply: () => void;\n resendMessage: () => Promise<void>;\n showMessageOverlay: () => void;\n toggleBanUser: () => Promise<void>;\n toggleMuteUser: () => Promise<void>;\n toggleReaction: (reactionType: string) => Promise<void>;\n};\n\nexport type MessagePropsWithContext<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = Pick<\n ChannelContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'channel' | 'disabled' | 'enforceUniqueReaction' | 'members'\n> &\n Pick<ChatContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'client' | 'mutedUsers'> &\n Pick<KeyboardContextValue, 'dismissKeyboard'> &\n Partial<Omit<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'groupStyles' | 'message'>> &\n Pick<MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'groupStyles' | 'message'> &\n Pick<\n MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n | 'dismissKeyboardOnMessageTouch'\n | 'forceAlignMessages'\n | 'handleBlock'\n | 'handleCopy'\n | 'handleDelete'\n | 'handleEdit'\n | 'handleFlag'\n | 'handleMute'\n | 'handlePinMessage'\n | 'handleQuotedReply'\n | 'handleReaction'\n | 'handleRetry'\n | 'handleThreadReply'\n | 'messageActions'\n | 'messageContentOrder'\n | 'MessageSimple'\n | 'onLongPressMessage'\n | 'onPressInMessage'\n | 'onPressMessage'\n | 'OverlayReactionList'\n | 'removeMessage'\n | 'retrySendMessage'\n | 'selectReaction'\n | 'setEditingState'\n | 'setQuotedMessageState'\n | 'supportedReactions'\n | 'updateMessage'\n > &\n Pick<MessageOverlayContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'setData'> &\n Pick<OverlayContextValue, 'setOverlay'> &\n Pick<ThreadContextValue<At, Ch, Co, Ev, Me, Re, Us>, 'openThread'> &\n Pick<TranslationContextValue, 't'> & {\n messagesContext: MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>;\n /**\n * Whether or not users are able to long press messages.\n */\n enableLongPress?: boolean;\n goToMessage?: (messageId: string) => void;\n isTargetedMessage?: boolean;\n /**\n * Array of allowed actions or null on message, this can also be a function returning the array.\n * If all the actions need to be disabled an empty array should be provided as value of prop\n */\n /**\n * You can call methods available on the Message\n * component such as handleEdit, handleDelete, handleAction etc.\n *\n * Source - [Message](https://github.com/GetStream/stream-chat-react-native/blob/master/src/components/Message/Message.tsx)\n *\n * By default, we show the overlay with all the message actions on long press.\n *\n * @param message Message object which was long pressed\n * @param event Event object for onLongPress event\n **/\n onLongPress?: (\n payload: Partial<MessageTouchableHandlerPayload<At, Ch, Co, Ev, Me, Re, Us>>,\n ) => void;\n\n /**\n * You can call methods available on the Message\n * component such as handleEdit, handleDelete, handleAction etc.\n *\n * Source - [Message](https://github.com/GetStream/stream-chat-react-native/blob/master/src/components/Message/Message.tsx)\n *\n * By default, we will dismiss the keyboard on press.\n *\n * @param message Message object which was long pressed\n * @param event Event object for onLongPress event\n * */\n onPress?: (\n payload: Partial<MessageTouchableHandlerPayload<At, Ch, Co, Ev, Me, Re, Us>>,\n ) => void;\n onPressIn?: (\n payload: Partial<MessageTouchableHandlerPayload<At, Ch, Co, Ev, Me, Re, Us>>,\n ) => void;\n /**\n * Handler to open the thread on message. This is callback for touch event for replies button.\n *\n * @param message A message object to open the thread upon.\n */\n onThreadSelect?: (message: MessageType<At, Ch, Co, Ev, Me, Re, Us>) => void;\n showUnreadUnderlay?: boolean;\n style?: StyleProp<ViewStyle>;\n };\n\n/**\n * Since this component doesn't consume `messages` from `MessagesContext`,\n * we memoized and broke it up to prevent new messages from re-rendering\n * each individual Message component.\n */\nconst MessageWithContext = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n props: MessagePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const isMessageTypeDeleted = props.message.type === 'deleted';\n\n const {\n channel,\n client,\n disabled,\n dismissKeyboard,\n dismissKeyboardOnMessageTouch,\n enableLongPress = true,\n enforceUniqueReaction,\n forceAlignMessages = false,\n goToMessage,\n groupStyles = ['bottom'],\n handleBlock,\n handleCopy,\n handleDelete,\n handleEdit,\n handleFlag,\n handleMute,\n handlePinMessage,\n handleQuotedReply,\n handleReaction: handleReactionProp,\n handleRetry,\n handleThreadReply,\n lastReceivedId,\n members,\n message,\n messageActions: messageActionsProp = defaultMessageActions,\n messageContentOrder: messageContentOrderProp,\n messagesContext,\n MessageSimple,\n onLongPress: onLongPressProp,\n onLongPressMessage: onLongPressMessageProp,\n onPress: onPressProp,\n onPressMessage: onPressMessageProp,\n onPressIn: onPressInProp,\n onPressInMessage: onPressInMessageProp,\n onThreadSelect,\n openThread,\n OverlayReactionList,\n preventPress,\n removeMessage,\n retrySendMessage,\n selectReaction,\n setData,\n setEditingState,\n setOverlay,\n setQuotedMessageState,\n showAvatar,\n showMessageStatus,\n showUnreadUnderlay,\n style,\n supportedReactions,\n t,\n isTargetedMessage,\n threadList = false,\n updateMessage,\n } = props;\n\n const {\n theme: {\n colors: { bg_gradient_start, targetedMessageBackground },\n messageSimple: { targetedMessageUnderlay },\n },\n } = useTheme();\n\n const actionsEnabled = message.type === 'regular' && message.status === 'received';\n\n const isMyMessage = client && message && client.userID === message.user?.id;\n\n const handleAction = async (name: string, value: string) => {\n if (message.id) {\n const data = await channel?.sendAction(message.id, { [name]: value });\n if (data?.message) {\n updateMessage(data.message);\n } else {\n removeMessage({\n id: message.id,\n parent_id: message.parent_id,\n });\n }\n }\n };\n\n const onPressQuotedMessage = (quotedMessage: MessageType<At, Ch, Co, Ev, Me, Re, Us>) => {\n if (!goToMessage) return;\n\n goToMessage(quotedMessage.id);\n };\n\n const onPress = (error = message.type === 'error' || message.status === 'failed') => {\n if (dismissKeyboardOnMessageTouch) {\n Keyboard.dismiss();\n }\n const quotedMessage = message.quoted_message as MessageType<At, Ch, Co, Ev, Me, Re, Us>;\n if (error) {\n showMessageOverlay(false, true);\n } else if (quotedMessage) {\n onPressQuotedMessage(quotedMessage);\n }\n };\n\n const alignment =\n forceAlignMessages && (forceAlignMessages === 'left' || forceAlignMessages === 'right')\n ? forceAlignMessages\n : isMyMessage\n ? 'right'\n : 'left';\n\n /**\n * attachments contain files/images or other attachments\n *\n * if a URL attachment is present with a file/image then we\n * show just the text and markdown should make the link\n * clickable\n */\n const attachments =\n !isMessageTypeDeleted && Array.isArray(message.attachments)\n ? message.attachments.reduce(\n (acc, cur) => {\n if (cur.type === 'file' || cur.type === 'video') {\n acc.files.push(cur);\n acc.other = []; // remove other attachments if a file exists\n } else if (cur.type === 'image' && !cur.title_link && !cur.og_scrape_url) {\n /**\n * this next if is not combined with the above one for cases where we have\n * an image with no url links at all falling back to being an attachment\n */\n if (cur.image_url || cur.thumb_url) {\n acc.images.push(cur);\n acc.other = []; // remove other attachments if an image exists\n }\n // only add other attachments if there are no files/images\n } else if (!acc.files.length && !acc.images.length) {\n acc.other.push(cur);\n }\n\n return acc;\n },\n {\n files: [] as Attachment<At>[],\n images: [] as Attachment<At>[],\n other: [] as Attachment<At>[],\n },\n )\n : {\n files: [] as Attachment<At>[],\n images: [] as Attachment<At>[],\n other: [] as Attachment<At>[],\n };\n\n /**\n * Check if any actions to prevent long press\n */\n const hasAttachmentActions =\n !isMessageTypeDeleted &&\n Array.isArray(message.attachments) &&\n message.attachments.some((attachment) => attachment.actions && attachment.actions.length);\n\n const messageContentOrder = messageContentOrderProp.filter((content) => {\n if (content === 'quoted_reply') {\n return !!message.quoted_message;\n }\n\n switch (content) {\n case 'attachments':\n return !!attachments.other.length;\n case 'files':\n return !!attachments.files.length;\n case 'gallery':\n return !!attachments.images.length;\n case 'text':\n default:\n return !!message.text;\n }\n });\n\n const onlyEmojis =\n !attachments.files.length &&\n !attachments.images.length &&\n !attachments.other.length &&\n !!message.text &&\n emojiRegex.test(message.text);\n\n const onOpenThread = () => {\n if (onThreadSelect) {\n onThreadSelect(message);\n }\n if (openThread) {\n openThread(message);\n }\n };\n\n const hasReactions =\n !isMessageTypeDeleted && !!message.latest_reactions && message.latest_reactions.length > 0;\n\n const clientId = client.userID;\n\n const reactions = hasReactions\n ? supportedReactions.reduce((acc, cur) => {\n const reactionType = cur.type;\n const reactionsOfReactionType = message.latest_reactions?.filter(\n (reaction) => reaction.type === reactionType,\n );\n\n if (reactionsOfReactionType?.length) {\n const hasOwnReaction = reactionsOfReactionType.some(\n (reaction) => reaction.user_id === clientId,\n );\n acc.push({ own: hasOwnReaction, type: reactionType });\n }\n\n return acc;\n }, [] as Reactions)\n : [];\n\n const ownCapabilities = useOwnCapabilitiesContext();\n\n const {\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleTogglePinMessage,\n handleToggleReaction,\n } = useMessageActionHandlers({\n channel,\n client,\n enforceUniqueReaction,\n message,\n retrySendMessage,\n setEditingState,\n setQuotedMessageState,\n supportedReactions,\n updateMessage,\n });\n\n const {\n blockUser,\n copyMessage,\n deleteMessage,\n editMessage,\n flagMessage,\n handleReaction,\n muteUser,\n pinMessage,\n quotedReply,\n retry,\n threadReply,\n unpinMessage,\n } = useMessageActions({\n channel,\n client,\n enforceUniqueReaction,\n handleBlock,\n handleCopy,\n handleDelete,\n handleEdit,\n handleFlag,\n handleMute,\n handlePinMessage,\n handleQuotedReply,\n handleReaction: handleReactionProp,\n handleRetry,\n handleThreadReply,\n message,\n onThreadSelect,\n openThread,\n retrySendMessage,\n selectReaction,\n setEditingState,\n setOverlay,\n setQuotedMessageState,\n supportedReactions,\n t,\n updateMessage,\n });\n\n const showMessageOverlay = async (\n messageReactions = false,\n error = message.type === 'error' || message.status === 'failed',\n ) => {\n await dismissKeyboard();\n\n const isThreadMessage = threadList || !!message.parent_id;\n\n const dismissOverlay = () => setOverlay('none');\n\n const messageActions =\n typeof messageActionsProp !== 'function'\n ? messageActionsProp\n : messageActionsProp({\n blockUser,\n copyMessage,\n deleteMessage,\n dismissOverlay,\n editMessage,\n error,\n flagMessage,\n isMyMessage,\n isThreadMessage,\n message,\n messageReactions,\n muteUser,\n ownCapabilities,\n pinMessage,\n quotedReply,\n retry,\n threadReply,\n unpinMessage,\n });\n\n setData({\n alignment,\n clientId: client.userID,\n files: attachments.files,\n groupStyles,\n handleReaction: ownCapabilities.sendReaction ? handleReaction : undefined,\n images: attachments.images,\n message,\n messageActions: messageActions?.filter(Boolean) as MessageActionListItemProps[] | undefined,\n messageContext: { ...messageContext, disabled: true, preventPress: true },\n messageReactionTitle: !error && messageReactions ? t('Message Reactions') : undefined,\n messagesContext: { ...messagesContext, messageContentOrder },\n onlyEmojis,\n otherAttachments: attachments.other,\n OverlayReactionList,\n ownCapabilities,\n supportedReactions,\n threadList,\n });\n\n setOverlay('message');\n };\n\n const actionHandlers: MessageActionHandlers = {\n deleteMessage: handleDeleteMessage,\n editMessage: handleEditMessage,\n pinMessage: handleTogglePinMessage,\n quotedReply: handleQuotedReplyMessage,\n resendMessage: handleResendMessage,\n showMessageOverlay,\n toggleBanUser: handleToggleBanUser,\n toggleMuteUser: handleToggleMuteUser,\n toggleReaction: handleToggleReaction,\n };\n\n const onLongPressMessage =\n disabled || hasAttachmentActions\n ? () => null\n : onLongPressMessageProp\n ? (payload?: TouchableHandlerPayload) =>\n onLongPressMessageProp({\n actionHandlers,\n defaultHandler: payload?.defaultHandler || showMessageOverlay,\n emitter: payload?.emitter || 'message',\n event: payload?.event,\n message,\n })\n : onLongPressProp\n ? (payload?: TouchableHandlerPayload) =>\n onLongPressProp({\n actionHandlers,\n defaultHandler: payload?.defaultHandler || showMessageOverlay,\n emitter: payload?.emitter || 'message',\n event: payload?.event,\n })\n : enableLongPress\n ? () => {\n triggerHaptic('impactMedium');\n showMessageOverlay(false);\n }\n : () => null;\n\n const messageContext = useCreateMessageContext({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files: attachments.files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images: attachments.images,\n isMyMessage,\n lastGroupMessage: groupStyles?.[0] === 'single' || groupStyles?.[0] === 'bottom',\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress: onLongPressMessage,\n onlyEmojis,\n onOpenThread,\n onPress: (payload) => {\n onPressProp\n ? onPressProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler || onPress,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : onPressMessageProp\n ? onPressMessageProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler || onPress,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : payload.defaultHandler\n ? payload.defaultHandler()\n : onPress();\n },\n onPressIn:\n onPressInProp || onPressInMessageProp\n ? (payload) => {\n onPressInProp\n ? onPressInProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : onPressInMessageProp &&\n onPressInMessageProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n });\n }\n : null,\n otherAttachments: attachments.other,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus: typeof showMessageStatus === 'boolean' ? showMessageStatus : isMyMessage,\n threadList,\n });\n\n if (!(isMessageTypeDeleted || messageContentOrder.length)) return null;\n\n return (\n <View\n style={[message.pinned && { backgroundColor: targetedMessageBackground }]}\n testID='message-wrapper'\n >\n <View\n style={[\n style,\n {\n backgroundColor: showUnreadUnderlay ? bg_gradient_start : undefined,\n },\n ]}\n >\n <View\n style={[\n isTargetedMessage\n ? { backgroundColor: targetedMessageBackground, ...targetedMessageUnderlay }\n : {},\n ]}\n >\n <MessageProvider value={messageContext}>\n <MessageSimple />\n </MessageProvider>\n </View>\n </View>\n </View>\n );\n};\n\nconst areEqual = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n prevProps: MessagePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n nextProps: MessagePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n goToMessage: prevGoToMessage,\n isTargetedMessage: prevIsTargetedMessage,\n lastReceivedId: prevLastReceivedId,\n members: prevMembers,\n message: prevMessage,\n mutedUsers: prevMutedUsers,\n showUnreadUnderlay: prevShowUnreadUnderlay,\n t: prevT,\n } = prevProps;\n const {\n goToMessage: nextGoToMessage,\n isTargetedMessage: nextIsTargetedMessage,\n lastReceivedId: nextLastReceivedId,\n members: nextMembers,\n message: nextMessage,\n mutedUsers: nextMutedUsers,\n showUnreadUnderlay: nextShowUnreadUnderlay,\n t: nextT,\n } = nextProps;\n\n const membersEqual = Object.keys(prevMembers).length === Object.keys(nextMembers).length;\n if (!membersEqual) return false;\n\n const repliesEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!repliesEqual) return false;\n\n const lastReceivedIdChangedAndMatters =\n prevLastReceivedId !== nextLastReceivedId &&\n (prevLastReceivedId === prevMessage.id ||\n prevLastReceivedId === nextMessage.id ||\n nextLastReceivedId === prevMessage.id ||\n nextLastReceivedId === nextMessage.id);\n\n if (lastReceivedIdChangedAndMatters) return false;\n\n const goToMessageChangedAndMatters =\n nextMessage.quoted_message_id && prevGoToMessage !== nextGoToMessage;\n\n if (goToMessageChangedAndMatters) return false;\n\n const isPrevMessageTypeDeleted = prevMessage.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage.type === 'deleted';\n\n const messageEqual =\n isPrevMessageTypeDeleted === isNextMessageTypeDeleted &&\n (isMessageWithStylesReadByAndDateSeparator(prevMessage) && prevMessage.readBy) ===\n (isMessageWithStylesReadByAndDateSeparator(nextMessage) && nextMessage.readBy) &&\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n prevMessage.text === nextMessage.text &&\n prevMessage.updated_at === nextMessage.updated_at &&\n prevMessage.pinned === nextMessage.pinned;\n\n if (!messageEqual) return false;\n\n const isPrevQuotedMessageTypeDeleted = prevMessage.quoted_message?.type === 'deleted';\n const isNextQuotedMessageTypeDeleted = nextMessage.quoted_message?.type === 'deleted';\n\n const quotedMessageEqual =\n prevMessage.quoted_message?.id === nextMessage.quoted_message?.id &&\n isPrevQuotedMessageTypeDeleted === isNextQuotedMessageTypeDeleted;\n\n if (!quotedMessageEqual) return false;\n\n const messageUserBannedEqual = prevMessage.user?.banned === nextMessage.user?.banned;\n if (!messageUserBannedEqual) return false;\n\n const prevMessageAttachments = prevMessage.attachments;\n const nextMessageAttachments = nextMessage.attachments;\n const attachmentsEqual =\n (Array.isArray(prevMessageAttachments) &&\n Array.isArray(nextMessageAttachments) &&\n prevMessageAttachments.length === nextMessageAttachments.length &&\n prevMessageAttachments.every((attachment, index) =>\n attachment.type === 'image'\n ? attachment.image_url === nextMessageAttachments[index].image_url &&\n attachment.thumb_url === nextMessageAttachments[index].thumb_url\n : attachment.type === nextMessageAttachments[index].type,\n )) ||\n prevMessageAttachments === nextMessageAttachments;\n if (!attachmentsEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n const mutedUserSame =\n prevMutedUsers.length === nextMutedUsers.length ||\n prevMutedUsers.some((mutedUser) => mutedUser.target.id === prevMessage.user?.id) ===\n nextMutedUsers.some((mutedUser) => mutedUser.target.id === nextMessage.user?.id);\n if (!mutedUserSame) return false;\n\n const showUnreadUnderlayEqual = prevShowUnreadUnderlay === nextShowUnreadUnderlay;\n if (!showUnreadUnderlayEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const targetedMessageEqual = prevIsTargetedMessage === nextIsTargetedMessage;\n if (!targetedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessage = React.memo(MessageWithContext, areEqual) as typeof MessageWithContext;\n\nexport type MessageProps<\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n> = Partial<Omit<MessagePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'groupStyles' | 'message'>> &\n Pick<MessagePropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'groupStyles' | 'message'>;\n\n/**\n * Message - A high level component which implements all the logic required for a message.\n * The actual rendering of the message is delegated via the \"Message\" property\n *\n * @example ./Message.md\n */\nexport const Message = <\n At extends UnknownType = DefaultAttachmentType,\n Ch extends UnknownType = DefaultChannelType,\n Co extends string = DefaultCommandType,\n Ev extends UnknownType = DefaultEventType,\n Me extends UnknownType = DefaultMessageType,\n Re extends UnknownType = DefaultReactionType,\n Us extends UnknownType = DefaultUserType,\n>(\n props: MessageProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { channel, disabled, enforceUniqueReaction, members } =\n useChannelContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { client, mutedUsers } = useChatContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { dismissKeyboard } = useKeyboardContext();\n const { setData } = useMessageOverlayContext<At, Ch, Co, Ev, Me, Re, Us>();\n const messagesContext = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { setOverlay } = useOverlayContext();\n const { openThread } = useThreadContext<At, Ch, Co, Ev, Me, Re, Us>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedMessage<At, Ch, Co, Ev, Me, Re, Us>\n {...messagesContext}\n {...{\n channel,\n client,\n disabled,\n dismissKeyboard,\n enforceUniqueReaction,\n members,\n messagesContext,\n mutedUsers,\n openThread,\n setData,\n setOverlay,\n t,\n }}\n {...props}\n />\n );\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["Message.tsx"],"names":["MessageWithContext","props","isMessageTypeDeleted","message","type","channel","client","disabled","dismissKeyboard","dismissKeyboardOnMessageTouch","enableLongPress","enforceUniqueReaction","forceAlignMessages","goToMessage","groupStyles","handleBlock","handleCopy","handleDelete","handleEdit","handleFlag","handleMute","handlePinMessage","handleQuotedReply","handleReactionProp","handleReaction","handleRetry","handleThreadReply","lastReceivedId","members","messageActions","messageActionsProp","defaultMessageActions","messageContentOrderProp","messageContentOrder","messagesContext","MessageSimple","onLongPressProp","onLongPress","onLongPressMessageProp","onLongPressMessage","onPressProp","onPress","onPressMessageProp","onPressMessage","onPressInProp","onPressIn","onPressInMessageProp","onPressInMessage","onThreadSelect","openThread","OverlayReactionList","preventPress","removeMessage","retrySendMessage","selectReaction","setData","setEditingState","setOverlay","setQuotedMessageState","showAvatar","showMessageStatus","showUnreadUnderlay","style","supportedReactions","t","isTargetedMessage","threadList","updateMessage","theme","colors","bg_gradient_start","targetedMessageBackground","targetedMessageUnderlay","messageSimple","actionsEnabled","status","MessageStatusTypes","RECEIVED","isMyMessage","userID","user","id","handleAction","name","value","sendAction","data","parent_id","onPressQuotedMessage","quotedMessage","errorOrFailed","FAILED","error","Keyboard","dismiss","quoted_message","showMessageOverlay","alignment","attachments","Array","isArray","reduce","acc","cur","files","push","other","title_link","og_scrape_url","image_url","thumb_url","images","length","hasAttachmentActions","some","attachment","actions","filter","content","text","onlyEmojis","emojiRegex","test","onOpenThread","hasReactions","latest_reactions","clientId","reactions","reactionType","reactionsOfReactionType","reaction","hasOwnReaction","user_id","own","ownCapabilities","handleDeleteMessage","handleEditMessage","handleQuotedReplyMessage","handleResendMessage","handleToggleBanUser","handleToggleMuteUser","handleTogglePinMessage","handleToggleReaction","blockUser","copyMessage","deleteMessage","editMessage","flagMessage","muteUser","pinMessage","quotedReply","retry","threadReply","unpinMessage","messageReactions","isThreadMessage","dismissOverlay","sendReaction","undefined","Boolean","messageContext","messageReactionTitle","otherAttachments","actionHandlers","resendMessage","toggleBanUser","toggleMuteUser","toggleReaction","payload","defaultHandler","emitter","event","lastGroupMessage","pinned","backgroundColor","areEqual","prevProps","nextProps","prevGoToMessage","prevIsTargetedMessage","prevLastReceivedId","prevMembers","prevMessage","prevMutedUsers","mutedUsers","prevShowUnreadUnderlay","prevT","nextGoToMessage","nextIsTargetedMessage","nextLastReceivedId","nextMembers","nextMessage","nextMutedUsers","nextShowUnreadUnderlay","nextT","membersEqual","Object","keys","repliesEqual","reply_count","lastReceivedIdChangedAndMatters","goToMessageChangedAndMatters","quoted_message_id","isPrevMessageTypeDeleted","isNextMessageTypeDeleted","messageEqual","readBy","updated_at","isPrevQuotedMessageTypeDeleted","isNextQuotedMessageTypeDeleted","quotedMessageEqual","messageUserBannedEqual","banned","prevMessageAttachments","nextMessageAttachments","attachmentsEqual","every","index","latestReactionsEqual","mutedUserSame","mutedUser","target","showUnreadUnderlayEqual","tEqual","targetedMessageEqual","MemoizedMessage","React","memo","Message"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { GestureResponderEvent, Keyboard, StyleProp, View, ViewStyle } from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { useCreateMessageContext } from './hooks/useCreateMessageContext';\nimport { useMessageActionHandlers } from './hooks/useMessageActionHandlers';\nimport { useMessageActions } from './hooks/useMessageActions';\nimport { messageActions as defaultMessageActions } from './utils/messageActions';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\nimport {\n KeyboardContextValue,\n useKeyboardContext,\n} from '../../contexts/keyboardContext/KeyboardContext';\nimport {\n MessageContextValue,\n MessageProvider,\n Reactions,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessageOverlayContextValue,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport {\n OverlayContextValue,\n useOverlayContext,\n} from '../../contexts/overlayContext/OverlayContext';\nimport { useOwnCapabilitiesContext } from '../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { ThreadContextValue, useThreadContext } from '../../contexts/threadContext/ThreadContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\n\nimport { triggerHaptic } from '../../native';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { emojiRegex, MessageStatusTypes } from '../../utils/utils';\n\nimport {\n isMessageWithStylesReadByAndDateSeparator,\n MessageType,\n} from '../MessageList/hooks/useMessageList';\nimport type { MessageActionListItemProps } from '../MessageOverlay/MessageActionListItem';\n\nexport type TouchableHandlerPayload = {\n defaultHandler?: () => void;\n emitter?:\n | 'card'\n | 'fileAttachment'\n | 'gallery'\n | 'giphy'\n | 'message'\n | 'messageContent'\n | 'messageReplies'\n | 'reactionList'\n | 'textLink'\n | 'textMention';\n event?: GestureResponderEvent;\n};\n\nexport type MessageTouchableHandlerPayload<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = TouchableHandlerPayload & {\n actionHandlers?: MessageActionHandlers;\n message?: MessageType<StreamChatGenerics>;\n};\n\nexport type MessageActionHandlers = {\n deleteMessage: () => Promise<void>;\n editMessage: () => void;\n pinMessage: () => Promise<void>;\n quotedReply: () => void;\n resendMessage: () => Promise<void>;\n showMessageOverlay: () => void;\n toggleBanUser: () => Promise<void>;\n toggleMuteUser: () => Promise<void>;\n toggleReaction: (reactionType: string) => Promise<void>;\n};\n\nexport type MessagePropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n ChannelContextValue<StreamChatGenerics>,\n 'channel' | 'disabled' | 'enforceUniqueReaction' | 'members'\n> &\n Pick<ChatContextValue<StreamChatGenerics>, 'client' | 'mutedUsers'> &\n Pick<KeyboardContextValue, 'dismissKeyboard'> &\n Partial<Omit<MessageContextValue<StreamChatGenerics>, 'groupStyles' | 'message'>> &\n Pick<MessageContextValue<StreamChatGenerics>, 'groupStyles' | 'message'> &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'dismissKeyboardOnMessageTouch'\n | 'forceAlignMessages'\n | 'handleBlock'\n | 'handleCopy'\n | 'handleDelete'\n | 'handleEdit'\n | 'handleFlag'\n | 'handleMute'\n | 'handlePinMessage'\n | 'handleQuotedReply'\n | 'handleReaction'\n | 'handleRetry'\n | 'handleThreadReply'\n | 'messageActions'\n | 'messageContentOrder'\n | 'MessageSimple'\n | 'onLongPressMessage'\n | 'onPressInMessage'\n | 'onPressMessage'\n | 'OverlayReactionList'\n | 'removeMessage'\n | 'retrySendMessage'\n | 'selectReaction'\n | 'setEditingState'\n | 'setQuotedMessageState'\n | 'supportedReactions'\n | 'updateMessage'\n > &\n Pick<MessageOverlayContextValue<StreamChatGenerics>, 'setData'> &\n Pick<OverlayContextValue, 'setOverlay'> &\n Pick<ThreadContextValue<StreamChatGenerics>, 'openThread'> &\n Pick<TranslationContextValue, 't'> & {\n messagesContext: MessagesContextValue<StreamChatGenerics>;\n /**\n * Whether or not users are able to long press messages.\n */\n enableLongPress?: boolean;\n goToMessage?: (messageId: string) => void;\n isTargetedMessage?: boolean;\n /**\n * Array of allowed actions or null on message, this can also be a function returning the array.\n * If all the actions need to be disabled an empty array should be provided as value of prop\n */\n /**\n * You can call methods available on the Message\n * component such as handleEdit, handleDelete, handleAction etc.\n *\n * Source - [Message](https://github.com/GetStream/stream-chat-react-native/blob/master/src/components/Message/Message.tsx)\n *\n * By default, we show the overlay with all the message actions on long press.\n *\n * @param message Message object which was long pressed\n * @param event Event object for onLongPress event\n **/\n onLongPress?: (payload: Partial<MessageTouchableHandlerPayload<StreamChatGenerics>>) => void;\n\n /**\n * You can call methods available on the Message\n * component such as handleEdit, handleDelete, handleAction etc.\n *\n * Source - [Message](https://github.com/GetStream/stream-chat-react-native/blob/master/src/components/Message/Message.tsx)\n *\n * By default, we will dismiss the keyboard on press.\n *\n * @param message Message object which was long pressed\n * @param event Event object for onLongPress event\n * */\n onPress?: (payload: Partial<MessageTouchableHandlerPayload<StreamChatGenerics>>) => void;\n onPressIn?: (payload: Partial<MessageTouchableHandlerPayload<StreamChatGenerics>>) => void;\n /**\n * Handler to open the thread on message. This is callback for touch event for replies button.\n *\n * @param message A message object to open the thread upon.\n */\n onThreadSelect?: (message: MessageType<StreamChatGenerics>) => void;\n showUnreadUnderlay?: boolean;\n style?: StyleProp<ViewStyle>;\n };\n\n/**\n * Since this component doesn't consume `messages` from `MessagesContext`,\n * we memoized and broke it up to prevent new messages from re-rendering\n * each individual Message component.\n */\nconst MessageWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessagePropsWithContext<StreamChatGenerics>,\n) => {\n const isMessageTypeDeleted = props.message.type === 'deleted';\n\n const {\n channel,\n client,\n disabled,\n dismissKeyboard,\n dismissKeyboardOnMessageTouch,\n enableLongPress = true,\n enforceUniqueReaction,\n forceAlignMessages = false,\n goToMessage,\n groupStyles = ['bottom'],\n handleBlock,\n handleCopy,\n handleDelete,\n handleEdit,\n handleFlag,\n handleMute,\n handlePinMessage,\n handleQuotedReply,\n handleReaction: handleReactionProp,\n handleRetry,\n handleThreadReply,\n lastReceivedId,\n members,\n message,\n messageActions: messageActionsProp = defaultMessageActions,\n messageContentOrder: messageContentOrderProp,\n messagesContext,\n MessageSimple,\n onLongPress: onLongPressProp,\n onLongPressMessage: onLongPressMessageProp,\n onPress: onPressProp,\n onPressMessage: onPressMessageProp,\n onPressIn: onPressInProp,\n onPressInMessage: onPressInMessageProp,\n onThreadSelect,\n openThread,\n OverlayReactionList,\n preventPress,\n removeMessage,\n retrySendMessage,\n selectReaction,\n setData,\n setEditingState,\n setOverlay,\n setQuotedMessageState,\n showAvatar,\n showMessageStatus,\n showUnreadUnderlay,\n style,\n supportedReactions,\n t,\n isTargetedMessage,\n threadList = false,\n updateMessage,\n } = props;\n\n const {\n theme: {\n colors: { bg_gradient_start, targetedMessageBackground },\n messageSimple: { targetedMessageUnderlay },\n },\n } = useTheme();\n\n const actionsEnabled =\n message.type === 'regular' && message.status === MessageStatusTypes.RECEIVED;\n\n const isMyMessage = client && message && client.userID === message.user?.id;\n\n const handleAction = async (name: string, value: string) => {\n if (message.id) {\n const data = await channel?.sendAction(message.id, { [name]: value });\n if (data?.message) {\n updateMessage(data.message);\n } else {\n removeMessage({\n id: message.id,\n parent_id: message.parent_id,\n });\n }\n }\n };\n\n const onPressQuotedMessage = (quotedMessage: MessageType<StreamChatGenerics>) => {\n if (!goToMessage) return;\n\n goToMessage(quotedMessage.id);\n };\n\n const errorOrFailed = message.type === 'error' || message.status === MessageStatusTypes.FAILED;\n\n const onPress = (error = errorOrFailed) => {\n if (dismissKeyboardOnMessageTouch) {\n Keyboard.dismiss();\n }\n const quotedMessage = message.quoted_message as MessageType<StreamChatGenerics>;\n if (error) {\n showMessageOverlay(false, true);\n } else if (quotedMessage) {\n onPressQuotedMessage(quotedMessage);\n }\n };\n\n const alignment =\n forceAlignMessages && (forceAlignMessages === 'left' || forceAlignMessages === 'right')\n ? forceAlignMessages\n : isMyMessage\n ? 'right'\n : 'left';\n\n /**\n * attachments contain files/images or other attachments\n *\n * if a URL attachment is present with a file/image then we\n * show just the text and markdown should make the link\n * clickable\n */\n const attachments =\n !isMessageTypeDeleted && Array.isArray(message.attachments)\n ? message.attachments.reduce(\n (acc, cur) => {\n if (cur.type === 'file' || cur.type === 'video') {\n acc.files.push(cur);\n acc.other = []; // remove other attachments if a file exists\n } else if (cur.type === 'image' && !cur.title_link && !cur.og_scrape_url) {\n /**\n * this next if is not combined with the above one for cases where we have\n * an image with no url links at all falling back to being an attachment\n */\n if (cur.image_url || cur.thumb_url) {\n acc.images.push(cur);\n acc.other = []; // remove other attachments if an image exists\n }\n // only add other attachments if there are no files/images\n } else if (!acc.files.length && !acc.images.length) {\n acc.other.push(cur);\n }\n\n return acc;\n },\n {\n files: [] as Attachment<StreamChatGenerics>[],\n images: [] as Attachment<StreamChatGenerics>[],\n other: [] as Attachment<StreamChatGenerics>[],\n },\n )\n : {\n files: [] as Attachment<StreamChatGenerics>[],\n images: [] as Attachment<StreamChatGenerics>[],\n other: [] as Attachment<StreamChatGenerics>[],\n };\n\n /**\n * Check if any actions to prevent long press\n */\n const hasAttachmentActions =\n !isMessageTypeDeleted &&\n Array.isArray(message.attachments) &&\n message.attachments.some((attachment) => attachment.actions && attachment.actions.length);\n\n const messageContentOrder = messageContentOrderProp.filter((content) => {\n if (content === 'quoted_reply') {\n return !!message.quoted_message;\n }\n\n switch (content) {\n case 'attachments':\n return !!attachments.other.length;\n case 'files':\n return !!attachments.files.length;\n case 'gallery':\n return !!attachments.images.length;\n case 'text':\n default:\n return !!message.text;\n }\n });\n\n const onlyEmojis =\n !attachments.files.length &&\n !attachments.images.length &&\n !attachments.other.length &&\n !!message.text &&\n emojiRegex.test(message.text);\n\n const onOpenThread = () => {\n if (onThreadSelect) {\n onThreadSelect(message);\n }\n if (openThread) {\n openThread(message);\n }\n };\n\n const hasReactions =\n !isMessageTypeDeleted && !!message.latest_reactions && message.latest_reactions.length > 0;\n\n const clientId = client.userID;\n\n const reactions = hasReactions\n ? supportedReactions.reduce((acc, cur) => {\n const reactionType = cur.type;\n const reactionsOfReactionType = message.latest_reactions?.filter(\n (reaction) => reaction.type === reactionType,\n );\n\n if (reactionsOfReactionType?.length) {\n const hasOwnReaction = reactionsOfReactionType.some(\n (reaction) => reaction.user_id === clientId,\n );\n acc.push({ own: hasOwnReaction, type: reactionType });\n }\n\n return acc;\n }, [] as Reactions)\n : [];\n\n const ownCapabilities = useOwnCapabilitiesContext();\n\n const {\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleTogglePinMessage,\n handleToggleReaction,\n } = useMessageActionHandlers({\n channel,\n client,\n enforceUniqueReaction,\n message,\n removeMessage,\n retrySendMessage,\n setEditingState,\n setQuotedMessageState,\n supportedReactions,\n updateMessage,\n });\n\n const {\n blockUser,\n copyMessage,\n deleteMessage,\n editMessage,\n flagMessage,\n handleReaction,\n muteUser,\n pinMessage,\n quotedReply,\n retry,\n threadReply,\n unpinMessage,\n } = useMessageActions({\n channel,\n client,\n enforceUniqueReaction,\n handleBlock,\n handleCopy,\n handleDelete,\n handleEdit,\n handleFlag,\n handleMute,\n handlePinMessage,\n handleQuotedReply,\n handleReaction: handleReactionProp,\n handleRetry,\n handleThreadReply,\n message,\n onThreadSelect,\n openThread,\n removeMessage,\n retrySendMessage,\n selectReaction,\n setEditingState,\n setOverlay,\n setQuotedMessageState,\n supportedReactions,\n t,\n updateMessage,\n });\n const showMessageOverlay = async (messageReactions = false, error = errorOrFailed) => {\n await dismissKeyboard();\n\n const isThreadMessage = threadList || !!message.parent_id;\n\n const dismissOverlay = () => setOverlay('none');\n\n const messageActions =\n typeof messageActionsProp !== 'function'\n ? messageActionsProp\n : messageActionsProp({\n blockUser,\n copyMessage,\n deleteMessage,\n dismissOverlay,\n editMessage,\n error,\n flagMessage,\n isMyMessage,\n isThreadMessage,\n message,\n messageReactions,\n muteUser,\n ownCapabilities,\n pinMessage,\n quotedReply,\n retry,\n threadReply,\n unpinMessage,\n });\n\n setData({\n alignment,\n clientId: client.userID,\n files: attachments.files,\n groupStyles,\n handleReaction: ownCapabilities.sendReaction ? handleReaction : undefined,\n images: attachments.images,\n message,\n messageActions: messageActions?.filter(Boolean) as MessageActionListItemProps[] | undefined,\n messageContext: { ...messageContext, disabled: true, preventPress: true },\n messageReactionTitle: !error && messageReactions ? t('Message Reactions') : undefined,\n messagesContext: { ...messagesContext, messageContentOrder },\n onlyEmojis,\n otherAttachments: attachments.other,\n OverlayReactionList,\n ownCapabilities,\n supportedReactions,\n threadList,\n });\n\n setOverlay('message');\n };\n\n const actionHandlers: MessageActionHandlers = {\n deleteMessage: handleDeleteMessage,\n editMessage: handleEditMessage,\n pinMessage: handleTogglePinMessage,\n quotedReply: handleQuotedReplyMessage,\n resendMessage: handleResendMessage,\n showMessageOverlay,\n toggleBanUser: handleToggleBanUser,\n toggleMuteUser: handleToggleMuteUser,\n toggleReaction: handleToggleReaction,\n };\n\n const onLongPressMessage =\n disabled || hasAttachmentActions\n ? () => null\n : onLongPressMessageProp\n ? (payload?: TouchableHandlerPayload) =>\n onLongPressMessageProp({\n actionHandlers,\n defaultHandler: payload?.defaultHandler || showMessageOverlay,\n emitter: payload?.emitter || 'message',\n event: payload?.event,\n message,\n })\n : onLongPressProp\n ? (payload?: TouchableHandlerPayload) =>\n onLongPressProp({\n actionHandlers,\n defaultHandler: payload?.defaultHandler || showMessageOverlay,\n emitter: payload?.emitter || 'message',\n event: payload?.event,\n })\n : enableLongPress\n ? () => {\n triggerHaptic('impactMedium');\n showMessageOverlay(false);\n }\n : () => null;\n\n const messageContext = useCreateMessageContext({\n actionsEnabled,\n alignment,\n channel,\n disabled,\n files: attachments.files,\n goToMessage,\n groupStyles,\n handleAction,\n handleDeleteMessage,\n handleEditMessage,\n handleQuotedReplyMessage,\n handleResendMessage,\n handleToggleBanUser,\n handleToggleMuteUser,\n handleToggleReaction,\n hasReactions,\n images: attachments.images,\n isMyMessage,\n lastGroupMessage: groupStyles?.[0] === 'single' || groupStyles?.[0] === 'bottom',\n lastReceivedId,\n members,\n message,\n messageContentOrder,\n onLongPress: onLongPressMessage,\n onlyEmojis,\n onOpenThread,\n onPress: (payload) => {\n onPressProp\n ? onPressProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler || onPress,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : onPressMessageProp\n ? onPressMessageProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler || onPress,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : payload.defaultHandler\n ? payload.defaultHandler()\n : onPress();\n },\n onPressIn:\n onPressInProp || onPressInMessageProp\n ? (payload) => {\n onPressInProp\n ? onPressInProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n })\n : onPressInMessageProp &&\n onPressInMessageProp({\n actionHandlers,\n defaultHandler: payload.defaultHandler,\n emitter: payload.emitter || 'message',\n event: payload.event,\n message,\n });\n }\n : null,\n otherAttachments: attachments.other,\n preventPress,\n reactions,\n showAvatar,\n showMessageOverlay,\n showMessageStatus: typeof showMessageStatus === 'boolean' ? showMessageStatus : isMyMessage,\n threadList,\n });\n\n if (!(isMessageTypeDeleted || messageContentOrder.length)) return null;\n\n return (\n <View\n style={[message.pinned && { backgroundColor: targetedMessageBackground }]}\n testID='message-wrapper'\n >\n <View\n style={[\n style,\n {\n backgroundColor: showUnreadUnderlay ? bg_gradient_start : undefined,\n },\n ]}\n >\n <View\n style={[\n isTargetedMessage\n ? { backgroundColor: targetedMessageBackground, ...targetedMessageUnderlay }\n : {},\n ]}\n >\n <MessageProvider value={messageContext}>\n <MessageSimple />\n </MessageProvider>\n </View>\n </View>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessagePropsWithContext<StreamChatGenerics>,\n nextProps: MessagePropsWithContext<StreamChatGenerics>,\n) => {\n const {\n goToMessage: prevGoToMessage,\n isTargetedMessage: prevIsTargetedMessage,\n lastReceivedId: prevLastReceivedId,\n members: prevMembers,\n message: prevMessage,\n mutedUsers: prevMutedUsers,\n showUnreadUnderlay: prevShowUnreadUnderlay,\n t: prevT,\n } = prevProps;\n const {\n goToMessage: nextGoToMessage,\n isTargetedMessage: nextIsTargetedMessage,\n lastReceivedId: nextLastReceivedId,\n members: nextMembers,\n message: nextMessage,\n mutedUsers: nextMutedUsers,\n showUnreadUnderlay: nextShowUnreadUnderlay,\n t: nextT,\n } = nextProps;\n\n const membersEqual = Object.keys(prevMembers).length === Object.keys(nextMembers).length;\n if (!membersEqual) return false;\n\n const repliesEqual = prevMessage.reply_count === nextMessage.reply_count;\n if (!repliesEqual) return false;\n\n const lastReceivedIdChangedAndMatters =\n prevLastReceivedId !== nextLastReceivedId &&\n (prevLastReceivedId === prevMessage.id ||\n prevLastReceivedId === nextMessage.id ||\n nextLastReceivedId === prevMessage.id ||\n nextLastReceivedId === nextMessage.id);\n\n if (lastReceivedIdChangedAndMatters) return false;\n\n const goToMessageChangedAndMatters =\n nextMessage.quoted_message_id && prevGoToMessage !== nextGoToMessage;\n\n if (goToMessageChangedAndMatters) return false;\n\n const isPrevMessageTypeDeleted = prevMessage.type === 'deleted';\n const isNextMessageTypeDeleted = nextMessage.type === 'deleted';\n\n const messageEqual =\n isPrevMessageTypeDeleted === isNextMessageTypeDeleted &&\n (isMessageWithStylesReadByAndDateSeparator(prevMessage) && prevMessage.readBy) ===\n (isMessageWithStylesReadByAndDateSeparator(nextMessage) && nextMessage.readBy) &&\n prevMessage.status === nextMessage.status &&\n prevMessage.type === nextMessage.type &&\n prevMessage.text === nextMessage.text &&\n prevMessage.updated_at === nextMessage.updated_at &&\n prevMessage.pinned === nextMessage.pinned;\n\n if (!messageEqual) return false;\n\n const isPrevQuotedMessageTypeDeleted = prevMessage.quoted_message?.type === 'deleted';\n const isNextQuotedMessageTypeDeleted = nextMessage.quoted_message?.type === 'deleted';\n\n const quotedMessageEqual =\n prevMessage.quoted_message?.id === nextMessage.quoted_message?.id &&\n isPrevQuotedMessageTypeDeleted === isNextQuotedMessageTypeDeleted;\n\n if (!quotedMessageEqual) return false;\n\n const messageUserBannedEqual = prevMessage.user?.banned === nextMessage.user?.banned;\n if (!messageUserBannedEqual) return false;\n\n const prevMessageAttachments = prevMessage.attachments;\n const nextMessageAttachments = nextMessage.attachments;\n const attachmentsEqual =\n (Array.isArray(prevMessageAttachments) &&\n Array.isArray(nextMessageAttachments) &&\n prevMessageAttachments.length === nextMessageAttachments.length &&\n prevMessageAttachments.every((attachment, index) =>\n attachment.type === 'image'\n ? attachment.image_url === nextMessageAttachments[index].image_url &&\n attachment.thumb_url === nextMessageAttachments[index].thumb_url\n : attachment.type === nextMessageAttachments[index].type,\n )) ||\n prevMessageAttachments === nextMessageAttachments;\n if (!attachmentsEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n const mutedUserSame =\n prevMutedUsers.length === nextMutedUsers.length ||\n prevMutedUsers.some((mutedUser) => mutedUser.target.id === prevMessage.user?.id) ===\n nextMutedUsers.some((mutedUser) => mutedUser.target.id === nextMessage.user?.id);\n if (!mutedUserSame) return false;\n\n const showUnreadUnderlayEqual = prevShowUnreadUnderlay === nextShowUnreadUnderlay;\n if (!showUnreadUnderlayEqual) return false;\n\n const tEqual = prevT === nextT;\n if (!tEqual) return false;\n\n const targetedMessageEqual = prevIsTargetedMessage === nextIsTargetedMessage;\n if (!targetedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessage = React.memo(MessageWithContext, areEqual) as typeof MessageWithContext;\n\nexport type MessageProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<MessagePropsWithContext<StreamChatGenerics>, 'groupStyles' | 'message'>> &\n Pick<MessagePropsWithContext<StreamChatGenerics>, 'groupStyles' | 'message'>;\n\n/**\n * Message - A high level component which implements all the logic required for a message.\n * The actual rendering of the message is delegated via the \"Message\" property\n *\n * @example ./Message.md\n */\nexport const Message = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageProps<StreamChatGenerics>,\n) => {\n const { channel, disabled, enforceUniqueReaction, members } =\n useChannelContext<StreamChatGenerics>();\n const { client, mutedUsers } = useChatContext<StreamChatGenerics>();\n const { dismissKeyboard } = useKeyboardContext();\n const { setData } = useMessageOverlayContext<StreamChatGenerics>();\n const messagesContext = useMessagesContext<StreamChatGenerics>();\n const { setOverlay } = useOverlayContext();\n const { openThread } = useThreadContext<StreamChatGenerics>();\n const { t } = useTranslationContext();\n\n return (\n <MemoizedMessage<StreamChatGenerics>\n {...messagesContext}\n {...{\n channel,\n client,\n disabled,\n dismissKeyboard,\n enforceUniqueReaction,\n members,\n messagesContext,\n mutedUsers,\n openThread,\n setData,\n setOverlay,\n t,\n }}\n {...props}\n />\n );\n};\n"]}
|
|
@@ -11,12 +11,12 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _reactNative = require("react-native");
|
|
13
13
|
|
|
14
|
-
var _Avatar = require("../../Avatar/Avatar");
|
|
15
|
-
|
|
16
14
|
var _MessageContext = require("../../../contexts/messageContext/MessageContext");
|
|
17
15
|
|
|
18
16
|
var _ThemeContext = require("../../../contexts/themeContext/ThemeContext");
|
|
19
17
|
|
|
18
|
+
var _Avatar = require("../../Avatar/Avatar");
|
|
19
|
+
|
|
20
20
|
var _this = this,
|
|
21
21
|
_jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Message/MessageSimple/MessageAvatar.tsx";
|
|
22
22
|
|
|
@@ -45,7 +45,7 @@ var MessageAvatarWithContext = function MessageAvatarWithContext(props) {
|
|
|
45
45
|
__self: _this,
|
|
46
46
|
__source: {
|
|
47
47
|
fileName: _jsxFileName,
|
|
48
|
-
lineNumber:
|
|
48
|
+
lineNumber: 39,
|
|
49
49
|
columnNumber: 5
|
|
50
50
|
}
|
|
51
51
|
}, visible ? _react["default"].createElement(_Avatar.Avatar, {
|
|
@@ -55,7 +55,7 @@ var MessageAvatarWithContext = function MessageAvatarWithContext(props) {
|
|
|
55
55
|
__self: _this,
|
|
56
56
|
__source: {
|
|
57
57
|
fileName: _jsxFileName,
|
|
58
|
-
lineNumber:
|
|
58
|
+
lineNumber: 44,
|
|
59
59
|
columnNumber: 9
|
|
60
60
|
}
|
|
61
61
|
}) : _react["default"].createElement(_reactNative.View, {
|
|
@@ -64,7 +64,7 @@ var MessageAvatarWithContext = function MessageAvatarWithContext(props) {
|
|
|
64
64
|
__self: _this,
|
|
65
65
|
__source: {
|
|
66
66
|
fileName: _jsxFileName,
|
|
67
|
-
lineNumber:
|
|
67
|
+
lineNumber: 50,
|
|
68
68
|
columnNumber: 9
|
|
69
69
|
}
|
|
70
70
|
}));
|
|
@@ -102,7 +102,7 @@ var MessageAvatar = function MessageAvatar(props) {
|
|
|
102
102
|
__self: _this,
|
|
103
103
|
__source: {
|
|
104
104
|
fileName: _jsxFileName,
|
|
105
|
-
lineNumber:
|
|
105
|
+
lineNumber: 93,
|
|
106
106
|
columnNumber: 5
|
|
107
107
|
}
|
|
108
108
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MessageAvatar.tsx"],"names":["MessageAvatarWithContext","props","alignment","lastGroupMessage","message","showAvatar","size","theme","BASE_AVATAR_SIZE","avatar","messageSimple","avatarWrapper","container","leftAlign","rightAlign","spacer","visible","user","image","name","id","areEqual","prevProps","nextProps","prevLastGroupMessage","prevMessage","nextLastGroupMessage","nextMessage","lastGroupMessageEqual","userEqual","MemoizedMessageAvatar","React","memo","MessageAvatar","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;
|
|
1
|
+
{"version":3,"sources":["MessageAvatar.tsx"],"names":["MessageAvatarWithContext","props","alignment","lastGroupMessage","message","showAvatar","size","theme","BASE_AVATAR_SIZE","avatar","messageSimple","avatarWrapper","container","leftAlign","rightAlign","spacer","visible","user","image","name","id","areEqual","prevProps","nextProps","prevLastGroupMessage","prevMessage","nextLastGroupMessage","nextMessage","lastGroupMessageEqual","userEqual","MemoizedMessageAvatar","React","memo","MessageAvatar","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { Avatar, AvatarProps } from '../../Avatar/Avatar';\n\nexport type MessageAvatarPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n 'alignment' | 'lastGroupMessage' | 'message' | 'showAvatar'\n> &\n Partial<Pick<AvatarProps, 'size'>>;\n\nconst MessageAvatarWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageAvatarPropsWithContext<StreamChatGenerics>,\n) => {\n const { alignment, lastGroupMessage, message, showAvatar, size } = props;\n const {\n theme: {\n avatar: { BASE_AVATAR_SIZE },\n messageSimple: {\n avatarWrapper: { container, leftAlign, rightAlign, spacer },\n },\n },\n } = useTheme();\n\n const visible = typeof showAvatar === 'boolean' ? showAvatar : lastGroupMessage;\n\n return (\n <View\n style={[alignment === 'left' ? leftAlign : rightAlign, container]}\n testID='message-avatar'\n >\n {visible ? (\n <Avatar\n image={message.user?.image}\n name={message.user?.name || message.user?.id}\n size={size || BASE_AVATAR_SIZE}\n />\n ) : (\n <View style={spacer} testID='spacer' />\n )}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: MessageAvatarPropsWithContext<StreamChatGenerics>,\n nextProps: MessageAvatarPropsWithContext<StreamChatGenerics>,\n) => {\n const { lastGroupMessage: prevLastGroupMessage, message: prevMessage } = prevProps;\n const { lastGroupMessage: nextLastGroupMessage, message: nextMessage } = nextProps;\n\n const lastGroupMessageEqual = prevLastGroupMessage === nextLastGroupMessage;\n if (!lastGroupMessageEqual) return false;\n\n const userEqual =\n prevMessage.user?.image === nextMessage.user?.image &&\n prevMessage.user?.name === nextMessage.user?.name &&\n prevMessage.user?.id === nextMessage.user?.id;\n if (!userEqual) return false;\n\n return true;\n};\n\nconst MemoizedMessageAvatar = React.memo(\n MessageAvatarWithContext,\n areEqual,\n) as typeof MessageAvatarWithContext;\n\nexport type MessageAvatarProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<MessageAvatarPropsWithContext<StreamChatGenerics>>;\n\nexport const MessageAvatar = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: MessageAvatarProps<StreamChatGenerics>,\n) => {\n const { alignment, lastGroupMessage, message, showAvatar } =\n useMessageContext<StreamChatGenerics>();\n\n return (\n <MemoizedMessageAvatar\n {...{\n alignment,\n lastGroupMessage,\n message,\n showAvatar,\n }}\n {...props}\n />\n );\n};\n\nMessageAvatar.displayName = 'MessageAvatar{messageSimple{avatarWrapper}}';\n"]}
|
|
@@ -144,7 +144,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
144
144
|
setMessageContentWidth(width);
|
|
145
145
|
};
|
|
146
146
|
|
|
147
|
-
var error = message.type === 'error' || message.status ===
|
|
147
|
+
var error = message.type === 'error' || message.status === _utils.MessageStatusTypes.FAILED;
|
|
148
148
|
var groupStyle = alignment + "_" + (groupStyles == null ? void 0 : (_groupStyles$ = groupStyles[0]) == null ? void 0 : _groupStyles$.toLowerCase == null ? void 0 : _groupStyles$.toLowerCase());
|
|
149
149
|
var hasThreadReplies = !!(message != null && message.reply_count);
|
|
150
150
|
var noBorder = onlyEmojis && !message.quoted_message || !!otherAttachments.length;
|
|
@@ -159,7 +159,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
159
159
|
__self: _this,
|
|
160
160
|
__source: {
|
|
161
161
|
fileName: _jsxFileName,
|
|
162
|
-
lineNumber:
|
|
162
|
+
lineNumber: 194,
|
|
163
163
|
columnNumber: 7
|
|
164
164
|
}
|
|
165
165
|
});
|
|
@@ -202,7 +202,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
202
202
|
__self: _this,
|
|
203
203
|
__source: {
|
|
204
204
|
fileName: _jsxFileName,
|
|
205
|
-
lineNumber:
|
|
205
|
+
lineNumber: 219,
|
|
206
206
|
columnNumber: 5
|
|
207
207
|
}
|
|
208
208
|
}), MessageHeader && _react["default"].createElement(MessageHeader, {
|
|
@@ -218,7 +218,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
218
218
|
__self: _this,
|
|
219
219
|
__source: {
|
|
220
220
|
fileName: _jsxFileName,
|
|
221
|
-
lineNumber:
|
|
221
|
+
lineNumber: 260,
|
|
222
222
|
columnNumber: 9
|
|
223
223
|
}
|
|
224
224
|
}), _react["default"].createElement(_reactNative.View, {
|
|
@@ -227,7 +227,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
227
227
|
__self: _this,
|
|
228
228
|
__source: {
|
|
229
229
|
fileName: _jsxFileName,
|
|
230
|
-
lineNumber:
|
|
230
|
+
lineNumber: 272,
|
|
231
231
|
columnNumber: 7
|
|
232
232
|
}
|
|
233
233
|
}, hasThreadReplies && !threadList && !noBorder && _react["default"].createElement(_reactNative.View, {
|
|
@@ -240,7 +240,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
240
240
|
__self: _this,
|
|
241
241
|
__source: {
|
|
242
242
|
fileName: _jsxFileName,
|
|
243
|
-
lineNumber:
|
|
243
|
+
lineNumber: 274,
|
|
244
244
|
columnNumber: 11
|
|
245
245
|
}
|
|
246
246
|
}), _react["default"].createElement(_reactNative.View, {
|
|
@@ -256,7 +256,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
256
256
|
__self: _this,
|
|
257
257
|
__source: {
|
|
258
258
|
fileName: _jsxFileName,
|
|
259
|
-
lineNumber:
|
|
259
|
+
lineNumber: 287,
|
|
260
260
|
columnNumber: 9
|
|
261
261
|
}
|
|
262
262
|
}, messageContentOrder.map(function (messageContentType, messageContentOrderIndex) {
|
|
@@ -268,7 +268,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
268
268
|
__self: _this,
|
|
269
269
|
__source: {
|
|
270
270
|
fileName: _jsxFileName,
|
|
271
|
-
lineNumber:
|
|
271
|
+
lineNumber: 314,
|
|
272
272
|
columnNumber: 21
|
|
273
273
|
}
|
|
274
274
|
}, _react["default"].createElement(Reply, {
|
|
@@ -280,7 +280,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
280
280
|
__self: _this,
|
|
281
281
|
__source: {
|
|
282
282
|
fileName: _jsxFileName,
|
|
283
|
-
lineNumber:
|
|
283
|
+
lineNumber: 318,
|
|
284
284
|
columnNumber: 23
|
|
285
285
|
}
|
|
286
286
|
}));
|
|
@@ -293,7 +293,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
293
293
|
__self: _this,
|
|
294
294
|
__source: {
|
|
295
295
|
fileName: _jsxFileName,
|
|
296
|
-
lineNumber:
|
|
296
|
+
lineNumber: 324,
|
|
297
297
|
columnNumber: 19
|
|
298
298
|
}
|
|
299
299
|
});
|
|
@@ -306,7 +306,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
306
306
|
__self: _this,
|
|
307
307
|
__source: {
|
|
308
308
|
fileName: _jsxFileName,
|
|
309
|
-
lineNumber:
|
|
309
|
+
lineNumber: 328,
|
|
310
310
|
columnNumber: 19
|
|
311
311
|
}
|
|
312
312
|
});
|
|
@@ -317,7 +317,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
317
317
|
__self: _this,
|
|
318
318
|
__source: {
|
|
319
319
|
fileName: _jsxFileName,
|
|
320
|
-
lineNumber:
|
|
320
|
+
lineNumber: 334,
|
|
321
321
|
columnNumber: 24
|
|
322
322
|
}
|
|
323
323
|
});
|
|
@@ -329,7 +329,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
329
329
|
__self: _this,
|
|
330
330
|
__source: {
|
|
331
331
|
fileName: _jsxFileName,
|
|
332
|
-
lineNumber:
|
|
332
|
+
lineNumber: 338,
|
|
333
333
|
columnNumber: 19
|
|
334
334
|
}
|
|
335
335
|
});
|
|
@@ -340,7 +340,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
340
340
|
__self: _this,
|
|
341
341
|
__source: {
|
|
342
342
|
fileName: _jsxFileName,
|
|
343
|
-
lineNumber:
|
|
343
|
+
lineNumber: 346,
|
|
344
344
|
columnNumber: 11
|
|
345
345
|
}
|
|
346
346
|
}, _react["default"].createElement(_reactNative.View, {
|
|
@@ -348,7 +348,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
348
348
|
__self: _this,
|
|
349
349
|
__source: {
|
|
350
350
|
fileName: _jsxFileName,
|
|
351
|
-
lineNumber:
|
|
351
|
+
lineNumber: 347,
|
|
352
352
|
columnNumber: 13
|
|
353
353
|
}
|
|
354
354
|
}, _react["default"].createElement(_icons.Error, (0, _extends2["default"])({
|
|
@@ -357,7 +357,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
357
357
|
__self: _this,
|
|
358
358
|
__source: {
|
|
359
359
|
fileName: _jsxFileName,
|
|
360
|
-
lineNumber:
|
|
360
|
+
lineNumber: 348,
|
|
361
361
|
columnNumber: 15
|
|
362
362
|
}
|
|
363
363
|
}))))), _react["default"].createElement(MessageReplies, {
|
|
@@ -366,7 +366,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
366
366
|
__self: _this,
|
|
367
367
|
__source: {
|
|
368
368
|
fileName: _jsxFileName,
|
|
369
|
-
lineNumber:
|
|
369
|
+
lineNumber: 353,
|
|
370
370
|
columnNumber: 7
|
|
371
371
|
}
|
|
372
372
|
}), _react["default"].createElement(MessageFooter, {
|
|
@@ -375,7 +375,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
|
|
|
375
375
|
__self: _this,
|
|
376
376
|
__source: {
|
|
377
377
|
fileName: _jsxFileName,
|
|
378
|
-
lineNumber:
|
|
378
|
+
lineNumber: 354,
|
|
379
379
|
columnNumber: 7
|
|
380
380
|
}
|
|
381
381
|
}));
|
|
@@ -530,7 +530,7 @@ var MessageContent = function MessageContent(props) {
|
|
|
530
530
|
__self: _this,
|
|
531
531
|
__source: {
|
|
532
532
|
fileName: _jsxFileName,
|
|
533
|
-
lineNumber:
|
|
533
|
+
lineNumber: 533,
|
|
534
534
|
columnNumber: 5
|
|
535
535
|
}
|
|
536
536
|
}));
|