@ethora/chat-component-rn 26.8.6 → 26.8.8
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 +36 -0
- package/README.md +64 -2
- package/lib/commonjs/assets/icons.js +4 -2
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js +28 -6
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +9 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +5 -3
- package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/EncryptedSendNotice.js +47 -0
- package/lib/commonjs/components/MainComponents/EncryptedSendNotice.js.map +1 -0
- package/lib/commonjs/components/MainComponents/EncryptionCard.js +286 -0
- package/lib/commonjs/components/MainComponents/EncryptionCard.js.map +1 -0
- package/lib/commonjs/components/MainComponents/MediaMessage.js +7 -0
- package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js +13 -0
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/SealedAttachment.js +231 -0
- package/lib/commonjs/components/MainComponents/SealedAttachment.js.map +1 -0
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +26 -13
- package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/commonjs/components/MenuRoom/MenuRoom.js +5 -3
- package/lib/commonjs/components/MenuRoom/MenuRoom.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js +2 -1
- package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/Message.js +69 -9
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js +7 -4
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +8 -5
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +2 -2
- package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +166 -21
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +4 -0
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/commonjs/components/Modals/Modal/Modal.js +33 -11
- package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +8 -8
- package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/commonjs/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js +279 -0
- package/lib/commonjs/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js.map +1 -0
- package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +10 -8
- package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
- package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js +13 -11
- package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +50 -15
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js +121 -0
- package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -0
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +10 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +32 -9
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/LastMessageItem.js +6 -0
- package/lib/commonjs/components/RoomComponents/LastMessageItem.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js +2 -2
- package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +4 -6
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +2 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageSealed.js +41 -0
- package/lib/commonjs/components/RoomComponents/styled/LastMessageSealed.js.map +1 -0
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +2 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/commonjs/components/Thread/ThreadWrapper.js +56 -46
- package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
- package/lib/commonjs/components/UsersList/UsersList.js +2 -1
- package/lib/commonjs/components/UsersList/UsersList.js.map +1 -1
- package/lib/commonjs/components/styled/SendInput.js +4 -2
- package/lib/commonjs/components/styled/SendInput.js.map +1 -1
- package/lib/commonjs/e2ee/crypto.js +207 -0
- package/lib/commonjs/e2ee/crypto.js.map +1 -0
- package/lib/commonjs/e2ee/deviceStore.js +84 -0
- package/lib/commonjs/e2ee/deviceStore.js.map +1 -0
- package/lib/commonjs/e2ee/fileCipher.js +95 -0
- package/lib/commonjs/e2ee/fileCipher.js.map +1 -0
- package/lib/commonjs/e2ee/fileEnvelope.js +79 -0
- package/lib/commonjs/e2ee/fileEnvelope.js.map +1 -0
- package/lib/commonjs/e2ee/index.js +210 -0
- package/lib/commonjs/e2ee/index.js.map +1 -0
- package/lib/commonjs/e2ee/limits.js +9 -0
- package/lib/commonjs/e2ee/limits.js.map +1 -0
- package/lib/commonjs/e2ee/ns.js +8 -0
- package/lib/commonjs/e2ee/ns.js.map +1 -0
- package/lib/commonjs/e2ee/omemo.js +622 -0
- package/lib/commonjs/e2ee/omemo.js.map +1 -0
- package/lib/commonjs/e2ee/protobuf.js +149 -0
- package/lib/commonjs/e2ee/protobuf.js.map +1 -0
- package/lib/commonjs/e2ee/ratchet.js +238 -0
- package/lib/commonjs/e2ee/ratchet.js.map +1 -0
- package/lib/commonjs/e2ee/sealedBody.js +23 -0
- package/lib/commonjs/e2ee/sealedBody.js.map +1 -0
- package/lib/commonjs/e2ee/sealedFiles.js +174 -0
- package/lib/commonjs/e2ee/sealedFiles.js.map +1 -0
- package/lib/commonjs/e2ee/send.js +54 -0
- package/lib/commonjs/e2ee/send.js.map +1 -0
- package/lib/commonjs/e2ee/stanza.js +114 -0
- package/lib/commonjs/e2ee/stanza.js.map +1 -0
- package/lib/commonjs/e2ee/store.js +43 -0
- package/lib/commonjs/e2ee/store.js.map +1 -0
- package/lib/commonjs/helpers/accountName.js +23 -0
- package/lib/commonjs/helpers/accountName.js.map +1 -0
- package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js +2 -0
- package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
- package/lib/commonjs/helpers/constants/MODAL_TYPES.js +1 -0
- package/lib/commonjs/helpers/constants/MODAL_TYPES.js.map +1 -1
- package/lib/commonjs/helpers/createMessageFromXml.js +19 -4
- package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
- package/lib/commonjs/helpers/createUserNameFromSetUser.js +2 -1
- package/lib/commonjs/helpers/createUserNameFromSetUser.js.map +1 -1
- package/lib/commonjs/helpers/displayName.js +16 -0
- package/lib/commonjs/helpers/displayName.js.map +1 -0
- package/lib/commonjs/helpers/persistCrypto.js +5 -0
- package/lib/commonjs/helpers/persistCrypto.js.map +1 -1
- package/lib/commonjs/helpers/preferencesStorage.js.map +1 -1
- package/lib/commonjs/helpers/secureKeyValue.js +20 -0
- package/lib/commonjs/helpers/secureKeyValue.js.map +1 -1
- package/lib/commonjs/helpers/videoCache.js +136 -0
- package/lib/commonjs/helpers/videoCache.js.map +1 -0
- package/lib/commonjs/hooks/useChatSettingState.js +2 -0
- package/lib/commonjs/hooks/useChatSettingState.js.map +1 -1
- package/lib/commonjs/hooks/useChatWrapperInit.js +4 -0
- package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/commonjs/hooks/useLogout.js +8 -0
- package/lib/commonjs/hooks/useLogout.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +71 -7
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/i18n/strings.js +367 -1
- package/lib/commonjs/i18n/strings.js.map +1 -1
- package/lib/commonjs/i18n/useT.js +8 -4
- package/lib/commonjs/i18n/useT.js.map +1 -1
- package/lib/commonjs/main.js +13 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/auth.api.js +4 -1
- package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/rooms.api.js +111 -17
- package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/user.api.js +13 -0
- package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
- package/lib/commonjs/networking/stanzaHandlers.js +1 -1
- package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +40 -0
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js +16 -3
- package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js +13 -6
- package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js +14 -6
- package/lib/commonjs/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmppClient.js +6 -0
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/chatSettingsSlice.js +7 -2
- package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/commonjs/roomStore/persistBackend.js +9 -12
- package/lib/commonjs/roomStore/persistBackend.js.map +1 -1
- package/lib/commonjs/roomStore/persistence.js +8 -1
- package/lib/commonjs/roomStore/persistence.js.map +1 -1
- package/lib/commonjs/services/languageSettings.js +177 -0
- package/lib/commonjs/services/languageSettings.js.map +1 -0
- package/lib/commonjs/version.js +1 -1
- package/lib/module/assets/icons.js +3 -1
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/MainComponents/ChatHeader.js +29 -7
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +9 -1
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +5 -3
- package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/EncryptedSendNotice.js +42 -0
- package/lib/module/components/MainComponents/EncryptedSendNotice.js.map +1 -0
- package/lib/module/components/MainComponents/EncryptionCard.js +281 -0
- package/lib/module/components/MainComponents/EncryptionCard.js.map +1 -0
- package/lib/module/components/MainComponents/MediaMessage.js +7 -0
- package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/module/components/MainComponents/ReduxWrapper.js +14 -1
- package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/SealedAttachment.js +224 -0
- package/lib/module/components/MainComponents/SealedAttachment.js.map +1 -0
- package/lib/module/components/Menu/HeaderRoomListMenu.js +26 -13
- package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
- package/lib/module/components/MenuRoom/MenuRoom.js +5 -3
- package/lib/module/components/MenuRoom/MenuRoom.js.map +1 -1
- package/lib/module/components/MessageBubble/BottomReplyContainer.js +2 -1
- package/lib/module/components/MessageBubble/BottomReplyContainer.js.map +1 -1
- package/lib/module/components/MessageBubble/Message.js +72 -12
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js +7 -4
- package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +8 -5
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +2 -2
- package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +168 -23
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js +4 -0
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/module/components/Modals/Modal/Modal.js +33 -11
- package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js +8 -8
- package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
- package/lib/module/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js +274 -0
- package/lib/module/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.js.map +1 -0
- package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +10 -8
- package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
- package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js +13 -11
- package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +54 -18
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js +116 -0
- package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -0
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +10 -1
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js +32 -9
- package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/module/components/RoomComponents/LastMessageItem.js +6 -0
- package/lib/module/components/RoomComponents/LastMessageItem.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastAudioMessage.js +2 -2
- package/lib/module/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js +4 -6
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +2 -2
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageSealed.js +36 -0
- package/lib/module/components/RoomComponents/styled/LastMessageSealed.js.map +1 -0
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +2 -2
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/module/components/Thread/ThreadWrapper.js +57 -47
- package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
- package/lib/module/components/UsersList/UsersList.js +2 -1
- package/lib/module/components/UsersList/UsersList.js.map +1 -1
- package/lib/module/components/styled/SendInput.js +4 -2
- package/lib/module/components/styled/SendInput.js.map +1 -1
- package/lib/module/e2ee/crypto.js +170 -0
- package/lib/module/e2ee/crypto.js.map +1 -0
- package/lib/module/e2ee/deviceStore.js +77 -0
- package/lib/module/e2ee/deviceStore.js.map +1 -0
- package/lib/module/e2ee/fileCipher.js +90 -0
- package/lib/module/e2ee/fileCipher.js.map +1 -0
- package/lib/module/e2ee/fileEnvelope.js +66 -0
- package/lib/module/e2ee/fileEnvelope.js.map +1 -0
- package/lib/module/e2ee/index.js +185 -0
- package/lib/module/e2ee/index.js.map +1 -0
- package/lib/module/e2ee/limits.js +5 -0
- package/lib/module/e2ee/limits.js.map +1 -0
- package/lib/module/e2ee/ns.js +4 -0
- package/lib/module/e2ee/ns.js.map +1 -0
- package/lib/module/e2ee/omemo.js +610 -0
- package/lib/module/e2ee/omemo.js.map +1 -0
- package/lib/module/e2ee/protobuf.js +140 -0
- package/lib/module/e2ee/protobuf.js.map +1 -0
- package/lib/module/e2ee/ratchet.js +228 -0
- package/lib/module/e2ee/ratchet.js.map +1 -0
- package/lib/module/e2ee/sealedBody.js +19 -0
- package/lib/module/e2ee/sealedBody.js.map +1 -0
- package/lib/module/e2ee/sealedFiles.js +154 -0
- package/lib/module/e2ee/sealedFiles.js.map +1 -0
- package/lib/module/e2ee/send.js +48 -0
- package/lib/module/e2ee/send.js.map +1 -0
- package/lib/module/e2ee/stanza.js +107 -0
- package/lib/module/e2ee/stanza.js.map +1 -0
- package/lib/module/e2ee/store.js +35 -0
- package/lib/module/e2ee/store.js.map +1 -0
- package/lib/module/helpers/accountName.js +18 -0
- package/lib/module/helpers/accountName.js.map +1 -0
- package/lib/module/helpers/constants/MODAL_COMPONENTS.js +2 -0
- package/lib/module/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
- package/lib/module/helpers/constants/MODAL_TYPES.js +1 -0
- package/lib/module/helpers/constants/MODAL_TYPES.js.map +1 -1
- package/lib/module/helpers/createMessageFromXml.js +19 -4
- package/lib/module/helpers/createMessageFromXml.js.map +1 -1
- package/lib/module/helpers/createUserNameFromSetUser.js +3 -1
- package/lib/module/helpers/createUserNameFromSetUser.js.map +1 -1
- package/lib/module/helpers/displayName.js +11 -0
- package/lib/module/helpers/displayName.js.map +1 -0
- package/lib/module/helpers/persistCrypto.js +4 -0
- package/lib/module/helpers/persistCrypto.js.map +1 -1
- package/lib/module/helpers/preferencesStorage.js.map +1 -1
- package/lib/module/helpers/secureKeyValue.js +19 -0
- package/lib/module/helpers/secureKeyValue.js.map +1 -1
- package/lib/module/helpers/videoCache.js +125 -0
- package/lib/module/helpers/videoCache.js.map +1 -0
- package/lib/module/hooks/useChatSettingState.js +2 -0
- package/lib/module/hooks/useChatSettingState.js.map +1 -1
- package/lib/module/hooks/useChatWrapperInit.js +4 -0
- package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/module/hooks/useLogout.js +8 -0
- package/lib/module/hooks/useLogout.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +71 -7
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/i18n/strings.js +367 -1
- package/lib/module/i18n/strings.js.map +1 -1
- package/lib/module/i18n/useT.js +8 -4
- package/lib/module/i18n/useT.js.map +1 -1
- package/lib/module/main.js +1 -0
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/auth.api.js +4 -1
- package/lib/module/networking/api-requests/auth.api.js.map +1 -1
- package/lib/module/networking/api-requests/rooms.api.js +109 -18
- package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/module/networking/api-requests/user.api.js +12 -0
- package/lib/module/networking/api-requests/user.api.js.map +1 -1
- package/lib/module/networking/stanzaHandlers.js +1 -1
- package/lib/module/networking/stanzaHandlers.js.map +1 -1
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js +38 -0
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js +16 -3
- package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendTextMessage.xmpp.js +13 -6
- package/lib/module/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js +14 -6
- package/lib/module/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js.map +1 -1
- package/lib/module/networking/xmppClient.js +6 -0
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/chatSettingsSlice.js +5 -1
- package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/module/roomStore/persistBackend.js +10 -13
- package/lib/module/roomStore/persistBackend.js.map +1 -1
- package/lib/module/roomStore/persistence.js +8 -1
- package/lib/module/roomStore/persistence.js.map +1 -1
- package/lib/module/services/languageSettings.js +164 -0
- package/lib/module/services/languageSettings.js.map +1 -0
- package/lib/module/version.js +1 -1
- package/lib/typescript/assets/icons.d.ts +8 -0
- package/lib/typescript/assets/icons.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/EncryptedSendNotice.d.ts +4 -0
- package/lib/typescript/components/MainComponents/EncryptedSendNotice.d.ts.map +1 -0
- package/lib/typescript/components/MainComponents/EncryptionCard.d.ts +10 -0
- package/lib/typescript/components/MainComponents/EncryptionCard.d.ts.map +1 -0
- package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/SealedAttachment.d.ts +13 -0
- package/lib/typescript/components/MainComponents/SealedAttachment.d.ts.map +1 -0
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts +7 -1
- package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
- package/lib/typescript/components/MenuRoom/MenuRoom.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/BottomReplyContainer.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.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/SettingsModals/ChangePassword/ChangePasswordModal.d.ts +15 -0
- package/lib/typescript/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.d.ts.map +1 -0
- package/lib/typescript/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/SettingsModals/Visibility/VisibilityModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserSettingsModal/LanguageCard.d.ts +14 -0
- package/lib/typescript/components/Modals/UserSettingsModal/LanguageCard.d.ts.map +1 -0
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/LastMessageItem.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageSealed.d.ts +7 -0
- package/lib/typescript/components/RoomComponents/styled/LastMessageSealed.d.ts.map +1 -0
- package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
- package/lib/typescript/components/UsersList/UsersList.d.ts.map +1 -1
- package/lib/typescript/components/styled/SendInput.d.ts +1 -0
- package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
- package/lib/typescript/e2ee/crypto.d.ts +28 -0
- package/lib/typescript/e2ee/crypto.d.ts.map +1 -0
- package/lib/typescript/e2ee/deviceStore.d.ts +4 -0
- package/lib/typescript/e2ee/deviceStore.d.ts.map +1 -0
- package/lib/typescript/e2ee/fileCipher.d.ts +7 -0
- package/lib/typescript/e2ee/fileCipher.d.ts.map +1 -0
- package/lib/typescript/e2ee/fileEnvelope.d.ts +27 -0
- package/lib/typescript/e2ee/fileEnvelope.d.ts.map +1 -0
- package/lib/typescript/e2ee/index.d.ts +23 -0
- package/lib/typescript/e2ee/index.d.ts.map +1 -0
- package/lib/typescript/e2ee/limits.d.ts +3 -0
- package/lib/typescript/e2ee/limits.d.ts.map +1 -0
- package/lib/typescript/e2ee/ns.d.ts +2 -0
- package/lib/typescript/e2ee/ns.d.ts.map +1 -0
- package/lib/typescript/e2ee/omemo.d.ts +64 -0
- package/lib/typescript/e2ee/omemo.d.ts.map +1 -0
- package/lib/typescript/e2ee/protobuf.d.ts +25 -0
- package/lib/typescript/e2ee/protobuf.d.ts.map +1 -0
- package/lib/typescript/e2ee/ratchet.d.ts +39 -0
- package/lib/typescript/e2ee/ratchet.d.ts.map +1 -0
- package/lib/typescript/e2ee/sealedBody.d.ts +2 -0
- package/lib/typescript/e2ee/sealedBody.d.ts.map +1 -0
- package/lib/typescript/e2ee/sealedFiles.d.ts +31 -0
- package/lib/typescript/e2ee/sealedFiles.d.ts.map +1 -0
- package/lib/typescript/e2ee/send.d.ts +6 -0
- package/lib/typescript/e2ee/send.d.ts.map +1 -0
- package/lib/typescript/e2ee/stanza.d.ts +8 -0
- package/lib/typescript/e2ee/stanza.d.ts.map +1 -0
- package/lib/typescript/e2ee/store.d.ts +16 -0
- package/lib/typescript/e2ee/store.d.ts.map +1 -0
- package/lib/typescript/helpers/accountName.d.ts +7 -0
- package/lib/typescript/helpers/accountName.d.ts.map +1 -0
- package/lib/typescript/helpers/constants/MODAL_COMPONENTS.d.ts.map +1 -1
- package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts +1 -0
- package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts.map +1 -1
- package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/createUserNameFromSetUser.d.ts.map +1 -1
- package/lib/typescript/helpers/displayName.d.ts +2 -0
- package/lib/typescript/helpers/displayName.d.ts.map +1 -0
- package/lib/typescript/helpers/persistCrypto.d.ts +1 -0
- package/lib/typescript/helpers/persistCrypto.d.ts.map +1 -1
- package/lib/typescript/helpers/preferencesStorage.d.ts +4 -0
- package/lib/typescript/helpers/preferencesStorage.d.ts.map +1 -1
- package/lib/typescript/helpers/secureKeyValue.d.ts +4 -0
- package/lib/typescript/helpers/secureKeyValue.d.ts.map +1 -1
- package/lib/typescript/helpers/videoCache.d.ts +19 -0
- package/lib/typescript/helpers/videoCache.d.ts.map +1 -0
- package/lib/typescript/hooks/useChatSettingState.d.ts +1 -0
- package/lib/typescript/hooks/useChatSettingState.d.ts.map +1 -1
- package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
- package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
- package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/i18n/strings.d.ts.map +1 -1
- package/lib/typescript/i18n/useT.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +2 -0
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts +4 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/rooms.api.d.ts +22 -1
- package/lib/typescript/networking/api-requests/rooms.api.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/user.api.d.ts +6 -0
- package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
- package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts +1 -0
- package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendTextMessage.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts +8 -1
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
- package/lib/typescript/roomStore/persistBackend.d.ts.map +1 -1
- package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
- package/lib/typescript/services/languageSettings.d.ts +29 -0
- package/lib/typescript/services/languageSettings.d.ts.map +1 -0
- package/lib/typescript/types/models/message.model.d.ts +5 -0
- package/lib/typescript/types/models/message.model.d.ts.map +1 -1
- package/lib/typescript/types/models/room.model.d.ts +5 -0
- package/lib/typescript/types/models/room.model.d.ts.map +1 -1
- package/lib/typescript/types/models/user.model.d.ts +4 -0
- package/lib/typescript/types/models/user.model.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +25 -0
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +8 -4
- package/src/assets/icons.tsx +27 -0
- package/src/components/MainComponents/ChatHeader.tsx +30 -9
- package/src/components/MainComponents/ChatRoom.tsx +11 -1
- package/src/components/MainComponents/ChatWrapper.tsx +5 -3
- package/src/components/MainComponents/EncryptedSendNotice.tsx +35 -0
- package/src/components/MainComponents/EncryptionCard.tsx +287 -0
- package/src/components/MainComponents/MediaMessage.tsx +5 -0
- package/src/components/MainComponents/ReduxWrapper.tsx +11 -0
- package/src/components/MainComponents/SealedAttachment.tsx +251 -0
- package/src/components/Menu/HeaderRoomListMenu.tsx +40 -13
- package/src/components/MenuRoom/MenuRoom.tsx +5 -3
- package/src/components/MessageBubble/BottomReplyContainer.tsx +2 -1
- package/src/components/MessageBubble/Message.tsx +99 -9
- package/src/components/MessageBubble/MessageInteractions.tsx +7 -6
- package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +8 -5
- package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +2 -2
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +188 -40
- package/src/components/Modals/FilePreviewModal/PdfView.tsx +4 -0
- package/src/components/Modals/Modal/Modal.tsx +44 -16
- package/src/components/Modals/NewChatModal/NewChatModal.tsx +8 -8
- package/src/components/Modals/SettingsModals/ChangePassword/ChangePasswordModal.tsx +316 -0
- package/src/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.tsx +10 -15
- package/src/components/Modals/SettingsModals/Visibility/VisibilityModal.tsx +13 -14
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +72 -20
- package/src/components/Modals/UserSettingsModal/LanguageCard.tsx +144 -0
- package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +13 -1
- package/src/components/RoomComponents/ChatRoomItem.tsx +23 -11
- package/src/components/RoomComponents/LastMessageItem.tsx +5 -0
- package/src/components/RoomComponents/styled/LastAudioMessage.tsx +3 -1
- package/src/components/RoomComponents/styled/LastMessageFile.tsx +2 -2
- package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +1 -1
- package/src/components/RoomComponents/styled/LastMessageSealed.tsx +31 -0
- package/src/components/RoomComponents/styled/LastMessageVideo.tsx +1 -1
- package/src/components/Thread/ThreadWrapper.tsx +17 -2
- package/src/components/UsersList/UsersList.tsx +2 -1
- package/src/components/styled/SendInput.tsx +5 -2
- package/src/e2ee/crypto.ts +194 -0
- package/src/e2ee/deviceStore.ts +80 -0
- package/src/e2ee/fileCipher.ts +86 -0
- package/src/e2ee/fileEnvelope.ts +115 -0
- package/src/e2ee/index.ts +192 -0
- package/src/e2ee/limits.ts +2 -0
- package/src/e2ee/ns.ts +1 -0
- package/src/e2ee/omemo.ts +802 -0
- package/src/e2ee/protobuf.ts +188 -0
- package/src/e2ee/ratchet.ts +271 -0
- package/src/e2ee/sealedBody.ts +17 -0
- package/src/e2ee/sealedFiles.ts +181 -0
- package/src/e2ee/send.ts +70 -0
- package/src/e2ee/stanza.ts +133 -0
- package/src/e2ee/store.ts +54 -0
- package/src/helpers/accountName.ts +15 -0
- package/src/helpers/constants/MODAL_COMPONENTS.tsx +2 -0
- package/src/helpers/constants/MODAL_TYPES.ts +1 -0
- package/src/helpers/createMessageFromXml.ts +31 -6
- package/src/helpers/createUserNameFromSetUser.ts +2 -1
- package/src/helpers/displayName.ts +9 -0
- package/src/helpers/persistCrypto.ts +5 -0
- package/src/helpers/preferencesStorage.ts +4 -0
- package/src/helpers/secureKeyValue.ts +15 -0
- package/src/helpers/videoCache.ts +138 -0
- package/src/hooks/useChatSettingState.tsx +4 -0
- package/src/hooks/useChatWrapperInit.ts +4 -0
- package/src/hooks/useLogout.tsx +9 -0
- package/src/hooks/useSendMessage.tsx +71 -5
- package/src/i18n/strings.ts +367 -1
- package/src/i18n/useT.ts +6 -4
- package/src/main.ts +2 -0
- package/src/networking/api-requests/auth.api.ts +9 -1
- package/src/networking/api-requests/rooms.api.ts +121 -18
- package/src/networking/api-requests/user.api.ts +9 -0
- package/src/networking/stanzaHandlers.ts +1 -0
- package/src/networking/xmpp/handleStanzas.xmpp.ts +49 -0
- package/src/networking/xmpp/sendMediaMessage.xmpp.ts +19 -1
- package/src/networking/xmpp/sendTextMessage.xmpp.ts +17 -10
- package/src/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.ts +23 -10
- package/src/networking/xmppClient.ts +6 -0
- package/src/roomStore/chatSettingsSlice.ts +13 -0
- package/src/roomStore/persistBackend.ts +8 -11
- package/src/roomStore/persistence.ts +15 -0
- package/src/services/languageSettings.ts +143 -0
- package/src/types/models/message.model.ts +5 -0
- package/src/types/models/room.model.ts +5 -0
- package/src/types/models/user.model.ts +4 -0
- package/src/types/types.ts +25 -0
- package/src/version.ts +1 -1
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.markStreamingUnsupported = exports.isStreamingUnsupported = exports.isRemoteUrl = exports.getVideoCacheUri = exports.findCachedVideo = exports.downloadVideoToCache = exports.__resetVideoCacheForTests = void 0;
|
|
7
|
+
var FileSystem = _interopRequireWildcard(require("expo-file-system/legacy"));
|
|
8
|
+
var _mimeToExtension = require("./mimeToExtension");
|
|
9
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
10
|
+
// Containers the native players open from a local file by extension.
|
|
11
|
+
const VIDEO_EXT_RE = /\.(mp4|mov|m4v|webm|3gp|mkv|mpeg)$/i;
|
|
12
|
+
const hashString = value => {
|
|
13
|
+
let hash = 5381;
|
|
14
|
+
for (let i = 0; i < value.length; i++) {
|
|
15
|
+
hash = hash * 33 ^ value.charCodeAt(i);
|
|
16
|
+
}
|
|
17
|
+
return (hash >>> 0).toString(36);
|
|
18
|
+
};
|
|
19
|
+
const isRemoteUrl = url => /^https?:\/\//i.test(url || '');
|
|
20
|
+
exports.isRemoteUrl = isRemoteUrl;
|
|
21
|
+
const hostOf = url => (/^https?:\/\/(?:[^@/]+@)?([^:/?#]+)/i.exec(url)?.[1] || '').toLowerCase();
|
|
22
|
+
|
|
23
|
+
// The query carries the short-lived file token; the file is the same.
|
|
24
|
+
const withoutQuery = url => url.split('#')[0].split('?')[0];
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Where a remote video is kept once downloaded. The extension matters:
|
|
28
|
+
* AVFoundation picks the demuxer of a local file by it.
|
|
29
|
+
*/
|
|
30
|
+
const getVideoCacheUri = (url, mimetype, cacheDirectory) => {
|
|
31
|
+
const fromUrl = VIDEO_EXT_RE.exec((0, _mimeToExtension.filenameFromUrl)(url))?.[0];
|
|
32
|
+
const fromMime = (0, _mimeToExtension.getExtensionForMime)(mimetype);
|
|
33
|
+
const ext = (fromUrl || (VIDEO_EXT_RE.test(fromMime) ? fromMime : '.mp4')).toLowerCase();
|
|
34
|
+
return `${cacheDirectory}ethora-video-${hashString(withoutQuery(url))}${ext}`;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Hosts that answered a streaming attempt with an error. AVPlayer refuses a
|
|
39
|
+
* server that replies 200 to a byte-range request ("server is not correctly
|
|
40
|
+
* configured"), so for those the next video skips the doomed stream and
|
|
41
|
+
* downloads straight away.
|
|
42
|
+
*/
|
|
43
|
+
exports.getVideoCacheUri = getVideoCacheUri;
|
|
44
|
+
const hostsWithoutStreaming = new Set();
|
|
45
|
+
const markStreamingUnsupported = url => {
|
|
46
|
+
const host = hostOf(url);
|
|
47
|
+
if (host) {
|
|
48
|
+
hostsWithoutStreaming.add(host);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
exports.markStreamingUnsupported = markStreamingUnsupported;
|
|
52
|
+
const isStreamingUnsupported = url => hostsWithoutStreaming.has(hostOf(url));
|
|
53
|
+
exports.isStreamingUnsupported = isStreamingUnsupported;
|
|
54
|
+
const findCachedVideo = async (url, mimetype) => {
|
|
55
|
+
const cacheDirectory = FileSystem.cacheDirectory;
|
|
56
|
+
if (!cacheDirectory || !isRemoteUrl(url)) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
const uri = getVideoCacheUri(url, mimetype, cacheDirectory);
|
|
61
|
+
const info = await FileSystem.getInfoAsync(uri);
|
|
62
|
+
return info.exists ? uri : null;
|
|
63
|
+
} catch {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
exports.findCachedVideo = findCachedVideo;
|
|
68
|
+
const inFlight = new Map();
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Downloads the video next to the app's other caches and resolves with the
|
|
72
|
+
* local uri. One download per file however many callers ask; `onProgress`
|
|
73
|
+
* gets 0..1 when the server reports a length.
|
|
74
|
+
*/
|
|
75
|
+
const downloadVideoToCache = (url, mimetype, onProgress) => {
|
|
76
|
+
const cacheDirectory = FileSystem.cacheDirectory;
|
|
77
|
+
if (!cacheDirectory) {
|
|
78
|
+
return Promise.reject(new Error('video_cache_unavailable'));
|
|
79
|
+
}
|
|
80
|
+
const finalUri = getVideoCacheUri(url, mimetype, cacheDirectory);
|
|
81
|
+
const running = inFlight.get(finalUri);
|
|
82
|
+
if (running) {
|
|
83
|
+
if (onProgress) {
|
|
84
|
+
running.listeners.add(onProgress);
|
|
85
|
+
}
|
|
86
|
+
return running.promise;
|
|
87
|
+
}
|
|
88
|
+
const listeners = new Set();
|
|
89
|
+
if (onProgress) {
|
|
90
|
+
listeners.add(onProgress);
|
|
91
|
+
}
|
|
92
|
+
const run = async () => {
|
|
93
|
+
// Download under another name: an interrupted download must not be
|
|
94
|
+
// mistaken for the cached file next time.
|
|
95
|
+
const part = `${finalUri}.part`;
|
|
96
|
+
await FileSystem.deleteAsync(part, {
|
|
97
|
+
idempotent: true
|
|
98
|
+
}).catch(() => {});
|
|
99
|
+
const task = FileSystem.createDownloadResumable(url, part, {}, p => {
|
|
100
|
+
if (p.totalBytesExpectedToWrite > 0) {
|
|
101
|
+
const fraction = Math.min(1, p.totalBytesWritten / p.totalBytesExpectedToWrite);
|
|
102
|
+
listeners.forEach(listener => listener(fraction));
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
const result = await task.downloadAsync();
|
|
106
|
+
if (!result || result.status < 200 || result.status >= 300) {
|
|
107
|
+
await FileSystem.deleteAsync(part, {
|
|
108
|
+
idempotent: true
|
|
109
|
+
}).catch(() => {});
|
|
110
|
+
throw new Error(`video_download_status_${result?.status ?? 'cancelled'}`);
|
|
111
|
+
}
|
|
112
|
+
await FileSystem.deleteAsync(finalUri, {
|
|
113
|
+
idempotent: true
|
|
114
|
+
}).catch(() => {});
|
|
115
|
+
await FileSystem.moveAsync({
|
|
116
|
+
from: part,
|
|
117
|
+
to: finalUri
|
|
118
|
+
});
|
|
119
|
+
return finalUri;
|
|
120
|
+
};
|
|
121
|
+
const promise = run().finally(() => {
|
|
122
|
+
inFlight.delete(finalUri);
|
|
123
|
+
});
|
|
124
|
+
inFlight.set(finalUri, {
|
|
125
|
+
promise,
|
|
126
|
+
listeners
|
|
127
|
+
});
|
|
128
|
+
return promise;
|
|
129
|
+
};
|
|
130
|
+
exports.downloadVideoToCache = downloadVideoToCache;
|
|
131
|
+
const __resetVideoCacheForTests = () => {
|
|
132
|
+
hostsWithoutStreaming.clear();
|
|
133
|
+
inFlight.clear();
|
|
134
|
+
};
|
|
135
|
+
exports.__resetVideoCacheForTests = __resetVideoCacheForTests;
|
|
136
|
+
//# sourceMappingURL=videoCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FileSystem","_interopRequireWildcard","require","_mimeToExtension","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","VIDEO_EXT_RE","hashString","value","hash","length","charCodeAt","toString","isRemoteUrl","url","test","exports","hostOf","exec","toLowerCase","withoutQuery","split","getVideoCacheUri","mimetype","cacheDirectory","fromUrl","filenameFromUrl","fromMime","getExtensionForMime","ext","hostsWithoutStreaming","Set","markStreamingUnsupported","host","add","isStreamingUnsupported","findCachedVideo","uri","info","getInfoAsync","exists","inFlight","Map","downloadVideoToCache","onProgress","Promise","reject","Error","finalUri","running","listeners","promise","run","part","deleteAsync","idempotent","catch","task","createDownloadResumable","p","totalBytesExpectedToWrite","fraction","Math","min","totalBytesWritten","forEach","listener","result","downloadAsync","status","moveAsync","from","to","finally","delete","__resetVideoCacheForTests","clear"],"sourceRoot":"../../../src","sources":["helpers/videoCache.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ const useChatSettingState = () => {
|
|
|
9
9
|
const user = (0, _reactRedux.useSelector)(state => state.chatSettingStore.user);
|
|
10
10
|
const activeFile = (0, _reactRedux.useSelector)(state => state.chatSettingStore.activeFile);
|
|
11
11
|
const activeModal = (0, _reactRedux.useSelector)(state => state.chatSettingStore.activeModal);
|
|
12
|
+
const uiLocale = (0, _reactRedux.useSelector)(state => state.chatSettingStore.uiLocale);
|
|
12
13
|
const config = (0, _reactRedux.useSelector)(state => state.chatSettingStore.config);
|
|
13
14
|
const deleteModal = (0, _reactRedux.useSelector)(state => state.chatSettingStore.deleteModal);
|
|
14
15
|
const selectedUser = (0, _reactRedux.useSelector)(state => state.chatSettingStore.selectedUser);
|
|
@@ -16,6 +17,7 @@ const useChatSettingState = () => {
|
|
|
16
17
|
const client = (0, _reactRedux.useSelector)(state => state.chatSettingStore.client);
|
|
17
18
|
const translateMode = (0, _reactRedux.useSelector)(state => state.chatSettingStore.translateMode);
|
|
18
19
|
return {
|
|
20
|
+
uiLocale,
|
|
19
21
|
user,
|
|
20
22
|
activeFile,
|
|
21
23
|
activeModal,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactRedux","require","useChatSettingState","user","useSelector","state","chatSettingStore","activeFile","activeModal","config","deleteModal","selectedUser","langSource","client","translateMode","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatSettingState.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACH,IAAI,CAAC;EAC3E,MAAMI,UAAU,GAAG,IAAAH,uBAAW,EAC3BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACC,UAC/C,CAAC;EACD,MAAMC,WAAW,GAAG,IAAAJ,uBAAW,EAC5BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACE,WAC/C,CAAC;EACD,MAAMC,
|
|
1
|
+
{"version":3,"names":["_reactRedux","require","useChatSettingState","user","useSelector","state","chatSettingStore","activeFile","activeModal","uiLocale","config","deleteModal","selectedUser","langSource","client","translateMode","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatSettingState.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACH,IAAI,CAAC;EAC3E,MAAMI,UAAU,GAAG,IAAAH,uBAAW,EAC3BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACC,UAC/C,CAAC;EACD,MAAMC,WAAW,GAAG,IAAAJ,uBAAW,EAC5BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACE,WAC/C,CAAC;EACD,MAAMC,QAAQ,GAAG,IAAAL,uBAAW,EACzBC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACG,QAC/C,CAAC;EACD,MAAMC,MAAM,GAAG,IAAAN,uBAAW,EACvBC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACI,MAC/C,CAAC;EACD,MAAMC,WAAW,GAAG,IAAAP,uBAAW,EAC5BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACK,WAC/C,CAAC;EACD,MAAMC,YAAY,GAAG,IAAAR,uBAAW,EAC7BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACM,YAC/C,CAAC;EACD,MAAMC,UAAU,GAAG,IAAAT,uBAAW,EAC3BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACO,UAC/C,CAAC;EACD,MAAMC,MAAM,GAAG,IAAAV,uBAAW,EACvBC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACQ,MAC/C,CAAC;EACD,MAAMC,aAAa,GAAG,IAAAX,uBAAW,EAC9BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACS,aAC/C,CAAC;EAED,OAAO;IACLN,QAAQ;IACRN,IAAI;IACJI,UAAU;IACVC,WAAW;IACXE,MAAM;IACNC,WAAW;IACXC,YAAY;IACZC,UAAU;IACVE,aAAa;IACbD;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAd,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -13,6 +13,7 @@ var _initRoomsPresence = require("../helpers/initRoomsPresence");
|
|
|
13
13
|
var _updateMessagesTillLast = require("../helpers/updateMessagesTillLast");
|
|
14
14
|
var _authRefresh = require("../networking/authRefresh");
|
|
15
15
|
var _chatSettingsSlice = require("../roomStore/chatSettingsSlice");
|
|
16
|
+
var _languageSettings = require("../services/languageSettings");
|
|
16
17
|
var _roomsSlice = require("../roomStore/roomsSlice");
|
|
17
18
|
var _useRoomState = require("./useRoomState");
|
|
18
19
|
var _useChatSettingState = require("./useChatSettingState");
|
|
@@ -101,6 +102,9 @@ const useChatWrapperInit = ({
|
|
|
101
102
|
dispatch((0, _chatSettingsSlice.setLangSource)(legacyLangSource));
|
|
102
103
|
}
|
|
103
104
|
dispatch((0, _chatSettingsSlice.setConfig)(config));
|
|
105
|
+
// The profile's languages are the account's truth, over what the
|
|
106
|
+
// device remembered.
|
|
107
|
+
(0, _languageSettings.applyProfileLanguages)(user, config);
|
|
104
108
|
try {
|
|
105
109
|
if (!user.xmppUsername) {
|
|
106
110
|
setShowModal(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactRedux","_resolveLangSource","_xmppProvider","_chatAutoEnterer","_initRoomsPresence","_updateMessagesTillLast","_authRefresh","_chatSettingsSlice","_roomsSlice","_useRoomState","_useChatSettingState","_isChatIdPresentInArray","_useGetNewArchRoom","_interopRequireDefault","_getRoomsWithRetry","_shallowEqual","e","__esModule","default","useChatWrapperInit","roomJID","wasAutoSelected","config","dispatch","useDispatch","inited","setInited","useState","showModal","setShowModal","isConnectionLost","setConnectionLost","isRetrying","setIsRetrying","hasSyncedHistoryRef","useRef","client","initializeClient","setClient","useXmppClient","syncRooms","useGetNewArchRoom","rooms","useSelector","state","roomsList","useRoomState","user","useChatSettingState","useEffect","xmppPassword","console","log","close","lastSyncedConfigRef","undefined","shallowEqual","current","setConfig","getRoomsWithRertyRequest","retryRooms","getRoomsWithRetry","loadRooms","disableLoad","setIsLoading","loading","loadingText","retryTimeout","initXmmpClient","legacyLangSource","resolveLegacyTranslatesLangSource","translates","setLangSource","xmppUsername","error","chatAutoEnterer","newClient","defaultWallet","walletAddress","xmppSettings","status","Object","keys","length","initRoomsPresence","newArch","loadedRooms","enableRoomsRetry","enabled","isSelectedRoomPresent","isChatIdPresentInArray","getRoomsStanza","roomTimestampObject","getChatsPrivateStoreRequestStanza","updateMessagesTillLast","err","warn","refreshTokens","refreshAuthTokensQuietly","setTimeout","clearTimeout","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatWrapperInit.ts"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,kBAAA,GAAAF,OAAA;AAGA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AACA,IAAAM,uBAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,
|
|
1
|
+
{"version":3,"names":["_react","require","_reactRedux","_resolveLangSource","_xmppProvider","_chatAutoEnterer","_initRoomsPresence","_updateMessagesTillLast","_authRefresh","_chatSettingsSlice","_languageSettings","_roomsSlice","_useRoomState","_useChatSettingState","_isChatIdPresentInArray","_useGetNewArchRoom","_interopRequireDefault","_getRoomsWithRetry","_shallowEqual","e","__esModule","default","useChatWrapperInit","roomJID","wasAutoSelected","config","dispatch","useDispatch","inited","setInited","useState","showModal","setShowModal","isConnectionLost","setConnectionLost","isRetrying","setIsRetrying","hasSyncedHistoryRef","useRef","client","initializeClient","setClient","useXmppClient","syncRooms","useGetNewArchRoom","rooms","useSelector","state","roomsList","useRoomState","user","useChatSettingState","useEffect","xmppPassword","console","log","close","lastSyncedConfigRef","undefined","shallowEqual","current","setConfig","getRoomsWithRertyRequest","retryRooms","getRoomsWithRetry","loadRooms","disableLoad","setIsLoading","loading","loadingText","retryTimeout","initXmmpClient","legacyLangSource","resolveLegacyTranslatesLangSource","translates","setLangSource","applyProfileLanguages","xmppUsername","error","chatAutoEnterer","newClient","defaultWallet","walletAddress","xmppSettings","status","Object","keys","length","initRoomsPresence","newArch","loadedRooms","enableRoomsRetry","enabled","isSelectedRoomPresent","isChatIdPresentInArray","getRoomsStanza","roomTimestampObject","getChatsPrivateStoreRequestStanza","updateMessagesTillLast","err","warn","refreshTokens","refreshAuthTokensQuietly","setTimeout","clearTimeout","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatWrapperInit.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,6 +18,7 @@ var _rooms = require("../networking/api-requests/rooms.api");
|
|
|
18
18
|
var _persistence = require("../roomStore/persistence");
|
|
19
19
|
var _secureUserStorage = require("../helpers/secureUserStorage");
|
|
20
20
|
var _getServerReadTimestamp = require("../helpers/getServerReadTimestamp");
|
|
21
|
+
var _e2ee = require("../e2ee");
|
|
21
22
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
22
23
|
// AsyncStorage keys the library writes but that aren't cleared by any
|
|
23
24
|
// slice reducer. Listed here so a single logout call wipes the full
|
|
@@ -103,6 +104,13 @@ const logoutService = exports.logoutService = {
|
|
|
103
104
|
} catch (e) {
|
|
104
105
|
console.warn('logoutService: push reset failed', e);
|
|
105
106
|
}
|
|
107
|
+
(0, _e2ee.stopOmemo)();
|
|
108
|
+
try {
|
|
109
|
+
const {
|
|
110
|
+
clearOpenedFiles
|
|
111
|
+
} = require('../e2ee/sealedFiles');
|
|
112
|
+
clearOpenedFiles();
|
|
113
|
+
} catch {}
|
|
106
114
|
|
|
107
115
|
// 3. REST: nuke the in-memory `/chats/my` cache so the next login
|
|
108
116
|
// doesn't read user A's rooms while user B is bootstrapping.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactRedux","require","_reactNative","_asyncStorage","_interopRequireDefault","_roomStore","_chatSettingsSlice","_roomsSlice","_react","_roomHeapSlice","_pushSubscriptionService","_pushRegistration","_rooms","_persistence","_secureUserStorage","_getServerReadTimestamp","e","__esModule","default","LIBRARY_STRAY_KEYS","logoutService","exports","performLogout","state","store","getState","client","chatSettingStore","rooms","visibleRoomJID","boundaryTs","getFlushBoundaryTs","roomHeapSlice","readBoundaries","undefined","flushLastViewedToPrivateStoreStanza","Promise","race","visibleRoomTs","onlyIfNoUnread","res","setTimeout","console","warn","DeviceEventEmitter","emit","releasePushRegistration","pushSubscriptionService","reset","clearRoomsRestCache","dispatch","setLogoutState","clearHeap","logout","clearPersistedState","AsyncStorage","multiRemove","secureUserStorage","remove","useLogout","useDispatch","useCallback","err"],"sourceRoot":"../../../src","sources":["hooks/useLogout.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,cAAA,GAAAR,OAAA;AACA,IAAAS,wBAAA,GAAAT,OAAA;AACA,IAAAU,iBAAA,GAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AACA,IAAAY,YAAA,GAAAZ,OAAA;AACA,IAAAa,kBAAA,GAAAb,OAAA;AACA,IAAAc,uBAAA,GAAAd,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactRedux","require","_reactNative","_asyncStorage","_interopRequireDefault","_roomStore","_chatSettingsSlice","_roomsSlice","_react","_roomHeapSlice","_pushSubscriptionService","_pushRegistration","_rooms","_persistence","_secureUserStorage","_getServerReadTimestamp","_e2ee","e","__esModule","default","LIBRARY_STRAY_KEYS","logoutService","exports","performLogout","state","store","getState","client","chatSettingStore","rooms","visibleRoomJID","boundaryTs","getFlushBoundaryTs","roomHeapSlice","readBoundaries","undefined","flushLastViewedToPrivateStoreStanza","Promise","race","visibleRoomTs","onlyIfNoUnread","res","setTimeout","console","warn","DeviceEventEmitter","emit","releasePushRegistration","pushSubscriptionService","reset","stopOmemo","clearOpenedFiles","clearRoomsRestCache","dispatch","setLogoutState","clearHeap","logout","clearPersistedState","AsyncStorage","multiRemove","secureUserStorage","remove","useLogout","useDispatch","useCallback","err"],"sourceRoot":"../../../src","sources":["hooks/useLogout.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,6 +16,8 @@ var _outboundQueue = require("../networking/outboundQueue");
|
|
|
16
16
|
var _roomStore = require("../roomStore");
|
|
17
17
|
var _clientRegistry = require("../utils/clientRegistry");
|
|
18
18
|
var _useEventHandlers = require("./useEventHandlers");
|
|
19
|
+
var _e2ee = require("../e2ee");
|
|
20
|
+
var _send = require("../e2ee/send");
|
|
19
21
|
// Watchdog: if a message stays "pending" (no server echo) for this
|
|
20
22
|
// long after the optimistic dispatch, mark it failed so the bubble
|
|
21
23
|
// flips out of the "sending..." state. Covers the silent-failure
|
|
@@ -83,6 +85,14 @@ const useSendMessage = _configOverride => {
|
|
|
83
85
|
} = (0, _useEventHandlers.useEventHandlers)(config);
|
|
84
86
|
const sendMessage = (0, _react.useCallback)(async (message, activeRoomJID, isReply, isChecked, mainMessage, existingId) => {
|
|
85
87
|
if (editAction?.isEdit) {
|
|
88
|
+
const edited = reduxStore.getState().rooms?.rooms?.[editAction.roomJid]?.messages?.find(m => m.id === editAction.messageId);
|
|
89
|
+
if (edited && !(0, _e2ee.canEditMessage)(edited)) {
|
|
90
|
+
console.warn('edit not sent: the message was encrypted');
|
|
91
|
+
dispatch((0, _roomsSlice.setEditAction)({
|
|
92
|
+
isEdit: false
|
|
93
|
+
}));
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
86
96
|
try {
|
|
87
97
|
client?.editMessageStanza(editAction.roomJid, editAction.messageId, message);
|
|
88
98
|
handleMessageEdited({
|
|
@@ -104,6 +114,10 @@ const useSendMessage = _configOverride => {
|
|
|
104
114
|
}));
|
|
105
115
|
return;
|
|
106
116
|
}
|
|
117
|
+
if (!(0, _e2ee.canSendToRoom)(activeRoomJID)) {
|
|
118
|
+
console.warn('message not sent: room is end-to-end encrypted');
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
107
121
|
|
|
108
122
|
// Critical-send hint to the QoS scheduler.
|
|
109
123
|
client?.onCriticalSend?.(activeRoomJID);
|
|
@@ -283,6 +297,10 @@ const useSendMessage = _configOverride => {
|
|
|
283
297
|
}
|
|
284
298
|
}, [editAction, client, user, langSource, dispatch, handleMessageSent, handleMessageEdited, handleMessageFailed, reduxStore]);
|
|
285
299
|
const sendMedia = (0, _react.useCallback)(async (data, type, activeRoomJID, isReply = false, isChecked = false, mainMessage = '', existingId) => {
|
|
300
|
+
if (!(0, _e2ee.canSendMediaToRoom)(activeRoomJID)) {
|
|
301
|
+
console.warn('media not sent: room is end-to-end encrypted');
|
|
302
|
+
return;
|
|
303
|
+
}
|
|
286
304
|
client?.onCriticalSend?.(activeRoomJID);
|
|
287
305
|
|
|
288
306
|
// Defensive 50 MB guard on every send path (SendInput blocks it at
|
|
@@ -412,20 +430,40 @@ const useSendMessage = _configOverride => {
|
|
|
412
430
|
type: data?.type || data?.mimeType || type || 'application/octet-stream',
|
|
413
431
|
name: data?.name || data?.fileName || `media_${Date.now()}`
|
|
414
432
|
};
|
|
433
|
+
let sealed;
|
|
415
434
|
const tryUpload = async () => {
|
|
435
|
+
if ((0, _send.shouldEncrypt)(activeRoomJID) && !sealed) {
|
|
436
|
+
const {
|
|
437
|
+
sealPickedFile
|
|
438
|
+
} = require('../e2ee/sealedFiles');
|
|
439
|
+
sealed = await sealPickedFile({
|
|
440
|
+
uri: fileBlob.uri,
|
|
441
|
+
name: fileBlob.name,
|
|
442
|
+
type: fileBlob.type,
|
|
443
|
+
size: typeof data?.size === 'number' ? data.size : undefined
|
|
444
|
+
});
|
|
445
|
+
}
|
|
446
|
+
const part = sealed ? {
|
|
447
|
+
uri: sealed.uri,
|
|
448
|
+
type: 'application/octet-stream',
|
|
449
|
+
name: sealed.name
|
|
450
|
+
} : fileBlob;
|
|
451
|
+
const options = {
|
|
452
|
+
clientEncrypted: !!sealed
|
|
453
|
+
};
|
|
416
454
|
const fd = new FormData();
|
|
417
|
-
fd.append('files',
|
|
455
|
+
fd.append('files', part);
|
|
418
456
|
try {
|
|
419
|
-
return await (0, _auth.uploadFileV2)(fd, activeRoomJID);
|
|
457
|
+
return await (0, _auth.uploadFileV2)(fd, activeRoomJID, options);
|
|
420
458
|
} catch (err) {
|
|
421
459
|
if (err?.response?.status === 500) {
|
|
422
460
|
console.warn('upload "files" field returned 500 — retrying with "file" (singular)', {
|
|
423
|
-
name:
|
|
424
|
-
type:
|
|
461
|
+
name: part.name,
|
|
462
|
+
type: part.type
|
|
425
463
|
});
|
|
426
464
|
const fd2 = new FormData();
|
|
427
|
-
fd2.append('file',
|
|
428
|
-
return await (0, _auth.uploadFileV2)(fd2, activeRoomJID);
|
|
465
|
+
fd2.append('file', part);
|
|
466
|
+
return await (0, _auth.uploadFileV2)(fd2, activeRoomJID, options);
|
|
429
467
|
}
|
|
430
468
|
throw err;
|
|
431
469
|
}
|
|
@@ -463,8 +501,25 @@ const useSendMessage = _configOverride => {
|
|
|
463
501
|
isReply,
|
|
464
502
|
mainMessage,
|
|
465
503
|
isPrivate: item?.isPrivate,
|
|
466
|
-
__v: item.__v
|
|
504
|
+
__v: item.__v,
|
|
505
|
+
e2eeKeys: sealed ? [sealed.keyMaterial] : undefined
|
|
467
506
|
};
|
|
507
|
+
if (sealed) {
|
|
508
|
+
try {
|
|
509
|
+
const {
|
|
510
|
+
rememberOpened
|
|
511
|
+
} = require('../e2ee/sealedFiles');
|
|
512
|
+
await rememberOpened(item.location, {
|
|
513
|
+
uri: fileBlob.uri,
|
|
514
|
+
name: fileBlob.name,
|
|
515
|
+
type: fileBlob.type,
|
|
516
|
+
size: typeof data?.size === 'number' ? data.size : undefined
|
|
517
|
+
});
|
|
518
|
+
} catch (err) {
|
|
519
|
+
console.warn('could not keep the sent attachment', err);
|
|
520
|
+
}
|
|
521
|
+
sealed.dispose();
|
|
522
|
+
}
|
|
468
523
|
// Stanza id == placeholder id so the MUC echo's outer
|
|
469
524
|
// <message id="..."> matches xmppId on the placeholder and
|
|
470
525
|
// insertMessageWithDelimiter merges in place + flips pending.
|
|
@@ -514,6 +569,7 @@ const useSendMessage = _configOverride => {
|
|
|
514
569
|
// Upload (or stanza send) threw an explicit error. Clear the
|
|
515
570
|
// watchdog so it doesn't double-fire `markMessageFailed`.
|
|
516
571
|
clearTimeout(mediaWatchdog);
|
|
572
|
+
sealed?.dispose();
|
|
517
573
|
// Surface the real server payload so we can see why the upload
|
|
518
574
|
// was rejected (axios collapses the message to "Request failed
|
|
519
575
|
// with status code N"; the actual reason lives in
|
|
@@ -599,6 +655,14 @@ const useSendMessage = _configOverride => {
|
|
|
599
655
|
if (!editAction?.isEdit || !editAction.roomJid || !editAction.messageId) {
|
|
600
656
|
return;
|
|
601
657
|
}
|
|
658
|
+
const edited = reduxStore.getState().rooms?.rooms?.[editAction.roomJid]?.messages?.find(m => m.id === editAction.messageId);
|
|
659
|
+
if (edited && !(0, _e2ee.canEditMessage)(edited)) {
|
|
660
|
+
console.warn('edit not sent: the message was encrypted');
|
|
661
|
+
dispatch((0, _roomsSlice.setEditAction)({
|
|
662
|
+
isEdit: false
|
|
663
|
+
}));
|
|
664
|
+
return;
|
|
665
|
+
}
|
|
602
666
|
try {
|
|
603
667
|
client?.editMessageStanza(editAction.roomJid, editAction.messageId, message);
|
|
604
668
|
handleMessageEdited({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","setEditAction","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","getGlobalXmppClient","status","console","warn","watchdogTimer","setTimeout","removeOutboundSend","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAKA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,cAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,iBAAA,GAAAX,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMY,mBAAmB,GAAG,MAAM;;AAElC;AACA;AACA;AACA;AACA;AACA,MAAMC,yBAAyB,GAAG,MAAM;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,WAAW,GAAG,CAAC;AACnB,MAAMC,YAAY,GAAIC,MAAc,IAClC,GAAGA,MAAM,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,IAAKJ,WAAW,GAAIA,WAAW,GAAG,CAAC,KAAM,CAAC,EAAG;;AAEtE;AACA;AACA;AACA,MAAMK,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI;AAEjC,MAAMC,cAAc,GAAIC,eAAyB,IAAK;EAC3D,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,2BAAa,EAAC,CAAC;EAClC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B;EACA;EACA;EACA,MAAMC,UAAU,GAAG,IAAAC,oBAAQ,EAAY,CAAC;;EAExC;EACA;EACA;EACA;EACA,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACH,IAAI,CAAC;EAC3E,MAAMI,MAAM,GAAG,IAAAH,uBAAW,EACvBC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACC,MAC/C,CAAC;EACD;EACA;EACA;EACA;EACA;EACA,MAAMC,UAAU,GAAG,IAAAJ,uBAAW,EAC3BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACE,UAC/C,CAAC;EACD,MAAMC,UAAU,GAAG,IAAAL,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACK,KAAK,CAACD,UAAU,CAAC;EAE5E,MAAM;IACJE,iBAAiB;IACjBC,mBAAmB;IACnBC,mBAAmB;IACnBC;EACF,CAAC,GAAG,IAAAC,kCAAgB,EAACR,MAAM,CAAC;EAE5B,MAAMS,WAAW,GAAG,IAAAC,kBAAW,EAC7B,OACEC,OAAe,EACfC,aAAqB,EACrBC,OAAiB,EACjBC,SAAmB,EACnBC,WAAoB,EAOpBC,UAAmB,KAChB;IACH,IAAId,UAAU,EAAEe,MAAM,EAAE;MACtB,IAAI;QACF3B,MAAM,EAAE4B,iBAAiB,CACvBhB,UAAU,CAACiB,OAAO,EAClBjB,UAAU,CAACkB,SAAS,EACpBT,OACF,CAAC;QACDL,mBAAmB,CAAC;UAClBc,SAAS,EAAElB,UAAU,CAACkB,SAAU;UAChCC,UAAU,EAAEV,OAAO;UACnBW,OAAO,EAAEpB,UAAU,CAACiB,OAAQ;UAC5BvB;QACF,CAAC,CAAC;MACJ,CAAC,CAAC,OAAO2B,KAAK,EAAE;QACdlB,mBAAmB,CAAC;UAClBM,OAAO;UACPW,OAAO,EAAEpB,UAAU,CAACiB,OAAQ;UAC5BI,KAAK,EAAEA,KAAc;UACrBC,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;MACAhC,QAAQ,CAAC,IAAAiC,yBAAa,EAAC;QAAER,MAAM,EAAE;MAAM,CAAC,CAAC,CAAC;MAC1C;IACF;;IAEA;IACA3B,MAAM,EAAEoC,cAAc,GAAGd,aAAa,CAAC;;IAEvC;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMe,YAAY,GAAGX,UAAU,IAAIjC,YAAY,CAAC,mBAAmB,CAAC;IACpE,MAAM6C,cAAc,GAAG,IAAI3C,IAAI,CAAC,CAAC,CAAC4C,WAAW,CAAC,CAAC;IAC/C,MAAMC,MAAM,GACTlC,IAAI,EAAUmC,YAAY,IAAKnC,IAAI,EAAUoC,aAAa,IAAI,EAAE;IACnE,MAAMC,iBAA2B,GAAG;MAClCC,EAAE,EAAEP,YAAY;MAChB;MACA;MACA;MACA;MACAQ,MAAM,EAAER,YAAY;MACpBS,IAAI,EAAEzB,OAAO;MACbQ,OAAO,EAAEP,aAAa;MACtByB,IAAI,EAAET,cAAc;MACpBU,OAAO,EAAE,IAAI;MACbC,SAAS,EAAE,KAAK;MAChB;MACA;MACA;MACAtC,UAAU,EAAGA,UAAU,IAAY,IAAI;MACvC;MACA;MACA;MACA,IAAIY,OAAO,GACP;QACEA,OAAO,EAAE,MAAM;QACf2B,aAAa,EAAE1B,SAAS,GAAG,MAAM,GAAG,OAAO;QAC3CC;MACF,CAAC,GACD,CAAC,CAAC,CAAC;MACPnB,IAAI,EAAE;QACJ,GAAIA,IAAY;QAChBsC,EAAE,EAAEJ,MAAM;QACVW,IAAI,EAAE,GAAG7C,IAAI,EAAE8C,SAAS,IAAI,EAAE,IAAI9C,IAAI,EAAE+C,QAAQ,IAAI,EAAE,EAAE,CAACC,IAAI,CAAC,CAAC,IAAId;MACrE;IACF,CAAa;IACb;IACA;IACA;IACA;IACA,IAAI,CAAC9B,MAAM,EAAE6C,gBAAgB,IAAI,CAAC7B,UAAU,EAAE;MAC5CxB,QAAQ,CACN,IAAAsD,0BAAc,EAAC;QAAExB,OAAO,EAAEV,aAAa;QAAED,OAAO,EAAEsB;MAAkB,CAAC,CACvE,CAAC;IACH;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA,IAAIc,gBAAgB,GAAG,KAAK;IAC5B,MAAMC,WAAW,GAAGA,CAAA,KAAM;MACxB,MAAMlD,KAAK,GAAGJ,UAAU,CAACuD,QAAQ,CAAC,CAAC;MACnC,MAAMC,QAAQ,GAAGpD,KAAK,CAACK,KAAK,EAAEA,KAAK,GAAGS,aAAa,CAAC,EAAEuC,QAAQ,IAAI,EAAE;MACpE,MAAMC,YAAY,GAAGF,QAAQ,CAACG,IAAI,CAC/BC,CAAM,IAAKA,CAAC,CAACpB,EAAE,KAAKP,YAAY,IAAI2B,CAAC,CAAChB,OACzC,CAAC;MACD,MAAMiB,aAAa,GAAGzD,KAAK,CAAC0D,aAAa,EAAEC,cAAc,GAAG9B,YAAY,CAAC;;MAEzE;MACA;MACA;MACA;MACA;MACA;MACA;MACA,MAAM+B,YAAY,GAAG,IAAAC,mCAAmB,EAAC,CAAC,EAAEC,MAAM,KAAK,QAAQ;MAC/D,IAAIR,YAAY,IAAI,CAACG,aAAa,IAAI,CAACG,YAAY,IAAI,CAACX,gBAAgB,EAAE;QACxEA,gBAAgB,GAAG,IAAI;QACvBc,OAAO,CAACC,IAAI,CACV,mBAAmBnC,YAAY,mEACjC,CAAC;QACDoC,aAAa,GAAGC,UAAU,CAAChB,WAAW,EAAEpE,mBAAmB,CAAC;QAC5D;MACF;MAEA,IAAIwE,YAAY,IAAI,CAACG,aAAa,EAAE;QAClCM,OAAO,CAACC,IAAI,CACV,iCAAiCnC,YAAY,oBAAoB/C,mBAAmB,oBACtF,CAAC;QACD;QACA;QACA;QACA;QACA;QACA;QACA,IAAAqF,iCAAkB,EAACtC,YAAY,CAAC;QAChCnC,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,MAAM;UACZjC,EAAE,EAAEP,YAAY;UAChBL,OAAO,EAAEV,aAAa;UACtBwB,IAAI,EAAEzB,OAAO;UACbE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;QACDV,mBAAmB,CAAC;UAClBM,OAAO;UACPW,OAAO,EAAEV,aAAa;UACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,iCAAiC,CAAC;UACnD5C,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;IACF,CAAC;IAED,IAAIuC,aAAa,GAAGC,UAAU,CAAChB,WAAW,EAAEpE,mBAAmB,CAAC;IAEhE,IAAI;MACF;MACA;MACA;MACA;MACA;MACA,MAAMyF,UAAU,GAAIC,CAAM,IACxBA,CAAC,CAACC,qCAAqC,CACrC3D,aAAa,EACbhB,IAAI,CAAC8C,SAAS,EACd9C,IAAI,CAAC+C,QAAQ,EACb,EAAE,EACF/C,IAAI,CAACoC,aAAa,EAClBrB,OAAO,EACP,EAAE,EACFE,OAAO,IAAI,KAAK,EAChBC,SAAS,IAAI,KAAK,EAClBC,WAAW,IAAI,EAAE,EAChBd,UAAU,IAAY,IAAI,EAC3B0B,YACF,CAAC;;MAEH;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA,IAAA6C,kCAAmB,EAAC;QAClB7C,YAAY;QACZL,OAAO,EAAEV,aAAa;QACtB6D,UAAU,EAAExF,IAAI,CAACC,GAAG,CAAC,CAAC;QACtBwF,IAAI,EAAEL;MACR,CAAC,CAAC;;MAEF;MACA;MACA;MACA;MACA,MAAMM,eAAoB,GAAG,CAC3BrF,MAAM,EACN,IAAAqE,mCAAmB,EAAC,CAAC,EACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM,CAC3C,CAAC+D,IAAI,CAAEiB,CAAM,IAAKA,CAAC,IAAIA,CAAC,CAACV,MAAM,KAAK,QAAQ,CAAC;MAE9C,IAAI,CAACe,eAAe,EAAE;QACpB;QACA;QACA,MAAME,SAAc,GAClBvF,MAAM,IACN,IAAAqE,mCAAmB,EAAC,CAAC,IACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM;QAC5C,IAAI;UACFuF,SAAS,EAAEC,cAAc,GAAG,CAAC;QAC/B,CAAC,CAAC,MAAM,CAAC;QACT;MACF;MAEAT,UAAU,CAACM,eAAe,CAAC;MAC3B,IAAI;QACFA,eAAe,CAACI,iBAAiB,GAAG,CAAC;MACvC,CAAC,CAAC,MAAM,CAAC;MACT,MAAM3E,iBAAiB,CAAC;QACtBO,OAAO;QACPW,OAAO,EAAEV,aAAa;QACtBhB,IAAI;QACJ4B,WAAW,EAAE;MACf,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOD,KAAK,EAAE;MACdyD,YAAY,CAACjB,aAAa,CAAC;MAC3B;MACA;MACA,IAAAE,iCAAkB,EAACtC,YAAY,CAAC;MAChCnC,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;QAChBC,IAAI,EAAE,MAAM;QACZjC,EAAE,EAAEP,YAAY;QAChBL,OAAO,EAAEV,aAAa;QACtBwB,IAAI,EAAEzB,OAAO;QACbE,OAAO;QACPC,SAAS;QACTC;MACF,CAAC,CACH,CAAC;MACDV,mBAAmB,CAAC;QAClBM,OAAO;QACPW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAACtB,UAAU,EAAEZ,MAAM,EAAEM,IAAI,EAAEK,UAAU,EAAET,QAAQ,EAAEY,iBAAiB,EAAEE,mBAAmB,EAAED,mBAAmB,EAAEX,UAAU,CAC1H,CAAC;EAED,MAAMuF,SAAS,GAAG,IAAAvE,kBAAW,EAC3B,OACEwE,IAAS,EACTC,IAAY,EACZvE,aAAqB,EACrBC,OAAgB,GAAG,KAAK,EACxBC,SAAkB,GAAG,KAAK,EAC1BC,WAAmB,GAAG,EAAE,EACxBC,UAAmB,KAChB;IACH1B,MAAM,EAAEoC,cAAc,GAAGd,aAAa,CAAC;;IAEvC;IACA;IACA,IAAI,OAAOsE,IAAI,EAAEE,IAAI,KAAK,QAAQ,IAAIF,IAAI,CAACE,IAAI,GAAGjG,eAAe,EAAE;MACjE0E,OAAO,CAACC,IAAI,CAAC,wCAAwC,EAAE;QACrDrB,IAAI,EAAEyC,IAAI,EAAEzC,IAAI;QAChB2C,IAAI,EAAEF,IAAI,EAAEE;MACd,CAAC,CAAC;MACF,IAAIpE,UAAU,EAAE;QACdxB,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,OAAO;UACbjC,EAAE,EAAElB,UAAU;UACdM,OAAO,EAAEV,aAAa;UACtBsE,IAAI;UACJC,IAAI;UACJtE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;MACH;MACAV,mBAAmB,CAAC;QAClBM,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,qCAAqC,CAAC;QACvD5C,WAAW,EAAE;MACf,CAAC,CAAC;MACF;IACF;IAEA,MAAMU,EAAE,GAAGlB,UAAU,IAAI,sBAAsB,IAAAqE,QAAM,EAAC,CAAC,EAAE;IACzD,MAAMC,mBAAmB,GAAGrG,IAAI,CAACC,GAAG,CAAC,CAAC;IACtC,MAAM0C,cAAc,GAAG,IAAI3C,IAAI,CAACqG,mBAAmB,CAAC,CAACzD,WAAW,CAAC,CAAC;IAClE,MAAMC,MAAM,GACTlC,IAAI,EAAUmC,YAAY,IAAKnC,IAAI,EAAUoC,aAAa,IAAI,EAAE;IACnE,MAAMuD,WAAW,GACf,GAAG3F,IAAI,EAAE8C,SAAS,IAAI,EAAE,IAAI9C,IAAI,EAAE+C,QAAQ,IAAI,EAAE,EAAE,CAACC,IAAI,CAAC,CAAC,IAAId,MAAM;IACrE,MAAM0D,WAAW,GAAGN,IAAI,EAAEE,IAAI,IAAI,IAAI,GAAGK,MAAM,CAACP,IAAI,CAACE,IAAI,CAAC,GAAG,EAAE;IAE/D,MAAMM,iBAAiB,GACrB,OAAOR,IAAI,EAAES,GAAG,KAAK,QAAQ,GACzBT,IAAI,CAACS,GAAG,CAACC,OAAO,CAAC,sBAAsB,EAAE,SAAS,CAAC,GACnD,EAAE;IAER,IAAI,CAAC5F,MAAM,EAAE6C,gBAAgB,IAAI,CAAC7B,UAAU,EAAE;MAC5CxB,QAAQ,CACN,IAAAsD,0BAAc,EAAC;QACbxB,OAAO,EAAEV,aAAa;QACtBD,OAAO,EAAE;UACPuB,EAAE,EAAEA,EAAE;UACNE,IAAI,EAAE,OAAO;UACbjB,OAAO,EAAEP,aAAa;UACtByB,IAAI,EAAET,cAAc;UACpBiE,kBAAkB,EAAEP,mBAAmB;UACvC1F,IAAI,EAAE;YACJ,GAAIA,IAAY;YAChBsC,EAAE,EAAEJ,MAAM;YACVW,IAAI,EAAE8C;UACR,CAAC;UACDjD,OAAO,EAAE,IAAI;UACbC,SAAS,EAAE,KAAK;UAChBJ,MAAM,EAAED,EAAE;UACV4D,QAAQ,EAAE,GAAGlF,aAAa,IAAIkB,MAAM,EAAE;UACtCiE,eAAe,EAAE,OAAO;UACxBC,WAAW,EAAE,MAAM;UACnBC,QAAQ,EAAEf,IAAI,EAAEzC,IAAI;UACpByD,QAAQ,EAAER,iBAAiB;UAC3BS,eAAe,EAAET,iBAAiB;UAClCU,QAAQ,EAAEjB,IAAI;UACdkB,YAAY,EAAEnB,IAAI,EAAEzC,IAAI;UACxB2C,IAAI,EAAEI,WAAW;UACjB3E,OAAO,EAAEA,OAAO,GAAG,MAAM,GAAG,OAAO;UACnC2B,aAAa,EAAE,GAAG1B,SAAS,EAAE;UAC7BC;QACF;MACF,CAAC,CACH,CAAC;MACDvB,QAAQ,CACN,IAAA8G,+BAAgB,EAAC;QACfpE,EAAE,EAAEA,EAAE;QACNtC,IAAI,EAAE;UACJ,GAAIA,IAAY;UAChBsC,EAAE,EAAEJ,MAAM;UACVW,IAAI,EAAE8C;QACR,CAAC;QACDlD,IAAI,EAAET,cAAc;QACpBiE,kBAAkB,EAAEP,mBAAmB;QACvClD,IAAI,EAAE,OAAO;QACbjB,OAAO,EAAEP,aAAa;QACtBkF,QAAQ,EAAE,GAAGlF,aAAa,IAAIkB,MAAM,EAAE;QACtCjB,OAAO;QACP2B,aAAa,EAAE,GAAG1B,SAAS,EAAS;QACpCC;MACF,CAAoB,CACtB,CAAC;IACH;;IAEA;IACA;IACA;IACA;IACA,MAAMwF,aAAa,GAAGvC,UAAU,CAAC,MAAM;MACrC,MAAMlE,KAAK,GAAGJ,UAAU,CAACuD,QAAQ,CAAC,CAAC;MACnC,MAAMC,QAAQ,GAAGpD,KAAK,CAACK,KAAK,EAAEA,KAAK,GAAGS,aAAa,CAAC,EAAEuC,QAAQ,IAAI,EAAE;MACpE,MAAMC,YAAY,GAAGF,QAAQ,CAACG,IAAI,CAC/BC,CAAM,IAAKA,CAAC,CAACpB,EAAE,KAAKA,EAAE,IAAIoB,CAAC,CAAChB,OAC/B,CAAC;MACD,MAAMiB,aAAa,GAAGzD,KAAK,CAAC0D,aAAa,EAAEC,cAAc,GAAGvB,EAAE,CAAC;MAC/D,IAAIkB,YAAY,IAAI,CAACG,aAAa,EAAE;QAClCM,OAAO,CAACC,IAAI,CACV,+BAA+B5B,EAAE,oBAAoBtD,mBAAmB,oBAC1E,CAAC;QACD;QACA;QACA;QACA,IAAAqF,iCAAkB,EAAC/B,EAAE,CAAC;QACtB1C,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,OAAO;UACbjC,EAAE;UACFZ,OAAO,EAAEV,aAAa;UACtBsE,IAAI;UACJC,IAAI;UACJtE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;QACDV,mBAAmB,CAAC;UAClBM,OAAO,EAAE,OAAO;UAChBW,OAAO,EAAEV,aAAa;UACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,uCAAuC,CAAC;UACzD5C,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;IACF,CAAC,EAAE3C,yBAAyB,CAAC;;IAE7B;IACA;IACA;IACA;IACA;IACA,MAAM2H,QAAQ,GAAG;MACfb,GAAG,EAAED,iBAAiB,IAAIR,IAAI,EAAES,GAAG;MACnCR,IAAI,EACFD,IAAI,EAAEC,IAAI,IACVD,IAAI,EAAEuB,QAAQ,IACdtB,IAAI,IACJ,0BAA0B;MAC5B1C,IAAI,EAAEyC,IAAI,EAAEzC,IAAI,IAAIyC,IAAI,EAAEe,QAAQ,IAAI,SAAShH,IAAI,CAACC,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,MAAMwH,SAAS,GAAG,MAAAA,CAAA,KAAY;MAC5B,MAAMC,EAAE,GAAG,IAAIC,QAAQ,CAAC,CAAC;MACzBD,EAAE,CAACE,MAAM,CAAC,OAAO,EAAEL,QAAe,CAAC;MACnC,IAAI;QACF,OAAO,MAAM,IAAAM,kBAAY,EAACH,EAAE,EAAE/F,aAAa,CAAC;MAC9C,CAAC,CAAC,OAAOmG,GAAQ,EAAE;QACjB,IAAIA,GAAG,EAAEC,QAAQ,EAAEpD,MAAM,KAAK,GAAG,EAAE;UACjCC,OAAO,CAACC,IAAI,CACV,qEAAqE,EACrE;YAAErB,IAAI,EAAE+D,QAAQ,CAAC/D,IAAI;YAAE0C,IAAI,EAAEqB,QAAQ,CAACrB;UAAK,CAC7C,CAAC;UACD,MAAM8B,GAAG,GAAG,IAAIL,QAAQ,CAAC,CAAC;UAC1BK,GAAG,CAACJ,MAAM,CAAC,MAAM,EAAEL,QAAe,CAAC;UACnC,OAAO,MAAM,IAAAM,kBAAY,EAACG,GAAG,EAAErG,aAAa,CAAC;QAC/C;QACA,MAAMmG,GAAG;MACX;IACF,CAAC;IAED,IAAI;MACF,MAAMC,QAAQ,GAAG,MAAMN,SAAS,CAAC,CAAC;MAClC;MACA;MACA;MACA;MACA;;MAEA,KAAK,MAAMQ,IAAI,IAAIF,QAAQ,CAAC9B,IAAI,CAACiC,OAAO,EAAE;QACxC,MAAMC,cAAc,GAAG;UACrB1E,SAAS,EAAE9C,IAAI,CAAC8C,SAAS;UACzBC,QAAQ,EAAE/C,IAAI,CAAC+C,QAAQ;UACvBX,aAAa,EAAEpC,IAAI,CAACoC,aAAa;UACjCqF,SAAS,EAAEH,IAAI,CAACG,SAAS;UACzBC,SAAS,EAAEJ,IAAI,CAACI,SAAS;UACzBrB,QAAQ,EAAEiB,IAAI,CAACK,QAAQ;UACvBC,SAAS,EAAEN,IAAI,EAAEM,SAAS;UAC1BtB,QAAQ,EAAEgB,IAAI,CAAChB,QAAQ;UACvBC,eAAe,EAAEe,IAAI,CAACf,eAAe;UACrCC,QAAQ,EAAEc,IAAI,CAACd,QAAQ;UACvBC,YAAY,EAAEa,IAAI,EAAEO,YAAY;UAChCC,QAAQ,EAAER,IAAI,EAAEQ,QAAQ;UACxBtC,IAAI,EAAE8B,IAAI,CAAC9B,IAAI;UACfuC,QAAQ,EAAET,IAAI,EAAES,QAAQ;UACxBC,SAAS,EAAEV,IAAI,EAAEU,SAAS;UAC1BC,MAAM,EAAEX,IAAI,EAAEW,MAAM;UACpBC,YAAY,EAAEZ,IAAI,EAAEa,GAAG;UACvBC,SAAS,EAAE,IAAI;UACf7G,OAAO,EAAEP,aAAa;UACtB4B,aAAa,EAAE1B,SAAS;UACxBD,OAAO;UACPE,WAAW;UACXkH,SAAS,EAAEf,IAAI,EAAEe,SAAS;UAC1BC,GAAG,EAAEhB,IAAI,CAACgB;QACZ,CAAC;QACD;QACA;QACA;QACA;QACA;QACA;QACA,MAAMC,oBAAyB,GAAG,CAChC7I,MAAM,EACN,IAAAqE,mCAAmB,EAAC,CAAC,EACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM,CAC3C,CAAC+D,IAAI,CAAEiB,CAAM,IAAKA,CAAC,IAAIA,CAAC,CAACV,MAAM,KAAK,QAAQ,CAAC;QAC9C,IAAIuE,oBAAoB,EAAE;UACxBA,oBAAoB,CAACC,gBAAgB,GAAGxH,aAAa,CAAC;UACtD,MAAMyH,OAAO,CAACC,OAAO,CACnBH,oBAAoB,CAACI,sBAAsB,GAAG3H,aAAa,CAC7D,CAAC,CAAC4H,KAAK,CAAC,MAAM,KAAK,CAAC;UACpBL,oBAAoB,CAACM,sBAAsB,CACzC7H,aAAa,EACbwG,cAAc,EACdlF,EACF,CAAC;UACD,IAAI;YACFiG,oBAAoB,CAACpD,iBAAiB,GAAG,CAAC;UAC5C,CAAC,CAAC,MAAM,CAAC;QACX,CAAC,MAAM;UACL,MAAM2D,cAAmB,GACvBpJ,MAAM,IACN,IAAAqE,mCAAmB,EAAC,CAAC,IACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM;UAC5C,IAAI;YACFoJ,cAAc,EAAE5D,cAAc,GAAG,CAAC;UACpC,CAAC,CAAC,MAAM,CAAC;UACT,IAAAN,kCAAmB,EAAC;YAClB7C,YAAY,EAAEO,EAAE;YAChBZ,OAAO,EAAEV,aAAa;YACtB6D,UAAU,EAAExF,IAAI,CAACC,GAAG,CAAC,CAAC;YACtB;YACA;YACAyJ,KAAK,EAAE9J,yBAAyB;YAChC6F,IAAI,EAAGJ,CAAC,IACNA,CAAC,CAACmE,sBAAsB,CAAC7H,aAAa,EAAEwG,cAAc,EAAElF,EAAE;UAC9D,CAAC,CAAC;QACJ;MACF;MAEA,MAAM9B,iBAAiB,CAAC;QACtBO,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBhB,IAAI;QACJ4B,WAAW,EAAE,OAAO;QACpBoH,QAAQ,EAAE;UACR/H,OAAO;UACPC,SAAS;UACTC,WAAW;UACX8H,QAAQ,EAAE3D,IAAI;UACd4D,QAAQ,EAAE3D,IAAI;UACd/D,SAAS,EAAEc,EAAE;UACb6G,aAAa,EAAE/B,QAAQ,CAAC9B,IAAI,CAACiC;QAC/B;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAO5F,KAAU,EAAE;MACnB;MACA;MACAyD,YAAY,CAACuB,aAAa,CAAC;MAC3B;MACA;MACA;MACA;MACA,MAAMyC,MAAM,GAAG,OAAO9D,IAAI,EAAES,GAAG,KAAK,QAAQ,GAAGT,IAAI,CAACS,GAAG,GAAG,EAAE;MAC5D,MAAMsD,SAAS,GAAGD,MAAM,CAACE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS;MAC/DrF,OAAO,CAACtC,KAAK,CAAC,eAAe,EAAE;QAC7BqC,MAAM,EAAErC,KAAK,EAAEyF,QAAQ,EAAEpD,MAAM;QAC/BuF,UAAU,EAAE5H,KAAK,EAAEyF,QAAQ,EAAEmC,UAAU;QACvCC,UAAU,EAAE7H,KAAK,EAAEyF,QAAQ,EAAE9B,IAAI;QACjCmE,UAAU,EAAE9H,KAAK,EAAEvB,MAAM,EAAEsJ,GAAG;QAC9BC,YAAY,EAAEhI,KAAK,EAAEZ,OAAO;QAC5B6I,SAAS,EAAEjI,KAAK,EAAEkI,IAAI;QACtBC,iBAAiB,EAAEnI,KAAK,EAAEoI,KAAK,EAAEhJ,OAAO;QACxCgF,GAAG,EAAEqD,MAAM;QACXC,SAAS;QACTW,IAAI,EAAEpD,QAAQ,CAACrB,IAAI;QACnB0E,aAAa,EAAE3E,IAAI,EAAEE,IAAI,IAAI,IAAI;QACjCa,QAAQ,EAAEO,QAAQ,CAAC/D,IAAI;QACvBqH,UAAU,EAAEC,qBAAQ,CAACC,EAAE;QACvBC,eAAe,EAAEF,qBAAQ,CAACG;MAC5B,CAAC,CAAC;MACF1K,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;QAChBC,IAAI,EAAE,OAAO;QACbjC,EAAE;QACFZ,OAAO,EAAEV,aAAa;QACtBsE,IAAI;QACJC,IAAI;QACJtE,OAAO;QACPC,SAAS;QACTC;MACF,CAAC,CACH,CAAC;MACDV,mBAAmB,CAAC;QAClBM,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAAClC,MAAM,EAAEU,MAAM,EAAEJ,IAAI,EAAEJ,QAAQ,EAAEY,iBAAiB,EAAEC,mBAAmB,EAAEX,UAAU,CACrF,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMyK,YAAY,GAAG,IAAAzJ,kBAAW,EAC9B,MAAO0J,QAAgB,IAAK;IAC1B,MAAMC,OAAO,GACX3K,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAACO,aAAa,EAAEC,cAAc,GAAG2G,QAAQ,CAAC;IACjE,IAAI,CAACC,OAAO,EAAE;MAAC;IAAO;;IAEtB;IACA;IACA;IACA;IACA;IACA,MAAMnH,QAAQ,GACZxD,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAAC9C,KAAK,EAAEA,KAAK,GAAGkK,OAAO,CAAC/I,OAAO,CAAC,EAAE6B,QAAQ,IAAI,EAAE;IACvE,MAAMmH,gBAAgB,GAAGpH,QAAQ,CAACqH,IAAI,CACnCjH,CAAM,IACL,CAACA,CAAC,CAAChB,OAAO,KAAKgB,CAAC,CAACpB,EAAE,KAAKkI,QAAQ,IAAI9G,CAAC,CAACnB,MAAM,KAAKiI,QAAQ,CAC7D,CAAC;IACD,IAAIE,gBAAgB,EAAE;MACpB9K,QAAQ,CAAC,IAAAgL,kCAAmB,EAACJ,QAAQ,CAAC,CAAC;MACvC;IACF;IAEA5K,QAAQ,CAAC,IAAAgL,kCAAmB,EAACJ,QAAQ,CAAC,CAAC;IACvC7J,kBAAkB,CAAC;MACjBa,SAAS,EAAEgJ,QAAQ;MACnB9I,OAAO,EAAE+I,OAAO,CAAC/I,OAAO;MACxBE,WAAW,EAAE6I,OAAO,CAAClG;IACvB,CAAC,CAAC;IACF,IAAIkG,OAAO,CAAClG,IAAI,KAAK,MAAM,EAAE;MAC3B,MAAM1D,WAAW,CACf4J,OAAO,CAACjI,IAAI,EACZiI,OAAO,CAAC/I,OAAO,EACf+I,OAAO,CAACxJ,OAAO,EACfwJ,OAAO,CAACvJ,SAAS,EACjBuJ,OAAO,CAACtJ,WAAW;MACnB;MACA;MACAqJ,QACF,CAAC;IACH,CAAC,MAAM;MACL,MAAMnF,SAAS,CACboF,OAAO,CAACnF,IAAI,EACZmF,OAAO,CAAClF,IAAI,EACZkF,OAAO,CAAC/I,OAAO,EACf+I,OAAO,CAACxJ,OAAO,EACfwJ,OAAO,CAACvJ,SAAS,EACjBuJ,OAAO,CAACtJ,WAAW,EACnBqJ,QACF,CAAC;IACH;EACF,CAAC,EACD,CAAC1K,UAAU,EAAEF,QAAQ,EAAEe,kBAAkB,EAAEE,WAAW,EAAEwE,SAAS,CACnE,CAAC;;EAED;EACA;EACA;EACA,MAAMwF,eAAe,GAAG,IAAA/J,kBAAW,EACjC,OAAOC,OAAe,EAAE+J,cAAuB,KAAK;IAClD,IAAI,CAACxK,UAAU,EAAEe,MAAM,IAAI,CAACf,UAAU,CAACiB,OAAO,IAAI,CAACjB,UAAU,CAACkB,SAAS,EAAE;MACvE;IACF;IACA,IAAI;MACF9B,MAAM,EAAE4B,iBAAiB,CACvBhB,UAAU,CAACiB,OAAO,EAClBjB,UAAU,CAACkB,SAAS,EACpBT,OACF,CAAC;MACDL,mBAAmB,CAAC;QAClBc,SAAS,EAAElB,UAAU,CAACkB,SAAS;QAC/BC,UAAU,EAAEV,OAAO;QACnBW,OAAO,EAAEpB,UAAU,CAACiB,OAAO;QAC3BvB;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAO2B,KAAK,EAAE;MACdlB,mBAAmB,CAAC;QAClBM,OAAO;QACPW,OAAO,EAAEpB,UAAU,CAACiB,OAAO;QAC3BI,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;IACAhC,QAAQ,CAAC,IAAAiC,yBAAa,EAAC;MAAER,MAAM,EAAE;IAAM,CAAC,CAAC,CAAC;EAC5C,CAAC,EACD,CAAC3B,MAAM,EAAEY,UAAU,EAAEN,IAAI,EAAEJ,QAAQ,EAAEc,mBAAmB,EAAED,mBAAmB,CAC/E,CAAC;;EAED;EACA;EACA;EACA,MAAMsK,kCAAkC,GAAG,IAAAjK,kBAAW,EACnDY,OAAe,IAAc;IAC5B,IAAI,CAACA,OAAO,EAAE;MAAC,OAAO,KAAK;IAAC;IAC5B,MAAMsJ,IAAI,GAAGlL,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAAC9C,KAAK,EAAEA,KAAK,GAAGmB,OAAO,CAAC,EAAE6B,QAAQ;IACpE,IAAI,CAACyH,IAAI,IAAIA,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;MAAC,OAAO,KAAK;IAAC;IAC9C,MAAMC,IAAI,GAAGF,IAAI,CAACA,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;IAClC,IAAI,CAACC,IAAI,EAAExI,OAAO,EAAE;MAAC,OAAO,KAAK;IAAC;IAClC,MAAMR,MAAM,GAAGlC,IAAI,EAAEmC,YAAY,IAAInC,IAAI,EAAEoC,aAAa;IACxD,IAAI,CAACF,MAAM,EAAE;MAAC,OAAO,KAAK;IAAC;IAC3B,OAAOgJ,IAAI,CAAClL,IAAI,EAAEsC,EAAE,KAAKJ,MAAM;EACjC,CAAC,EACD,CAACpC,UAAU,EAAEE,IAAI,EAAEmC,YAAY,EAAEnC,IAAI,EAAEoC,aAAa,CACtD,CAAC;EAED,OAAO;IACLvB,WAAW;IACXwE,SAAS;IACTwF,eAAe;IACfN,YAAY;IACZQ;EACF,CAAC;AACH,CAAC;AAACI,OAAA,CAAA3L,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","_e2ee","_send","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","edited","getState","roomJid","messages","find","m","id","messageId","canEditMessage","console","warn","setEditAction","editMessageStanza","newMessage","roomJID","error","messageType","canSendToRoom","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","roomMsgs","stillPending","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","getGlobalXmppClient","status","watchdogTimer","setTimeout","removeOutboundSend","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","canSendMediaToRoom","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","sealed","tryUpload","shouldEncrypt","sealPickedFile","undefined","part","options","clientEncrypted","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","e2eeKeys","keyMaterial","rememberOpened","dispose","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
|