@ethora/chat-component-rn 26.7.9 → 26.8.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/CHANGELOG.md +0 -93
- package/README.md +10 -33
- package/lib/commonjs/assets/icons.js +2 -7
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/AuthForms/Login.js +4 -4
- package/lib/commonjs/components/AuthForms/Login.js.map +1 -1
- package/lib/commonjs/components/Header/HeaderRoomList.js +7 -26
- package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js +3 -9
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +13 -101
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +38 -34
- package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/LoginWrapper.js +1 -2
- package/lib/commonjs/components/MainComponents/LoginWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaMessage.js +9 -29
- package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageContainer.js +1 -5
- package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageList.js +5 -13
- package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js +13 -14
- package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js +24 -3
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/RoomList.js +35 -208
- package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +98 -317
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageTranslate.js +16 -7
- package/lib/commonjs/components/MessageBubble/MessageTranslate.js.map +1 -1
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +112 -320
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +215 -556
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/DeleteChatModal.js +9 -7
- package/lib/commonjs/components/Modals/ChatProfileModal/DeleteChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +27 -69
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +1 -2
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/commonjs/components/Modals/Modal/Modal.js +0 -8
- package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js +1 -2
- package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +109 -205
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js +0 -8
- package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js +2 -4
- package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js +21 -7
- package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +244 -507
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +46 -74
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/commonjs/components/Modals/styledModalComponents.js +2 -9
- package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +39 -23
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +3 -22
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +3 -17
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +3 -17
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js +3 -6
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/commonjs/components/styled/AudioMessage.js +1 -2
- package/lib/commonjs/components/styled/AudioMessage.js.map +1 -1
- package/lib/commonjs/components/styled/DateLabel.js +10 -3
- package/lib/commonjs/components/styled/DateLabel.js.map +1 -1
- package/lib/commonjs/components/styled/MessageImage.js +9 -37
- package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
- package/lib/commonjs/components/styled/NewMessageLabel.js +3 -1
- package/lib/commonjs/components/styled/NewMessageLabel.js.map +1 -1
- package/lib/commonjs/components/styled/SendInput.js +17 -86
- package/lib/commonjs/components/styled/SendInput.js.map +1 -1
- package/lib/commonjs/components/styled/StyledComponents.js +3 -9
- package/lib/commonjs/components/styled/StyledComponents.js.map +1 -1
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +4 -11
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/commonjs/components/styled/UnsupportedType.js +4 -14
- package/lib/commonjs/components/styled/UnsupportedType.js.map +1 -1
- package/lib/commonjs/components/styled/VideoMessage.js +61 -119
- package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +54 -128
- package/lib/commonjs/context/xmppProvider.js.map +1 -1
- package/lib/commonjs/helpers/createMessageFromXml.js +1 -19
- package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
- package/lib/commonjs/helpers/ensureScopedChatCache.js +2 -2
- package/lib/commonjs/helpers/ensureScopedChatCache.js.map +1 -1
- package/lib/commonjs/helpers/getDataFromXml.js +24 -1
- package/lib/commonjs/helpers/getDataFromXml.js.map +1 -1
- package/lib/commonjs/helpers/historyPreloadScheduler.js +2 -65
- package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/commonjs/helpers/initXmppRooms.js +8 -14
- package/lib/commonjs/helpers/initXmppRooms.js.map +1 -1
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js +13 -0
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/commonjs/helpers/isUnresolvedSenderId.js +6 -1
- package/lib/commonjs/helpers/isUnresolvedSenderId.js.map +1 -1
- package/lib/commonjs/helpers/mimeToExtension.js +14 -6
- package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js +17 -130
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/commonjs/helpers/resolveLangSource.js +38 -0
- package/lib/commonjs/helpers/resolveLangSource.js.map +1 -0
- package/lib/commonjs/helpers/xmppUsername.js +39 -0
- package/lib/commonjs/helpers/xmppUsername.js.map +1 -0
- package/lib/commonjs/hooks/useChatRoomFocus.js +8 -17
- package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -1
- package/lib/commonjs/hooks/useChatWrapperInit.js +14 -32
- package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/commonjs/hooks/useComposing.js +0 -27
- package/lib/commonjs/hooks/useComposing.js.map +1 -1
- package/lib/commonjs/hooks/useLogout.js +7 -15
- package/lib/commonjs/hooks/useLogout.js.map +1 -1
- package/lib/commonjs/hooks/usePendingNotification.js +11 -8
- package/lib/commonjs/hooks/usePendingNotification.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +14 -50
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js +1 -6
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
- package/lib/commonjs/i18n/strings.js +133 -121
- package/lib/commonjs/i18n/strings.js.map +1 -1
- package/lib/commonjs/i18n/useT.js +1 -1
- package/lib/commonjs/main.js +0 -44
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/auth.api.js +60 -134
- package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/roomMembers.api.js +1 -1
- package/lib/commonjs/networking/api-requests/roomMembers.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/rooms.api.js +9 -9
- package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/user.api.js +9 -68
- package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
- package/lib/commonjs/networking/apiClient.js +112 -62
- package/lib/commonjs/networking/apiClient.js.map +1 -1
- package/lib/commonjs/networking/stanzaHandlers.js +51 -93
- package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
- package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +8 -46
- package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +1 -8
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/subscribeToRoomMessages.xmpp.js +1 -5
- package/lib/commonjs/networking/xmpp/subscribeToRoomMessages.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmppClient.js +8 -124
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/chatSettingsSlice.js +7 -26
- package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/commonjs/roomStore/index.js +2 -35
- package/lib/commonjs/roomStore/index.js.map +1 -1
- package/lib/commonjs/roomStore/persistence.js +39 -226
- package/lib/commonjs/roomStore/persistence.js.map +1 -1
- package/lib/commonjs/roomStore/roomsSlice.js +8 -87
- package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
- package/lib/commonjs/services/pushSubscriptionService.js +13 -15
- package/lib/commonjs/services/pushSubscriptionService.js.map +1 -1
- package/lib/commonjs/version.js +3 -1
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/assets/icons.js +1 -6
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/AuthForms/Login.js +4 -4
- package/lib/module/components/AuthForms/Login.js.map +1 -1
- package/lib/module/components/Header/HeaderRoomList.js +7 -26
- package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
- package/lib/module/components/MainComponents/ChatHeader.js +3 -9
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +14 -102
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +40 -36
- package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/LoginWrapper.js +1 -2
- package/lib/module/components/MainComponents/LoginWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/MediaMessage.js +10 -30
- package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/module/components/MainComponents/MessageContainer.js +1 -5
- package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/module/components/MainComponents/MessageList.js +5 -13
- package/lib/module/components/MainComponents/MessageList.js.map +1 -1
- package/lib/module/components/MainComponents/ProfileImagePlaceholder.js +13 -14
- package/lib/module/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
- package/lib/module/components/MainComponents/ReduxWrapper.js +26 -5
- package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/RoomList.js +35 -207
- package/lib/module/components/MainComponents/RoomList.js.map +1 -1
- package/lib/module/components/Menu/HeaderRoomListMenu.js +101 -319
- package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageTranslate.js +16 -7
- package/lib/module/components/MessageBubble/MessageTranslate.js.map +1 -1
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js +115 -311
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +219 -559
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/DeleteChatModal.js +9 -7
- package/lib/module/components/Modals/ChatProfileModal/DeleteChatModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +28 -70
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js +1 -2
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/module/components/Modals/Modal/Modal.js +1 -9
- package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/ModalContent.js +1 -2
- package/lib/module/components/Modals/NewChatModal/ModalContent.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js +111 -208
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js +0 -8
- package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
- package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js +2 -4
- package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/EditUserModal.js +23 -9
- package/lib/module/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +248 -509
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +48 -76
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/module/components/Modals/styledModalComponents.js +2 -9
- package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js +40 -24
- package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js +3 -22
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +3 -17
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +3 -17
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/module/components/VideoCalls/VideoCallSession.js +3 -6
- package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/module/components/styled/AudioMessage.js +1 -2
- package/lib/module/components/styled/AudioMessage.js.map +1 -1
- package/lib/module/components/styled/DateLabel.js +10 -3
- package/lib/module/components/styled/DateLabel.js.map +1 -1
- package/lib/module/components/styled/MessageImage.js +9 -37
- package/lib/module/components/styled/MessageImage.js.map +1 -1
- package/lib/module/components/styled/NewMessageLabel.js +3 -1
- package/lib/module/components/styled/NewMessageLabel.js.map +1 -1
- package/lib/module/components/styled/SendInput.js +18 -87
- package/lib/module/components/styled/SendInput.js.map +1 -1
- package/lib/module/components/styled/StyledComponents.js +3 -9
- package/lib/module/components/styled/StyledComponents.js.map +1 -1
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +4 -11
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/module/components/styled/UnsupportedType.js +4 -14
- package/lib/module/components/styled/UnsupportedType.js.map +1 -1
- package/lib/module/components/styled/VideoMessage.js +62 -120
- package/lib/module/components/styled/VideoMessage.js.map +1 -1
- package/lib/module/context/xmppProvider.js +55 -128
- package/lib/module/context/xmppProvider.js.map +1 -1
- package/lib/module/helpers/createMessageFromXml.js +1 -19
- package/lib/module/helpers/createMessageFromXml.js.map +1 -1
- package/lib/module/helpers/ensureScopedChatCache.js +2 -2
- package/lib/module/helpers/ensureScopedChatCache.js.map +1 -1
- package/lib/module/helpers/getDataFromXml.js +23 -1
- package/lib/module/helpers/getDataFromXml.js.map +1 -1
- package/lib/module/helpers/historyPreloadScheduler.js +3 -66
- package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/module/helpers/initXmppRooms.js +8 -14
- package/lib/module/helpers/initXmppRooms.js.map +1 -1
- package/lib/module/helpers/insertMessageWithDelimiter.js +13 -0
- package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/module/helpers/isUnresolvedSenderId.js +6 -1
- package/lib/module/helpers/isUnresolvedSenderId.js.map +1 -1
- package/lib/module/helpers/mimeToExtension.js +13 -6
- package/lib/module/helpers/mimeToExtension.js.map +1 -1
- package/lib/module/helpers/resolveInitBeforeLoadUser.js +16 -130
- package/lib/module/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/module/helpers/resolveLangSource.js +32 -0
- package/lib/module/helpers/resolveLangSource.js.map +1 -0
- package/lib/module/helpers/xmppUsername.js +35 -0
- package/lib/module/helpers/xmppUsername.js.map +1 -0
- package/lib/module/hooks/useChatRoomFocus.js +8 -17
- package/lib/module/hooks/useChatRoomFocus.js.map +1 -1
- package/lib/module/hooks/useChatWrapperInit.js +14 -32
- package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/module/hooks/useComposing.js +1 -28
- package/lib/module/hooks/useComposing.js.map +1 -1
- package/lib/module/hooks/useLogout.js +7 -15
- package/lib/module/hooks/useLogout.js.map +1 -1
- package/lib/module/hooks/usePendingNotification.js +11 -8
- package/lib/module/hooks/usePendingNotification.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +16 -52
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/hooks/useUnreadMessagesCounter.js +1 -6
- package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
- package/lib/module/i18n/strings.js +133 -121
- package/lib/module/i18n/strings.js.map +1 -1
- package/lib/module/i18n/useT.js +1 -1
- package/lib/module/main.js +2 -14
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/auth.api.js +59 -131
- package/lib/module/networking/api-requests/auth.api.js.map +1 -1
- package/lib/module/networking/api-requests/roomMembers.api.js +1 -1
- package/lib/module/networking/api-requests/roomMembers.api.js.map +1 -1
- package/lib/module/networking/api-requests/rooms.api.js +9 -9
- package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/module/networking/api-requests/user.api.js +7 -64
- package/lib/module/networking/api-requests/user.api.js.map +1 -1
- package/lib/module/networking/apiClient.js +113 -61
- package/lib/module/networking/apiClient.js.map +1 -1
- package/lib/module/networking/stanzaHandlers.js +52 -94
- package/lib/module/networking/stanzaHandlers.js.map +1 -1
- package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +8 -46
- package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +1 -8
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/subscribeToRoomMessages.xmpp.js +1 -5
- package/lib/module/networking/xmpp/subscribeToRoomMessages.xmpp.js.map +1 -1
- package/lib/module/networking/xmppClient.js +8 -124
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/chatSettingsSlice.js +7 -26
- package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/module/roomStore/index.js +4 -37
- package/lib/module/roomStore/index.js.map +1 -1
- package/lib/module/roomStore/persistence.js +38 -223
- package/lib/module/roomStore/persistence.js.map +1 -1
- package/lib/module/roomStore/roomsSlice.js +7 -86
- package/lib/module/roomStore/roomsSlice.js.map +1 -1
- package/lib/module/services/pushSubscriptionService.js +13 -15
- package/lib/module/services/pushSubscriptionService.js.map +1 -1
- package/lib/module/version.js +3 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/assets/icons.d.ts +0 -16
- package/lib/typescript/assets/icons.d.ts.map +1 -1
- package/lib/typescript/components/AuthForms/Login.d.ts.map +1 -1
- package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/LoginWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageList.d.ts +1 -10
- package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ProfileImagePlaceholder.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/RoomList.d.ts +0 -7
- package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts +0 -3
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageTranslate.d.ts.map +1 -1
- package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts +0 -9
- package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts +0 -10
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/DeleteChatModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
- package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts +2 -4
- package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts +1 -1
- package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/NewChatModal/UpdNewChatModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts +1 -6
- package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/EditUserModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts +0 -16
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts +0 -1
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
- package/lib/typescript/components/styled/AudioMessage.d.ts.map +1 -1
- package/lib/typescript/components/styled/DateLabel.d.ts.map +1 -1
- package/lib/typescript/components/styled/MessageImage.d.ts +0 -14
- package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
- package/lib/typescript/components/styled/NewMessageLabel.d.ts.map +1 -1
- package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/UnsupportedType.d.ts.map +1 -1
- package/lib/typescript/components/styled/VideoMessage.d.ts +0 -8
- package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
- package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/getDataFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
- package/lib/typescript/helpers/initXmppRooms.d.ts.map +1 -1
- package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
- package/lib/typescript/helpers/isUnresolvedSenderId.d.ts.map +1 -1
- package/lib/typescript/helpers/mimeToExtension.d.ts +15 -0
- package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
- package/lib/typescript/helpers/resolveInitBeforeLoadUser.d.ts.map +1 -1
- package/lib/typescript/helpers/resolveLangSource.d.ts +30 -0
- package/lib/typescript/helpers/resolveLangSource.d.ts.map +1 -0
- package/lib/typescript/helpers/xmppUsername.d.ts +13 -0
- package/lib/typescript/helpers/xmppUsername.d.ts.map +1 -0
- package/lib/typescript/hooks/useChatRoomFocus.d.ts +1 -4
- package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -1
- package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
- package/lib/typescript/hooks/useComposing.d.ts.map +1 -1
- package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
- package/lib/typescript/hooks/usePendingNotification.d.ts.map +1 -1
- package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts +0 -1
- package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts.map +1 -1
- package/lib/typescript/i18n/strings.d.ts.map +1 -1
- package/lib/typescript/i18n/useT.d.ts +1 -1
- package/lib/typescript/main.d.ts +2 -9
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts +1 -3
- package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/user.api.d.ts +0 -27
- package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
- package/lib/typescript/networking/apiClient.d.ts +6 -12
- package/lib/typescript/networking/apiClient.d.ts.map +1 -1
- package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +2 -10
- package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/subscribeToRoomMessages.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmppClient.d.ts +0 -14
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts +0 -16
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
- package/lib/typescript/roomStore/index.d.ts.map +1 -1
- package/lib/typescript/roomStore/persistence.d.ts +1 -18
- package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts +1 -14
- package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
- package/lib/typescript/services/pushSubscriptionService.d.ts +1 -1
- package/lib/typescript/services/pushSubscriptionService.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +5 -49
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/lib/typescript/version.d.ts.map +1 -1
- package/package.json +29 -41
- package/src/assets/icons.tsx +9 -48
- package/src/components/AuthForms/Login.tsx +3 -3
- package/src/components/Header/HeaderRoomList.tsx +6 -24
- package/src/components/MainComponents/ChatHeader.tsx +3 -9
- package/src/components/MainComponents/ChatRoom.tsx +16 -111
- package/src/components/MainComponents/ChatWrapper.tsx +53 -36
- package/src/components/MainComponents/LoginWrapper.tsx +0 -1
- package/src/components/MainComponents/MediaMessage.tsx +8 -26
- package/src/components/MainComponents/MessageContainer.tsx +1 -5
- package/src/components/MainComponents/MessageList.tsx +4 -23
- package/src/components/MainComponents/ProfileImagePlaceholder.tsx +14 -21
- package/src/components/MainComponents/ReduxWrapper.tsx +18 -1
- package/src/components/MainComponents/RoomList.tsx +39 -236
- package/src/components/Menu/HeaderRoomListMenu.tsx +75 -328
- package/src/components/MessageBubble/MessageTranslate.tsx +17 -12
- package/src/components/Modals/AttachSheet/AttachSheet.tsx +99 -331
- package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +293 -611
- package/src/components/Modals/ChatProfileModal/DeleteChatModal.tsx +9 -7
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +38 -79
- package/src/components/Modals/FilePreviewModal/PdfView.tsx +1 -2
- package/src/components/Modals/Modal/Modal.tsx +0 -7
- package/src/components/Modals/NewChatModal/ModalContent.tsx +3 -6
- package/src/components/Modals/NewChatModal/NewChatModal.tsx +126 -223
- package/src/components/Modals/NewChatModal/UpdNewChatModal.tsx +1 -12
- package/src/components/Modals/SelectUsersModal/SelectUsersModal.tsx +4 -14
- package/src/components/Modals/UserProfileModal/EditUserModal.tsx +25 -9
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +307 -617
- package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +58 -75
- package/src/components/Modals/styledModalComponents.tsx +2 -9
- package/src/components/RoomComponents/ChatRoomItem.tsx +50 -21
- package/src/components/RoomComponents/styled/LastMessageFile.tsx +4 -28
- package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +3 -18
- package/src/components/RoomComponents/styled/LastMessageVideo.tsx +3 -18
- package/src/components/VideoCalls/VideoCallSession.tsx +3 -8
- package/src/components/styled/AudioMessage.tsx +1 -2
- package/src/components/styled/DateLabel.tsx +10 -3
- package/src/components/styled/MessageImage.tsx +7 -53
- package/src/components/styled/NewMessageLabel.tsx +3 -1
- package/src/components/styled/SendInput.tsx +18 -91
- package/src/components/styled/StyledComponents.ts +3 -9
- package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +4 -11
- package/src/components/styled/UnsupportedType.tsx +4 -14
- package/src/components/styled/VideoMessage.tsx +54 -131
- package/src/context/xmppProvider.tsx +51 -134
- package/src/helpers/createMessageFromXml.ts +1 -20
- package/src/helpers/ensureScopedChatCache.ts +2 -2
- package/src/helpers/getDataFromXml.ts +25 -1
- package/src/helpers/historyPreloadScheduler.ts +3 -80
- package/src/helpers/initXmppRooms.tsx +10 -14
- package/src/helpers/insertMessageWithDelimiter.ts +13 -0
- package/src/helpers/isUnresolvedSenderId.ts +9 -1
- package/src/helpers/mimeToExtension.ts +22 -6
- package/src/helpers/resolveInitBeforeLoadUser.ts +18 -125
- package/src/helpers/resolveLangSource.ts +40 -0
- package/src/helpers/xmppUsername.ts +38 -0
- package/src/hooks/useChatRoomFocus.ts +5 -14
- package/src/hooks/useChatWrapperInit.ts +16 -32
- package/src/hooks/useComposing.tsx +1 -37
- package/src/hooks/useLogout.tsx +9 -15
- package/src/hooks/usePendingNotification.ts +11 -5
- package/src/hooks/useSendMessage.tsx +15 -60
- package/src/hooks/useUnreadMessagesCounter.ts +0 -11
- package/src/i18n/strings.ts +133 -121
- package/src/i18n/useT.ts +1 -1
- package/src/main.ts +2 -26
- package/src/networking/api-requests/auth.api.ts +48 -156
- package/src/networking/api-requests/roomMembers.api.ts +1 -1
- package/src/networking/api-requests/rooms.api.ts +9 -9
- package/src/networking/api-requests/user.api.ts +7 -79
- package/src/networking/apiClient.ts +123 -68
- package/src/networking/stanzaHandlers.ts +51 -92
- package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +10 -71
- package/src/networking/xmpp/presenceInRoom.xmpp.ts +1 -6
- package/src/networking/xmpp/subscribeToRoomMessages.xmpp.ts +1 -12
- package/src/networking/xmppClient.ts +9 -141
- package/src/roomStore/chatSettingsSlice.ts +10 -34
- package/src/roomStore/index.ts +4 -40
- package/src/roomStore/persistence.ts +40 -234
- package/src/roomStore/roomsSlice.ts +7 -87
- package/src/services/pushSubscriptionService.ts +13 -18
- package/src/types/types.ts +5 -58
- package/src/version.ts +3 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +0 -226
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +0 -1
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js +0 -556
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js.map +0 -1
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js +0 -210
- package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js.map +0 -1
- package/lib/commonjs/helpers/getChatBackground.js +0 -23
- package/lib/commonjs/helpers/getChatBackground.js.map +0 -1
- package/lib/commonjs/helpers/getDisplayFileName.js +0 -79
- package/lib/commonjs/helpers/getDisplayFileName.js.map +0 -1
- package/lib/commonjs/helpers/getServerReadTimestamp.js +0 -125
- package/lib/commonjs/helpers/getServerReadTimestamp.js.map +0 -1
- package/lib/commonjs/helpers/isOwnMessage.js +0 -75
- package/lib/commonjs/helpers/isOwnMessage.js.map +0 -1
- package/lib/commonjs/helpers/mediaLibraryRuntime.js +0 -31
- package/lib/commonjs/helpers/mediaLibraryRuntime.js.map +0 -1
- package/lib/commonjs/helpers/persistCrypto.js +0 -122
- package/lib/commonjs/helpers/persistCrypto.js.map +0 -1
- package/lib/commonjs/helpers/pickImageAsset.js +0 -68
- package/lib/commonjs/helpers/pickImageAsset.js.map +0 -1
- package/lib/commonjs/helpers/pushPayload.js +0 -71
- package/lib/commonjs/helpers/pushPayload.js.map +0 -1
- package/lib/commonjs/helpers/secureFileUrl.js +0 -101
- package/lib/commonjs/helpers/secureFileUrl.js.map +0 -1
- package/lib/commonjs/helpers/secureKeyValue.js +0 -83
- package/lib/commonjs/helpers/secureKeyValue.js.map +0 -1
- package/lib/commonjs/helpers/secureStoreRuntime.js +0 -59
- package/lib/commonjs/helpers/secureStoreRuntime.js.map +0 -1
- package/lib/commonjs/helpers/secureUserStorage.js +0 -75
- package/lib/commonjs/helpers/secureUserStorage.js.map +0 -1
- package/lib/commonjs/helpers/shallowEqual.js +0 -36
- package/lib/commonjs/helpers/shallowEqual.js.map +0 -1
- package/lib/commonjs/helpers/sheetGestures.js +0 -32
- package/lib/commonjs/helpers/sheetGestures.js.map +0 -1
- package/lib/commonjs/hooks/useFileToken.js +0 -10
- package/lib/commonjs/hooks/useFileToken.js.map +0 -1
- package/lib/commonjs/networking/authRefresh.js +0 -332
- package/lib/commonjs/networking/authRefresh.js.map +0 -1
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +0 -223
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +0 -1
- package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js +0 -548
- package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js.map +0 -1
- package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js +0 -205
- package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js.map +0 -1
- package/lib/module/helpers/getChatBackground.js +0 -18
- package/lib/module/helpers/getChatBackground.js.map +0 -1
- package/lib/module/helpers/getDisplayFileName.js +0 -73
- package/lib/module/helpers/getDisplayFileName.js.map +0 -1
- package/lib/module/helpers/getServerReadTimestamp.js +0 -120
- package/lib/module/helpers/getServerReadTimestamp.js.map +0 -1
- package/lib/module/helpers/isOwnMessage.js +0 -70
- package/lib/module/helpers/isOwnMessage.js.map +0 -1
- package/lib/module/helpers/mediaLibraryRuntime.js +0 -25
- package/lib/module/helpers/mediaLibraryRuntime.js.map +0 -1
- package/lib/module/helpers/persistCrypto.js +0 -115
- package/lib/module/helpers/persistCrypto.js.map +0 -1
- package/lib/module/helpers/pickImageAsset.js +0 -63
- package/lib/module/helpers/pickImageAsset.js.map +0 -1
- package/lib/module/helpers/pushPayload.js +0 -63
- package/lib/module/helpers/pushPayload.js.map +0 -1
- package/lib/module/helpers/secureFileUrl.js +0 -91
- package/lib/module/helpers/secureFileUrl.js.map +0 -1
- package/lib/module/helpers/secureKeyValue.js +0 -75
- package/lib/module/helpers/secureKeyValue.js.map +0 -1
- package/lib/module/helpers/secureStoreRuntime.js +0 -52
- package/lib/module/helpers/secureStoreRuntime.js.map +0 -1
- package/lib/module/helpers/secureUserStorage.js +0 -72
- package/lib/module/helpers/secureUserStorage.js.map +0 -1
- package/lib/module/helpers/shallowEqual.js +0 -31
- package/lib/module/helpers/shallowEqual.js.map +0 -1
- package/lib/module/helpers/sheetGestures.js +0 -26
- package/lib/module/helpers/sheetGestures.js.map +0 -1
- package/lib/module/hooks/useFileToken.js +0 -5
- package/lib/module/hooks/useFileToken.js.map +0 -1
- package/lib/module/networking/authRefresh.js +0 -321
- package/lib/module/networking/authRefresh.js.map +0 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts +0 -9
- package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts.map +0 -1
- package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts +0 -75
- package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts.map +0 -1
- package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts +0 -25
- package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts.map +0 -1
- package/lib/typescript/helpers/getChatBackground.d.ts +0 -15
- package/lib/typescript/helpers/getChatBackground.d.ts.map +0 -1
- package/lib/typescript/helpers/getDisplayFileName.d.ts +0 -49
- package/lib/typescript/helpers/getDisplayFileName.d.ts.map +0 -1
- package/lib/typescript/helpers/getServerReadTimestamp.d.ts +0 -69
- package/lib/typescript/helpers/getServerReadTimestamp.d.ts.map +0 -1
- package/lib/typescript/helpers/isOwnMessage.d.ts +0 -36
- package/lib/typescript/helpers/isOwnMessage.d.ts.map +0 -1
- package/lib/typescript/helpers/mediaLibraryRuntime.d.ts +0 -3
- package/lib/typescript/helpers/mediaLibraryRuntime.d.ts.map +0 -1
- package/lib/typescript/helpers/persistCrypto.d.ts +0 -13
- package/lib/typescript/helpers/persistCrypto.d.ts.map +0 -1
- package/lib/typescript/helpers/pickImageAsset.d.ts +0 -27
- package/lib/typescript/helpers/pickImageAsset.d.ts.map +0 -1
- package/lib/typescript/helpers/pushPayload.d.ts +0 -7
- package/lib/typescript/helpers/pushPayload.d.ts.map +0 -1
- package/lib/typescript/helpers/secureFileUrl.d.ts +0 -7
- package/lib/typescript/helpers/secureFileUrl.d.ts.map +0 -1
- package/lib/typescript/helpers/secureKeyValue.d.ts +0 -13
- package/lib/typescript/helpers/secureKeyValue.d.ts.map +0 -1
- package/lib/typescript/helpers/secureStoreRuntime.d.ts +0 -29
- package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +0 -1
- package/lib/typescript/helpers/secureUserStorage.d.ts +0 -23
- package/lib/typescript/helpers/secureUserStorage.d.ts.map +0 -1
- package/lib/typescript/helpers/shallowEqual.d.ts +0 -11
- package/lib/typescript/helpers/shallowEqual.d.ts.map +0 -1
- package/lib/typescript/helpers/sheetGestures.d.ts +0 -20
- package/lib/typescript/helpers/sheetGestures.d.ts.map +0 -1
- package/lib/typescript/hooks/useFileToken.d.ts +0 -2
- package/lib/typescript/hooks/useFileToken.d.ts.map +0 -1
- package/lib/typescript/networking/authRefresh.d.ts +0 -95
- package/lib/typescript/networking/authRefresh.d.ts.map +0 -1
- package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +0 -244
- package/src/components/Modals/ProfileHeader/ProfileHeader.tsx +0 -615
- package/src/components/Modals/ProfileHeader/ProfileMenu.tsx +0 -217
- package/src/helpers/getChatBackground.ts +0 -18
- package/src/helpers/getDisplayFileName.ts +0 -87
- package/src/helpers/getServerReadTimestamp.ts +0 -120
- package/src/helpers/isOwnMessage.ts +0 -90
- package/src/helpers/mediaLibraryRuntime.ts +0 -25
- package/src/helpers/persistCrypto.ts +0 -127
- package/src/helpers/pickImageAsset.ts +0 -68
- package/src/helpers/pushPayload.ts +0 -62
- package/src/helpers/secureFileUrl.ts +0 -103
- package/src/helpers/secureKeyValue.ts +0 -80
- package/src/helpers/secureStoreRuntime.ts +0 -62
- package/src/helpers/secureUserStorage.ts +0 -80
- package/src/helpers/shallowEqual.ts +0 -33
- package/src/helpers/sheetGestures.ts +0 -25
- package/src/hooks/useFileToken.ts +0 -7
- package/src/networking/authRefresh.ts +0 -451
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","addRoom","addRoomMessage","deleteRoomMessage","editRoomMessage","setComposing","setCurrentRoom","setRoomRole","updateRoom","mergeUsersSet","createMessageFromXml","getDataFromXml","setDeleteModal","messageNotificationManager","transformCallLogMessage","onRealtimeMessage","stanza","getChild","is","attrs","id","body","archived","data","deleted","console","log","toString","senderJID","from","parsed","pData","pId","pBody","pRest","mergedData","rawMessage","isDeleted","message","getState","chatSettingStore","user","xmppUsername","roomJID","split","dispatch","state","currentUserWallet","walletAddress","toLowerCase","senderJIDLower","String","includes","room","rooms","roomName","title","name","senderName","senderFirstName","senderLastName","filter","Boolean","join","trim","showNotification","err","warn","onDeleteMessage","stanzaId","by","messageId","isDeleteModal","onEditMessage","replace","text","onMessageHistory","children","xmlns","delay","forwardedMessage","innerFrom","mergedAttrs","xmppId","handleComposing","currentUser","composingUser","norm","s","senderLocal","selfUser","selfXmppUsername","selfWallet","isSelf","chatJID","composingList","push","fullName","pop","composing","onPresenceInRoom","startsWith","role","onChatInvite","client","type","chatId","xEls","getChildren","el","child","chat","presenceInRoomStanza","getRoomsStanza","onGetMembers","queries","activities","roomJid","q","acts","a","jid","activeRoomJID","length","existingRoom","existingMembers","roomMembers","existingByJid","Map","m","map","memberJid","existing","get","undefined","firstName","lastName","_id","ban_status","last_active","Number","updates","usersSetUpdates","member","local","Object","keys","members","onGetRoomInfo","onGetLastMessageArchive","_xmpp","onNewRoomCreated","xmpp","onGetChatRooms","Array","isArray","forEach","result","currentChatRooms","isRoomAlreadyAdded","values","some","element","roomData","usersCnt","users_cnt","messages","isLoading","roomBg","room_background","icon","room_thumbnail","unreadMessages","lastViewedTimestamp","error","e","onMessageError","_stanza","onReactionMessage","onReactionHistory","onRoomKicked"],"sourceRoot":"../../../src","sources":["networking/stanzaHandlers.ts"],"mappings":";;AACA,SAASA,KAAK,QAAQ,cAAc;AACpC,SACEC,OAAO,EACPC,cAAc,EACdC,iBAAiB,EACjBC,eAAe,EACfC,YAAY,EACZC,cAAc,EACdC,WAAW,EACXC,UAAU,EACVC,aAAa,QACR,yBAAyB;AAEhC,SAASC,oBAAoB,QAAQ,iCAAiC;AACtE,SAASC,cAAc,QAAQ,2BAA2B;AAC1D,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,0BAA0B,QAAQ,qCAAqC;AAChF,SAASC,uBAAuB,QAAQ,2BAA2B;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,iBAAiB,GAAG,MAAOC,MAAe,IAAK;EACnD,IACE,CAACA,MAAM,EAAEC,QAAQ,CAAC,QAAQ,CAAC,IAC3B,CAACD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,IAC7B,CAACD,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,IAC1B,CAACD,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC,IAC3B,CAACD,MAAM,CAACE,EAAE,CAAC,IAAI,CAAC,IAChBF,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,qBAAqB,EACzC;IACA,MAAMC,IAAI,GAAGL,MAAM,EAAEC,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAMK,QAAQ,GAAGN,MAAM,EAAEC,QAAQ,CAAC,UAAU,CAAC;IAC7C,MAAMM,IAAI,GAAGP,MAAM,EAAEC,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAMG,EAAE,GAAGE,QAAQ,EAAEH,KAAK,CAACC,EAAE;IAE7B,MAAMI,OAAO,GAAGR,MAAM,CACnBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,SAAS,CAAC;IAEvB,IAAI,CAACM,IAAI,EAAE;MACTE,OAAO,CAACC,GAAG,CAACV,MAAM,CAACW,QAAQ,CAAC,CAAC,CAAC;MAC9BF,OAAO,CAACC,GAAG,CAAC,6CAA6C,CAAC;MAC1D;IACF;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAME,SAAS,GAAGL,IAAI,CAACJ,KAAK,CAACS,SAAS,IAAIZ,MAAM,CAACG,KAAK,CAACU,IAAI;IAC3D,IAAI,CAACD,SAAS,EAAE;MACdH,OAAO,CAACC,GAAG,CAACV,MAAM,CAACW,QAAQ,CAAC,CAAC,CAAC;MAC9BF,OAAO,CAACC,GAAG,CAAC,kDAAkD,CAAC;MAC/D;IACF;;IAEA;IACA;IACA;IACA;IACA,MAAMI,MAAM,GAAG,MAAMnB,cAAc,CAACK,MAAM,CAAC;IAC3C,MAAM;MAAEO,IAAI,EAAEQ,KAAK;MAAEX,EAAE,EAAEY,GAAG;MAAEX,IAAI,EAAEY,KAAK;MAAE,GAAGC;IAAM,CAAC,GACnDJ,MAAM,IAAK,CAAC,CAAyC;IACvD,MAAMK,UAAmC,GAAG;MAAE,IAAIJ,KAAK,IAAIR,IAAI,CAACJ,KAAK;IAAE,CAAC;IACxE,IAAI,CAACgB,UAAU,CAACP,SAAS,EAAE;MAACO,UAAU,CAACP,SAAS,GAAGA,SAAS;IAAC;IAC7D;IACA;IACA;IACA,MAAMQ,UAAU,GAAG,MAAM1B,oBAAoB,CAAC;MAC5Ca,IAAI,EAAEY,UAAU;MAChBf,EAAE,EAAEY,GAAG,IAAIZ,EAAE;MACbC,IAAI,EAAEY,KAAK,IAAI,EAAE;MACjB,GAAGC,KAAK;MACRG,SAAS,EAAE,CAAC,CAACb,OAAO,IAAI,CAAC,CAACU,KAAK,EAAEV;IACnC,CAA+C,CAAC;;IAEhD;IACA;IACA;IACA;IACA;IACA,MAAMc,OAAO,GAAGxB,uBAAuB,CACrCsB,UAAU,EACVpC,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,IAAI,EAAEC,YAAY,IAAI,EAC1D,CAAC;IAED,MAAMC,OAAO,GAAG3B,MAAM,CAACG,KAAK,CAACU,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/C5C,KAAK,CAAC6C,QAAQ,CACZ3C,cAAc,CAAC;MACbyC,OAAO;MACPL;IACF,CAAC,CACH,CAAC;;IAED;IACA;IACA,IAAI;MACF,MAAMQ,KAAK,GAAG9C,KAAK,CAACuC,QAAQ,CAAC,CAAC;MAC9B,MAAMQ,iBAAiB,GAAG,CAACD,KAAK,CAACN,gBAAgB,CAACC,IAAI,EAAEO,aAAa,IAAI,EAAE,EAAEC,WAAW,CAAC,CAAC;MAC1F,MAAMC,cAAc,GAAGC,MAAM,CAACvB,SAAS,IAAI,EAAE,CAAC,CAACqB,WAAW,CAAC,CAAC;MAC5D,IAAIF,iBAAiB,IAAIG,cAAc,CAACE,QAAQ,CAACL,iBAAiB,CAAC,EAAE;QACnE,OAAOT,OAAO,CAAC,CAAC;MAClB;MACA,MAAMe,IAAI,GAAGP,KAAK,CAACQ,KAAK,CAACA,KAAK,CAACX,OAAO,CAAC;MACvC,MAAMY,QAAQ,GAAGF,IAAI,EAAEG,KAAK,IAAIH,IAAI,EAAEI,IAAI,IAAI,EAAE;MAChD,MAAMC,UAAU,GAAG,CACjBnC,IAAI,CAACJ,KAAK,CAACwC,eAAe,EAC1BpC,IAAI,CAACJ,KAAK,CAACyC,cAAc,CAC1B,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC,CACTC,IAAI,CAAC,CAAC,IAAI,aAAa;MAC1BnD,0BAA0B,CAACoD,gBAAgB,CACzC3B,OAAO,EACPiB,QAAQ,EACRG,UAAU,EACVf,OACF,CAAC;IACH,CAAC,CAAC,OAAOuB,GAAG,EAAE;MACZzC,OAAO,CAAC0C,IAAI,CAAC,8BAA8B,EAAED,GAAG,CAAC;IACnD;IACA,OAAO5B,OAAO;EAChB;AACF,CAAC;AAED,MAAM8B,eAAe,GAAG,MAAOpD,MAAe,IAAK;EACjD,IAAIA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,qBAAqB,EAAE;IAC7C,MAAMI,OAAO,GAAGR,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC;IACzC,MAAMoD,QAAQ,GAAGrD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC;IAE7C,IAAI,CAACO,OAAO,EAAE;MACZ;IACF;IAEAxB,KAAK,CAAC6C,QAAQ,CACZ1C,iBAAiB,CAAC;MAChBwC,OAAO,EAAE0B,QAAQ,EAAElD,KAAK,CAACmD,EAAE;MAC3BC,SAAS,EAAE/C,OAAO,CAACL,KAAK,CAACC;IAC3B,CAAC,CACH,CAAC;IACDpB,KAAK,CAAC6C,QAAQ,CAACjC,cAAc,CAAC;MAAE4D,aAAa,EAAE;IAAM,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC;AAED,MAAMC,aAAa,GAAG,MAAOzD,MAAe,IAAK;EAC/C,IAAIA,MAAM,EAAEG,KAAK,EAAEC,EAAE,EAAEgC,QAAQ,CAAC,cAAc,CAAC,EAAE;IAC/C,MAAMiB,QAAQ,GAAGrD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC;IAC7C,MAAMyD,OAAO,GAAG1D,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC;IAE1C,IAAI,CAACoD,QAAQ,IAAI,CAACK,OAAO,EAAE;MACzB;IACF;IAEA1E,KAAK,CAAC6C,QAAQ,CACZzC,eAAe,CAAC;MACduC,OAAO,EAAE0B,QAAQ,EAAElD,KAAK,CAACmD,EAAE;MAC3BC,SAAS,EAAEG,OAAO,EAAEvD,KAAK,CAACC,EAAE;MAC5BuD,IAAI,EAAED,OAAO,EAAEvD,KAAK,CAACwD;IACvB,CAAC,CACH,CAAC;EACH;AACF,CAAC;AAED,MAAMC,gBAAgB,GAAG,MAAO5D,MAAW,IAAK;EAC9C,IACEA,MAAM,CAACE,EAAE,CAAC,SAAS,CAAC,IACpBF,MAAM,CAAC6D,QAAQ,CAAC,CAAC,CAAC,CAAC1D,KAAK,CAAC2D,KAAK,KAAK,gBAAgB,EACnD;IACA;IACA,MAAMzD,IAAI,GAAGL,MAAM,CAChBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,MAAM,CAAC;IACpB,MAAMM,IAAI,GAAGP,MAAM,CAChBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,MAAM,CAAC;IACpB,MAAMO,OAAO,GAAGR,MAAM,CACnBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,SAAS,CAAC;IAEvB,MAAM8D,KAAK,GAAG/D,MAAM,CACjBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,OAAO,CAAC;IACrB,MAAMG,EAAE,GAAGJ,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAEE,KAAK,CAACC,EAAE;IAC9C,IAAI,CAAC2D,KAAK,EAAE;MACV,IAAI/D,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC9BQ,OAAO,CAACC,GAAG,CAAC,UAAU,CAAC;QACvB;MACF;MACA,IAAI,CAACH,IAAI,IAAI,CAACF,IAAI,IAAI,CAACD,EAAE,EAAE;QACzBK,OAAO,CAACC,GAAG,CAAC,+CAA+C,CAAC;QAC5D;MACF;IACF;IACA;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMsD,gBAAgB,GAAGhE,MAAM,CAC5BC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC;IACvB,MAAMgE,SAAS,GAAGD,gBAAgB,EAAE7D,KAAK,EAAEU,IAAI,IAAIb,MAAM,CAACG,KAAK,CAACU,IAAI;IACpE,MAAMD,SAAS,GAAGL,IAAI,EAAEJ,KAAK,EAAES,SAAS,IAAIqD,SAAS;IACrD,IAAI,CAAC1D,IAAI,EAAEJ,KAAK,IAAI,CAACS,SAAS,EAAE;MAC9B;MACA;MACA;MACA;MACA;IACF;IACA,MAAMsD,WAAW,GAAG;MAAE,GAAG3D,IAAI,CAACJ;IAAM,CAAC;IACrC,IAAI,CAAC+D,WAAW,CAACtD,SAAS,EAAE;MAACsD,WAAW,CAACtD,SAAS,GAAGA,SAAS;IAAC;IAC/D;IACA;IACA;IACA;IACA;IACA,IAAIoD,gBAAgB,EAAE7D,KAAK,EAAEC,EAAE,EAAE;MAAC8D,WAAW,CAACC,MAAM,GAAGH,gBAAgB,CAAC7D,KAAK,CAACC,EAAE;IAAC;IACjF,MAAMgB,UAAU,GAAG,MAAM1B,oBAAoB,CAC3CwE,WAAW,EACX7D,IAAI,EACJD,EAAE;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA6D,SAAS,EACT,CAAC,CAACzD,OACJ,CAAC;;IAED;IACA;IACA,MAAMc,OAAO,GAAGxB,uBAAuB,CACrCsB,UAAU,EACVpC,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,IAAI,EAAEC,YAAY,IAAI,EAC1D,CAAC;IACD1C,KAAK,CAAC6C,QAAQ,CACZ3C,cAAc,CAAC;MACbyC,OAAO,EAAE3B,MAAM,CAACG,KAAK,CAACU,IAAI;MAC1BS;IACF,CAAC,CACH,CAAC;EACH;AACF,CAAC;AAED,MAAM8C,eAAe,GAAG,MAAAA,CAAOpE,MAAe,EAAEqE,WAAmB,KAAK;EACtE,IAAIrE,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,IAAID,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,EAAE;IAC7D,MAAMqE,aAAa,GAAGtE,MAAM,CAACG,KAAK,EAAEU,IAAI,EAAEe,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;IAEzD;IACA;IACA;IACA;IACA;IACA,MAAM2C,IAAI,GAAIC,CAAU,IACtB,CAACA,CAAC,IAAI,EAAE,EAAEvC,WAAW,CAAC,CAAC,CAACyB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;;IAE3C;IACA;IACA;IACA,MAAM9C,SAAS,GAAGZ,MAAM,CAACC,QAAQ,CAAC,MAAM,CAAC,EAAEE,KAAK,EAAES,SAAS,IAAI,EAAE;IACjE,MAAM6D,WAAW,GAAG7D,SAAS,CAACgB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IACjD,MAAME,KAAK,GAAG9C,KAAK,CAACuC,QAAQ,CAAC,CAAC;IAC9B,MAAMmD,QAAQ,GAAG5C,KAAK,CAACN,gBAAgB,EAAEC,IAAI;IAC7C,MAAMkD,gBAAgB,GAAGD,QAAQ,EAAEhD,YAAY,IAAI,EAAE;IACrD,MAAMkD,UAAU,GAAGF,QAAQ,EAAE1C,aAAa,IAAI,EAAE;IAChD,MAAM6C,MAAM,GACTP,aAAa,IAAIC,IAAI,CAACF,WAAW,CAAC,KAAKE,IAAI,CAACD,aAAa,CAAC,IAC1DG,WAAW,IAAIF,IAAI,CAACE,WAAW,CAAC,KAAKF,IAAI,CAACI,gBAAgB,CAAE,IAC5DF,WAAW,IAAIF,IAAI,CAACE,WAAW,CAAC,CAACrC,QAAQ,CAACmC,IAAI,CAACK,UAAU,CAAC,CAAE;IAE/D,IAAIN,aAAa,IAAI,CAACO,MAAM,EAAE;MAC5B,MAAMC,OAAO,GAAG9E,MAAM,CAACG,KAAK,EAAEU,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;MAEhD,IAAImD,aAAuB,GAAG,EAAE;MAEhC/E,MAAM,EAAEC,QAAQ,CAAC,WAAW,CAAC,GACzB8E,aAAa,CAACC,IAAI,CAChBhF,MAAM,CAACC,QAAQ,CAAC,MAAM,CAAC,EAAEE,KAAK,EAAE8E,QAAQ,EAAErD,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,MAC/D,CAAC,GACDmD,aAAa,CAACG,GAAG,CAAC,CAAC;MAEvBlG,KAAK,CAAC6C,QAAQ,CACZxC,YAAY,CAAC;QACXyF,OAAO,EAAEA,OAAO;QAChBK,SAAS,EAAE,CAAC,CAACnF,MAAM,EAAEC,QAAQ,CAAC,WAAW,CAAC;QAC1C8E;MACF,CAAC,CACH,CAAC;IACH;EACF;AACF,CAAC;AAED,MAAMK,gBAAgB,GAAIpF,MAAqB,IAAK;EAClD,IACE,OAAOA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,QAAQ,IACnCJ,MAAM,CAACG,KAAK,CAACC,EAAE,CAACiF,UAAU,CAAC,gBAAgB,CAAC,IAC5C,CAACrF,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EACzB;IACA,MAAM0B,OAAe,GAAG3B,MAAM,CAACG,KAAK,CAACU,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM0D,IAAY,GAAGtF,MAAM,EAAE6D,QAAQ,CAAC,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,CAAC,EAAE1D,KAAK,CAACmF,IAAI;IACjEtG,KAAK,CAAC6C,QAAQ,CAACtC,WAAW,CAAC;MAAEuF,OAAO,EAAEnD,OAAO;MAAE2D,IAAI,EAAEA;IAAK,CAAC,CAAC,CAAC;EAC/D;AACF,CAAC;AAED,MAAMC,YAAY,GAAG,MAAAA,CAAOvF,MAAe,EAAEwF,MAAW,KAAK;EAC3D,IAAIxF,MAAM,CAACE,EAAE,CAAC,SAAS,CAAC,IAAIF,MAAM,CAACG,KAAK,CAACsF,IAAI,KAAK,WAAW,EAAE;IAC7D;IACA,MAAMC,MAAM,GAAG1F,MAAM,CAACG,KAAK,CAACU,IAAI;IAChC,MAAM8E,IAAI,GAAG3F,MAAM,CAAC4F,WAAW,CAAC,GAAG,CAAC;IAEpC,KAAK,MAAMC,EAAE,IAAIF,IAAI,EAAE;MACrB,MAAMG,KAAK,GAAGD,EAAE,CAAC5F,QAAQ,CAAC,QAAQ,CAAC;MAEnC,IAAI6F,KAAK,EAAE;QACT,MAAMC,IAAI,GAAG/G,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACe,KAAK,CAACA,KAAK,CAACoD,MAAM,CAAC;QACjD,IAAIK,IAAI,EAAE;UACR;QACF;QAEA,MAAMP,MAAM,CAACQ,oBAAoB,CAACN,MAAM,CAAC;QACzC,MAAMF,MAAM,CAACS,cAAc,CAAC,CAAC;MAC/B;IACF;EACF;AACF,CAAC;AAED,MAAMC,YAAY,GAAIlG,MAAe,IAAK;EACxC,IAAImC,MAAM,CAACnC,MAAM,CAACG,KAAK,EAAEC,EAAE,IAAI,EAAE,CAAC,KAAK,gBAAgB,EAAE;IAAC;EAAO;EAEjE,IAAI;IACF,MAAM+F,OAAkB,GAAGnG,MAAM,CAAC4F,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE;IAC5D,MAAMQ,UAAqB,GAAG,EAAE;IAChC,IAAIC,OAAO,GAAG,EAAE;IAChB,KAAK,MAAMC,CAAC,IAAIH,OAAO,EAAE;MACvB,IAAI,CAACE,OAAO,IAAIC,CAAC,CAACnG,KAAK,EAAEkC,IAAI,EAAE;QAACgE,OAAO,GAAGC,CAAC,CAACnG,KAAK,CAACkC,IAAI;MAAC;MACvD,MAAMkE,IAAI,GAAGD,CAAC,CAACV,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE;MAC5C,KAAK,MAAMY,CAAC,IAAID,IAAI,EAAE;QAACH,UAAU,CAACpB,IAAI,CAACwB,CAAC,CAAC;MAAC;IAC5C;IAEA,MAAMC,GAAG,GAAGJ,OAAO,IAAIrH,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACe,KAAK,CAACoE,aAAa;IAC3D,IAAI,CAACD,GAAG,IAAIL,UAAU,CAACO,MAAM,KAAK,CAAC,EAAE;MAAC;IAAO;IAE7C,MAAMC,YAAY,GAAG5H,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACe,KAAK,CAACA,KAAK,CAACmE,GAAG,CAAC;IACtD,MAAMI,eAA6B,GAAGD,YAAY,EAAEE,WAAW,IAAI,EAAE;IACrE,MAAMC,aAAa,GAAG,IAAIC,GAAG,CAC3BH,eAAe,CACZhE,MAAM,CAAEoE,CAAC,IAAwC,CAAC,CAACA,CAAC,CAACR,GAAG,CAAC,CACzDS,GAAG,CAAED,CAAC,IAAK,CAACA,CAAC,CAACR,GAAG,EAAEQ,CAAC,CAAC,CAC1B,CAAC;IAED,MAAMH,WAAyB,GAAGV,UAAU,CAACc,GAAG,CAAEV,CAAC,IAAK;MACtD,MAAMW,SAA6B,GAAGX,CAAC,CAACrG,KAAK,EAAEsG,GAAG;MAClD,MAAMW,QAAQ,GAAGD,SAAS,GAAGJ,aAAa,CAACM,GAAG,CAACF,SAAS,CAAC,GAAGG,SAAS;MACrE;MACA;MACA;MACA;MACA,OAAO;QACLC,SAAS,EAAEH,QAAQ,EAAEG,SAAS,IAAI,EAAE;QACpCC,QAAQ,EAAEJ,QAAQ,EAAEI,QAAQ,IAAI,EAAE;QAClC9F,YAAY,EAAE0F,QAAQ,EAAE1F,YAAY,IAAI,EAAE;QAC1C+F,GAAG,EAAEL,QAAQ,EAAEK,GAAG,IAAI,EAAE;QACxB,GAAGL,QAAQ;QACX3E,IAAI,EAAE+D,CAAC,CAACrG,KAAK,EAAEsC,IAAI;QACnB6C,IAAI,EAAEkB,CAAC,CAACrG,KAAK,EAAEmF,IAAI;QACnBoC,UAAU,EAAElB,CAAC,CAACrG,KAAK,EAAEuH,UAAU;QAC/BC,WAAW,EAAEC,MAAM,CAACpB,CAAC,CAACrG,KAAK,EAAEwH,WAAW,CAAC;QACzClB,GAAG,EAAEU;MACP,CAAC;IACH,CAAC,CAAC;IAEFnI,KAAK,CAAC6C,QAAQ,CAACrC,UAAU,CAAC;MAAEiH,GAAG;MAAEoB,OAAO,EAAE;QAAEf;MAAY;IAAE,CAAC,CAAC,CAAC;;IAE7D;IACA;IACA;IACA;IACA,MAAMgB,eAA2C,GAAG,CAAC,CAAC;IACtD,KAAK,MAAMC,MAAM,IAAIjB,WAAW,EAAE;MAChC,IAAI,CAACiB,MAAM,CAACtB,GAAG,EAAE;QAAC;MAAS;MAC3B,MAAMuB,KAAK,GAAGD,MAAM,CAACtB,GAAG,CAAC7E,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;MACtCkG,eAAe,CAACE,KAAK,CAAC,GAAGD,MAAM;MAC/BD,eAAe,CAACC,MAAM,CAACtB,GAAG,CAAC,GAAGsB,MAAM;IACtC;IACA,IAAIE,MAAM,CAACC,IAAI,CAACJ,eAAe,CAAC,CAACnB,MAAM,GAAG,CAAC,EAAE;MAC3C3H,KAAK,CAAC6C,QAAQ,CAACpC,aAAa,CAAC;QAAE0I,OAAO,EAAEL;MAAgB,CAAC,CAAC,CAAC;IAC7D;EACF,CAAC,CAAC,OAAO5E,GAAG,EAAE;IACZzC,OAAO,CAAC0C,IAAI,CAAC,2BAA2B,EAAED,GAAG,CAAC;EAChD;AACF,CAAC;AAED,MAAMkF,aAAa,GAAIpI,MAAe,IAAK;EACzC,IAAIA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,UAAU,IAAI,CAACJ,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE,CACjE;AACF,CAAC;AAED,MAAMoI,uBAAuB,GAAGA,CAACrI,MAAe,EAAEsI,KAAU,KAAK;EAC/D,IAAItI,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,gBAAgB,EAAE,CAC1C;AACF,CAAC;AAED,MAAMmI,gBAAgB,GAAGA,CAACvI,MAAe,EAAEwI,IAAS,KAAK;EACvDxJ,KAAK,CAAC6C,QAAQ,CAACvC,cAAc,CAAC;IAAEqC,OAAO,EAAE3B,MAAM,CAACG,KAAK,CAACU;EAAK,CAAC,CAAC,CAAC;EAC9D2H,IAAI,CAACvC,cAAc,CAAC,CAAC;AACvB,CAAC;AAED,MAAMwC,cAAc,GAAGA,CAACzI,MAAe,EAAEwI,IAAS,KAAK;EACrD,IACExI,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,cAAc,IAClCsI,KAAK,CAACC,OAAO,CAAC3I,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE4D,QAAQ,CAAC,EACjD;IACA,MAAMA,QAAQ,GAAG7D,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE4D,QAAQ,IAAI,EAAE;IACzDA,QAAQ,CAAC+E,OAAO,CAAC,MAAOC,MAAW,IAAK;MACtC,MAAMC,gBAAgB,GAAG9J,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACe,KAAK,CAACA,KAAK;MAErD,MAAMyG,kBAAkB,GAAGd,MAAM,CAACe,MAAM,CAACF,gBAAgB,CAAC,CAACG,IAAI,CAC5DC,OAAO,IAAKA,OAAO,CAACzC,GAAG,KAAKoC,MAAM,EAAE1I,KAAK,EAAEsG,GAC9C,CAAC;MAED,MAAMA,GAAG,GAAGoC,MAAM,EAAE1I,KAAK,EAAEsG,GAAG;MAE9B,IAAI,CAACsC,kBAAkB,EAAE;QACvB,IAAI;UACF,MAAMI,QAAe,GAAG;YACtB1C,GAAG,EAAEA,GAAG,IAAI,EAAE;YACdhE,IAAI,EAAEoG,MAAM,EAAE1I,KAAK,EAAEsC,IAAI,IAAI,EAAE;YAC/BrC,EAAE,EAAE,EAAE;YACNoC,KAAK,EAAEqG,MAAM,EAAE1I,KAAK,EAAEsC,IAAI,IAAI,EAAE;YAChC2G,QAAQ,EAAExB,MAAM,CAACiB,MAAM,EAAE1I,KAAK,EAAEkJ,SAAS,IAAI,CAAC,CAAC;YAC/CC,QAAQ,EAAE,EAAE;YACZC,SAAS,EAAE,KAAK;YAChBC,MAAM,EACJX,MAAM,EAAE1I,KAAK,EAAEsJ,eAAe,KAAK,MAAM,GACrCZ,MAAM,EAAE1I,KAAK,EAAEsJ,eAAe,GAC9B,IAAI;YACVC,IAAI,EACFb,MAAM,EAAE1I,KAAK,EAAEwJ,cAAc,KAAK,MAAM,GACpCd,MAAM,EAAE1I,KAAK,EAAEwJ,cAAc,GAC7B,IAAI;YACVC,cAAc,EAAE,CAAC;YACjBC,mBAAmB,EAAE;UACvB,CAAC;UAED7K,KAAK,CAAC6C,QAAQ,CAAC5C,OAAO,CAAC;YAAEkK,QAAQ,EAAE;cAAE,GAAGA;YAAS;UAAE,CAAC,CAAC,CAAC;UAEtD,IAAI,CAACnK,KAAK,CAACuC,QAAQ,CAAC,CAAC,CAACe,KAAK,CAACoE,aAAa,EAAE;YACzC1H,KAAK,CAAC6C,QAAQ,CAACvC,cAAc,CAAC;cAAEqC,OAAO,EAAEwH,QAAQ,CAAC1C;YAAI,CAAC,CAAC,CAAC;UAC3D;QACF,CAAC,CAAC,OAAOqD,KAAK,EAAE,CAAC;MACnB;MAEA,IAAIrD,GAAG,EAAE;QACP,IAAI;UACF+B,IAAI,CAACxC,oBAAoB,CAACS,GAAG,CAAC;QAChC,CAAC,CAAC,OAAOsD,CAAC,EAAE;UACVtJ,OAAO,CAAC0C,IAAI,CAAC,6BAA6B,EAAEsD,GAAG,EAAEsD,CAAC,CAAC;QACrD;MACF;IACF,CAAC,CAAC;EACJ;AACF,CAAC;;AAED;AACA;AACA;AACA,MAAMC,cAAc,GAAGA,CAACC,OAAgB,EAAE3B,KAAW,KAAK,CAAC,CAAC;AAC5D,MAAM4B,iBAAiB,GAAID,OAAgB,IAAK,CAAC,CAAC;AAClD,MAAME,iBAAiB,GAAIF,OAAgB,IAAK,CAAC,CAAC;AAClD,MAAMG,YAAY,GAAIH,OAAgB,IAAK,CAAC,CAAC;AAE7C,SACElK,iBAAiB,EACjB6D,gBAAgB,EAChBwB,gBAAgB,EAChBiD,uBAAuB,EACvBjE,eAAe,EACfqE,cAAc,EACdF,gBAAgB,EAChBrC,YAAY,EACZkC,aAAa,EACbhF,eAAe,EACfK,aAAa,EACb8B,YAAY,EACZyE,cAAc,EACdE,iBAAiB,EACjBC,iBAAiB,EACjBC,YAAY","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["store","addRoom","addRoomMessage","deleteRoomMessage","editRoomMessage","setComposing","setCurrentRoom","setRoomRole","createMessageFromXml","getDataFromXml","setDeleteModal","messageNotificationManager","transformCallLogMessage","translateKey","onRealtimeMessage","stanza","getChild","is","attrs","id","body","archived","data","deleted","console","log","toString","senderJID","from","parsed","pData","pId","pBody","pRest","mergedData","rawMessage","isDeleted","message","getState","chatSettingStore","user","xmppUsername","roomJID","split","dispatch","state","currentUserWallet","walletAddress","toLowerCase","senderJIDLower","String","includes","room","rooms","roomName","title","name","locale","config","i18n","langSource","overrides","strings","senderName","senderFirstName","senderLastName","filter","Boolean","join","trim","showNotification","err","warn","onDeleteMessage","stanzaId","by","messageId","isDeleteModal","onEditMessage","replace","text","onMessageHistory","children","xmlns","delay","innerFrom","getText","handleComposing","currentUser","composingUser","norm","s","senderLocal","selfUser","selfXmppUsername","selfWallet","isSelf","chatJID","composingList","push","fullName","pop","composing","onPresenceInRoom","startsWith","role","onChatInvite","client","type","chatId","xEls","getChildren","el","child","chat","presenceInRoomStanza","getRoomsStanza","onGetMembers","onGetRoomInfo","onGetLastMessageArchive","_xmpp","onNewRoomCreated","xmpp","onGetChatRooms","Array","isArray","forEach","result","currentChatRooms","isRoomAlreadyAdded","Object","values","some","element","jid","roomData","usersCnt","Number","users_cnt","messages","isLoading","roomBg","room_background","icon","room_thumbnail","unreadMessages","lastViewedTimestamp","activeRoomJID","error","e","onMessageError","_stanza","onReactionMessage","onReactionHistory","onRoomKicked"],"sourceRoot":"../../../src","sources":["networking/stanzaHandlers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import { getChatsPrivateStoreRequest } from './getChatsPrivateStoreRequest.xmpp';
|
|
4
4
|
import { setChatsPrivateStoreRequest } from './setChatsPrivateStoreRequest.xmpp';
|
|
5
|
-
import { getServerReadTimestamp, isCorruptFutureReadMarker } from '../../helpers/getServerReadTimestamp';
|
|
6
5
|
/**
|
|
7
6
|
* Merge in-memory lastViewedTimestamp values into the server-side
|
|
8
7
|
* private store. Reads current state, overlays per-room updates, writes
|
|
@@ -10,11 +9,8 @@ import { getServerReadTimestamp, isCorruptFutureReadMarker } from '../../helpers
|
|
|
10
9
|
* each other's entries.
|
|
11
10
|
*
|
|
12
11
|
* Called on: tab change away from chat, AppState background/inactive,
|
|
13
|
-
* and (with onlyIfNoUnread=true) logout. ChatRoom's own unmount path
|
|
14
|
-
*
|
|
15
|
-
* single-room case - actionSetTimestampToPrivateStore is a separate,
|
|
16
|
-
* unconditional low-level write primitive kept for direct/external use
|
|
17
|
-
* and is not part of this merge path.
|
|
12
|
+
* and (with onlyIfNoUnread=true) logout. ChatRoom's own unmount path
|
|
13
|
+
* still uses actionSetTimestampToPrivateStore for the single-room case.
|
|
18
14
|
*/
|
|
19
15
|
export async function flushLastViewedToPrivateStore(client, rooms, opts = {}) {
|
|
20
16
|
if (!client?.client) {
|
|
@@ -22,9 +18,7 @@ export async function flushLastViewedToPrivateStore(client, rooms, opts = {}) {
|
|
|
22
18
|
}
|
|
23
19
|
const {
|
|
24
20
|
visibleRoomJID,
|
|
25
|
-
|
|
26
|
-
onlyIfNoUnread,
|
|
27
|
-
heapState
|
|
21
|
+
onlyIfNoUnread
|
|
28
22
|
} = opts;
|
|
29
23
|
const roomList = Object.values(rooms || {});
|
|
30
24
|
if (roomList.length === 0) {
|
|
@@ -39,6 +33,7 @@ export async function flushLastViewedToPrivateStore(client, rooms, opts = {}) {
|
|
|
39
33
|
if (!storeObj || typeof storeObj !== 'object') {
|
|
40
34
|
storeObj = {};
|
|
41
35
|
}
|
|
36
|
+
const nowMs = Date.now();
|
|
42
37
|
let dirty = false;
|
|
43
38
|
for (const room of roomList) {
|
|
44
39
|
if (!room?.jid) {
|
|
@@ -47,30 +42,14 @@ export async function flushLastViewedToPrivateStore(client, rooms, opts = {}) {
|
|
|
47
42
|
const isVisible = !!visibleRoomJID && room.jid === visibleRoomJID;
|
|
48
43
|
const hasUnread = Number(room.unreadMessages || 0) > 0;
|
|
49
44
|
|
|
50
|
-
//
|
|
51
|
-
//
|
|
52
|
-
// the yardstick for detecting a corrupt (future) stored marker below
|
|
53
|
-
// - never as a substitute for the device clock (bug #38: a device
|
|
54
|
-
// with a fast clock previously stamped Date.now() here, and once
|
|
55
|
-
// that future value reached the server the forward-only check a few
|
|
56
|
-
// lines down rejected every later correct write, forever).
|
|
57
|
-
const newestAckedMs = getServerReadTimestamp(room, heapState);
|
|
58
|
-
|
|
59
|
-
// For the visible room, persist "read up to the newest message we
|
|
60
|
-
// know the server has" - read state is driven by room visibility,
|
|
61
|
-
// not by a sentinel timestamp. The exception is an explicit
|
|
62
|
-
// `visibleRoomTs`: the caller knows the user only read up to a
|
|
63
|
-
// certain point (left the room while scrolled up), so stamping
|
|
64
|
-
// "everything" here would mark genuinely-unread messages as read.
|
|
45
|
+
// For the visible room, persist "now" — read state is driven by
|
|
46
|
+
// room visibility, not by a sentinel timestamp.
|
|
65
47
|
let ts;
|
|
66
48
|
if (isVisible) {
|
|
67
|
-
ts =
|
|
49
|
+
ts = nowMs;
|
|
68
50
|
} else if (room.lastViewedTimestamp && room.lastViewedTimestamp > 0) {
|
|
69
51
|
ts = room.lastViewedTimestamp;
|
|
70
52
|
}
|
|
71
|
-
|
|
72
|
-
// Nothing to anchor a write to (no boundary, no existing marker, no
|
|
73
|
-
// known messages yet) - skip rather than write a device-clock guess.
|
|
74
53
|
if (!ts) {
|
|
75
54
|
continue;
|
|
76
55
|
}
|
|
@@ -79,24 +58,7 @@ export async function flushLastViewedToPrivateStore(client, rooms, opts = {}) {
|
|
|
79
58
|
}
|
|
80
59
|
const prev = storeObj[room.jid];
|
|
81
60
|
const prevNum = prev != null ? Number(prev) : 0;
|
|
82
|
-
|
|
83
|
-
// know this room has is not "fresher" - it's a leftover future
|
|
84
|
-
// marker (bug #38). Forward-only logic normally protects a fresher
|
|
85
|
-
// read from being clobbered by a stale fetch, but applied to a
|
|
86
|
-
// corrupt future value it does the opposite: it permanently blocks
|
|
87
|
-
// the correct (smaller) value from ever landing. Detect that case
|
|
88
|
-
// and waive the forward-only check for it specifically; sane values
|
|
89
|
-
// keep the normal forward-only protection.
|
|
90
|
-
//
|
|
91
|
-
// "Well past the newest message we know about" is deliberately NOT
|
|
92
|
-
// sufficient on its own - see isCorruptFutureReadMarker. THIS device's
|
|
93
|
-
// copy of the room can simply be stale (history not synced yet this
|
|
94
|
-
// session), in which case a legitimate marker written by another
|
|
95
|
-
// device that HAS seen newer messages looks exactly like a corrupt
|
|
96
|
-
// one, and "healing" it here would push the server marker BACKWARDS
|
|
97
|
-
// and resurrect already-read messages on every device.
|
|
98
|
-
const prevLooksCorrupt = isCorruptFutureReadMarker(prevNum, newestAckedMs);
|
|
99
|
-
if (!prevLooksCorrupt && Number.isFinite(prevNum) && prevNum >= ts) {
|
|
61
|
+
if (Number.isFinite(prevNum) && prevNum >= ts) {
|
|
100
62
|
continue;
|
|
101
63
|
}
|
|
102
64
|
storeObj[room.jid] = String(ts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getChatsPrivateStoreRequest","setChatsPrivateStoreRequest","
|
|
1
|
+
{"version":3,"names":["getChatsPrivateStoreRequest","setChatsPrivateStoreRequest","flushLastViewedToPrivateStore","client","rooms","opts","visibleRoomJID","onlyIfNoUnread","roomList","Object","values","length","storeObj","nowMs","Date","now","dirty","room","jid","isVisible","hasUnread","Number","unreadMessages","ts","lastViewedTimestamp","prev","prevNum","isFinite","String","JSON","stringify"],"sourceRoot":"../../../../src","sources":["networking/xmpp/flushLastViewedToPrivateStore.ts"],"mappings":";;AAAA,SAASA,2BAA2B,QAAQ,oCAAoC;AAChF,SAASC,2BAA2B,QAAQ,oCAAoC;AAmBhF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,6BAA6BA,CACjDC,MAAW,EACXC,KAAkD,EAClDC,IAAe,GAAG,CAAC,CAAC,EACF;EAClB,IAAI,CAACF,MAAM,EAAEA,MAAM,EAAE;IAAC,OAAO,KAAK;EAAC;EACnC,MAAM;IAAEG,cAAc;IAAEC;EAAe,CAAC,GAAGF,IAAI;EAC/C,MAAMG,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAACN,KAAK,IAAI,CAAC,CAAC,CAAC;EAC3C,IAAII,QAAQ,CAACG,MAAM,KAAK,CAAC,EAAE;IAAC,OAAO,KAAK;EAAC;EAEzC,IAAIC,QAAa,GAAG,IAAI;EACxB,IAAI;IACFA,QAAQ,GAAG,MAAMZ,2BAA2B,CAACG,MAAM,CAACA,MAAM,CAAC;EAC7D,CAAC,CAAC,MAAM;IACNS,QAAQ,GAAG,IAAI;EACjB;EACA,IAAI,CAACA,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;IAACA,QAAQ,GAAG,CAAC,CAAC;EAAC;EAE9D,MAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EACxB,IAAIC,KAAK,GAAG,KAAK;EAEjB,KAAK,MAAMC,IAAI,IAAIT,QAAQ,EAAE;IAC3B,IAAI,CAACS,IAAI,EAAEC,GAAG,EAAE;MAAC;IAAS;IAC1B,MAAMC,SAAS,GAAG,CAAC,CAACb,cAAc,IAAIW,IAAI,CAACC,GAAG,KAAKZ,cAAc;IACjE,MAAMc,SAAS,GAAGC,MAAM,CAACJ,IAAI,CAACK,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC;;IAEtD;IACA;IACA,IAAIC,EAAsB;IAC1B,IAAIJ,SAAS,EAAE;MACbI,EAAE,GAAGV,KAAK;IACZ,CAAC,MAAM,IAAII,IAAI,CAACO,mBAAmB,IAAIP,IAAI,CAACO,mBAAmB,GAAG,CAAC,EAAE;MACnED,EAAE,GAAGN,IAAI,CAACO,mBAAmB;IAC/B;IAEA,IAAI,CAACD,EAAE,EAAE;MAAC;IAAS;IACnB,IAAIhB,cAAc,IAAIa,SAAS,IAAI,CAACD,SAAS,EAAE;MAAC;IAAS;IAEzD,MAAMM,IAAI,GAAGb,QAAQ,CAACK,IAAI,CAACC,GAAG,CAAC;IAC/B,MAAMQ,OAAO,GAAGD,IAAI,IAAI,IAAI,GAAGJ,MAAM,CAACI,IAAI,CAAC,GAAG,CAAC;IAC/C,IAAIJ,MAAM,CAACM,QAAQ,CAACD,OAAO,CAAC,IAAIA,OAAO,IAAIH,EAAE,EAAE;MAAC;IAAS;IACzDX,QAAQ,CAACK,IAAI,CAACC,GAAG,CAAC,GAAGU,MAAM,CAACL,EAAE,CAAC;IAC/BP,KAAK,GAAG,IAAI;EACd;EAEA,IAAI,CAACA,KAAK,EAAE;IAAC,OAAO,KAAK;EAAC;EAE1B,IAAI;IACF,MAAMf,2BAA2B,CAACE,MAAM,CAACA,MAAM,EAAE0B,IAAI,CAACC,SAAS,CAAClB,QAAQ,CAAC,CAAC;IAC1E,OAAO,IAAI;EACb,CAAC,CAAC,MAAM;IACN,OAAO,KAAK;EACd;AACF","ignoreList":[]}
|
|
@@ -55,14 +55,7 @@ export const presenceInRoom = async (client, roomJID, delay = 2000) => {
|
|
|
55
55
|
try {
|
|
56
56
|
await createTimeoutPromise(2000, unsubscribe);
|
|
57
57
|
} catch (err) {
|
|
58
|
-
|
|
59
|
-
// default) — the same length as this timeout, so the timeout used
|
|
60
|
-
// to win the race and reject a join that had actually succeeded
|
|
61
|
-
// (allRoomPresences "failed" with undefined on every bootstrap).
|
|
62
|
-
// Only a join that never got an answer is a failure.
|
|
63
|
-
if (!settled) {
|
|
64
|
-
reject(err);
|
|
65
|
-
}
|
|
58
|
+
reject(err);
|
|
66
59
|
}
|
|
67
60
|
})();
|
|
68
61
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["xml","createTimeoutPromise","presenceIdCounter","nextPresenceId","Date","now","toString","presenceInRoom","client","roomJID","delay","stanzaHandler","unsubscribe","off","stanzaId","Promise","resolve","reject","settled","finish","cb","value","setTimeout","stanza","is","attrs","id","from","startsWith","on","presence","jid","to","getLocal","xmlns","send","err"],"sourceRoot":"../../../../src","sources":["networking/xmpp/presenceInRoom.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;AAC1C,SAASC,oBAAoB,QAAQ,6BAA6B;AAGlE,IAAIC,iBAAiB,GAAG,CAAC;AACzB,MAAMC,cAAc,GAAGA,CAAA,KACrB,kBAAkBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAEJ,iBAAiB,EAAEI,QAAQ,CAAC,EAAE,CAAC,EAAE;AAEnF,OAAO,MAAMC,cAAc,GAAG,MAAAA,CAC5BC,MAAc,EACdC,OAAe,EACfC,KAAK,GAAG,IAAI,KACS;EACrB,IAAIC,aAAwC;EAC5C,MAAMC,WAAW,GAAGA,CAAA,KAAMJ,MAAM,CAACK,GAAG,CAAC,QAAQ,EAAEF,aAAa,CAAC;EAC7D,MAAMG,QAAQ,GAAGX,cAAc,CAAC,CAAC;;EAEjC;EACA;EACA;EACA;EACA;EACA,OAAO,IAAIY,OAAO,CAAU,CAACC,OAAO,EAAEC,MAAM,KAAK;IAC/C,IAAIC,OAAO,GAAG,KAAK;IAEnB,MAAMC,MAAM,GAAGA,CAACC,EAAyB,EAAEC,KAAW,KAAK;MACzD,IAAIH,OAAO,EAAE;QAAC;MAAO;MACrBA,OAAO,GAAG,IAAI;MAEdI,UAAU,CAAC,MAAM;QACfV,WAAW,CAAC,CAAC;QACbQ,EAAE,CAACC,KAAK,CAAC;MACX,CAAC,EAAEX,KAAK,CAAC;IACX,CAAC;IAEDC,aAAa,GAAIY,MAAM,IAAK;MAC1B,IACEA,MAAM,CAACC,EAAE,CAAC,UAAU,CAAC,IACrBD,MAAM,CAACE,KAAK,CAACC,EAAE,KAAKZ,QAAQ,IAC5BS,MAAM,CAACE,KAAK,CAACE,IAAI,EAAEC,UAAU,CAACnB,OAAO,CAAC,EACtC;QACAU,MAAM,CAACH,OAAO,EAAEO,MAAM,CAAC;MACzB;IACF,CAAC;IAEDf,MAAM,CAACqB,EAAE,CAAC,QAAQ,EAAElB,aAAa,CAAC;IAElC,MAAMmB,QAAQ,GAAG9B,GAAG,CAClB,UAAU,EACV;MACE2B,IAAI,EAAEnB,MAAM,CAACuB,GAAG,EAAEzB,QAAQ,CAAC,CAAC;MAC5B0B,EAAE,EAAE,GAAGvB,OAAO,IAAID,MAAM,CAACuB,GAAG,EAAEE,QAAQ,CAAC,CAAC,EAAE;MAC1CP,EAAE,EAAEZ;IACN,CAAC,EACDd,GAAG,CAAC,GAAG,EAAE;MAAEkC,KAAK,EAAE;IAAiC,CAAC,CACtD,CAAC;;IAED;IACA;IACA;IACA;IACA,CAAC,YAAY;MACX,IAAI;QACF,MAAM1B,MAAM,CAAC2B,IAAI,CAACL,QAAQ,CAAC;MAC7B,CAAC,CAAC,OAAOM,GAAG,EAAE;QACZxB,WAAW,CAAC,CAAC;QACbK,MAAM,CAACmB,GAAG,CAAC;QACX;MACF;MACA,IAAI;QACF,MAAMnC,oBAAoB,CAAC,IAAI,EAAEW,WAAW,CAAC;MAC/C,CAAC,CAAC,OAAOwB,GAAG,EAAE;
|
|
1
|
+
{"version":3,"names":["xml","createTimeoutPromise","presenceIdCounter","nextPresenceId","Date","now","toString","presenceInRoom","client","roomJID","delay","stanzaHandler","unsubscribe","off","stanzaId","Promise","resolve","reject","settled","finish","cb","value","setTimeout","stanza","is","attrs","id","from","startsWith","on","presence","jid","to","getLocal","xmlns","send","err"],"sourceRoot":"../../../../src","sources":["networking/xmpp/presenceInRoom.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;AAC1C,SAASC,oBAAoB,QAAQ,6BAA6B;AAGlE,IAAIC,iBAAiB,GAAG,CAAC;AACzB,MAAMC,cAAc,GAAGA,CAAA,KACrB,kBAAkBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAEJ,iBAAiB,EAAEI,QAAQ,CAAC,EAAE,CAAC,EAAE;AAEnF,OAAO,MAAMC,cAAc,GAAG,MAAAA,CAC5BC,MAAc,EACdC,OAAe,EACfC,KAAK,GAAG,IAAI,KACS;EACrB,IAAIC,aAAwC;EAC5C,MAAMC,WAAW,GAAGA,CAAA,KAAMJ,MAAM,CAACK,GAAG,CAAC,QAAQ,EAAEF,aAAa,CAAC;EAC7D,MAAMG,QAAQ,GAAGX,cAAc,CAAC,CAAC;;EAEjC;EACA;EACA;EACA;EACA;EACA,OAAO,IAAIY,OAAO,CAAU,CAACC,OAAO,EAAEC,MAAM,KAAK;IAC/C,IAAIC,OAAO,GAAG,KAAK;IAEnB,MAAMC,MAAM,GAAGA,CAACC,EAAyB,EAAEC,KAAW,KAAK;MACzD,IAAIH,OAAO,EAAE;QAAC;MAAO;MACrBA,OAAO,GAAG,IAAI;MAEdI,UAAU,CAAC,MAAM;QACfV,WAAW,CAAC,CAAC;QACbQ,EAAE,CAACC,KAAK,CAAC;MACX,CAAC,EAAEX,KAAK,CAAC;IACX,CAAC;IAEDC,aAAa,GAAIY,MAAM,IAAK;MAC1B,IACEA,MAAM,CAACC,EAAE,CAAC,UAAU,CAAC,IACrBD,MAAM,CAACE,KAAK,CAACC,EAAE,KAAKZ,QAAQ,IAC5BS,MAAM,CAACE,KAAK,CAACE,IAAI,EAAEC,UAAU,CAACnB,OAAO,CAAC,EACtC;QACAU,MAAM,CAACH,OAAO,EAAEO,MAAM,CAAC;MACzB;IACF,CAAC;IAEDf,MAAM,CAACqB,EAAE,CAAC,QAAQ,EAAElB,aAAa,CAAC;IAElC,MAAMmB,QAAQ,GAAG9B,GAAG,CAClB,UAAU,EACV;MACE2B,IAAI,EAAEnB,MAAM,CAACuB,GAAG,EAAEzB,QAAQ,CAAC,CAAC;MAC5B0B,EAAE,EAAE,GAAGvB,OAAO,IAAID,MAAM,CAACuB,GAAG,EAAEE,QAAQ,CAAC,CAAC,EAAE;MAC1CP,EAAE,EAAEZ;IACN,CAAC,EACDd,GAAG,CAAC,GAAG,EAAE;MAAEkC,KAAK,EAAE;IAAiC,CAAC,CACtD,CAAC;;IAED;IACA;IACA;IACA;IACA,CAAC,YAAY;MACX,IAAI;QACF,MAAM1B,MAAM,CAAC2B,IAAI,CAACL,QAAQ,CAAC;MAC7B,CAAC,CAAC,OAAOM,GAAG,EAAE;QACZxB,WAAW,CAAC,CAAC;QACbK,MAAM,CAACmB,GAAG,CAAC;QACX;MACF;MACA,IAAI;QACF,MAAMnC,oBAAoB,CAAC,IAAI,EAAEW,WAAW,CAAC;MAC/C,CAAC,CAAC,OAAOwB,GAAG,EAAE;QACZnB,MAAM,CAACmB,GAAG,CAAC;MACb;IACF,CAAC,EAAE,CAAC;EACN,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { xml } from '@xmpp/client';
|
|
4
4
|
import { createTimeoutPromise } from './createTimeoutPromise.xmpp';
|
|
5
|
-
let subscribeIdCounter = 0;
|
|
6
5
|
export async function subscribeToRoomMessages(client, roomJID, userNick) {
|
|
7
|
-
const id = `newSubscription:${Date.now().toString(
|
|
6
|
+
const id = `newSubscription:${Date.now().toString()}`;
|
|
8
7
|
let stanzaHandler;
|
|
9
8
|
const unsubscribe = () => {
|
|
10
9
|
if (stanzaHandler) {
|
|
@@ -28,9 +27,6 @@ export async function subscribeToRoomMessages(client, roomJID, userNick) {
|
|
|
28
27
|
if (stanza.attrs.type === 'result') {
|
|
29
28
|
finish(resolve, true);
|
|
30
29
|
} else if (stanza.attrs.type === 'error') {
|
|
31
|
-
const errorEl = typeof stanza.getChild === 'function' ? stanza.getChild('error') : null;
|
|
32
|
-
const condition = errorEl?.children?.find(c => c?.name && c.name !== 'text');
|
|
33
|
-
console.warn('[PushService] MucSub subscribe error for', roomJID, condition?.name ?? 'unknown');
|
|
34
30
|
finish(resolve, false);
|
|
35
31
|
}
|
|
36
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["xml","createTimeoutPromise","
|
|
1
|
+
{"version":3,"names":["xml","createTimeoutPromise","subscribeToRoomMessages","client","roomJID","userNick","id","Date","now","toString","stanzaHandler","unsubscribe","off","Promise","resolve","reject","settled","finish","cb","value","setTimeout","stanza","is","attrs","type","on","nick","jid","getLocal","subscribeStanza","to","xmlns","node","send","error","console","catch"],"sourceRoot":"../../../../src","sources":["networking/xmpp/subscribeToRoomMessages.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;AAE1C,SAASC,oBAAoB,QAAQ,6BAA6B;AAElE,OAAO,eAAeC,uBAAuBA,CAC3CC,MAAc,EACdC,OAAe,EACfC,QAAiB,EACC;EAClB,MAAMC,EAAE,GAAG,mBAAmBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE;EACrD,IAAIC,aAAwC;EAE5C,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAID,aAAa,EAAE;MACjBP,MAAM,CAACS,GAAG,CAAC,QAAQ,EAAEF,aAAa,CAAC;IACrC;EACF,CAAC;EAED,OAAO,IAAIG,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAIC,OAAO,GAAG,KAAK;IAEnB,MAAMC,MAAM,GAAGA,CAACC,EAAyB,EAAEC,KAAW,KAAK;MACzD,IAAIH,OAAO,EAAE;QAAC;MAAO;MACrBA,OAAO,GAAG,IAAI;MACdI,UAAU,CAAC,MAAM;QACfT,WAAW,CAAC,CAAC;QACbO,EAAE,CAACC,KAAK,CAAC;MACX,CAAC,EAAE,GAAG,CAAC;IACT,CAAC;IAEDT,aAAa,GAAIW,MAAe,IAAK;MACnC,IAAIA,MAAM,CAACC,EAAE,CAAC,IAAI,CAAC,IAAID,MAAM,CAACE,KAAK,CAACjB,EAAE,KAAKA,EAAE,EAAE;QAC7C,IAAIe,MAAM,CAACE,KAAK,CAACC,IAAI,KAAK,QAAQ,EAAE;UAClCP,MAAM,CAACH,OAAO,EAAE,IAAI,CAAC;QACvB,CAAC,MAAM,IAAIO,MAAM,CAACE,KAAK,CAACC,IAAI,KAAK,OAAO,EAAE;UACxCP,MAAM,CAACH,OAAO,EAAE,KAAK,CAAC;QACxB;MACF;IACF,CAAC;IAEDX,MAAM,CAACsB,EAAE,CAAC,QAAQ,EAAEf,aAAa,CAAC;IAElC,MAAMgB,IAAI,GAAGrB,QAAQ,IAAIF,MAAM,CAACwB,GAAG,EAAEC,QAAQ,CAAC,CAAC,IAAI,EAAE;IAErD,MAAMC,eAAe,GAAG7B,GAAG,CACzB,IAAI,EACJ;MACE8B,EAAE,EAAE1B,OAAO;MACXoB,IAAI,EAAE,KAAK;MACXlB,EAAE,EAAEA;IACN,CAAC,EACDN,GAAG,CACD,WAAW,EACX;MAAE+B,KAAK,EAAE,mBAAmB;MAAEL,IAAI,EAAEA;IAAK,CAAC,EAC1C1B,GAAG,CAAC,OAAO,EAAE;MAAEgC,IAAI,EAAE;IAAiC,CAAC,CACzD,CACF,CAAC;IAED,IAAI;MACF7B,MAAM,CAAC8B,IAAI,CAACJ,eAAe,CAAC;IAC9B,CAAC,CAAC,OAAOK,KAAK,EAAE;MACdvB,WAAW,CAAC,CAAC;MACbwB,OAAO,CAACD,KAAK,CAAC,iCAAiC,EAAEA,KAAK,CAAC;MACvDnB,MAAM,CAACmB,KAAK,CAAC;MACb;IACF;IAEAjC,oBAAoB,CAAC,IAAI,EAAEU,WAAW,CAAC,CAACyB,KAAK,CAAC,MAAM;MAClD,IAAI,CAACpB,OAAO,EAAE;QACZC,MAAM,CAACF,MAAM,EAAE,KAAK,CAAC;MACvB;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ","ignoreList":[]}
|
|
@@ -28,7 +28,6 @@ import { normalizeRoomJid } from '../helpers/normalizeRoomJid';
|
|
|
28
28
|
import { store } from '../roomStore';
|
|
29
29
|
import { applyPrivateStoreMarkers } from '../roomStore/roomsSlice';
|
|
30
30
|
import { clearOutboundSends, enqueueOutboundSend, flushOutboundSends } from './outboundQueue';
|
|
31
|
-
import { getServerReadTimestamp, isCorruptFutureReadMarker } from '../helpers/getServerReadTimestamp';
|
|
32
31
|
|
|
33
32
|
// Canonical production XMPP WSS endpoint (standard wss/443, no port suffix).
|
|
34
33
|
const DEFAULT_DEV_SERVER = 'xmpp.chat.ethora.com';
|
|
@@ -75,12 +74,6 @@ function isNotAuthorizedError(err) {
|
|
|
75
74
|
const message = (err?.message || err?.text || '').toString();
|
|
76
75
|
return /not-authorized|SASLError/i.test(message);
|
|
77
76
|
}
|
|
78
|
-
/**
|
|
79
|
-
* Floor between two credential rotations driven by reconnects. Well under
|
|
80
|
-
* the XMPP password's one-hour life, but high enough that a link flapping
|
|
81
|
-
* every few seconds rotates once, not thirty times.
|
|
82
|
-
*/
|
|
83
|
-
const CREDENTIALS_REFRESH_MIN_INTERVAL_MS = 60_000;
|
|
84
77
|
export class XmppClient {
|
|
85
78
|
host = '';
|
|
86
79
|
service = '';
|
|
@@ -114,12 +107,6 @@ export class XmppClient {
|
|
|
114
107
|
// derived XMPP password after idle). Triggers the credentialsProvider
|
|
115
108
|
// refresh path in reconnect().
|
|
116
109
|
lastAuthError = null;
|
|
117
|
-
/**
|
|
118
|
-
* When the credentials currently held were last (re)minted. Drives the
|
|
119
|
-
* throttle in `reconnect()` so a flapping connection can't rotate the
|
|
120
|
-
* session once per flap.
|
|
121
|
-
*/
|
|
122
|
-
credentialsRefreshedAt = 0;
|
|
123
110
|
credentialsProvider = null;
|
|
124
111
|
credentialsRefreshInFlight = null;
|
|
125
112
|
// Fired by the provider on every 'online' so it can re-join MUC rooms
|
|
@@ -312,7 +299,6 @@ export class XmppClient {
|
|
|
312
299
|
}
|
|
313
300
|
}
|
|
314
301
|
initializeClient() {
|
|
315
|
-
this.clientAlreadyStopped = false;
|
|
316
302
|
try {
|
|
317
303
|
const devServer = this.devServer || DEFAULT_DEV_SERVER;
|
|
318
304
|
const url = `wss://${devServer}/ws`;
|
|
@@ -668,29 +654,14 @@ export class XmppClient {
|
|
|
668
654
|
this.reconnecting = true;
|
|
669
655
|
console.log('Attempting to reconnect xmpp client...');
|
|
670
656
|
try {
|
|
671
|
-
//
|
|
672
|
-
//
|
|
673
|
-
//
|
|
674
|
-
//
|
|
675
|
-
|
|
676
|
-
// bind. So by the time anything disconnects us (a network blip, a
|
|
677
|
-
// sleeping device, a server restart) the password we still hold may
|
|
678
|
-
// well be dead, and we have no way to know. Reconnecting with it
|
|
679
|
-
// burns a guaranteed-failed bind plus a backoff delay before the
|
|
680
|
-
// old `lastAuthError` path could even start recovering.
|
|
681
|
-
//
|
|
682
|
-
// Throttled, because reconnects are not rare: a flapping link would
|
|
683
|
-
// otherwise rotate the whole session (access + refresh + file token
|
|
684
|
-
// + XMPP password) once per flap. A SASL failure bypasses the
|
|
685
|
-
// throttle — there the credentials are known bad.
|
|
686
|
-
const authFailed = this.lastAuthError === 'not-authorized';
|
|
687
|
-
const staleCreds = Date.now() - this.credentialsRefreshedAt >= CREDENTIALS_REFRESH_MIN_INTERVAL_MS;
|
|
688
|
-
if (this.credentialsProvider && (authFailed || staleCreds)) {
|
|
657
|
+
// If the last failure was a SASL `not-authorized` (typically a stale
|
|
658
|
+
// JWT-derived XMPP password after idle), try to fetch fresh creds
|
|
659
|
+
// before retrying. Without this, reconnect retries with the same
|
|
660
|
+
// stale password forever and the user has to kill the app.
|
|
661
|
+
if (this.lastAuthError === 'not-authorized' && this.credentialsProvider) {
|
|
689
662
|
try {
|
|
690
663
|
await this.refreshCredentialsOnce();
|
|
691
664
|
} catch (err) {
|
|
692
|
-
// Offline is the common case here — reconnect with what we
|
|
693
|
-
// have and let the next attempt try again.
|
|
694
665
|
console.warn('XMPP credential refresh failed; reconnecting with cached creds', err);
|
|
695
666
|
}
|
|
696
667
|
}
|
|
@@ -701,10 +672,7 @@ export class XmppClient {
|
|
|
701
672
|
// `this.client` still points at the old client — i.e. before
|
|
702
673
|
// initializeClient() reassigns it.
|
|
703
674
|
const old = this.client;
|
|
704
|
-
if (old
|
|
705
|
-
this.detachEventListeners();
|
|
706
|
-
this.clientAlreadyStopped = false;
|
|
707
|
-
} else if (old) {
|
|
675
|
+
if (old) {
|
|
708
676
|
this.detachEventListeners();
|
|
709
677
|
// NEVER await a bare stop(): on a half-dead socket (the exact case
|
|
710
678
|
// we're reconnecting for) @xmpp/client's stop() can hang forever
|
|
@@ -719,9 +687,6 @@ export class XmppClient {
|
|
|
719
687
|
await withTimeout(old.stop(), STOP_TIMEOUT_MS);
|
|
720
688
|
}
|
|
721
689
|
this.initializeClient();
|
|
722
|
-
if (this.suspendedForBackground) {
|
|
723
|
-
await this.stopClientQuietly();
|
|
724
|
-
}
|
|
725
690
|
} finally {
|
|
726
691
|
this.reconnecting = false;
|
|
727
692
|
}
|
|
@@ -753,7 +718,6 @@ export class XmppClient {
|
|
|
753
718
|
// creds really are stale we simply get not-authorized again and
|
|
754
719
|
// retry, which is the confirmed-good 26.5.7 behaviour.
|
|
755
720
|
this.updateCredentials(fresh.username, fresh.password);
|
|
756
|
-
this.credentialsRefreshedAt = Date.now();
|
|
757
721
|
this.lastAuthError = null;
|
|
758
722
|
}
|
|
759
723
|
} finally {
|
|
@@ -762,53 +726,6 @@ export class XmppClient {
|
|
|
762
726
|
})();
|
|
763
727
|
return this.credentialsRefreshInFlight;
|
|
764
728
|
}
|
|
765
|
-
suspendedForBackground = false;
|
|
766
|
-
clientAlreadyStopped = false;
|
|
767
|
-
async stopClientQuietly() {
|
|
768
|
-
const c = this.client;
|
|
769
|
-
if (c) {
|
|
770
|
-
const sock = c.socket;
|
|
771
|
-
if (sock && typeof sock.end === 'function') {
|
|
772
|
-
try {
|
|
773
|
-
sock.end();
|
|
774
|
-
} catch {}
|
|
775
|
-
try {
|
|
776
|
-
if (c.status !== 'offline') c._status?.('offline');
|
|
777
|
-
} catch {}
|
|
778
|
-
} else {
|
|
779
|
-
await withTimeout(Promise.resolve(c.stop()).catch(() => undefined), STOP_TIMEOUT_MS);
|
|
780
|
-
}
|
|
781
|
-
this.clientAlreadyStopped = true;
|
|
782
|
-
}
|
|
783
|
-
this.status = 'offline';
|
|
784
|
-
this.presencesReady = false;
|
|
785
|
-
}
|
|
786
|
-
async suspend() {
|
|
787
|
-
if (this.suspendedForBackground) {
|
|
788
|
-
return;
|
|
789
|
-
}
|
|
790
|
-
this.suspendedForBackground = true;
|
|
791
|
-
this.suppressReconnect = true;
|
|
792
|
-
if (this.reconnectTimer) {
|
|
793
|
-
clearTimeout(this.reconnectTimer);
|
|
794
|
-
this.reconnectTimer = null;
|
|
795
|
-
}
|
|
796
|
-
await this.stopClientQuietly();
|
|
797
|
-
console.log('XMPP suspended (background).');
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
/** Back in the foreground: allow reconnects again and reconnect at once. */
|
|
801
|
-
resume() {
|
|
802
|
-
if (!this.suspendedForBackground) {
|
|
803
|
-
return;
|
|
804
|
-
}
|
|
805
|
-
this.suspendedForBackground = false;
|
|
806
|
-
this.suppressReconnect = false;
|
|
807
|
-
this.forceReconnect();
|
|
808
|
-
}
|
|
809
|
-
get isSuspended() {
|
|
810
|
-
return this.suspendedForBackground;
|
|
811
|
-
}
|
|
812
729
|
async disconnect(options) {
|
|
813
730
|
if (options?.suppressReconnect) {
|
|
814
731
|
this.suppressReconnect = true;
|
|
@@ -945,35 +862,9 @@ export class XmppClient {
|
|
|
945
862
|
// `getChatsPrivateStoreRequest` directly and intentionally skip this.
|
|
946
863
|
if (markers && typeof markers === 'object') {
|
|
947
864
|
const normalized = {};
|
|
948
|
-
const roomsState = store.getState().rooms?.rooms || {};
|
|
949
|
-
const heapState = store.getState().roomHeapSlice;
|
|
950
865
|
for (const jid of Object.keys(markers)) {
|
|
951
866
|
const n = Number(markers[jid]);
|
|
952
|
-
if (
|
|
953
|
-
continue;
|
|
954
|
-
}
|
|
955
|
-
// Defensive clamp (bug #38): a marker written while some
|
|
956
|
-
// device's clock was ahead can land in the future relative to
|
|
957
|
-
// the newest message the server actually has for this room.
|
|
958
|
-
// The redux merge (applyPrivateStoreMarkers) and the
|
|
959
|
-
// server-side merge (flushLastViewedToPrivateStore) both treat
|
|
960
|
-
// "newer" as "better", so an uncorrected future value would
|
|
961
|
-
// block every later correct write forever - useUnread() would
|
|
962
|
-
// report 0 for that room on every cold start. When we already
|
|
963
|
-
// know this room's messages locally, clamp an implausible
|
|
964
|
-
// marker down to the newest one we actually have instead of
|
|
965
|
-
// trusting the server value verbatim.
|
|
966
|
-
//
|
|
967
|
-
// "Implausible" needs BOTH "past the newest message we know
|
|
968
|
-
// about" AND "past real time" (isCorruptFutureReadMarker):
|
|
969
|
-
// this device's cache for a room is routinely stale, and
|
|
970
|
-
// clamping on staleness alone would drag a perfectly good
|
|
971
|
-
// marker written by another device backwards.
|
|
972
|
-
const room = roomsState[jid];
|
|
973
|
-
const newestKnownMs = room ? getServerReadTimestamp(room, heapState) : 0;
|
|
974
|
-
if (isCorruptFutureReadMarker(n, newestKnownMs)) {
|
|
975
|
-
normalized[jid] = newestKnownMs;
|
|
976
|
-
} else {
|
|
867
|
+
if (jid && Number.isFinite(n) && n > 0) {
|
|
977
868
|
normalized[jid] = n;
|
|
978
869
|
}
|
|
979
870
|
}
|
|
@@ -1004,14 +895,7 @@ export class XmppClient {
|
|
|
1004
895
|
return false;
|
|
1005
896
|
}
|
|
1006
897
|
try {
|
|
1007
|
-
|
|
1008
|
-
// getServerReadTimestamp's exclusion of optimistic messages for
|
|
1009
|
-
// free, without needing to reach into the redux store themselves.
|
|
1010
|
-
const heapState = store.getState().roomHeapSlice;
|
|
1011
|
-
return await flushLastViewedToPrivateStore(this, rooms, {
|
|
1012
|
-
...opts,
|
|
1013
|
-
heapState
|
|
1014
|
-
});
|
|
898
|
+
return await flushLastViewedToPrivateStore(this, rooms, opts);
|
|
1015
899
|
} catch {
|
|
1016
900
|
return false;
|
|
1017
901
|
}
|