stream-chat-react-native-core 4.0.0-beta.2 → 4.0.0-beta.3
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 +2 -2
- package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
- 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/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 +27 -27
- 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.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +16 -16
- 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/useCreateOwnCapabilitiesContext.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/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/ChannelPreview/ChannelAvatar.js +2 -2
- package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +2 -2
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
- 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.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.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useIsOnline.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 +10 -10
- 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 +13 -9
- 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 +11 -11
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.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/MessageStatus.js +9 -7
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.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 +14 -25
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- 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 +2 -2
- 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 +3 -3
- 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/SendMessageDisallowedIndicator.js +2 -2
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +3 -3
- 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 +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +2 -2
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- 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/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/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/MessageOverlay/MessageActionList.js +2 -2
- package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +7 -7
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +38 -32
- 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 +11 -11
- 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 +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.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 +3 -3
- 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 +13 -5
- 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 +1 -1
- 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/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 +2 -2
- package/lib/module/components/Attachment/Attachment.js.map +1 -1
- 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/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 +27 -27
- 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.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionHeader.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionItem.js +16 -16
- 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/useCreateOwnCapabilitiesContext.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/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/ChannelPreview/ChannelAvatar.js +2 -2
- package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreview.js +2 -2
- package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
- 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.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.map +1 -1
- package/lib/module/components/Chat/hooks/useIsOnline.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 +10 -10
- 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 +13 -9
- 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 +11 -11
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +2 -2
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.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/MessageStatus.js +9 -7
- package/lib/module/components/Message/MessageSimple/MessageStatus.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 +14 -25
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- 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 +2 -2
- 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 +3 -3
- 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/SendMessageDisallowedIndicator.js +2 -2
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +3 -3
- 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 +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js +1 -1
- package/lib/module/components/MessageList/MessageList.js +2 -2
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- 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/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/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/MessageOverlay/MessageActionList.js +2 -2
- package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageActionListItem.js +7 -7
- package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageOverlay.js +38 -32
- 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 +11 -11
- 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 +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.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 +3 -3
- 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 +13 -5
- 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 +1 -1
- 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/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 +1 -1
- package/lib/typescript/components/Attachment/AttachmentActions.d.ts +1 -1
- package/lib/typescript/components/Attachment/Card.d.ts +1 -1
- package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
- package/lib/typescript/components/Attachment/Gallery.d.ts +1 -4
- package/lib/typescript/components/Attachment/Giphy.d.ts +1 -1
- 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/AutoCompleteSuggestionHeader.d.ts +1 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionItem.d.ts +1 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts +2 -3
- package/lib/typescript/components/Channel/Channel.d.ts +4 -4
- package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts +1 -1
- package/lib/typescript/components/ChannelList/ChannelList.d.ts +1 -1
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +4 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +2 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessenger.d.ts +2 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMutedStatus.d.ts +9 -0
- package/lib/typescript/components/Chat/Chat.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +3 -1
- package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +1 -1
- package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +1 -1
- package/lib/typescript/components/Message/Message.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageDeleted.d.ts +2 -2
- package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +2 -2
- 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 +2 -2
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +3 -3
- package/lib/typescript/components/Message/utils/messageActions.d.ts +2 -2
- package/lib/typescript/components/Message/utils/removeReservedFields.d.ts +1 -1
- package/lib/typescript/components/MessageInput/AttachButton.d.ts +1 -1
- package/lib/typescript/components/MessageInput/CommandsButton.d.ts +1 -1
- package/lib/typescript/components/MessageInput/MoreOptionsButton.d.ts +1 -1
- package/lib/typescript/components/MessageList/MessageSystem.d.ts +1 -1
- package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts +1 -1
- package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +1 -1
- package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +3 -1
- package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +7 -0
- package/lib/typescript/components/Reply/Reply.d.ts +1 -1
- package/lib/typescript/components/Thread/Thread.d.ts +2 -2
- package/lib/typescript/components/index.d.ts +2 -0
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +13 -5
- package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +1 -1
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +6 -4
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +2 -2
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageDetailsForState.d.ts +1 -1
- package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +6 -4
- 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 +10 -10
- package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +5 -5
- package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +2 -2
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +11 -3
- package/lib/typescript/hooks/useStreami18n.d.ts +1 -1
- package/lib/typescript/utils/Streami18n.d.ts +2 -2
- 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 +6 -1
- package/package.json +9 -13
- package/src/components/Attachment/Attachment.tsx +3 -3
- package/src/components/Attachment/AttachmentActions.tsx +2 -2
- package/src/components/Attachment/Card.tsx +3 -4
- package/src/components/Attachment/FileAttachment.tsx +3 -4
- package/src/components/Attachment/FileIcon.tsx +2 -2
- package/src/components/Attachment/Gallery.tsx +160 -184
- package/src/components/Attachment/Giphy.tsx +3 -4
- 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 +75 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +95 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +99 -0
- package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +64 -0
- package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +46 -0
- package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +186 -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 +4 -3
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +1 -1
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionHeader.tsx +2 -2
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionItem.tsx +7 -5
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +5 -6
- package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.js +6 -8
- package/src/components/Avatar/Avatar.tsx +7 -10
- package/src/components/Avatar/GroupAvatar.tsx +7 -2
- package/src/components/Avatar/__tests__/Avatar.test.js +2 -2
- package/src/components/Channel/Channel.tsx +75 -68
- 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/useCreateOwnCapabilitiesContext.ts +2 -1
- package/src/components/ChannelList/ChannelList.tsx +8 -9
- 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 +3 -4
- 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 +3 -3
- package/src/components/ChannelList/hooks/listeners/useChannelDeleted.ts +2 -2
- package/src/components/ChannelList/hooks/listeners/useChannelHidden.ts +2 -2
- package/src/components/ChannelList/hooks/listeners/useChannelTruncated.ts +2 -2
- package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +2 -2
- package/src/components/ChannelList/hooks/listeners/useChannelVisible.ts +3 -3
- package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +2 -3
- package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +4 -4
- package/src/components/ChannelList/hooks/listeners/useRemovedFromChannelNotification.ts +2 -2
- package/src/components/ChannelList/hooks/listeners/useUserPresence.ts +2 -2
- package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +1 -2
- package/src/components/ChannelList/hooks/usePaginatedChannels.ts +78 -48
- package/src/components/ChannelPreview/ChannelAvatar.tsx +3 -5
- package/src/components/ChannelPreview/ChannelPreview.tsx +3 -3
- package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +2 -2
- package/src/components/ChannelPreview/ChannelPreviewMessenger.tsx +23 -10
- package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +71 -0
- package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +4 -3
- package/src/components/ChannelPreview/ChannelPreviewTitle.tsx +2 -2
- package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +2 -1
- 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 +2 -2
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +3 -4
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +2 -2
- package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +2 -2
- package/src/components/Chat/Chat.tsx +6 -6
- package/src/components/Chat/__tests__/Chat.test.js +5 -5
- package/src/components/Chat/hooks/useIsOnline.ts +4 -3
- package/src/components/ImageGallery/ImageGallery.tsx +82 -49
- package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +1 -2
- package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +2 -5
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +1 -2
- package/src/components/ImageGallery/components/ImageGrid.tsx +4 -5
- package/src/components/ImageGallery/components/ImageGridHandle.tsx +1 -0
- package/src/components/Indicators/LoadingIndicator.tsx +1 -2
- package/src/components/Message/Message.tsx +20 -20
- package/src/components/Message/MessageSimple/MessageAvatar.tsx +1 -2
- package/src/components/Message/MessageSimple/MessageContent.tsx +2 -3
- package/src/components/Message/MessageSimple/MessageDeleted.tsx +3 -4
- package/src/components/Message/MessageSimple/MessageFooter.tsx +6 -7
- package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +2 -2
- package/src/components/Message/MessageSimple/MessageRepliesAvatars.tsx +2 -3
- package/src/components/Message/MessageSimple/MessageStatus.tsx +9 -5
- 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.tsx +11 -23
- package/src/components/Message/hooks/useCreateMessageContext.ts +1 -2
- package/src/components/Message/hooks/useMessageActionHandlers.ts +13 -4
- package/src/components/Message/hooks/useMessageActions.tsx +14 -9
- package/src/components/Message/utils/messageActions.ts +2 -2
- package/src/components/Message/utils/removeReservedFields.ts +1 -1
- package/src/components/MessageInput/AttachButton.tsx +1 -2
- package/src/components/MessageInput/CommandsButton.tsx +1 -2
- package/src/components/MessageInput/CooldownTimer.tsx +1 -0
- package/src/components/MessageInput/FileUploadPreview.tsx +3 -3
- package/src/components/MessageInput/ImageUploadPreview.tsx +1 -2
- package/src/components/MessageInput/InputButtons.tsx +1 -1
- package/src/components/MessageInput/MessageInput.tsx +5 -6
- package/src/components/MessageInput/MoreOptionsButton.tsx +1 -2
- package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +1 -1
- package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +1 -1
- 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 +2 -0
- package/src/components/MessageInput/hooks/useCountdown.ts +1 -0
- package/src/components/MessageList/MessageList.tsx +3 -3
- package/src/components/MessageList/MessageSystem.tsx +2 -2
- package/src/components/MessageList/TypingIndicator.tsx +1 -2
- 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 +5 -7
- package/src/components/MessageList/hooks/useTypingString.ts +1 -2
- package/src/components/MessageList/utils/getGroupStyles.ts +1 -2
- package/src/components/MessageList/utils/getLastReceivedMessage.ts +6 -1
- package/src/components/MessageOverlay/MessageActionList.tsx +3 -3
- package/src/components/MessageOverlay/MessageActionListItem.tsx +3 -1
- package/src/components/MessageOverlay/MessageOverlay.tsx +20 -16
- package/src/components/MessageOverlay/OverlayBackdrop.tsx +1 -0
- package/src/components/MessageOverlay/OverlayReactionList.tsx +2 -4
- package/src/components/MessageOverlay/OverlayReactions.tsx +27 -8
- package/src/components/MessageOverlay/OverlayReactionsAvatar.tsx +27 -0
- package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +1 -0
- package/src/components/Reply/Reply.tsx +25 -15
- package/src/components/Thread/Thread.tsx +5 -6
- 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 +1 -2
- package/src/components/index.ts +2 -0
- package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +1 -2
- package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +1 -2
- package/src/contexts/channelContext/ChannelContext.tsx +1 -2
- package/src/contexts/channelsContext/ChannelsContext.tsx +18 -7
- package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +7 -8
- package/src/contexts/channelsStateContext/useChannelState.ts +1 -0
- package/src/contexts/chatContext/ChatContext.tsx +1 -2
- package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +1 -2
- package/src/contexts/keyboardContext/KeyboardContext.tsx +1 -2
- package/src/contexts/messageContext/MessageContext.tsx +1 -2
- package/src/contexts/messageInputContext/MessageInputContext.tsx +27 -24
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -4
- package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +15 -10
- package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +10 -19
- 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 +13 -13
- package/src/contexts/overlayContext/OverlayContext.tsx +10 -8
- package/src/contexts/overlayContext/OverlayProvider.tsx +30 -25
- package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +1 -2
- package/src/contexts/suggestionsContext/SuggestionsContext.tsx +4 -3
- 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 +23 -8
- package/src/contexts/threadContext/ThreadContext.tsx +1 -2
- package/src/contexts/translationContext/TranslationContext.tsx +2 -2
- package/src/contexts/typingContext/TypingContext.tsx +1 -2
- 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/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/utils/Streami18n.ts +3 -3
- 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 +9 -4
- package/src/version.json +1 -1
|
@@ -110,7 +110,7 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
110
110
|
__self: _this,
|
|
111
111
|
__source: {
|
|
112
112
|
fileName: _jsxFileName,
|
|
113
|
-
lineNumber:
|
|
113
|
+
lineNumber: 121,
|
|
114
114
|
columnNumber: 5
|
|
115
115
|
}
|
|
116
116
|
}), _react["default"].createElement(_reactNative.View, {
|
|
@@ -120,7 +120,7 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
120
120
|
__self: _this,
|
|
121
121
|
__source: {
|
|
122
122
|
fileName: _jsxFileName,
|
|
123
|
-
lineNumber:
|
|
123
|
+
lineNumber: 152,
|
|
124
124
|
columnNumber: 7
|
|
125
125
|
}
|
|
126
126
|
}, _react["default"].createElement(FileAttachmentIcon, {
|
|
@@ -129,7 +129,7 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
129
129
|
__self: _this,
|
|
130
130
|
__source: {
|
|
131
131
|
fileName: _jsxFileName,
|
|
132
|
-
lineNumber:
|
|
132
|
+
lineNumber: 153,
|
|
133
133
|
columnNumber: 9
|
|
134
134
|
}
|
|
135
135
|
}), _react["default"].createElement(_reactNative.View, {
|
|
@@ -137,7 +137,7 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
137
137
|
__self: _this,
|
|
138
138
|
__source: {
|
|
139
139
|
fileName: _jsxFileName,
|
|
140
|
-
lineNumber:
|
|
140
|
+
lineNumber: 154,
|
|
141
141
|
columnNumber: 9
|
|
142
142
|
}
|
|
143
143
|
}, _react["default"].createElement(_reactNative.Text, {
|
|
@@ -148,7 +148,7 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
148
148
|
__self: _this,
|
|
149
149
|
__source: {
|
|
150
150
|
fileName: _jsxFileName,
|
|
151
|
-
lineNumber:
|
|
151
|
+
lineNumber: 155,
|
|
152
152
|
columnNumber: 11
|
|
153
153
|
}
|
|
154
154
|
}, attachment.title), _react["default"].createElement(_reactNative.Text, {
|
|
@@ -158,14 +158,14 @@ var FileAttachmentWithContext = function FileAttachmentWithContext(props) {
|
|
|
158
158
|
__self: _this,
|
|
159
159
|
__source: {
|
|
160
160
|
fileName: _jsxFileName,
|
|
161
|
-
lineNumber:
|
|
161
|
+
lineNumber: 158,
|
|
162
162
|
columnNumber: 11
|
|
163
163
|
}
|
|
164
164
|
}, getFileSizeDisplayText(attachment.file_size)))), (_attachment$actions = attachment.actions) != null && _attachment$actions.length ? _react["default"].createElement(AttachmentActions, (0, _extends2["default"])({}, attachment, {
|
|
165
165
|
__self: _this,
|
|
166
166
|
__source: {
|
|
167
167
|
fileName: _jsxFileName,
|
|
168
|
-
lineNumber:
|
|
168
|
+
lineNumber: 163,
|
|
169
169
|
columnNumber: 37
|
|
170
170
|
}
|
|
171
171
|
})) : null);
|
|
@@ -197,7 +197,7 @@ var FileAttachment = function FileAttachment(props) {
|
|
|
197
197
|
__self: _this,
|
|
198
198
|
__source: {
|
|
199
199
|
fileName: _jsxFileName,
|
|
200
|
-
lineNumber:
|
|
200
|
+
lineNumber: 199,
|
|
201
201
|
columnNumber: 5
|
|
202
202
|
}
|
|
203
203
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["FileAttachment.tsx"],"names":["styles","StyleSheet","create","container","alignItems","borderRadius","flexDirection","padding","details","maxWidth","paddingLeft","size","fontSize","title","fontWeight","FileAttachmentWithContext","props","additionalTouchableProps","attachment","attachmentSize","AttachmentActions","FileAttachmentIcon","onLongPress","onPress","onPressIn","preventPress","stylesProp","theme","colors","black","grey","white","messageSimple","file","fileSize","defaultOnPress","goToURL","asset_url","event","emitter","defaultHandler","backgroundColor","mime_type","color","getFileSizeDisplayText","file_size","actions","length","FileAttachment","AttachmentActionsDefault","FileIconDefault","parseFloat","Math","floor","url","Linking","canOpenURL","then","supported","openURL","console","log","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n Linking,\n StyleProp,\n StyleSheet,\n Text,\n TextStyle,\n TouchableOpacity,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport { AttachmentActions as AttachmentActionsDefault } from '../../components/Attachment/AttachmentActions';\nimport { FileIcon as FileIconDefault } from '../../components/Attachment/FileIcon';\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { vw } 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';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n borderRadius: 12,\n flexDirection: 'row',\n padding: 8,\n },\n details: {\n maxWidth: vw(60),\n paddingLeft: 16,\n },\n size: {\n fontSize: 12,\n },\n title: {\n fontSize: 14,\n fontWeight: '700',\n },\n});\n\nexport type FileAttachmentPropsWithContext<\n At extends DefaultAttachmentType = 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 MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n> &\n Pick<\n MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'additionalTouchableProps' | 'AttachmentActions' | 'FileAttachmentIcon'\n > & {\n /** The attachment to render */\n attachment: Attachment<At>;\n attachmentSize?: number;\n styles?: Partial<{\n container: StyleProp<ViewStyle>;\n details: StyleProp<ViewStyle>;\n size: StyleProp<TextStyle>;\n title: StyleProp<TextStyle>;\n }>;\n };\n\nconst FileAttachmentWithContext = <\n At extends DefaultAttachmentType = 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: FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n additionalTouchableProps,\n attachment,\n attachmentSize,\n AttachmentActions,\n FileAttachmentIcon,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n styles: stylesProp = {},\n } = props;\n\n const {\n theme: {\n colors: { black, grey, white },\n messageSimple: {\n file: { container, details, fileSize, title },\n },\n },\n } = useTheme();\n\n const defaultOnPress = () => goToURL(attachment.asset_url);\n\n return (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: defaultOnPress,\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: defaultOnPress,\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n testID='file-attachment'\n {...additionalTouchableProps}\n >\n <View style={[styles.container, { backgroundColor: white }, container, stylesProp.container]}>\n <FileAttachmentIcon mimeType={attachment.mime_type} size={attachmentSize} />\n <View style={[styles.details, details, stylesProp.details]}>\n <Text numberOfLines={2} style={[styles.title, { color: black }, title, stylesProp.title]}>\n {attachment.title}\n </Text>\n <Text style={[styles.size, { color: grey }, fileSize, stylesProp.size]}>\n {getFileSizeDisplayText(attachment.file_size)}\n </Text>\n </View>\n </View>\n {attachment.actions?.length ? <AttachmentActions {...attachment} /> : null}\n </TouchableOpacity>\n );\n};\n\nexport type FileAttachmentProps<\n At extends DefaultAttachmentType = 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<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>> &\n Pick<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>;\n\nexport const FileAttachment = <\n At extends DefaultAttachmentType = 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: FileAttachmentProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const {\n additionalTouchableProps,\n AttachmentActions = AttachmentActionsDefault,\n FileAttachmentIcon = FileIconDefault,\n } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <FileAttachmentWithContext\n {...{\n additionalTouchableProps,\n AttachmentActions,\n FileAttachmentIcon,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nexport const getFileSizeDisplayText = (size?: number | string) => {\n if (!size) return;\n if (typeof size === 'string') {\n size = parseFloat(size);\n }\n\n if (size < 1000 * 1000) {\n return `${Math.floor(Math.floor(size / 10) / 100)} KB`;\n }\n\n return `${Math.floor(Math.floor(size / 10000) / 100)} MB`;\n};\n\nexport const goToURL = (url?: string) => {\n if (!url) return;\n Linking.canOpenURL(url).then((supported) => {\n if (supported) {\n Linking.openURL(url);\n } else {\n console.log(`Don't know how to open URI: ${url}`);\n }\n });\n};\n\nFileAttachment.displayName = 'FileAttachment{messageSimple{file}}';\n"]}
|
|
1
|
+
{"version":3,"sources":["FileAttachment.tsx"],"names":["styles","StyleSheet","create","container","alignItems","borderRadius","flexDirection","padding","details","maxWidth","paddingLeft","size","fontSize","title","fontWeight","FileAttachmentWithContext","props","additionalTouchableProps","attachment","attachmentSize","AttachmentActions","FileAttachmentIcon","onLongPress","onPress","onPressIn","preventPress","stylesProp","theme","colors","black","grey","white","messageSimple","file","fileSize","defaultOnPress","goToURL","asset_url","event","emitter","defaultHandler","backgroundColor","mime_type","color","getFileSizeDisplayText","file_size","actions","length","FileAttachment","AttachmentActionsDefault","FileIconDefault","parseFloat","Math","floor","url","Linking","canOpenURL","then","supported","openURL","console","log","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n Linking,\n StyleProp,\n StyleSheet,\n Text,\n TextStyle,\n TouchableOpacity,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { AttachmentActions as AttachmentActionsDefault } from '../../components/Attachment/AttachmentActions';\nimport { FileIcon as FileIconDefault } from '../../components/Attachment/FileIcon';\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type {\n DefaultAttachmentType,\n DefaultChannelType,\n DefaultCommandType,\n DefaultEventType,\n DefaultMessageType,\n DefaultReactionType,\n DefaultUserType,\n UnknownType,\n} from '../../types/types';\nimport { vw } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n borderRadius: 12,\n flexDirection: 'row',\n padding: 8,\n },\n details: {\n maxWidth: vw(60),\n paddingLeft: 16,\n },\n size: {\n fontSize: 12,\n },\n title: {\n fontSize: 14,\n fontWeight: '700',\n },\n});\n\nexport type FileAttachmentPropsWithContext<\n At extends DefaultAttachmentType = 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 MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n> &\n Pick<\n MessagesContextValue<At, Ch, Co, Ev, Me, Re, Us>,\n 'additionalTouchableProps' | 'AttachmentActions' | 'FileAttachmentIcon'\n > & {\n /** The attachment to render */\n attachment: Attachment<At>;\n attachmentSize?: number;\n styles?: Partial<{\n container: StyleProp<ViewStyle>;\n details: StyleProp<ViewStyle>;\n size: StyleProp<TextStyle>;\n title: StyleProp<TextStyle>;\n }>;\n };\n\nconst FileAttachmentWithContext = <\n At extends DefaultAttachmentType = 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: FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const {\n additionalTouchableProps,\n attachment,\n attachmentSize,\n AttachmentActions,\n FileAttachmentIcon,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n styles: stylesProp = {},\n } = props;\n\n const {\n theme: {\n colors: { black, grey, white },\n messageSimple: {\n file: { container, details, fileSize, title },\n },\n },\n } = useTheme();\n\n const defaultOnPress = () => goToURL(attachment.asset_url);\n\n return (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: defaultOnPress,\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: defaultOnPress,\n emitter: 'fileAttachment',\n event,\n });\n }\n }}\n testID='file-attachment'\n {...additionalTouchableProps}\n >\n <View style={[styles.container, { backgroundColor: white }, container, stylesProp.container]}>\n <FileAttachmentIcon mimeType={attachment.mime_type} size={attachmentSize} />\n <View style={[styles.details, details, stylesProp.details]}>\n <Text numberOfLines={2} style={[styles.title, { color: black }, title, stylesProp.title]}>\n {attachment.title}\n </Text>\n <Text style={[styles.size, { color: grey }, fileSize, stylesProp.size]}>\n {getFileSizeDisplayText(attachment.file_size)}\n </Text>\n </View>\n </View>\n {attachment.actions?.length ? <AttachmentActions {...attachment} /> : null}\n </TouchableOpacity>\n );\n};\n\nexport type FileAttachmentProps<\n At extends DefaultAttachmentType = 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<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>> &\n Pick<FileAttachmentPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>, 'attachment'>;\n\nexport const FileAttachment = <\n At extends DefaultAttachmentType = 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: FileAttachmentProps<At, Ch, Co, Ev, Me, Re, Us>,\n) => {\n const { onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();\n const {\n additionalTouchableProps,\n AttachmentActions = AttachmentActionsDefault,\n FileAttachmentIcon = FileIconDefault,\n } = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();\n\n return (\n <FileAttachmentWithContext\n {...{\n additionalTouchableProps,\n AttachmentActions,\n FileAttachmentIcon,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nexport const getFileSizeDisplayText = (size?: number | string) => {\n if (!size) return;\n if (typeof size === 'string') {\n size = parseFloat(size);\n }\n\n if (size < 1000 * 1000) {\n return `${Math.floor(Math.floor(size / 10) / 100)} KB`;\n }\n\n return `${Math.floor(Math.floor(size / 10000) / 100)} MB`;\n};\n\nexport const goToURL = (url?: string) => {\n if (!url) return;\n Linking.canOpenURL(url).then((supported) => {\n if (supported) {\n Linking.openURL(url);\n } else {\n console.log(`Don't know how to open URI: ${url}`);\n }\n });\n};\n\nFileAttachment.displayName = 'FileAttachment{messageSimple{file}}';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["FileIcon.tsx"],"names":["audioFileTypes","docMimeTypes","docXMimeTypes","excelMimeTypes","excelXMimeTypes","odtMimeTypes","powerpointMimeTypes","powerpointXMimeTypes","tarFileTypes","zipFileTypes","mimeTypeToIconMap","PDF","RTF","RAR","SEVEN_Z","CSV","HTML","MD","TXT","type","Audio","DOC","DOCX","XLS","XLSX","ODT","PPT","PPTX","TAR","ZIP","mimeTypeToIcon","mimeType","GenericFile","Icon","FileIcon","size","icon","theme","messageSimple","file","height","width","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport { Audio } from '../../icons/Audio';\nimport { CSV } from '../../icons/CSV';\nimport { DOC } from '../../icons/DOC';\nimport { DOCX } from '../../icons/DOCX';\nimport { GenericFile } from '../../icons/GenericFile';\nimport { HTML } from '../../icons/HTML';\nimport { MD } from '../../icons/MD';\nimport { ODT } from '../../icons/ODT';\nimport { PDF } from '../../icons/PDF';\nimport { PPT } from '../../icons/PPT';\nimport { PPTX } from '../../icons/PPTX';\nimport { RAR } from '../../icons/RAR';\nimport { RTF } from '../../icons/RTF';\nimport { SEVEN_Z } from '../../icons/SEVEN_Z';\nimport { TAR } from '../../icons/TAR';\nimport { TXT } from '../../icons/TXT';\nimport { XLS } from '../../icons/XLS';\nimport { XLSX } from '../../icons/XLSX';\nimport { ZIP } from '../../icons/ZIP';\n\nimport type { IconProps } from '../../icons/utils/base';\n\n// https://www.iana.org/assignments/media-types/media-types.xhtml#audio\nconst audioFileTypes = [\n 'audio/1d-interleaved-parityfec',\n 'audio/32kadpcm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/aac',\n 'audio/ac3',\n 'audio/AMR',\n 'audio/AMR-WB',\n 'audio/amr-wb+',\n 'audio/aptx',\n 'audio/asc',\n 'audio/ATRAC-ADVANCED-LOSSLESS',\n 'audio/ATRAC-X',\n 'audio/ATRAC3',\n 'audio/basic',\n 'audio/BV16',\n 'audio/BV32',\n 'audio/clearmode',\n 'audio/CN',\n 'audio/DAT12',\n 'audio/dls',\n 'audio/dsr-es201108',\n 'audio/dsr-es202050',\n 'audio/dsr-es202211',\n 'audio/dsr-es202212',\n 'audio/DV',\n 'audio/DVI4',\n 'audio/eac3',\n 'audio/encaprtp',\n 'audio/EVRC',\n 'audio/EVRC-QCP',\n 'audio/EVRC0',\n 'audio/EVRC1',\n 'audio/EVRCB',\n 'audio/EVRCB0',\n 'audio/EVRCB1',\n 'audio/EVRCNW',\n 'audio/EVRCNW0',\n 'audio/EVRCNW1',\n 'audio/EVRCWB',\n 'audio/EVRCWB0',\n 'audio/EVRCWB1',\n 'audio/EVS',\n 'audio/example',\n 'audio/flexfec',\n 'audio/fwdred',\n 'audio/G711-0',\n 'audio/G719',\n 'audio/G7221',\n 'audio/G722',\n 'audio/G723',\n 'audio/G726-16',\n 'audio/G726-24',\n 'audio/G726-32',\n 'audio/G726-40',\n 'audio/G728',\n 'audio/G729',\n 'audio/G7291',\n 'audio/G729D',\n 'audio/G729E',\n 'audio/GSM',\n 'audio/GSM-EFR',\n 'audio/GSM-HR-08',\n 'audio/iLBC',\n 'audio/ip-mr_v2.5',\n 'audio/L8',\n 'audio/L16',\n 'audio/L20',\n 'audio/L24',\n 'audio/LPC',\n 'audio/MELP',\n 'audio/MELP600',\n 'audio/MELP1200',\n 'audio/MELP2400',\n 'audio/mhas',\n 'audio/mobile-xmf',\n 'audio/MPA',\n 'audio/mp4',\n 'audio/MP4A-LATM',\n 'audio/mpa-robust',\n 'audio/mpeg',\n 'audio/mpeg4-generic',\n 'audio/ogg',\n 'audio/opus',\n 'audio/parityfec',\n 'audio/PCMA',\n 'audio/PCMA-WB',\n 'audio/PCMU',\n 'audio/PCMU-WB',\n 'audio/prs.sid',\n 'audio/raptorfec',\n 'audio/RED',\n 'audio/rtp-enc-aescm128',\n 'audio/rtploopback',\n 'audio/rtp-midi',\n 'audio/rtx',\n 'audio/SMV',\n 'audio/SMV0',\n 'audio/SMV-QCP',\n 'audio/sofa',\n 'audio/sp-midi',\n 'audio/speex',\n 'audio/t140c',\n 'audio/t38',\n 'audio/telephone-event',\n 'audio/TETRA_ACELP',\n 'audio/TETRA_ACELP_BB',\n 'audio/tone',\n 'audio/TSVCIS',\n 'audio/UEMCLIP',\n 'audio/ulpfec',\n 'audio/usac',\n 'audio/VDVI',\n 'audio/VMR-WB',\n 'audio/vnd.3gpp.iufp',\n 'audio/vnd.4SB',\n 'audio/vnd.audiokoz',\n 'audio/vnd.CELP',\n 'audio/vnd.cisco.nse',\n 'audio/vnd.cmles.radio-events',\n 'audio/vnd.cns.anp1',\n 'audio/vnd.cns.inf1',\n 'audio/vnd.dece.audio',\n 'audio/vnd.digital-winds',\n 'audio/vnd.dlna.adts',\n 'audio/vnd.dolby.heaac.1',\n 'audio/vnd.dolby.heaac.2',\n 'audio/vnd.dolby.mlp',\n 'audio/vnd.dolby.mps',\n 'audio/vnd.dolby.pl2',\n 'audio/vnd.dolby.pl2x',\n 'audio/vnd.dolby.pl2z',\n 'audio/vnd.dolby.pulse.1',\n 'audio/vnd.dra',\n 'audio/vnd.dts',\n 'audio/vnd.dts.hd',\n 'audio/vnd.dts.uhd',\n 'audio/vnd.dvb.file',\n 'audio/vnd.everad.plj',\n 'audio/vnd.hns.audio',\n 'audio/vnd.lucent.voice',\n 'audio/vnd.ms-playready.media.pya',\n 'audio/vnd.nokia.mobile-xmf',\n 'audio/vnd.nortel.vbk',\n 'audio/vnd.nuera.ecelp4800',\n 'audio/vnd.nuera.ecelp7470',\n 'audio/vnd.nuera.ecelp9600',\n 'audio/vnd.octel.sbc',\n 'audio/vnd.presonus.multitrack',\n 'audio/vnd.qcelp',\n 'audio/vnd.rhetorex.32kadpcm',\n 'audio/vnd.rip',\n 'audio/vnd.sealedmedia.softseal.mpeg',\n 'audio/vnd.vmx.cvsd',\n 'audio/vorbis',\n 'audio/vorbis-config',\n];\n\n// Partially based on:\n// https://stackoverflow.com/a/4212908/2570866\n\nconst docMimeTypes = [\n // Microsoft Word\n // .doc .dot\n 'application/msword',\n // .doc .dot\n 'application/msword-template',\n\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n // .uot\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst docXMimeTypes = [\n // Microsoft Word\n // .docx\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n // .dotx (no test)\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n // .docm\n 'application/vnd.ms-word.document.macroEnabled.12',\n // .dotm (no test)\n 'application/vnd.ms-word.template.macroEnabled.12',\n];\n\nconst excelMimeTypes = [\n // Microsoft Excel\n // .xls .xlt .xla (no test for .xla)\n 'application/vnd.ms-excel',\n\n // LibreOffice/OpenOffice Calc\n // .ods\n 'application/vnd.oasis.opendocument.spreadsheet',\n // .ots\n 'application/vnd.oasis.opendocument.spreadsheet-template',\n // .fods\n 'application/vnd.oasis.opendocument.spreadsheet-flat-xml',\n];\n\nconst excelXMimeTypes = [\n // .xlsx\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n // .xltx (no test)\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n // .xlsm\n 'application/vnd.ms-excel.sheet.macroEnabled.12',\n // .xltm (no test)\n 'application/vnd.ms-excel.template.macroEnabled.12',\n // .xlam (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n // .xlsb (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n];\n\nconst odtMimeTypes = [\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n];\n\nconst powerpointMimeTypes = [\n // Microsoft Word\n // .ppt .pot .pps .ppa (no test for .ppa)\n 'application/vnd.ms-powerpoint',\n\n // LibreOffice/OpenOffice Writer\n // .odp\n 'application/vnd.oasis.opendocument.presentation',\n // .otp\n 'application/vnd.oasis.opendocument.presentation-template',\n // .fodp\n 'application/vnd.oasis.opendocument.presentation-flat-xml',\n // .uop\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst powerpointXMimeTypes = [\n // .pptx\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n // .potx (no test)\n 'application/vnd.openxmlformats-officedocument.presentationml.template',\n // .ppsx\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n // .ppam\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n // .pptm\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n // .potm\n 'application/vnd.ms-powerpoint.template.macroEnabled.12',\n // .ppsm\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n];\n\nconst tarFileTypes = [\n // .ar\n 'application/x-archive',\n // .tar\n 'application/x-tar',\n // .tar.gz\n 'application/gzip',\n // .tar.Z\n 'application/x-compress',\n // .tar.bz2\n 'application/x-bzip',\n // .tar.lz\n 'application/x-lzip',\n // .tar.lz4\n 'application/x-lz4',\n // .tar.lzma\n 'application/x-lzma',\n // .tar.lzo (no test)\n 'application/x-lzop',\n // .tar.xz\n 'application/x-xz',\n // .war\n 'application/x-webarchive',\n];\n\nconst zipFileTypes = [\n // .gzip\n 'application/gzip',\n // .zip\n 'application/zip',\n];\n\nconst mimeTypeToIconMap: Record<string, React.FC<IconProps>> = {\n 'application/pdf': PDF, // .pdf\n 'application/rtf': RTF, // .rtf\n 'application/vnd.rar': RAR, // .rar\n 'application/x-7z-compressed': SEVEN_Z, // .z7\n 'text/csv': CSV, // .csv\n 'text/html': HTML, // .html .htm\n 'text/markdown': MD, // .md\n 'text/plain': TXT, // .txt\n};\n\nfor (const type of audioFileTypes) {\n mimeTypeToIconMap[type] = Audio;\n}\n\nfor (const type of docMimeTypes) {\n mimeTypeToIconMap[type] = DOC;\n}\n\nfor (const type of docXMimeTypes) {\n mimeTypeToIconMap[type] = DOCX;\n}\n\nfor (const type of excelMimeTypes) {\n mimeTypeToIconMap[type] = XLS;\n}\n\nfor (const type of excelXMimeTypes) {\n mimeTypeToIconMap[type] = XLSX;\n}\n\nfor (const type of odtMimeTypes) {\n mimeTypeToIconMap[type] = ODT;\n}\n\nfor (const type of powerpointMimeTypes) {\n mimeTypeToIconMap[type] = PPT;\n}\n\nfor (const type of powerpointXMimeTypes) {\n mimeTypeToIconMap[type] = PPTX;\n}\n\nfor (const type of tarFileTypes) {\n mimeTypeToIconMap[type] = TAR;\n}\n\nfor (const type of zipFileTypes) {\n mimeTypeToIconMap[type] = ZIP;\n}\n\nfunction mimeTypeToIcon(mimeType?: string): React.FC<IconProps> {\n if (!mimeType) return GenericFile;\n\n const Icon = mimeTypeToIconMap[mimeType];\n if (Icon) return Icon;\n\n return GenericFile;\n}\n\nexport type FileIconProps = {\n mimeType?: string;\n size?: number;\n};\n\nexport const FileIcon: React.FC<FileIconProps> = ({ mimeType, size }) => {\n const {\n theme: {\n messageSimple: {\n file: { icon },\n },\n },\n } = useTheme();\n\n const Icon = mimeTypeToIcon(mimeType);\n\n return <Icon {...(size ? { height: size, width: size } : {})} {...icon} />;\n};\n\nFileIcon.displayName = 'FileIcon{messageSimple{file{icon}}}';\n"]}
|
|
1
|
+
{"version":3,"sources":["FileIcon.tsx"],"names":["audioFileTypes","docMimeTypes","docXMimeTypes","excelMimeTypes","excelXMimeTypes","odtMimeTypes","powerpointMimeTypes","powerpointXMimeTypes","tarFileTypes","zipFileTypes","mimeTypeToIconMap","PDF","RTF","RAR","SEVEN_Z","CSV","HTML","MD","TXT","type","Audio","DOC","DOCX","XLS","XLSX","ODT","PPT","PPTX","TAR","ZIP","mimeTypeToIcon","mimeType","GenericFile","Icon","FileIcon","size","icon","theme","messageSimple","file","height","width","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport { Audio } from '../../icons/Audio';\nimport { CSV } from '../../icons/CSV';\nimport { DOC } from '../../icons/DOC';\nimport { DOCX } from '../../icons/DOCX';\nimport { GenericFile } from '../../icons/GenericFile';\nimport { HTML } from '../../icons/HTML';\nimport { MD } from '../../icons/MD';\nimport { ODT } from '../../icons/ODT';\nimport { PDF } from '../../icons/PDF';\nimport { PPT } from '../../icons/PPT';\nimport { PPTX } from '../../icons/PPTX';\nimport { RAR } from '../../icons/RAR';\nimport { RTF } from '../../icons/RTF';\nimport { SEVEN_Z } from '../../icons/SEVEN_Z';\nimport { TAR } from '../../icons/TAR';\nimport { TXT } from '../../icons/TXT';\nimport type { IconProps } from '../../icons/utils/base';\nimport { XLS } from '../../icons/XLS';\nimport { XLSX } from '../../icons/XLSX';\nimport { ZIP } from '../../icons/ZIP';\n\n// https://www.iana.org/assignments/media-types/media-types.xhtml#audio\nconst audioFileTypes = [\n 'audio/1d-interleaved-parityfec',\n 'audio/32kadpcm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/aac',\n 'audio/ac3',\n 'audio/AMR',\n 'audio/AMR-WB',\n 'audio/amr-wb+',\n 'audio/aptx',\n 'audio/asc',\n 'audio/ATRAC-ADVANCED-LOSSLESS',\n 'audio/ATRAC-X',\n 'audio/ATRAC3',\n 'audio/basic',\n 'audio/BV16',\n 'audio/BV32',\n 'audio/clearmode',\n 'audio/CN',\n 'audio/DAT12',\n 'audio/dls',\n 'audio/dsr-es201108',\n 'audio/dsr-es202050',\n 'audio/dsr-es202211',\n 'audio/dsr-es202212',\n 'audio/DV',\n 'audio/DVI4',\n 'audio/eac3',\n 'audio/encaprtp',\n 'audio/EVRC',\n 'audio/EVRC-QCP',\n 'audio/EVRC0',\n 'audio/EVRC1',\n 'audio/EVRCB',\n 'audio/EVRCB0',\n 'audio/EVRCB1',\n 'audio/EVRCNW',\n 'audio/EVRCNW0',\n 'audio/EVRCNW1',\n 'audio/EVRCWB',\n 'audio/EVRCWB0',\n 'audio/EVRCWB1',\n 'audio/EVS',\n 'audio/example',\n 'audio/flexfec',\n 'audio/fwdred',\n 'audio/G711-0',\n 'audio/G719',\n 'audio/G7221',\n 'audio/G722',\n 'audio/G723',\n 'audio/G726-16',\n 'audio/G726-24',\n 'audio/G726-32',\n 'audio/G726-40',\n 'audio/G728',\n 'audio/G729',\n 'audio/G7291',\n 'audio/G729D',\n 'audio/G729E',\n 'audio/GSM',\n 'audio/GSM-EFR',\n 'audio/GSM-HR-08',\n 'audio/iLBC',\n 'audio/ip-mr_v2.5',\n 'audio/L8',\n 'audio/L16',\n 'audio/L20',\n 'audio/L24',\n 'audio/LPC',\n 'audio/MELP',\n 'audio/MELP600',\n 'audio/MELP1200',\n 'audio/MELP2400',\n 'audio/mhas',\n 'audio/mobile-xmf',\n 'audio/MPA',\n 'audio/mp4',\n 'audio/MP4A-LATM',\n 'audio/mpa-robust',\n 'audio/mpeg',\n 'audio/mpeg4-generic',\n 'audio/ogg',\n 'audio/opus',\n 'audio/parityfec',\n 'audio/PCMA',\n 'audio/PCMA-WB',\n 'audio/PCMU',\n 'audio/PCMU-WB',\n 'audio/prs.sid',\n 'audio/raptorfec',\n 'audio/RED',\n 'audio/rtp-enc-aescm128',\n 'audio/rtploopback',\n 'audio/rtp-midi',\n 'audio/rtx',\n 'audio/SMV',\n 'audio/SMV0',\n 'audio/SMV-QCP',\n 'audio/sofa',\n 'audio/sp-midi',\n 'audio/speex',\n 'audio/t140c',\n 'audio/t38',\n 'audio/telephone-event',\n 'audio/TETRA_ACELP',\n 'audio/TETRA_ACELP_BB',\n 'audio/tone',\n 'audio/TSVCIS',\n 'audio/UEMCLIP',\n 'audio/ulpfec',\n 'audio/usac',\n 'audio/VDVI',\n 'audio/VMR-WB',\n 'audio/vnd.3gpp.iufp',\n 'audio/vnd.4SB',\n 'audio/vnd.audiokoz',\n 'audio/vnd.CELP',\n 'audio/vnd.cisco.nse',\n 'audio/vnd.cmles.radio-events',\n 'audio/vnd.cns.anp1',\n 'audio/vnd.cns.inf1',\n 'audio/vnd.dece.audio',\n 'audio/vnd.digital-winds',\n 'audio/vnd.dlna.adts',\n 'audio/vnd.dolby.heaac.1',\n 'audio/vnd.dolby.heaac.2',\n 'audio/vnd.dolby.mlp',\n 'audio/vnd.dolby.mps',\n 'audio/vnd.dolby.pl2',\n 'audio/vnd.dolby.pl2x',\n 'audio/vnd.dolby.pl2z',\n 'audio/vnd.dolby.pulse.1',\n 'audio/vnd.dra',\n 'audio/vnd.dts',\n 'audio/vnd.dts.hd',\n 'audio/vnd.dts.uhd',\n 'audio/vnd.dvb.file',\n 'audio/vnd.everad.plj',\n 'audio/vnd.hns.audio',\n 'audio/vnd.lucent.voice',\n 'audio/vnd.ms-playready.media.pya',\n 'audio/vnd.nokia.mobile-xmf',\n 'audio/vnd.nortel.vbk',\n 'audio/vnd.nuera.ecelp4800',\n 'audio/vnd.nuera.ecelp7470',\n 'audio/vnd.nuera.ecelp9600',\n 'audio/vnd.octel.sbc',\n 'audio/vnd.presonus.multitrack',\n 'audio/vnd.qcelp',\n 'audio/vnd.rhetorex.32kadpcm',\n 'audio/vnd.rip',\n 'audio/vnd.sealedmedia.softseal.mpeg',\n 'audio/vnd.vmx.cvsd',\n 'audio/vorbis',\n 'audio/vorbis-config',\n];\n\n// Partially based on:\n// https://stackoverflow.com/a/4212908/2570866\n\nconst docMimeTypes = [\n // Microsoft Word\n // .doc .dot\n 'application/msword',\n // .doc .dot\n 'application/msword-template',\n\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n // .uot\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst docXMimeTypes = [\n // Microsoft Word\n // .docx\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n // .dotx (no test)\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n // .docm\n 'application/vnd.ms-word.document.macroEnabled.12',\n // .dotm (no test)\n 'application/vnd.ms-word.template.macroEnabled.12',\n];\n\nconst excelMimeTypes = [\n // Microsoft Excel\n // .xls .xlt .xla (no test for .xla)\n 'application/vnd.ms-excel',\n\n // LibreOffice/OpenOffice Calc\n // .ods\n 'application/vnd.oasis.opendocument.spreadsheet',\n // .ots\n 'application/vnd.oasis.opendocument.spreadsheet-template',\n // .fods\n 'application/vnd.oasis.opendocument.spreadsheet-flat-xml',\n];\n\nconst excelXMimeTypes = [\n // .xlsx\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n // .xltx (no test)\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n // .xlsm\n 'application/vnd.ms-excel.sheet.macroEnabled.12',\n // .xltm (no test)\n 'application/vnd.ms-excel.template.macroEnabled.12',\n // .xlam (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n // .xlsb (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n];\n\nconst odtMimeTypes = [\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n];\n\nconst powerpointMimeTypes = [\n // Microsoft Word\n // .ppt .pot .pps .ppa (no test for .ppa)\n 'application/vnd.ms-powerpoint',\n\n // LibreOffice/OpenOffice Writer\n // .odp\n 'application/vnd.oasis.opendocument.presentation',\n // .otp\n 'application/vnd.oasis.opendocument.presentation-template',\n // .fodp\n 'application/vnd.oasis.opendocument.presentation-flat-xml',\n // .uop\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst powerpointXMimeTypes = [\n // .pptx\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n // .potx (no test)\n 'application/vnd.openxmlformats-officedocument.presentationml.template',\n // .ppsx\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n // .ppam\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n // .pptm\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n // .potm\n 'application/vnd.ms-powerpoint.template.macroEnabled.12',\n // .ppsm\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n];\n\nconst tarFileTypes = [\n // .ar\n 'application/x-archive',\n // .tar\n 'application/x-tar',\n // .tar.gz\n 'application/gzip',\n // .tar.Z\n 'application/x-compress',\n // .tar.bz2\n 'application/x-bzip',\n // .tar.lz\n 'application/x-lzip',\n // .tar.lz4\n 'application/x-lz4',\n // .tar.lzma\n 'application/x-lzma',\n // .tar.lzo (no test)\n 'application/x-lzop',\n // .tar.xz\n 'application/x-xz',\n // .war\n 'application/x-webarchive',\n];\n\nconst zipFileTypes = [\n // .gzip\n 'application/gzip',\n // .zip\n 'application/zip',\n];\n\nconst mimeTypeToIconMap: Record<string, React.FC<IconProps>> = {\n 'application/pdf': PDF, // .pdf\n 'application/rtf': RTF, // .rtf\n 'application/vnd.rar': RAR, // .rar\n 'application/x-7z-compressed': SEVEN_Z, // .z7\n 'text/csv': CSV, // .csv\n 'text/html': HTML, // .html .htm\n 'text/markdown': MD, // .md\n 'text/plain': TXT, // .txt\n};\n\nfor (const type of audioFileTypes) {\n mimeTypeToIconMap[type] = Audio;\n}\n\nfor (const type of docMimeTypes) {\n mimeTypeToIconMap[type] = DOC;\n}\n\nfor (const type of docXMimeTypes) {\n mimeTypeToIconMap[type] = DOCX;\n}\n\nfor (const type of excelMimeTypes) {\n mimeTypeToIconMap[type] = XLS;\n}\n\nfor (const type of excelXMimeTypes) {\n mimeTypeToIconMap[type] = XLSX;\n}\n\nfor (const type of odtMimeTypes) {\n mimeTypeToIconMap[type] = ODT;\n}\n\nfor (const type of powerpointMimeTypes) {\n mimeTypeToIconMap[type] = PPT;\n}\n\nfor (const type of powerpointXMimeTypes) {\n mimeTypeToIconMap[type] = PPTX;\n}\n\nfor (const type of tarFileTypes) {\n mimeTypeToIconMap[type] = TAR;\n}\n\nfor (const type of zipFileTypes) {\n mimeTypeToIconMap[type] = ZIP;\n}\n\nfunction mimeTypeToIcon(mimeType?: string): React.FC<IconProps> {\n if (!mimeType) return GenericFile;\n\n const Icon = mimeTypeToIconMap[mimeType];\n if (Icon) return Icon;\n\n return GenericFile;\n}\n\nexport type FileIconProps = {\n mimeType?: string;\n size?: number;\n};\n\nexport const FileIcon: React.FC<FileIconProps> = ({ mimeType, size }) => {\n const {\n theme: {\n messageSimple: {\n file: { icon },\n },\n },\n } = useTheme();\n\n const Icon = mimeTypeToIcon(mimeType);\n\n return <Icon {...(size ? { height: size, width: size } : {})} {...icon} />;\n};\n\nFileIcon.displayName = 'FileIcon{messageSimple{file{icon}}}';\n"]}
|
|
@@ -7,18 +7,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.Gallery = void 0;
|
|
9
9
|
|
|
10
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
-
|
|
12
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
11
|
|
|
14
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
17
13
|
|
|
18
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
15
|
|
|
20
16
|
var _reactNative = require("react-native");
|
|
21
17
|
|
|
18
|
+
var _buildGallery = require("./utils/buildGallery/buildGallery");
|
|
19
|
+
|
|
20
|
+
var _getGalleryImageBorderRadius = require("./utils/getGalleryImageBorderRadius");
|
|
21
|
+
|
|
22
22
|
var _ImageGalleryContext = require("../../contexts/imageGalleryContext/ImageGalleryContext");
|
|
23
23
|
|
|
24
24
|
var _MessageContext = require("../../contexts/messageContext/MessageContext");
|
|
@@ -31,7 +31,7 @@ var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
|
31
31
|
|
|
32
32
|
var _utils = require("../../utils/utils");
|
|
33
33
|
|
|
34
|
-
var _excluded = ["
|
|
34
|
+
var _excluded = ["uri"];
|
|
35
35
|
|
|
36
36
|
var _this = this,
|
|
37
37
|
_jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Attachment/Gallery.tsx";
|
|
@@ -41,34 +41,24 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
41
41
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
42
42
|
|
|
43
43
|
var GalleryImage = function GalleryImage(props) {
|
|
44
|
-
var
|
|
45
|
-
uri = props.uri,
|
|
44
|
+
var uri = props.uri,
|
|
46
45
|
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
47
|
-
|
|
48
|
-
var _useState = (0, _react.useState)(false),
|
|
49
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
50
|
-
error = _useState2[0],
|
|
51
|
-
setError = _useState2[1];
|
|
52
|
-
|
|
53
46
|
return _react["default"].createElement(_reactNative.Image, (0, _extends2["default"])({}, rest, {
|
|
54
|
-
onError: function onError() {
|
|
55
|
-
return setError(true);
|
|
56
|
-
},
|
|
57
47
|
source: {
|
|
58
|
-
uri:
|
|
48
|
+
uri: (0, _utils.makeImageCompatibleUrl)(uri)
|
|
59
49
|
},
|
|
60
50
|
testID: "image-attachment-single",
|
|
61
51
|
__self: _this,
|
|
62
52
|
__source: {
|
|
63
53
|
fileName: _jsxFileName,
|
|
64
|
-
lineNumber:
|
|
54
|
+
lineNumber: 46,
|
|
65
55
|
columnNumber: 5
|
|
66
56
|
}
|
|
67
57
|
}));
|
|
68
58
|
};
|
|
69
59
|
|
|
70
60
|
var MemoizedGalleryImage = _react["default"].memo(GalleryImage, function (prevProps, nextProps) {
|
|
71
|
-
return
|
|
61
|
+
return (0, _utils.getUrlWithoutParams)(prevProps.uri) === (0, _utils.getUrlWithoutParams)(nextProps.uri);
|
|
72
62
|
});
|
|
73
63
|
|
|
74
64
|
var styles = _reactNative.StyleSheet.create({
|
|
@@ -83,7 +73,6 @@ var styles = _reactNative.StyleSheet.create({
|
|
|
83
73
|
overflow: 'hidden'
|
|
84
74
|
},
|
|
85
75
|
imageContainer: {
|
|
86
|
-
flex: 1,
|
|
87
76
|
padding: 1
|
|
88
77
|
},
|
|
89
78
|
moreImagesContainer: {
|
|
@@ -99,8 +88,6 @@ var styles = _reactNative.StyleSheet.create({
|
|
|
99
88
|
});
|
|
100
89
|
|
|
101
90
|
var GalleryWithContext = function GalleryWithContext(props) {
|
|
102
|
-
var _groupStyles$;
|
|
103
|
-
|
|
104
91
|
var additionalTouchableProps = props.additionalTouchableProps,
|
|
105
92
|
alignment = props.alignment,
|
|
106
93
|
groupStyles = props.groupStyles,
|
|
@@ -108,8 +95,6 @@ var GalleryWithContext = function GalleryWithContext(props) {
|
|
|
108
95
|
images = props.images,
|
|
109
96
|
legacyImageViewerSwipeBehaviour = props.legacyImageViewerSwipeBehaviour,
|
|
110
97
|
message = props.message,
|
|
111
|
-
messageId = props.messageId,
|
|
112
|
-
messageTextProp = props.messageText,
|
|
113
98
|
_onLongPress = props.onLongPress,
|
|
114
99
|
_onPress = props.onPress,
|
|
115
100
|
_onPressIn = props.onPressIn,
|
|
@@ -125,88 +110,86 @@ var GalleryWithContext = function GalleryWithContext(props) {
|
|
|
125
110
|
_useTheme$theme$messa = _useTheme$theme.messageSimple.gallery,
|
|
126
111
|
galleryContainer = _useTheme$theme$messa.galleryContainer,
|
|
127
112
|
galleryItemColumn = _useTheme$theme$messa.galleryItemColumn,
|
|
128
|
-
|
|
113
|
+
gridHeight = _useTheme$theme$messa.gridHeight,
|
|
114
|
+
gridWidth = _useTheme$theme$messa.gridWidth,
|
|
129
115
|
image = _useTheme$theme$messa.image,
|
|
130
116
|
imageContainer = _useTheme$theme$messa.imageContainer,
|
|
117
|
+
maxHeight = _useTheme$theme$messa.maxHeight,
|
|
118
|
+
maxWidth = _useTheme$theme$messa.maxWidth,
|
|
119
|
+
minHeight = _useTheme$theme$messa.minHeight,
|
|
120
|
+
minWidth = _useTheme$theme$messa.minWidth,
|
|
131
121
|
moreImagesContainer = _useTheme$theme$messa.moreImagesContainer,
|
|
132
|
-
moreImagesText = _useTheme$theme$messa.moreImagesText
|
|
133
|
-
|
|
134
|
-
|
|
122
|
+
moreImagesText = _useTheme$theme$messa.moreImagesText;
|
|
123
|
+
|
|
124
|
+
var sizeConfig = {
|
|
125
|
+
gridHeight: gridHeight,
|
|
126
|
+
gridWidth: gridWidth,
|
|
127
|
+
maxHeight: maxHeight,
|
|
128
|
+
maxWidth: maxWidth,
|
|
129
|
+
minHeight: minHeight,
|
|
130
|
+
minWidth: minWidth
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
var _useMemo = (0, _react.useMemo)(function () {
|
|
134
|
+
return (0, _buildGallery.buildGallery)({
|
|
135
|
+
images: images,
|
|
136
|
+
sizeConfig: sizeConfig
|
|
137
|
+
});
|
|
138
|
+
}, [images.length]),
|
|
139
|
+
height = _useMemo.height,
|
|
140
|
+
invertedDirections = _useMemo.invertedDirections,
|
|
141
|
+
thumbnailGrid = _useMemo.thumbnailGrid,
|
|
142
|
+
width = _useMemo.width;
|
|
135
143
|
|
|
136
144
|
if (!(images != null && images.length)) return null;
|
|
137
|
-
var
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
if (attachmentUrl) {
|
|
141
|
-
var url = (0, _utils.makeImageCompatibleUrl)(attachmentUrl);
|
|
142
|
-
|
|
143
|
-
if (images.length <= 2) {
|
|
144
|
-
returnArray[0] = [].concat((0, _toConsumableArray2["default"])(returnArray[0] || []), [{
|
|
145
|
-
height: size || 200,
|
|
146
|
-
url: url
|
|
147
|
-
}]);
|
|
148
|
-
} else if (images.length === 3) {
|
|
149
|
-
if (index === 0) {
|
|
150
|
-
returnArray[0] = [{
|
|
151
|
-
height: size || 200,
|
|
152
|
-
url: url
|
|
153
|
-
}];
|
|
154
|
-
} else {
|
|
155
|
-
returnArray[1] = [].concat((0, _toConsumableArray2["default"])(returnArray[1] || []), [{
|
|
156
|
-
height: halfSize || 100,
|
|
157
|
-
url: url
|
|
158
|
-
}]);
|
|
159
|
-
}
|
|
160
|
-
} else {
|
|
161
|
-
returnArray[index % 2] = [].concat((0, _toConsumableArray2["default"])(returnArray[index % 2] || []), [{
|
|
162
|
-
height: halfSize || 100,
|
|
163
|
-
url: url
|
|
164
|
-
}]);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
return returnArray;
|
|
169
|
-
}, []);
|
|
170
|
-
var groupStyle = alignment + "_" + (groupStyles == null ? void 0 : (_groupStyles$ = groupStyles[0]) == null ? void 0 : _groupStyles$.toLowerCase == null ? void 0 : _groupStyles$.toLowerCase());
|
|
171
|
-
var messageText = messageTextProp || (message == null ? void 0 : message.text);
|
|
145
|
+
var messageText = message == null ? void 0 : message.text;
|
|
146
|
+
var messageId = message == null ? void 0 : message.id;
|
|
147
|
+
var numOfColumns = thumbnailGrid.length;
|
|
172
148
|
return _react["default"].createElement(_reactNative.View, {
|
|
173
149
|
style: [styles.galleryContainer, {
|
|
150
|
+
height: height,
|
|
174
151
|
width: width
|
|
175
|
-
}, galleryContainer
|
|
176
|
-
|
|
152
|
+
}, galleryContainer, {
|
|
153
|
+
flexDirection: invertedDirections ? 'column' : 'row'
|
|
154
|
+
}],
|
|
155
|
+
testID: "gallery-container",
|
|
177
156
|
__self: _this,
|
|
178
157
|
__source: {
|
|
179
158
|
fileName: _jsxFileName,
|
|
180
|
-
lineNumber:
|
|
159
|
+
lineNumber: 197,
|
|
181
160
|
columnNumber: 5
|
|
182
161
|
}
|
|
183
|
-
},
|
|
162
|
+
}, thumbnailGrid.map(function (rows, colIndex) {
|
|
163
|
+
var numOfRows = rows.length;
|
|
184
164
|
return _react["default"].createElement(_reactNative.View, {
|
|
185
|
-
key: "gallery-
|
|
186
|
-
style: [
|
|
187
|
-
flexDirection:
|
|
165
|
+
key: "gallery-" + (invertedDirections ? 'row' : 'column') + "-" + colIndex,
|
|
166
|
+
style: [{
|
|
167
|
+
flexDirection: invertedDirections ? 'row' : 'column'
|
|
188
168
|
}, galleryItemColumn],
|
|
169
|
+
testID: "gallery-" + (invertedDirections ? 'row' : 'column') + "-" + colIndex,
|
|
189
170
|
__self: _this,
|
|
190
171
|
__source: {
|
|
191
172
|
fileName: _jsxFileName,
|
|
192
|
-
lineNumber:
|
|
193
|
-
columnNumber:
|
|
173
|
+
lineNumber: 214,
|
|
174
|
+
columnNumber: 11
|
|
194
175
|
}
|
|
195
|
-
},
|
|
176
|
+
}, rows.map(function (_ref, rowIndex) {
|
|
196
177
|
var height = _ref.height,
|
|
197
|
-
|
|
178
|
+
resizeMode = _ref.resizeMode,
|
|
179
|
+
url = _ref.url,
|
|
180
|
+
width = _ref.width;
|
|
198
181
|
|
|
199
182
|
var defaultOnPress = function defaultOnPress() {
|
|
200
183
|
if (!legacyImageViewerSwipeBehaviour && message) {
|
|
201
184
|
setImages([message]);
|
|
202
185
|
setImage({
|
|
203
|
-
messageId:
|
|
186
|
+
messageId: message.id,
|
|
204
187
|
url: url
|
|
205
188
|
});
|
|
206
189
|
setOverlay('gallery');
|
|
207
190
|
} else if (legacyImageViewerSwipeBehaviour) {
|
|
208
191
|
setImage({
|
|
209
|
-
messageId:
|
|
192
|
+
messageId: message == null ? void 0 : message.id,
|
|
210
193
|
url: url
|
|
211
194
|
});
|
|
212
195
|
setOverlay('gallery');
|
|
@@ -244,51 +227,63 @@ var GalleryWithContext = function GalleryWithContext(props) {
|
|
|
244
227
|
}
|
|
245
228
|
},
|
|
246
229
|
style: [styles.imageContainer, {
|
|
247
|
-
height: height
|
|
230
|
+
height: height,
|
|
231
|
+
width: width
|
|
248
232
|
}, imageContainer],
|
|
249
|
-
testID: "
|
|
233
|
+
testID: "gallery-" + (invertedDirections ? 'row' : 'column') + "-" + colIndex + "-item-" + rowIndex
|
|
250
234
|
}, additionalTouchableProps, {
|
|
251
235
|
__self: _this,
|
|
252
236
|
__source: {
|
|
253
237
|
fileName: _jsxFileName,
|
|
254
|
-
lineNumber:
|
|
255
|
-
columnNumber:
|
|
238
|
+
lineNumber: 239,
|
|
239
|
+
columnNumber: 17
|
|
256
240
|
}
|
|
257
241
|
}), _react["default"].createElement(MemoizedGalleryImage, {
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
242
|
+
resizeMode: resizeMode,
|
|
243
|
+
style: [(0, _getGalleryImageBorderRadius.getGalleryImageBorderRadius)({
|
|
244
|
+
alignment: alignment,
|
|
245
|
+
colIndex: colIndex,
|
|
246
|
+
groupStyles: groupStyles,
|
|
247
|
+
hasThreadReplies: hasThreadReplies,
|
|
248
|
+
height: height,
|
|
249
|
+
invertedDirections: invertedDirections,
|
|
250
|
+
messageText: messageText,
|
|
251
|
+
numOfColumns: numOfColumns,
|
|
252
|
+
numOfRows: numOfRows,
|
|
253
|
+
rowIndex: rowIndex,
|
|
254
|
+
sizeConfig: sizeConfig,
|
|
255
|
+
threadList: threadList,
|
|
256
|
+
width: width
|
|
257
|
+
}), image, {
|
|
258
|
+
height: height - 1,
|
|
259
|
+
width: width - 1
|
|
260
|
+
}],
|
|
266
261
|
uri: url,
|
|
267
262
|
__self: _this,
|
|
268
263
|
__source: {
|
|
269
264
|
fileName: _jsxFileName,
|
|
270
|
-
lineNumber:
|
|
271
|
-
columnNumber:
|
|
265
|
+
lineNumber: 282,
|
|
266
|
+
columnNumber: 19
|
|
272
267
|
}
|
|
273
|
-
}), colIndex === 1 && rowIndex === 1 && images.length >
|
|
268
|
+
}), colIndex === numOfColumns - 1 && rowIndex === numOfRows - 1 && images.length > 4 ? _react["default"].createElement(_reactNative.View, {
|
|
274
269
|
style: [_reactNative.StyleSheet.absoluteFillObject, styles.moreImagesContainer, {
|
|
275
270
|
backgroundColor: overlay
|
|
276
271
|
}, moreImagesContainer],
|
|
277
272
|
__self: _this,
|
|
278
273
|
__source: {
|
|
279
274
|
fileName: _jsxFileName,
|
|
280
|
-
lineNumber:
|
|
281
|
-
columnNumber:
|
|
275
|
+
lineNumber: 311,
|
|
276
|
+
columnNumber: 21
|
|
282
277
|
}
|
|
283
278
|
}, _react["default"].createElement(_reactNative.Text, {
|
|
284
279
|
style: [styles.moreImagesText, moreImagesText],
|
|
285
280
|
__self: _this,
|
|
286
281
|
__source: {
|
|
287
282
|
fileName: _jsxFileName,
|
|
288
|
-
lineNumber:
|
|
289
|
-
columnNumber:
|
|
283
|
+
lineNumber: 319,
|
|
284
|
+
columnNumber: 23
|
|
290
285
|
}
|
|
291
|
-
}, "+" + (images.length -
|
|
286
|
+
}, "+" + (images.length - 4))) : null);
|
|
292
287
|
}));
|
|
293
288
|
}));
|
|
294
289
|
};
|
|
@@ -297,13 +292,13 @@ var areEqual = function areEqual(prevProps, nextProps) {
|
|
|
297
292
|
var prevGroupStyles = prevProps.groupStyles,
|
|
298
293
|
prevHasThreadReplies = prevProps.hasThreadReplies,
|
|
299
294
|
prevImages = prevProps.images,
|
|
300
|
-
|
|
295
|
+
prevMessage = prevProps.message;
|
|
301
296
|
var nextGroupStyles = nextProps.groupStyles,
|
|
302
297
|
nextHasThreadReplies = nextProps.hasThreadReplies,
|
|
303
298
|
nextImages = nextProps.images,
|
|
304
|
-
|
|
305
|
-
var
|
|
306
|
-
if (!
|
|
299
|
+
nextMessage = nextProps.message;
|
|
300
|
+
var messageEqual = (prevMessage == null ? void 0 : prevMessage.id) === (nextMessage == null ? void 0 : nextMessage.id);
|
|
301
|
+
if (!messageEqual) return false;
|
|
307
302
|
var groupStylesEqual = prevGroupStyles.length === nextGroupStyles.length && prevGroupStyles[0] === nextGroupStyles[0];
|
|
308
303
|
if (!groupStylesEqual) return false;
|
|
309
304
|
var hasThreadRepliesEqual = prevHasThreadReplies === nextHasThreadReplies;
|
|
@@ -323,8 +318,6 @@ var Gallery = function Gallery(props) {
|
|
|
323
318
|
propGroupStyles = props.groupStyles,
|
|
324
319
|
hasThreadReplies = props.hasThreadReplies,
|
|
325
320
|
propImages = props.images,
|
|
326
|
-
messageId = props.messageId,
|
|
327
|
-
messageText = props.messageText,
|
|
328
321
|
propOnLongPress = props.onLongPress,
|
|
329
322
|
propOnPress = props.onPress,
|
|
330
323
|
propOnPressIn = props.onPressIn,
|
|
@@ -370,14 +363,12 @@ var Gallery = function Gallery(props) {
|
|
|
370
363
|
return _react["default"].createElement(MemoizedGallery, {
|
|
371
364
|
additionalTouchableProps: additionalTouchableProps,
|
|
372
365
|
alignment: alignment,
|
|
373
|
-
channelId: message.cid,
|
|
366
|
+
channelId: message == null ? void 0 : message.cid,
|
|
374
367
|
groupStyles: groupStyles,
|
|
375
368
|
hasThreadReplies: hasThreadReplies || !!(message != null && message.reply_count),
|
|
376
369
|
images: images,
|
|
377
370
|
legacyImageViewerSwipeBehaviour: legacyImageViewerSwipeBehaviour,
|
|
378
371
|
message: message,
|
|
379
|
-
messageId: messageId || (message == null ? void 0 : message.id),
|
|
380
|
-
messageText: messageText || (message == null ? void 0 : message.text),
|
|
381
372
|
onLongPress: onLongPress,
|
|
382
373
|
onPress: onPress,
|
|
383
374
|
onPressIn: onPressIn,
|
|
@@ -389,7 +380,7 @@ var Gallery = function Gallery(props) {
|
|
|
389
380
|
__self: _this,
|
|
390
381
|
__source: {
|
|
391
382
|
fileName: _jsxFileName,
|
|
392
|
-
lineNumber:
|
|
383
|
+
lineNumber: 457,
|
|
393
384
|
columnNumber: 5
|
|
394
385
|
}
|
|
395
386
|
});
|