stream-chat-react-native-core 9.10.1-beta.2 → 10.0.0-rc.1
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/a11y/hooks/useA11yLabel.js +2 -1
- package/lib/commonjs/a11y/hooks/useA11yLabel.js.map +1 -1
- package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js +2 -2
- package/lib/commonjs/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
- package/lib/commonjs/components/AITypingIndicatorView/hooks/useAIState.js +15 -47
- package/lib/commonjs/components/AITypingIndicatorView/hooks/useAIState.js.map +1 -1
- package/lib/commonjs/components/Accessibility/NotificationAnnouncer.js +9 -7
- package/lib/commonjs/components/Accessibility/NotificationAnnouncer.js.map +1 -1
- package/lib/commonjs/components/Accessibility/hooks/useIncomingMessageAnnouncements.js +10 -10
- package/lib/commonjs/components/Accessibility/hooks/useIncomingMessageAnnouncements.js.map +1 -1
- package/lib/commonjs/components/Attachment/Attachment.js +6 -6
- package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js +14 -13
- package/lib/commonjs/components/Attachment/Audio/AudioAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FileAttachment.js +4 -4
- package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/FilePreview.js +4 -2
- package/lib/commonjs/components/Attachment/FilePreview.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +9 -5
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/Giphy/Giphy.js +1 -1
- package/lib/commonjs/components/Attachment/Giphy/Giphy.js.map +1 -1
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js +3 -3
- package/lib/commonjs/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +2 -1
- package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
- package/lib/commonjs/components/Attachment/utils/openUrlSafely.js +3 -0
- package/lib/commonjs/components/Attachment/utils/openUrlSafely.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +2 -2
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +29 -24
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js +22 -21
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentTypePickerButton.js +9 -9
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentTypePickerButton.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteInput.js +8 -9
- 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/AutoCompleteSuggestionList.js +1 -1
- package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +2 -2
- package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -1
- package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +1 -1
- package/lib/commonjs/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +54 -1410
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/ChannelShell.js +398 -0
- package/lib/commonjs/components/Channel/ChannelShell.js.map +1 -0
- package/lib/commonjs/components/Channel/hooks/useChannelLifecycle.js +120 -0
- package/lib/commonjs/components/Channel/hooks/useChannelLifecycle.js.map +1 -0
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +3 -53
- package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +1 -9
- package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +3 -19
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +11 -27
- package/lib/commonjs/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js +6 -46
- package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useSupersededChannelSwap.js +28 -0
- package/lib/commonjs/components/Channel/hooks/useSupersededChannelSwap.js.map +1 -0
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsMemberSection.js +10 -6
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsMemberSection.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormContent.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormContent.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js +5 -5
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditName.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/ChannelEditName.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/AddMemberSearchResultItem.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/members/AddMemberSearchResultItem.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersButton.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersButton.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberList.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/members/ChannelMemberList.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js +1 -1
- package/lib/commonjs/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js +2 -2
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js +3 -3
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +5 -5
- package/lib/commonjs/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/members/useMemberRoles.js +3 -3
- package/lib/commonjs/components/ChannelDetails/hooks/members/useMemberRoles.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js +5 -3
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +5 -4
- package/lib/commonjs/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useEditChannelImage.js +6 -6
- package/lib/commonjs/components/ChannelDetails/hooks/useEditChannelImage.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js +9 -5
- package/lib/commonjs/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -1
- package/lib/commonjs/components/ChannelDetails/hooks/useUserActivityStatus.js +8 -7
- package/lib/commonjs/components/ChannelDetails/hooks/useUserActivityStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelList.js +23 -98
- package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelList/ChannelListView.js +28 -68
- package/lib/commonjs/components/ChannelList/ChannelListView.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/index.js +0 -11
- package/lib/commonjs/components/ChannelList/hooks/index.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useChannelMembersState.js +32 -9
- package/lib/commonjs/components/ChannelList/hooks/useChannelMembersState.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useChannelOnlineMemberCount.js +6 -15
- package/lib/commonjs/components/ChannelList/hooks/useChannelOnlineMemberCount.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js +20 -44
- package/lib/commonjs/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useMutedChannels.js +7 -7
- package/lib/commonjs/components/ChannelList/hooks/useMutedChannels.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/useMutedUsers.js +7 -9
- package/lib/commonjs/components/ChannelList/hooks/useMutedUsers.js.map +1 -1
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +69 -125
- package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js +12 -3
- package/lib/commonjs/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +19 -11
- package/lib/commonjs/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +2 -3
- package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js +6 -5
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewPinnedStatus.js +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewPinnedStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js +9 -8
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewTypingIndicator.js +8 -8
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewTypingIndicator.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js +1 -3
- package/lib/commonjs/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewData.js +25 -118
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewData.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js +11 -4
- 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/useChannelPreviewDraftMessage.js +14 -5
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js +3 -3
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelTypingState.js +2 -37
- package/lib/commonjs/components/ChannelPreview/hooks/useChannelTypingState.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelMuted.js +6 -29
- package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelMuted.js.map +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelPinned.js +1 -1
- package/lib/commonjs/components/ChannelPreview/hooks/useIsChannelPinned.js.map +1 -1
- package/lib/commonjs/components/Chat/Chat.js +53 -59
- package/lib/commonjs/components/Chat/Chat.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/index.js +16 -16
- package/lib/commonjs/components/Chat/hooks/index.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useAppSettingsGetter.js +75 -0
- package/lib/commonjs/components/Chat/hooks/useAppSettingsGetter.js.map +1 -0
- package/lib/commonjs/components/Chat/hooks/useClientUserId.js +17 -0
- package/lib/commonjs/components/Chat/hooks/useClientUserId.js.map +1 -0
- package/lib/commonjs/components/Chat/hooks/useConnectionLifecycle.js +53 -0
- package/lib/commonjs/components/Chat/hooks/useConnectionLifecycle.js.map +1 -0
- package/lib/commonjs/components/Chat/hooks/useCreateChatClient.js +15 -1
- package/lib/commonjs/components/Chat/hooks/useCreateChatClient.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +7 -25
- package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js +11 -4
- package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -1
- package/lib/commonjs/components/Chat/hooks/useNetworkConnectionState.js +22 -0
- package/lib/commonjs/components/Chat/hooks/useNetworkConnectionState.js.map +1 -0
- package/lib/commonjs/components/Chat/hooks/usePendingUploadsDefault.js +24 -0
- package/lib/commonjs/components/Chat/hooks/usePendingUploadsDefault.js.map +1 -0
- package/lib/commonjs/components/Chat/hooks/useWSConnectionState.js +63 -0
- package/lib/commonjs/components/Chat/hooks/useWSConnectionState.js.map +1 -0
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +3 -3
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +6 -6
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js +1 -1
- package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
- package/lib/commonjs/components/Indicators/EmptyStateIndicator.js +4 -4
- package/lib/commonjs/components/Indicators/EmptyStateIndicator.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js +3 -3
- package/lib/commonjs/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/commonjs/components/Indicators/LoadingIndicator.js +3 -3
- package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +64 -195
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js +2 -2
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js +34 -19
- package/lib/commonjs/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js +8 -8
- package/lib/commonjs/components/Message/MessageItemView/MessageBounce.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageContent.js +4 -8
- package/lib/commonjs/components/Message/MessageItemView/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js +17 -15
- package/lib/commonjs/components/Message/MessageItemView/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js +27 -23
- package/lib/commonjs/components/Message/MessageItemView/MessageHeader.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js +14 -19
- package/lib/commonjs/components/Message/MessageItemView/MessageItemView.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js +7 -16
- package/lib/commonjs/components/Message/MessageItemView/MessageReplies.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js +25 -33
- package/lib/commonjs/components/Message/MessageItemView/MessageStatus.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js +4 -4
- package/lib/commonjs/components/Message/MessageItemView/MessageTimestamp.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js +37 -31
- package/lib/commonjs/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js +3 -3
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -1
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js +1 -1
- package/lib/commonjs/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageActionHandlers.js +453 -0
- package/lib/commonjs/components/Message/hooks/useCreateMessageActionHandlers.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +5 -12
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useIsMessageDeliveredToOthers.js +25 -0
- package/lib/commonjs/components/Message/hooks/useIsMessageDeliveredToOthers.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useIsMessageReadByOthers.js +25 -0
- package/lib/commonjs/components/Message/hooks/useIsMessageReadByOthers.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js +9 -440
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActions.js +59 -87
- package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageData.js +4 -5
- package/lib/commonjs/components/Message/hooks/useMessageData.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageDeliveryData.js +12 -36
- package/lib/commonjs/components/Message/hooks/useMessageDeliveryData.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageOperations.js +144 -0
- package/lib/commonjs/components/Message/hooks/useMessageOperations.js.map +1 -0
- package/lib/commonjs/components/Message/hooks/useMessageReadData.js +12 -36
- package/lib/commonjs/components/Message/hooks/useMessageReadData.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useProcessReactions.js +4 -2
- package/lib/commonjs/components/Message/hooks/useProcessReactions.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useUserMuteActive.js +15 -7
- package/lib/commonjs/components/Message/hooks/useUserMuteActive.js.map +1 -1
- package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageComposer.js +25 -18
- package/lib/commonjs/components/MessageInput/MessageComposer.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
- package/lib/commonjs/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -12
- package/lib/commonjs/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +3 -3
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js +6 -6
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +6 -6
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +3 -4
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +6 -5
- package/lib/commonjs/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js +5 -5
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +4 -4
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js +9 -2
- package/lib/commonjs/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js +3 -3
- package/lib/commonjs/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js +7 -5
- package/lib/commonjs/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineDateSeparator.js +6 -6
- package/lib/commonjs/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js +5 -8
- package/lib/commonjs/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -8
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js +5 -3
- package/lib/commonjs/components/MessageList/InlineUnreadIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageFlashList.js +152 -390
- package/lib/commonjs/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +141 -436
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageSystem.js +5 -4
- package/lib/commonjs/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/commonjs/components/MessageList/NetworkDownIndicator.js +8 -16
- package/lib/commonjs/components/MessageList/NetworkDownIndicator.js.map +1 -1
- package/lib/commonjs/components/MessageList/ScrollToBottomButton.js +13 -7
- package/lib/commonjs/components/MessageList/ScrollToBottomButton.js.map +1 -1
- package/lib/commonjs/components/MessageList/StickyHeader.js +5 -5
- package/lib/commonjs/components/MessageList/StickyHeader.js.map +1 -1
- package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js +15 -6
- package/lib/commonjs/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/commonjs/components/MessageList/UnreadMessagesNotification.js +39 -26
- package/lib/commonjs/components/MessageList/UnreadMessagesNotification.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMarkRead.js +50 -0
- package/lib/commonjs/components/MessageList/hooks/useMarkRead.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageDateSeparator.js +4 -3
- package/lib/commonjs/components/MessageList/hooks/useMessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js +20 -27
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageListFocus.js +41 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageListFocus.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageListLiveState.js +72 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageListLiveState.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageListPagination.js +71 -0
- package/lib/commonjs/components/MessageList/hooks/useMessageListPagination.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useOwnUnreadCount.js +22 -0
- package/lib/commonjs/components/MessageList/hooks/useOwnUnreadCount.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useScrollToBottomAccessibilityAction.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useStickyHeaderDate.js +41 -0
- package/lib/commonjs/components/MessageList/hooks/useStickyHeaderDate.js.map +1 -0
- package/lib/commonjs/components/MessageList/hooks/useTypingString.js +2 -2
- package/lib/commonjs/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useTypingUsers.js +21 -8
- package/lib/commonjs/components/MessageList/hooks/useTypingUsers.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useUnreadNotificationVisibility.js +56 -0
- package/lib/commonjs/components/MessageList/hooks/useUnreadNotificationVisibility.js.map +1 -0
- package/lib/commonjs/components/MessageList/utils/buildMessageListWithNeighbours.js +2 -2
- package/lib/commonjs/components/MessageList/utils/buildMessageListWithNeighbours.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js +8 -7
- package/lib/commonjs/components/MessageList/utils/filterTypingUsers.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +2 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageActionList.js +1 -1
- package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageActionListWithActions.js +77 -0
- package/lib/commonjs/components/MessageMenu/MessageActionListWithActions.js.map +1 -0
- package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js +1 -1
- package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +14 -11
- package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +2 -2
- package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
- package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js +37 -28
- package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
- package/lib/commonjs/components/Notifications/Notification.js +1 -1
- package/lib/commonjs/components/Notifications/Notification.js.map +1 -1
- package/lib/commonjs/components/Notifications/NotificationList.js +1 -1
- package/lib/commonjs/components/Notifications/NotificationList.js.map +1 -1
- package/lib/commonjs/components/Notifications/hooks/useNotificationTarget.js +1 -2
- package/lib/commonjs/components/Notifications/hooks/useNotificationTarget.js.map +1 -1
- package/lib/commonjs/components/Notifications/notificationTranslations.js +59 -45
- package/lib/commonjs/components/Notifications/notificationTranslations.js.map +1 -1
- package/lib/commonjs/components/Poll/CreatePollContent.js +9 -9
- package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -1
- package/lib/commonjs/components/Poll/Poll.js +7 -5
- package/lib/commonjs/components/Poll/Poll.js.map +1 -1
- package/lib/commonjs/components/Poll/components/CreatePollHeader.js +3 -3
- package/lib/commonjs/components/Poll/components/CreatePollHeader.js.map +1 -1
- package/lib/commonjs/components/Poll/components/CreatePollOptions.js +9 -4
- package/lib/commonjs/components/Poll/components/CreatePollOptions.js.map +1 -1
- package/lib/commonjs/components/Poll/components/MultipleAnswersField.js +2 -2
- package/lib/commonjs/components/Poll/components/MultipleAnswersField.js.map +1 -1
- package/lib/commonjs/components/Poll/components/MultipleVotesSettings.js +4 -4
- package/lib/commonjs/components/Poll/components/MultipleVotesSettings.js.map +1 -1
- package/lib/commonjs/components/Poll/components/NameField.js +2 -2
- package/lib/commonjs/components/Poll/components/NameField.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollAnswersList.js +10 -10
- package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollButtons.js +19 -15
- package/lib/commonjs/components/Poll/components/PollButtons.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollInputDialog.js +2 -2
- package/lib/commonjs/components/Poll/components/PollInputDialog.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollModalHeader.js +1 -1
- package/lib/commonjs/components/Poll/components/PollModalHeader.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollOption.js +6 -4
- package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +4 -2
- package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js +7 -5
- package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollVote.js +6 -6
- package/lib/commonjs/components/Poll/components/PollResults/PollVote.js.map +1 -1
- package/lib/commonjs/components/Poll/contexts/PollUIStateContext.js +2 -2
- package/lib/commonjs/components/Poll/contexts/PollUIStateContext.js.map +1 -1
- package/lib/commonjs/components/Poll/hooks/useEndVote.js +2 -2
- package/lib/commonjs/components/Poll/hooks/useEndVote.js.map +1 -1
- package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js +8 -7
- package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js.map +1 -1
- package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js +14 -12
- package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -1
- package/lib/commonjs/components/Poll/hooks/usePollState.js +21 -18
- package/lib/commonjs/components/Poll/hooks/usePollState.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js +10 -9
- package/lib/commonjs/components/Reply/Reply.js.map +1 -1
- package/lib/commonjs/components/Thread/Thread.js +77 -104
- package/lib/commonjs/components/Thread/Thread.js.map +1 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +26 -46
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadList.js +17 -18
- package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItem.js +20 -15
- package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js +23 -20
- package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js +15 -8
- package/lib/commonjs/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js.map +1 -1
- package/lib/commonjs/components/UIComponents/BottomSheetModal.js +2 -2
- package/lib/commonjs/components/UIComponents/BottomSheetModal.js.map +1 -1
- package/lib/commonjs/components/UIComponents/SearchInput.js +2 -2
- package/lib/commonjs/components/UIComponents/SearchInput.js.map +1 -1
- package/lib/commonjs/components/index.js +235 -44
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/ui/Avatar/Avatar.js +1 -1
- package/lib/commonjs/components/ui/Avatar/Avatar.js.map +1 -1
- package/lib/commonjs/components/ui/Avatar/ChannelAvatar.js +12 -4
- package/lib/commonjs/components/ui/Avatar/ChannelAvatar.js.map +1 -1
- package/lib/commonjs/contexts/channelAddMembersContext/ChannelAddMembersContext.js +2 -1
- package/lib/commonjs/contexts/channelAddMembersContext/ChannelAddMembersContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +4 -3
- package/lib/commonjs/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -1
- package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js +4 -3
- package/lib/commonjs/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -1
- package/lib/commonjs/contexts/channelMemberListContext/ChannelMemberListContext.js +4 -3
- package/lib/commonjs/contexts/channelMemberListContext/ChannelMemberListContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js +0 -2
- package/lib/commonjs/contexts/componentsContext/defaultComponents.js.map +1 -1
- package/lib/commonjs/contexts/index.js +11 -33
- package/lib/commonjs/contexts/index.js.map +1 -1
- package/lib/commonjs/contexts/liveLocationManagerContext/LiveLocationManagerContext.js +2 -1
- package/lib/commonjs/contexts/liveLocationManagerContext/LiveLocationManagerContext.js.map +1 -1
- package/lib/commonjs/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js +5 -6
- package/lib/commonjs/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js.map +1 -1
- package/lib/commonjs/contexts/messageComposerContext/MessageComposerContext.js +49 -10
- package/lib/commonjs/contexts/messageComposerContext/MessageComposerContext.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +23 -130
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -8
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposer.js +1 -5
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposer.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js +3 -4
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js +16 -0
- package/lib/commonjs/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js.map +1 -0
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js +1 -1
- package/lib/commonjs/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
- package/lib/commonjs/contexts/threadContext/ThreadContext.js +6 -10
- package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/commonjs/contexts/threadsContext/ThreadsContext.js.map +1 -1
- package/lib/commonjs/contexts/translationContext/TranslationContext.js +4 -6
- package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/commonjs/contexts/translationContext/index.js +0 -11
- package/lib/commonjs/contexts/translationContext/index.js.map +1 -1
- package/lib/commonjs/hooks/actions/useChannelActionItems.js +21 -21
- package/lib/commonjs/hooks/actions/useChannelActionItems.js.map +1 -1
- package/lib/commonjs/hooks/actions/useChannelActions.js +52 -38
- package/lib/commonjs/hooks/actions/useChannelActions.js.map +1 -1
- package/lib/commonjs/hooks/actions/useChannelMemberActionItems.js +10 -10
- package/lib/commonjs/hooks/actions/useChannelMemberActionItems.js.map +1 -1
- package/lib/commonjs/hooks/actions/useUserActions.js +15 -11
- package/lib/commonjs/hooks/actions/useUserActions.js.map +1 -1
- package/lib/commonjs/hooks/index.js +33 -11
- package/lib/commonjs/hooks/index.js.map +1 -1
- package/lib/commonjs/hooks/messagePreview/useGroupedAttachments.js.map +1 -1
- package/lib/commonjs/hooks/messagePreview/useMessageDeliveryStatus.js +26 -52
- package/lib/commonjs/hooks/messagePreview/useMessageDeliveryStatus.js.map +1 -1
- package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js +34 -22
- package/lib/commonjs/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
- package/lib/commonjs/hooks/useAudioPlayer.js +3 -3
- package/lib/commonjs/hooks/useAudioPlayer.js.map +1 -1
- package/lib/commonjs/hooks/useChannel.js +16 -0
- package/lib/commonjs/hooks/useChannel.js.map +1 -0
- package/lib/commonjs/hooks/useChannelImage.js +8 -10
- package/lib/commonjs/hooks/useChannelImage.js.map +1 -1
- package/lib/commonjs/hooks/useChannelMemberCount.js +6 -11
- package/lib/commonjs/hooks/useChannelMemberCount.js.map +1 -1
- package/lib/commonjs/hooks/useChannelMembershipState.js +6 -8
- package/lib/commonjs/hooks/useChannelMembershipState.js.map +1 -1
- package/lib/commonjs/hooks/useChannelMuteActive.js +3 -6
- package/lib/commonjs/hooks/useChannelMuteActive.js.map +1 -1
- package/lib/commonjs/hooks/useChannelName.js +8 -10
- package/lib/commonjs/hooks/useChannelName.js.map +1 -1
- package/lib/commonjs/hooks/useChannelOwnCapabilities.js +6 -11
- package/lib/commonjs/hooks/useChannelOwnCapabilities.js.map +1 -1
- package/lib/commonjs/hooks/useIsDirectChat.js +9 -3
- package/lib/commonjs/hooks/useIsDirectChat.js.map +1 -1
- package/lib/commonjs/hooks/useIsTargetedMessage.js +20 -0
- package/lib/commonjs/hooks/useIsTargetedMessage.js.map +1 -0
- package/lib/commonjs/hooks/useLoadingImage.js +5 -5
- package/lib/commonjs/hooks/useLoadingImage.js.map +1 -1
- package/lib/commonjs/hooks/useMessagePaginator.js +15 -0
- package/lib/commonjs/hooks/useMessagePaginator.js.map +1 -0
- package/lib/commonjs/hooks/usePrunableMessageList.js +17 -16
- package/lib/commonjs/hooks/usePrunableMessageList.js.map +1 -1
- package/lib/commonjs/hooks/useQueryReminders.js +7 -6
- package/lib/commonjs/hooks/useQueryReminders.js.map +1 -1
- package/lib/commonjs/hooks/useStreami18n.js +13 -44
- package/lib/commonjs/hooks/useStreami18n.js.map +1 -1
- package/lib/commonjs/hooks/useTranslatedMessage.js +8 -4
- package/lib/commonjs/hooks/useTranslatedMessage.js.map +1 -1
- package/lib/commonjs/i18n/index.js +37 -0
- package/lib/commonjs/i18n/index.js.map +1 -0
- package/lib/commonjs/i18n/keys.js +2 -0
- package/lib/commonjs/i18n/keys.js.map +1 -0
- package/lib/commonjs/i18n/runtimeDefaults.js +103 -0
- package/lib/commonjs/i18n/runtimeDefaults.js.map +1 -0
- package/lib/commonjs/i18n/types.js.map +1 -0
- package/lib/commonjs/i18n/utils.js +72 -0
- package/lib/commonjs/i18n/utils.js.map +1 -0
- package/lib/commonjs/index.js +16 -101
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/middlewares/attachments.js +1 -80
- package/lib/commonjs/middlewares/attachments.js.map +1 -1
- package/lib/commonjs/mock-builders/DB/mock.js +5 -4
- package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
- package/lib/commonjs/mock-builders/api/channelMocks.js +38 -35
- package/lib/commonjs/mock-builders/api/channelMocks.js.map +1 -1
- package/lib/commonjs/mock-builders/api/initiateClientWithChannels.js +6 -1
- package/lib/commonjs/mock-builders/api/initiateClientWithChannels.js.map +1 -1
- package/lib/commonjs/mock-builders/api/queryMembers.js +15 -14
- package/lib/commonjs/mock-builders/api/queryMembers.js.map +1 -1
- package/lib/commonjs/mock-builders/api/useMockedApis.js +31 -1
- package/lib/commonjs/mock-builders/api/useMockedApis.js.map +1 -1
- package/lib/commonjs/mock-builders/attachments.js +5 -0
- package/lib/commonjs/mock-builders/attachments.js.map +1 -1
- package/lib/commonjs/mock-builders/event/connectionChanged.js +13 -6
- package/lib/commonjs/mock-builders/event/connectionChanged.js.map +1 -1
- package/lib/commonjs/mock-builders/event/connectionRecovered.js.map +1 -1
- package/lib/commonjs/mock-builders/event/messageDeleted.js +0 -1
- package/lib/commonjs/mock-builders/event/messageDeleted.js.map +1 -1
- package/lib/commonjs/mock-builders/event/messageRead.js +2 -1
- package/lib/commonjs/mock-builders/event/messageRead.js.map +1 -1
- package/lib/commonjs/mock-builders/event/messageUpdated.js +0 -1
- package/lib/commonjs/mock-builders/event/messageUpdated.js.map +1 -1
- package/lib/commonjs/mock-builders/event/notificationChannelMutesUpdated.js +1 -3
- package/lib/commonjs/mock-builders/event/notificationChannelMutesUpdated.js.map +1 -1
- package/lib/commonjs/mock-builders/event/notificationMarkUnread.js +2 -1
- package/lib/commonjs/mock-builders/event/notificationMarkUnread.js.map +1 -1
- package/lib/commonjs/mock-builders/event/notificationMutesUpdated.js +2 -1
- package/lib/commonjs/mock-builders/event/notificationMutesUpdated.js.map +1 -1
- package/lib/commonjs/mock-builders/event/typing.js +1 -3
- package/lib/commonjs/mock-builders/event/typing.js.map +1 -1
- package/lib/commonjs/mock-builders/event/userPresence.js +1 -3
- package/lib/commonjs/mock-builders/event/userPresence.js.map +1 -1
- package/lib/commonjs/mock-builders/event/userUpdated.js +1 -3
- package/lib/commonjs/mock-builders/event/userUpdated.js.map +1 -1
- package/lib/commonjs/mock-builders/event/utils.js +18 -0
- package/lib/commonjs/mock-builders/event/utils.js.map +1 -0
- package/lib/commonjs/mock-builders/generator/attachment.js +11 -3
- package/lib/commonjs/mock-builders/generator/attachment.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/channel.js +5 -4
- package/lib/commonjs/mock-builders/generator/channel.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/channelState.js +53 -0
- package/lib/commonjs/mock-builders/generator/channelState.js.map +1 -0
- package/lib/commonjs/mock-builders/generator/message.js +15 -8
- package/lib/commonjs/mock-builders/generator/message.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/reaction.js +2 -1
- package/lib/commonjs/mock-builders/generator/reaction.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/time.js +13 -0
- package/lib/commonjs/mock-builders/generator/time.js.map +1 -0
- package/lib/commonjs/mock-builders/generator/user.js +3 -2
- package/lib/commonjs/mock-builders/generator/user.js.map +1 -1
- package/lib/commonjs/mock-builders/mock.js +5 -3
- package/lib/commonjs/mock-builders/mock.js.map +1 -1
- package/lib/commonjs/state-store/attachment-picker-store.js +2 -2
- package/lib/commonjs/state-store/attachment-picker-store.js.map +1 -1
- package/lib/commonjs/state-store/audio-player-pool.js +2 -2
- package/lib/commonjs/state-store/audio-player-pool.js.map +1 -1
- package/lib/commonjs/state-store/audio-player.js +2 -2
- package/lib/commonjs/state-store/audio-player.js.map +1 -1
- package/lib/commonjs/state-store/audio-recorder-manager.js +2 -2
- package/lib/commonjs/state-store/audio-recorder-manager.js.map +1 -1
- package/lib/commonjs/state-store/edit-channel-details-store.js +5 -5
- package/lib/commonjs/state-store/edit-channel-details-store.js.map +1 -1
- package/lib/commonjs/state-store/image-gallery-state-store.js +5 -4
- package/lib/commonjs/state-store/image-gallery-state-store.js.map +1 -1
- package/lib/commonjs/state-store/in-app-notifications-store.js +2 -2
- package/lib/commonjs/state-store/in-app-notifications-store.js.map +1 -1
- package/lib/commonjs/state-store/message-input-height-store.js +2 -2
- package/lib/commonjs/state-store/message-input-height-store.js.map +1 -1
- package/lib/commonjs/state-store/message-overlay-store.js +4 -4
- package/lib/commonjs/state-store/message-overlay-store.js.map +1 -1
- package/lib/commonjs/state-store/selection-store.js +2 -2
- package/lib/commonjs/state-store/selection-store.js.map +1 -1
- package/lib/commonjs/state-store/signal-store.js +2 -2
- package/lib/commonjs/state-store/signal-store.js.map +1 -1
- package/lib/commonjs/state-store/video-player-pool.js +2 -2
- package/lib/commonjs/state-store/video-player-pool.js.map +1 -1
- package/lib/commonjs/state-store/video-player.js +2 -2
- package/lib/commonjs/state-store/video-player.js.map +1 -1
- package/lib/commonjs/store/OfflineDB.js +11 -13
- package/lib/commonjs/store/OfflineDB.js.map +1 -1
- package/lib/commonjs/store/SqliteClient.js +1 -1
- package/lib/commonjs/store/apis/channelExists.js +1 -1
- package/lib/commonjs/store/apis/channelExists.js.map +1 -1
- package/lib/commonjs/store/apis/deleteMessagesForChannel.js +2 -1
- package/lib/commonjs/store/apis/deleteMessagesForChannel.js.map +1 -1
- package/lib/commonjs/store/apis/getAppSettings.js +3 -3
- package/lib/commonjs/store/apis/getAppSettings.js.map +1 -1
- package/lib/commonjs/store/apis/getChannelActiveLocations.js.map +1 -1
- package/lib/commonjs/store/apis/getChannelMessages.js +3 -3
- package/lib/commonjs/store/apis/getChannelMessages.js.map +1 -1
- package/lib/commonjs/store/apis/getChannels.js +7 -6
- package/lib/commonjs/store/apis/getChannels.js.map +1 -1
- package/lib/commonjs/store/apis/getChannelsForFilterSort.js +18 -10
- package/lib/commonjs/store/apis/getChannelsForFilterSort.js.map +1 -1
- package/lib/commonjs/store/apis/getDraft.js +1 -1
- package/lib/commonjs/store/apis/getDraft.js.map +1 -1
- package/lib/commonjs/store/apis/getDraftsForChannels.js +2 -2
- package/lib/commonjs/store/apis/getDraftsForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/getLastSyncedAt.js +3 -3
- package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
- package/lib/commonjs/store/apis/getReads.js.map +1 -1
- package/lib/commonjs/store/apis/index.js +0 -11
- package/lib/commonjs/store/apis/index.js.map +1 -1
- package/lib/commonjs/store/apis/insertReaction.js +6 -2
- package/lib/commonjs/store/apis/insertReaction.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectActiveLocationsForChannels.js +2 -1
- package/lib/commonjs/store/apis/queries/selectActiveLocationsForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectChannelQueryForFilterSort.js +56 -0
- package/lib/commonjs/store/apis/queries/selectChannelQueryForFilterSort.js.map +1 -0
- package/lib/commonjs/store/apis/queries/selectDraftMessageFromDraftForChannels.js +1 -1
- package/lib/commonjs/store/apis/queries/selectDraftMessageFromDraftForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectMembersForChannels.js +1 -1
- package/lib/commonjs/store/apis/queries/selectMembersForChannels.js.map +1 -1
- package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js +2 -2
- package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js.map +1 -1
- package/lib/commonjs/store/apis/softDeleteMessage.js +2 -1
- package/lib/commonjs/store/apis/softDeleteMessage.js.map +1 -1
- package/lib/commonjs/store/apis/updateReaction.js +6 -1
- package/lib/commonjs/store/apis/updateReaction.js.map +1 -1
- package/lib/commonjs/store/apis/upsertAppSettings.js +3 -3
- package/lib/commonjs/store/apis/upsertAppSettings.js.map +1 -1
- package/lib/commonjs/store/apis/upsertChannels.js +13 -6
- package/lib/commonjs/store/apis/upsertChannels.js.map +1 -1
- package/lib/commonjs/store/apis/upsertCidsForQuery.js +6 -2
- package/lib/commonjs/store/apis/upsertCidsForQuery.js.map +1 -1
- package/lib/commonjs/store/apis/upsertDraft.js.map +1 -1
- package/lib/commonjs/store/apis/upsertUserSyncStatus.js +3 -3
- package/lib/commonjs/store/apis/upsertUserSyncStatus.js.map +1 -1
- package/lib/commonjs/store/mappers/mapChannelDataToStorable.js +8 -11
- package/lib/commonjs/store/mappers/mapChannelDataToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapChannelToStorable.js +8 -11
- package/lib/commonjs/store/mappers/mapChannelToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js +1 -1
- package/lib/commonjs/store/mappers/mapDraftMessageToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapDraftToStorable.js +2 -2
- package/lib/commonjs/store/mappers/mapDraftToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapMemberToStorable.js +7 -7
- package/lib/commonjs/store/mappers/mapMemberToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapMessageToStorable.js +6 -6
- package/lib/commonjs/store/mappers/mapMessageToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapPollToStorable.js +4 -4
- package/lib/commonjs/store/mappers/mapPollToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapReactionToStorable.js +3 -3
- package/lib/commonjs/store/mappers/mapReactionToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapReadToStorable.js +3 -3
- package/lib/commonjs/store/mappers/mapReadToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapReminderToStorable.js +4 -4
- package/lib/commonjs/store/mappers/mapReminderToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapSharedLocationToStorable.js +4 -4
- package/lib/commonjs/store/mappers/mapSharedLocationToStorable.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToChannel.js +6 -5
- package/lib/commonjs/store/mappers/mapStorableToChannel.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToDraft.js +4 -3
- package/lib/commonjs/store/mappers/mapStorableToDraft.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToMember.js +12 -9
- package/lib/commonjs/store/mappers/mapStorableToMember.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToMessage.js +7 -6
- package/lib/commonjs/store/mappers/mapStorableToMessage.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToPoll.js +9 -6
- package/lib/commonjs/store/mappers/mapStorableToPoll.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToReaction.js +3 -2
- package/lib/commonjs/store/mappers/mapStorableToReaction.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToRead.js +4 -3
- package/lib/commonjs/store/mappers/mapStorableToRead.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToReminder.js +4 -3
- package/lib/commonjs/store/mappers/mapStorableToReminder.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToSharedLocation.js +4 -3
- package/lib/commonjs/store/mappers/mapStorableToSharedLocation.js.map +1 -1
- package/lib/commonjs/store/mappers/mapStorableToTimestamp.js +13 -0
- package/lib/commonjs/store/mappers/mapStorableToTimestamp.js.map +1 -0
- package/lib/commonjs/store/mappers/mapStorableToUser.js +5 -4
- package/lib/commonjs/store/mappers/mapStorableToUser.js.map +1 -1
- package/lib/commonjs/store/mappers/mapTimestampToStorable.js +7 -0
- package/lib/commonjs/store/mappers/mapTimestampToStorable.js.map +1 -0
- package/lib/commonjs/store/mappers/mapUserToStorable.js +4 -3
- package/lib/commonjs/store/mappers/mapUserToStorable.js.map +1 -1
- package/lib/commonjs/store/schema.js +33 -32
- package/lib/commonjs/store/schema.js.map +1 -1
- package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js +17 -3
- package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js.map +1 -1
- package/lib/commonjs/store/sqlite-utils/createUpsertQueryIfParentExists.js +15 -0
- package/lib/commonjs/store/sqlite-utils/createUpsertQueryIfParentExists.js.map +1 -0
- package/lib/commonjs/types/types.js.map +1 -1
- package/lib/commonjs/utils/attachmentUrls.js +15 -0
- package/lib/commonjs/utils/attachmentUrls.js.map +1 -0
- package/lib/commonjs/utils/getUrlOfImageAttachment.js +6 -1
- package/lib/commonjs/utils/getUrlOfImageAttachment.js.map +1 -1
- package/lib/commonjs/utils/i18n/Streami18n.js +43 -408
- package/lib/commonjs/utils/i18n/Streami18n.js.map +1 -1
- package/lib/commonjs/utils/installNativeMultipartAdapter.js +25 -25
- package/lib/commonjs/utils/installNativeMultipartAdapter.js.map +1 -1
- package/lib/commonjs/utils/removeReservedFields.js.map +1 -1
- package/lib/commonjs/utils/utils.js +16 -54
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/a11y/hooks/useA11yLabel.js +2 -1
- package/lib/module/a11y/hooks/useA11yLabel.js.map +1 -1
- package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js +2 -2
- package/lib/module/components/AITypingIndicatorView/AITypingIndicatorView.js.map +1 -1
- package/lib/module/components/AITypingIndicatorView/hooks/useAIState.js +15 -47
- package/lib/module/components/AITypingIndicatorView/hooks/useAIState.js.map +1 -1
- package/lib/module/components/Accessibility/NotificationAnnouncer.js +9 -7
- package/lib/module/components/Accessibility/NotificationAnnouncer.js.map +1 -1
- package/lib/module/components/Accessibility/hooks/useIncomingMessageAnnouncements.js +10 -10
- package/lib/module/components/Accessibility/hooks/useIncomingMessageAnnouncements.js.map +1 -1
- package/lib/module/components/Attachment/Attachment.js +6 -6
- package/lib/module/components/Attachment/Attachment.js.map +1 -1
- package/lib/module/components/Attachment/Audio/AudioAttachment.js +14 -13
- package/lib/module/components/Attachment/Audio/AudioAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FileAttachment.js +4 -4
- package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
- package/lib/module/components/Attachment/FilePreview.js +4 -2
- package/lib/module/components/Attachment/FilePreview.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +9 -5
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/Giphy/Giphy.js +1 -1
- package/lib/module/components/Attachment/Giphy/Giphy.js.map +1 -1
- package/lib/module/components/Attachment/UnsupportedAttachment.js +3 -3
- package/lib/module/components/Attachment/UnsupportedAttachment.js.map +1 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +2 -1
- package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
- package/lib/module/components/Attachment/utils/openUrlSafely.js +3 -0
- package/lib/module/components/Attachment/utils/openUrlSafely.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js +2 -2
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js +29 -24
- package/lib/module/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js +22 -21
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerContent.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentTypePickerButton.js +9 -9
- package/lib/module/components/AttachmentPicker/components/AttachmentTypePickerButton.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteInput.js +8 -9
- 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/AutoCompleteSuggestionList.js +1 -1
- package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js +2 -2
- package/lib/module/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.js.map +1 -1
- package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js +1 -1
- package/lib/module/components/AutoCompleteInput/mentionItems/MentionRoleItem.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +54 -1410
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/ChannelShell.js +398 -0
- package/lib/module/components/Channel/ChannelShell.js.map +1 -0
- package/lib/module/components/Channel/hooks/useChannelLifecycle.js +120 -0
- package/lib/module/components/Channel/hooks/useChannelLifecycle.js.map +1 -0
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js +3 -53
- package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +1 -9
- package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +3 -19
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js +11 -27
- package/lib/module/components/Channel/hooks/useCreateOwnCapabilitiesContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateThreadContext.js +6 -46
- package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
- package/lib/module/components/Channel/hooks/useSupersededChannelSwap.js +28 -0
- package/lib/module/components/Channel/hooks/useSupersededChannelSwap.js.map +1 -0
- package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelDetailsEditButton.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsMemberSection.js +10 -6
- package/lib/module/components/ChannelDetails/components/ChannelDetailsMemberSection.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelDetailsNavHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelDetailsProfile.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormContent.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormContent.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelEditDetailsFormHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js +5 -5
- package/lib/module/components/ChannelDetails/components/ChannelEditImageSheet.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/ChannelEditName.js +2 -2
- package/lib/module/components/ChannelDetails/components/ChannelEditName.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/AddMemberSearchResultItem.js +3 -3
- package/lib/module/components/ChannelDetails/components/members/AddMemberSearchResultItem.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersButton.js +3 -3
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersButton.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js +3 -3
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormContent.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js +2 -2
- package/lib/module/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js +2 -2
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberItem.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberList.js +3 -3
- package/lib/module/components/ChannelDetails/components/members/ChannelMemberList.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js +1 -1
- package/lib/module/components/ChannelDetails/components/modal/ModalHeader.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js +3 -3
- package/lib/module/components/ChannelDetails/components/navigation-section/FileAttachmentList.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js +2 -2
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaItem.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js +3 -3
- package/lib/module/components/ChannelDetails/components/navigation-section/MediaList.js.map +1 -1
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js +5 -5
- package/lib/module/components/ChannelDetails/components/navigation-section/PinnedMessageList.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/members/useMemberRoles.js +3 -3
- package/lib/module/components/ChannelDetails/hooks/members/useMemberRoles.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js +5 -3
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js +5 -4
- package/lib/module/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useEditChannelImage.js +6 -6
- package/lib/module/components/ChannelDetails/hooks/useEditChannelImage.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js +9 -5
- package/lib/module/components/ChannelDetails/hooks/useFileAttachmentListSections.js.map +1 -1
- package/lib/module/components/ChannelDetails/hooks/useUserActivityStatus.js +8 -7
- package/lib/module/components/ChannelDetails/hooks/useUserActivityStatus.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelList.js +23 -98
- package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderErrorIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js +1 -1
- package/lib/module/components/ChannelList/ChannelListHeaderNetworkDownIndicator.js.map +1 -1
- package/lib/module/components/ChannelList/ChannelListView.js +28 -68
- package/lib/module/components/ChannelList/ChannelListView.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/index.js +0 -11
- package/lib/module/components/ChannelList/hooks/index.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useChannelMembersState.js +32 -9
- package/lib/module/components/ChannelList/hooks/useChannelMembersState.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useChannelOnlineMemberCount.js +6 -15
- package/lib/module/components/ChannelList/hooks/useChannelOnlineMemberCount.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js +20 -44
- package/lib/module/components/ChannelList/hooks/useCreateChannelsContext.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useMutedChannels.js +7 -7
- package/lib/module/components/ChannelList/hooks/useMutedChannels.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/useMutedUsers.js +7 -9
- package/lib/module/components/ChannelList/hooks/useMutedUsers.js.map +1 -1
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +69 -125
- package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js +12 -3
- package/lib/module/components/ChannelPreview/ChannelDetailsBottomSheet.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js +19 -11
- package/lib/module/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreview.js +2 -3
- package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js +6 -5
- package/lib/module/components/ChannelPreview/ChannelPreviewMessage.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewMutedStatus.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewPinnedStatus.js +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewPinnedStatus.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js +9 -8
- package/lib/module/components/ChannelPreview/ChannelPreviewStatus.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewTypingIndicator.js +8 -8
- package/lib/module/components/ChannelPreview/ChannelPreviewTypingIndicator.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewUnreadCount.js.map +1 -1
- package/lib/module/components/ChannelPreview/ChannelPreviewView.js +1 -3
- package/lib/module/components/ChannelPreview/ChannelPreviewView.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewData.js +25 -118
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewData.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDisplayName.js +11 -4
- 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/useChannelPreviewDraftMessage.js +14 -5
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js +3 -3
- package/lib/module/components/ChannelPreview/hooks/useChannelPreviewPollLabel.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useChannelTypingState.js +2 -37
- package/lib/module/components/ChannelPreview/hooks/useChannelTypingState.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useIsChannelMuted.js +6 -29
- package/lib/module/components/ChannelPreview/hooks/useIsChannelMuted.js.map +1 -1
- package/lib/module/components/ChannelPreview/hooks/useIsChannelPinned.js +1 -1
- package/lib/module/components/ChannelPreview/hooks/useIsChannelPinned.js.map +1 -1
- package/lib/module/components/Chat/Chat.js +53 -59
- package/lib/module/components/Chat/Chat.js.map +1 -1
- package/lib/module/components/Chat/hooks/index.js +16 -16
- package/lib/module/components/Chat/hooks/index.js.map +1 -1
- package/lib/module/components/Chat/hooks/useAppSettingsGetter.js +75 -0
- package/lib/module/components/Chat/hooks/useAppSettingsGetter.js.map +1 -0
- package/lib/module/components/Chat/hooks/useClientUserId.js +17 -0
- package/lib/module/components/Chat/hooks/useClientUserId.js.map +1 -0
- package/lib/module/components/Chat/hooks/useConnectionLifecycle.js +53 -0
- package/lib/module/components/Chat/hooks/useConnectionLifecycle.js.map +1 -0
- package/lib/module/components/Chat/hooks/useCreateChatClient.js +15 -1
- package/lib/module/components/Chat/hooks/useCreateChatClient.js.map +1 -1
- package/lib/module/components/Chat/hooks/useCreateChatContext.js +7 -25
- package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
- package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js +11 -4
- package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -1
- package/lib/module/components/Chat/hooks/useNetworkConnectionState.js +22 -0
- package/lib/module/components/Chat/hooks/useNetworkConnectionState.js.map +1 -0
- package/lib/module/components/Chat/hooks/usePendingUploadsDefault.js +24 -0
- package/lib/module/components/Chat/hooks/usePendingUploadsDefault.js.map +1 -0
- package/lib/module/components/Chat/hooks/useWSConnectionState.js +63 -0
- package/lib/module/components/Chat/hooks/useWSConnectionState.js.map +1 -0
- package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryA11yProbe.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +3 -3
- package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +6 -6
- package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js +1 -1
- package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
- package/lib/module/components/Indicators/EmptyStateIndicator.js +4 -4
- package/lib/module/components/Indicators/EmptyStateIndicator.js.map +1 -1
- package/lib/module/components/Indicators/LoadingErrorIndicator.js +3 -3
- package/lib/module/components/Indicators/LoadingErrorIndicator.js.map +1 -1
- package/lib/module/components/Indicators/LoadingIndicator.js +3 -3
- package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
- package/lib/module/components/Message/Message.js +64 -195
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/MessagePinnedHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js +2 -2
- package/lib/module/components/Message/MessageItemView/Headers/MessageReminderHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js +34 -19
- package/lib/module/components/Message/MessageItemView/Headers/SentToChannelHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageBounce.js +8 -8
- package/lib/module/components/Message/MessageItemView/MessageBounce.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageContent.js +4 -8
- package/lib/module/components/Message/MessageItemView/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageDeleted.js +1 -1
- package/lib/module/components/Message/MessageItemView/MessageDeleted.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageFooter.js +17 -15
- package/lib/module/components/Message/MessageItemView/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageHeader.js +27 -23
- package/lib/module/components/Message/MessageItemView/MessageHeader.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageItemView.js +14 -19
- package/lib/module/components/Message/MessageItemView/MessageItemView.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageReplies.js +7 -16
- package/lib/module/components/Message/MessageItemView/MessageReplies.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageStatus.js +25 -33
- package/lib/module/components/Message/MessageItemView/MessageStatus.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageTimestamp.js +4 -4
- package/lib/module/components/Message/MessageItemView/MessageTimestamp.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/MessageWrapper.js +37 -31
- package/lib/module/components/Message/MessageItemView/MessageWrapper.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js +3 -3
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListClustered.js.map +1 -1
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js +1 -1
- package/lib/module/components/Message/MessageItemView/ReactionList/ReactionListItem.js.map +1 -1
- package/lib/module/components/Message/hooks/useCreateMessageActionHandlers.js +453 -0
- package/lib/module/components/Message/hooks/useCreateMessageActionHandlers.js.map +1 -0
- package/lib/module/components/Message/hooks/useCreateMessageContext.js +5 -12
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/Message/hooks/useIsMessageDeliveredToOthers.js +25 -0
- package/lib/module/components/Message/hooks/useIsMessageDeliveredToOthers.js.map +1 -0
- package/lib/module/components/Message/hooks/useIsMessageReadByOthers.js +25 -0
- package/lib/module/components/Message/hooks/useIsMessageReadByOthers.js.map +1 -0
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js +9 -440
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActions.js +59 -87
- package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageData.js +4 -5
- package/lib/module/components/Message/hooks/useMessageData.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageDeliveryData.js +12 -36
- package/lib/module/components/Message/hooks/useMessageDeliveryData.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageOperations.js +144 -0
- package/lib/module/components/Message/hooks/useMessageOperations.js.map +1 -0
- package/lib/module/components/Message/hooks/useMessageReadData.js +12 -36
- package/lib/module/components/Message/hooks/useMessageReadData.js.map +1 -1
- package/lib/module/components/Message/hooks/useProcessReactions.js +4 -2
- package/lib/module/components/Message/hooks/useProcessReactions.js.map +1 -1
- package/lib/module/components/Message/hooks/useUserMuteActive.js +15 -7
- package/lib/module/components/Message/hooks/useUserMuteActive.js.map +1 -1
- package/lib/module/components/Message/utils/messageActions.js.map +1 -1
- package/lib/module/components/MessageInput/MessageComposer.js +25 -18
- package/lib/module/components/MessageInput/MessageComposer.js.map +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js +1 -1
- package/lib/module/components/MessageInput/SendMessageDisallowedIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js +10 -12
- package/lib/module/components/MessageInput/ShowThreadMessageInChannelButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js +3 -3
- package/lib/module/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js +6 -6
- package/lib/module/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js +6 -6
- package/lib/module/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js +3 -4
- package/lib/module/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js +6 -5
- package/lib/module/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js +5 -5
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecorder.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +4 -4
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/AttachButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/InputButtons/index.js +9 -2
- package/lib/module/components/MessageInput/components/InputButtons/index.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/EditButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/SendButton.js.map +1 -1
- package/lib/module/components/MessageInput/components/OutputButtons/index.js +3 -3
- package/lib/module/components/MessageInput/components/OutputButtons/index.js.map +1 -1
- package/lib/module/components/MessageInput/hooks/useAudioRecorder.js +7 -5
- package/lib/module/components/MessageInput/hooks/useAudioRecorder.js.map +1 -1
- package/lib/module/components/MessageList/InlineDateSeparator.js +6 -6
- package/lib/module/components/MessageList/InlineDateSeparator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js +5 -8
- package/lib/module/components/MessageList/InlineLoadingMoreIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js +5 -8
- package/lib/module/components/MessageList/InlineLoadingMoreRecentIndicator.js.map +1 -1
- package/lib/module/components/MessageList/InlineUnreadIndicator.js +5 -3
- package/lib/module/components/MessageList/InlineUnreadIndicator.js.map +1 -1
- package/lib/module/components/MessageList/MessageFlashList.js +152 -390
- package/lib/module/components/MessageList/MessageFlashList.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +141 -436
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/MessageSystem.js +5 -4
- package/lib/module/components/MessageList/MessageSystem.js.map +1 -1
- package/lib/module/components/MessageList/NetworkDownIndicator.js +8 -16
- package/lib/module/components/MessageList/NetworkDownIndicator.js.map +1 -1
- package/lib/module/components/MessageList/ScrollToBottomButton.js +13 -7
- package/lib/module/components/MessageList/ScrollToBottomButton.js.map +1 -1
- package/lib/module/components/MessageList/StickyHeader.js +5 -5
- package/lib/module/components/MessageList/StickyHeader.js.map +1 -1
- package/lib/module/components/MessageList/TypingIndicatorContainer.js +15 -6
- package/lib/module/components/MessageList/TypingIndicatorContainer.js.map +1 -1
- package/lib/module/components/MessageList/UnreadMessagesNotification.js +39 -26
- package/lib/module/components/MessageList/UnreadMessagesNotification.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMarkRead.js +50 -0
- package/lib/module/components/MessageList/hooks/useMarkRead.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useMessageDateSeparator.js +4 -3
- package/lib/module/components/MessageList/hooks/useMessageDateSeparator.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js +20 -27
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageListFocus.js +41 -0
- package/lib/module/components/MessageList/hooks/useMessageListFocus.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useMessageListLiveState.js +72 -0
- package/lib/module/components/MessageList/hooks/useMessageListLiveState.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useMessageListPagination.js +71 -0
- package/lib/module/components/MessageList/hooks/useMessageListPagination.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useOwnUnreadCount.js +22 -0
- package/lib/module/components/MessageList/hooks/useOwnUnreadCount.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useScrollToBottomAccessibilityAction.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useStickyHeaderDate.js +41 -0
- package/lib/module/components/MessageList/hooks/useStickyHeaderDate.js.map +1 -0
- package/lib/module/components/MessageList/hooks/useTypingString.js +2 -2
- package/lib/module/components/MessageList/hooks/useTypingString.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useTypingUsers.js +21 -8
- package/lib/module/components/MessageList/hooks/useTypingUsers.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useUnreadNotificationVisibility.js +56 -0
- package/lib/module/components/MessageList/hooks/useUnreadNotificationVisibility.js.map +1 -0
- package/lib/module/components/MessageList/utils/buildMessageListWithNeighbours.js +2 -2
- package/lib/module/components/MessageList/utils/buildMessageListWithNeighbours.js.map +1 -1
- package/lib/module/components/MessageList/utils/filterTypingUsers.js +8 -7
- package/lib/module/components/MessageList/utils/filterTypingUsers.js.map +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js +2 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageActionList.js +1 -1
- package/lib/module/components/MessageMenu/MessageActionList.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageActionListWithActions.js +77 -0
- package/lib/module/components/MessageMenu/MessageActionListWithActions.js.map +1 -0
- package/lib/module/components/MessageMenu/MessageReactionPicker.js +1 -1
- package/lib/module/components/MessageMenu/MessageReactionPicker.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageUserReactions.js +14 -11
- package/lib/module/components/MessageMenu/MessageUserReactions.js.map +1 -1
- package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +2 -2
- package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +1 -1
- package/lib/module/components/MessageMenu/hooks/useFetchReactions.js +37 -28
- package/lib/module/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
- package/lib/module/components/Notifications/Notification.js +1 -1
- package/lib/module/components/Notifications/Notification.js.map +1 -1
- package/lib/module/components/Notifications/NotificationList.js +1 -1
- package/lib/module/components/Notifications/NotificationList.js.map +1 -1
- package/lib/module/components/Notifications/hooks/useNotificationTarget.js +1 -2
- package/lib/module/components/Notifications/hooks/useNotificationTarget.js.map +1 -1
- package/lib/module/components/Notifications/notificationTranslations.js +59 -45
- package/lib/module/components/Notifications/notificationTranslations.js.map +1 -1
- package/lib/module/components/Poll/CreatePollContent.js +9 -9
- package/lib/module/components/Poll/CreatePollContent.js.map +1 -1
- package/lib/module/components/Poll/Poll.js +7 -5
- package/lib/module/components/Poll/Poll.js.map +1 -1
- package/lib/module/components/Poll/components/CreatePollHeader.js +3 -3
- package/lib/module/components/Poll/components/CreatePollHeader.js.map +1 -1
- package/lib/module/components/Poll/components/CreatePollOptions.js +9 -4
- package/lib/module/components/Poll/components/CreatePollOptions.js.map +1 -1
- package/lib/module/components/Poll/components/MultipleAnswersField.js +2 -2
- package/lib/module/components/Poll/components/MultipleAnswersField.js.map +1 -1
- package/lib/module/components/Poll/components/MultipleVotesSettings.js +4 -4
- package/lib/module/components/Poll/components/MultipleVotesSettings.js.map +1 -1
- package/lib/module/components/Poll/components/NameField.js +2 -2
- package/lib/module/components/Poll/components/NameField.js.map +1 -1
- package/lib/module/components/Poll/components/PollAnswersList.js +10 -10
- package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -1
- package/lib/module/components/Poll/components/PollButtons.js +19 -15
- package/lib/module/components/Poll/components/PollButtons.js.map +1 -1
- package/lib/module/components/Poll/components/PollInputDialog.js +2 -2
- package/lib/module/components/Poll/components/PollInputDialog.js.map +1 -1
- package/lib/module/components/Poll/components/PollModalHeader.js +1 -1
- package/lib/module/components/Poll/components/PollModalHeader.js.map +1 -1
- package/lib/module/components/Poll/components/PollOption.js +6 -4
- package/lib/module/components/Poll/components/PollOption.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +4 -2
- package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResultItem.js +7 -5
- package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResults.js +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollVote.js +6 -6
- package/lib/module/components/Poll/components/PollResults/PollVote.js.map +1 -1
- package/lib/module/components/Poll/contexts/PollUIStateContext.js +2 -2
- package/lib/module/components/Poll/contexts/PollUIStateContext.js.map +1 -1
- package/lib/module/components/Poll/hooks/useEndVote.js +2 -2
- package/lib/module/components/Poll/hooks/useEndVote.js.map +1 -1
- package/lib/module/components/Poll/hooks/usePollAnswersPagination.js +8 -7
- package/lib/module/components/Poll/hooks/usePollAnswersPagination.js.map +1 -1
- package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js +14 -12
- package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -1
- package/lib/module/components/Poll/hooks/usePollState.js +21 -18
- package/lib/module/components/Poll/hooks/usePollState.js.map +1 -1
- package/lib/module/components/Reply/Reply.js +10 -9
- package/lib/module/components/Reply/Reply.js.map +1 -1
- package/lib/module/components/Thread/Thread.js +77 -104
- package/lib/module/components/Thread/Thread.js.map +1 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js +26 -46
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadList.js +17 -18
- package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItem.js +20 -15
- package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js +1 -1
- package/lib/module/components/ThreadList/ThreadListItemMessagePreview.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListUnreadBanner.js +23 -20
- package/lib/module/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js +15 -8
- package/lib/module/components/ThreadList/ThreadMessagePreviewDeliveryStatus.js.map +1 -1
- package/lib/module/components/UIComponents/BottomSheetModal.js +2 -2
- package/lib/module/components/UIComponents/BottomSheetModal.js.map +1 -1
- package/lib/module/components/UIComponents/SearchInput.js +2 -2
- package/lib/module/components/UIComponents/SearchInput.js.map +1 -1
- package/lib/module/components/index.js +235 -44
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/ui/Avatar/Avatar.js +1 -1
- package/lib/module/components/ui/Avatar/Avatar.js.map +1 -1
- package/lib/module/components/ui/Avatar/ChannelAvatar.js +12 -4
- package/lib/module/components/ui/Avatar/ChannelAvatar.js.map +1 -1
- package/lib/module/contexts/channelAddMembersContext/ChannelAddMembersContext.js +2 -1
- package/lib/module/contexts/channelAddMembersContext/ChannelAddMembersContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js +4 -3
- package/lib/module/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.js.map +1 -1
- package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js +4 -3
- package/lib/module/contexts/channelMediaListContext/ChannelMediaListContext.js.map +1 -1
- package/lib/module/contexts/channelMemberListContext/ChannelMemberListContext.js +4 -3
- package/lib/module/contexts/channelMemberListContext/ChannelMemberListContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
- package/lib/module/contexts/componentsContext/defaultComponents.js +0 -2
- package/lib/module/contexts/componentsContext/defaultComponents.js.map +1 -1
- package/lib/module/contexts/index.js +11 -33
- package/lib/module/contexts/index.js.map +1 -1
- package/lib/module/contexts/liveLocationManagerContext/LiveLocationManagerContext.js +2 -1
- package/lib/module/contexts/liveLocationManagerContext/LiveLocationManagerContext.js.map +1 -1
- package/lib/module/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js +5 -6
- package/lib/module/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.js.map +1 -1
- package/lib/module/contexts/messageComposerContext/MessageComposerContext.js +49 -10
- package/lib/module/contexts/messageComposerContext/MessageComposerContext.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +23 -130
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +2 -8
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageComposer.js +1 -5
- package/lib/module/contexts/messageInputContext/hooks/useMessageComposer.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js +3 -4
- package/lib/module/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.js.map +1 -1
- package/lib/module/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js +16 -0
- package/lib/module/contexts/messageInputContext/hooks/usePendingUploadsEnabled.js.map +1 -0
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js +1 -1
- package/lib/module/contexts/overlayContext/MessageOverlayHostLayer.js.map +1 -1
- package/lib/module/contexts/threadContext/ThreadContext.js +6 -10
- package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/module/contexts/threadsContext/ThreadsContext.js.map +1 -1
- package/lib/module/contexts/translationContext/TranslationContext.js +4 -6
- package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
- package/lib/module/contexts/translationContext/index.js +0 -11
- package/lib/module/contexts/translationContext/index.js.map +1 -1
- package/lib/module/hooks/actions/useChannelActionItems.js +21 -21
- package/lib/module/hooks/actions/useChannelActionItems.js.map +1 -1
- package/lib/module/hooks/actions/useChannelActions.js +52 -38
- package/lib/module/hooks/actions/useChannelActions.js.map +1 -1
- package/lib/module/hooks/actions/useChannelMemberActionItems.js +10 -10
- package/lib/module/hooks/actions/useChannelMemberActionItems.js.map +1 -1
- package/lib/module/hooks/actions/useUserActions.js +15 -11
- package/lib/module/hooks/actions/useUserActions.js.map +1 -1
- package/lib/module/hooks/index.js +33 -11
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/hooks/messagePreview/useGroupedAttachments.js.map +1 -1
- package/lib/module/hooks/messagePreview/useMessageDeliveryStatus.js +26 -52
- package/lib/module/hooks/messagePreview/useMessageDeliveryStatus.js.map +1 -1
- package/lib/module/hooks/messagePreview/useMessagePreviewText.js +34 -22
- package/lib/module/hooks/messagePreview/useMessagePreviewText.js.map +1 -1
- package/lib/module/hooks/useAudioPlayer.js +3 -3
- package/lib/module/hooks/useAudioPlayer.js.map +1 -1
- package/lib/module/hooks/useChannel.js +16 -0
- package/lib/module/hooks/useChannel.js.map +1 -0
- package/lib/module/hooks/useChannelImage.js +8 -10
- package/lib/module/hooks/useChannelImage.js.map +1 -1
- package/lib/module/hooks/useChannelMemberCount.js +6 -11
- package/lib/module/hooks/useChannelMemberCount.js.map +1 -1
- package/lib/module/hooks/useChannelMembershipState.js +6 -8
- package/lib/module/hooks/useChannelMembershipState.js.map +1 -1
- package/lib/module/hooks/useChannelMuteActive.js +3 -6
- package/lib/module/hooks/useChannelMuteActive.js.map +1 -1
- package/lib/module/hooks/useChannelName.js +8 -10
- package/lib/module/hooks/useChannelName.js.map +1 -1
- package/lib/module/hooks/useChannelOwnCapabilities.js +6 -11
- package/lib/module/hooks/useChannelOwnCapabilities.js.map +1 -1
- package/lib/module/hooks/useIsDirectChat.js +9 -3
- package/lib/module/hooks/useIsDirectChat.js.map +1 -1
- package/lib/module/hooks/useIsTargetedMessage.js +20 -0
- package/lib/module/hooks/useIsTargetedMessage.js.map +1 -0
- package/lib/module/hooks/useLoadingImage.js +5 -5
- package/lib/module/hooks/useLoadingImage.js.map +1 -1
- package/lib/module/hooks/useMessagePaginator.js +15 -0
- package/lib/module/hooks/useMessagePaginator.js.map +1 -0
- package/lib/module/hooks/usePrunableMessageList.js +17 -16
- package/lib/module/hooks/usePrunableMessageList.js.map +1 -1
- package/lib/module/hooks/useQueryReminders.js +7 -6
- package/lib/module/hooks/useQueryReminders.js.map +1 -1
- package/lib/module/hooks/useStreami18n.js +13 -44
- package/lib/module/hooks/useStreami18n.js.map +1 -1
- package/lib/module/hooks/useTranslatedMessage.js +8 -4
- package/lib/module/hooks/useTranslatedMessage.js.map +1 -1
- package/lib/module/i18n/index.js +37 -0
- package/lib/module/i18n/index.js.map +1 -0
- package/lib/module/i18n/keys.js +2 -0
- package/lib/module/i18n/keys.js.map +1 -0
- package/lib/module/i18n/runtimeDefaults.js +103 -0
- package/lib/module/i18n/runtimeDefaults.js.map +1 -0
- package/lib/module/i18n/types.js.map +1 -0
- package/lib/module/i18n/utils.js +72 -0
- package/lib/module/i18n/utils.js.map +1 -0
- package/lib/module/index.js +16 -101
- package/lib/module/index.js.map +1 -1
- package/lib/module/middlewares/attachments.js +1 -80
- package/lib/module/middlewares/attachments.js.map +1 -1
- package/lib/module/mock-builders/DB/mock.js +5 -4
- package/lib/module/mock-builders/DB/mock.js.map +1 -1
- package/lib/module/mock-builders/api/channelMocks.js +38 -35
- package/lib/module/mock-builders/api/channelMocks.js.map +1 -1
- package/lib/module/mock-builders/api/initiateClientWithChannels.js +6 -1
- package/lib/module/mock-builders/api/initiateClientWithChannels.js.map +1 -1
- package/lib/module/mock-builders/api/queryMembers.js +15 -14
- package/lib/module/mock-builders/api/queryMembers.js.map +1 -1
- package/lib/module/mock-builders/api/useMockedApis.js +31 -1
- package/lib/module/mock-builders/api/useMockedApis.js.map +1 -1
- package/lib/module/mock-builders/attachments.js +5 -0
- package/lib/module/mock-builders/attachments.js.map +1 -1
- package/lib/module/mock-builders/event/connectionChanged.js +13 -6
- package/lib/module/mock-builders/event/connectionChanged.js.map +1 -1
- package/lib/module/mock-builders/event/connectionRecovered.js.map +1 -1
- package/lib/module/mock-builders/event/messageDeleted.js +0 -1
- package/lib/module/mock-builders/event/messageDeleted.js.map +1 -1
- package/lib/module/mock-builders/event/messageRead.js +2 -1
- package/lib/module/mock-builders/event/messageRead.js.map +1 -1
- package/lib/module/mock-builders/event/messageUpdated.js +0 -1
- package/lib/module/mock-builders/event/messageUpdated.js.map +1 -1
- package/lib/module/mock-builders/event/notificationChannelMutesUpdated.js +1 -3
- package/lib/module/mock-builders/event/notificationChannelMutesUpdated.js.map +1 -1
- package/lib/module/mock-builders/event/notificationMarkUnread.js +2 -1
- package/lib/module/mock-builders/event/notificationMarkUnread.js.map +1 -1
- package/lib/module/mock-builders/event/notificationMutesUpdated.js +2 -1
- package/lib/module/mock-builders/event/notificationMutesUpdated.js.map +1 -1
- package/lib/module/mock-builders/event/typing.js +1 -3
- package/lib/module/mock-builders/event/typing.js.map +1 -1
- package/lib/module/mock-builders/event/userPresence.js +1 -3
- package/lib/module/mock-builders/event/userPresence.js.map +1 -1
- package/lib/module/mock-builders/event/userUpdated.js +1 -3
- package/lib/module/mock-builders/event/userUpdated.js.map +1 -1
- package/lib/module/mock-builders/event/utils.js +18 -0
- package/lib/module/mock-builders/event/utils.js.map +1 -0
- package/lib/module/mock-builders/generator/attachment.js +11 -3
- package/lib/module/mock-builders/generator/attachment.js.map +1 -1
- package/lib/module/mock-builders/generator/channel.js +5 -4
- package/lib/module/mock-builders/generator/channel.js.map +1 -1
- package/lib/module/mock-builders/generator/channelState.js +53 -0
- package/lib/module/mock-builders/generator/channelState.js.map +1 -0
- package/lib/module/mock-builders/generator/message.js +15 -8
- package/lib/module/mock-builders/generator/message.js.map +1 -1
- package/lib/module/mock-builders/generator/reaction.js +2 -1
- package/lib/module/mock-builders/generator/reaction.js.map +1 -1
- package/lib/module/mock-builders/generator/time.js +13 -0
- package/lib/module/mock-builders/generator/time.js.map +1 -0
- package/lib/module/mock-builders/generator/user.js +3 -2
- package/lib/module/mock-builders/generator/user.js.map +1 -1
- package/lib/module/mock-builders/mock.js +5 -3
- package/lib/module/mock-builders/mock.js.map +1 -1
- package/lib/module/state-store/attachment-picker-store.js +2 -2
- package/lib/module/state-store/attachment-picker-store.js.map +1 -1
- package/lib/module/state-store/audio-player-pool.js +2 -2
- package/lib/module/state-store/audio-player-pool.js.map +1 -1
- package/lib/module/state-store/audio-player.js +2 -2
- package/lib/module/state-store/audio-player.js.map +1 -1
- package/lib/module/state-store/audio-recorder-manager.js +2 -2
- package/lib/module/state-store/audio-recorder-manager.js.map +1 -1
- package/lib/module/state-store/edit-channel-details-store.js +5 -5
- package/lib/module/state-store/edit-channel-details-store.js.map +1 -1
- package/lib/module/state-store/image-gallery-state-store.js +5 -4
- package/lib/module/state-store/image-gallery-state-store.js.map +1 -1
- package/lib/module/state-store/in-app-notifications-store.js +2 -2
- package/lib/module/state-store/in-app-notifications-store.js.map +1 -1
- package/lib/module/state-store/message-input-height-store.js +2 -2
- package/lib/module/state-store/message-input-height-store.js.map +1 -1
- package/lib/module/state-store/message-overlay-store.js +4 -4
- package/lib/module/state-store/message-overlay-store.js.map +1 -1
- package/lib/module/state-store/selection-store.js +2 -2
- package/lib/module/state-store/selection-store.js.map +1 -1
- package/lib/module/state-store/signal-store.js +2 -2
- package/lib/module/state-store/signal-store.js.map +1 -1
- package/lib/module/state-store/video-player-pool.js +2 -2
- package/lib/module/state-store/video-player-pool.js.map +1 -1
- package/lib/module/state-store/video-player.js +2 -2
- package/lib/module/state-store/video-player.js.map +1 -1
- package/lib/module/store/OfflineDB.js +11 -13
- package/lib/module/store/OfflineDB.js.map +1 -1
- package/lib/module/store/SqliteClient.js +1 -1
- package/lib/module/store/apis/channelExists.js +1 -1
- package/lib/module/store/apis/channelExists.js.map +1 -1
- package/lib/module/store/apis/deleteMessagesForChannel.js +2 -1
- package/lib/module/store/apis/deleteMessagesForChannel.js.map +1 -1
- package/lib/module/store/apis/getAppSettings.js +3 -3
- package/lib/module/store/apis/getAppSettings.js.map +1 -1
- package/lib/module/store/apis/getChannelActiveLocations.js.map +1 -1
- package/lib/module/store/apis/getChannelMessages.js +3 -3
- package/lib/module/store/apis/getChannelMessages.js.map +1 -1
- package/lib/module/store/apis/getChannels.js +7 -6
- package/lib/module/store/apis/getChannels.js.map +1 -1
- package/lib/module/store/apis/getChannelsForFilterSort.js +18 -10
- package/lib/module/store/apis/getChannelsForFilterSort.js.map +1 -1
- package/lib/module/store/apis/getDraft.js +1 -1
- package/lib/module/store/apis/getDraft.js.map +1 -1
- package/lib/module/store/apis/getDraftsForChannels.js +2 -2
- package/lib/module/store/apis/getDraftsForChannels.js.map +1 -1
- package/lib/module/store/apis/getLastSyncedAt.js +3 -3
- package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
- package/lib/module/store/apis/getReads.js.map +1 -1
- package/lib/module/store/apis/index.js +0 -11
- package/lib/module/store/apis/index.js.map +1 -1
- package/lib/module/store/apis/insertReaction.js +6 -2
- package/lib/module/store/apis/insertReaction.js.map +1 -1
- package/lib/module/store/apis/queries/selectActiveLocationsForChannels.js +2 -1
- package/lib/module/store/apis/queries/selectActiveLocationsForChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectChannelQueryForFilterSort.js +56 -0
- package/lib/module/store/apis/queries/selectChannelQueryForFilterSort.js.map +1 -0
- package/lib/module/store/apis/queries/selectDraftMessageFromDraftForChannels.js +1 -1
- package/lib/module/store/apis/queries/selectDraftMessageFromDraftForChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectMembersForChannels.js +1 -1
- package/lib/module/store/apis/queries/selectMembersForChannels.js.map +1 -1
- package/lib/module/store/apis/queries/selectReactionsForMessages.js +2 -2
- package/lib/module/store/apis/queries/selectReactionsForMessages.js.map +1 -1
- package/lib/module/store/apis/softDeleteMessage.js +2 -1
- package/lib/module/store/apis/softDeleteMessage.js.map +1 -1
- package/lib/module/store/apis/updateReaction.js +6 -1
- package/lib/module/store/apis/updateReaction.js.map +1 -1
- package/lib/module/store/apis/upsertAppSettings.js +3 -3
- package/lib/module/store/apis/upsertAppSettings.js.map +1 -1
- package/lib/module/store/apis/upsertChannels.js +13 -6
- package/lib/module/store/apis/upsertChannels.js.map +1 -1
- package/lib/module/store/apis/upsertCidsForQuery.js +6 -2
- package/lib/module/store/apis/upsertCidsForQuery.js.map +1 -1
- package/lib/module/store/apis/upsertDraft.js.map +1 -1
- package/lib/module/store/apis/upsertUserSyncStatus.js +3 -3
- package/lib/module/store/apis/upsertUserSyncStatus.js.map +1 -1
- package/lib/module/store/mappers/mapChannelDataToStorable.js +8 -11
- package/lib/module/store/mappers/mapChannelDataToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapChannelToStorable.js +8 -11
- package/lib/module/store/mappers/mapChannelToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapDraftMessageToStorable.js +1 -1
- package/lib/module/store/mappers/mapDraftMessageToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapDraftToStorable.js +2 -2
- package/lib/module/store/mappers/mapDraftToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapMemberToStorable.js +7 -7
- package/lib/module/store/mappers/mapMemberToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapMessageToStorable.js +6 -6
- package/lib/module/store/mappers/mapMessageToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapPollToStorable.js +4 -4
- package/lib/module/store/mappers/mapPollToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapReactionToStorable.js +3 -3
- package/lib/module/store/mappers/mapReactionToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapReadToStorable.js +3 -3
- package/lib/module/store/mappers/mapReadToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapReminderToStorable.js +4 -4
- package/lib/module/store/mappers/mapReminderToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapSharedLocationToStorable.js +4 -4
- package/lib/module/store/mappers/mapSharedLocationToStorable.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToChannel.js +6 -5
- package/lib/module/store/mappers/mapStorableToChannel.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToDraft.js +4 -3
- package/lib/module/store/mappers/mapStorableToDraft.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToMember.js +12 -9
- package/lib/module/store/mappers/mapStorableToMember.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToMessage.js +7 -6
- package/lib/module/store/mappers/mapStorableToMessage.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToPoll.js +9 -6
- package/lib/module/store/mappers/mapStorableToPoll.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToReaction.js +3 -2
- package/lib/module/store/mappers/mapStorableToReaction.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToRead.js +4 -3
- package/lib/module/store/mappers/mapStorableToRead.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToReminder.js +4 -3
- package/lib/module/store/mappers/mapStorableToReminder.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToSharedLocation.js +4 -3
- package/lib/module/store/mappers/mapStorableToSharedLocation.js.map +1 -1
- package/lib/module/store/mappers/mapStorableToTimestamp.js +13 -0
- package/lib/module/store/mappers/mapStorableToTimestamp.js.map +1 -0
- package/lib/module/store/mappers/mapStorableToUser.js +5 -4
- package/lib/module/store/mappers/mapStorableToUser.js.map +1 -1
- package/lib/module/store/mappers/mapTimestampToStorable.js +7 -0
- package/lib/module/store/mappers/mapTimestampToStorable.js.map +1 -0
- package/lib/module/store/mappers/mapUserToStorable.js +4 -3
- package/lib/module/store/mappers/mapUserToStorable.js.map +1 -1
- package/lib/module/store/schema.js +33 -32
- package/lib/module/store/schema.js.map +1 -1
- package/lib/module/store/sqlite-utils/createUpsertQuery.js +17 -3
- package/lib/module/store/sqlite-utils/createUpsertQuery.js.map +1 -1
- package/lib/module/store/sqlite-utils/createUpsertQueryIfParentExists.js +15 -0
- package/lib/module/store/sqlite-utils/createUpsertQueryIfParentExists.js.map +1 -0
- package/lib/module/types/types.js.map +1 -1
- package/lib/module/utils/attachmentUrls.js +15 -0
- package/lib/module/utils/attachmentUrls.js.map +1 -0
- package/lib/module/utils/getUrlOfImageAttachment.js +6 -1
- package/lib/module/utils/getUrlOfImageAttachment.js.map +1 -1
- package/lib/module/utils/i18n/Streami18n.js +43 -408
- package/lib/module/utils/i18n/Streami18n.js.map +1 -1
- package/lib/module/utils/installNativeMultipartAdapter.js +25 -25
- package/lib/module/utils/installNativeMultipartAdapter.js.map +1 -1
- package/lib/module/utils/removeReservedFields.js.map +1 -1
- package/lib/module/utils/utils.js +16 -54
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/a11y/hooks/useA11yLabel.d.ts.map +1 -1
- package/lib/typescript/components/AITypingIndicatorView/hooks/useAIState.d.ts +2 -8
- package/lib/typescript/components/AITypingIndicatorView/hooks/useAIState.d.ts.map +1 -1
- package/lib/typescript/components/Accessibility/NotificationAnnouncer.d.ts.map +1 -1
- package/lib/typescript/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts +2 -2
- package/lib/typescript/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Attachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts +2 -1
- package/lib/typescript/components/Attachment/Audio/AudioAttachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
- package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/FilePreview.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/Giphy/Giphy.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +1 -1
- package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/utils/openUrlSafely.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.d.ts.map +1 -1
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerContent.d.ts.map +1 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteInput.d.ts.map +1 -1
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts +2 -3
- package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.d.ts.map +1 -1
- package/lib/typescript/components/AutoCompleteInput/mentionItems/MentionRoleItem.d.ts.map +1 -1
- package/lib/typescript/components/Channel/Channel.d.ts +13 -87
- package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
- package/lib/typescript/components/Channel/ChannelShell.d.ts +52 -0
- package/lib/typescript/components/Channel/ChannelShell.d.ts.map +1 -0
- package/lib/typescript/components/Channel/hooks/useChannelLifecycle.d.ts +21 -0
- package/lib/typescript/components/Channel/hooks/useChannelLifecycle.d.ts.map +1 -0
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateOwnCapabilitiesContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +1 -35
- package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useSupersededChannelSwap.d.ts +8 -0
- package/lib/typescript/components/Channel/hooks/useSupersededChannelSwap.d.ts.map +1 -0
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsMemberSection.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelDetailsNavHeader.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/ChannelEditDetailsFormHeader.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/members/AddMemberSearchResultItem.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/members/ChannelAddMembersFormContent.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/members/ChannelMemberList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/navigation-section/FileAttachmentList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaItem.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/navigation-section/MediaList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/components/navigation-section/PinnedMessageList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/members/useMemberRoles.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useEditChannelImage.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useFileAttachmentListSections.d.ts.map +1 -1
- package/lib/typescript/components/ChannelDetails/hooks/useUserActivityStatus.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelList.d.ts +7 -129
- package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts +37 -2
- package/lib/typescript/components/ChannelList/ChannelListView.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/index.d.ts +0 -1
- package/lib/typescript/components/ChannelList/hooks/index.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useChannelMembersState.d.ts +14 -3
- package/lib/typescript/components/ChannelList/hooks/useChannelMembersState.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useChannelOnlineMemberCount.d.ts +5 -1
- package/lib/typescript/components/ChannelList/hooks/useChannelOnlineMemberCount.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts +1 -1
- package/lib/typescript/components/ChannelList/hooks/useCreateChannelsContext.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useMutedChannels.d.ts +5 -3
- package/lib/typescript/components/ChannelList/hooks/useMutedChannels.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/useMutedUsers.d.ts +3 -6
- package/lib/typescript/components/ChannelList/hooks/useMutedUsers.d.ts.map +1 -1
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts +8 -19
- package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelDetailsBottomSheet.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts +1 -2
- package/lib/typescript/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewMessage.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewStatus.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewTypingIndicator.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewUnreadCount.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/ChannelPreviewView.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewData.d.ts +2 -2
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewData.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayName.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewPollLabel.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useChannelTypingState.d.ts +8 -2
- package/lib/typescript/components/ChannelPreview/hooks/useChannelTypingState.d.ts.map +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useIsChannelMuted.d.ts +6 -6
- package/lib/typescript/components/ChannelPreview/hooks/useIsChannelMuted.d.ts.map +1 -1
- package/lib/typescript/components/Chat/Chat.d.ts +11 -42
- package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/index.d.ts +3 -3
- package/lib/typescript/components/Chat/hooks/index.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/useAppSettingsGetter.d.ts +16 -0
- package/lib/typescript/components/Chat/hooks/useAppSettingsGetter.d.ts.map +1 -0
- package/lib/typescript/components/Chat/hooks/useClientUserId.d.ts +14 -0
- package/lib/typescript/components/Chat/hooks/useClientUserId.d.ts.map +1 -0
- package/lib/typescript/components/Chat/hooks/useConnectionLifecycle.d.ts +42 -0
- package/lib/typescript/components/Chat/hooks/useConnectionLifecycle.d.ts.map +1 -0
- package/lib/typescript/components/Chat/hooks/useCreateChatClient.d.ts +7 -3
- package/lib/typescript/components/Chat/hooks/useCreateChatClient.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
- package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts +3 -2
- package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts.map +1 -1
- package/lib/typescript/components/Chat/hooks/useNetworkConnectionState.d.ts +23 -0
- package/lib/typescript/components/Chat/hooks/useNetworkConnectionState.d.ts.map +1 -0
- package/lib/typescript/components/Chat/hooks/usePendingUploadsDefault.d.ts +22 -0
- package/lib/typescript/components/Chat/hooks/usePendingUploadsDefault.d.ts.map +1 -0
- package/lib/typescript/components/Chat/hooks/useWSConnectionState.d.ts +54 -0
- package/lib/typescript/components/Chat/hooks/useWSConnectionState.d.ts.map +1 -0
- package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
- package/lib/typescript/components/Indicators/EmptyStateIndicator.d.ts.map +1 -1
- package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts +1 -1
- package/lib/typescript/components/Indicators/LoadingErrorIndicator.d.ts.map +1 -1
- package/lib/typescript/components/Indicators/LoadingIndicator.d.ts.map +1 -1
- package/lib/typescript/components/Message/Message.d.ts +5 -7
- package/lib/typescript/components/Message/Message.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/Headers/MessagePinnedHeader.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/Headers/MessageReminderHeader.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts +2 -2
- package/lib/typescript/components/Message/MessageItemView/Headers/SentToChannelHeader.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts +2 -2
- package/lib/typescript/components/Message/MessageItemView/MessageBounce.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageContent.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageDeleted.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts +1 -2
- package/lib/typescript/components/Message/MessageItemView/MessageFooter.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageHeader.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts +2 -1
- package/lib/typescript/components/Message/MessageItemView/MessageItemView.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageReplies.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts +6 -1
- package/lib/typescript/components/Message/MessageItemView/MessageStatus.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts +1 -1
- package/lib/typescript/components/Message/MessageItemView/MessageWrapper.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageActionHandlers.d.ts +30 -0
- package/lib/typescript/components/Message/hooks/useCreateMessageActionHandlers.d.ts.map +1 -0
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useIsMessageDeliveredToOthers.d.ts +15 -0
- package/lib/typescript/components/Message/hooks/useIsMessageDeliveredToOthers.d.ts.map +1 -0
- package/lib/typescript/components/Message/hooks/useIsMessageReadByOthers.d.ts +18 -0
- package/lib/typescript/components/Message/hooks/useIsMessageReadByOthers.d.ts.map +1 -0
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +7 -22
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +8 -13
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageData.d.ts +2 -2
- package/lib/typescript/components/Message/hooks/useMessageData.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageDeliveryData.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useMessageDeliveryData.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageOperations.d.ts +22 -0
- package/lib/typescript/components/Message/hooks/useMessageOperations.d.ts.map +1 -0
- package/lib/typescript/components/Message/hooks/useMessageReadData.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useMessageReadData.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useProcessReactions.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useUserMuteActive.d.ts +11 -1
- package/lib/typescript/components/Message/hooks/useUserMuteActive.d.ts.map +1 -1
- package/lib/typescript/components/Message/utils/messageActions.d.ts +2 -2
- package/lib/typescript/components/Message/utils/messageActions.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts +7 -3
- package/lib/typescript/components/MessageInput/MessageComposer.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/SendMessageDisallowedIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts +1 -4
- package/lib/typescript/components/MessageInput/ShowThreadMessageInChannelButton.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/InputButtons/AttachButton.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/InputButtons/index.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts +4 -2
- package/lib/typescript/components/MessageInput/components/OutputButtons/index.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/hooks/useAudioRecorder.d.ts.map +1 -1
- package/lib/typescript/components/MessageInput/utils/messageComposerSelectors.d.ts +2 -2
- package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts +1 -1
- package/lib/typescript/components/MessageList/InlineLoadingMoreIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts +1 -1
- package/lib/typescript/components/MessageList/InlineLoadingMoreRecentIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/InlineUnreadIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageFlashList.d.ts +15 -6
- package/lib/typescript/components/MessageList/MessageFlashList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageList.d.ts +16 -6
- package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageSystem.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/NetworkDownIndicator.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/ScrollToBottomButton.d.ts +2 -3
- package/lib/typescript/components/MessageList/ScrollToBottomButton.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts +5 -3
- package/lib/typescript/components/MessageList/TypingIndicatorContainer.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/UnreadMessagesNotification.d.ts +7 -6
- package/lib/typescript/components/MessageList/UnreadMessagesNotification.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useMarkRead.d.ts +16 -0
- package/lib/typescript/components/MessageList/hooks/useMarkRead.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useMessageDateSeparator.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +11 -5
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useMessageListFocus.d.ts +18 -0
- package/lib/typescript/components/MessageList/hooks/useMessageListFocus.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useMessageListLiveState.d.ts +24 -0
- package/lib/typescript/components/MessageList/hooks/useMessageListLiveState.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useMessageListPagination.d.ts +18 -0
- package/lib/typescript/components/MessageList/hooks/useMessageListPagination.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useOwnUnreadCount.d.ts +7 -0
- package/lib/typescript/components/MessageList/hooks/useOwnUnreadCount.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useScrollToBottomAccessibilityAction.d.ts +2 -3
- package/lib/typescript/components/MessageList/hooks/useScrollToBottomAccessibilityAction.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useStickyHeaderDate.d.ts +13 -0
- package/lib/typescript/components/MessageList/hooks/useStickyHeaderDate.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/hooks/useTypingString.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useTypingUsers.d.ts +13 -0
- package/lib/typescript/components/MessageList/hooks/useTypingUsers.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useUnreadNotificationVisibility.d.ts +25 -0
- package/lib/typescript/components/MessageList/hooks/useUnreadNotificationVisibility.d.ts.map +1 -0
- package/lib/typescript/components/MessageList/utils/buildMessageListWithNeighbours.d.ts +5 -0
- package/lib/typescript/components/MessageList/utils/buildMessageListWithNeighbours.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts +6 -5
- package/lib/typescript/components/MessageList/utils/filterTypingUsers.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/MessageActionListWithActions.d.ts +7 -0
- package/lib/typescript/components/MessageMenu/MessageActionListWithActions.d.ts.map +1 -0
- package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +1 -1
- package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts +2 -2
- package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts.map +1 -1
- package/lib/typescript/components/Notifications/hooks/useNotificationTarget.d.ts.map +1 -1
- package/lib/typescript/components/Notifications/notificationTranslations.d.ts +2 -2
- package/lib/typescript/components/Notifications/notificationTranslations.d.ts.map +1 -1
- package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -1
- package/lib/typescript/components/Poll/Poll.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/Button.d.ts +2 -2
- package/lib/typescript/components/Poll/components/Button.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts +2 -1
- package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/MultipleAnswersField.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/MultipleVotesSettings.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +3 -3
- package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollButtons.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollOption.d.ts +1 -1
- package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +2 -2
- package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts +4 -4
- package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollVote.d.ts +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollVote.d.ts.map +1 -1
- package/lib/typescript/components/Poll/contexts/PollUIStateContext.d.ts +1 -1
- package/lib/typescript/components/Poll/contexts/PollUIStateContext.d.ts.map +1 -1
- package/lib/typescript/components/Poll/hooks/useEndVote.d.ts +1 -1
- package/lib/typescript/components/Poll/hooks/useEndVote.d.ts.map +1 -1
- package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts +2 -2
- package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts.map +1 -1
- package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts +4 -4
- package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts.map +1 -1
- package/lib/typescript/components/Poll/hooks/usePollState.d.ts +7 -7
- package/lib/typescript/components/Poll/hooks/usePollState.d.ts.map +1 -1
- package/lib/typescript/components/Reply/Reply.d.ts +3 -2
- package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
- package/lib/typescript/components/Thread/Thread.d.ts +24 -38
- package/lib/typescript/components/Thread/Thread.d.ts.map +1 -1
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts +8 -1
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListUnreadBanner.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadMessagePreviewDeliveryStatus.d.ts.map +1 -1
- package/lib/typescript/components/UIComponents/BottomSheetModal.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +5 -8
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/components/ui/Avatar/ChannelAvatar.d.ts.map +1 -1
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +1 -106
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +5 -34
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
- package/lib/typescript/contexts/chatContext/ChatContext.d.ts +9 -34
- package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts +0 -4
- package/lib/typescript/contexts/componentsContext/defaultComponents.d.ts.map +1 -1
- package/lib/typescript/contexts/index.d.ts +1 -3
- package/lib/typescript/contexts/index.d.ts.map +1 -1
- package/lib/typescript/contexts/liveLocationManagerContext/LiveLocationManagerContext.d.ts.map +1 -1
- package/lib/typescript/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.d.ts.map +1 -1
- package/lib/typescript/contexts/messageComposerContext/MessageComposerContext.d.ts +8 -5
- package/lib/typescript/contexts/messageComposerContext/MessageComposerContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +13 -17
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +1 -20
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useActiveCommand.d.ts +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useActiveCommand.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -2
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageComposer.d.ts +4 -0
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageComposer.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/hooks/usePendingUploadsEnabled.d.ts +11 -0
- package/lib/typescript/contexts/messageInputContext/hooks/usePendingUploadsEnabled.d.ts.map +1 -0
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +10 -25
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
- package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts +1 -1
- package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts.map +1 -1
- package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +8 -28
- package/lib/typescript/contexts/threadContext/ThreadContext.d.ts.map +1 -1
- package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts +2 -3
- package/lib/typescript/contexts/threadsContext/ThreadsContext.d.ts.map +1 -1
- package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +11 -3
- package/lib/typescript/contexts/translationContext/TranslationContext.d.ts.map +1 -1
- package/lib/typescript/contexts/translationContext/index.d.ts +0 -1
- package/lib/typescript/contexts/translationContext/index.d.ts.map +1 -1
- package/lib/typescript/contexts/translationContext/types.d.ts +20 -8
- package/lib/typescript/contexts/translationContext/types.d.ts.map +1 -1
- package/lib/typescript/hooks/actions/useChannelActionItems.d.ts.map +1 -1
- package/lib/typescript/hooks/actions/useChannelActions.d.ts.map +1 -1
- package/lib/typescript/hooks/actions/useChannelMemberActionItems.d.ts.map +1 -1
- package/lib/typescript/hooks/actions/useUserActions.d.ts.map +1 -1
- package/lib/typescript/hooks/index.d.ts +3 -1
- package/lib/typescript/hooks/index.d.ts.map +1 -1
- package/lib/typescript/hooks/messagePreview/useGroupedAttachments.d.ts +2 -2
- package/lib/typescript/hooks/messagePreview/useGroupedAttachments.d.ts.map +1 -1
- package/lib/typescript/hooks/messagePreview/useMessageDeliveryStatus.d.ts +9 -2
- package/lib/typescript/hooks/messagePreview/useMessageDeliveryStatus.d.ts.map +1 -1
- package/lib/typescript/hooks/messagePreview/useMessagePreviewText.d.ts.map +1 -1
- package/lib/typescript/hooks/useAudioPlayer.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannel.d.ts +11 -0
- package/lib/typescript/hooks/useChannel.d.ts.map +1 -0
- package/lib/typescript/hooks/useChannelImage.d.ts +3 -0
- package/lib/typescript/hooks/useChannelImage.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannelMemberCount.d.ts +4 -0
- package/lib/typescript/hooks/useChannelMemberCount.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannelMembershipState.d.ts +4 -0
- package/lib/typescript/hooks/useChannelMembershipState.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannelMuteActive.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannelName.d.ts +3 -0
- package/lib/typescript/hooks/useChannelName.d.ts.map +1 -1
- package/lib/typescript/hooks/useChannelOwnCapabilities.d.ts +5 -2
- package/lib/typescript/hooks/useChannelOwnCapabilities.d.ts.map +1 -1
- package/lib/typescript/hooks/useIsDirectChat.d.ts.map +1 -1
- package/lib/typescript/hooks/useIsTargetedMessage.d.ts +12 -0
- package/lib/typescript/hooks/useIsTargetedMessage.d.ts.map +1 -0
- package/lib/typescript/hooks/useMessagePaginator.d.ts +6 -0
- package/lib/typescript/hooks/useMessagePaginator.d.ts.map +1 -0
- package/lib/typescript/hooks/usePrunableMessageList.d.ts +18 -6
- package/lib/typescript/hooks/usePrunableMessageList.d.ts.map +1 -1
- package/lib/typescript/hooks/useQueryReminders.d.ts +3 -3
- package/lib/typescript/hooks/useQueryReminders.d.ts.map +1 -1
- package/lib/typescript/hooks/useStateStore.d.ts +1 -1
- package/lib/typescript/hooks/useStateStore.d.ts.map +1 -1
- package/lib/typescript/hooks/useStreami18n.d.ts.map +1 -1
- package/lib/typescript/hooks/useSyncClientEvents.d.ts +5 -5
- package/lib/typescript/hooks/useSyncClientEvents.d.ts.map +1 -1
- package/lib/typescript/hooks/useTranslatedMessage.d.ts +203 -114
- package/lib/typescript/hooks/useTranslatedMessage.d.ts.map +1 -1
- package/lib/typescript/i18n/index.d.ts +5 -0
- package/lib/typescript/i18n/index.d.ts.map +1 -0
- package/lib/typescript/i18n/keys.d.ts +432 -0
- package/lib/typescript/i18n/keys.d.ts.map +1 -0
- package/lib/typescript/i18n/runtimeDefaults.d.ts +135 -0
- package/lib/typescript/i18n/runtimeDefaults.d.ts.map +1 -0
- package/lib/typescript/i18n/types.d.ts +29 -0
- package/lib/typescript/i18n/types.d.ts.map +1 -0
- package/lib/typescript/i18n/utils.d.ts +33 -0
- package/lib/typescript/i18n/utils.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +2 -13
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/middlewares/attachments.d.ts +1 -4
- package/lib/typescript/middlewares/attachments.d.ts.map +1 -1
- package/lib/typescript/state-store/attachment-picker-store.d.ts +1 -1
- package/lib/typescript/state-store/attachment-picker-store.d.ts.map +1 -1
- package/lib/typescript/state-store/audio-player-pool.d.ts +1 -1
- package/lib/typescript/state-store/audio-player-pool.d.ts.map +1 -1
- package/lib/typescript/state-store/audio-player.d.ts +1 -1
- package/lib/typescript/state-store/audio-player.d.ts.map +1 -1
- package/lib/typescript/state-store/audio-recorder-manager.d.ts +1 -1
- package/lib/typescript/state-store/audio-recorder-manager.d.ts.map +1 -1
- package/lib/typescript/state-store/edit-channel-details-store.d.ts +2 -1
- package/lib/typescript/state-store/edit-channel-details-store.d.ts.map +1 -1
- package/lib/typescript/state-store/image-gallery-state-store.d.ts +5 -4
- package/lib/typescript/state-store/image-gallery-state-store.d.ts.map +1 -1
- package/lib/typescript/state-store/in-app-notifications-store.d.ts +2 -1
- package/lib/typescript/state-store/in-app-notifications-store.d.ts.map +1 -1
- package/lib/typescript/state-store/message-input-height-store.d.ts +1 -1
- package/lib/typescript/state-store/message-input-height-store.d.ts.map +1 -1
- package/lib/typescript/state-store/message-overlay-store.d.ts +1 -1
- package/lib/typescript/state-store/message-overlay-store.d.ts.map +1 -1
- package/lib/typescript/state-store/selection-store.d.ts +1 -1
- package/lib/typescript/state-store/selection-store.d.ts.map +1 -1
- package/lib/typescript/state-store/signal-store.d.ts +1 -1
- package/lib/typescript/state-store/signal-store.d.ts.map +1 -1
- package/lib/typescript/state-store/video-player-pool.d.ts +1 -1
- package/lib/typescript/state-store/video-player-pool.d.ts.map +1 -1
- package/lib/typescript/state-store/video-player.d.ts +1 -1
- package/lib/typescript/state-store/video-player.d.ts.map +1 -1
- package/lib/typescript/store/OfflineDB.d.ts +12 -11
- package/lib/typescript/store/OfflineDB.d.ts.map +1 -1
- package/lib/typescript/store/SqliteClient.d.ts +2 -2
- package/lib/typescript/store/SqliteClient.d.ts.map +1 -1
- package/lib/typescript/store/apis/channelExists.d.ts +9 -0
- package/lib/typescript/store/apis/channelExists.d.ts.map +1 -1
- package/lib/typescript/store/apis/deleteMessagesForChannel.d.ts +3 -1
- package/lib/typescript/store/apis/deleteMessagesForChannel.d.ts.map +1 -1
- package/lib/typescript/store/apis/deleteReaction.d.ts +2 -2
- package/lib/typescript/store/apis/deleteReaction.d.ts.map +1 -1
- package/lib/typescript/store/apis/getAppSettings.d.ts +4 -4
- package/lib/typescript/store/apis/getAppSettings.d.ts.map +1 -1
- package/lib/typescript/store/apis/getChannelActiveLocations.d.ts +2 -2
- package/lib/typescript/store/apis/getChannelActiveLocations.d.ts.map +1 -1
- package/lib/typescript/store/apis/getChannelMessages.d.ts +2 -2
- package/lib/typescript/store/apis/getChannelMessages.d.ts.map +1 -1
- package/lib/typescript/store/apis/getChannels.d.ts +5 -5
- package/lib/typescript/store/apis/getChannels.d.ts.map +1 -1
- package/lib/typescript/store/apis/getChannelsForFilterSort.d.ts +8 -7
- package/lib/typescript/store/apis/getChannelsForFilterSort.d.ts.map +1 -1
- package/lib/typescript/store/apis/getDraftsForChannels.d.ts +2 -2
- package/lib/typescript/store/apis/getDraftsForChannels.d.ts.map +1 -1
- package/lib/typescript/store/apis/getLastSyncedAt.d.ts +2 -2
- package/lib/typescript/store/apis/getLastSyncedAt.d.ts.map +1 -1
- package/lib/typescript/store/apis/getReactionsforFilterSort.d.ts +2 -2
- package/lib/typescript/store/apis/getReactionsforFilterSort.d.ts.map +1 -1
- package/lib/typescript/store/apis/getReads.d.ts +2 -2
- package/lib/typescript/store/apis/getReads.d.ts.map +1 -1
- package/lib/typescript/store/apis/index.d.ts +0 -1
- package/lib/typescript/store/apis/index.d.ts.map +1 -1
- package/lib/typescript/store/apis/insertReaction.d.ts.map +1 -1
- package/lib/typescript/store/apis/queries/selectActiveLocationsForChannels.d.ts.map +1 -1
- package/lib/typescript/store/apis/queries/selectChannelQueryForFilterSort.d.ts +24 -0
- package/lib/typescript/store/apis/queries/selectChannelQueryForFilterSort.d.ts.map +1 -0
- package/lib/typescript/store/apis/queries/selectReactionsForMessages.d.ts +2 -2
- package/lib/typescript/store/apis/queries/selectReactionsForMessages.d.ts.map +1 -1
- package/lib/typescript/store/apis/softDeleteMessage.d.ts.map +1 -1
- package/lib/typescript/store/apis/updateReaction.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertAppSettings.d.ts +4 -4
- package/lib/typescript/store/apis/upsertAppSettings.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertChannels.d.ts +2 -2
- package/lib/typescript/store/apis/upsertChannels.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertCidsForQuery.d.ts +4 -3
- package/lib/typescript/store/apis/upsertCidsForQuery.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertDraft.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertLocation.d.ts +2 -2
- package/lib/typescript/store/apis/upsertLocation.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertPoll.d.ts +2 -2
- package/lib/typescript/store/apis/upsertPoll.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertReads.d.ts +2 -2
- package/lib/typescript/store/apis/upsertReads.d.ts.map +1 -1
- package/lib/typescript/store/apis/upsertUserSyncStatus.d.ts +2 -2
- package/lib/typescript/store/apis/upsertUserSyncStatus.d.ts.map +1 -1
- package/lib/typescript/store/apis/utils/convertFilterSortToQuery.d.ts +2 -2
- package/lib/typescript/store/apis/utils/convertFilterSortToQuery.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapChannelDataToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapChannelToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapDraftMessageToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapMessageToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapPollToStorable.d.ts +2 -2
- package/lib/typescript/store/mappers/mapPollToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapReadToStorable.d.ts +2 -2
- package/lib/typescript/store/mappers/mapReadToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapReminderToStorable.d.ts +2 -2
- package/lib/typescript/store/mappers/mapSharedLocationToStorable.d.ts +2 -2
- package/lib/typescript/store/mappers/mapSharedLocationToStorable.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToChannel.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToChannel.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToDraft.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToDraft.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToMember.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToMessage.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToMessage.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToPoll.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToPoll.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToReaction.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToRead.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToRead.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToReminder.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToReminder.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToSharedLocation.d.ts +2 -2
- package/lib/typescript/store/mappers/mapStorableToSharedLocation.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapStorableToTimestamp.d.ts +20 -0
- package/lib/typescript/store/mappers/mapStorableToTimestamp.d.ts.map +1 -0
- package/lib/typescript/store/mappers/mapStorableToUser.d.ts.map +1 -1
- package/lib/typescript/store/mappers/mapTaskToStorable.d.ts +7 -7
- package/lib/typescript/store/mappers/mapTimestampToStorable.d.ts +14 -0
- package/lib/typescript/store/mappers/mapTimestampToStorable.d.ts.map +1 -0
- package/lib/typescript/store/mappers/mapUserToStorable.d.ts.map +1 -1
- package/lib/typescript/store/schema.d.ts +38 -33
- package/lib/typescript/store/schema.d.ts.map +1 -1
- package/lib/typescript/store/sqlite-utils/createUpsertQuery.d.ts +13 -0
- package/lib/typescript/store/sqlite-utils/createUpsertQuery.d.ts.map +1 -1
- package/lib/typescript/store/sqlite-utils/createUpsertQueryIfParentExists.d.ts +40 -0
- package/lib/typescript/store/sqlite-utils/createUpsertQueryIfParentExists.d.ts.map +1 -0
- package/lib/typescript/store/types.d.ts +4 -4
- package/lib/typescript/store/types.d.ts.map +1 -1
- package/lib/typescript/types/react-native-compat.d.ts +2 -2
- package/lib/typescript/types/types.d.ts +11 -6
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/utils/attachmentUrls.d.ts +13 -0
- package/lib/typescript/utils/attachmentUrls.d.ts.map +1 -0
- package/lib/typescript/utils/getUrlOfImageAttachment.d.ts +1 -1
- package/lib/typescript/utils/getUrlOfImageAttachment.d.ts.map +1 -1
- package/lib/typescript/utils/i18n/Streami18n.d.ts +60 -632
- package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
- package/lib/typescript/utils/installNativeMultipartAdapter.d.ts +9 -5
- package/lib/typescript/utils/installNativeMultipartAdapter.d.ts.map +1 -1
- package/lib/typescript/utils/removeReservedFields.d.ts +1 -1
- package/lib/typescript/utils/removeReservedFields.d.ts.map +1 -1
- package/lib/typescript/utils/utils.d.ts +13 -32
- package/lib/typescript/utils/utils.d.ts.map +1 -1
- package/package.json +11 -11
- package/src/__tests__/instanceConfiguration.test.tsx +287 -0
- package/src/__tests__/offline-support/index.test.ts +6 -0
- package/src/__tests__/offline-support/offline-feature.tsx +149 -69
- package/src/__tests__/offline-support/optimistic-update.tsx +702 -132
- package/src/a11y/hooks/useA11yLabel.ts +3 -1
- package/src/components/AITypingIndicatorView/AITypingIndicatorView.tsx +3 -3
- package/src/components/AITypingIndicatorView/hooks/__tests__/useAIState.test.ts +46 -0
- package/src/components/AITypingIndicatorView/hooks/useAIState.ts +8 -49
- package/src/components/Accessibility/NotificationAnnouncer.tsx +15 -5
- package/src/components/Accessibility/hooks/useIncomingMessageAnnouncements.ts +22 -23
- package/src/components/Attachment/Attachment.tsx +10 -6
- package/src/components/Attachment/Audio/AudioAttachment.tsx +10 -10
- package/src/components/Attachment/FileAttachment.tsx +13 -5
- package/src/components/Attachment/FilePreview.tsx +8 -4
- package/src/components/Attachment/Gallery.tsx +17 -5
- package/src/components/Attachment/Giphy/Giphy.tsx +3 -1
- package/src/components/Attachment/UnsupportedAttachment.tsx +2 -2
- package/src/components/Attachment/__tests__/Attachment.test.tsx +84 -13
- package/src/components/Attachment/__tests__/openUrlSafely.test.ts +13 -0
- package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +3 -3
- package/src/components/Attachment/utils/openUrlSafely.ts +7 -1
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentMediaPicker.tsx +5 -2
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/AttachmentPickerItem.tsx +57 -25
- package/src/components/AttachmentPicker/components/AttachmentMediaPicker/__tests__/AttachmentPickerItem.test.tsx +63 -0
- package/src/components/AttachmentPicker/components/AttachmentPickerContent.tsx +24 -16
- package/src/components/AttachmentPicker/components/AttachmentTypePickerButton.tsx +9 -9
- package/src/components/AttachmentPicker/components/__tests__/AttachmentCommandPicker.test.tsx +47 -0
- package/src/components/AutoCompleteInput/AutoCompleteInput.tsx +17 -7
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionCommandIcon.tsx +2 -4
- package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +3 -3
- package/src/components/AutoCompleteInput/__tests__/AutoCompleteInput.test.tsx +12 -3
- package/src/components/AutoCompleteInput/mentionItems/MentionBroadcastItem.tsx +2 -2
- package/src/components/AutoCompleteInput/mentionItems/MentionRoleItem.tsx +3 -1
- package/src/components/AutoCompleteInput/mentionItems/__tests__/MentionItems.test.tsx +5 -5
- package/src/components/Channel/Channel.tsx +60 -1783
- package/src/components/Channel/ChannelShell.tsx +542 -0
- package/src/components/Channel/__tests__/Channel.test.tsx +584 -221
- package/src/components/Channel/__tests__/isAttachmentEqualHandler.test.tsx +7 -2
- package/src/components/Channel/__tests__/ownCapabilities.test.tsx +12 -13
- package/src/components/Channel/__tests__/useCreateChannelContext.test.ts +56 -0
- package/src/components/Channel/hooks/useChannelLifecycle.ts +170 -0
- package/src/components/Channel/hooks/useCreateChannelContext.ts +2 -64
- package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +1 -9
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +2 -20
- package/src/components/Channel/hooks/useCreateOwnCapabilitiesContext.ts +19 -32
- package/src/components/Channel/hooks/useCreateThreadContext.ts +9 -49
- package/src/components/Channel/hooks/useSupersededChannelSwap.ts +25 -0
- package/src/components/ChannelDetails/__tests__/ChannelDetails.test.tsx +3 -2
- package/src/components/ChannelDetails/__tests__/ChannelDetailsActionsSection.test.tsx +15 -10
- package/src/components/ChannelDetails/__tests__/ChannelDetailsEditButton.test.tsx +3 -2
- package/src/components/ChannelDetails/__tests__/ChannelDetailsMemberSection.test.tsx +6 -7
- package/src/components/ChannelDetails/__tests__/ChannelDetailsNavHeader.test.tsx +1 -1
- package/src/components/ChannelDetails/__tests__/ChannelDetailsNavigationSection.test.tsx +9 -1
- package/src/components/ChannelDetails/__tests__/ChannelDetailsProfile.test.tsx +1 -1
- package/src/components/ChannelDetails/__tests__/ChannelEditDetailsForm.test.tsx +16 -7
- package/src/components/ChannelDetails/__tests__/ChannelEditDetailsFormContent.test.tsx +13 -10
- package/src/components/ChannelDetails/__tests__/ChannelEditImageSheet.test.tsx +11 -8
- package/src/components/ChannelDetails/__tests__/ChannelEditName.test.tsx +9 -8
- package/src/components/ChannelDetails/__tests__/members/AddMemberSearchResultItem.test.tsx +16 -6
- package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersButton.test.tsx +3 -2
- package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersForm.test.tsx +8 -2
- package/src/components/ChannelDetails/__tests__/members/ChannelAddMembersFormContent.test.tsx +2 -2
- package/src/components/ChannelDetails/__tests__/members/ChannelMemberActionsSheet.test.tsx +2 -2
- package/src/components/ChannelDetails/__tests__/members/ChannelMemberItem.test.tsx +16 -6
- package/src/components/ChannelDetails/__tests__/members/ChannelMemberList.test.tsx +2 -2
- package/src/components/ChannelDetails/__tests__/members/useMemberRoles.test.tsx +1 -1
- package/src/components/ChannelDetails/__tests__/useChannelDetailsMemberStatusText.test.tsx +22 -3
- package/src/components/ChannelDetails/__tests__/useChannelDetailsMembersPreview.test.tsx +9 -3
- package/src/components/ChannelDetails/__tests__/useEditChannelImage.test.tsx +1 -1
- package/src/components/ChannelDetails/__tests__/useFileAttachmentListSections.test.tsx +11 -7
- package/src/components/ChannelDetails/__tests__/useUserActivityStatus.test.tsx +3 -2
- package/src/components/ChannelDetails/components/ChannelDetailsEditButton.tsx +2 -2
- package/src/components/ChannelDetails/components/ChannelDetailsMemberSection.tsx +12 -4
- package/src/components/ChannelDetails/components/ChannelDetailsNavHeader.tsx +6 -2
- package/src/components/ChannelDetails/components/ChannelDetailsProfile.tsx +1 -1
- package/src/components/ChannelDetails/components/ChannelEditDetailsFormContent.tsx +2 -2
- package/src/components/ChannelDetails/components/ChannelEditDetailsFormHeader.tsx +5 -2
- package/src/components/ChannelDetails/components/ChannelEditImageSheet.tsx +5 -5
- package/src/components/ChannelDetails/components/ChannelEditName.tsx +2 -2
- package/src/components/ChannelDetails/components/__tests__/navigation-section/FileAttachmentList.test.tsx +8 -7
- package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaItem.test.tsx +4 -2
- package/src/components/ChannelDetails/components/__tests__/navigation-section/MediaList.test.tsx +2 -2
- package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageItem.test.tsx +1 -1
- package/src/components/ChannelDetails/components/__tests__/navigation-section/PinnedMessageList.test.tsx +2 -2
- package/src/components/ChannelDetails/components/members/AddMemberSearchResultItem.tsx +9 -3
- package/src/components/ChannelDetails/components/members/ChannelAddMembersButton.tsx +3 -3
- package/src/components/ChannelDetails/components/members/ChannelAddMembersFormContent.tsx +6 -3
- package/src/components/ChannelDetails/components/members/ChannelAddMembersFormHeader.tsx +5 -2
- package/src/components/ChannelDetails/components/members/ChannelMemberItem.tsx +2 -2
- package/src/components/ChannelDetails/components/members/ChannelMemberList.tsx +8 -3
- package/src/components/ChannelDetails/components/modal/ModalHeader.tsx +1 -1
- package/src/components/ChannelDetails/components/navigation-section/FileAttachmentList.tsx +6 -3
- package/src/components/ChannelDetails/components/navigation-section/MediaItem.tsx +3 -1
- package/src/components/ChannelDetails/components/navigation-section/MediaList.tsx +6 -3
- package/src/components/ChannelDetails/components/navigation-section/PinnedMessageList.tsx +13 -5
- package/src/components/ChannelDetails/hooks/members/useMemberRoles.ts +12 -3
- package/src/components/ChannelDetails/hooks/useChannelDetailsMemberStatusText.ts +4 -2
- package/src/components/ChannelDetails/hooks/useChannelDetailsNavigationItems.ts +9 -4
- package/src/components/ChannelDetails/hooks/useEditChannelImage.ts +19 -8
- package/src/components/ChannelDetails/hooks/useFileAttachmentListSections.ts +9 -5
- package/src/components/ChannelDetails/hooks/useUserActivityStatus.ts +8 -6
- package/src/components/ChannelList/ChannelList.tsx +35 -286
- package/src/components/ChannelList/ChannelListHeaderErrorIndicator.tsx +1 -1
- package/src/components/ChannelList/ChannelListHeaderNetworkDownIndicator.tsx +1 -1
- package/src/components/ChannelList/ChannelListView.tsx +62 -64
- package/src/components/ChannelList/__tests__/ChannelList.test.tsx +383 -339
- package/src/components/ChannelList/__tests__/ChannelListView.test.tsx +92 -55
- package/src/components/ChannelList/hooks/__tests__/useChannelMembersState.test.tsx +66 -0
- package/src/components/ChannelList/hooks/__tests__/useMutedChannels.test.tsx +37 -0
- package/src/components/ChannelList/hooks/index.ts +0 -1
- package/src/components/ChannelList/hooks/useChannelMembersState.ts +58 -17
- package/src/components/ChannelList/hooks/useChannelOnlineMemberCount.ts +8 -10
- package/src/components/ChannelList/hooks/useCreateChannelsContext.ts +24 -49
- package/src/components/ChannelList/hooks/useMutedChannels.ts +11 -14
- package/src/components/ChannelList/hooks/useMutedUsers.ts +6 -11
- package/src/components/ChannelList/hooks/usePaginatedChannels.ts +78 -173
- package/src/components/ChannelPreview/ChannelDetailsBottomSheet.tsx +18 -2
- package/src/components/ChannelPreview/ChannelMessagePreviewDeliveryStatus.tsx +37 -17
- package/src/components/ChannelPreview/ChannelPreview.tsx +9 -17
- package/src/components/ChannelPreview/ChannelPreviewMessage.tsx +10 -5
- package/src/components/ChannelPreview/ChannelPreviewMutedStatus.tsx +1 -1
- package/src/components/ChannelPreview/ChannelPreviewPinnedStatus.tsx +1 -1
- package/src/components/ChannelPreview/ChannelPreviewStatus.tsx +12 -7
- package/src/components/ChannelPreview/ChannelPreviewTypingIndicator.tsx +30 -14
- package/src/components/ChannelPreview/ChannelPreviewUnreadCount.tsx +4 -1
- package/src/components/ChannelPreview/ChannelPreviewView.tsx +2 -3
- package/src/components/ChannelPreview/__tests__/ChannelDetailsBottomSheet.test.tsx +37 -2
- package/src/components/ChannelPreview/__tests__/ChannelLastMessagePreview.test.tsx +2 -1
- package/src/components/ChannelPreview/__tests__/ChannelPreview.test.tsx +70 -90
- package/src/components/ChannelPreview/__tests__/ChannelPreviewView.test.tsx +1 -1
- package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewDisplayName.test.tsx +57 -0
- package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewDraftMessage.test.tsx +32 -0
- package/src/components/ChannelPreview/hooks/__tests__/useChannelPreviewMuted.test.tsx +25 -50
- package/src/components/ChannelPreview/hooks/__tests__/useChannelTypingState.test.tsx +57 -0
- package/src/components/ChannelPreview/hooks/__tests__/useIsChannelPinned.test.tsx +21 -12
- package/src/components/ChannelPreview/hooks/useChannelPreviewData.ts +50 -169
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayName.ts +7 -2
- package/src/components/ChannelPreview/hooks/useChannelPreviewDisplayPresence.ts +2 -2
- package/src/components/ChannelPreview/hooks/useChannelPreviewDraftMessage.ts +16 -13
- package/src/components/ChannelPreview/hooks/useChannelPreviewPollLabel.ts +5 -3
- package/src/components/ChannelPreview/hooks/useChannelTypingState.ts +9 -38
- package/src/components/ChannelPreview/hooks/useIsChannelMuted.ts +11 -37
- package/src/components/ChannelPreview/hooks/useIsChannelPinned.ts +1 -1
- package/src/components/Chat/Chat.tsx +53 -105
- package/src/components/Chat/__tests__/Chat.test.tsx +269 -93
- package/src/components/Chat/hooks/__tests__/connectionStateHooks.test.tsx +314 -0
- package/src/components/Chat/hooks/__tests__/useAppSettingsGetter.test.tsx +104 -0
- package/src/components/Chat/hooks/__tests__/useCreateChatClient.netinfo.test.ts +47 -0
- package/src/components/Chat/hooks/__tests__/useCreateChatClient.userData.test.ts +51 -0
- package/src/components/Chat/hooks/index.ts +3 -3
- package/src/components/Chat/hooks/useAppSettingsGetter.ts +80 -0
- package/src/components/Chat/hooks/useClientUserId.ts +31 -0
- package/src/components/Chat/hooks/useConnectionLifecycle.ts +122 -0
- package/src/components/Chat/hooks/useCreateChatClient.ts +36 -9
- package/src/components/Chat/hooks/useCreateChatContext.ts +5 -33
- package/src/components/Chat/hooks/useInitializeOfflineDb.ts +11 -5
- package/src/components/Chat/hooks/useNetworkConnectionState.ts +39 -0
- package/src/components/Chat/hooks/usePendingUploadsDefault.ts +43 -0
- package/src/components/Chat/hooks/useWSConnectionState.ts +115 -0
- package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +2 -2
- package/src/components/ImageGallery/components/ImageGalleryA11yProbe.tsx +1 -1
- package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +3 -3
- package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +7 -5
- package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +1 -1
- package/src/components/Indicators/EmptyStateIndicator.tsx +8 -4
- package/src/components/Indicators/LoadingErrorIndicator.tsx +10 -4
- package/src/components/Indicators/LoadingIndicator.tsx +11 -3
- package/src/components/Message/Message.tsx +67 -222
- package/src/components/Message/MessageItemView/Headers/MessagePinnedHeader.tsx +4 -2
- package/src/components/Message/MessageItemView/Headers/MessageReminderHeader.tsx +4 -2
- package/src/components/Message/MessageItemView/Headers/MessageSavedForLaterHeader.tsx +1 -1
- package/src/components/Message/MessageItemView/Headers/SentToChannelHeader.tsx +34 -22
- package/src/components/Message/MessageItemView/MessageBounce.tsx +11 -10
- package/src/components/Message/MessageItemView/MessageContent.tsx +5 -10
- package/src/components/Message/MessageItemView/MessageDeleted.tsx +3 -1
- package/src/components/Message/MessageItemView/MessageFooter.tsx +30 -38
- package/src/components/Message/MessageItemView/MessageHeader.tsx +24 -41
- package/src/components/Message/MessageItemView/MessageItemView.tsx +20 -19
- package/src/components/Message/MessageItemView/MessageReplies.tsx +11 -25
- package/src/components/Message/MessageItemView/MessageStatus.tsx +26 -39
- package/src/components/Message/MessageItemView/MessageTimestamp.tsx +3 -3
- package/src/components/Message/MessageItemView/MessageWrapper.tsx +75 -39
- package/src/components/Message/MessageItemView/ReactionList/ReactionListClustered.tsx +3 -3
- package/src/components/Message/MessageItemView/ReactionList/ReactionListItem.tsx +1 -1
- package/src/components/Message/MessageItemView/__tests__/Message.test.tsx +135 -14
- package/src/components/Message/MessageItemView/__tests__/MessageAuthor.test.tsx +2 -2
- package/src/components/Message/MessageItemView/__tests__/MessageContent.test.tsx +76 -91
- package/src/components/Message/MessageItemView/__tests__/MessageFooter.test.tsx +71 -0
- package/src/components/Message/MessageItemView/__tests__/MessageHeader.test.tsx +78 -0
- package/src/components/Message/MessageItemView/__tests__/MessageItemView.test.tsx +14 -14
- package/src/components/Message/MessageItemView/__tests__/MessageReplies.test.tsx +6 -23
- package/src/components/Message/MessageItemView/__tests__/MessageStatus.test.tsx +115 -56
- package/src/components/Message/MessageItemView/__tests__/MessageTextContainer.test.tsx +7 -4
- package/src/components/Message/MessageItemView/__tests__/ReactionListBottom.test.tsx +5 -9
- package/src/components/Message/MessageItemView/__tests__/ReactionListTop.test.tsx +5 -9
- package/src/components/Message/hooks/__tests__/receiptUserHooks.test.tsx +103 -0
- package/src/components/Message/hooks/__tests__/{useMessageActionHandlers.test.tsx → useCreateMessageActionHandlers.test.tsx} +44 -9
- package/src/components/Message/hooks/__tests__/useMessageOperations.test.tsx +70 -0
- package/src/components/Message/hooks/__tests__/useShouldUseOverlayStyles.test.tsx +0 -4
- package/src/components/Message/hooks/__tests__/useUserMuteActive.test.tsx +49 -0
- package/src/components/Message/hooks/useCreateMessageActionHandlers.ts +434 -0
- package/src/components/Message/hooks/useCreateMessageContext.ts +5 -15
- package/src/components/Message/hooks/useIsMessageDeliveredToOthers.ts +41 -0
- package/src/components/Message/hooks/useIsMessageReadByOthers.ts +41 -0
- package/src/components/Message/hooks/useMessageActionHandlers.ts +13 -393
- package/src/components/Message/hooks/useMessageActions.tsx +64 -130
- package/src/components/Message/hooks/useMessageData.ts +4 -6
- package/src/components/Message/hooks/useMessageDeliveryData.ts +19 -37
- package/src/components/Message/hooks/useMessageOperations.ts +153 -0
- package/src/components/Message/hooks/useMessageReadData.ts +19 -38
- package/src/components/Message/hooks/useProcessReactions.ts +3 -3
- package/src/components/Message/hooks/useUserMuteActive.ts +30 -7
- package/src/components/Message/utils/messageActions.ts +2 -2
- package/src/components/MessageInput/MessageComposer.tsx +37 -20
- package/src/components/MessageInput/SendMessageDisallowedIndicator.tsx +3 -1
- package/src/components/MessageInput/ShowThreadMessageInChannelButton.tsx +13 -16
- package/src/components/MessageInput/__tests__/AttachmentUploadPreviewList.test.tsx +9 -0
- package/src/components/MessageInput/__tests__/InputButtons.test.tsx +18 -0
- package/src/components/MessageInput/__tests__/MessageComposer.test.tsx +39 -1
- package/src/components/MessageInput/__tests__/SendMessageDisallowedIndicator.test.tsx +37 -6
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentRemoveControl.tsx +1 -1
- package/src/components/MessageInput/components/AttachmentPreview/AttachmentUploadProgressIndicator.tsx +5 -3
- package/src/components/MessageInput/components/AttachmentPreview/AudioAttachmentUploadPreview.tsx +11 -6
- package/src/components/MessageInput/components/AttachmentPreview/FileAttachmentUploadPreview.tsx +6 -6
- package/src/components/MessageInput/components/AttachmentPreview/ImageAttachmentUploadPreview.tsx +3 -3
- package/src/components/MessageInput/components/AttachmentPreview/VideoAttachmentUploadPreview.tsx +8 -4
- package/src/components/MessageInput/components/AudioRecorder/AudioRecorder.tsx +5 -5
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +12 -4
- package/src/components/MessageInput/components/InputButtons/AttachButton.tsx +3 -1
- package/src/components/MessageInput/components/InputButtons/index.tsx +8 -0
- package/src/components/MessageInput/components/OutputButtons/EditButton.tsx +1 -1
- package/src/components/MessageInput/components/OutputButtons/SendButton.tsx +1 -1
- package/src/components/MessageInput/components/OutputButtons/index.tsx +9 -6
- package/src/components/MessageInput/hooks/useAudioRecorder.tsx +6 -4
- package/src/components/MessageList/InlineDateSeparator.tsx +4 -4
- package/src/components/MessageList/InlineLoadingMoreIndicator.tsx +5 -6
- package/src/components/MessageList/InlineLoadingMoreRecentIndicator.tsx +5 -6
- package/src/components/MessageList/InlineUnreadIndicator.tsx +7 -1
- package/src/components/MessageList/MessageFlashList.tsx +161 -565
- package/src/components/MessageList/MessageList.tsx +155 -652
- package/src/components/MessageList/MessageSystem.tsx +4 -4
- package/src/components/MessageList/NetworkDownIndicator.tsx +11 -15
- package/src/components/MessageList/ScrollToBottomButton.tsx +13 -6
- package/src/components/MessageList/StickyHeader.tsx +4 -4
- package/src/components/MessageList/TypingIndicatorContainer.tsx +18 -9
- package/src/components/MessageList/UnreadMessagesNotification.tsx +50 -31
- package/src/components/MessageList/__tests__/InlineUnreadIndicator.test.tsx +26 -0
- package/src/components/MessageList/__tests__/MessageFlashList.test.tsx +130 -0
- package/src/components/MessageList/__tests__/MessageList.test.tsx +702 -161
- package/src/components/MessageList/__tests__/MessageSystem.test.tsx +2 -2
- package/src/components/MessageList/__tests__/ScrollToBottomButton.test.tsx +63 -11
- package/src/components/MessageList/__tests__/TypingIndicator.test.tsx +39 -24
- package/src/components/MessageList/__tests__/buildMessageListWithNeighbours.test.ts +33 -0
- package/src/components/MessageList/__tests__/dateSeparatorSystemMessages.test.tsx +23 -18
- package/src/components/MessageList/__tests__/useMessageDateSeparator.test.ts +9 -8
- package/src/components/MessageList/__tests__/useMessageList.test.tsx +19 -52
- package/src/components/MessageList/hooks/__tests__/useMarkRead.test.tsx +108 -0
- package/src/components/MessageList/hooks/__tests__/useMessageListLiveState.test.tsx +160 -0
- package/src/components/MessageList/hooks/__tests__/useMessageListPagination.test.tsx +184 -0
- package/src/components/MessageList/hooks/__tests__/useStickyHeaderDate.test.ts +31 -0
- package/src/components/MessageList/hooks/useMarkRead.ts +82 -0
- package/src/components/MessageList/hooks/useMessageDateSeparator.ts +12 -3
- package/src/components/MessageList/hooks/useMessageList.ts +26 -25
- package/src/components/MessageList/hooks/useMessageListFocus.ts +40 -0
- package/src/components/MessageList/hooks/useMessageListLiveState.ts +101 -0
- package/src/components/MessageList/hooks/useMessageListPagination.ts +71 -0
- package/src/components/MessageList/hooks/useOwnUnreadCount.ts +22 -0
- package/src/components/MessageList/hooks/useScrollToBottomAccessibilityAction.ts +2 -3
- package/src/components/MessageList/hooks/useStickyHeaderDate.ts +41 -0
- package/src/components/MessageList/hooks/useTypingString.ts +11 -5
- package/src/components/MessageList/hooks/useTypingUsers.ts +26 -4
- package/src/components/MessageList/hooks/useUnreadNotificationVisibility.ts +86 -0
- package/src/components/MessageList/utils/buildMessageListWithNeighbours.ts +9 -2
- package/src/components/MessageList/utils/filterTypingUsers.ts +12 -12
- package/src/components/MessageList/utils/getGroupStyles.ts +3 -2
- package/src/components/MessageMenu/MessageActionList.tsx +1 -1
- package/src/components/MessageMenu/MessageActionListWithActions.tsx +69 -0
- package/src/components/MessageMenu/MessageReactionPicker.tsx +1 -1
- package/src/components/MessageMenu/MessageUserReactions.tsx +12 -10
- package/src/components/MessageMenu/MessageUserReactionsItem.tsx +2 -2
- package/src/components/MessageMenu/__tests__/MessageReactionPicker.test.tsx +2 -1
- package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +33 -3
- package/src/components/MessageMenu/__tests__/MessageUserReactionsAvatar.test.tsx +2 -1
- package/src/components/MessageMenu/__tests__/MessageUserReactionsItem.test.tsx +6 -1
- package/src/components/MessageMenu/hooks/__tests__/useFetchReactions.test.ts +107 -1
- package/src/components/MessageMenu/hooks/useFetchReactions.ts +33 -25
- package/src/components/Notifications/Notification.tsx +1 -1
- package/src/components/Notifications/NotificationList.tsx +1 -1
- package/src/components/Notifications/__tests__/notificationTranslations.test.ts +59 -0
- package/src/components/Notifications/hooks/__tests__/useNotificationApi.test.tsx +1 -1
- package/src/components/Notifications/hooks/__tests__/useNotificationTarget.test.tsx +1 -13
- package/src/components/Notifications/hooks/useNotificationTarget.ts +1 -2
- package/src/components/Notifications/notificationTranslations.ts +117 -47
- package/src/components/Poll/CreatePollContent.tsx +15 -8
- package/src/components/Poll/Poll.tsx +9 -5
- package/src/components/Poll/__tests__/Poll.test.tsx +3 -1
- package/src/components/Poll/components/Button.tsx +2 -2
- package/src/components/Poll/components/CreatePollHeader.tsx +3 -3
- package/src/components/Poll/components/CreatePollOptions.tsx +24 -5
- package/src/components/Poll/components/MultipleAnswersField.tsx +4 -2
- package/src/components/Poll/components/MultipleVotesSettings.tsx +6 -4
- package/src/components/Poll/components/NameField.tsx +2 -2
- package/src/components/Poll/components/PollAnswersList.tsx +17 -13
- package/src/components/Poll/components/PollButtons.tsx +36 -13
- package/src/components/Poll/components/PollInputDialog.tsx +2 -2
- package/src/components/Poll/components/PollModalHeader.tsx +1 -1
- package/src/components/Poll/components/PollOption.tsx +14 -4
- package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +7 -3
- package/src/components/Poll/components/PollResults/PollResultItem.tsx +23 -8
- package/src/components/Poll/components/PollResults/PollResults.tsx +1 -1
- package/src/components/Poll/components/PollResults/PollVote.tsx +8 -9
- package/src/components/Poll/components/__tests__/PollOption.test.tsx +3 -1
- package/src/components/Poll/contexts/PollUIStateContext.tsx +1 -1
- package/src/components/Poll/hooks/__tests__/usePollPagination.test.tsx +71 -0
- package/src/components/Poll/hooks/useEndVote.ts +2 -2
- package/src/components/Poll/hooks/usePollAnswersPagination.ts +8 -8
- package/src/components/Poll/hooks/usePollOptionVotesPagination.ts +20 -14
- package/src/components/Poll/hooks/usePollState.ts +13 -15
- package/src/components/Reply/Reply.tsx +25 -15
- package/src/components/Reply/__tests__/Reply.test.tsx +5 -4
- package/src/components/Thread/Thread.tsx +134 -153
- package/src/components/Thread/__tests__/Thread.test.tsx +444 -53
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.tsx.snap +72 -52
- package/src/components/Thread/components/ThreadFooterComponent.tsx +35 -70
- package/src/components/ThreadList/ThreadList.tsx +15 -21
- package/src/components/ThreadList/ThreadListItem.tsx +21 -14
- package/src/components/ThreadList/ThreadListItemMessagePreview.tsx +1 -1
- package/src/components/ThreadList/ThreadListUnreadBanner.tsx +36 -22
- package/src/components/ThreadList/ThreadMessagePreviewDeliveryStatus.tsx +24 -8
- package/src/components/ThreadList/__tests__/ThreadList.test.tsx +182 -0
- package/src/components/UIComponents/BottomSheetModal.tsx +2 -4
- package/src/components/UIComponents/SearchInput.tsx +2 -2
- package/src/components/UIComponents/__tests__/SearchInput.test.tsx +1 -1
- package/src/components/index.ts +6 -8
- package/src/components/ui/Avatar/Avatar.tsx +1 -1
- package/src/components/ui/Avatar/ChannelAvatar.tsx +13 -5
- package/src/components/ui/Avatar/__tests__/ChannelAvatar.test.tsx +60 -24
- package/src/components/ui/Button/__tests__/Button.test.tsx +1 -1
- package/src/contexts/__tests__/index.test.tsx +16 -19
- package/src/contexts/channelAddMembersContext/ChannelAddMembersContext.tsx +1 -1
- package/src/contexts/channelContext/ChannelContext.tsx +1 -119
- package/src/contexts/channelContext/__tests__/publicSurface.test.ts +75 -0
- package/src/contexts/channelFileAttachmentListContext/ChannelFileAttachmentListContext.tsx +1 -1
- package/src/contexts/channelMediaListContext/ChannelMediaListContext.tsx +1 -1
- package/src/contexts/channelMemberListContext/ChannelMemberListContext.tsx +1 -1
- package/src/contexts/channelsContext/ChannelsContext.tsx +5 -40
- package/src/contexts/chatContext/ChatContext.tsx +9 -34
- package/src/contexts/componentsContext/defaultComponents.ts +0 -2
- package/src/contexts/index.ts +1 -3
- package/src/contexts/liveLocationManagerContext/LiveLocationManagerContext.tsx +4 -1
- package/src/contexts/liveLocationManagerContext/__tests__/LiveLocationManagerContext.test.tsx +66 -0
- package/src/contexts/liveLocationManagerContext/hooks/__tests__/useHandleLiveLocationEvents.test.tsx +74 -0
- package/src/contexts/liveLocationManagerContext/hooks/useHandleLiveLocationEvents.ts +8 -8
- package/src/contexts/messageComposerContext/MessageComposerContext.tsx +56 -14
- package/src/contexts/messageComposerContext/__tests__/MessageComposerContext.test.tsx +77 -0
- package/src/contexts/messageContext/MessageContext.tsx +13 -17
- package/src/contexts/messageInputContext/MessageInputContext.tsx +57 -185
- package/src/contexts/messageInputContext/__tests__/filePickers.test.tsx +1 -9
- package/src/contexts/messageInputContext/__tests__/sendMessage.test.tsx +118 -259
- package/src/contexts/messageInputContext/__tests__/useMessageComposerHasSendableData.test.tsx +44 -0
- package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +2 -10
- package/src/contexts/messageInputContext/hooks/useMessageComposer.ts +5 -7
- package/src/contexts/messageInputContext/hooks/useMessageComposerHasSendableData.ts +5 -5
- package/src/contexts/messageInputContext/hooks/usePendingUploadsEnabled.ts +20 -0
- package/src/contexts/messagesContext/MessagesContext.tsx +10 -40
- package/src/contexts/overlayContext/MessageOverlayHostLayer.tsx +1 -1
- package/src/contexts/pollContext/createPollContentContext.tsx +1 -1
- package/src/contexts/threadContext/ThreadContext.tsx +20 -44
- package/src/contexts/threadsContext/ThreadsContext.tsx +2 -3
- package/src/contexts/translationContext/TranslationContext.tsx +14 -9
- package/src/contexts/translationContext/index.ts +0 -1
- package/src/contexts/translationContext/types.ts +20 -11
- package/src/hooks/__tests__/useChannelMuteActive.test.tsx +40 -17
- package/src/hooks/__tests__/useIsChannelMember.test.tsx +4 -2
- package/src/hooks/__tests__/useIsDirectChat.test.tsx +55 -0
- package/src/hooks/__tests__/usePendingAttachmentUpload.test.tsx +1 -1
- package/src/hooks/__tests__/usePrunableMessageList.test.tsx +175 -0
- package/src/hooks/__tests__/useStreami18n.test.ts +71 -0
- package/src/hooks/actions/__tests__/useChannelActionItems.test.tsx +35 -21
- package/src/hooks/actions/__tests__/useChannelActions.test.tsx +32 -7
- package/src/hooks/actions/__tests__/useChannelMemberActionItems.test.tsx +27 -20
- package/src/hooks/actions/__tests__/useUserActions.test.tsx +15 -15
- package/src/hooks/actions/useChannelActionItems.tsx +54 -29
- package/src/hooks/actions/useChannelActions.ts +46 -36
- package/src/hooks/actions/useChannelMemberActionItems.tsx +21 -11
- package/src/hooks/actions/useUserActions.ts +15 -11
- package/src/hooks/index.ts +3 -1
- package/src/hooks/messagePreview/__tests__/useMessageDeliveryStatus.test.tsx +119 -0
- package/src/hooks/messagePreview/__tests__/useMessagePreviewText.test.tsx +4 -6
- package/src/hooks/messagePreview/useGroupedAttachments.ts +4 -1
- package/src/hooks/messagePreview/useMessageDeliveryStatus.ts +49 -68
- package/src/hooks/messagePreview/useMessagePreviewText.tsx +45 -20
- package/src/hooks/useAudioPlayer.ts +9 -3
- package/src/hooks/useChannel.ts +19 -0
- package/src/hooks/useChannelImage.ts +9 -5
- package/src/hooks/useChannelMemberCount.ts +10 -5
- package/src/hooks/useChannelMembershipState.ts +10 -5
- package/src/hooks/useChannelMuteActive.ts +2 -6
- package/src/hooks/useChannelName.ts +9 -5
- package/src/hooks/useChannelOwnCapabilities.ts +11 -8
- package/src/hooks/useIsDirectChat.ts +4 -2
- package/src/hooks/useIsTargetedMessage.ts +29 -0
- package/src/hooks/useLoadingImage.tsx +4 -4
- package/src/hooks/useMessagePaginator.ts +13 -0
- package/src/hooks/usePrunableMessageList.ts +37 -31
- package/src/hooks/useQueryReminders.ts +19 -17
- package/src/hooks/useStateStore.ts +1 -1
- package/src/hooks/useStreami18n.ts +25 -46
- package/src/hooks/useSyncClientEvents.ts +7 -7
- package/src/hooks/useTranslatedMessage.ts +23 -5
- package/src/i18n/__tests__/callSites.test.ts +346 -0
- package/src/i18n/__tests__/catalog.fixture.json +418 -0
- package/src/i18n/__tests__/catalogRenders.test.ts +88 -0
- package/src/i18n/__tests__/dateNormalization.test.ts +91 -0
- package/src/i18n/__tests__/pluralCategories.test.ts +114 -0
- package/src/i18n/__tests__/publicExports.test.ts +79 -0
- package/src/i18n/index.ts +4 -0
- package/src/i18n/keys.ts +525 -0
- package/src/i18n/runtimeDefaults.ts +148 -0
- package/src/i18n/types.ts +54 -0
- package/src/i18n/utils.ts +69 -0
- package/src/index.ts +2 -14
- package/src/middlewares/__tests__/attachments.test.ts +69 -49
- package/src/middlewares/attachments.ts +7 -110
- package/src/mock-builders/DB/mock.ts +13 -4
- package/src/mock-builders/api/channelMocks.tsx +36 -33
- package/src/mock-builders/api/getOrCreateChannel.ts +2 -2
- package/src/mock-builders/api/initiateClientWithChannels.ts +13 -2
- package/src/mock-builders/api/queryMembers.ts +16 -14
- package/src/mock-builders/api/useMockedApis.ts +63 -5
- package/src/mock-builders/attachments.ts +5 -0
- package/src/mock-builders/event/connectionChanged.ts +29 -9
- package/src/mock-builders/event/connectionRecovered.ts +5 -0
- package/src/mock-builders/event/messageDeleted.ts +0 -1
- package/src/mock-builders/event/messageRead.ts +3 -1
- package/src/mock-builders/event/messageUpdated.ts +0 -1
- package/src/mock-builders/event/notificationChannelMutesUpdated.ts +1 -3
- package/src/mock-builders/event/notificationMarkUnread.ts +3 -1
- package/src/mock-builders/event/notificationMutesUpdated.ts +5 -3
- package/src/mock-builders/event/typing.ts +0 -2
- package/src/mock-builders/event/userPresence.ts +5 -3
- package/src/mock-builders/event/userUpdated.ts +5 -3
- package/src/mock-builders/event/utils.ts +31 -0
- package/src/mock-builders/generator/attachment.ts +14 -4
- package/src/mock-builders/generator/channel.ts +14 -10
- package/src/mock-builders/generator/channelState.ts +56 -0
- package/src/mock-builders/generator/message.ts +22 -15
- package/src/mock-builders/generator/reaction.ts +2 -1
- package/src/mock-builders/generator/time.ts +19 -0
- package/src/mock-builders/generator/user.ts +4 -2
- package/src/mock-builders/mock.ts +19 -9
- package/src/state-store/__tests__/edit-channel-details-store.test.ts +8 -3
- package/src/state-store/__tests__/image-gallery-state-store.test.ts +52 -2
- package/src/state-store/attachment-picker-store.ts +1 -1
- package/src/state-store/audio-player-pool.ts +1 -1
- package/src/state-store/audio-player.ts +1 -1
- package/src/state-store/audio-recorder-manager.ts +1 -1
- package/src/state-store/edit-channel-details-store.ts +4 -3
- package/src/state-store/image-gallery-state-store.ts +4 -3
- package/src/state-store/in-app-notifications-store.ts +2 -1
- package/src/state-store/message-input-height-store.ts +1 -1
- package/src/state-store/message-overlay-store.ts +1 -1
- package/src/state-store/selection-store.ts +1 -1
- package/src/state-store/signal-store.ts +1 -1
- package/src/state-store/video-player-pool.ts +1 -1
- package/src/state-store/video-player.ts +1 -1
- package/src/store/OfflineDB.ts +13 -15
- package/src/store/SqliteClient.ts +3 -3
- package/src/store/__tests__/channelExists.test.ts +44 -0
- package/src/store/__tests__/insertReaction.test.ts +107 -0
- package/src/store/__tests__/mapperRequiredTimestamps.test.ts +64 -0
- package/src/store/__tests__/timestampStorage.test.ts +146 -0
- package/src/store/apis/__tests__/channelQueryCids.test.ts +69 -9
- package/src/store/apis/__tests__/updatePendingTask.test.ts +3 -1
- package/src/store/apis/channelExists.ts +12 -4
- package/src/store/apis/deleteMessagesForChannel.ts +7 -2
- package/src/store/apis/deleteReaction.ts +2 -2
- package/src/store/apis/getAppSettings.ts +6 -6
- package/src/store/apis/getChannelActiveLocations.ts +3 -3
- package/src/store/apis/getChannelMessages.ts +4 -4
- package/src/store/apis/getChannels.ts +10 -9
- package/src/store/apis/getChannelsForFilterSort.ts +27 -16
- package/src/store/apis/getDraft.ts +1 -1
- package/src/store/apis/getDraftsForChannels.ts +3 -3
- package/src/store/apis/getLastSyncedAt.ts +4 -4
- package/src/store/apis/getReactionsforFilterSort.ts +2 -2
- package/src/store/apis/getReads.ts +2 -2
- package/src/store/apis/index.ts +0 -1
- package/src/store/apis/insertReaction.ts +12 -2
- package/src/store/apis/queries/selectActiveLocationsForChannels.ts +5 -2
- package/src/store/apis/queries/selectChannelQueryForFilterSort.ts +90 -0
- package/src/store/apis/queries/selectDraftMessageFromDraftForChannels.ts +1 -1
- package/src/store/apis/queries/selectMembersForChannels.ts +1 -1
- package/src/store/apis/queries/selectReactionsForMessages.ts +6 -8
- package/src/store/apis/softDeleteMessage.ts +2 -2
- package/src/store/apis/updateReaction.ts +8 -1
- package/src/store/apis/upsertAppSettings.ts +6 -6
- package/src/store/apis/upsertChannels.ts +11 -7
- package/src/store/apis/upsertCidsForQuery.ts +12 -2
- package/src/store/apis/upsertDraft.ts +2 -2
- package/src/store/apis/upsertLocation.ts +2 -2
- package/src/store/apis/upsertPoll.ts +2 -2
- package/src/store/apis/upsertReads.ts +2 -2
- package/src/store/apis/upsertUserSyncStatus.ts +4 -4
- package/src/store/apis/utils/__tests__/convertFilterSortToQuery.test.ts +1 -1
- package/src/store/apis/utils/convertFilterSortToQuery.ts +2 -2
- package/src/store/mappers/mapChannelDataToStorable.ts +7 -10
- package/src/store/mappers/mapChannelToStorable.ts +7 -10
- package/src/store/mappers/mapDraftMessageToStorable.ts +2 -2
- package/src/store/mappers/mapDraftToStorable.ts +2 -2
- package/src/store/mappers/mapMemberToStorable.ts +7 -7
- package/src/store/mappers/mapMessageToStorable.ts +7 -7
- package/src/store/mappers/mapPollToStorable.ts +6 -6
- package/src/store/mappers/mapReactionToStorable.ts +3 -3
- package/src/store/mappers/mapReadToStorable.ts +6 -5
- package/src/store/mappers/mapReminderToStorable.ts +6 -6
- package/src/store/mappers/mapSharedLocationToStorable.ts +6 -6
- package/src/store/mappers/mapStorableToChannel.ts +12 -7
- package/src/store/mappers/mapStorableToDraft.ts +5 -4
- package/src/store/mappers/mapStorableToMember.ts +12 -9
- package/src/store/mappers/mapStorableToMessage.ts +8 -7
- package/src/store/mappers/mapStorableToPoll.ts +14 -8
- package/src/store/mappers/mapStorableToReaction.ts +3 -2
- package/src/store/mappers/mapStorableToRead.ts +6 -5
- package/src/store/mappers/mapStorableToReminder.ts +7 -5
- package/src/store/mappers/mapStorableToSharedLocation.ts +9 -5
- package/src/store/mappers/mapStorableToTimestamp.ts +24 -0
- package/src/store/mappers/mapStorableToUser.ts +6 -4
- package/src/store/mappers/mapTimestampToStorable.ts +14 -0
- package/src/store/mappers/mapUserToStorable.ts +5 -3
- package/src/store/schema.ts +70 -64
- package/src/store/sqlite-utils/createUpsertQuery.ts +35 -9
- package/src/store/sqlite-utils/createUpsertQueryIfParentExists.ts +58 -0
- package/src/store/types.ts +4 -4
- package/src/types/react-native-compat.ts +2 -2
- package/src/types/types.ts +13 -10
- package/src/utils/__tests__/Streami18n.test.ts +248 -255
- package/src/utils/__tests__/installNativeMultipartAdapter.test.ts +125 -22
- package/src/utils/attachmentUrls.ts +19 -0
- package/src/utils/getUrlOfImageAttachment.ts +9 -2
- package/src/utils/i18n/Streami18n.ts +115 -725
- package/src/utils/installNativeMultipartAdapter.ts +46 -39
- package/src/utils/removeReservedFields.ts +2 -4
- package/src/utils/utils.ts +32 -98
- package/src/version.json +1 -1
- package/lib/commonjs/components/Channel/hooks/useChannelDataState.js +0 -187
- package/lib/commonjs/components/Channel/hooks/useChannelDataState.js.map +0 -1
- package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js +0 -36
- package/lib/commonjs/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +0 -1
- package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js +0 -16
- package/lib/commonjs/components/Channel/hooks/useCreateTypingContext.js.map +0 -1
- package/lib/commonjs/components/Channel/hooks/useMessageListPagination.js +0 -292
- package/lib/commonjs/components/Channel/hooks/useMessageListPagination.js.map +0 -1
- package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js +0 -50
- package/lib/commonjs/components/Channel/hooks/useTargetedMessage.js.map +0 -1
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js +0 -43
- package/lib/commonjs/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +0 -1
- package/lib/commonjs/components/ChannelList/hooks/utils/index.js +0 -115
- package/lib/commonjs/components/ChannelList/hooks/utils/index.js.map +0 -1
- package/lib/commonjs/components/Chat/hooks/useAppSettings.js +0 -69
- package/lib/commonjs/components/Chat/hooks/useAppSettings.js.map +0 -1
- package/lib/commonjs/components/Chat/hooks/useClientMutedUsers.js +0 -26
- package/lib/commonjs/components/Chat/hooks/useClientMutedUsers.js.map +0 -1
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js +0 -100
- package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +0 -1
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js +0 -55
- package/lib/commonjs/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js.map +0 -1
- package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +0 -19
- package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +0 -1
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +0 -22
- package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +0 -1
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +0 -67
- package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +0 -1
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +0 -47
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +0 -1
- package/lib/commonjs/contexts/debugContext/DebugContext.js +0 -42
- package/lib/commonjs/contexts/debugContext/DebugContext.js.map +0 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageComposer.js +0 -68
- package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageComposer.js.map +0 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js +0 -14
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js.map +0 -1
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +0 -28
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +0 -1
- package/lib/commonjs/contexts/translationContext/isDayOrMoment.js +0 -7
- package/lib/commonjs/contexts/translationContext/isDayOrMoment.js.map +0 -1
- package/lib/commonjs/contexts/typingContext/TypingContext.js +0 -28
- package/lib/commonjs/contexts/typingContext/TypingContext.js.map +0 -1
- package/lib/commonjs/hooks/useSelectedChannelState.js +0 -30
- package/lib/commonjs/hooks/useSelectedChannelState.js.map +0 -1
- package/lib/commonjs/i18n/ar.json +0 -471
- package/lib/commonjs/i18n/en.json +0 -471
- package/lib/commonjs/i18n/es.json +0 -471
- package/lib/commonjs/i18n/fr.json +0 -471
- package/lib/commonjs/i18n/he.json +0 -471
- package/lib/commonjs/i18n/hi.json +0 -471
- package/lib/commonjs/i18n/it.json +0 -471
- package/lib/commonjs/i18n/ja.json +0 -471
- package/lib/commonjs/i18n/ko.json +0 -471
- package/lib/commonjs/i18n/nl.json +0 -471
- package/lib/commonjs/i18n/pt-br.json +0 -471
- package/lib/commonjs/i18n/ru.json +0 -471
- package/lib/commonjs/i18n/tr.json +0 -471
- package/lib/commonjs/state-store/channel-unread-state.js +0 -25
- package/lib/commonjs/state-store/channel-unread-state.js.map +0 -1
- package/lib/commonjs/state-store/message-list-prev-next-state.js +0 -40
- package/lib/commonjs/state-store/message-list-prev-next-state.js.map +0 -1
- package/lib/commonjs/store/apis/deleteReactions.js +0 -30
- package/lib/commonjs/store/apis/deleteReactions.js.map +0 -1
- package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js +0 -35
- package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +0 -1
- package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js +0 -29
- package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js.map +0 -1
- package/lib/commonjs/store/mappers/mapDateTimeToStorable.js +0 -12
- package/lib/commonjs/store/mappers/mapDateTimeToStorable.js.map +0 -1
- package/lib/commonjs/store/sqlite-utils/printRow.js +0 -18
- package/lib/commonjs/store/sqlite-utils/printRow.js.map +0 -1
- package/lib/commonjs/utils/addReactionToLocalState.js +0 -51
- package/lib/commonjs/utils/addReactionToLocalState.js.map +0 -1
- package/lib/commonjs/utils/date.js +0 -8
- package/lib/commonjs/utils/date.js.map +0 -1
- package/lib/commonjs/utils/i18n/calendarFormats.js +0 -111
- package/lib/commonjs/utils/i18n/calendarFormats.js.map +0 -1
- package/lib/commonjs/utils/i18n/getDateString.js +0 -75
- package/lib/commonjs/utils/i18n/getDateString.js.map +0 -1
- package/lib/commonjs/utils/i18n/predefinedFormatters.js +0 -83
- package/lib/commonjs/utils/i18n/predefinedFormatters.js.map +0 -1
- package/lib/commonjs/utils/i18n/types.js.map +0 -1
- package/lib/commonjs/utils/patchMessageTextCommand.js +0 -20
- package/lib/commonjs/utils/patchMessageTextCommand.js.map +0 -1
- package/lib/commonjs/utils/removeReactionFromLocalState.js +0 -33
- package/lib/commonjs/utils/removeReactionFromLocalState.js.map +0 -1
- package/lib/module/components/Channel/hooks/useChannelDataState.js +0 -187
- package/lib/module/components/Channel/hooks/useChannelDataState.js.map +0 -1
- package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js +0 -36
- package/lib/module/components/Channel/hooks/useCreatePaginatedMessageListContext.js.map +0 -1
- package/lib/module/components/Channel/hooks/useCreateTypingContext.js +0 -16
- package/lib/module/components/Channel/hooks/useCreateTypingContext.js.map +0 -1
- package/lib/module/components/Channel/hooks/useMessageListPagination.js +0 -292
- package/lib/module/components/Channel/hooks/useMessageListPagination.js.map +0 -1
- package/lib/module/components/Channel/hooks/useTargetedMessage.js +0 -50
- package/lib/module/components/Channel/hooks/useTargetedMessage.js.map +0 -1
- package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js +0 -43
- package/lib/module/components/ChannelList/hooks/listeners/useChannelUpdated.js.map +0 -1
- package/lib/module/components/ChannelList/hooks/utils/index.js +0 -115
- package/lib/module/components/ChannelList/hooks/utils/index.js.map +0 -1
- package/lib/module/components/Chat/hooks/useAppSettings.js +0 -69
- package/lib/module/components/Chat/hooks/useAppSettings.js.map +0 -1
- package/lib/module/components/Chat/hooks/useClientMutedUsers.js +0 -26
- package/lib/module/components/Chat/hooks/useClientMutedUsers.js.map +0 -1
- package/lib/module/components/Chat/hooks/useIsOnline.js +0 -100
- package/lib/module/components/Chat/hooks/useIsOnline.js.map +0 -1
- package/lib/module/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js +0 -55
- package/lib/module/components/MessageList/InlineLoadingMoreRecentThreadIndicator.js.map +0 -1
- package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +0 -19
- package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +0 -1
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +0 -22
- package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +0 -1
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +0 -67
- package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +0 -1
- package/lib/module/contexts/channelsStateContext/useChannelState.js +0 -47
- package/lib/module/contexts/channelsStateContext/useChannelState.js.map +0 -1
- package/lib/module/contexts/debugContext/DebugContext.js +0 -42
- package/lib/module/contexts/debugContext/DebugContext.js.map +0 -1
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageComposer.js +0 -68
- package/lib/module/contexts/messageInputContext/hooks/useCreateMessageComposer.js.map +0 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js +0 -14
- package/lib/module/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.js.map +0 -1
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +0 -28
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +0 -1
- package/lib/module/contexts/translationContext/isDayOrMoment.js +0 -7
- package/lib/module/contexts/translationContext/isDayOrMoment.js.map +0 -1
- package/lib/module/contexts/typingContext/TypingContext.js +0 -28
- package/lib/module/contexts/typingContext/TypingContext.js.map +0 -1
- package/lib/module/hooks/useSelectedChannelState.js +0 -30
- package/lib/module/hooks/useSelectedChannelState.js.map +0 -1
- package/lib/module/i18n/ar.json +0 -471
- package/lib/module/i18n/en.json +0 -471
- package/lib/module/i18n/es.json +0 -471
- package/lib/module/i18n/fr.json +0 -471
- package/lib/module/i18n/he.json +0 -471
- package/lib/module/i18n/hi.json +0 -471
- package/lib/module/i18n/it.json +0 -471
- package/lib/module/i18n/ja.json +0 -471
- package/lib/module/i18n/ko.json +0 -471
- package/lib/module/i18n/nl.json +0 -471
- package/lib/module/i18n/pt-br.json +0 -471
- package/lib/module/i18n/ru.json +0 -471
- package/lib/module/i18n/tr.json +0 -471
- package/lib/module/state-store/channel-unread-state.js +0 -25
- package/lib/module/state-store/channel-unread-state.js.map +0 -1
- package/lib/module/state-store/message-list-prev-next-state.js +0 -40
- package/lib/module/state-store/message-list-prev-next-state.js.map +0 -1
- package/lib/module/store/apis/deleteReactions.js +0 -30
- package/lib/module/store/apis/deleteReactions.js.map +0 -1
- package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js +0 -35
- package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +0 -1
- package/lib/module/store/apis/upsertChannelDataFromChannel.js +0 -29
- package/lib/module/store/apis/upsertChannelDataFromChannel.js.map +0 -1
- package/lib/module/store/mappers/mapDateTimeToStorable.js +0 -12
- package/lib/module/store/mappers/mapDateTimeToStorable.js.map +0 -1
- package/lib/module/store/sqlite-utils/printRow.js +0 -18
- package/lib/module/store/sqlite-utils/printRow.js.map +0 -1
- package/lib/module/utils/addReactionToLocalState.js +0 -51
- package/lib/module/utils/addReactionToLocalState.js.map +0 -1
- package/lib/module/utils/date.js +0 -8
- package/lib/module/utils/date.js.map +0 -1
- package/lib/module/utils/i18n/calendarFormats.js +0 -111
- package/lib/module/utils/i18n/calendarFormats.js.map +0 -1
- package/lib/module/utils/i18n/getDateString.js +0 -75
- package/lib/module/utils/i18n/getDateString.js.map +0 -1
- package/lib/module/utils/i18n/predefinedFormatters.js +0 -83
- package/lib/module/utils/i18n/predefinedFormatters.js.map +0 -1
- package/lib/module/utils/i18n/types.js.map +0 -1
- package/lib/module/utils/patchMessageTextCommand.js +0 -20
- package/lib/module/utils/patchMessageTextCommand.js.map +0 -1
- package/lib/module/utils/removeReactionFromLocalState.js +0 -33
- package/lib/module/utils/removeReactionFromLocalState.js.map +0 -1
- package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts +0 -74
- package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts.map +0 -1
- package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts +0 -5
- package/lib/typescript/components/Channel/hooks/useCreatePaginatedMessageListContext.d.ts.map +0 -1
- package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts +0 -3
- package/lib/typescript/components/Channel/hooks/useCreateTypingContext.d.ts.map +0 -1
- package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts +0 -29
- package/lib/typescript/components/Channel/hooks/useMessageListPagination.d.ts.map +0 -1
- package/lib/typescript/components/Channel/hooks/useTargetedMessage.d.ts +0 -7
- package/lib/typescript/components/Channel/hooks/useTargetedMessage.d.ts.map +0 -1
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts +0 -9
- package/lib/typescript/components/ChannelList/hooks/listeners/useChannelUpdated.d.ts.map +0 -1
- package/lib/typescript/components/ChannelList/hooks/utils/index.d.ts +0 -21
- package/lib/typescript/components/ChannelList/hooks/utils/index.d.ts.map +0 -1
- package/lib/typescript/components/Chat/hooks/useAppSettings.d.ts +0 -3
- package/lib/typescript/components/Chat/hooks/useAppSettings.d.ts.map +0 -1
- package/lib/typescript/components/Chat/hooks/useClientMutedUsers.d.ts +0 -3
- package/lib/typescript/components/Chat/hooks/useClientMutedUsers.d.ts.map +0 -1
- package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts +0 -12
- package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts.map +0 -1
- package/lib/typescript/components/MessageList/InlineLoadingMoreRecentThreadIndicator.d.ts +0 -7
- package/lib/typescript/components/MessageList/InlineLoadingMoreRecentThreadIndicator.d.ts.map +0 -1
- package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +0 -3
- package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts.map +0 -1
- package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts +0 -8
- package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts.map +0 -1
- package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +0 -24
- package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts.map +0 -1
- package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts +0 -14
- package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts.map +0 -1
- package/lib/typescript/contexts/debugContext/DebugContext.d.ts +0 -26
- package/lib/typescript/contexts/debugContext/DebugContext.d.ts.map +0 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageComposer.d.ts +0 -4
- package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageComposer.d.ts.map +0 -1
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.d.ts +0 -2
- package/lib/typescript/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.d.ts.map +0 -1
- package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +0 -52
- package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts.map +0 -1
- package/lib/typescript/contexts/translationContext/isDayOrMoment.d.ts +0 -5
- package/lib/typescript/contexts/translationContext/isDayOrMoment.d.ts.map +0 -1
- package/lib/typescript/contexts/typingContext/TypingContext.d.ts +0 -11
- package/lib/typescript/contexts/typingContext/TypingContext.d.ts.map +0 -1
- package/lib/typescript/hooks/useSelectedChannelState.d.ts +0 -12
- package/lib/typescript/hooks/useSelectedChannelState.d.ts.map +0 -1
- package/lib/typescript/i18n/ar.json +0 -471
- package/lib/typescript/i18n/en.json +0 -471
- package/lib/typescript/i18n/es.json +0 -471
- package/lib/typescript/i18n/fr.json +0 -471
- package/lib/typescript/i18n/he.json +0 -471
- package/lib/typescript/i18n/hi.json +0 -471
- package/lib/typescript/i18n/it.json +0 -471
- package/lib/typescript/i18n/ja.json +0 -471
- package/lib/typescript/i18n/ko.json +0 -471
- package/lib/typescript/i18n/nl.json +0 -471
- package/lib/typescript/i18n/pt-br.json +0 -471
- package/lib/typescript/i18n/ru.json +0 -471
- package/lib/typescript/i18n/tr.json +0 -471
- package/lib/typescript/state-store/channel-unread-state.d.ts +0 -12
- package/lib/typescript/state-store/channel-unread-state.d.ts.map +0 -1
- package/lib/typescript/state-store/message-list-prev-next-state.d.ts +0 -16
- package/lib/typescript/state-store/message-list-prev-next-state.d.ts.map +0 -1
- package/lib/typescript/store/apis/deleteReactions.d.ts +0 -5
- package/lib/typescript/store/apis/deleteReactions.d.ts.map +0 -1
- package/lib/typescript/store/apis/queries/selectChannelIdsForFilterSort.d.ts +0 -16
- package/lib/typescript/store/apis/queries/selectChannelIdsForFilterSort.d.ts.map +0 -1
- package/lib/typescript/store/apis/upsertChannelDataFromChannel.d.ts +0 -6
- package/lib/typescript/store/apis/upsertChannelDataFromChannel.d.ts.map +0 -1
- package/lib/typescript/store/mappers/mapDateTimeToStorable.d.ts +0 -2
- package/lib/typescript/store/mappers/mapDateTimeToStorable.d.ts.map +0 -1
- package/lib/typescript/store/sqlite-utils/printRow.d.ts +0 -3
- package/lib/typescript/store/sqlite-utils/printRow.d.ts.map +0 -1
- package/lib/typescript/utils/addReactionToLocalState.d.ts +0 -9
- package/lib/typescript/utils/addReactionToLocalState.d.ts.map +0 -1
- package/lib/typescript/utils/date.d.ts +0 -3
- package/lib/typescript/utils/date.d.ts.map +0 -1
- package/lib/typescript/utils/i18n/calendarFormats.d.ts +0 -6
- package/lib/typescript/utils/i18n/calendarFormats.d.ts.map +0 -1
- package/lib/typescript/utils/i18n/getDateString.d.ts +0 -44
- package/lib/typescript/utils/i18n/getDateString.d.ts.map +0 -1
- package/lib/typescript/utils/i18n/predefinedFormatters.d.ts +0 -3
- package/lib/typescript/utils/i18n/predefinedFormatters.d.ts.map +0 -1
- package/lib/typescript/utils/i18n/types.d.ts +0 -69
- package/lib/typescript/utils/i18n/types.d.ts.map +0 -1
- package/lib/typescript/utils/patchMessageTextCommand.d.ts +0 -10
- package/lib/typescript/utils/patchMessageTextCommand.d.ts.map +0 -1
- package/lib/typescript/utils/removeReactionFromLocalState.d.ts +0 -8
- package/lib/typescript/utils/removeReactionFromLocalState.d.ts.map +0 -1
- package/src/components/Channel/__tests__/useMessageListPagination.test.tsx +0 -692
- package/src/components/Channel/hooks/useChannelDataState.ts +0 -220
- package/src/components/Channel/hooks/useCreatePaginatedMessageListContext.ts +0 -42
- package/src/components/Channel/hooks/useCreateTypingContext.ts +0 -17
- package/src/components/Channel/hooks/useMessageListPagination.tsx +0 -330
- package/src/components/Channel/hooks/useTargetedMessage.ts +0 -44
- package/src/components/ChannelList/hooks/listeners/__tests__/useChannelUpdated.test.tsx +0 -87
- package/src/components/ChannelList/hooks/listeners/useChannelUpdated.ts +0 -49
- package/src/components/ChannelList/hooks/utils/index.ts +0 -125
- package/src/components/Chat/hooks/__tests__/useAppSettings.test.tsx +0 -37
- package/src/components/Chat/hooks/useAppSettings.ts +0 -65
- package/src/components/Chat/hooks/useClientMutedUsers.ts +0 -19
- package/src/components/Chat/hooks/useIsOnline.ts +0 -104
- package/src/components/MessageList/InlineLoadingMoreRecentThreadIndicator.tsx +0 -61
- package/src/components/MessageList/utils/getLastReceivedMessage.ts +0 -16
- package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +0 -15
- package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +0 -107
- package/src/contexts/channelsStateContext/useChannelState.ts +0 -66
- package/src/contexts/debugContext/DebugContext.tsx +0 -68
- package/src/contexts/messageInputContext/hooks/useCreateMessageComposer.ts +0 -97
- package/src/contexts/messageInputContext/hooks/useMessageCompositionIsEmpty.ts +0 -13
- package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +0 -83
- package/src/contexts/translationContext/isDayOrMoment.ts +0 -8
- package/src/contexts/typingContext/TypingContext.tsx +0 -36
- package/src/hooks/useSelectedChannelState.ts +0 -53
- package/src/i18n/ar.json +0 -471
- package/src/i18n/en.json +0 -471
- package/src/i18n/es.json +0 -471
- package/src/i18n/fr.json +0 -471
- package/src/i18n/he.json +0 -471
- package/src/i18n/hi.json +0 -471
- package/src/i18n/it.json +0 -471
- package/src/i18n/ja.json +0 -471
- package/src/i18n/ko.json +0 -471
- package/src/i18n/nl.json +0 -471
- package/src/i18n/pt-br.json +0 -471
- package/src/i18n/ru.json +0 -471
- package/src/i18n/tr.json +0 -471
- package/src/state-store/channel-unread-state.ts +0 -28
- package/src/state-store/message-list-prev-next-state.ts +0 -58
- package/src/store/apis/deleteReactions.ts +0 -23
- package/src/store/apis/queries/selectChannelIdsForFilterSort.ts +0 -42
- package/src/store/apis/upsertChannelDataFromChannel.ts +0 -24
- package/src/store/mappers/mapDateTimeToStorable.ts +0 -7
- package/src/store/sqlite-utils/printRow.ts +0 -19
- package/src/utils/__tests__/patchMessageTextCommand.test.ts +0 -14
- package/src/utils/addReactionToLocalState.ts +0 -52
- package/src/utils/date.ts +0 -4
- package/src/utils/i18n/calendarFormats.ts +0 -111
- package/src/utils/i18n/getDateString.ts +0 -133
- package/src/utils/i18n/predefinedFormatters.ts +0 -98
- package/src/utils/i18n/types.ts +0 -82
- package/src/utils/patchMessageTextCommand.ts +0 -36
- package/src/utils/removeReactionFromLocalState.ts +0 -49
- /package/lib/commonjs/{utils/i18n → i18n}/types.js +0 -0
- /package/lib/module/{utils/i18n → i18n}/types.js +0 -0
|
@@ -1,39 +1,43 @@
|
|
|
1
1
|
import React, { type ComponentProps, useContext, useEffect } from 'react';
|
|
2
|
-
import { View } from 'react-native';
|
|
2
|
+
import { AppState, AppStateStatus, View } from 'react-native';
|
|
3
3
|
|
|
4
|
-
import { act, cleanup, render,
|
|
4
|
+
import { act, cleanup, render, waitFor } from '@testing-library/react-native';
|
|
5
5
|
import type { Channel as ChannelType, StreamChat as StreamChatType } from 'stream-chat';
|
|
6
|
-
import { StreamChat } from 'stream-chat';
|
|
6
|
+
import { asTimestampNS, StreamChat } from 'stream-chat';
|
|
7
7
|
|
|
8
8
|
import type { ChannelContextValue } from '../../../contexts/channelContext/ChannelContext';
|
|
9
9
|
import { ChannelContext, ChannelProvider } from '../../../contexts/channelContext/ChannelContext';
|
|
10
|
-
import { ChannelsStateProvider } from '../../../contexts/channelsStateContext/ChannelsStateContext';
|
|
11
10
|
import type { MessagesContextValue } from '../../../contexts/messagesContext/MessagesContext';
|
|
12
11
|
import {
|
|
13
12
|
MessagesContext,
|
|
14
13
|
MessagesProvider,
|
|
15
14
|
} from '../../../contexts/messagesContext/MessagesContext';
|
|
16
15
|
|
|
16
|
+
import {
|
|
17
|
+
OwnCapabilitiesContext,
|
|
18
|
+
type OwnCapabilitiesContextValue,
|
|
19
|
+
} from '../../../contexts/ownCapabilitiesContext/OwnCapabilitiesContext';
|
|
17
20
|
import type { ThreadContextValue } from '../../../contexts/threadContext/ThreadContext';
|
|
18
21
|
import { ThreadContext, ThreadProvider } from '../../../contexts/threadContext/ThreadContext';
|
|
19
22
|
|
|
20
23
|
import { getOrCreateChannelApi } from '../../../mock-builders/api/getOrCreateChannel';
|
|
21
24
|
import { useMockedApis } from '../../../mock-builders/api/useMockedApis';
|
|
25
|
+
import dispatchChannelDeletedEvent from '../../../mock-builders/event/channelDeleted';
|
|
26
|
+
import dispatchChannelUpdatedEvent from '../../../mock-builders/event/channelUpdated';
|
|
22
27
|
import dispatchConnectionChanged from '../../../mock-builders/event/connectionChanged';
|
|
28
|
+
import dispatchMessageNewEvent from '../../../mock-builders/event/messageNew';
|
|
29
|
+
import dispatchNotificationRemovedFromChannel from '../../../mock-builders/event/notificationRemovedFromChannel';
|
|
23
30
|
import { generateChannelResponse } from '../../../mock-builders/generator/channel';
|
|
24
31
|
import { generateMember } from '../../../mock-builders/generator/member';
|
|
25
32
|
import { generateMessage } from '../../../mock-builders/generator/message';
|
|
33
|
+
import { convertDateToTimestamp } from '../../../mock-builders/generator/time';
|
|
26
34
|
import { generateUser } from '../../../mock-builders/generator/user';
|
|
27
35
|
import { getTestClientWithUser } from '../../../mock-builders/mock';
|
|
28
36
|
import { Attachment } from '../../Attachment/Attachment';
|
|
29
37
|
import { Chat } from '../../Chat/Chat';
|
|
38
|
+
import { MessageList } from '../../MessageList/MessageList';
|
|
30
39
|
import { Channel } from '../Channel';
|
|
31
|
-
import
|
|
32
|
-
channelInitialState,
|
|
33
|
-
useChannelDataState,
|
|
34
|
-
useChannelMessageDataState,
|
|
35
|
-
} from '../hooks/useChannelDataState';
|
|
36
|
-
import * as MessageListPaginationHooks from '../hooks/useMessageListPagination';
|
|
40
|
+
import * as CreateChannelContext from '../hooks/useCreateChannelContext';
|
|
37
41
|
|
|
38
42
|
// This component is used for performing effects in a component that consumes ChannelContext,
|
|
39
43
|
// i.e. making use of the callbacks & values provided by the Channel component.
|
|
@@ -84,14 +88,12 @@ const renderComponent = (
|
|
|
84
88
|
context: React.Context<unknown> = ChannelContext as React.Context<unknown>,
|
|
85
89
|
) =>
|
|
86
90
|
render(
|
|
87
|
-
<
|
|
88
|
-
<
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
</Chat>
|
|
94
|
-
</ChannelsStateProvider>,
|
|
91
|
+
<Chat client={chatClient}>
|
|
92
|
+
<Channel {...(props as React.ComponentProps<typeof Channel>)}>
|
|
93
|
+
{props.children}
|
|
94
|
+
<CallbackEffectWithContext {...{ callback, context }} />
|
|
95
|
+
</Channel>
|
|
96
|
+
</Chat>,
|
|
95
97
|
);
|
|
96
98
|
|
|
97
99
|
describe('Channel', () => {
|
|
@@ -108,8 +110,11 @@ describe('Channel', () => {
|
|
|
108
110
|
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
109
111
|
channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
110
112
|
channel.cid = mockedChannel.channel.cid as string;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
+
// `channel.getConfig()` is gone; `serverConfig` is a getter over the client's store. Nothing here
|
|
114
|
+
// asserts on the value, so seeding an empty config for this cid is enough to stand in for the spy.
|
|
115
|
+
chatClient.channelServerConfigsStore.partialNext({
|
|
116
|
+
configs: { ...chatClient.channelServerConfigs, [channel.cid]: {} as never },
|
|
117
|
+
});
|
|
113
118
|
});
|
|
114
119
|
|
|
115
120
|
afterEach(() => {
|
|
@@ -142,15 +147,64 @@ describe('Channel', () => {
|
|
|
142
147
|
await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
|
|
143
148
|
});
|
|
144
149
|
|
|
150
|
+
it('does not watch or load a draft channel, which has no id and is marked initialized', async () => {
|
|
151
|
+
const draft = chatClient.channel('messaging', {
|
|
152
|
+
members: [{ user_id: user.id }, { user_id: 'other' }],
|
|
153
|
+
} as never);
|
|
154
|
+
draft.initialized = true;
|
|
155
|
+
const watchSpy = jest.spyOn(draft, 'watch');
|
|
156
|
+
const reloadSpy = jest.spyOn(draft.messagePaginator, 'reload');
|
|
157
|
+
|
|
158
|
+
renderComponent({ channel: draft });
|
|
159
|
+
// let the mount effect run to its end
|
|
160
|
+
await act(async () => {
|
|
161
|
+
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
162
|
+
});
|
|
163
|
+
|
|
164
|
+
expect(draft.isProvisional).toBe(true);
|
|
165
|
+
expect(watchSpy).not.toHaveBeenCalled();
|
|
166
|
+
expect(reloadSpy).not.toHaveBeenCalled();
|
|
167
|
+
});
|
|
168
|
+
|
|
145
169
|
it('should set an error if channel watch fails and render a LoadingErrorIndicator', async () => {
|
|
146
170
|
const watchError = new Error('channel watch fail');
|
|
147
|
-
|
|
171
|
+
// Rejected persistently, at the API seam: an offline open fails the mount `watch()` AND the
|
|
172
|
+
// paginator seed that follows it, and it is the paginator's own failed query that records
|
|
173
|
+
// `lastQueryError` — the only error surface this component reads.
|
|
174
|
+
jest.spyOn(channel, 'getOrCreate').mockRejectedValue(watchError);
|
|
175
|
+
// No item window is seeded on purpose: a load that never succeeded leaves `items` undefined, and
|
|
176
|
+
// the LoadingErrorIndicator has to render for that as much as for an empty array.
|
|
148
177
|
|
|
149
178
|
const { getByTestId } = renderComponent({ channel });
|
|
150
179
|
|
|
151
180
|
await waitFor(() => expect(getByTestId('loading-error')).toBeTruthy());
|
|
152
181
|
});
|
|
153
182
|
|
|
183
|
+
it('still seeds the paginator when the mount watch fails, so the failure is recorded', async () => {
|
|
184
|
+
// `watch()` does not go through the paginator, so its throw records nothing. The seed is
|
|
185
|
+
// therefore NOT skipped on a failed watch: the paginator issues its own query, and that query's
|
|
186
|
+
// failure is what puts `lastQueryError` on the only error surface this component reads. Skip the
|
|
187
|
+
// seed and an offline cold open renders an empty list instead of the retry screen.
|
|
188
|
+
const watchError = new Error('channel watch fail');
|
|
189
|
+
const getOrCreate = jest.spyOn(channel, 'getOrCreate').mockRejectedValue(watchError);
|
|
190
|
+
|
|
191
|
+
renderComponent({ channel });
|
|
192
|
+
|
|
193
|
+
await waitFor(() =>
|
|
194
|
+
expect(channel.messagePaginator.state.getLatestValue().lastQueryError).toBe(watchError),
|
|
195
|
+
);
|
|
196
|
+
// Two calls, not one: the watch, then the paginator's own query. The second is the one that records.
|
|
197
|
+
expect(getOrCreate.mock.calls.length).toBeGreaterThanOrEqual(2);
|
|
198
|
+
|
|
199
|
+
// Clearing is the paginator's own job, which is what the error screen's retry relies on.
|
|
200
|
+
getOrCreate.mockRestore();
|
|
201
|
+
await act(async () => {
|
|
202
|
+
await channel.messagePaginator.reload();
|
|
203
|
+
});
|
|
204
|
+
|
|
205
|
+
expect(channel.messagePaginator.state.getLatestValue().lastQueryError).toBeUndefined();
|
|
206
|
+
});
|
|
207
|
+
|
|
154
208
|
it('should render children if a channel is set', async () => {
|
|
155
209
|
const { getByTestId } = renderComponent({
|
|
156
210
|
channel,
|
|
@@ -169,65 +223,12 @@ describe('Channel', () => {
|
|
|
169
223
|
);
|
|
170
224
|
});
|
|
171
225
|
|
|
172
|
-
it('should add an `on` handler to the channel on mount', async () => {
|
|
173
|
-
const channelOnSpy = jest.spyOn(channel, 'on');
|
|
174
|
-
renderComponent({ channel });
|
|
175
|
-
|
|
176
|
-
await waitFor(() => expect(channelOnSpy).toHaveBeenCalledWith(expect.any(Function)));
|
|
177
|
-
});
|
|
178
|
-
|
|
179
|
-
it('should be able to open threads', async () => {
|
|
180
|
-
const threadMessage = messages[0];
|
|
181
|
-
const hasThread = jest.fn();
|
|
182
|
-
// this renders Channel, calls openThread from a child context consumer with a message,
|
|
183
|
-
// and then calls hasThread with the thread id if it was set.
|
|
184
|
-
const { rerender } = renderComponent(
|
|
185
|
-
{ channel },
|
|
186
|
-
(ctx) => {
|
|
187
|
-
const { openThread, thread } = ctx as {
|
|
188
|
-
openThread: (m: unknown) => void;
|
|
189
|
-
thread: { id: string } | null;
|
|
190
|
-
};
|
|
191
|
-
if (!thread) {
|
|
192
|
-
openThread(threadMessage);
|
|
193
|
-
} else {
|
|
194
|
-
hasThread(thread.id);
|
|
195
|
-
}
|
|
196
|
-
},
|
|
197
|
-
ThreadContext as React.Context<unknown>,
|
|
198
|
-
);
|
|
199
|
-
|
|
200
|
-
rerender(
|
|
201
|
-
<ChannelsStateProvider>
|
|
202
|
-
<Chat client={chatClient}>
|
|
203
|
-
<Channel channel={channel}>
|
|
204
|
-
<CallbackEffectWithContext
|
|
205
|
-
callback={(ctx) => {
|
|
206
|
-
const { openThread, thread } = ctx as {
|
|
207
|
-
openThread: (m: unknown) => void;
|
|
208
|
-
thread: { id: string } | null;
|
|
209
|
-
};
|
|
210
|
-
if (!thread) {
|
|
211
|
-
openThread(threadMessage);
|
|
212
|
-
} else {
|
|
213
|
-
hasThread(thread.id);
|
|
214
|
-
}
|
|
215
|
-
}}
|
|
216
|
-
context={ThreadContext as React.Context<unknown>}
|
|
217
|
-
/>
|
|
218
|
-
</Channel>
|
|
219
|
-
</Chat>
|
|
220
|
-
</ChannelsStateProvider>,
|
|
221
|
-
);
|
|
222
|
-
await waitFor(() => expect(hasThread).toHaveBeenCalledWith(threadMessage.id));
|
|
223
|
-
});
|
|
224
|
-
|
|
225
226
|
const queryChannelWithNewMessages = (newMessages: ReturnType<typeof generateMessage>[]) =>
|
|
226
227
|
// generate new channel mock from existing channel with new messages added
|
|
227
228
|
getOrCreateChannelApi(
|
|
228
229
|
generateChannelResponse({
|
|
229
230
|
channel: {
|
|
230
|
-
config: channel.
|
|
231
|
+
config: channel.serverConfig,
|
|
231
232
|
id: channel.id,
|
|
232
233
|
type: channel.type,
|
|
233
234
|
},
|
|
@@ -268,8 +269,6 @@ describe('Channel', () => {
|
|
|
268
269
|
const mockContext = {
|
|
269
270
|
channel,
|
|
270
271
|
client: chatClient,
|
|
271
|
-
markRead: () => {},
|
|
272
|
-
watcherCount: 5,
|
|
273
272
|
};
|
|
274
273
|
|
|
275
274
|
render(
|
|
@@ -288,8 +287,6 @@ describe('Channel', () => {
|
|
|
288
287
|
const ctx = context as unknown as typeof mockContext;
|
|
289
288
|
expect(ctx.channel).toBeInstanceOf(Object);
|
|
290
289
|
expect(ctx.client).toBeInstanceOf(StreamChat);
|
|
291
|
-
expect(ctx.markRead).toBeInstanceOf(Function);
|
|
292
|
-
expect(ctx.watcherCount).toBe(5);
|
|
293
290
|
});
|
|
294
291
|
});
|
|
295
292
|
});
|
|
@@ -352,10 +349,7 @@ describe('Channel', () => {
|
|
|
352
349
|
let context: ThreadContextValue | undefined;
|
|
353
350
|
|
|
354
351
|
const mockContext = {
|
|
355
|
-
|
|
356
|
-
thread: {},
|
|
357
|
-
threadHasMore: true,
|
|
358
|
-
threadLoadingMore: false,
|
|
352
|
+
allowThreadMessagesInChannel: true,
|
|
359
353
|
};
|
|
360
354
|
|
|
361
355
|
render(
|
|
@@ -371,13 +365,322 @@ describe('Channel', () => {
|
|
|
371
365
|
|
|
372
366
|
await waitFor(() => {
|
|
373
367
|
expect(context).toBeInstanceOf(Object);
|
|
374
|
-
expect(context!.
|
|
375
|
-
expect(context!.thread).toBeInstanceOf(Object);
|
|
376
|
-
expect(context!.threadHasMore).toBe(true);
|
|
377
|
-
expect(context!.threadLoadingMore).toBe(false);
|
|
368
|
+
expect(context!.allowThreadMessagesInChannel).toBe(true);
|
|
378
369
|
});
|
|
379
370
|
});
|
|
380
371
|
});
|
|
372
|
+
|
|
373
|
+
// `activate()` returns the release for that one activation. A mount that never runs it leaves the
|
|
374
|
+
// channel active for the rest of the session, which nothing else would surface.
|
|
375
|
+
it('releases its activation when the channel prop changes and on unmount', async () => {
|
|
376
|
+
const otherChannel = chatClient.channel('messaging', 'other-channel');
|
|
377
|
+
const renderChannel = (target: ChannelType) => (
|
|
378
|
+
<Chat client={chatClient}>
|
|
379
|
+
<Channel channel={target} initializeOnMount={false} />
|
|
380
|
+
</Chat>
|
|
381
|
+
);
|
|
382
|
+
|
|
383
|
+
const { rerender, unmount } = render(renderChannel(channel));
|
|
384
|
+
await waitFor(() => expect(channel.active).toBe(true));
|
|
385
|
+
|
|
386
|
+
rerender(renderChannel(otherChannel));
|
|
387
|
+
await waitFor(() => expect(otherChannel.active).toBe(true));
|
|
388
|
+
expect(channel.active).toBe(false);
|
|
389
|
+
|
|
390
|
+
unmount();
|
|
391
|
+
expect(otherChannel.active).toBe(false);
|
|
392
|
+
});
|
|
393
|
+
|
|
394
|
+
// A channel created from members whose first query finds its real cid already stored (e.g. by
|
|
395
|
+
// `notification.added_to_channel`) gets no events from then on, so <Channel> moves to the stored one.
|
|
396
|
+
describe('when the channel is superseded by the stored instance', () => {
|
|
397
|
+
const setup = () => {
|
|
398
|
+
const otherUser = generateUser({ id: 'other' });
|
|
399
|
+
const draft = chatClient.channel('messaging', {
|
|
400
|
+
members: [{ user_id: user.id }, { user_id: otherUser.id }],
|
|
401
|
+
});
|
|
402
|
+
const stored = chatClient.channel('messaging', '!members-xyz');
|
|
403
|
+
// the mount's first-page load would query (and so supersede) the draft before the test does
|
|
404
|
+
jest.spyOn(draft.messagePaginator, 'reload').mockResolvedValue(undefined);
|
|
405
|
+
useMockedApis(chatClient, [
|
|
406
|
+
getOrCreateChannelApi(
|
|
407
|
+
generateChannelResponse({
|
|
408
|
+
id: '!members-xyz',
|
|
409
|
+
members: [generateMember({ user }), generateMember({ user: otherUser })],
|
|
410
|
+
type: channelType,
|
|
411
|
+
}),
|
|
412
|
+
),
|
|
413
|
+
]);
|
|
414
|
+
let contextChannel: ChannelType | undefined;
|
|
415
|
+
renderComponent({ channel: draft, initializeOnMount: false }, (ctx) => {
|
|
416
|
+
contextChannel = (ctx as ChannelContextValue).channel;
|
|
417
|
+
});
|
|
418
|
+
return { draft, getContextChannel: () => contextChannel, stored };
|
|
419
|
+
};
|
|
420
|
+
|
|
421
|
+
it('renders the stored instance, with what was typed', async () => {
|
|
422
|
+
const { draft, getContextChannel, stored } = setup();
|
|
423
|
+
await waitFor(() => expect(draft.active).toBe(true));
|
|
424
|
+
draft.messageComposer.textComposer.setText('hello');
|
|
425
|
+
|
|
426
|
+
await act(async () => {
|
|
427
|
+
await draft.watch();
|
|
428
|
+
});
|
|
429
|
+
|
|
430
|
+
await waitFor(() => expect(getContextChannel()).toBe(stored));
|
|
431
|
+
expect(draft.supersededBy).toBe(stored);
|
|
432
|
+
expect(stored.active).toBe(true);
|
|
433
|
+
expect(draft.active).toBe(false);
|
|
434
|
+
expect(stored.messageComposer.textComposer.text).toBe('hello');
|
|
435
|
+
});
|
|
436
|
+
|
|
437
|
+
it('waits while the stored instance is open elsewhere and the composer holds a draft', async () => {
|
|
438
|
+
const { draft, getContextChannel, stored } = setup();
|
|
439
|
+
const releaseElsewhere = stored.activate();
|
|
440
|
+
await waitFor(() => expect(draft.active).toBe(true));
|
|
441
|
+
draft.messageComposer.textComposer.setText('hello');
|
|
442
|
+
|
|
443
|
+
await act(async () => {
|
|
444
|
+
await draft.watch();
|
|
445
|
+
});
|
|
446
|
+
|
|
447
|
+
expect(draft.supersededBy).toBe(stored);
|
|
448
|
+
expect(getContextChannel()).toBe(draft);
|
|
449
|
+
|
|
450
|
+
act(() => draft.messageComposer.clear());
|
|
451
|
+
await waitFor(() => expect(getContextChannel()).toBe(stored));
|
|
452
|
+
releaseElsewhere();
|
|
453
|
+
});
|
|
454
|
+
});
|
|
455
|
+
|
|
456
|
+
it('does not re-render while the message list queries', async () => {
|
|
457
|
+
// `Channel` subscribes to the paginator for `hasMessages` (what to show when a query errors).
|
|
458
|
+
// That selector must not carry `isLoading` with it: nothing here reads it, but `useStateStore`
|
|
459
|
+
// compares the selected keys, so it re-rendered Channel on every pagination, jump and reload.
|
|
460
|
+
const base = new Date('2020-01-01T00:00:00.000Z').getTime();
|
|
461
|
+
const mockedChannel = generateChannelResponse({
|
|
462
|
+
channel: { cid: channelCid },
|
|
463
|
+
id: channelId,
|
|
464
|
+
members: [generateMember({ user })],
|
|
465
|
+
messages: Array.from({ length: 5 }, (_, i) =>
|
|
466
|
+
generateMessage({ timestamp: new Date(base + i * 1000) }),
|
|
467
|
+
),
|
|
468
|
+
type: channelType,
|
|
469
|
+
});
|
|
470
|
+
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
471
|
+
const channel = chatClient.channel(channelType, channelId);
|
|
472
|
+
await channel.watch();
|
|
473
|
+
|
|
474
|
+
// `useCreateChannelContext` runs once per Channel render, so spying on it (without replacing it)
|
|
475
|
+
// is an exact render counter for the component itself — its children cannot supply one, since
|
|
476
|
+
// they are elements built by this test and do not re-render when Channel does.
|
|
477
|
+
const renderSpy = jest.spyOn(CreateChannelContext, 'useCreateChannelContext');
|
|
478
|
+
|
|
479
|
+
render(
|
|
480
|
+
<Chat client={chatClient}>
|
|
481
|
+
<Channel channel={channel} />
|
|
482
|
+
</Chat>,
|
|
483
|
+
);
|
|
484
|
+
|
|
485
|
+
await waitFor(() => expect(renderSpy).toHaveBeenCalled());
|
|
486
|
+
await act(async () => {
|
|
487
|
+
await Promise.resolve();
|
|
488
|
+
});
|
|
489
|
+
const rendersBefore = renderSpy.mock.calls.length;
|
|
490
|
+
|
|
491
|
+
await act(async () => {
|
|
492
|
+
channel.messagePaginator.state.partialNext({ isLoading: true });
|
|
493
|
+
await Promise.resolve();
|
|
494
|
+
channel.messagePaginator.state.partialNext({ isLoading: false });
|
|
495
|
+
await Promise.resolve();
|
|
496
|
+
});
|
|
497
|
+
|
|
498
|
+
// Guard against a vacuous pass: the flags really did move.
|
|
499
|
+
expect(channel.messagePaginator.state.getLatestValue().isLoading).toBe(false);
|
|
500
|
+
expect(renderSpy.mock.calls.length).toBe(rendersBefore);
|
|
501
|
+
});
|
|
502
|
+
|
|
503
|
+
it('does not re-render ChannelContext consumers while messages arrive', async () => {
|
|
504
|
+
// Everything per-message was taken off this context (messages, loading, highlightedMessageId,
|
|
505
|
+
// the load/reload callbacks). What is left changes on a channel or thread swap, not on traffic,
|
|
506
|
+
// so a consumer must render exactly once no matter how much is said in the channel.
|
|
507
|
+
const mockedChannel = generateChannelResponse({
|
|
508
|
+
channel: { cid: channelCid },
|
|
509
|
+
id: channelId,
|
|
510
|
+
members: [generateMember({ user })],
|
|
511
|
+
messages: [],
|
|
512
|
+
type: channelType,
|
|
513
|
+
});
|
|
514
|
+
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
515
|
+
const channel = chatClient.channel(channelType, channelId);
|
|
516
|
+
await channel.watch();
|
|
517
|
+
|
|
518
|
+
const seen: unknown[] = [];
|
|
519
|
+
render(
|
|
520
|
+
<Chat client={chatClient}>
|
|
521
|
+
<Channel channel={channel}>
|
|
522
|
+
<ContextConsumer
|
|
523
|
+
context={ChannelContext as React.Context<unknown>}
|
|
524
|
+
fn={(ctx) => seen.push(ctx)}
|
|
525
|
+
/>
|
|
526
|
+
</Channel>
|
|
527
|
+
</Chat>,
|
|
528
|
+
);
|
|
529
|
+
|
|
530
|
+
await waitFor(() => expect(seen.length).toBeGreaterThan(0));
|
|
531
|
+
const rendersBefore = seen.length;
|
|
532
|
+
const itemsBefore = channel.messagePaginator.state.getLatestValue().items?.length ?? 0;
|
|
533
|
+
|
|
534
|
+
// Time-ordered: `generateMessage` otherwise randomizes `created_at` into the past, and a message
|
|
535
|
+
// landing behind the loaded interval's lower bound is dropped rather than inserted.
|
|
536
|
+
const base = Date.now();
|
|
537
|
+
await act(async () => {
|
|
538
|
+
await Promise.resolve();
|
|
539
|
+
for (let i = 0; i < 5; i++) {
|
|
540
|
+
dispatchMessageNewEvent(
|
|
541
|
+
chatClient,
|
|
542
|
+
generateMessage({
|
|
543
|
+
cid: channelCid,
|
|
544
|
+
text: `incoming-${i}`,
|
|
545
|
+
timestamp: new Date(base + i * 1000),
|
|
546
|
+
user: generateUser(),
|
|
547
|
+
}),
|
|
548
|
+
channel.data,
|
|
549
|
+
);
|
|
550
|
+
}
|
|
551
|
+
});
|
|
552
|
+
|
|
553
|
+
// Guard against a vacuous pass: if the events never reached the paginator there was no traffic
|
|
554
|
+
// to be stable against. (`generateMessage` randomizes `created_at` into the past by default, and
|
|
555
|
+
// a message landing behind the loaded interval's lower bound is dropped rather than inserted.)
|
|
556
|
+
expect(channel.messagePaginator.state.getLatestValue().items?.length ?? 0).toBe(
|
|
557
|
+
itemsBefore + 5,
|
|
558
|
+
);
|
|
559
|
+
|
|
560
|
+
expect(seen.length).toBe(rendersBefore);
|
|
561
|
+
expect(new Set(seen).size).toBe(1);
|
|
562
|
+
});
|
|
563
|
+
|
|
564
|
+
it.each([
|
|
565
|
+
['deleted', () => dispatchChannelDeletedEvent(chatClient, { cid: channel.cid })],
|
|
566
|
+
[
|
|
567
|
+
'left because the user was removed',
|
|
568
|
+
() => dispatchNotificationRemovedFromChannel(chatClient, { cid: channel.cid }),
|
|
569
|
+
],
|
|
570
|
+
])('keeps rendering its messages once the channel is %s', async (_label, dispose) => {
|
|
571
|
+
const { getByText } = renderComponent({ channel, children: <MessageList /> });
|
|
572
|
+
await waitFor(() => expect(getByText(messages[0].text as string)).toBeTruthy());
|
|
573
|
+
|
|
574
|
+
act(() => dispose());
|
|
575
|
+
|
|
576
|
+
expect(channel.pendingDisposal).toBe(true);
|
|
577
|
+
expect(getByText(messages[0].text as string)).toBeTruthy();
|
|
578
|
+
});
|
|
579
|
+
|
|
580
|
+
it('marks the channel context disabled when channel.updated freezes the channel', async () => {
|
|
581
|
+
const seen: ChannelContextValue[] = [];
|
|
582
|
+
render(
|
|
583
|
+
<Chat client={chatClient}>
|
|
584
|
+
<Channel channel={channel}>
|
|
585
|
+
<ContextConsumer
|
|
586
|
+
context={ChannelContext as React.Context<unknown>}
|
|
587
|
+
fn={(ctx) => seen.push(ctx as ChannelContextValue)}
|
|
588
|
+
/>
|
|
589
|
+
</Channel>
|
|
590
|
+
</Chat>,
|
|
591
|
+
);
|
|
592
|
+
await waitFor(() => expect(channel.initialized).toBe(true));
|
|
593
|
+
expect(seen.at(-1)?.disabled).toBe(false);
|
|
594
|
+
|
|
595
|
+
act(() => dispatchChannelUpdatedEvent(chatClient, { ...channel.data, frozen: true }));
|
|
596
|
+
|
|
597
|
+
await waitFor(() => expect(seen.at(-1)?.disabled).toBe(true));
|
|
598
|
+
});
|
|
599
|
+
|
|
600
|
+
it('does not re-render when channel.updated changes nothing it shows', async () => {
|
|
601
|
+
const renderSpy = jest.spyOn(CreateChannelContext, 'useCreateChannelContext');
|
|
602
|
+
render(
|
|
603
|
+
<Chat client={chatClient}>
|
|
604
|
+
<Channel channel={channel} />
|
|
605
|
+
</Chat>,
|
|
606
|
+
);
|
|
607
|
+
await waitFor(() => expect(channel.initialized).toBe(true));
|
|
608
|
+
await act(async () => {
|
|
609
|
+
await Promise.resolve();
|
|
610
|
+
});
|
|
611
|
+
const rendersBefore = renderSpy.mock.calls.length;
|
|
612
|
+
const capabilitiesBefore = channel.state.getLatestValue().ownCapabilities;
|
|
613
|
+
|
|
614
|
+
act(() => dispatchChannelUpdatedEvent(chatClient, { ...channel.data }));
|
|
615
|
+
|
|
616
|
+
// Guard against a vacuous pass: the update was applied and republished the capabilities.
|
|
617
|
+
expect(channel.state.getLatestValue().ownCapabilities).not.toBe(capabilitiesBefore);
|
|
618
|
+
expect(channel.state.getLatestValue().ownCapabilities).toEqual(capabilitiesBefore);
|
|
619
|
+
expect(renderSpy.mock.calls.length).toBe(rendersBefore);
|
|
620
|
+
});
|
|
621
|
+
|
|
622
|
+
it('rebuilds own capabilities when a different capability is overridden', async () => {
|
|
623
|
+
let capabilities: OwnCapabilitiesContextValue | undefined;
|
|
624
|
+
const renderChannel = (overrideOwnCapabilities: Partial<OwnCapabilitiesContextValue>) => (
|
|
625
|
+
<Chat client={chatClient}>
|
|
626
|
+
<Channel channel={channel} overrideOwnCapabilities={overrideOwnCapabilities}>
|
|
627
|
+
<ContextConsumer
|
|
628
|
+
context={OwnCapabilitiesContext as React.Context<unknown>}
|
|
629
|
+
fn={(ctx) => {
|
|
630
|
+
capabilities = ctx as OwnCapabilitiesContextValue;
|
|
631
|
+
}}
|
|
632
|
+
/>
|
|
633
|
+
</Channel>
|
|
634
|
+
</Chat>
|
|
635
|
+
);
|
|
636
|
+
|
|
637
|
+
const { rerender } = render(renderChannel({ sendMessage: false }));
|
|
638
|
+
await waitFor(() => expect(capabilities?.sendMessage).toBe(false));
|
|
639
|
+
expect(capabilities?.uploadFile).toBe(true);
|
|
640
|
+
|
|
641
|
+
rerender(renderChannel({ uploadFile: false }));
|
|
642
|
+
|
|
643
|
+
await waitFor(() => expect(capabilities?.uploadFile).toBe(false));
|
|
644
|
+
expect(capabilities?.sendMessage).toBe(true);
|
|
645
|
+
});
|
|
646
|
+
|
|
647
|
+
it.each([
|
|
648
|
+
[true, 1],
|
|
649
|
+
[false, 0],
|
|
650
|
+
])('when isTyping is %s, sends %i typing.stop on background', async (isTyping, sent) => {
|
|
651
|
+
const mockedChannel = generateChannelResponse({
|
|
652
|
+
channel: { cid: channelCid, own_capabilities: ['send-typing-events'] },
|
|
653
|
+
id: channelId,
|
|
654
|
+
members: [generateMember({ user })],
|
|
655
|
+
messages,
|
|
656
|
+
type: channelType,
|
|
657
|
+
});
|
|
658
|
+
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
659
|
+
await channel.watch();
|
|
660
|
+
const sendEventSpy = jest.spyOn(channel, 'sendEvent').mockResolvedValue({} as never);
|
|
661
|
+
const addEventListenerSpy = jest.spyOn(AppState, 'addEventListener');
|
|
662
|
+
|
|
663
|
+
render(
|
|
664
|
+
<Chat client={chatClient} closeConnectionOnBackground={false}>
|
|
665
|
+
<Channel channel={channel} />
|
|
666
|
+
</Chat>,
|
|
667
|
+
);
|
|
668
|
+
await waitFor(() => expect(addEventListenerSpy).toHaveBeenCalled());
|
|
669
|
+
|
|
670
|
+
channel.isTyping = isTyping;
|
|
671
|
+
act(() => {
|
|
672
|
+
addEventListenerSpy.mock.calls.forEach(([, handler]) =>
|
|
673
|
+
(handler as (state: AppStateStatus) => void)('background'),
|
|
674
|
+
);
|
|
675
|
+
});
|
|
676
|
+
|
|
677
|
+
expect(sendEventSpy).toHaveBeenCalledTimes(sent);
|
|
678
|
+
if (sent) {
|
|
679
|
+
expect(sendEventSpy).toHaveBeenCalledWith({
|
|
680
|
+
event: { parent_id: undefined, type: 'typing.stop' },
|
|
681
|
+
});
|
|
682
|
+
}
|
|
683
|
+
});
|
|
381
684
|
});
|
|
382
685
|
|
|
383
686
|
describe('Channel initial load useEffect', () => {
|
|
@@ -409,21 +712,20 @@ describe('Channel initial load useEffect', () => {
|
|
|
409
712
|
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
410
713
|
await channel.watch();
|
|
411
714
|
channel.offlineMode = true;
|
|
412
|
-
channel
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
},
|
|
417
|
-
} as unknown as typeof channel.state;
|
|
715
|
+
// A DB-hydrated channel that hasn't been live-watched (initialized false) deterministically
|
|
716
|
+
// re-watches on mount; the paginator's isActiveIntervalAtHead heuristic is timing-dependent
|
|
717
|
+
// under mocked pagination, so drive the condition explicitly instead.
|
|
718
|
+
channel.initialized = false;
|
|
418
719
|
const watchSpy = jest.fn();
|
|
419
720
|
channel.watch = watchSpy;
|
|
420
721
|
|
|
421
|
-
|
|
722
|
+
// markReadOnMount off so the mount's async read request can't fire late and leak past teardown.
|
|
723
|
+
renderComponent({ channel, markReadOnMount: false });
|
|
422
724
|
|
|
423
725
|
await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
|
|
424
726
|
});
|
|
425
727
|
|
|
426
|
-
it(
|
|
728
|
+
it('should call channel.watch on mount for a non-offline channel that needs (re)initialization', async () => {
|
|
427
729
|
const messages = Array.from({ length: 10 }, (_, i) => generateMessage({ id: String(i) }));
|
|
428
730
|
const mockedChannel = generateChannelResponse({
|
|
429
731
|
messages,
|
|
@@ -433,113 +735,104 @@ describe('Channel initial load useEffect', () => {
|
|
|
433
735
|
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
434
736
|
await channel.watch();
|
|
435
737
|
|
|
436
|
-
channel.state
|
|
437
|
-
|
|
738
|
+
// Seed 10 members reactively on the real StateStore (channel.state is no longer a plain object).
|
|
739
|
+
channel.state.partialNext({
|
|
438
740
|
members: Object.fromEntries(
|
|
439
741
|
Array.from({ length: 10 }, (_, i) => [i, generateMember({ user_id: String(i) })]),
|
|
440
742
|
),
|
|
441
|
-
|
|
442
|
-
hasPrev: true,
|
|
443
|
-
},
|
|
444
|
-
messages: Array.from({ length: 10 }, (_, i) => generateMessage({ id: String(i) })),
|
|
445
|
-
} as unknown as typeof channel.state;
|
|
743
|
+
});
|
|
446
744
|
const watchSpy = jest.fn();
|
|
447
745
|
|
|
448
746
|
channel.offlineMode = false;
|
|
449
|
-
|
|
747
|
+
// Force the mount re-watch deterministically (isActiveIntervalAtHead is timing-dependent under
|
|
748
|
+
// mocked pagination).
|
|
749
|
+
channel.initialized = false;
|
|
450
750
|
channel.watch = watchSpy;
|
|
451
751
|
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
const { result: channelMessageState } = renderHook(() => useChannelMessageDataState(channel));
|
|
455
|
-
const { result: channelState } = renderHook(() => useChannelDataState(channel));
|
|
752
|
+
// markReadOnMount off so the mount's async read request can't fire late and leak past teardown.
|
|
753
|
+
renderComponent({ channel, markReadOnMount: false });
|
|
456
754
|
|
|
457
755
|
await waitFor(() => expect(watchSpy).toHaveBeenCalled());
|
|
458
|
-
|
|
459
|
-
await waitFor(() => expect(Object.keys(
|
|
756
|
+
// members now come reactively from channel.state (via the shim getter).
|
|
757
|
+
await waitFor(() => expect(Object.keys(channel.state.members)).toHaveLength(10));
|
|
460
758
|
});
|
|
461
759
|
|
|
462
|
-
|
|
463
|
-
const
|
|
760
|
+
describe('message page size', () => {
|
|
761
|
+
const mountChannel = async () => {
|
|
762
|
+
const mockedChannel = generateChannelResponse({ messages: [] });
|
|
763
|
+
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
764
|
+
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
765
|
+
// Force the mount watch, so waiting for it proves the effect got past the page-size write.
|
|
766
|
+
channel.initialized = false;
|
|
767
|
+
const watchSpy = jest.fn();
|
|
768
|
+
channel.watch = watchSpy;
|
|
769
|
+
|
|
770
|
+
renderComponent({ channel, markReadOnMount: false });
|
|
771
|
+
await waitFor(() => expect(watchSpy).toHaveBeenCalledTimes(1));
|
|
464
772
|
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
}
|
|
773
|
+
return channel;
|
|
774
|
+
};
|
|
468
775
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
return array.slice(start, end);
|
|
472
|
-
}
|
|
776
|
+
it('applies the SDK default when nothing was registered through client.config', async () => {
|
|
777
|
+
const channel = await mountChannel();
|
|
473
778
|
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
779
|
+
expect(channel.messagePaginator.pageSize).toBe(25);
|
|
780
|
+
});
|
|
781
|
+
|
|
782
|
+
it('keeps a page size registered under channel.messagePaginator', async () => {
|
|
783
|
+
chatClient.config.set({ channel: { messagePaginator: { pageSize: 40 } } });
|
|
784
|
+
|
|
785
|
+
const channel = await mountChannel();
|
|
786
|
+
|
|
787
|
+
expect(channel.messagePaginator.pageSize).toBe(40);
|
|
788
|
+
});
|
|
789
|
+
|
|
790
|
+
it('keeps a page size registered under the general messagePaginator key', async () => {
|
|
791
|
+
chatClient.config.set({ messagePaginator: { pageSize: 15 } });
|
|
792
|
+
|
|
793
|
+
const channel = await mountChannel();
|
|
794
|
+
|
|
795
|
+
expect(channel.messagePaginator.pageSize).toBe(15);
|
|
479
796
|
});
|
|
797
|
+
});
|
|
798
|
+
|
|
799
|
+
it('leaves targeting to the caller — <Channel> no longer jumps on its own', async () => {
|
|
800
|
+
// The `messageId` prop is gone. Jumping is the paginator's job, so nothing here should issue a
|
|
801
|
+
// jump: the integrator calls `paginator.jumpToMessage(...)` themselves, from a `useLayoutEffect`
|
|
802
|
+
// or before mount. See 'does not override a jump the integrator made before mount' for the other
|
|
803
|
+
// half of the contract — that <Channel> then keeps its hands off it.
|
|
804
|
+
const messages = Array.from({ length: 105 }, (_, i) => generateMessage({ id: String(i) }));
|
|
805
|
+
const mockedChannel = generateChannelResponse({ messages });
|
|
480
806
|
|
|
481
807
|
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
482
808
|
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
483
809
|
await channel.watch();
|
|
484
810
|
|
|
485
|
-
const
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
811
|
+
const jumpToMessageSpy = jest
|
|
812
|
+
.spyOn(channel.messagePaginator, 'jumpToMessage')
|
|
813
|
+
.mockResolvedValue(undefined as never);
|
|
814
|
+
const seedSpy = jest.spyOn(channel.messagePaginator, 'seedUnreadSnapshot');
|
|
489
815
|
|
|
490
|
-
channel
|
|
491
|
-
...channelInitialState,
|
|
492
|
-
loadMessageIntoState,
|
|
493
|
-
messagePagination: {
|
|
494
|
-
hasNext: true,
|
|
495
|
-
hasPrev: true,
|
|
496
|
-
},
|
|
497
|
-
messages,
|
|
498
|
-
} as unknown as typeof channel.state;
|
|
499
|
-
|
|
500
|
-
renderComponent({ channel, messageId: messageToSearch.id });
|
|
816
|
+
renderComponent({ channel, markReadOnMount: false });
|
|
501
817
|
|
|
818
|
+
// Gate on the initial-load effect reaching its decision point, so the negative below is not
|
|
819
|
+
// just "it has not happened yet".
|
|
502
820
|
await waitFor(() => {
|
|
503
|
-
expect(
|
|
821
|
+
expect(seedSpy).toHaveBeenCalled();
|
|
504
822
|
});
|
|
505
|
-
|
|
506
|
-
const { result: channelMessageState } = renderHook(() => useChannelMessageDataState(channel));
|
|
507
|
-
await waitFor(() => expect(channelMessageState.current.state.messages!).toHaveLength(25));
|
|
508
|
-
await waitFor(() =>
|
|
509
|
-
expect(
|
|
510
|
-
channelMessageState.current.state.messages!.find(
|
|
511
|
-
(message) => message.id === messageToSearch.id,
|
|
512
|
-
),
|
|
513
|
-
).toBeTruthy(),
|
|
514
|
-
);
|
|
823
|
+
expect(jumpToMessageSpy).not.toHaveBeenCalled();
|
|
515
824
|
});
|
|
516
825
|
|
|
517
826
|
describe('initialScrollToFirstUnreadMessage', () => {
|
|
518
827
|
afterEach(() => {
|
|
519
|
-
// Clear all mocks after each test
|
|
828
|
+
// Clear all mocks after each test. Deliberately not restoreAllMocks: that would also drop the
|
|
829
|
+
// shared axios `request` mock, letting a still in-flight mount re-watch fall through to the
|
|
830
|
+
// real HTTP adapter after the environment is torn down ("require a file after the Jest
|
|
831
|
+
// environment has been torn down").
|
|
520
832
|
jest.clearAllMocks();
|
|
521
|
-
// Restore all mocks to their original implementation
|
|
522
|
-
jest.restoreAllMocks();
|
|
523
833
|
cleanup();
|
|
524
834
|
});
|
|
525
|
-
|
|
526
|
-
values: Partial<ReturnType<typeof MessageListPaginationHooks.useMessageListPagination>>,
|
|
527
|
-
) =>
|
|
528
|
-
jest.spyOn(MessageListPaginationHooks, 'useMessageListPagination').mockImplementation(
|
|
529
|
-
() =>
|
|
530
|
-
({
|
|
531
|
-
copyMessagesStateFromChannel: jest.fn(),
|
|
532
|
-
loadChannelAroundMessage: jest.fn(),
|
|
533
|
-
loadChannelAtFirstUnreadMessage: jest.fn(),
|
|
534
|
-
loadInitialMessagesStateFromChannel: jest.fn(),
|
|
535
|
-
loadLatestMessages: jest.fn(),
|
|
536
|
-
loadMore: jest.fn(),
|
|
537
|
-
loadMoreRecent: jest.fn(),
|
|
538
|
-
state: { ...channelInitialState },
|
|
539
|
-
...values,
|
|
540
|
-
}) as unknown as ReturnType<typeof MessageListPaginationHooks.useMessageListPagination>,
|
|
541
|
-
);
|
|
542
|
-
it("should not call loadChannelAtFirstUnreadMessage if channel's unread count is 0", async () => {
|
|
835
|
+
it("should not jump to the first unread message if channel's unread count is 0", async () => {
|
|
543
836
|
const mockedChannel = generateChannelResponse({
|
|
544
837
|
messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
|
|
545
838
|
});
|
|
@@ -551,63 +844,85 @@ describe('Channel initial load useEffect', () => {
|
|
|
551
844
|
const read_data: typeof channel.state.read = {};
|
|
552
845
|
|
|
553
846
|
read_data[chatClient.user!.id] = {
|
|
554
|
-
last_read:
|
|
847
|
+
last_read: convertDateToTimestamp(),
|
|
555
848
|
user,
|
|
556
849
|
} as unknown as (typeof channel.state.read)[string];
|
|
557
850
|
|
|
558
|
-
channel.state
|
|
559
|
-
...channelInitialState,
|
|
560
|
-
read: read_data,
|
|
561
|
-
} as unknown as typeof channel.state;
|
|
851
|
+
channel.state.partialNext({ read: read_data });
|
|
562
852
|
jest.spyOn(channel, 'countUnread').mockImplementation(() => 0);
|
|
563
853
|
|
|
564
|
-
const
|
|
854
|
+
const jumpToTheFirstUnreadMessageSpy = jest
|
|
855
|
+
.spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
|
|
856
|
+
.mockResolvedValue(undefined as never);
|
|
565
857
|
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
858
|
+
renderComponent({
|
|
859
|
+
channel,
|
|
860
|
+
initialScrollToFirstUnreadMessage: true,
|
|
861
|
+
// Skip the incidental mark-read-on-mount so its async read request can't fire a real
|
|
862
|
+
// HTTP call after this describe's afterEach restores the axios mock.
|
|
863
|
+
markReadOnMount: false,
|
|
864
|
+
});
|
|
569
865
|
|
|
570
866
|
await waitFor(() => {
|
|
571
|
-
expect(
|
|
867
|
+
expect(jumpToTheFirstUnreadMessageSpy).not.toHaveBeenCalled();
|
|
572
868
|
});
|
|
573
869
|
});
|
|
574
870
|
|
|
575
|
-
it(
|
|
576
|
-
const
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
871
|
+
it('does not override a jump the integrator made before mount', async () => {
|
|
872
|
+
const messages = Array.from({ length: 10 }, (_, i) =>
|
|
873
|
+
generateMessage({ id: `m${i}`, text: `message-${i}` }),
|
|
874
|
+
);
|
|
875
|
+
const mockedChannel = generateChannelResponse({ messages });
|
|
580
876
|
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
581
877
|
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
582
878
|
await channel.watch();
|
|
583
879
|
|
|
584
880
|
const user = generateUser();
|
|
585
|
-
const numberOfUnreadMessages = 15;
|
|
586
881
|
const read_data: typeof channel.state.read = {};
|
|
587
|
-
|
|
588
882
|
read_data[chatClient.user!.id] = {
|
|
589
|
-
last_read:
|
|
590
|
-
unread_messages:
|
|
883
|
+
last_read: convertDateToTimestamp(),
|
|
884
|
+
unread_messages: 15,
|
|
591
885
|
user,
|
|
592
886
|
};
|
|
593
|
-
channel.state
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
887
|
+
channel.state.partialNext({ read: read_data });
|
|
888
|
+
jest.spyOn(channel, 'countUnread').mockImplementation(() => 15);
|
|
889
|
+
|
|
890
|
+
const jumpToTheFirstUnreadMessageSpy = jest
|
|
891
|
+
.spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
|
|
892
|
+
.mockResolvedValue(undefined as never);
|
|
893
|
+
// `initChannel` always re-seeds the unread snapshot, and does so on the line BEFORE it decides
|
|
894
|
+
// whether to jump. Waiting on it is what makes the negative assertion below mean anything: a
|
|
895
|
+
// bare `waitFor(() => expect(spy).not.toHaveBeenCalled())` passes on the first tick, before the
|
|
896
|
+
// effect has run at all.
|
|
897
|
+
const seedSpy = jest.spyOn(channel.messagePaginator, 'seedUnreadSnapshot');
|
|
898
|
+
|
|
899
|
+
// THE INTEGRATOR'S OWN JUMP, before <Channel> mounts. No `messageId` prop is passed.
|
|
900
|
+
channel.messagePaginator.emitMessageFocusSignal({
|
|
901
|
+
messageId: 'm4',
|
|
902
|
+
reason: 'jump-to-message',
|
|
903
|
+
ttlMs: 3000,
|
|
904
|
+
});
|
|
602
905
|
|
|
603
|
-
renderComponent({
|
|
906
|
+
renderComponent({
|
|
907
|
+
channel,
|
|
908
|
+
initialScrollToFirstUnreadMessage: true,
|
|
909
|
+
markReadOnMount: false,
|
|
910
|
+
});
|
|
604
911
|
|
|
912
|
+
// Wait until the initial-load effect has actually reached its decision point.
|
|
605
913
|
await waitFor(() => {
|
|
606
|
-
expect(
|
|
914
|
+
expect(seedSpy).toHaveBeenCalled();
|
|
607
915
|
});
|
|
916
|
+
|
|
917
|
+
// Channel must NOT hijack the scroll to the first unread message...
|
|
918
|
+
expect(jumpToTheFirstUnreadMessageSpy).not.toHaveBeenCalled();
|
|
919
|
+
// ...and the integrator's target must still be the focused one.
|
|
920
|
+
expect(channel.messagePaginator.messageFocusSignal.getLatestValue().signal?.messageId).toBe(
|
|
921
|
+
'm4',
|
|
922
|
+
);
|
|
608
923
|
});
|
|
609
924
|
|
|
610
|
-
it("should
|
|
925
|
+
it("should jump to the first unread message if channel's unread count is greater than 0", async () => {
|
|
611
926
|
const mockedChannel = generateChannelResponse({
|
|
612
927
|
messages: Array.from({ length: 10 }, (_, i) => generateMessage({ text: `message-${i}` })),
|
|
613
928
|
});
|
|
@@ -617,61 +932,109 @@ describe('Channel initial load useEffect', () => {
|
|
|
617
932
|
await channel.watch();
|
|
618
933
|
|
|
619
934
|
const user = generateUser();
|
|
620
|
-
const numberOfUnreadMessages =
|
|
935
|
+
const numberOfUnreadMessages = 15;
|
|
621
936
|
const read_data: typeof channel.state.read = {};
|
|
622
937
|
|
|
623
938
|
read_data[chatClient.user!.id] = {
|
|
624
|
-
last_read:
|
|
939
|
+
last_read: convertDateToTimestamp(),
|
|
625
940
|
unread_messages: numberOfUnreadMessages,
|
|
626
941
|
user,
|
|
627
942
|
};
|
|
628
|
-
channel.state
|
|
629
|
-
...channelInitialState,
|
|
630
|
-
read: read_data,
|
|
631
|
-
} as unknown as typeof channel.state;
|
|
943
|
+
channel.state.partialNext({ read: read_data });
|
|
632
944
|
|
|
633
945
|
jest.spyOn(channel, 'countUnread').mockImplementation(() => numberOfUnreadMessages);
|
|
634
|
-
const
|
|
946
|
+
const jumpToTheFirstUnreadMessageSpy = jest
|
|
947
|
+
.spyOn(channel.messagePaginator, 'jumpToTheFirstUnreadMessage')
|
|
948
|
+
.mockResolvedValue(undefined as never);
|
|
635
949
|
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
950
|
+
renderComponent({
|
|
951
|
+
channel,
|
|
952
|
+
initialScrollToFirstUnreadMessage: true,
|
|
953
|
+
// Skip the incidental mark-read-on-mount so its async read request can't fire a real
|
|
954
|
+
// HTTP call after this describe's afterEach restores the axios mock.
|
|
955
|
+
markReadOnMount: false,
|
|
956
|
+
});
|
|
639
957
|
|
|
640
958
|
await waitFor(() => {
|
|
641
|
-
expect(
|
|
959
|
+
expect(jumpToTheFirstUnreadMessageSpy).toHaveBeenCalled();
|
|
642
960
|
});
|
|
643
961
|
});
|
|
644
962
|
});
|
|
645
963
|
|
|
646
|
-
it('
|
|
964
|
+
it('reloads the channel on reconnect while preserving failed messages', async () => {
|
|
965
|
+
// The reload is issued by `client.connectionRecovery` now, not by this component — `<Channel>`
|
|
966
|
+
// only marks the channel active. Asserted end to end on purpose: what matters is that a reconnect
|
|
967
|
+
// still refreshes the open channel and still does not lose locally-unsent messages.
|
|
968
|
+
// Deterministic timestamps so the 10 loaded messages and the 10 offline-failed messages occupy
|
|
969
|
+
// adjacent, ordered positions in the paginator's active window.
|
|
970
|
+
const baseTime = 1600000000000;
|
|
647
971
|
const mockedChannel = generateChannelResponse({
|
|
648
|
-
messages: Array.from({ length: 10 }, (_, i) =>
|
|
972
|
+
messages: Array.from({ length: 10 }, (_, i) =>
|
|
973
|
+
generateMessage({ text: `message-${i}`, timestamp: new Date(baseTime + i * 1000) }),
|
|
974
|
+
),
|
|
649
975
|
});
|
|
650
976
|
|
|
651
977
|
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
652
978
|
const channel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
653
979
|
await channel.watch();
|
|
654
980
|
|
|
981
|
+
// Call through to the real reload so the resync actually reconciles (and we can assert it ran).
|
|
982
|
+
const reloadSpy = jest.spyOn(channel, 'reload');
|
|
983
|
+
|
|
655
984
|
renderComponent({ channel });
|
|
656
985
|
|
|
657
986
|
await waitFor(() => {
|
|
658
987
|
act(() => dispatchConnectionChanged(chatClient, false));
|
|
659
988
|
});
|
|
660
989
|
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
990
|
+
// Simulate 10 messages sent while offline that failed. They carry the channel cid (so they pass
|
|
991
|
+
// the paginator's cid match filter) and sit just after the loaded page.
|
|
992
|
+
act(() => {
|
|
993
|
+
Array.from({ length: 10 }, (_, i) =>
|
|
994
|
+
generateMessage({
|
|
995
|
+
cid: channel.cid,
|
|
996
|
+
status: 'failed',
|
|
997
|
+
text: `failed-message-${i}`,
|
|
998
|
+
timestamp: new Date(baseTime + 100000 + i * 1000),
|
|
999
|
+
}),
|
|
1000
|
+
).forEach((m) => channel.messagePaginator.ingestItem(channel.state.formatMessage(m)));
|
|
667
1001
|
});
|
|
668
1002
|
|
|
669
1003
|
await waitFor(() => {
|
|
670
1004
|
act(() => dispatchConnectionChanged(chatClient));
|
|
671
1005
|
});
|
|
672
1006
|
|
|
1007
|
+
// The reload re-watches and reconciles, but preserves the failed (locally-unsent) messages —
|
|
1008
|
+
// the 10 originals + 10 failed remain.
|
|
673
1009
|
await waitFor(() => {
|
|
674
|
-
expect(
|
|
1010
|
+
expect(reloadSpy).toHaveBeenCalled();
|
|
1011
|
+
expect(channel.messagePaginator.headItems.length).toBe(20);
|
|
1012
|
+
});
|
|
1013
|
+
});
|
|
1014
|
+
|
|
1015
|
+
describe('read on open', () => {
|
|
1016
|
+
it('still marks a channel with unread messages read when it is opened', async () => {
|
|
1017
|
+
const otherUser = generateUser();
|
|
1018
|
+
const mockedChannel = generateChannelResponse({
|
|
1019
|
+
members: [generateMember({ user }), generateMember({ user: otherUser })],
|
|
1020
|
+
messages: [generateMessage({ user: otherUser }), generateMessage({ user: otherUser })],
|
|
1021
|
+
read: [{ last_read: asTimestampNS(1), unread_messages: 2, user }],
|
|
1022
|
+
});
|
|
1023
|
+
useMockedApis(chatClient, [getOrCreateChannelApi(mockedChannel)]);
|
|
1024
|
+
const testChannel = chatClient.channel('messaging', mockedChannel.channel.id);
|
|
1025
|
+
await testChannel.watch();
|
|
1026
|
+
const markRead = jest
|
|
1027
|
+
.spyOn(testChannel, 'markRead')
|
|
1028
|
+
.mockResolvedValue({} as Awaited<ReturnType<typeof testChannel.markRead>>);
|
|
1029
|
+
|
|
1030
|
+
render(
|
|
1031
|
+
<Chat client={chatClient}>
|
|
1032
|
+
<Channel channel={testChannel} />
|
|
1033
|
+
</Chat>,
|
|
1034
|
+
);
|
|
1035
|
+
|
|
1036
|
+
await waitFor(() => expect(markRead).toHaveBeenCalled());
|
|
1037
|
+
expect(markRead.mock.calls.every(([options]) => !options?.thread_id)).toBe(true);
|
|
675
1038
|
});
|
|
676
1039
|
});
|
|
677
1040
|
});
|