@ethora/chat-component-rn 26.8.5 → 26.8.7
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 +26 -0
- package/README.md +95 -0
- package/lib/commonjs/assets/emojiData.js +40 -0
- package/lib/commonjs/assets/emojiData.js.map +1 -0
- package/lib/commonjs/assets/icons.js +5 -3
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js +35 -15
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +33 -24
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +22 -16
- 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/MessageContainer.js +4 -12
- package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageList.js +110 -35
- package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js +5 -0
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/RoomList.js +32 -29
- package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/RoomStack.js +133 -65
- package/lib/commonjs/components/MainComponents/RoomStack.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/MainComponents/SystemMessage.js +6 -2
- package/lib/commonjs/components/MainComponents/SystemMessage.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/Avatar.js +5 -1
- package/lib/commonjs/components/MessageBubble/Avatar.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js +18 -21
- package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js +447 -0
- package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
- package/lib/commonjs/components/MessageBubble/Message.js +264 -136
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js +215 -13
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageReaction.js +113 -94
- package/lib/commonjs/components/MessageBubble/MessageReaction.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageReply.js +66 -24
- package/lib/commonjs/components/MessageBubble/MessageReply.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +7 -4
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +159 -16
- 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/SwipeBackLayer.js +76 -44
- package/lib/commonjs/components/Modals/Modal/SwipeBackLayer.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +29 -6
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +5 -1
- package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +37 -13
- 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/LastMessageEmoji.js +8 -9
- package/lib/commonjs/components/RoomComponents/styled/LastMessageEmoji.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 +273 -152
- 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/DateLabel.js +6 -3
- package/lib/commonjs/components/styled/DateLabel.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/context/MessageNotificationContext.js +188 -9
- package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +22 -7
- package/lib/commonjs/context/xmppProvider.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/createMessageFromXml.js +19 -4
- package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
- package/lib/commonjs/helpers/createRoomFromApi.js +36 -2
- package/lib/commonjs/helpers/createRoomFromApi.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/emoji.js +51 -0
- package/lib/commonjs/helpers/emoji.js.map +1 -0
- package/lib/commonjs/helpers/haptics.js +29 -0
- package/lib/commonjs/helpers/haptics.js.map +1 -0
- package/lib/commonjs/helpers/historyPreloadScheduler.js +32 -66
- package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js +21 -12
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/commonjs/helpers/mamReactions.js +57 -0
- package/lib/commonjs/helpers/mamReactions.js.map +1 -0
- package/lib/commonjs/helpers/parseMessageReference.js +42 -0
- package/lib/commonjs/helpers/parseMessageReference.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/reactionsConfig.js +17 -0
- package/lib/commonjs/helpers/reactionsConfig.js.map +1 -0
- package/lib/commonjs/helpers/secureKeyValue.js +20 -0
- package/lib/commonjs/helpers/secureKeyValue.js.map +1 -1
- package/lib/commonjs/helpers/updateMessagesTillLast.js +17 -2
- package/lib/commonjs/helpers/updateMessagesTillLast.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/useHeapSender.js +3 -1
- package/lib/commonjs/hooks/useHeapSender.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/useMessageHeapState.js +3 -2
- package/lib/commonjs/hooks/useMessageHeapState.js.map +1 -1
- package/lib/commonjs/hooks/useRoomInitialization.js +16 -7
- package/lib/commonjs/hooks/useRoomInitialization.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +85 -15
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js +1 -1
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
- package/lib/commonjs/i18n/strings.js +180 -0
- package/lib/commonjs/i18n/strings.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/stanzaHandlers.js +106 -50
- package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
- package/lib/commonjs/networking/xmpp/getHistory.xmpp.js +29 -74
- package/lib/commonjs/networking/xmpp/getHistory.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +44 -0
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/mamRouter.js +186 -0
- package/lib/commonjs/networking/xmpp/mamRouter.js.map +1 -0
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +41 -4
- package/lib/commonjs/networking/xmpp/presenceInRoom.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 +104 -23
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js +29 -34
- package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
- package/lib/commonjs/roomStore/Middleware/perfMiddleware.js +51 -0
- package/lib/commonjs/roomStore/Middleware/perfMiddleware.js.map +1 -0
- package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js +66 -43
- package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
- package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +88 -68
- package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
- package/lib/commonjs/roomStore/index.js +18 -14
- package/lib/commonjs/roomStore/index.js.map +1 -1
- package/lib/commonjs/roomStore/persistBackend.js +93 -0
- package/lib/commonjs/roomStore/persistBackend.js.map +1 -0
- package/lib/commonjs/roomStore/persistence.js +253 -51
- package/lib/commonjs/roomStore/persistence.js.map +1 -1
- package/lib/commonjs/roomStore/roomsSlice.js +282 -136
- package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
- package/lib/commonjs/theme/theme.js +3 -0
- package/lib/commonjs/theme/theme.js.map +1 -1
- package/lib/commonjs/utils/devLogger.js +14 -0
- package/lib/commonjs/utils/devLogger.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/assets/emojiData.js +36 -0
- package/lib/module/assets/emojiData.js.map +1 -0
- package/lib/module/assets/icons.js +4 -2
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/MainComponents/ChatHeader.js +37 -17
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +34 -25
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +23 -17
- 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/MessageContainer.js +7 -14
- package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/module/components/MainComponents/MessageList.js +110 -35
- package/lib/module/components/MainComponents/MessageList.js.map +1 -1
- package/lib/module/components/MainComponents/ReduxWrapper.js +5 -0
- package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/RoomList.js +32 -29
- package/lib/module/components/MainComponents/RoomList.js.map +1 -1
- package/lib/module/components/MainComponents/RoomStack.js +131 -63
- package/lib/module/components/MainComponents/RoomStack.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/MainComponents/SystemMessage.js +6 -2
- package/lib/module/components/MainComponents/SystemMessage.js.map +1 -1
- package/lib/module/components/MessageBubble/Avatar.js +5 -1
- package/lib/module/components/MessageBubble/Avatar.js.map +1 -1
- package/lib/module/components/MessageBubble/BottomReplyContainer.js +19 -22
- package/lib/module/components/MessageBubble/BottomReplyContainer.js.map +1 -1
- package/lib/module/components/MessageBubble/EmojiPickerSheet.js +438 -0
- package/lib/module/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
- package/lib/module/components/MessageBubble/Message.js +269 -140
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js +217 -15
- package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageReaction.js +115 -94
- package/lib/module/components/MessageBubble/MessageReaction.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageReply.js +65 -24
- package/lib/module/components/MessageBubble/MessageReply.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +7 -4
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +161 -18
- 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/SwipeBackLayer.js +76 -44
- package/lib/module/components/Modals/Modal/SwipeBackLayer.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +32 -8
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +4 -0
- package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js +37 -13
- 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/LastMessageEmoji.js +8 -9
- package/lib/module/components/RoomComponents/styled/LastMessageEmoji.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 +273 -153
- 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/DateLabel.js +6 -3
- package/lib/module/components/styled/DateLabel.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/context/MessageNotificationContext.js +190 -11
- package/lib/module/context/MessageNotificationContext.js.map +1 -1
- package/lib/module/context/xmppProvider.js +22 -7
- package/lib/module/context/xmppProvider.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/createMessageFromXml.js +19 -4
- package/lib/module/helpers/createMessageFromXml.js.map +1 -1
- package/lib/module/helpers/createRoomFromApi.js +36 -2
- package/lib/module/helpers/createRoomFromApi.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/emoji.js +44 -0
- package/lib/module/helpers/emoji.js.map +1 -0
- package/lib/module/helpers/haptics.js +24 -0
- package/lib/module/helpers/haptics.js.map +1 -0
- package/lib/module/helpers/historyPreloadScheduler.js +32 -66
- package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/module/helpers/insertMessageWithDelimiter.js +21 -12
- package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/module/helpers/mamReactions.js +51 -0
- package/lib/module/helpers/mamReactions.js.map +1 -0
- package/lib/module/helpers/parseMessageReference.js +37 -0
- package/lib/module/helpers/parseMessageReference.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/reactionsConfig.js +10 -0
- package/lib/module/helpers/reactionsConfig.js.map +1 -0
- package/lib/module/helpers/secureKeyValue.js +19 -0
- package/lib/module/helpers/secureKeyValue.js.map +1 -1
- package/lib/module/helpers/updateMessagesTillLast.js +17 -2
- package/lib/module/helpers/updateMessagesTillLast.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/useHeapSender.js +3 -1
- package/lib/module/hooks/useHeapSender.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/useMessageHeapState.js +3 -2
- package/lib/module/hooks/useMessageHeapState.js.map +1 -1
- package/lib/module/hooks/useRoomInitialization.js +17 -8
- package/lib/module/hooks/useRoomInitialization.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +85 -15
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/hooks/useUnreadMessagesCounter.js +1 -1
- package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
- package/lib/module/i18n/strings.js +180 -0
- package/lib/module/i18n/strings.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/stanzaHandlers.js +107 -51
- package/lib/module/networking/stanzaHandlers.js.map +1 -1
- package/lib/module/networking/xmpp/getHistory.xmpp.js +29 -74
- package/lib/module/networking/xmpp/getHistory.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js +42 -0
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/mamRouter.js +175 -0
- package/lib/module/networking/xmpp/mamRouter.js.map +1 -0
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +38 -2
- package/lib/module/networking/xmpp/presenceInRoom.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 +105 -24
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/Middleware/newMessageMidlleware.js +29 -34
- package/lib/module/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
- package/lib/module/roomStore/Middleware/perfMiddleware.js +45 -0
- package/lib/module/roomStore/Middleware/perfMiddleware.js.map +1 -0
- package/lib/module/roomStore/Middleware/reactionsMiddleware.js +66 -43
- package/lib/module/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
- package/lib/module/roomStore/Middleware/unreadMidlleware.js +89 -69
- package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
- package/lib/module/roomStore/index.js +19 -15
- package/lib/module/roomStore/index.js.map +1 -1
- package/lib/module/roomStore/persistBackend.js +86 -0
- package/lib/module/roomStore/persistBackend.js.map +1 -0
- package/lib/module/roomStore/persistence.js +253 -49
- package/lib/module/roomStore/persistence.js.map +1 -1
- package/lib/module/roomStore/roomsSlice.js +275 -134
- package/lib/module/roomStore/roomsSlice.js.map +1 -1
- package/lib/module/theme/theme.js +3 -0
- package/lib/module/theme/theme.js.map +1 -1
- package/lib/module/utils/devLogger.js +13 -0
- package/lib/module/utils/devLogger.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/assets/emojiData.d.ts +8 -0
- package/lib/typescript/assets/emojiData.d.ts.map +1 -0
- 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/MessageContainer.d.ts +2 -2
- package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/RoomStack.d.ts +7 -2
- package/lib/typescript/components/MainComponents/RoomStack.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/MainComponents/SystemMessage.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/Avatar.d.ts +2 -0
- package/lib/typescript/components/MessageBubble/Avatar.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/BottomReplyContainer.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts +11 -0
- package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts.map +1 -0
- package/lib/typescript/components/MessageBubble/Message.d.ts +2 -2
- package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +2 -0
- package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageReaction.d.ts +1 -0
- package/lib/typescript/components/MessageBubble/MessageReaction.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageReply.d.ts +7 -7
- package/lib/typescript/components/MessageBubble/MessageReply.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/SwipeBackLayer.d.ts +2 -1
- package/lib/typescript/components/Modals/Modal/SwipeBackLayer.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts +2 -2
- 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/LastMessageEmoji.d.ts +3 -6
- package/lib/typescript/components/RoomComponents/styled/LastMessageEmoji.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 +7 -1
- 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/DateLabel.d.ts +1 -0
- package/lib/typescript/components/styled/DateLabel.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/context/MessageNotificationContext.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.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/createMessageFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/createRoomFromApi.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/emoji.d.ts +6 -0
- package/lib/typescript/helpers/emoji.d.ts.map +1 -0
- package/lib/typescript/helpers/haptics.d.ts +3 -0
- package/lib/typescript/helpers/haptics.d.ts.map +1 -0
- package/lib/typescript/helpers/historyPreloadScheduler.d.ts +1 -0
- package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
- package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
- package/lib/typescript/helpers/mamReactions.d.ts +13 -0
- package/lib/typescript/helpers/mamReactions.d.ts.map +1 -0
- package/lib/typescript/helpers/parseMessageReference.d.ts +16 -0
- package/lib/typescript/helpers/parseMessageReference.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/reactionsConfig.d.ts +5 -0
- package/lib/typescript/helpers/reactionsConfig.d.ts.map +1 -0
- package/lib/typescript/helpers/secureKeyValue.d.ts +4 -0
- package/lib/typescript/helpers/secureKeyValue.d.ts.map +1 -1
- package/lib/typescript/helpers/updateMessagesTillLast.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/useHeapSender.d.ts.map +1 -1
- package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
- package/lib/typescript/hooks/useMessageHeapState.d.ts.map +1 -1
- package/lib/typescript/hooks/useRoomInitialization.d.ts +2 -2
- package/lib/typescript/hooks/useRoomInitialization.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/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/stanzaHandlers.d.ts +4 -2
- package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts +3 -1
- package/lib/typescript/networking/xmpp/getHistory.xmpp.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/mamRouter.d.ts +23 -0
- package/lib/typescript/networking/xmpp/mamRouter.d.ts.map +1 -0
- package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts +1 -0
- package/lib/typescript/networking/xmpp/presenceInRoom.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 +22 -1
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/Middleware/newMessageMidlleware.d.ts.map +1 -1
- package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts +4 -0
- package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts.map +1 -0
- package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts +9 -0
- package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts.map +1 -1
- package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
- package/lib/typescript/roomStore/index.d.ts.map +1 -1
- package/lib/typescript/roomStore/persistBackend.d.ts +11 -0
- package/lib/typescript/roomStore/persistBackend.d.ts.map +1 -0
- package/lib/typescript/roomStore/persistence.d.ts +5 -6
- package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts +41 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
- package/lib/typescript/theme/theme.d.ts +4 -1
- package/lib/typescript/theme/theme.d.ts.map +1 -1
- package/lib/typescript/types/models/message.model.d.ts +9 -0
- package/lib/typescript/types/models/message.model.d.ts.map +1 -1
- package/lib/typescript/types/models/room.model.d.ts +21 -0
- package/lib/typescript/types/models/room.model.d.ts.map +1 -1
- package/lib/typescript/types/models/xmpp.model.d.ts +6 -1
- package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +19 -3
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/utils/devLogger.d.ts +8 -0
- package/lib/typescript/utils/devLogger.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +14 -1
- package/src/assets/emojiData.ts +2146 -0
- package/src/assets/icons.tsx +32 -5
- package/src/components/MainComponents/ChatHeader.tsx +46 -16
- package/src/components/MainComponents/ChatRoom.tsx +46 -30
- package/src/components/MainComponents/ChatWrapper.tsx +28 -10
- 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/MessageContainer.tsx +7 -15
- package/src/components/MainComponents/MessageList.tsx +96 -43
- package/src/components/MainComponents/ReduxWrapper.tsx +5 -0
- package/src/components/MainComponents/RoomList.tsx +28 -29
- package/src/components/MainComponents/RoomStack.tsx +156 -83
- package/src/components/MainComponents/SealedAttachment.tsx +251 -0
- package/src/components/MainComponents/SystemMessage.tsx +6 -2
- package/src/components/MessageBubble/Avatar.tsx +7 -1
- package/src/components/MessageBubble/BottomReplyContainer.tsx +20 -21
- package/src/components/MessageBubble/EmojiPickerSheet.tsx +468 -0
- package/src/components/MessageBubble/Message.tsx +242 -93
- package/src/components/MessageBubble/MessageInteractions.tsx +215 -15
- package/src/components/MessageBubble/MessageReaction.tsx +120 -96
- package/src/components/MessageBubble/MessageReply.tsx +65 -32
- package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +7 -4
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +181 -35
- package/src/components/Modals/FilePreviewModal/PdfView.tsx +4 -0
- package/src/components/Modals/Modal/SwipeBackLayer.tsx +114 -63
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +53 -8
- package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +5 -0
- package/src/components/RoomComponents/ChatRoomItem.tsx +34 -15
- package/src/components/RoomComponents/LastMessageItem.tsx +5 -0
- package/src/components/RoomComponents/styled/LastAudioMessage.tsx +3 -1
- package/src/components/RoomComponents/styled/LastMessageEmoji.tsx +7 -8
- 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 +287 -198
- package/src/components/UsersList/UsersList.tsx +2 -1
- package/src/components/styled/DateLabel.tsx +7 -3
- package/src/components/styled/SendInput.tsx +5 -2
- package/src/context/MessageNotificationContext.tsx +205 -7
- package/src/context/xmppProvider.tsx +29 -9
- 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/createMessageFromXml.ts +31 -6
- package/src/helpers/createRoomFromApi.tsx +37 -1
- package/src/helpers/createUserNameFromSetUser.ts +2 -1
- package/src/helpers/displayName.ts +9 -0
- package/src/helpers/emoji.ts +39 -0
- package/src/helpers/haptics.ts +19 -0
- package/src/helpers/historyPreloadScheduler.ts +37 -69
- package/src/helpers/insertMessageWithDelimiter.ts +23 -16
- package/src/helpers/mamReactions.ts +59 -0
- package/src/helpers/parseMessageReference.ts +38 -0
- package/src/helpers/persistCrypto.ts +5 -0
- package/src/helpers/reactionsConfig.ts +13 -0
- package/src/helpers/secureKeyValue.ts +15 -0
- package/src/helpers/updateMessagesTillLast.tsx +14 -2
- package/src/helpers/videoCache.ts +138 -0
- package/src/hooks/useHeapSender.tsx +3 -2
- package/src/hooks/useLogout.tsx +9 -0
- package/src/hooks/useMessageHeapState.tsx +6 -2
- package/src/hooks/useRoomInitialization.tsx +32 -15
- package/src/hooks/useSendMessage.tsx +89 -16
- package/src/hooks/useUnreadMessagesCounter.ts +1 -1
- package/src/i18n/strings.ts +180 -0
- 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/stanzaHandlers.ts +116 -60
- package/src/networking/xmpp/getHistory.xmpp.ts +44 -106
- package/src/networking/xmpp/handleStanzas.xmpp.ts +51 -0
- package/src/networking/xmpp/mamRouter.ts +176 -0
- package/src/networking/xmpp/presenceInRoom.xmpp.ts +46 -3
- 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 +111 -20
- package/src/roomStore/Middleware/newMessageMidlleware.tsx +35 -38
- package/src/roomStore/Middleware/perfMiddleware.ts +50 -0
- package/src/roomStore/Middleware/reactionsMiddleware.tsx +53 -52
- package/src/roomStore/Middleware/unreadMidlleware.tsx +92 -80
- package/src/roomStore/index.ts +28 -27
- package/src/roomStore/persistBackend.ts +93 -0
- package/src/roomStore/persistence.ts +295 -73
- package/src/roomStore/roomsSlice.ts +304 -155
- package/src/theme/theme.ts +10 -1
- package/src/types/models/message.model.ts +9 -0
- package/src/types/models/room.model.ts +22 -0
- package/src/types/models/xmpp.model.ts +4 -2
- package/src/types/types.ts +19 -3
- package/src/utils/devLogger.ts +16 -0
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useDispatch","DeviceEventEmitter","AsyncStorage","store","logout","setLogoutState","useCallback","clearHeap","pushSubscriptionService","releasePushRegistration","clearRoomsRestCache","clearPersistedState","secureUserStorage","getFlushBoundaryTs","LIBRARY_STRAY_KEYS","logoutService","performLogout","state","getState","client","chatSettingStore","rooms","visibleRoomJID","boundaryTs","roomHeapSlice","readBoundaries","undefined","flushLastViewedToPrivateStoreStanza","Promise","race","visibleRoomTs","onlyIfNoUnread","res","setTimeout","e","console","warn","emit","reset","dispatch","multiRemove","remove","useLogout","err"],"sourceRoot":"../../../src","sources":["hooks/useLogout.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,aAAa;AACzC,SAASC,kBAAkB,QAAQ,cAAc;AACjD,OAAOC,YAAY,MAAM,2CAA2C;AACpE,SAASC,KAAK,QAAQ,cAAc;AACpC,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,WAAW,QAAQ,OAAO;AACnC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,uBAAuB,QAAQ,qCAAqC;AAC7E,SAASC,uBAAuB,QAAQ,8BAA8B;AACtE,SAASC,mBAAmB,QAAQ,sCAAsC;AAC1E,SAASC,mBAAmB,QAAQ,0BAA0B;AAC9D,SAASC,iBAAiB,QAAQ,8BAA8B;AAChE,SAASC,kBAAkB,QAAQ,mCAAmC;;
|
|
1
|
+
{"version":3,"names":["useDispatch","DeviceEventEmitter","AsyncStorage","store","logout","setLogoutState","useCallback","clearHeap","pushSubscriptionService","releasePushRegistration","clearRoomsRestCache","clearPersistedState","secureUserStorage","getFlushBoundaryTs","stopOmemo","LIBRARY_STRAY_KEYS","logoutService","performLogout","state","getState","client","chatSettingStore","rooms","visibleRoomJID","boundaryTs","roomHeapSlice","readBoundaries","undefined","flushLastViewedToPrivateStoreStanza","Promise","race","visibleRoomTs","onlyIfNoUnread","res","setTimeout","e","console","warn","emit","reset","clearOpenedFiles","require","dispatch","multiRemove","remove","useLogout","err"],"sourceRoot":"../../../src","sources":["hooks/useLogout.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { useMemo } from 'react';
|
|
3
4
|
import { useSelector } from 'react-redux';
|
|
4
5
|
export const useMessageHeapState = () => {
|
|
5
6
|
const queue = useSelector(state => state.roomHeapSlice?.messageHeap);
|
|
6
7
|
const failedMessages = useSelector(state => state.roomHeapSlice?.failedMessages);
|
|
7
|
-
const idSet = new Set(queue?.map(m => m.id) ?? []);
|
|
8
|
-
const failedIdSet = new Set(Object.keys(failedMessages || {}));
|
|
8
|
+
const idSet = useMemo(() => new Set(queue?.map(m => m.id) ?? []), [queue]);
|
|
9
|
+
const failedIdSet = useMemo(() => new Set(Object.keys(failedMessages || {})), [failedMessages]);
|
|
9
10
|
return {
|
|
10
11
|
queue,
|
|
11
12
|
idSet,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelector","useMessageHeapState","queue","state","roomHeapSlice","messageHeap","failedMessages","idSet","Set","map","m","id","failedIdSet","Object","keys"],"sourceRoot":"../../../src","sources":["hooks/useMessageHeapState.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,KAAK,GAAGF,WAAW,CACtBG,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEC,WAC7C,CAAC;EACD,MAAMC,cAAc,GAAGN,WAAW,CAC/BG,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEE,cAC7C,CAAC;EACD,MAAMC,KAAK,
|
|
1
|
+
{"version":3,"names":["useMemo","useSelector","useMessageHeapState","queue","state","roomHeapSlice","messageHeap","failedMessages","idSet","Set","map","m","id","failedIdSet","Object","keys"],"sourceRoot":"../../../src","sources":["hooks/useMessageHeapState.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,KAAK,GAAGF,WAAW,CACtBG,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEC,WAC7C,CAAC;EACD,MAAMC,cAAc,GAAGN,WAAW,CAC/BG,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEE,cAC7C,CAAC;EACD,MAAMC,KAAK,GAAGR,OAAO,CAAC,MAAM,IAAIS,GAAG,CAACN,KAAK,EAAEO,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAACT,KAAK,CAAC,CAAC;EAC5E,MAAMU,WAAW,GAAGb,OAAO,CACzB,MAAM,IAAIS,GAAG,CAACK,MAAM,CAACC,IAAI,CAACR,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,EAChD,CAACA,cAAc,CACjB,CAAC;EAED,OAAO;IAAEJ,KAAK;IAAEK,KAAK;IAAED,cAAc;IAAEM;EAAY,CAAC;AACtD,CAAC","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { useEffect } from 'react';
|
|
4
4
|
import { setIsLoading } from '../roomStore/roomsSlice';
|
|
5
5
|
import { useXmppClient } from '../context/xmppProvider';
|
|
6
|
-
import { useDispatch } from 'react-redux';
|
|
6
|
+
import { useDispatch, useSelector, useStore } from 'react-redux';
|
|
7
7
|
import useGetNewArchRoom from './useGetNewArchRoom';
|
|
8
8
|
const countUndefinedText = arr => (Array.isArray(arr) ? arr : []).filter(item => item?.body === undefined)?.length;
|
|
9
9
|
const hasLoadedRoomHistory = room => {
|
|
@@ -13,11 +13,20 @@ const hasLoadedRoomHistory = room => {
|
|
|
13
13
|
}
|
|
14
14
|
return messages.some(message => message?.id !== 'delimiter-new' && message?.pending !== true && !!String(message?.body || '').trim());
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
const defaultRoomJids = config => (config?.defaultRooms || []).map(room => typeof room === 'string' ? room : room?.jid);
|
|
17
|
+
export const useRoomInitialization = (activeRoomJID, config) => {
|
|
17
18
|
const {
|
|
18
19
|
client
|
|
19
20
|
} = useXmppClient();
|
|
20
21
|
const dispatch = useDispatch();
|
|
22
|
+
const reduxStore = useStore();
|
|
23
|
+
const hasRooms = useSelector(state => Object.keys(state.rooms.rooms || {}).length > 0);
|
|
24
|
+
const activeRoomExists = useSelector(state => !!activeRoomJID && !!state.rooms.rooms?.[activeRoomJID]);
|
|
25
|
+
const activeHistoryLoaded = useSelector(state => hasLoadedRoomHistory(state.rooms.rooms?.[activeRoomJID]));
|
|
26
|
+
const defaultRoomsMissing = useSelector(state => {
|
|
27
|
+
const jids = defaultRoomJids(config);
|
|
28
|
+
return jids.length > 0 && jids.some(jid => !state.rooms.rooms?.[jid]);
|
|
29
|
+
});
|
|
21
30
|
const syncRooms = useGetNewArchRoom();
|
|
22
31
|
|
|
23
32
|
// Fast active-room join. Mirrors web's first effect: as soon as the
|
|
@@ -46,8 +55,8 @@ export const useRoomInitialization = (activeRoomJID, roomsList, config, messageL
|
|
|
46
55
|
}
|
|
47
56
|
}, [client, activeRoomJID]);
|
|
48
57
|
useEffect(() => {
|
|
49
|
-
const
|
|
50
|
-
const shouldLoadActiveHistory = !!activeRoomJID && !
|
|
58
|
+
const roomsList = reduxStore.getState().rooms.rooms || {};
|
|
59
|
+
const shouldLoadActiveHistory = !!activeRoomJID && !activeHistoryLoaded;
|
|
51
60
|
const getDefaultHistory = async () => {
|
|
52
61
|
if (!client || !activeRoomJID) {
|
|
53
62
|
return;
|
|
@@ -116,7 +125,7 @@ export const useRoomInitialization = (activeRoomJID, roomsList, config, messageL
|
|
|
116
125
|
chatJID: activeRoomJID
|
|
117
126
|
}));
|
|
118
127
|
getDefaultHistory();
|
|
119
|
-
} else {
|
|
128
|
+
} else if (roomsList?.[activeRoomJID]?.isLoading) {
|
|
120
129
|
dispatch(setIsLoading({
|
|
121
130
|
loading: false,
|
|
122
131
|
chatJID: activeRoomJID
|
|
@@ -126,8 +135,7 @@ export const useRoomInitialization = (activeRoomJID, roomsList, config, messageL
|
|
|
126
135
|
initialPresenceAndHistory();
|
|
127
136
|
}
|
|
128
137
|
if (client && config?.defaultRooms) {
|
|
129
|
-
|
|
130
|
-
if (roomsList && !allExist) {
|
|
138
|
+
if (defaultRoomsMissing) {
|
|
131
139
|
config?.defaultRooms.map(async room => {
|
|
132
140
|
client.presenceInRoomStanza(typeof room === 'string' ? room : room.jid);
|
|
133
141
|
});
|
|
@@ -138,6 +146,7 @@ export const useRoomInitialization = (activeRoomJID, roomsList, config, messageL
|
|
|
138
146
|
}
|
|
139
147
|
}
|
|
140
148
|
}
|
|
141
|
-
|
|
149
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
150
|
+
}, [activeRoomJID, hasRooms, activeRoomExists, activeHistoryLoaded, defaultRoomsMissing]);
|
|
142
151
|
};
|
|
143
152
|
//# sourceMappingURL=useRoomInitialization.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","setIsLoading","useXmppClient","useDispatch","useGetNewArchRoom","countUndefinedText","arr","Array","isArray","filter","item","body","undefined","length","hasLoadedRoomHistory","room","messages","some","message","id","pending","String","trim","
|
|
1
|
+
{"version":3,"names":["useEffect","setIsLoading","useXmppClient","useDispatch","useSelector","useStore","useGetNewArchRoom","countUndefinedText","arr","Array","isArray","filter","item","body","undefined","length","hasLoadedRoomHistory","room","messages","some","message","id","pending","String","trim","defaultRoomJids","config","defaultRooms","map","jid","useRoomInitialization","activeRoomJID","client","dispatch","reduxStore","hasRooms","state","Object","keys","rooms","activeRoomExists","activeHistoryLoaded","defaultRoomsMissing","jids","syncRooms","setActiveRoomJid","promoteRoomHistory","presenceInRoomStanza","getRoomInfoStanza","roomsList","getState","shouldLoadActiveHistory","getDefaultHistory","loading","chatJID","res","getHistoryStanza","prioritizeRoomPresence","catch","Number","loadingText","initialPresenceAndHistory","newArch","getRoomsStanza","isLoading"],"sourceRoot":"../../../src","sources":["hooks/useRoomInitialization.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,6 +12,8 @@ import { enqueueOutboundSend, removeOutboundSend } from '../networking/outboundQ
|
|
|
12
12
|
import { store } from '../roomStore';
|
|
13
13
|
import { getGlobalXmppClient } from '../utils/clientRegistry';
|
|
14
14
|
import { useEventHandlers } from './useEventHandlers';
|
|
15
|
+
import { canEditMessage, canSendMediaToRoom, canSendToRoom } from '../e2ee';
|
|
16
|
+
import { shouldEncrypt } from '../e2ee/send';
|
|
15
17
|
// Watchdog: if a message stays "pending" (no server echo) for this
|
|
16
18
|
// long after the optimistic dispatch, mark it failed so the bubble
|
|
17
19
|
// flips out of the "sending..." state. Covers the silent-failure
|
|
@@ -71,16 +73,22 @@ export const useSendMessage = _configOverride => {
|
|
|
71
73
|
// Mirrors the web SDK, which always sends through the translate-tag path.
|
|
72
74
|
const langSource = useSelector(state => state.chatSettingStore.langSource);
|
|
73
75
|
const editAction = useSelector(state => state.rooms.editAction);
|
|
74
|
-
const rooms = useSelector(state => state.rooms.rooms);
|
|
75
76
|
const {
|
|
76
77
|
handleMessageSent,
|
|
77
78
|
handleMessageFailed,
|
|
78
79
|
handleMessageEdited,
|
|
79
80
|
handleMessageRetry
|
|
80
81
|
} = useEventHandlers(config);
|
|
81
|
-
const failedMessages = useSelector(state => state.roomHeapSlice?.failedMessages || {});
|
|
82
82
|
const sendMessage = useCallback(async (message, activeRoomJID, isReply, isChecked, mainMessage, existingId) => {
|
|
83
83
|
if (editAction?.isEdit) {
|
|
84
|
+
const edited = reduxStore.getState().rooms?.rooms?.[editAction.roomJid]?.messages?.find(m => m.id === editAction.messageId);
|
|
85
|
+
if (edited && !canEditMessage(edited)) {
|
|
86
|
+
console.warn('edit not sent: the message was encrypted');
|
|
87
|
+
dispatch(setEditAction({
|
|
88
|
+
isEdit: false
|
|
89
|
+
}));
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
84
92
|
try {
|
|
85
93
|
client?.editMessageStanza(editAction.roomJid, editAction.messageId, message);
|
|
86
94
|
handleMessageEdited({
|
|
@@ -102,6 +110,10 @@ export const useSendMessage = _configOverride => {
|
|
|
102
110
|
}));
|
|
103
111
|
return;
|
|
104
112
|
}
|
|
113
|
+
if (!canSendToRoom(activeRoomJID)) {
|
|
114
|
+
console.warn('message not sent: room is end-to-end encrypted');
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
105
117
|
|
|
106
118
|
// Critical-send hint to the QoS scheduler.
|
|
107
119
|
client?.onCriticalSend?.(activeRoomJID);
|
|
@@ -132,6 +144,14 @@ export const useSendMessage = _configOverride => {
|
|
|
132
144
|
// manual-mode readers see the Translate link on it too (parity with
|
|
133
145
|
// the web SDK, which stamps langSource on the optimistic message).
|
|
134
146
|
langSource: langSource || 'en',
|
|
147
|
+
// Reply fields as the wire carries them (strings), so a thread reply
|
|
148
|
+
// shows in its thread — and NOT in the channel — from the first
|
|
149
|
+
// frame, not only once the server echo lands.
|
|
150
|
+
...(isReply ? {
|
|
151
|
+
isReply: 'true',
|
|
152
|
+
showInChannel: isChecked ? 'true' : 'false',
|
|
153
|
+
mainMessage
|
|
154
|
+
} : {}),
|
|
135
155
|
user: {
|
|
136
156
|
...user,
|
|
137
157
|
id: selfId,
|
|
@@ -273,6 +293,10 @@ export const useSendMessage = _configOverride => {
|
|
|
273
293
|
}
|
|
274
294
|
}, [editAction, client, user, langSource, dispatch, handleMessageSent, handleMessageEdited, handleMessageFailed, reduxStore]);
|
|
275
295
|
const sendMedia = useCallback(async (data, type, activeRoomJID, isReply = false, isChecked = false, mainMessage = '', existingId) => {
|
|
296
|
+
if (!canSendMediaToRoom(activeRoomJID)) {
|
|
297
|
+
console.warn('media not sent: room is end-to-end encrypted');
|
|
298
|
+
return;
|
|
299
|
+
}
|
|
276
300
|
client?.onCriticalSend?.(activeRoomJID);
|
|
277
301
|
|
|
278
302
|
// Defensive 50 MB guard on every send path (SendInput blocks it at
|
|
@@ -335,7 +359,7 @@ export const useSendMessage = _configOverride => {
|
|
|
335
359
|
mimetype: type,
|
|
336
360
|
originalName: data?.name,
|
|
337
361
|
size: fileSizeStr,
|
|
338
|
-
isReply,
|
|
362
|
+
isReply: isReply ? 'true' : 'false',
|
|
339
363
|
showInChannel: `${isChecked}`,
|
|
340
364
|
mainMessage
|
|
341
365
|
}
|
|
@@ -402,20 +426,40 @@ export const useSendMessage = _configOverride => {
|
|
|
402
426
|
type: data?.type || data?.mimeType || type || 'application/octet-stream',
|
|
403
427
|
name: data?.name || data?.fileName || `media_${Date.now()}`
|
|
404
428
|
};
|
|
429
|
+
let sealed;
|
|
405
430
|
const tryUpload = async () => {
|
|
431
|
+
if (shouldEncrypt(activeRoomJID) && !sealed) {
|
|
432
|
+
const {
|
|
433
|
+
sealPickedFile
|
|
434
|
+
} = require('../e2ee/sealedFiles');
|
|
435
|
+
sealed = await sealPickedFile({
|
|
436
|
+
uri: fileBlob.uri,
|
|
437
|
+
name: fileBlob.name,
|
|
438
|
+
type: fileBlob.type,
|
|
439
|
+
size: typeof data?.size === 'number' ? data.size : undefined
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
const part = sealed ? {
|
|
443
|
+
uri: sealed.uri,
|
|
444
|
+
type: 'application/octet-stream',
|
|
445
|
+
name: sealed.name
|
|
446
|
+
} : fileBlob;
|
|
447
|
+
const options = {
|
|
448
|
+
clientEncrypted: !!sealed
|
|
449
|
+
};
|
|
406
450
|
const fd = new FormData();
|
|
407
|
-
fd.append('files',
|
|
451
|
+
fd.append('files', part);
|
|
408
452
|
try {
|
|
409
|
-
return await uploadFileV2(fd, activeRoomJID);
|
|
453
|
+
return await uploadFileV2(fd, activeRoomJID, options);
|
|
410
454
|
} catch (err) {
|
|
411
455
|
if (err?.response?.status === 500) {
|
|
412
456
|
console.warn('upload "files" field returned 500 — retrying with "file" (singular)', {
|
|
413
|
-
name:
|
|
414
|
-
type:
|
|
457
|
+
name: part.name,
|
|
458
|
+
type: part.type
|
|
415
459
|
});
|
|
416
460
|
const fd2 = new FormData();
|
|
417
|
-
fd2.append('file',
|
|
418
|
-
return await uploadFileV2(fd2, activeRoomJID);
|
|
461
|
+
fd2.append('file', part);
|
|
462
|
+
return await uploadFileV2(fd2, activeRoomJID, options);
|
|
419
463
|
}
|
|
420
464
|
throw err;
|
|
421
465
|
}
|
|
@@ -453,8 +497,25 @@ export const useSendMessage = _configOverride => {
|
|
|
453
497
|
isReply,
|
|
454
498
|
mainMessage,
|
|
455
499
|
isPrivate: item?.isPrivate,
|
|
456
|
-
__v: item.__v
|
|
500
|
+
__v: item.__v,
|
|
501
|
+
e2eeKeys: sealed ? [sealed.keyMaterial] : undefined
|
|
457
502
|
};
|
|
503
|
+
if (sealed) {
|
|
504
|
+
try {
|
|
505
|
+
const {
|
|
506
|
+
rememberOpened
|
|
507
|
+
} = require('../e2ee/sealedFiles');
|
|
508
|
+
await rememberOpened(item.location, {
|
|
509
|
+
uri: fileBlob.uri,
|
|
510
|
+
name: fileBlob.name,
|
|
511
|
+
type: fileBlob.type,
|
|
512
|
+
size: typeof data?.size === 'number' ? data.size : undefined
|
|
513
|
+
});
|
|
514
|
+
} catch (err) {
|
|
515
|
+
console.warn('could not keep the sent attachment', err);
|
|
516
|
+
}
|
|
517
|
+
sealed.dispose();
|
|
518
|
+
}
|
|
458
519
|
// Stanza id == placeholder id so the MUC echo's outer
|
|
459
520
|
// <message id="..."> matches xmppId on the placeholder and
|
|
460
521
|
// insertMessageWithDelimiter merges in place + flips pending.
|
|
@@ -504,6 +565,7 @@ export const useSendMessage = _configOverride => {
|
|
|
504
565
|
// Upload (or stanza send) threw an explicit error. Clear the
|
|
505
566
|
// watchdog so it doesn't double-fire `markMessageFailed`.
|
|
506
567
|
clearTimeout(mediaWatchdog);
|
|
568
|
+
sealed?.dispose();
|
|
507
569
|
// Surface the real server payload so we can see why the upload
|
|
508
570
|
// was rejected (axios collapses the message to "Request failed
|
|
509
571
|
// with status code N"; the actual reason lives in
|
|
@@ -550,7 +612,7 @@ export const useSendMessage = _configOverride => {
|
|
|
550
612
|
// "sending..."; if the retry fails again `markMessageFailed` re-arms
|
|
551
613
|
// it. No-op when the id isn't in the failed map.
|
|
552
614
|
const retryMessage = useCallback(async failedId => {
|
|
553
|
-
const payload = failedMessages[failedId];
|
|
615
|
+
const payload = reduxStore.getState().roomHeapSlice?.failedMessages?.[failedId];
|
|
554
616
|
if (!payload) {
|
|
555
617
|
return;
|
|
556
618
|
}
|
|
@@ -560,7 +622,7 @@ export const useSendMessage = _configOverride => {
|
|
|
560
622
|
// failed, but a confirmed (non-pending) copy is already sitting in
|
|
561
623
|
// the room. Resending here would deliver a genuine duplicate; just
|
|
562
624
|
// clear the failure and let the existing copy stand.
|
|
563
|
-
const roomMsgs = rooms?.[payload.roomJID]?.messages || [];
|
|
625
|
+
const roomMsgs = reduxStore.getState().rooms?.rooms?.[payload.roomJID]?.messages || [];
|
|
564
626
|
const alreadyDelivered = roomMsgs.some(m => !m.pending && (m.id === failedId || m.xmppId === failedId));
|
|
565
627
|
if (alreadyDelivered) {
|
|
566
628
|
dispatch(clearMessageFailure(failedId));
|
|
@@ -580,7 +642,7 @@ export const useSendMessage = _configOverride => {
|
|
|
580
642
|
} else {
|
|
581
643
|
await sendMedia(payload.data, payload.type, payload.roomJID, payload.isReply, payload.isChecked, payload.mainMessage, failedId);
|
|
582
644
|
}
|
|
583
|
-
}, [
|
|
645
|
+
}, [reduxStore, dispatch, handleMessageRetry, sendMessage, sendMedia]);
|
|
584
646
|
|
|
585
647
|
// ChatRoom/ThreadWrapper consume this as the "edit branch" of send.
|
|
586
648
|
// It mirrors the edit path inside `sendMessage` so callers can wire it
|
|
@@ -589,6 +651,14 @@ export const useSendMessage = _configOverride => {
|
|
|
589
651
|
if (!editAction?.isEdit || !editAction.roomJid || !editAction.messageId) {
|
|
590
652
|
return;
|
|
591
653
|
}
|
|
654
|
+
const edited = reduxStore.getState().rooms?.rooms?.[editAction.roomJid]?.messages?.find(m => m.id === editAction.messageId);
|
|
655
|
+
if (edited && !canEditMessage(edited)) {
|
|
656
|
+
console.warn('edit not sent: the message was encrypted');
|
|
657
|
+
dispatch(setEditAction({
|
|
658
|
+
isEdit: false
|
|
659
|
+
}));
|
|
660
|
+
return;
|
|
661
|
+
}
|
|
592
662
|
try {
|
|
593
663
|
client?.editMessageStanza(editAction.roomJid, editAction.messageId, message);
|
|
594
664
|
handleMessageEdited({
|
|
@@ -617,7 +687,7 @@ export const useSendMessage = _configOverride => {
|
|
|
617
687
|
if (!roomJID) {
|
|
618
688
|
return false;
|
|
619
689
|
}
|
|
620
|
-
const msgs = rooms?.[roomJID]?.messages;
|
|
690
|
+
const msgs = reduxStore.getState().rooms?.rooms?.[roomJID]?.messages;
|
|
621
691
|
if (!msgs || msgs.length === 0) {
|
|
622
692
|
return false;
|
|
623
693
|
}
|
|
@@ -630,7 +700,7 @@ export const useSendMessage = _configOverride => {
|
|
|
630
700
|
return false;
|
|
631
701
|
}
|
|
632
702
|
return last.user?.id === selfId;
|
|
633
|
-
}, [
|
|
703
|
+
}, [reduxStore, user?.xmppUsername, user?.walletAddress]);
|
|
634
704
|
return {
|
|
635
705
|
sendMessage,
|
|
636
706
|
sendMedia,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","Platform","v4","uuidv4","useXmppClient","useDispatch","useSelector","useStore","addRoomMessage","setEditAction","addMessageToHeap","clearMessageFailure","markMessageFailed","uploadFileV2","enqueueOutboundSend","removeOutboundSend","store","getGlobalXmppClient","useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","dispatch","reduxStore","user","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","failedMessages","roomHeapSlice","sendMessage","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","name","firstName","lastName","trim","disableSentLogic","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","streamOnline","status","console","warn","watchdogTimer","setTimeout","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueuedAt","send","effectiveClient","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","showInChannel","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","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","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","Platform","v4","uuidv4","useXmppClient","useDispatch","useSelector","useStore","addRoomMessage","setEditAction","addMessageToHeap","clearMessageFailure","markMessageFailed","uploadFileV2","enqueueOutboundSend","removeOutboundSend","store","getGlobalXmppClient","useEventHandlers","canEditMessage","canSendMediaToRoom","canSendToRoom","shouldEncrypt","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","dispatch","reduxStore","user","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","sendMessage","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","edited","getState","roomJid","messages","find","m","id","messageId","console","warn","editMessageStanza","newMessage","roomJID","error","messageType","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","watchdogExtended","runWatchdog","roomMsgs","stillPending","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","status","watchdogTimer","setTimeout","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueuedAt","send","effectiveClient","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","mediaWatchdog","fileBlob","mimeType","sealed","tryUpload","sealPickedFile","require","undefined","part","options","clientEncrypted","fd","FormData","append","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","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSyncExternalStore","store","useUnreadMessagesCounter","subscribe","callback","roomsState","getState","rooms","unreadByRoom","totalCount","isCapped","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","unreadCapped","hasUnread","isLoading","isUnreadSyncing","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;AAE5C,SAASC,KAAK,QAAQ,cAAc;AAmBpC,OAAO,MAAMC,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKH,KAAK,CAACE,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAMC,UAAU,GAAGL,oBAAoB,CACrCG,SAAS,EACT,MAAMF,KAAK,CAACK,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGF,UAAU,CAACE,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,QAAQ,GAAG,KAAK;EAEpBC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBR,YAAY,CAACM,OAAO,CAAC,GAAGE,WAAW;MACnCP,UAAU,IAAIO,WAAW;IAC3B;IACA,IAAKD,IAAI,EAAUG,YAAY,EAAE;
|
|
1
|
+
{"version":3,"names":["useSyncExternalStore","store","useUnreadMessagesCounter","subscribe","callback","roomsState","getState","rooms","unreadByRoom","totalCount","isCapped","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","unreadCapped","hasUnread","isLoading","isUnreadSyncing","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;AAE5C,SAASC,KAAK,QAAQ,cAAc;AAmBpC,OAAO,MAAMC,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKH,KAAK,CAACE,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAMC,UAAU,GAAGL,oBAAoB,CACrCG,SAAS,EACT,MAAMF,KAAK,CAACK,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGF,UAAU,CAACE,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,QAAQ,GAAG,KAAK;EAEpBC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBR,YAAY,CAACM,OAAO,CAAC,GAAGE,WAAW;MACnCP,UAAU,IAAIO,WAAW;IAC3B;IACA,IAAKD,IAAI,EAAUG,YAAY,IAAIF,WAAW,IAAI,EAAE,EAAE;MACpDN,QAAQ,GAAG,IAAI;IACjB;EACF,CAAC,CAAC;EAEF,OAAO;IACLS,SAAS,EAAEV,UAAU,GAAG,CAAC;IACzBA,UAAU;IACVD,YAAY;IACZY,SAAS,EAAE,CAAC,CAACf,UAAU,CAACgB,eAAe,IAAI,CAAC,CAAChB,UAAU,CAACe,SAAS;IACjEV;EACF,CAAC;AACH,CAAC;AAED,SAASR,wBAAwB,IAAIoB,SAAS","ignoreList":[]}
|