stream-chat-react-native-core 5.15.1-beta.1 → 5.15.1-beta.2
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.map +1 -1
- package/lib/commonjs/components/Attachment/AttachmentActions.js.map +1 -1
- package/lib/commonjs/components/Attachment/AudioAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/Card.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/GalleryImage.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
- package/lib/commonjs/components/Attachment/ImageLoadingFailedIndicator.js.map +1 -1
- package/lib/commonjs/components/Attachment/ImageLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/Attachment/ImageReloadIndicator.js.map +1 -1
- package/lib/commonjs/components/Attachment/VideoThumbnail.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/getAspectRatio.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/openUrlSafely.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerError.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerErrorImage.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerItem.js +14 -16
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/CameraSelectorIcon.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/FileSelectorIcon.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/ImageSelectorIcon.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
- package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListMessenger.js.map +1 -1
- package/lib/commonjs/components/ChannelList/Skeleton.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/commonjs/components/ChannelList/utils.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
- 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.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/useAppSettings.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useMutedUsers.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useSyncDatabase.js.map +1 -1
- package/lib/commonjs/components/ImageBackground.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
- package/lib/commonjs/components/Indicators/EmptyStateIndicator.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingDot.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingDots.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
- package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/parseLinks.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CooldownTimer.js.map +1 -1
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MoreOptionsButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/UploadProgressIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputEditingStateHeader.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputGiphySearch.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputReplyStateHeader.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useCooldown.js.map +1 -1
- package/lib/commonjs/components/MessageList/DateHeader.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js.map +1 -1
- 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/NetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
- package/lib/commonjs/components/MessageList/TypingIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
- package/lib/commonjs/components/ProgressControl/ProgressControl.js.map +1 -1
- package/lib/commonjs/components/RTLComponents/WritingDirectionAwareText.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js.map +1 -1
- package/lib/commonjs/components/Spinner/Spinner.js.map +1 -1
- package/lib/commonjs/components/Thread/Thread.js.map +1 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/docs/data.js.map +1 -1
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/commonjs/contexts/debugContext/DebugContext.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/commonjs/contexts/themeContext/ThemeContext.js.map +1 -1
- package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
- package/lib/commonjs/emoji-data/compile.js.map +1 -1
- package/lib/commonjs/emoji-data/index.js.map +1 -1
- package/lib/commonjs/hooks/useAppStateListener.js.map +1 -1
- package/lib/commonjs/hooks/useIsMountedRef.js.map +1 -1
- package/lib/commonjs/hooks/useLoadingImage.js.map +1 -1
- package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
- package/lib/commonjs/hooks/useTranslatedMessage.js.map +1 -1
- package/lib/commonjs/icons/ArrowRight.js.map +1 -1
- package/lib/commonjs/icons/AtMentions.js.map +1 -1
- package/lib/commonjs/icons/Attach.js.map +1 -1
- package/lib/commonjs/icons/Audio.js.map +1 -1
- package/lib/commonjs/icons/CSV.js.map +1 -1
- package/lib/commonjs/icons/Camera.js.map +1 -1
- package/lib/commonjs/icons/Check.js.map +1 -1
- package/lib/commonjs/icons/CheckAll.js.map +1 -1
- package/lib/commonjs/icons/CheckSend.js.map +1 -1
- package/lib/commonjs/icons/CircleClose.js.map +1 -1
- package/lib/commonjs/icons/CirclePlus.js.map +1 -1
- package/lib/commonjs/icons/CircleRight.js.map +1 -1
- package/lib/commonjs/icons/Close.js.map +1 -1
- package/lib/commonjs/icons/Copy.js.map +1 -1
- package/lib/commonjs/icons/CurveLineLeftUp.js.map +1 -1
- package/lib/commonjs/icons/DOC.js.map +1 -1
- package/lib/commonjs/icons/DOCX.js.map +1 -1
- package/lib/commonjs/icons/Delete.js.map +1 -1
- package/lib/commonjs/icons/Down.js.map +1 -1
- package/lib/commonjs/icons/DownloadArrow.js.map +1 -1
- package/lib/commonjs/icons/DownloadCloud.js.map +1 -1
- package/lib/commonjs/icons/Edit.js.map +1 -1
- package/lib/commonjs/icons/Error.js.map +1 -1
- package/lib/commonjs/icons/Eye.js.map +1 -1
- package/lib/commonjs/icons/Flag.js.map +1 -1
- package/lib/commonjs/icons/Folder.js.map +1 -1
- package/lib/commonjs/icons/GenericFile.js.map +1 -1
- package/lib/commonjs/icons/GiphyIcon.js.map +1 -1
- package/lib/commonjs/icons/Grid.js.map +1 -1
- package/lib/commonjs/icons/Group.js.map +1 -1
- package/lib/commonjs/icons/HTML.js.map +1 -1
- package/lib/commonjs/icons/Imgur.js.map +1 -1
- package/lib/commonjs/icons/LOLReaction.js.map +1 -1
- package/lib/commonjs/icons/Lightning.js.map +1 -1
- package/lib/commonjs/icons/Link.js.map +1 -1
- package/lib/commonjs/icons/Loading.js.map +1 -1
- package/lib/commonjs/icons/Logo.js.map +1 -1
- package/lib/commonjs/icons/LoveReaction.js.map +1 -1
- package/lib/commonjs/icons/MD.js.map +1 -1
- package/lib/commonjs/icons/MailOpen.js.map +1 -1
- package/lib/commonjs/icons/MenuPointHorizontal.js.map +1 -1
- package/lib/commonjs/icons/MenuPointVertical.js.map +1 -1
- package/lib/commonjs/icons/MessageFlag.js.map +1 -1
- package/lib/commonjs/icons/MessageIcon.js.map +1 -1
- package/lib/commonjs/icons/Mute.js.map +1 -1
- package/lib/commonjs/icons/Notification.js.map +1 -1
- package/lib/commonjs/icons/ODT.js.map +1 -1
- package/lib/commonjs/icons/PDF.js.map +1 -1
- package/lib/commonjs/icons/PPT.js.map +1 -1
- package/lib/commonjs/icons/PPTX.js.map +1 -1
- package/lib/commonjs/icons/Pause.js.map +1 -1
- package/lib/commonjs/icons/Picture.js.map +1 -1
- package/lib/commonjs/icons/Pin.js.map +1 -1
- package/lib/commonjs/icons/PinHeader.js.map +1 -1
- package/lib/commonjs/icons/Play.js.map +1 -1
- package/lib/commonjs/icons/RAR.js.map +1 -1
- package/lib/commonjs/icons/RTF.js.map +1 -1
- package/lib/commonjs/icons/Recorder.js.map +1 -1
- package/lib/commonjs/icons/Refresh.js.map +1 -1
- package/lib/commonjs/icons/SEVEN_Z.js.map +1 -1
- package/lib/commonjs/icons/Search.js.map +1 -1
- package/lib/commonjs/icons/SendRight.js.map +1 -1
- package/lib/commonjs/icons/SendUp.js.map +1 -1
- package/lib/commonjs/icons/Share.js.map +1 -1
- package/lib/commonjs/icons/ShareRightArrow.js.map +1 -1
- package/lib/commonjs/icons/Smile.js.map +1 -1
- package/lib/commonjs/icons/Sound.js.map +1 -1
- package/lib/commonjs/icons/TAR.js.map +1 -1
- package/lib/commonjs/icons/TXT.js.map +1 -1
- package/lib/commonjs/icons/ThreadReply.js.map +1 -1
- package/lib/commonjs/icons/ThumbsDownReaction.js.map +1 -1
- package/lib/commonjs/icons/ThumbsUpReaction.js.map +1 -1
- package/lib/commonjs/icons/Time.js.map +1 -1
- package/lib/commonjs/icons/Unknown.js.map +1 -1
- package/lib/commonjs/icons/Unpin.js.map +1 -1
- package/lib/commonjs/icons/User.js.map +1 -1
- package/lib/commonjs/icons/UserAdd.js.map +1 -1
- package/lib/commonjs/icons/UserAdmin.js.map +1 -1
- package/lib/commonjs/icons/UserDelete.js.map +1 -1
- package/lib/commonjs/icons/UserMinus.js.map +1 -1
- package/lib/commonjs/icons/Video.js.map +1 -1
- package/lib/commonjs/icons/Warning.js.map +1 -1
- package/lib/commonjs/icons/WutReaction.js.map +1 -1
- package/lib/commonjs/icons/XLS.js.map +1 -1
- package/lib/commonjs/icons/XLSX.js.map +1 -1
- package/lib/commonjs/icons/ZIP.js.map +1 -1
- package/lib/commonjs/icons/utils/base.js.map +1 -1
- package/lib/commonjs/init.js.map +1 -1
- package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
- package/lib/commonjs/mock-builders/api/deleteMessage.js.map +1 -1
- package/lib/commonjs/mock-builders/api/deleteReaction.js.map +1 -1
- package/lib/commonjs/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/commonjs/mock-builders/api/sendReaction.js.map +1 -1
- package/lib/commonjs/mock-builders/api/useMockedApis.js.map +1 -1
- package/lib/commonjs/mock-builders/event/messageRead.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/member.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/message.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/reaction.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
- package/lib/commonjs/mock-builders/mock.js.map +1 -1
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/store/QuickSqliteClient.js.map +1 -1
- package/lib/commonjs/store/apis/deleteReactions.js.map +1 -1
- package/lib/commonjs/store/apis/getAllChannelIds.js.map +1 -1
- package/lib/commonjs/store/apis/getAppSettings.js.map +1 -1
- package/lib/commonjs/store/apis/getChannelMessages.js.map +1 -1
- package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectMembersForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectMessagesForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectReadsForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/updateMessage.js.map +1 -1
- package/lib/commonjs/store/apis/updateReaction.js.map +1 -1
- package/lib/commonjs/store/apis/upsertChannels.js.map +1 -1
- package/lib/commonjs/store/apis/upsertMembers.js.map +1 -1
- package/lib/commonjs/store/apis/upsertReads.js.map +1 -1
- package/lib/commonjs/store/apis/utils/convertFilterSortToQuery.js.map +1 -1
- package/lib/commonjs/store/mappers/mapDateTimeToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapTaskToStorable.js.map +1 -1
- package/lib/commonjs/store/sqlite-utils/appendOrderByClause.js.map +1 -1
- package/lib/commonjs/store/sqlite-utils/appendWhereCluase.js.map +1 -1
- package/lib/commonjs/store/sqlite-utils/createCreateTableQuery.js.map +1 -1
- package/lib/commonjs/test-utils/BetterSqlite.js.map +1 -1
- package/lib/commonjs/types/types.js.map +1 -1
- package/lib/commonjs/utils/DBSyncManager.js.map +1 -1
- package/lib/commonjs/utils/Streami18n.js.map +1 -1
- package/lib/commonjs/utils/addReactionToLocalState.js.map +1 -1
- package/lib/commonjs/utils/date.js.map +1 -1
- package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -1
- package/lib/commonjs/utils/patchMessageTextCommand.js.map +1 -1
- package/lib/commonjs/utils/removeReactionFromLocalState.js.map +1 -1
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- 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/AudioAttachment.js.map +1 -1
- package/lib/module/components/Attachment/Card.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
- package/lib/module/components/Attachment/FileIcon.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/GalleryImage.js.map +1 -1
- package/lib/module/components/Attachment/Giphy.js.map +1 -1
- package/lib/module/components/Attachment/ImageLoadingFailedIndicator.js.map +1 -1
- package/lib/module/components/Attachment/ImageLoadingIndicator.js.map +1 -1
- package/lib/module/components/Attachment/ImageReloadIndicator.js.map +1 -1
- package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
- package/lib/module/components/Attachment/utils/getAspectRatio.js.map +1 -1
- package/lib/module/components/Attachment/utils/getGalleryImageBorderRadius.js.map +1 -1
- package/lib/module/components/Attachment/utils/openUrlSafely.js.map +1 -1
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerError.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerErrorImage.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerItem.js +14 -16
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentSelectionBar.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/CameraSelectorIcon.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/FileSelectorIcon.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/ImageOverlaySelectedComponent.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/ImageSelectorIcon.js.map +1 -1
- 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.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/Avatar/Avatar.js.map +1 -1
- package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useTargetedMessage.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListLoadingIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListMessenger.js.map +1 -1
- package/lib/module/components/ChannelList/Skeleton.js.map +1 -1
- 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.map +1 -1
- package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
- 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.map +1 -1
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/module/components/ChannelList/utils.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelAvatar.js.map +1 -1
- 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.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
- 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.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/useAppSettings.js.map +1 -1
- package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
- package/lib/module/components/Chat/hooks/useMutedUsers.js.map +1 -1
- package/lib/module/components/Chat/hooks/useSyncDatabase.js.map +1 -1
- package/lib/module/components/ImageBackground.js.map +1 -1
- package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
- package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
- package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
- package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
- package/lib/module/components/Indicators/EmptyStateIndicator.js.map +1 -1
- package/lib/module/components/Indicators/LoadingDot.js.map +1 -1
- package/lib/module/components/Indicators/LoadingDots.js.map +1 -1
- package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
- package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleViewFC.js.map +1 -1
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageReplies.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageRepliesAvatars.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/parseLinks.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/module/components/MessageInput/CooldownTimer.js.map +1 -1
- package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/InputButtons.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/module/components/MessageInput/MoreOptionsButton.js.map +1 -1
- package/lib/module/components/MessageInput/SendButton.js.map +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/module/components/MessageInput/UploadProgressIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputEditingStateHeader.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputGiphySearch.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputReplyStateHeader.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useCooldown.js.map +1 -1
- package/lib/module/components/MessageList/DateHeader.js.map +1 -1
- package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreThreadIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineUnreadIndicator.js.map +1 -1
- 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/NetworkDownIndicator.js.map +1 -1
- package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
- package/lib/module/components/MessageList/TypingIndicator.js.map +1 -1
- package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/module/components/MessageList/utils/getDateSeparators.js.map +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -1
- package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -1
- package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -1
- package/lib/module/components/ProgressControl/ProgressControl.js.map +1 -1
- package/lib/module/components/RTLComponents/WritingDirectionAwareText.js.map +1 -1
- package/lib/module/components/Reply/Reply.js.map +1 -1
- package/lib/module/components/Spinner/Spinner.js.map +1 -1
- package/lib/module/components/Thread/Thread.js.map +1 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/docs/data.js.map +1 -1
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/module/contexts/debugContext/DebugContext.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- 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.map +1 -1
- package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
- package/lib/module/contexts/themeContext/ThemeContext.js.map +1 -1
- package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
- package/lib/module/emoji-data/compile.js.map +1 -1
- package/lib/module/emoji-data/index.js.map +1 -1
- package/lib/module/hooks/useAppStateListener.js.map +1 -1
- package/lib/module/hooks/useIsMountedRef.js.map +1 -1
- package/lib/module/hooks/useLoadingImage.js.map +1 -1
- package/lib/module/hooks/useStreami18n.js.map +1 -1
- package/lib/module/hooks/useTranslatedMessage.js.map +1 -1
- package/lib/module/icons/ArrowRight.js.map +1 -1
- package/lib/module/icons/AtMentions.js.map +1 -1
- package/lib/module/icons/Attach.js.map +1 -1
- package/lib/module/icons/Audio.js.map +1 -1
- package/lib/module/icons/CSV.js.map +1 -1
- package/lib/module/icons/Camera.js.map +1 -1
- package/lib/module/icons/Check.js.map +1 -1
- package/lib/module/icons/CheckAll.js.map +1 -1
- package/lib/module/icons/CheckSend.js.map +1 -1
- package/lib/module/icons/CircleClose.js.map +1 -1
- package/lib/module/icons/CirclePlus.js.map +1 -1
- package/lib/module/icons/CircleRight.js.map +1 -1
- package/lib/module/icons/Close.js.map +1 -1
- package/lib/module/icons/Copy.js.map +1 -1
- package/lib/module/icons/CurveLineLeftUp.js.map +1 -1
- package/lib/module/icons/DOC.js.map +1 -1
- package/lib/module/icons/DOCX.js.map +1 -1
- package/lib/module/icons/Delete.js.map +1 -1
- package/lib/module/icons/Down.js.map +1 -1
- package/lib/module/icons/DownloadArrow.js.map +1 -1
- package/lib/module/icons/DownloadCloud.js.map +1 -1
- package/lib/module/icons/Edit.js.map +1 -1
- package/lib/module/icons/Error.js.map +1 -1
- package/lib/module/icons/Eye.js.map +1 -1
- package/lib/module/icons/Flag.js.map +1 -1
- package/lib/module/icons/Folder.js.map +1 -1
- package/lib/module/icons/GenericFile.js.map +1 -1
- package/lib/module/icons/GiphyIcon.js.map +1 -1
- package/lib/module/icons/Grid.js.map +1 -1
- package/lib/module/icons/Group.js.map +1 -1
- package/lib/module/icons/HTML.js.map +1 -1
- package/lib/module/icons/Imgur.js.map +1 -1
- package/lib/module/icons/LOLReaction.js.map +1 -1
- package/lib/module/icons/Lightning.js.map +1 -1
- package/lib/module/icons/Link.js.map +1 -1
- package/lib/module/icons/Loading.js.map +1 -1
- package/lib/module/icons/Logo.js.map +1 -1
- package/lib/module/icons/LoveReaction.js.map +1 -1
- package/lib/module/icons/MD.js.map +1 -1
- package/lib/module/icons/MailOpen.js.map +1 -1
- package/lib/module/icons/MenuPointHorizontal.js.map +1 -1
- package/lib/module/icons/MenuPointVertical.js.map +1 -1
- package/lib/module/icons/MessageFlag.js.map +1 -1
- package/lib/module/icons/MessageIcon.js.map +1 -1
- package/lib/module/icons/Mute.js.map +1 -1
- package/lib/module/icons/Notification.js.map +1 -1
- package/lib/module/icons/ODT.js.map +1 -1
- package/lib/module/icons/PDF.js.map +1 -1
- package/lib/module/icons/PPT.js.map +1 -1
- package/lib/module/icons/PPTX.js.map +1 -1
- package/lib/module/icons/Pause.js.map +1 -1
- package/lib/module/icons/Picture.js.map +1 -1
- package/lib/module/icons/Pin.js.map +1 -1
- package/lib/module/icons/PinHeader.js.map +1 -1
- package/lib/module/icons/Play.js.map +1 -1
- package/lib/module/icons/RAR.js.map +1 -1
- package/lib/module/icons/RTF.js.map +1 -1
- package/lib/module/icons/Recorder.js.map +1 -1
- package/lib/module/icons/Refresh.js.map +1 -1
- package/lib/module/icons/SEVEN_Z.js.map +1 -1
- package/lib/module/icons/Search.js.map +1 -1
- package/lib/module/icons/SendRight.js.map +1 -1
- package/lib/module/icons/SendUp.js.map +1 -1
- package/lib/module/icons/Share.js.map +1 -1
- package/lib/module/icons/ShareRightArrow.js.map +1 -1
- package/lib/module/icons/Smile.js.map +1 -1
- package/lib/module/icons/Sound.js.map +1 -1
- package/lib/module/icons/TAR.js.map +1 -1
- package/lib/module/icons/TXT.js.map +1 -1
- package/lib/module/icons/ThreadReply.js.map +1 -1
- package/lib/module/icons/ThumbsDownReaction.js.map +1 -1
- package/lib/module/icons/ThumbsUpReaction.js.map +1 -1
- package/lib/module/icons/Time.js.map +1 -1
- package/lib/module/icons/Unknown.js.map +1 -1
- package/lib/module/icons/Unpin.js.map +1 -1
- package/lib/module/icons/User.js.map +1 -1
- package/lib/module/icons/UserAdd.js.map +1 -1
- package/lib/module/icons/UserAdmin.js.map +1 -1
- package/lib/module/icons/UserDelete.js.map +1 -1
- package/lib/module/icons/UserMinus.js.map +1 -1
- package/lib/module/icons/Video.js.map +1 -1
- package/lib/module/icons/Warning.js.map +1 -1
- package/lib/module/icons/WutReaction.js.map +1 -1
- package/lib/module/icons/XLS.js.map +1 -1
- package/lib/module/icons/XLSX.js.map +1 -1
- package/lib/module/icons/ZIP.js.map +1 -1
- package/lib/module/icons/utils/base.js.map +1 -1
- package/lib/module/init.js.map +1 -1
- package/lib/module/mock-builders/DB/mock.js.map +1 -1
- package/lib/module/mock-builders/api/deleteMessage.js.map +1 -1
- package/lib/module/mock-builders/api/deleteReaction.js.map +1 -1
- package/lib/module/mock-builders/api/sendMessage.js.map +1 -1
- package/lib/module/mock-builders/api/sendReaction.js.map +1 -1
- package/lib/module/mock-builders/api/useMockedApis.js.map +1 -1
- package/lib/module/mock-builders/event/messageRead.js.map +1 -1
- package/lib/module/mock-builders/generator/attachment.js.map +1 -1
- package/lib/module/mock-builders/generator/channel.js.map +1 -1
- package/lib/module/mock-builders/generator/member.js.map +1 -1
- package/lib/module/mock-builders/generator/message.js.map +1 -1
- package/lib/module/mock-builders/generator/reaction.js.map +1 -1
- package/lib/module/mock-builders/generator/user.js.map +1 -1
- package/lib/module/mock-builders/mock.js.map +1 -1
- package/lib/module/native.js.map +1 -1
- package/lib/module/store/QuickSqliteClient.js.map +1 -1
- package/lib/module/store/apis/deleteReactions.js.map +1 -1
- package/lib/module/store/apis/getAllChannelIds.js.map +1 -1
- package/lib/module/store/apis/getAppSettings.js.map +1 -1
- package/lib/module/store/apis/getChannelMessages.js.map +1 -1
- package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
- package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
- package/lib/module/store/apis/queries/selectChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectMembersForChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectMessagesForChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectReactionsForMessages.js.map +1 -1
- package/lib/module/store/apis/queries/selectReadsForChannels.js.map +1 -1
- package/lib/module/store/apis/updateMessage.js.map +1 -1
- package/lib/module/store/apis/updateReaction.js.map +1 -1
- package/lib/module/store/apis/upsertChannels.js.map +1 -1
- package/lib/module/store/apis/upsertMembers.js.map +1 -1
- package/lib/module/store/apis/upsertReads.js.map +1 -1
- package/lib/module/store/apis/utils/convertFilterSortToQuery.js.map +1 -1
- package/lib/module/store/mappers/mapDateTimeToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapTaskToStorable.js.map +1 -1
- package/lib/module/store/sqlite-utils/appendOrderByClause.js.map +1 -1
- package/lib/module/store/sqlite-utils/appendWhereCluase.js.map +1 -1
- package/lib/module/store/sqlite-utils/createCreateTableQuery.js.map +1 -1
- package/lib/module/test-utils/BetterSqlite.js.map +1 -1
- package/lib/module/types/types.js.map +1 -1
- package/lib/module/utils/DBSyncManager.js.map +1 -1
- package/lib/module/utils/Streami18n.js.map +1 -1
- package/lib/module/utils/addReactionToLocalState.js.map +1 -1
- package/lib/module/utils/date.js.map +1 -1
- package/lib/module/utils/getResizedImageUrl.js.map +1 -1
- package/lib/module/utils/patchMessageTextCommand.js.map +1 -1
- package/lib/module/utils/removeReactionFromLocalState.js.map +1 -1
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/types/types.d.ts +1 -2
- package/package.json +1 -1
- package/src/components/AttachmentPicker/components/AttachmentPickerItem.tsx +1 -3
- package/src/types/types.ts +1 -2
- package/src/version.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSvg","_MessageOverlayContext","_MessagesContext","_OverlayContext","_ThemeContext","_icons","_native","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AnimatedCircle","Animated","createAnimatedComponent","Circle","styles","StyleSheet","create","notLastReaction","marginRight","reactionList","alignItems","borderRadius","flexDirection","justifyContent","paddingHorizontal","paddingVertical","position","selectedIcon","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionButton","props","handleReaction","index","numberOfReactions","ownReactionTypes","setOverlay","showScreen","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","_useTheme$theme$overl","overlay","reactionsList","reaction","reactionSize","selected","includes","animationScale","useSharedValue","hasShown","scale","selectedOpacity","onTap","useAnimatedGestureHandler","onEnd","runOnJS","triggerHaptic","value","withTiming","duration","onFinish","cancelAnimation","onStart","useAnimatedReaction","result","withSequence","withDelay","iconStyle","useAnimatedStyle","transform","selectedStyle","opacity","createElement","TapGestureHandler","hitSlop","bottom","Number","paddingBottom","left","paddingLeft","right","paddingRight","top","paddingTop","maxDurationMs","onHandlerStateChange","__self","__source","fileName","lineNumber","columnNumber","View","style","height","pathFill","width","exports","OverlayReactionListWithContext","alignment","fill","messageLayout","_props$supportedReact","supportedReactions","_useTheme2","_useTheme2$theme","white_snow","_useTheme2$theme$over","screenPadding","padding","_useTheme2$theme$over2","radius","reactionListHeight","reactionBubbleWidth","reactionListLayout","_useWindowDimensions","useWindowDimensions","animatedStyle","insideLeftBound","x","insideRightBound","y","animatedBigCircleProps","useAnimatedProps","cx","cy","r","animateSmallCircleProps","showScreenStyle","translateY","interpolate","translateX","length","absoluteFill","testID","onLayout","_ref","layout","nativeEvent","animatedProps","_ref2","_ref2$nativeEvent$lay","layoutWidth","backgroundColor","map","_ref3","areEqual","prevProps","nextProps","prevAlignment","prevOwnReactionTypes","nextAlignment","nextOwnReactionTypes","alignmentEqual","ownReactionTypesEqual","MemoizedOverlayReactionList","React","memo","OverlayReactionList","_useMessageOverlayCon","useMessageOverlayContext","data","_useMessagesContext","useMessagesContext","_useOverlayContext","useOverlayContext","_extends2","displayName"],"sources":["OverlayReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { TapGestureHandler, TapGestureHandlerStateChangeEvent } from 'react-native-gesture-handler';\nimport Animated, {\n cancelAnimation,\n interpolate,\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedProps,\n useAnimatedReaction,\n useAnimatedStyle,\n useSharedValue,\n withDelay,\n withSequence,\n withTiming,\n} from 'react-native-reanimated';\nimport Svg, { Circle, CircleProps, FillProps } from 'react-native-svg';\n\nimport {\n MessageOverlayData,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport {\n OverlayContextValue,\n useOverlayContext,\n} from '../../contexts/overlayContext/OverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n IconProps,\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n WutReaction,\n} from '../../icons';\n\nimport { triggerHaptic } from '../../native';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst AnimatedCircle = Animated.createAnimatedComponent\n ? Animated.createAnimatedComponent(Circle)\n : Circle;\n\nconst styles = StyleSheet.create({\n notLastReaction: {\n marginRight: 16,\n },\n reactionList: {\n alignItems: 'center',\n borderRadius: 24,\n flexDirection: 'row',\n justifyContent: 'center',\n paddingHorizontal: 16,\n paddingVertical: 12,\n position: 'absolute',\n },\n selectedIcon: {\n position: 'absolute',\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\ntype ReactionButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'ownReactionTypes' | 'handleReaction' | 'setOverlay'\n> & {\n Icon: React.FC<IconProps>;\n index: number;\n numberOfReactions: number;\n showScreen: Animated.SharedValue<number>;\n type: string;\n};\n\nexport const ReactionButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionButtonProps<StreamChatGenerics>,\n) => {\n const {\n handleReaction,\n Icon,\n index,\n numberOfReactions,\n ownReactionTypes,\n setOverlay,\n showScreen,\n type,\n } = props;\n const {\n theme: {\n colors: { accent_blue, grey },\n overlay: {\n reactionsList: { reaction, reactionSize },\n },\n },\n } = useTheme();\n const selected = ownReactionTypes.includes(type);\n const animationScale = useSharedValue(0);\n const hasShown = useSharedValue(0);\n const scale = useSharedValue(1);\n const selectedOpacity = useSharedValue(selected ? 1 : 0);\n\n const onTap = useAnimatedGestureHandler<TapGestureHandlerStateChangeEvent>(\n {\n onEnd: () => {\n runOnJS(triggerHaptic)('impactLight');\n selectedOpacity.value = withTiming(selected ? 0 : 1, { duration: 250 }, () => {\n if (handleReaction) {\n runOnJS(handleReaction)(type);\n }\n runOnJS(setOverlay)('none');\n });\n },\n onFinish: () => {\n cancelAnimation(scale);\n scale.value = withTiming(1, { duration: 100 });\n },\n onStart: () => {\n cancelAnimation(scale);\n scale.value = withTiming(1.5, { duration: 100 });\n },\n },\n [handleReaction, selected, setOverlay, type],\n );\n\n useAnimatedReaction(\n () => {\n if (showScreen.value > 0.8 && hasShown.value === 0) {\n return 1;\n }\n return 0;\n },\n (result) => {\n if (hasShown.value === 0 && result !== 0) {\n hasShown.value = 1;\n animationScale.value = withSequence(\n withDelay(60 * (numberOfReactions - (index + 1)), withTiming(0.1, { duration: 50 })),\n withTiming(1.5, { duration: 250 }),\n withTiming(1, { duration: 250 }),\n );\n }\n },\n [index, numberOfReactions],\n );\n\n const iconStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n scale: animationScale.value,\n },\n {\n scale: scale.value,\n },\n ],\n }),\n [],\n );\n\n const selectedStyle = useAnimatedStyle<ViewStyle>(() => ({\n opacity: selectedOpacity.value,\n }));\n\n return (\n <TapGestureHandler\n hitSlop={{\n bottom:\n Number(reaction.paddingVertical || 0) ||\n Number(reaction.paddingBottom || 0) ||\n styles.reactionList.paddingVertical,\n left:\n (Number(reaction.paddingHorizontal || 0) ||\n Number(reaction.paddingLeft || 0) ||\n styles.notLastReaction.marginRight) / 2,\n right:\n (Number(reaction.paddingHorizontal || 0) ||\n Number(reaction.paddingRight || 0) ||\n styles.notLastReaction.marginRight) / 2,\n top:\n Number(reaction.paddingVertical || 0) ||\n Number(reaction.paddingTop || 0) ||\n styles.reactionList.paddingVertical,\n }}\n maxDurationMs={3000}\n onHandlerStateChange={onTap}\n >\n <Animated.View\n style={[index !== numberOfReactions - 1 ? styles.notLastReaction : {}, reaction, iconStyle]}\n >\n <Icon height={reactionSize} pathFill={grey} width={reactionSize} />\n <Animated.View style={[styles.selectedIcon, selectedStyle]}>\n <Icon height={reactionSize} pathFill={accent_blue} width={reactionSize} />\n </Animated.View>\n </Animated.View>\n </TapGestureHandler>\n );\n};\n\nexport type OverlayReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageOverlayData<StreamChatGenerics>,\n 'alignment' | 'handleReaction' | 'messagesContext'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'supportedReactions'> &\n Pick<OverlayContextValue, 'setOverlay'> & {\n messageLayout: Animated.SharedValue<{\n x: number;\n y: number;\n }>;\n ownReactionTypes: string[];\n showScreen: Animated.SharedValue<number>;\n fill?: FillProps['fill'];\n };\n\nconst OverlayReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill,\n handleReaction,\n messageLayout,\n ownReactionTypes,\n showScreen,\n setOverlay,\n supportedReactions = reactionData,\n } = props;\n\n const {\n theme: {\n colors: { white_snow },\n overlay: {\n padding: screenPadding,\n reactionsList: { radius, reactionList },\n },\n },\n } = useTheme();\n\n const reactionListHeight = useSharedValue(0);\n const reactionBubbleWidth = useSharedValue(0);\n const reactionListLayout = useSharedValue({\n height: 0,\n width: 0,\n });\n\n const { width } = useWindowDimensions();\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => {\n const borderRadius = reactionList.borderRadius || styles.reactionList.borderRadius;\n const insideLeftBound =\n messageLayout.value.x - reactionListLayout.value.width + borderRadius > screenPadding;\n const insideRightBound = messageLayout.value.x + borderRadius < width - screenPadding;\n const left = !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding - reactionListLayout.value.width\n : messageLayout.value.x - reactionListLayout.value.width + borderRadius;\n const top = messageLayout.value.y - reactionListLayout.value.height - radius * 2;\n\n return {\n left,\n top,\n };\n });\n\n const animatedBigCircleProps = useAnimatedProps<CircleProps>(() => ({\n cx: messageLayout.value.x - radius * 3,\n cy: messageLayout.value.y - radius * 3,\n r: radius * 2,\n }));\n\n const animateSmallCircleProps = useAnimatedProps<CircleProps>(() => ({\n cx: messageLayout.value.x - radius,\n cy: messageLayout.value.y,\n r: radius,\n }));\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-reactionListHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [\n alignment === 'left' ? -reactionBubbleWidth.value / 2 : reactionBubbleWidth.value / 2,\n 0,\n ],\n ),\n },\n {\n scale: interpolate(showScreen.value, [0, 0.8, 1], [0, 0, 1]),\n },\n ],\n }),\n [alignment],\n );\n\n const numberOfReactions = supportedReactions.length;\n\n return (\n <View style={StyleSheet.absoluteFill} testID='overlay-reaction-list'>\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n reactionBubbleWidth.value = layout.width;\n }}\n style={showScreenStyle}\n >\n <Svg>\n <AnimatedCircle animatedProps={animatedBigCircleProps} fill={fill || white_snow} />\n <AnimatedCircle animatedProps={animateSmallCircleProps} fill={fill || white_snow} />\n </Svg>\n <Animated.View\n onLayout={({\n nativeEvent: {\n layout: { height, width: layoutWidth },\n },\n }) => {\n reactionListLayout.value = { height, width: layoutWidth };\n reactionListHeight.value = height;\n }}\n style={[\n styles.reactionList,\n { backgroundColor: white_snow },\n animatedStyle,\n reactionList,\n ]}\n >\n {supportedReactions?.map(({ Icon, type }, index) => (\n <ReactionButton<StreamChatGenerics>\n handleReaction={handleReaction}\n Icon={Icon}\n index={index}\n key={`${type}_${index}`}\n numberOfReactions={numberOfReactions}\n ownReactionTypes={ownReactionTypes}\n setOverlay={setOverlay}\n showScreen={showScreen}\n type={type}\n />\n ))}\n </Animated.View>\n </Animated.View>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const { alignment: prevAlignment, ownReactionTypes: prevOwnReactionTypes } = prevProps;\n const { alignment: nextAlignment, ownReactionTypes: nextOwnReactionTypes } = nextProps;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n const ownReactionTypesEqual = prevOwnReactionTypes.length === nextOwnReactionTypes.length;\n if (!ownReactionTypesEqual) return false;\n\n return true;\n};\n\nconst MemoizedOverlayReactionList = React.memo(\n OverlayReactionListWithContext,\n areEqual,\n) as typeof OverlayReactionListWithContext;\n\nexport type OverlayReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Omit<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'setOverlay' | 'supportedReactions'\n> &\n Partial<\n Pick<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'setOverlay' | 'supportedReactions'\n >\n >;\n\n/**\n * OverlayReactionList - A high level component which implements all the logic required for a message overlay reaction list\n */\nexport const OverlayReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: OverlayReactionListProps<StreamChatGenerics>,\n) => {\n const { data } = useMessageOverlayContext<StreamChatGenerics>();\n const { supportedReactions } = useMessagesContext<StreamChatGenerics>();\n const { setOverlay } = useOverlayContext();\n\n return (\n <MemoizedOverlayReactionList\n {...(data || {})}\n {...{ setOverlay, supportedReactions }}\n {...props}\n />\n );\n};\n\nOverlayReactionList.displayName = 'OverlayReactionList{overlay{reactionList}}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSvg","_MessageOverlayContext","_MessagesContext","_OverlayContext","_ThemeContext","_icons","_native","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AnimatedCircle","Animated","createAnimatedComponent","Circle","styles","StyleSheet","create","notLastReaction","marginRight","reactionList","alignItems","borderRadius","flexDirection","justifyContent","paddingHorizontal","paddingVertical","position","selectedIcon","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionButton","props","handleReaction","index","numberOfReactions","ownReactionTypes","setOverlay","showScreen","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","_useTheme$theme$overl","overlay","reactionsList","reaction","reactionSize","selected","includes","animationScale","useSharedValue","hasShown","scale","selectedOpacity","onTap","useAnimatedGestureHandler","onEnd","runOnJS","triggerHaptic","value","withTiming","duration","onFinish","cancelAnimation","onStart","useAnimatedReaction","result","withSequence","withDelay","iconStyle","useAnimatedStyle","transform","selectedStyle","opacity","createElement","TapGestureHandler","hitSlop","bottom","Number","paddingBottom","left","paddingLeft","right","paddingRight","top","paddingTop","maxDurationMs","onHandlerStateChange","__self","__source","fileName","lineNumber","columnNumber","View","style","height","pathFill","width","exports","OverlayReactionListWithContext","alignment","fill","messageLayout","_props$supportedReact","supportedReactions","_useTheme2","_useTheme2$theme","white_snow","_useTheme2$theme$over","screenPadding","padding","_useTheme2$theme$over2","radius","reactionListHeight","reactionBubbleWidth","reactionListLayout","_useWindowDimensions","useWindowDimensions","animatedStyle","insideLeftBound","x","insideRightBound","y","animatedBigCircleProps","useAnimatedProps","cx","cy","r","animateSmallCircleProps","showScreenStyle","translateY","interpolate","translateX","length","absoluteFill","testID","onLayout","_ref","layout","nativeEvent","animatedProps","_ref2","_ref2$nativeEvent$lay","layoutWidth","backgroundColor","map","_ref3","areEqual","prevProps","nextProps","prevAlignment","prevOwnReactionTypes","nextAlignment","nextOwnReactionTypes","alignmentEqual","ownReactionTypesEqual","MemoizedOverlayReactionList","React","memo","OverlayReactionList","_useMessageOverlayCon","useMessageOverlayContext","data","_useMessagesContext","useMessagesContext","_useOverlayContext","useOverlayContext","_extends2","displayName"],"sources":["OverlayReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { TapGestureHandler, TapGestureHandlerStateChangeEvent } from 'react-native-gesture-handler';\nimport Animated, {\n cancelAnimation,\n interpolate,\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedProps,\n useAnimatedReaction,\n useAnimatedStyle,\n useSharedValue,\n withDelay,\n withSequence,\n withTiming,\n} from 'react-native-reanimated';\nimport Svg, { Circle, CircleProps, FillProps } from 'react-native-svg';\n\nimport {\n MessageOverlayData,\n useMessageOverlayContext,\n} from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport {\n OverlayContextValue,\n useOverlayContext,\n} from '../../contexts/overlayContext/OverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n IconProps,\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n WutReaction,\n} from '../../icons';\n\nimport { triggerHaptic } from '../../native';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst AnimatedCircle = Animated.createAnimatedComponent\n ? Animated.createAnimatedComponent(Circle)\n : Circle;\n\nconst styles = StyleSheet.create({\n notLastReaction: {\n marginRight: 16,\n },\n reactionList: {\n alignItems: 'center',\n borderRadius: 24,\n flexDirection: 'row',\n justifyContent: 'center',\n paddingHorizontal: 16,\n paddingVertical: 12,\n position: 'absolute',\n },\n selectedIcon: {\n position: 'absolute',\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\ntype ReactionButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'ownReactionTypes' | 'handleReaction' | 'setOverlay'\n> & {\n Icon: React.FC<IconProps>;\n index: number;\n numberOfReactions: number;\n showScreen: Animated.SharedValue<number>;\n type: string;\n};\n\nexport const ReactionButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionButtonProps<StreamChatGenerics>,\n) => {\n const {\n handleReaction,\n Icon,\n index,\n numberOfReactions,\n ownReactionTypes,\n setOverlay,\n showScreen,\n type,\n } = props;\n const {\n theme: {\n colors: { accent_blue, grey },\n overlay: {\n reactionsList: { reaction, reactionSize },\n },\n },\n } = useTheme();\n const selected = ownReactionTypes.includes(type);\n const animationScale = useSharedValue(0);\n const hasShown = useSharedValue(0);\n const scale = useSharedValue(1);\n const selectedOpacity = useSharedValue(selected ? 1 : 0);\n\n const onTap = useAnimatedGestureHandler<TapGestureHandlerStateChangeEvent>(\n {\n onEnd: () => {\n runOnJS(triggerHaptic)('impactLight');\n selectedOpacity.value = withTiming(selected ? 0 : 1, { duration: 250 }, () => {\n if (handleReaction) {\n runOnJS(handleReaction)(type);\n }\n runOnJS(setOverlay)('none');\n });\n },\n onFinish: () => {\n cancelAnimation(scale);\n scale.value = withTiming(1, { duration: 100 });\n },\n onStart: () => {\n cancelAnimation(scale);\n scale.value = withTiming(1.5, { duration: 100 });\n },\n },\n [handleReaction, selected, setOverlay, type],\n );\n\n useAnimatedReaction(\n () => {\n if (showScreen.value > 0.8 && hasShown.value === 0) {\n return 1;\n }\n return 0;\n },\n (result) => {\n if (hasShown.value === 0 && result !== 0) {\n hasShown.value = 1;\n animationScale.value = withSequence(\n withDelay(60 * (numberOfReactions - (index + 1)), withTiming(0.1, { duration: 50 })),\n withTiming(1.5, { duration: 250 }),\n withTiming(1, { duration: 250 }),\n );\n }\n },\n [index, numberOfReactions],\n );\n\n const iconStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n scale: animationScale.value,\n },\n {\n scale: scale.value,\n },\n ],\n }),\n [],\n );\n\n const selectedStyle = useAnimatedStyle<ViewStyle>(() => ({\n opacity: selectedOpacity.value,\n }));\n\n return (\n <TapGestureHandler\n hitSlop={{\n bottom:\n Number(reaction.paddingVertical || 0) ||\n Number(reaction.paddingBottom || 0) ||\n styles.reactionList.paddingVertical,\n left:\n (Number(reaction.paddingHorizontal || 0) ||\n Number(reaction.paddingLeft || 0) ||\n styles.notLastReaction.marginRight) / 2,\n right:\n (Number(reaction.paddingHorizontal || 0) ||\n Number(reaction.paddingRight || 0) ||\n styles.notLastReaction.marginRight) / 2,\n top:\n Number(reaction.paddingVertical || 0) ||\n Number(reaction.paddingTop || 0) ||\n styles.reactionList.paddingVertical,\n }}\n maxDurationMs={3000}\n onHandlerStateChange={onTap}\n >\n <Animated.View\n style={[index !== numberOfReactions - 1 ? styles.notLastReaction : {}, reaction, iconStyle]}\n >\n <Icon height={reactionSize} pathFill={grey} width={reactionSize} />\n <Animated.View style={[styles.selectedIcon, selectedStyle]}>\n <Icon height={reactionSize} pathFill={accent_blue} width={reactionSize} />\n </Animated.View>\n </Animated.View>\n </TapGestureHandler>\n );\n};\n\nexport type OverlayReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageOverlayData<StreamChatGenerics>,\n 'alignment' | 'handleReaction' | 'messagesContext'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'supportedReactions'> &\n Pick<OverlayContextValue, 'setOverlay'> & {\n messageLayout: Animated.SharedValue<{\n x: number;\n y: number;\n }>;\n ownReactionTypes: string[];\n showScreen: Animated.SharedValue<number>;\n fill?: FillProps['fill'];\n };\n\nconst OverlayReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill,\n handleReaction,\n messageLayout,\n ownReactionTypes,\n showScreen,\n setOverlay,\n supportedReactions = reactionData,\n } = props;\n\n const {\n theme: {\n colors: { white_snow },\n overlay: {\n padding: screenPadding,\n reactionsList: { radius, reactionList },\n },\n },\n } = useTheme();\n\n const reactionListHeight = useSharedValue(0);\n const reactionBubbleWidth = useSharedValue(0);\n const reactionListLayout = useSharedValue({\n height: 0,\n width: 0,\n });\n\n const { width } = useWindowDimensions();\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => {\n const borderRadius = reactionList.borderRadius || styles.reactionList.borderRadius;\n const insideLeftBound =\n messageLayout.value.x - reactionListLayout.value.width + borderRadius > screenPadding;\n const insideRightBound = messageLayout.value.x + borderRadius < width - screenPadding;\n const left = !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding - reactionListLayout.value.width\n : messageLayout.value.x - reactionListLayout.value.width + borderRadius;\n const top = messageLayout.value.y - reactionListLayout.value.height - radius * 2;\n\n return {\n left,\n top,\n };\n });\n\n const animatedBigCircleProps = useAnimatedProps<CircleProps>(() => ({\n cx: messageLayout.value.x - radius * 3,\n cy: messageLayout.value.y - radius * 3,\n r: radius * 2,\n }));\n\n const animateSmallCircleProps = useAnimatedProps<CircleProps>(() => ({\n cx: messageLayout.value.x - radius,\n cy: messageLayout.value.y,\n r: radius,\n }));\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-reactionListHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [\n alignment === 'left' ? -reactionBubbleWidth.value / 2 : reactionBubbleWidth.value / 2,\n 0,\n ],\n ),\n },\n {\n scale: interpolate(showScreen.value, [0, 0.8, 1], [0, 0, 1]),\n },\n ],\n }),\n [alignment],\n );\n\n const numberOfReactions = supportedReactions.length;\n\n return (\n <View style={StyleSheet.absoluteFill} testID='overlay-reaction-list'>\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n reactionBubbleWidth.value = layout.width;\n }}\n style={showScreenStyle}\n >\n <Svg>\n <AnimatedCircle animatedProps={animatedBigCircleProps} fill={fill || white_snow} />\n <AnimatedCircle animatedProps={animateSmallCircleProps} fill={fill || white_snow} />\n </Svg>\n <Animated.View\n onLayout={({\n nativeEvent: {\n layout: { height, width: layoutWidth },\n },\n }) => {\n reactionListLayout.value = { height, width: layoutWidth };\n reactionListHeight.value = height;\n }}\n style={[\n styles.reactionList,\n { backgroundColor: white_snow },\n animatedStyle,\n reactionList,\n ]}\n >\n {supportedReactions?.map(({ Icon, type }, index) => (\n <ReactionButton<StreamChatGenerics>\n handleReaction={handleReaction}\n Icon={Icon}\n index={index}\n key={`${type}_${index}`}\n numberOfReactions={numberOfReactions}\n ownReactionTypes={ownReactionTypes}\n setOverlay={setOverlay}\n showScreen={showScreen}\n type={type}\n />\n ))}\n </Animated.View>\n </Animated.View>\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: OverlayReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const { alignment: prevAlignment, ownReactionTypes: prevOwnReactionTypes } = prevProps;\n const { alignment: nextAlignment, ownReactionTypes: nextOwnReactionTypes } = nextProps;\n\n const alignmentEqual = prevAlignment === nextAlignment;\n if (!alignmentEqual) return false;\n\n const ownReactionTypesEqual = prevOwnReactionTypes.length === nextOwnReactionTypes.length;\n if (!ownReactionTypesEqual) return false;\n\n return true;\n};\n\nconst MemoizedOverlayReactionList = React.memo(\n OverlayReactionListWithContext,\n areEqual,\n) as typeof OverlayReactionListWithContext;\n\nexport type OverlayReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Omit<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'setOverlay' | 'supportedReactions'\n> &\n Partial<\n Pick<\n OverlayReactionListPropsWithContext<StreamChatGenerics>,\n 'setOverlay' | 'supportedReactions'\n >\n >;\n\n/**\n * OverlayReactionList - A high level component which implements all the logic required for a message overlay reaction list\n */\nexport const OverlayReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: OverlayReactionListProps<StreamChatGenerics>,\n) => {\n const { data } = useMessageOverlayContext<StreamChatGenerics>();\n const { supportedReactions } = useMessagesContext<StreamChatGenerics>();\n const { setOverlay } = useOverlayContext();\n\n return (\n <MemoizedOverlayReactionList\n {...(data || {})}\n {...{ setOverlay, supportedReactions }}\n {...props}\n />\n );\n};\n\nOverlayReactionList.displayName = 'OverlayReactionList{overlay{reactionList}}';\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSvg","_ThemeContext","_icons","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","avatarContainer","padding","avatarInnerContainer","alignSelf","avatarName","flex","fontSize","fontWeight","paddingTop","textAlign","avatarNameContainer","alignItems","flexDirection","flexGrow","container","borderRadius","marginTop","width","flatListContainer","paddingHorizontal","paddingVertical","flatListContentContainer","paddingBottom","reactionBubble","justifyContent","position","reactionBubbleBackground","height","title","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionIcon","_ref","_supportedReactions$f","pathFill","size","supportedReactions","find","reaction","Unknown","createElement","__self","__source","fileName","lineNumber","columnNumber","OverlayReactions","props","overlayAlignment","alignment","reactions","_props$supportedReact","showScreen","OverlayReactionsAvatar","layoutHeight","useSharedValue","layoutWidth","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","grey_gainsboro","white","_useTheme$theme$overl","overlay","overlayPadding","_useTheme$theme$overl2","avatarSize","radius","titleStyle","useWindowDimensions","supportedReactionTypes","map","supportedReaction","filteredReactions","filter","includes","numColumns","Math","floor","Number","maxHeight","renderItem","_ref2","item","_item$alignment","name","x","y","left","top","View","style","absoluteFill","Circle","cx","cy","fill","r","stroke","strokeWidth","backgroundColor","borderColor","borderWidth","Text","color","showScreenStyle","useAnimatedStyle","transform","translateY","interpolate","value","translateX","scale","onLayout","_ref3","layout","nativeEvent","FlatList","contentContainerStyle","data","keyExtractor","_ref4","index","exports","displayName"],"sources":["OverlayReactions.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\nimport Svg, { Circle } from 'react-native-svg';\n\nimport type { Alignment } from '../../contexts/messageContext/MessageContext';\nimport type { MessageOverlayContextValue } from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n Unknown,\n WutReaction,\n} from '../../icons';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n padding: 8,\n },\n avatarInnerContainer: {\n alignSelf: 'center',\n },\n avatarName: {\n flex: 1,\n fontSize: 12,\n fontWeight: '700',\n paddingTop: 6,\n textAlign: 'center',\n },\n avatarNameContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n flexGrow: 1,\n },\n container: {\n alignItems: 'center',\n borderRadius: 16,\n marginTop: 8,\n width: '100%',\n },\n flatListContainer: {\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n flatListContentContainer: {\n alignItems: 'center',\n paddingBottom: 12,\n },\n reactionBubble: {\n alignItems: 'center',\n borderRadius: 24,\n justifyContent: 'center',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n width: 24,\n },\n title: {\n fontSize: 16,\n fontWeight: '700',\n paddingTop: 16,\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\nexport type Reaction = {\n alignment: Alignment;\n id: string;\n name: string;\n type: string;\n image?: string;\n};\n\nexport type OverlayReactionsProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageOverlayContextValue<StreamChatGenerics>, 'OverlayReactionsAvatar'> & {\n reactions: Reaction[];\n showScreen: Animated.SharedValue<number>;\n title: string;\n alignment?: Alignment;\n supportedReactions?: ReactionData[];\n};\n\nconst ReactionIcon: React.FC<\n Pick<Reaction, 'type'> & {\n pathFill: string;\n size: number;\n supportedReactions: ReactionData[];\n }\n> = ({ pathFill, size, supportedReactions, type }) => {\n const Icon = supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n return <Icon height={size} pathFill={pathFill} width={size} />;\n};\n\n/**\n * OverlayReactions - A high level component which implements all the logic required for message overlay reactions\n */\nexport const OverlayReactions: React.FC<OverlayReactionsProps> = (props) => {\n const {\n alignment: overlayAlignment,\n reactions,\n supportedReactions = reactionData,\n showScreen,\n title,\n OverlayReactionsAvatar,\n } = props;\n const layoutHeight = useSharedValue(0);\n const layoutWidth = useSharedValue(0);\n\n const {\n theme: {\n colors: { accent_blue, black, grey_gainsboro, white },\n overlay: {\n padding: overlayPadding,\n reactions: {\n avatarContainer,\n avatarName,\n avatarSize,\n container,\n flatListContainer,\n radius,\n reactionBubble,\n reactionBubbleBackground,\n title: titleStyle,\n },\n },\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n const height = useWindowDimensions().height;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n\n const filteredReactions = reactions.filter((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n const numColumns = Math.floor(\n (width -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingHorizontal || 0) ||\n styles.flatListContainer.paddingHorizontal) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2) /\n (avatarSize + (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding) * 2),\n );\n\n const maxHeight = Math.floor(\n height -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingVertical || 0) ||\n styles.flatListContainer.paddingVertical) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2,\n );\n\n const renderItem = ({ item }: { item: Reaction }) => {\n const { alignment = 'left', name, type } = item;\n const x = avatarSize / 2 - (avatarSize / (radius * 4)) * (alignment === 'left' ? 1 : -1);\n const y = avatarSize - radius;\n\n const left =\n alignment === 'left'\n ? x -\n (Number(reactionBubbleBackground.width || 0) || styles.reactionBubbleBackground.width) +\n radius\n : x - radius;\n const top =\n y -\n radius -\n (Number(reactionBubbleBackground.height || 0) || styles.reactionBubbleBackground.height);\n\n return (\n <View style={[styles.avatarContainer, avatarContainer]}>\n <View style={styles.avatarInnerContainer}>\n <OverlayReactionsAvatar reaction={item} size={avatarSize} />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n <Circle\n cx={x}\n cy={y}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n borderColor: alignment === 'left' ? white : grey_gainsboro,\n borderWidth: radius / 2,\n left,\n top,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2 - radius / 2}\n />\n </Svg>\n </View>\n <View\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n height:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n left,\n top,\n width:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n },\n reactionBubble,\n ]}\n >\n <ReactionIcon\n pathFill={accent_blue}\n size={(reactionBubble.borderRadius || styles.reactionBubble.borderRadius) / 2}\n supportedReactions={supportedReactions}\n type={type}\n />\n </View>\n </View>\n </View>\n <View style={styles.avatarNameContainer}>\n <Text style={[styles.avatarName, { color: black }, avatarName]}>{name}</Text>\n </View>\n </View>\n );\n };\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-layoutHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [overlayAlignment === 'left' ? -layoutWidth.value / 2 : layoutWidth.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [overlayAlignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n layoutWidth.value = layout.width;\n layoutHeight.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white }, container, showScreenStyle]}\n >\n <Text style={[styles.title, { color: black }, titleStyle]}>{title}</Text>\n <FlatList\n contentContainerStyle={styles.flatListContentContainer}\n data={filteredReactions}\n keyExtractor={({ name }, index) => `${name}_${index}`}\n numColumns={numColumns}\n renderItem={renderItem}\n style={[styles.flatListContainer, flatListContainer, { maxHeight: maxHeight / numColumns }]}\n />\n </Animated.View>\n );\n};\n\nOverlayReactions.displayName = 'OverlayReactions{overlay{reactions}}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSvg","_ThemeContext","_icons","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","avatarContainer","padding","avatarInnerContainer","alignSelf","avatarName","flex","fontSize","fontWeight","paddingTop","textAlign","avatarNameContainer","alignItems","flexDirection","flexGrow","container","borderRadius","marginTop","width","flatListContainer","paddingHorizontal","paddingVertical","flatListContentContainer","paddingBottom","reactionBubble","justifyContent","position","reactionBubbleBackground","height","title","reactionData","Icon","LoveReaction","type","ThumbsUpReaction","ThumbsDownReaction","LOLReaction","WutReaction","ReactionIcon","_ref","_supportedReactions$f","pathFill","size","supportedReactions","find","reaction","Unknown","createElement","__self","__source","fileName","lineNumber","columnNumber","OverlayReactions","props","overlayAlignment","alignment","reactions","_props$supportedReact","showScreen","OverlayReactionsAvatar","layoutHeight","useSharedValue","layoutWidth","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","grey_gainsboro","white","_useTheme$theme$overl","overlay","overlayPadding","_useTheme$theme$overl2","avatarSize","radius","titleStyle","useWindowDimensions","supportedReactionTypes","map","supportedReaction","filteredReactions","filter","includes","numColumns","Math","floor","Number","maxHeight","renderItem","_ref2","item","_item$alignment","name","x","y","left","top","View","style","absoluteFill","Circle","cx","cy","fill","r","stroke","strokeWidth","backgroundColor","borderColor","borderWidth","Text","color","showScreenStyle","useAnimatedStyle","transform","translateY","interpolate","value","translateX","scale","onLayout","_ref3","layout","nativeEvent","FlatList","contentContainerStyle","data","keyExtractor","_ref4","index","exports","displayName"],"sources":["OverlayReactions.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, useWindowDimensions, View, ViewStyle } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport Animated, { interpolate, useAnimatedStyle, useSharedValue } from 'react-native-reanimated';\nimport Svg, { Circle } from 'react-native-svg';\n\nimport type { Alignment } from '../../contexts/messageContext/MessageContext';\nimport type { MessageOverlayContextValue } from '../../contexts/messageOverlayContext/MessageOverlayContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n LOLReaction,\n LoveReaction,\n ThumbsDownReaction,\n ThumbsUpReaction,\n Unknown,\n WutReaction,\n} from '../../icons';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport type { ReactionData } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n avatarContainer: {\n padding: 8,\n },\n avatarInnerContainer: {\n alignSelf: 'center',\n },\n avatarName: {\n flex: 1,\n fontSize: 12,\n fontWeight: '700',\n paddingTop: 6,\n textAlign: 'center',\n },\n avatarNameContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n flexGrow: 1,\n },\n container: {\n alignItems: 'center',\n borderRadius: 16,\n marginTop: 8,\n width: '100%',\n },\n flatListContainer: {\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n flatListContentContainer: {\n alignItems: 'center',\n paddingBottom: 12,\n },\n reactionBubble: {\n alignItems: 'center',\n borderRadius: 24,\n justifyContent: 'center',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n width: 24,\n },\n title: {\n fontSize: 16,\n fontWeight: '700',\n paddingTop: 16,\n },\n});\n\nconst reactionData: ReactionData[] = [\n {\n Icon: LoveReaction,\n type: 'love',\n },\n {\n Icon: ThumbsUpReaction,\n type: 'like',\n },\n {\n Icon: ThumbsDownReaction,\n type: 'sad',\n },\n {\n Icon: LOLReaction,\n type: 'haha',\n },\n {\n Icon: WutReaction,\n type: 'wow',\n },\n];\n\nexport type Reaction = {\n alignment: Alignment;\n id: string;\n name: string;\n type: string;\n image?: string;\n};\n\nexport type OverlayReactionsProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageOverlayContextValue<StreamChatGenerics>, 'OverlayReactionsAvatar'> & {\n reactions: Reaction[];\n showScreen: Animated.SharedValue<number>;\n title: string;\n alignment?: Alignment;\n supportedReactions?: ReactionData[];\n};\n\nconst ReactionIcon: React.FC<\n Pick<Reaction, 'type'> & {\n pathFill: string;\n size: number;\n supportedReactions: ReactionData[];\n }\n> = ({ pathFill, size, supportedReactions, type }) => {\n const Icon = supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n return <Icon height={size} pathFill={pathFill} width={size} />;\n};\n\n/**\n * OverlayReactions - A high level component which implements all the logic required for message overlay reactions\n */\nexport const OverlayReactions: React.FC<OverlayReactionsProps> = (props) => {\n const {\n alignment: overlayAlignment,\n reactions,\n supportedReactions = reactionData,\n showScreen,\n title,\n OverlayReactionsAvatar,\n } = props;\n const layoutHeight = useSharedValue(0);\n const layoutWidth = useSharedValue(0);\n\n const {\n theme: {\n colors: { accent_blue, black, grey_gainsboro, white },\n overlay: {\n padding: overlayPadding,\n reactions: {\n avatarContainer,\n avatarName,\n avatarSize,\n container,\n flatListContainer,\n radius,\n reactionBubble,\n reactionBubbleBackground,\n title: titleStyle,\n },\n },\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n const height = useWindowDimensions().height;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n\n const filteredReactions = reactions.filter((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n const numColumns = Math.floor(\n (width -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingHorizontal || 0) ||\n styles.flatListContainer.paddingHorizontal) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2) /\n (avatarSize + (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding) * 2),\n );\n\n const maxHeight = Math.floor(\n height -\n overlayPadding * 2 -\n ((Number(flatListContainer.paddingVertical || 0) ||\n styles.flatListContainer.paddingVertical) +\n (Number(avatarContainer.padding || 0) || styles.avatarContainer.padding)) *\n 2,\n );\n\n const renderItem = ({ item }: { item: Reaction }) => {\n const { alignment = 'left', name, type } = item;\n const x = avatarSize / 2 - (avatarSize / (radius * 4)) * (alignment === 'left' ? 1 : -1);\n const y = avatarSize - radius;\n\n const left =\n alignment === 'left'\n ? x -\n (Number(reactionBubbleBackground.width || 0) || styles.reactionBubbleBackground.width) +\n radius\n : x - radius;\n const top =\n y -\n radius -\n (Number(reactionBubbleBackground.height || 0) || styles.reactionBubbleBackground.height);\n\n return (\n <View style={[styles.avatarContainer, avatarContainer]}>\n <View style={styles.avatarInnerContainer}>\n <OverlayReactionsAvatar reaction={item} size={avatarSize} />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n <Circle\n cx={x}\n cy={y}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius}\n stroke={alignment === 'left' ? white : grey_gainsboro}\n strokeWidth={radius / 2}\n />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n borderColor: alignment === 'left' ? white : grey_gainsboro,\n borderWidth: radius / 2,\n left,\n top,\n },\n reactionBubbleBackground,\n ]}\n />\n <View style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle\n cx={x - (radius * 2 - radius / 4) * (alignment === 'left' ? 1 : -1)}\n cy={y - radius * 2 - radius / 4}\n fill={alignment === 'left' ? grey_gainsboro : white}\n r={radius * 2 - radius / 2}\n />\n </Svg>\n </View>\n <View\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignment === 'left' ? grey_gainsboro : white,\n height:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n left,\n top,\n width:\n (reactionBubble.borderRadius || styles.reactionBubble.borderRadius) -\n radius / 2,\n },\n reactionBubble,\n ]}\n >\n <ReactionIcon\n pathFill={accent_blue}\n size={(reactionBubble.borderRadius || styles.reactionBubble.borderRadius) / 2}\n supportedReactions={supportedReactions}\n type={type}\n />\n </View>\n </View>\n </View>\n <View style={styles.avatarNameContainer}>\n <Text style={[styles.avatarName, { color: black }, avatarName]}>{name}</Text>\n </View>\n </View>\n );\n };\n\n const showScreenStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n transform: [\n {\n translateY: interpolate(showScreen.value, [0, 1], [-layoutHeight.value / 2, 0]),\n },\n {\n translateX: interpolate(\n showScreen.value,\n [0, 1],\n [overlayAlignment === 'left' ? -layoutWidth.value / 2 : layoutWidth.value / 2, 0],\n ),\n },\n {\n scale: showScreen.value,\n },\n ],\n }),\n [overlayAlignment],\n );\n\n return (\n <Animated.View\n onLayout={({ nativeEvent: { layout } }) => {\n layoutWidth.value = layout.width;\n layoutHeight.value = layout.height;\n }}\n style={[styles.container, { backgroundColor: white }, container, showScreenStyle]}\n >\n <Text style={[styles.title, { color: black }, titleStyle]}>{title}</Text>\n <FlatList\n contentContainerStyle={styles.flatListContentContainer}\n data={filteredReactions}\n keyExtractor={({ name }, index) => `${name}_${index}`}\n numColumns={numColumns}\n renderItem={renderItem}\n style={[styles.flatListContainer, flatListContainer, { maxHeight: maxHeight / numColumns }]}\n />\n </Animated.View>\n );\n};\n\nOverlayReactions.displayName = 'OverlayReactions{overlay{reactions}}';\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_Avatar","_this","_jsxFileName","OverlayReactionsAvatar","props","_props$reaction","reaction","image","name","size","_useTheme","useTheme","BASE_AVATAR_SIZE","theme","avatar","createElement","Avatar","__self","__source","fileName","lineNumber","columnNumber","exports","displayName"],"sources":["OverlayReactionsAvatar.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { Reaction } from './OverlayReactions';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Avatar, AvatarProps } from '../Avatar/Avatar';\n\nexport type OverlayReactionsAvatarProps = {\n reaction: Reaction;\n} & Partial<Pick<AvatarProps, 'size'>>;\n\nexport const OverlayReactionsAvatar: React.FC<OverlayReactionsAvatarProps> = (props) => {\n const {\n reaction: { image, name },\n size,\n } = props;\n\n const {\n theme: {\n avatar: { BASE_AVATAR_SIZE },\n },\n } = useTheme();\n\n return <Avatar image={image} name={name} size={size || BASE_AVATAR_SIZE} />;\n};\n\nOverlayReactionsAvatar.displayName = 'OverlayReactionsAvatar{overlay{reactionsAvatar}}';\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAuD,IAAAG,KAAA;EAAAC,YAAA;AAMhD,IAAMC,sBAA6D,GAAG,SAAhEA,sBAA6DA,CAAIC,KAAK,EAAK;EACtF,IAAAC,eAAA,GAGID,KAAK,CAFPE,QAAQ;IAAIC,KAAK,GAAAF,eAAA,CAALE,KAAK;IAAEC,IAAI,GAAAH,eAAA,CAAJG,IAAI;IACvBC,IAAI,GACFL,KAAK,CADPK,IAAI;EAGN,IAAAC,SAAA,GAII,IAAAC,sBAAQ,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_Avatar","_this","_jsxFileName","OverlayReactionsAvatar","props","_props$reaction","reaction","image","name","size","_useTheme","useTheme","BASE_AVATAR_SIZE","theme","avatar","createElement","Avatar","__self","__source","fileName","lineNumber","columnNumber","exports","displayName"],"sources":["OverlayReactionsAvatar.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { Reaction } from './OverlayReactions';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Avatar, AvatarProps } from '../Avatar/Avatar';\n\nexport type OverlayReactionsAvatarProps = {\n reaction: Reaction;\n} & Partial<Pick<AvatarProps, 'size'>>;\n\nexport const OverlayReactionsAvatar: React.FC<OverlayReactionsAvatarProps> = (props) => {\n const {\n reaction: { image, name },\n size,\n } = props;\n\n const {\n theme: {\n avatar: { BASE_AVATAR_SIZE },\n },\n } = useTheme();\n\n return <Avatar image={image} name={name} size={size || BASE_AVATAR_SIZE} />;\n};\n\nOverlayReactionsAvatar.displayName = 'OverlayReactionsAvatar{overlay{reactionsAvatar}}';\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAAuD,IAAAG,KAAA;EAAAC,YAAA;AAMhD,IAAMC,sBAA6D,GAAG,SAAhEA,sBAA6DA,CAAIC,KAAK,EAAK;EACtF,IAAAC,eAAA,GAGID,KAAK,CAFPE,QAAQ;IAAIC,KAAK,GAAAF,eAAA,CAALE,KAAK;IAAEC,IAAI,GAAAH,eAAA,CAAJG,IAAI;IACvBC,IAAI,GACFL,KAAK,CADPK,IAAI;EAGN,IAAAC,SAAA,GAII,IAAAC,sBAAQ,EAAC,CAAC;IAFAC,gBAAgB,GAAAF,SAAA,CAD5BG,KAAK,CACHC,MAAM,CAAIF,gBAAgB;EAI9B,OAAOhB,MAAA,YAAAmB,aAAA,CAACf,OAAA,CAAAgB,MAAM;IAACT,KAAK,EAAEA,KAAM;IAACC,IAAI,EAAEA,IAAK;IAACC,IAAI,EAAEA,IAAI,IAAIG,gBAAiB;IAAAK,MAAA,EAAAhB,KAAA;IAAAiB,QAAA;MAAAC,QAAA,EAAAjB,YAAA;MAAAkB,UAAA;MAAAC,YAAA;IAAA;EAAA,CAAE,CAAC;AAC7E,CAAC;AAACC,OAAA,CAAAnB,sBAAA,GAAAA,sBAAA;AAEFA,sBAAsB,CAACoB,WAAW,GAAG,kDAAkD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeReanimated","require","useMessageActionAnimation","_ref","action","_ref$activeOpacity","activeOpacity","opacity","useSharedValue","onTap","useAnimatedGestureHandler","onEnd","runOnJS","onFinish","value","onStart","animatedStyle","useAnimatedStyle","exports"],"sources":["useMessageActionAnimation.tsx"],"sourcesContent":["import type { ViewStyle } from 'react-native';\nimport type { TapGestureHandlerStateChangeEvent } from 'react-native-gesture-handler';\nimport {\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedStyle,\n useSharedValue,\n} from 'react-native-reanimated';\n\nimport type { MessageActionListItemProps } from '../MessageActionListItem';\n\nexport const useMessageActionAnimation = ({\n action,\n activeOpacity = 0.2,\n}: Pick<MessageActionListItemProps, 'action'> & {\n activeOpacity?: number;\n}) => {\n const opacity = useSharedValue(1);\n\n const onTap = useAnimatedGestureHandler<TapGestureHandlerStateChangeEvent>(\n {\n onEnd: () => {\n runOnJS(action)();\n },\n onFinish: () => {\n opacity.value = 1;\n },\n onStart: () => {\n opacity.value = activeOpacity;\n },\n },\n [action],\n );\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => ({\n opacity: opacity.value,\n }));\n\n return {\n animatedStyle,\n onTap,\n opacity,\n };\n};\n"],"mappings":";;;;AAEA,IAAAA,sBAAA,GAAAC,OAAA;AASO,IAAMC,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAAC,IAAA,EAKhC;EAAA,IAJJC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAAC,kBAAA,GAAAF,IAAA,CACNG,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,GAAG,GAAAA,kBAAA;EAInB,IAAME,OAAO,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAEjC,IAAMC,KAAK,GAAG,IAAAC,gDAAyB,EACrC;IACEC,KAAK,EAAE,SAAAA,MAAA,EAAM;MACX,IAAAC,8BAAO,EAACR,MAAM,CAAC,
|
|
1
|
+
{"version":3,"names":["_reactNativeReanimated","require","useMessageActionAnimation","_ref","action","_ref$activeOpacity","activeOpacity","opacity","useSharedValue","onTap","useAnimatedGestureHandler","onEnd","runOnJS","onFinish","value","onStart","animatedStyle","useAnimatedStyle","exports"],"sources":["useMessageActionAnimation.tsx"],"sourcesContent":["import type { ViewStyle } from 'react-native';\nimport type { TapGestureHandlerStateChangeEvent } from 'react-native-gesture-handler';\nimport {\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedStyle,\n useSharedValue,\n} from 'react-native-reanimated';\n\nimport type { MessageActionListItemProps } from '../MessageActionListItem';\n\nexport const useMessageActionAnimation = ({\n action,\n activeOpacity = 0.2,\n}: Pick<MessageActionListItemProps, 'action'> & {\n activeOpacity?: number;\n}) => {\n const opacity = useSharedValue(1);\n\n const onTap = useAnimatedGestureHandler<TapGestureHandlerStateChangeEvent>(\n {\n onEnd: () => {\n runOnJS(action)();\n },\n onFinish: () => {\n opacity.value = 1;\n },\n onStart: () => {\n opacity.value = activeOpacity;\n },\n },\n [action],\n );\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => ({\n opacity: opacity.value,\n }));\n\n return {\n animatedStyle,\n onTap,\n opacity,\n };\n};\n"],"mappings":";;;;AAEA,IAAAA,sBAAA,GAAAC,OAAA;AASO,IAAMC,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAAC,IAAA,EAKhC;EAAA,IAJJC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAAC,kBAAA,GAAAF,IAAA,CACNG,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,GAAG,GAAAA,kBAAA;EAInB,IAAME,OAAO,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAEjC,IAAMC,KAAK,GAAG,IAAAC,gDAAyB,EACrC;IACEC,KAAK,EAAE,SAAAA,MAAA,EAAM;MACX,IAAAC,8BAAO,EAACR,MAAM,CAAC,CAAC,CAAC;IACnB,CAAC;IACDS,QAAQ,EAAE,SAAAA,SAAA,EAAM;MACdN,OAAO,CAACO,KAAK,GAAG,CAAC;IACnB,CAAC;IACDC,OAAO,EAAE,SAAAA,QAAA,EAAM;MACbR,OAAO,CAACO,KAAK,GAAGR,aAAa;IAC/B;EACF,CAAC,EACD,CAACF,MAAM,CACT,CAAC;EAED,IAAMY,aAAa,GAAG,IAAAC,uCAAgB,EAAY;IAAA,OAAO;MACvDV,OAAO,EAAEA,OAAO,CAACO;IACnB,CAAC;EAAA,CAAC,CAAC;EAEH,OAAO;IACLE,aAAa,EAAbA,aAAa;IACbP,KAAK,EAALA,KAAK;IACLF,OAAO,EAAPA;EACF,CAAC;AACH,CAAC;AAACW,OAAA,CAAAhB,yBAAA,GAAAA,yBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_ThemeContext","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","height","styles","StyleSheet","create","containerStyle","borderRadius","innerStyle","progressControlThumbStyle","elevation","shadowOffset","width","shadowOpacity","shadowRadius","top","ProgressControlThumb","_useTheme","useTheme","black","theme","colors","createElement","View","style","backgroundColor","shadowColor","__self","__source","fileName","lineNumber","columnNumber","ProgressControl","React","memo","props","duration","filledColor","onPlayPause","onProgressDrag","progress","testID","_useTheme2","grey_dark","state","useSharedValue","translateX","useEffect","value","animatedStyles","useAnimatedStyle","thumbStyles","transform","onGestureEvent","useAnimatedGestureHandler","onActive","event","translationX","onFinish","dragFinishLocationInSeconds","runOnJS","onStart","cancelAnimation","PanGestureHandler","maxPointers","undefined","prevProps","nextProps","exports"],"sources":["ProgressControl.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { StyleSheet, View } from 'react-native';\nimport { PanGestureHandler } from 'react-native-gesture-handler';\nimport Animated, {\n cancelAnimation,\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedStyle,\n useSharedValue,\n} from 'react-native-reanimated';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nexport type ProgressControlProps = {\n duration: number;\n filledColor: string;\n onPlayPause: (status?: boolean) => void;\n progress: number;\n testID: string;\n width: number;\n onProgressDrag?: (progress: number) => void;\n};\n\nconst height = 2;\nconst styles = StyleSheet.create({\n containerStyle: {\n borderRadius: 50,\n height,\n },\n innerStyle: {\n height,\n },\n progressControlThumbStyle: {\n borderRadius: 5,\n elevation: 6,\n height: 20,\n shadowOffset: {\n height: 3,\n width: 0,\n },\n shadowOpacity: 0.27,\n shadowRadius: 4.65,\n top: -11,\n width: 5,\n },\n});\n\nconst ProgressControlThumb = () => {\n const {\n theme: {\n colors: { black },\n },\n } = useTheme();\n return (\n <View\n style={[styles.progressControlThumbStyle, { backgroundColor: '#ffffff', shadowColor: black }]}\n />\n );\n};\n\nexport const ProgressControl: React.FC<ProgressControlProps> = React.memo(\n (props) => {\n const { duration, filledColor, onPlayPause, onProgressDrag, progress, testID, width } = props;\n const {\n theme: {\n colors: { grey_dark },\n },\n } = useTheme();\n\n const state = useSharedValue(0);\n const translateX = useSharedValue(0);\n\n useEffect(() => {\n state.value = progress * width;\n translateX.value = progress * width;\n }, [progress]);\n\n const animatedStyles = useAnimatedStyle(() => ({\n backgroundColor: filledColor,\n width: state.value,\n }));\n\n const thumbStyles = useAnimatedStyle(() => ({\n transform: [{ translateX: state.value }],\n }));\n\n const onGestureEvent = useAnimatedGestureHandler(\n {\n onActive: (event) => {\n state.value = translateX.value + event.translationX;\n if (state.value > width) state.value = width;\n else if (state.value < 0) state.value = 0;\n },\n onFinish: () => {\n translateX.value = state.value;\n const dragFinishLocationInSeconds = (state.value / width) * duration;\n if (onProgressDrag) runOnJS(onProgressDrag)(dragFinishLocationInSeconds);\n runOnJS(onPlayPause)(false);\n },\n onStart: () => {\n runOnJS(onPlayPause)(true);\n cancelAnimation(translateX);\n state.value = translateX.value;\n },\n },\n [duration],\n );\n return (\n <View style={[styles.containerStyle, { backgroundColor: grey_dark, width }]}>\n <Animated.View style={[styles.innerStyle, animatedStyles]} />\n\n <PanGestureHandler\n maxPointers={1}\n onGestureEvent={onProgressDrag ? onGestureEvent : undefined}\n testID={testID}\n >\n <Animated.View style={[thumbStyles]}>\n {onProgressDrag && <ProgressControlThumb />}\n </Animated.View>\n </PanGestureHandler>\n </View>\n );\n },\n (prevProps, nextProps) => {\n if (prevProps.duration === nextProps.duration && prevProps.progress === nextProps.progress)\n return true;\n else return false;\n },\n);\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,0BAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAJ,uBAAA,CAAAC,OAAA;AAQA,IAAAI,aAAA,GAAAJ,OAAA;AAAoE,IAAAK,KAAA;EAAAC,YAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAa,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAYpE,IAAMW,MAAM,GAAG,CAAC;AAChB,IAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,cAAc,EAAE;IACdC,YAAY,EAAE,EAAE;IAChBL,MAAM,EAANA;EACF,CAAC;EACDM,UAAU,EAAE;IACVN,MAAM,EAANA;EACF,CAAC;EACDO,yBAAyB,EAAE;IACzBF,YAAY,EAAE,CAAC;IACfG,SAAS,EAAE,CAAC;IACZR,MAAM,EAAE,EAAE;IACVS,YAAY,EAAE;MACZT,MAAM,EAAE,CAAC;MACTU,KAAK,EAAE;IACT,CAAC;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,IAAI;IAClBC,GAAG,EAAE,CAAC,EAAE;IACRH,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAEF,IAAMI,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA,EAAS;EACjC,IAAAC,SAAA,GAII,IAAAC,sBAAQ,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_ThemeContext","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","height","styles","StyleSheet","create","containerStyle","borderRadius","innerStyle","progressControlThumbStyle","elevation","shadowOffset","width","shadowOpacity","shadowRadius","top","ProgressControlThumb","_useTheme","useTheme","black","theme","colors","createElement","View","style","backgroundColor","shadowColor","__self","__source","fileName","lineNumber","columnNumber","ProgressControl","React","memo","props","duration","filledColor","onPlayPause","onProgressDrag","progress","testID","_useTheme2","grey_dark","state","useSharedValue","translateX","useEffect","value","animatedStyles","useAnimatedStyle","thumbStyles","transform","onGestureEvent","useAnimatedGestureHandler","onActive","event","translationX","onFinish","dragFinishLocationInSeconds","runOnJS","onStart","cancelAnimation","PanGestureHandler","maxPointers","undefined","prevProps","nextProps","exports"],"sources":["ProgressControl.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { StyleSheet, View } from 'react-native';\nimport { PanGestureHandler } from 'react-native-gesture-handler';\nimport Animated, {\n cancelAnimation,\n runOnJS,\n useAnimatedGestureHandler,\n useAnimatedStyle,\n useSharedValue,\n} from 'react-native-reanimated';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nexport type ProgressControlProps = {\n duration: number;\n filledColor: string;\n onPlayPause: (status?: boolean) => void;\n progress: number;\n testID: string;\n width: number;\n onProgressDrag?: (progress: number) => void;\n};\n\nconst height = 2;\nconst styles = StyleSheet.create({\n containerStyle: {\n borderRadius: 50,\n height,\n },\n innerStyle: {\n height,\n },\n progressControlThumbStyle: {\n borderRadius: 5,\n elevation: 6,\n height: 20,\n shadowOffset: {\n height: 3,\n width: 0,\n },\n shadowOpacity: 0.27,\n shadowRadius: 4.65,\n top: -11,\n width: 5,\n },\n});\n\nconst ProgressControlThumb = () => {\n const {\n theme: {\n colors: { black },\n },\n } = useTheme();\n return (\n <View\n style={[styles.progressControlThumbStyle, { backgroundColor: '#ffffff', shadowColor: black }]}\n />\n );\n};\n\nexport const ProgressControl: React.FC<ProgressControlProps> = React.memo(\n (props) => {\n const { duration, filledColor, onPlayPause, onProgressDrag, progress, testID, width } = props;\n const {\n theme: {\n colors: { grey_dark },\n },\n } = useTheme();\n\n const state = useSharedValue(0);\n const translateX = useSharedValue(0);\n\n useEffect(() => {\n state.value = progress * width;\n translateX.value = progress * width;\n }, [progress]);\n\n const animatedStyles = useAnimatedStyle(() => ({\n backgroundColor: filledColor,\n width: state.value,\n }));\n\n const thumbStyles = useAnimatedStyle(() => ({\n transform: [{ translateX: state.value }],\n }));\n\n const onGestureEvent = useAnimatedGestureHandler(\n {\n onActive: (event) => {\n state.value = translateX.value + event.translationX;\n if (state.value > width) state.value = width;\n else if (state.value < 0) state.value = 0;\n },\n onFinish: () => {\n translateX.value = state.value;\n const dragFinishLocationInSeconds = (state.value / width) * duration;\n if (onProgressDrag) runOnJS(onProgressDrag)(dragFinishLocationInSeconds);\n runOnJS(onPlayPause)(false);\n },\n onStart: () => {\n runOnJS(onPlayPause)(true);\n cancelAnimation(translateX);\n state.value = translateX.value;\n },\n },\n [duration],\n );\n return (\n <View style={[styles.containerStyle, { backgroundColor: grey_dark, width }]}>\n <Animated.View style={[styles.innerStyle, animatedStyles]} />\n\n <PanGestureHandler\n maxPointers={1}\n onGestureEvent={onProgressDrag ? onGestureEvent : undefined}\n testID={testID}\n >\n <Animated.View style={[thumbStyles]}>\n {onProgressDrag && <ProgressControlThumb />}\n </Animated.View>\n </PanGestureHandler>\n </View>\n );\n },\n (prevProps, nextProps) => {\n if (prevProps.duration === nextProps.duration && prevProps.progress === nextProps.progress)\n return true;\n else return false;\n },\n);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_excluded","_this","_jsxFileName","styles","StyleSheet","create","defaultStyle","writingDirection","I18nManager","isRTL","WritingDirectionAwareText","props","children","style","rest","_objectWithoutProperties2","createElement","Text","_extends2","__self","__source","fileName","lineNumber","columnNumber","exports"],"sources":["WritingDirectionAwareText.tsx"],"sourcesContent":["import React from 'react';\nimport { I18nManager, StyleSheet, Text, ViewProps } from 'react-native';\n\nconst styles = StyleSheet.create({\n defaultStyle: { writingDirection: I18nManager.isRTL ? 'rtl' : 'ltr' },\n});\n\nexport type WritingDirectionAwareTextProps = ViewProps;\n\nexport const WritingDirectionAwareText: React.FC<WritingDirectionAwareTextProps> = (props) => {\n const { children, style, ...rest } = props;\n return (\n <Text {...rest} style={[style, styles.defaultStyle]}>\n {children}\n </Text>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAwE,IAAAE,SAAA;AAAA,IAAAC,KAAA;EAAAC,YAAA;AAExE,IAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,YAAY,EAAE;IAAEC,gBAAgB,EAAEC,wBAAW,CAACC,KAAK,GAAG,KAAK,GAAG;EAAM;AACtE,CAAC,CAAC;AAIK,IAAMC,yBAAmE,GAAG,SAAtEA,yBAAmEA,CAAIC,KAAK,EAAK;EAC5F,IAAQC,QAAQ,GAAqBD,KAAK,CAAlCC,QAAQ;IAAEC,KAAK,GAAcF,KAAK,CAAxBE,KAAK;IAAKC,IAAI,OAAAC,yBAAA,aAAKJ,KAAK,EAAAX,SAAA;EAC1C,OACEJ,MAAA,YAAAoB,aAAA,CAACjB,YAAA,CAAAkB,IAAI,MAAAC,SAAA,iBAAKJ,IAAI;IAAED,KAAK,EAAE,CAACA,KAAK,EAAEV,MAAM,CAACG,YAAY,CAAE;IAAAa,MAAA,EAAAlB,KAAA;IAAAmB,QAAA;MAAAC,QAAA,EAAAnB,YAAA;MAAAoB,UAAA;MAAAC,YAAA;IAAA;EAAA,IACjDX,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_excluded","_this","_jsxFileName","styles","StyleSheet","create","defaultStyle","writingDirection","I18nManager","isRTL","WritingDirectionAwareText","props","children","style","rest","_objectWithoutProperties2","createElement","Text","_extends2","__self","__source","fileName","lineNumber","columnNumber","exports"],"sources":["WritingDirectionAwareText.tsx"],"sourcesContent":["import React from 'react';\nimport { I18nManager, StyleSheet, Text, ViewProps } from 'react-native';\n\nconst styles = StyleSheet.create({\n defaultStyle: { writingDirection: I18nManager.isRTL ? 'rtl' : 'ltr' },\n});\n\nexport type WritingDirectionAwareTextProps = ViewProps;\n\nexport const WritingDirectionAwareText: React.FC<WritingDirectionAwareTextProps> = (props) => {\n const { children, style, ...rest } = props;\n return (\n <Text {...rest} style={[style, styles.defaultStyle]}>\n {children}\n </Text>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAwE,IAAAE,SAAA;AAAA,IAAAC,KAAA;EAAAC,YAAA;AAExE,IAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,YAAY,EAAE;IAAEC,gBAAgB,EAAEC,wBAAW,CAACC,KAAK,GAAG,KAAK,GAAG;EAAM;AACtE,CAAC,CAAC;AAIK,IAAMC,yBAAmE,GAAG,SAAtEA,yBAAmEA,CAAIC,KAAK,EAAK;EAC5F,IAAQC,QAAQ,GAAqBD,KAAK,CAAlCC,QAAQ;IAAEC,KAAK,GAAcF,KAAK,CAAxBE,KAAK;IAAKC,IAAI,OAAAC,yBAAA,aAAKJ,KAAK,EAAAX,SAAA;EAC1C,OACEJ,MAAA,YAAAoB,aAAA,CAACjB,YAAA,CAAAkB,IAAI,MAAAC,SAAA,iBAAKJ,IAAI;IAAED,KAAK,EAAE,CAACA,KAAK,EAAEV,MAAM,CAACG,YAAY,CAAE;IAAAa,MAAA,EAAAlB,KAAA;IAAAmB,QAAA;MAAAC,QAAA,EAAAnB,YAAA;MAAAoB,UAAA;MAAAC,YAAA;IAAA;EAAA,IACjDX,QACG,CAAC;AAEX,CAAC;AAACY,OAAA,CAAAd,yBAAA,GAAAA,yBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_merge","_interopRequireDefault","_MessageContext","_MessageInputContext","_MessagesContext","_ThemeContext","_TranslationContext","_getResizedImageUrl","_utils","_FileIcon","_VideoThumbnail","_MessageAvatar","_MessageTextContainer","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","container","alignItems","flexDirection","fileAttachmentContainer","paddingLeft","paddingVertical","imageAttachment","borderRadius","height","marginLeft","marginVertical","width","messageContainer","borderBottomLeftRadius","borderBottomRightRadius","borderTopLeftRadius","borderTopRightRadius","flexGrow","flexShrink","text","fontSize","textContainer","maxWidth","undefined","paddingHorizontal","videoThumbnailContainerStyle","videoThumbnailImageStyle","getMessageType","lastAttachment","messageType","isLastAttachmentFile","type","isLastAttachmentVideo","isLastAttachmentGiphy","isLastAttachmentImageOrGiphy","title_link","og_scrape_url","isLastAttachmentImage","image_url","thumb_url","ReplyWithContext","props","_quotedMessage$attach","_stylesProp$imageAtta","_stylesProp$imageAtta2","_stylesProp$imageAtta3","_stylesProp$imageAtta4","_stylesProp$fileAttac","FileAttachmentIcon","_props$attachmentSize","attachmentSize","MessageAvatar","quotedMessage","_props$styles","stylesProp","t","_useState","useState","_useState2","_slicedToArray2","error","setError","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","blue_alice","border","grey","transparent","white","deletedText","messageSimple","content","_useTheme$theme$reply","reply","markdownStyles","_useTheme$theme$reply2","videoThumbnail","image","attachments","slice","hasImage","onlyEmojis","emojiRegex","test","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","alignment","lastGroupMessage","message","size","backgroundColor","borderColor","borderWidth","mimeType","mime_type","Image","onError","source","uri","getResizedImageUrl","url","VideoThumbnail","imageStyle","MessageTextContainer","deleted_at","merge","em","color","_extends2","length","title","marginRight","Number","useMessageInputContextIfAvailable","contextValue","useContext","MessageInputContext","areEqual","prevProps","nextProps","prevQuotedMessage","nextQuotedMessage","quotedMessageEqual","id","MemoizedReply","React","memo","Reply","_useMessageContext","useMessageContext","_useMessagesContext","useMessagesContext","_useMessagesContext$F","FileIconDefault","_useMessagesContext$M","MessageAvatarDefault","_useMessageInputConte","editing","quotedEditingMessage","quoted_message","_useTranslationContex","useTranslationContext","exports","displayName"],"sources":["Reply.tsx"],"sourcesContent":["import React, { useContext, useState } from 'react';\nimport { Image, ImageStyle, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport merge from 'lodash/merge';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { useMessageContext } from '../../contexts/messageContext/MessageContext';\nimport {\n MessageInputContext,\n MessageInputContextValue,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\nimport { emojiRegex } from '../../utils/utils';\n\nimport { FileIcon as FileIconDefault } from '../Attachment/FileIcon';\nimport { VideoThumbnail } from '../Attachment/VideoThumbnail';\nimport { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/MessageAvatar';\nimport { MessageTextContainer } from '../Message/MessageSimple/MessageTextContainer';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n fileAttachmentContainer: { paddingLeft: 8, paddingVertical: 8 },\n imageAttachment: {\n borderRadius: 8,\n height: 32,\n marginLeft: 8,\n marginVertical: 8,\n width: 32,\n },\n messageContainer: {\n alignItems: 'flex-start',\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 12,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n flexDirection: 'row',\n flexGrow: 1,\n flexShrink: 1,\n },\n text: { fontSize: 12 },\n textContainer: { maxWidth: undefined, paddingHorizontal: 8 },\n videoThumbnailContainerStyle: {\n borderRadius: 8,\n height: 50,\n marginLeft: 8,\n marginVertical: 8,\n width: 50,\n },\n videoThumbnailImageStyle: {\n borderRadius: 10,\n },\n});\n\ntype ReplyPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageInputContextValue<StreamChatGenerics>, 'quotedMessage'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'FileAttachmentIcon' | 'MessageAvatar'> &\n Pick<TranslationContextValue, 't'> & {\n attachmentSize?: number;\n styles?: Partial<{\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n }>;\n };\n\nconst getMessageType = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n lastAttachment: Attachment<StreamChatGenerics>,\n) => {\n let messageType;\n\n const isLastAttachmentFile = lastAttachment.type === 'file' || lastAttachment.type === 'audio';\n\n const isLastAttachmentVideo = lastAttachment.type === 'video';\n\n const isLastAttachmentGiphy =\n lastAttachment?.type === 'giphy' || lastAttachment?.type === 'imgur';\n\n const isLastAttachmentImageOrGiphy =\n lastAttachment?.type === 'image' &&\n !lastAttachment?.title_link &&\n !lastAttachment?.og_scrape_url;\n\n const isLastAttachmentImage = lastAttachment?.image_url || lastAttachment?.thumb_url;\n\n if (isLastAttachmentFile) {\n messageType = 'file';\n } else if (isLastAttachmentVideo) {\n messageType = 'video';\n } else if (isLastAttachmentImageOrGiphy) {\n if (isLastAttachmentImage) messageType = 'image';\n else messageType = undefined;\n } else if (isLastAttachmentGiphy) messageType = 'giphy';\n else messageType = 'other';\n\n return messageType;\n};\n\nconst ReplyWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n FileAttachmentIcon,\n attachmentSize = 40,\n MessageAvatar,\n quotedMessage,\n styles: stylesProp = {},\n t,\n } = props;\n\n const [error, setError] = useState(false);\n\n const {\n theme: {\n colors: { blue_alice, border, grey, transparent, white },\n messageSimple: {\n content: { deletedText },\n },\n reply: {\n container,\n fileAttachmentContainer,\n imageAttachment,\n markdownStyles,\n messageContainer,\n textContainer,\n videoThumbnail: {\n container: videoThumbnailContainerStyle,\n image: videoThumbnailImageStyle,\n },\n },\n },\n } = useTheme();\n\n if (typeof quotedMessage === 'boolean') return null;\n\n const lastAttachment = quotedMessage.attachments?.slice(-1)[0] as Attachment<StreamChatGenerics>;\n const messageType = lastAttachment && getMessageType(lastAttachment);\n\n const hasImage =\n !error &&\n lastAttachment &&\n messageType !== 'file' &&\n messageType !== 'video' &&\n (lastAttachment.image_url || lastAttachment.thumb_url || lastAttachment.og_scrape_url);\n\n const onlyEmojis = !lastAttachment && !!quotedMessage.text && emojiRegex.test(quotedMessage.text);\n\n return (\n <View style={[styles.container, container, stylesProp.container]}>\n <MessageAvatar alignment={'left'} lastGroupMessage message={quotedMessage} size={24} />\n <View\n style={[\n styles.messageContainer,\n {\n backgroundColor:\n messageType === 'other' ? blue_alice : messageType === 'giphy' ? transparent : white,\n borderColor: border,\n borderWidth: messageType === 'other' ? 0 : 1,\n },\n messageContainer,\n stylesProp.messageContainer,\n ]}\n >\n {!error && lastAttachment ? (\n messageType === 'file' ? (\n <View\n style={[\n styles.fileAttachmentContainer,\n fileAttachmentContainer,\n stylesProp.fileAttachmentContainer,\n ]}\n >\n <FileAttachmentIcon mimeType={lastAttachment.mime_type} size={attachmentSize} />\n </View>\n ) : hasImage ? (\n <Image\n onError={() => setError(true)}\n source={{\n uri: getResizedImageUrl({\n height:\n stylesProp.imageAttachment?.height ||\n imageAttachment?.height ||\n styles.imageAttachment.height,\n url: (lastAttachment.image_url ||\n lastAttachment.thumb_url ||\n lastAttachment.og_scrape_url) as string,\n width:\n stylesProp.imageAttachment?.width ||\n imageAttachment?.width ||\n styles.imageAttachment.width,\n }),\n }}\n style={[styles.imageAttachment, imageAttachment, stylesProp.imageAttachment]}\n />\n ) : null\n ) : null}\n {messageType === 'video' && !lastAttachment.og_scrape_url ? (\n <VideoThumbnail\n imageStyle={[styles.videoThumbnailImageStyle, videoThumbnailImageStyle]}\n style={[styles.videoThumbnailContainerStyle, videoThumbnailContainerStyle]}\n thumb_url={lastAttachment.thumb_url}\n />\n ) : null}\n <MessageTextContainer<StreamChatGenerics>\n markdownStyles={\n quotedMessage.deleted_at\n ? merge({ em: { color: grey } }, deletedText)\n : { text: styles.text, ...markdownStyles }\n }\n message={{\n ...quotedMessage,\n text: quotedMessage.deleted_at\n ? `_${t('Message deleted')}_`\n : quotedMessage.text\n ? quotedMessage.text.length > 170\n ? `${quotedMessage.text.slice(0, 170)}...`\n : quotedMessage.text\n : messageType === 'image'\n ? t('Photo')\n : messageType === 'video'\n ? t('Video')\n : messageType === 'file'\n ? lastAttachment?.title || ''\n : '',\n }}\n onlyEmojis={onlyEmojis}\n styles={{\n textContainer: [\n {\n marginRight:\n hasImage || messageType === 'video'\n ? Number(\n stylesProp.imageAttachment?.height ||\n imageAttachment.height ||\n styles.imageAttachment.height,\n ) +\n Number(\n stylesProp.imageAttachment?.marginLeft ||\n imageAttachment.marginLeft ||\n styles.imageAttachment.marginLeft,\n )\n : messageType === 'file'\n ? attachmentSize +\n Number(\n stylesProp.fileAttachmentContainer?.paddingLeft ||\n fileAttachmentContainer.paddingLeft ||\n styles.fileAttachmentContainer.paddingLeft,\n )\n : undefined,\n },\n styles.textContainer,\n textContainer,\n stylesProp.textContainer,\n ],\n }}\n />\n </View>\n </View>\n );\n};\n\n/**\n * When a reply is rendered in a MessageSimple, it does\n * not have a MessageInputContext. As this is deliberate,\n * this function exists to avoid the error thrown when\n * using a context outside of its provider.\n * */\nconst useMessageInputContextIfAvailable = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const contextValue = useContext(\n MessageInputContext,\n ) as unknown as MessageInputContextValue<StreamChatGenerics>;\n\n return contextValue;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReplyPropsWithContext<StreamChatGenerics>,\n nextProps: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const { quotedMessage: prevQuotedMessage } = prevProps;\n const { quotedMessage: nextQuotedMessage } = nextProps;\n\n const quotedMessageEqual =\n !!prevQuotedMessage &&\n !!nextQuotedMessage &&\n typeof prevQuotedMessage !== 'boolean' &&\n typeof nextQuotedMessage !== 'boolean'\n ? prevQuotedMessage.id === nextQuotedMessage.id &&\n prevQuotedMessage.deleted_at === nextQuotedMessage.deleted_at\n : !!prevQuotedMessage === !!nextQuotedMessage;\n\n if (!quotedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedReply = React.memo(ReplyWithContext, areEqual) as typeof ReplyWithContext;\n\nexport type ReplyProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ReplyPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for reply\n */\nexport const Reply = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyProps<StreamChatGenerics>,\n) => {\n const { message } = useMessageContext<StreamChatGenerics>();\n\n const { FileAttachmentIcon = FileIconDefault, MessageAvatar = MessageAvatarDefault } =\n useMessagesContext<StreamChatGenerics>();\n\n const { editing, quotedMessage } = useMessageInputContextIfAvailable<StreamChatGenerics>();\n\n const quotedEditingMessage = (\n typeof editing !== 'boolean' ? editing?.quoted_message || false : false\n ) as MessageInputContextValue<StreamChatGenerics>['quotedMessage'];\n\n const { t } = useTranslationContext();\n\n return (\n <MemoizedReply\n {...{\n FileAttachmentIcon,\n MessageAvatar,\n quotedMessage: message\n ? (message.quoted_message as MessageInputContextValue<StreamChatGenerics>['quotedMessage'])\n : quotedMessage || quotedEditingMessage,\n t,\n }}\n {...props}\n />\n );\n};\n\nReply.displayName = 'Reply{reply}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_merge","_interopRequireDefault","_MessageContext","_MessageInputContext","_MessagesContext","_ThemeContext","_TranslationContext","_getResizedImageUrl","_utils","_FileIcon","_VideoThumbnail","_MessageAvatar","_MessageTextContainer","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","container","alignItems","flexDirection","fileAttachmentContainer","paddingLeft","paddingVertical","imageAttachment","borderRadius","height","marginLeft","marginVertical","width","messageContainer","borderBottomLeftRadius","borderBottomRightRadius","borderTopLeftRadius","borderTopRightRadius","flexGrow","flexShrink","text","fontSize","textContainer","maxWidth","undefined","paddingHorizontal","videoThumbnailContainerStyle","videoThumbnailImageStyle","getMessageType","lastAttachment","messageType","isLastAttachmentFile","type","isLastAttachmentVideo","isLastAttachmentGiphy","isLastAttachmentImageOrGiphy","title_link","og_scrape_url","isLastAttachmentImage","image_url","thumb_url","ReplyWithContext","props","_quotedMessage$attach","_stylesProp$imageAtta","_stylesProp$imageAtta2","_stylesProp$imageAtta3","_stylesProp$imageAtta4","_stylesProp$fileAttac","FileAttachmentIcon","_props$attachmentSize","attachmentSize","MessageAvatar","quotedMessage","_props$styles","stylesProp","t","_useState","useState","_useState2","_slicedToArray2","error","setError","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","blue_alice","border","grey","transparent","white","deletedText","messageSimple","content","_useTheme$theme$reply","reply","markdownStyles","_useTheme$theme$reply2","videoThumbnail","image","attachments","slice","hasImage","onlyEmojis","emojiRegex","test","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","alignment","lastGroupMessage","message","size","backgroundColor","borderColor","borderWidth","mimeType","mime_type","Image","onError","source","uri","getResizedImageUrl","url","VideoThumbnail","imageStyle","MessageTextContainer","deleted_at","merge","em","color","_extends2","length","title","marginRight","Number","useMessageInputContextIfAvailable","contextValue","useContext","MessageInputContext","areEqual","prevProps","nextProps","prevQuotedMessage","nextQuotedMessage","quotedMessageEqual","id","MemoizedReply","React","memo","Reply","_useMessageContext","useMessageContext","_useMessagesContext","useMessagesContext","_useMessagesContext$F","FileIconDefault","_useMessagesContext$M","MessageAvatarDefault","_useMessageInputConte","editing","quotedEditingMessage","quoted_message","_useTranslationContex","useTranslationContext","exports","displayName"],"sources":["Reply.tsx"],"sourcesContent":["import React, { useContext, useState } from 'react';\nimport { Image, ImageStyle, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport merge from 'lodash/merge';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { useMessageContext } from '../../contexts/messageContext/MessageContext';\nimport {\n MessageInputContext,\n MessageInputContextValue,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport {\n TranslationContextValue,\n useTranslationContext,\n} from '../../contexts/translationContext/TranslationContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\nimport { emojiRegex } from '../../utils/utils';\n\nimport { FileIcon as FileIconDefault } from '../Attachment/FileIcon';\nimport { VideoThumbnail } from '../Attachment/VideoThumbnail';\nimport { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/MessageAvatar';\nimport { MessageTextContainer } from '../Message/MessageSimple/MessageTextContainer';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'flex-end',\n flexDirection: 'row',\n },\n fileAttachmentContainer: { paddingLeft: 8, paddingVertical: 8 },\n imageAttachment: {\n borderRadius: 8,\n height: 32,\n marginLeft: 8,\n marginVertical: 8,\n width: 32,\n },\n messageContainer: {\n alignItems: 'flex-start',\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 12,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n flexDirection: 'row',\n flexGrow: 1,\n flexShrink: 1,\n },\n text: { fontSize: 12 },\n textContainer: { maxWidth: undefined, paddingHorizontal: 8 },\n videoThumbnailContainerStyle: {\n borderRadius: 8,\n height: 50,\n marginLeft: 8,\n marginVertical: 8,\n width: 50,\n },\n videoThumbnailImageStyle: {\n borderRadius: 10,\n },\n});\n\ntype ReplyPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageInputContextValue<StreamChatGenerics>, 'quotedMessage'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'FileAttachmentIcon' | 'MessageAvatar'> &\n Pick<TranslationContextValue, 't'> & {\n attachmentSize?: number;\n styles?: Partial<{\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n }>;\n };\n\nconst getMessageType = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n lastAttachment: Attachment<StreamChatGenerics>,\n) => {\n let messageType;\n\n const isLastAttachmentFile = lastAttachment.type === 'file' || lastAttachment.type === 'audio';\n\n const isLastAttachmentVideo = lastAttachment.type === 'video';\n\n const isLastAttachmentGiphy =\n lastAttachment?.type === 'giphy' || lastAttachment?.type === 'imgur';\n\n const isLastAttachmentImageOrGiphy =\n lastAttachment?.type === 'image' &&\n !lastAttachment?.title_link &&\n !lastAttachment?.og_scrape_url;\n\n const isLastAttachmentImage = lastAttachment?.image_url || lastAttachment?.thumb_url;\n\n if (isLastAttachmentFile) {\n messageType = 'file';\n } else if (isLastAttachmentVideo) {\n messageType = 'video';\n } else if (isLastAttachmentImageOrGiphy) {\n if (isLastAttachmentImage) messageType = 'image';\n else messageType = undefined;\n } else if (isLastAttachmentGiphy) messageType = 'giphy';\n else messageType = 'other';\n\n return messageType;\n};\n\nconst ReplyWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n FileAttachmentIcon,\n attachmentSize = 40,\n MessageAvatar,\n quotedMessage,\n styles: stylesProp = {},\n t,\n } = props;\n\n const [error, setError] = useState(false);\n\n const {\n theme: {\n colors: { blue_alice, border, grey, transparent, white },\n messageSimple: {\n content: { deletedText },\n },\n reply: {\n container,\n fileAttachmentContainer,\n imageAttachment,\n markdownStyles,\n messageContainer,\n textContainer,\n videoThumbnail: {\n container: videoThumbnailContainerStyle,\n image: videoThumbnailImageStyle,\n },\n },\n },\n } = useTheme();\n\n if (typeof quotedMessage === 'boolean') return null;\n\n const lastAttachment = quotedMessage.attachments?.slice(-1)[0] as Attachment<StreamChatGenerics>;\n const messageType = lastAttachment && getMessageType(lastAttachment);\n\n const hasImage =\n !error &&\n lastAttachment &&\n messageType !== 'file' &&\n messageType !== 'video' &&\n (lastAttachment.image_url || lastAttachment.thumb_url || lastAttachment.og_scrape_url);\n\n const onlyEmojis = !lastAttachment && !!quotedMessage.text && emojiRegex.test(quotedMessage.text);\n\n return (\n <View style={[styles.container, container, stylesProp.container]}>\n <MessageAvatar alignment={'left'} lastGroupMessage message={quotedMessage} size={24} />\n <View\n style={[\n styles.messageContainer,\n {\n backgroundColor:\n messageType === 'other' ? blue_alice : messageType === 'giphy' ? transparent : white,\n borderColor: border,\n borderWidth: messageType === 'other' ? 0 : 1,\n },\n messageContainer,\n stylesProp.messageContainer,\n ]}\n >\n {!error && lastAttachment ? (\n messageType === 'file' ? (\n <View\n style={[\n styles.fileAttachmentContainer,\n fileAttachmentContainer,\n stylesProp.fileAttachmentContainer,\n ]}\n >\n <FileAttachmentIcon mimeType={lastAttachment.mime_type} size={attachmentSize} />\n </View>\n ) : hasImage ? (\n <Image\n onError={() => setError(true)}\n source={{\n uri: getResizedImageUrl({\n height:\n stylesProp.imageAttachment?.height ||\n imageAttachment?.height ||\n styles.imageAttachment.height,\n url: (lastAttachment.image_url ||\n lastAttachment.thumb_url ||\n lastAttachment.og_scrape_url) as string,\n width:\n stylesProp.imageAttachment?.width ||\n imageAttachment?.width ||\n styles.imageAttachment.width,\n }),\n }}\n style={[styles.imageAttachment, imageAttachment, stylesProp.imageAttachment]}\n />\n ) : null\n ) : null}\n {messageType === 'video' && !lastAttachment.og_scrape_url ? (\n <VideoThumbnail\n imageStyle={[styles.videoThumbnailImageStyle, videoThumbnailImageStyle]}\n style={[styles.videoThumbnailContainerStyle, videoThumbnailContainerStyle]}\n thumb_url={lastAttachment.thumb_url}\n />\n ) : null}\n <MessageTextContainer<StreamChatGenerics>\n markdownStyles={\n quotedMessage.deleted_at\n ? merge({ em: { color: grey } }, deletedText)\n : { text: styles.text, ...markdownStyles }\n }\n message={{\n ...quotedMessage,\n text: quotedMessage.deleted_at\n ? `_${t('Message deleted')}_`\n : quotedMessage.text\n ? quotedMessage.text.length > 170\n ? `${quotedMessage.text.slice(0, 170)}...`\n : quotedMessage.text\n : messageType === 'image'\n ? t('Photo')\n : messageType === 'video'\n ? t('Video')\n : messageType === 'file'\n ? lastAttachment?.title || ''\n : '',\n }}\n onlyEmojis={onlyEmojis}\n styles={{\n textContainer: [\n {\n marginRight:\n hasImage || messageType === 'video'\n ? Number(\n stylesProp.imageAttachment?.height ||\n imageAttachment.height ||\n styles.imageAttachment.height,\n ) +\n Number(\n stylesProp.imageAttachment?.marginLeft ||\n imageAttachment.marginLeft ||\n styles.imageAttachment.marginLeft,\n )\n : messageType === 'file'\n ? attachmentSize +\n Number(\n stylesProp.fileAttachmentContainer?.paddingLeft ||\n fileAttachmentContainer.paddingLeft ||\n styles.fileAttachmentContainer.paddingLeft,\n )\n : undefined,\n },\n styles.textContainer,\n textContainer,\n stylesProp.textContainer,\n ],\n }}\n />\n </View>\n </View>\n );\n};\n\n/**\n * When a reply is rendered in a MessageSimple, it does\n * not have a MessageInputContext. As this is deliberate,\n * this function exists to avoid the error thrown when\n * using a context outside of its provider.\n * */\nconst useMessageInputContextIfAvailable = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const contextValue = useContext(\n MessageInputContext,\n ) as unknown as MessageInputContextValue<StreamChatGenerics>;\n\n return contextValue;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReplyPropsWithContext<StreamChatGenerics>,\n nextProps: ReplyPropsWithContext<StreamChatGenerics>,\n) => {\n const { quotedMessage: prevQuotedMessage } = prevProps;\n const { quotedMessage: nextQuotedMessage } = nextProps;\n\n const quotedMessageEqual =\n !!prevQuotedMessage &&\n !!nextQuotedMessage &&\n typeof prevQuotedMessage !== 'boolean' &&\n typeof nextQuotedMessage !== 'boolean'\n ? prevQuotedMessage.id === nextQuotedMessage.id &&\n prevQuotedMessage.deleted_at === nextQuotedMessage.deleted_at\n : !!prevQuotedMessage === !!nextQuotedMessage;\n\n if (!quotedMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedReply = React.memo(ReplyWithContext, areEqual) as typeof ReplyWithContext;\n\nexport type ReplyProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ReplyPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for reply\n */\nexport const Reply = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReplyProps<StreamChatGenerics>,\n) => {\n const { message } = useMessageContext<StreamChatGenerics>();\n\n const { FileAttachmentIcon = FileIconDefault, MessageAvatar = MessageAvatarDefault } =\n useMessagesContext<StreamChatGenerics>();\n\n const { editing, quotedMessage } = useMessageInputContextIfAvailable<StreamChatGenerics>();\n\n const quotedEditingMessage = (\n typeof editing !== 'boolean' ? editing?.quoted_message || false : false\n ) as MessageInputContextValue<StreamChatGenerics>['quotedMessage'];\n\n const { t } = useTranslationContext();\n\n return (\n <MemoizedReply\n {...{\n FileAttachmentIcon,\n MessageAvatar,\n quotedMessage: message\n ? (message.quoted_message as MessageInputContextValue<StreamChatGenerics>['quotedMessage'])\n : quotedMessage || quotedEditingMessage,\n t,\n }}\n {...props}\n />\n );\n};\n\nReply.displayName = 'Reply{reply}';\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_ThemeContext","_Loading","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","spinner","height","justifyContent","margin","width","Spinner","props","rotation","useSharedValue","style","_useTheme","useTheme","_useTheme$theme","theme","accent_blue","colors","animatedStyle","useAnimatedStyle","transform","rotate","value","useEffect","withRepeat","withTiming","duration","easing","Easing","linear","createElement","View","__self","__source","fileName","lineNumber","columnNumber","Loading","stopColor","exports","displayName"],"sources":["Spinner.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { StyleProp, StyleSheet, ViewStyle } from 'react-native';\nimport Animated, {\n Easing,\n useAnimatedStyle,\n useSharedValue,\n withRepeat,\n withTiming,\n} from 'react-native-reanimated';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Loading } from '../../icons/Loading';\n\nconst styles = StyleSheet.create({\n spinner: {\n height: 16,\n justifyContent: 'center',\n margin: 5,\n width: 16,\n },\n});\n\nexport type SpinnerProps = {\n height?: number;\n style?: StyleProp<ViewStyle>;\n width?: number;\n};\n\nexport const Spinner: React.FC<SpinnerProps> = (props) => {\n const rotation = useSharedValue(0);\n const { height, style, width } = props;\n\n const {\n theme: {\n colors: { accent_blue },\n spinner,\n },\n } = useTheme();\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => ({\n transform: [\n {\n rotate: `${rotation.value}deg`,\n },\n ],\n }));\n\n useEffect(() => {\n rotation.value = withRepeat(\n withTiming(360, {\n duration: 800,\n easing: Easing.linear,\n }),\n -1,\n );\n }, []);\n\n return (\n <Animated.View style={[style, styles.spinner, animatedStyle, spinner, { height, width }]}>\n <Loading height={height} stopColor={accent_blue} width={width} />\n </Animated.View>\n );\n};\n\nSpinner.displayName = 'Spinner{spinner}';\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAH,uBAAA,CAAAC,OAAA;AAQA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAA8C,IAAAK,KAAA;EAAAC,YAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAa,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAE9C,IAAMW,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,OAAO,EAAE;IACPC,MAAM,EAAE,EAAE;IACVC,cAAc,EAAE,QAAQ;IACxBC,MAAM,EAAE,CAAC;IACTC,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAQK,IAAMC,OAA+B,GAAG,SAAlCA,OAA+BA,CAAIC,KAAK,EAAK;EACxD,IAAMC,QAAQ,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAClC,IAAQP,MAAM,GAAmBK,KAAK,CAA9BL,MAAM;IAAEQ,KAAK,GAAYH,KAAK,CAAtBG,KAAK;IAAEL,KAAK,GAAKE,KAAK,CAAfF,KAAK;EAE5B,IAAAM,SAAA,GAKI,IAAAC,sBAAQ,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_ThemeContext","_Loading","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","spinner","height","justifyContent","margin","width","Spinner","props","rotation","useSharedValue","style","_useTheme","useTheme","_useTheme$theme","theme","accent_blue","colors","animatedStyle","useAnimatedStyle","transform","rotate","value","useEffect","withRepeat","withTiming","duration","easing","Easing","linear","createElement","View","__self","__source","fileName","lineNumber","columnNumber","Loading","stopColor","exports","displayName"],"sources":["Spinner.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { StyleProp, StyleSheet, ViewStyle } from 'react-native';\nimport Animated, {\n Easing,\n useAnimatedStyle,\n useSharedValue,\n withRepeat,\n withTiming,\n} from 'react-native-reanimated';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Loading } from '../../icons/Loading';\n\nconst styles = StyleSheet.create({\n spinner: {\n height: 16,\n justifyContent: 'center',\n margin: 5,\n width: 16,\n },\n});\n\nexport type SpinnerProps = {\n height?: number;\n style?: StyleProp<ViewStyle>;\n width?: number;\n};\n\nexport const Spinner: React.FC<SpinnerProps> = (props) => {\n const rotation = useSharedValue(0);\n const { height, style, width } = props;\n\n const {\n theme: {\n colors: { accent_blue },\n spinner,\n },\n } = useTheme();\n\n const animatedStyle = useAnimatedStyle<ViewStyle>(() => ({\n transform: [\n {\n rotate: `${rotation.value}deg`,\n },\n ],\n }));\n\n useEffect(() => {\n rotation.value = withRepeat(\n withTiming(360, {\n duration: 800,\n easing: Easing.linear,\n }),\n -1,\n );\n }, []);\n\n return (\n <Animated.View style={[style, styles.spinner, animatedStyle, spinner, { height, width }]}>\n <Loading height={height} stopColor={accent_blue} width={width} />\n </Animated.View>\n );\n};\n\nSpinner.displayName = 'Spinner{spinner}';\n"],"mappings":"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"}
|