@ethora/chat-component-rn 26.10.4 → 26.10.6
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 +8 -0
- package/README.md +15 -0
- package/app.plugin.js +2 -0
- package/lib/commonjs/assets/icons.js +2 -2
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/MainComponents/AlbumGrid.js +152 -0
- package/lib/commonjs/components/MainComponents/AlbumGrid.js.map +1 -0
- package/lib/commonjs/components/MainComponents/ChatRoom.js +2 -2
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaMessage.js +199 -123
- package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaUploadOverlay.js +109 -0
- package/lib/commonjs/components/MainComponents/MediaUploadOverlay.js.map +1 -0
- package/lib/commonjs/components/MessageBubble/MediaCaption.js +51 -0
- package/lib/commonjs/components/MessageBubble/MediaCaption.js.map +1 -0
- package/lib/commonjs/components/MessageBubble/Message.js +40 -1
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js +2 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +75 -0
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/LastMessageItem.js +20 -4
- package/lib/commonjs/components/RoomComponents/LastMessageItem.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js +3 -2
- package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +3 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +3 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +3 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/commonjs/components/Thread/ThreadWrapper.js +3 -2
- package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/ActiveCallBar.js +61 -16
- package/lib/commonjs/components/VideoCalls/ActiveCallBar.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/CallIcons.js +41 -16
- package/lib/commonjs/components/VideoCalls/CallIcons.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +183 -9
- package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js +40 -15
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/callSessionController.js +49 -26
- package/lib/commonjs/components/VideoCalls/callSessionController.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/callUiStore.js +33 -4
- package/lib/commonjs/components/VideoCalls/callUiStore.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/livekitRuntime.js +9 -1
- package/lib/commonjs/components/VideoCalls/livekitRuntime.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/useCallKeep.js +197 -28
- package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js +88 -0
- package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
- package/lib/commonjs/components/VideoCalls/usePipTile.js +232 -0
- package/lib/commonjs/components/VideoCalls/usePipTile.js.map +1 -0
- package/lib/commonjs/components/styled/MediaFilePreview.js +60 -47
- package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/commonjs/components/styled/MessageImage.js +16 -6
- package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
- package/lib/commonjs/components/styled/SendInput.js +99 -68
- package/lib/commonjs/components/styled/SendInput.js.map +1 -1
- package/lib/commonjs/components/styled/VideoMessage.js +24 -10
- package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +46 -0
- package/lib/commonjs/context/xmppProvider.js.map +1 -1
- package/lib/commonjs/e2ee/fileEnvelope.js +6 -0
- package/lib/commonjs/e2ee/fileEnvelope.js.map +1 -1
- package/lib/commonjs/e2ee/sealedBody.js +32 -2
- package/lib/commonjs/e2ee/sealedBody.js.map +1 -1
- package/lib/commonjs/helpers/albumLayout.js +150 -0
- package/lib/commonjs/helpers/albumLayout.js.map +1 -0
- package/lib/commonjs/helpers/attachments.js +255 -0
- package/lib/commonjs/helpers/attachments.js.map +1 -0
- package/lib/commonjs/helpers/caption.js +214 -0
- package/lib/commonjs/helpers/caption.js.map +1 -0
- package/lib/commonjs/helpers/createMainMessageForThread.js +5 -1
- package/lib/commonjs/helpers/createMainMessageForThread.js.map +1 -1
- package/lib/commonjs/helpers/createMessageFromXml.js +19 -5
- package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
- package/lib/commonjs/helpers/fileKind.js +40 -0
- package/lib/commonjs/helpers/fileKind.js.map +1 -0
- package/lib/commonjs/helpers/getDataFromXml.js +6 -1
- package/lib/commonjs/helpers/getDataFromXml.js.map +1 -1
- package/lib/commonjs/helpers/mapWithConcurrency.js +41 -0
- package/lib/commonjs/helpers/mapWithConcurrency.js.map +1 -0
- package/lib/commonjs/helpers/mediaLimits.js +33 -0
- package/lib/commonjs/helpers/mediaLimits.js.map +1 -0
- package/lib/commonjs/helpers/mediaSendRetry.js +64 -0
- package/lib/commonjs/helpers/mediaSendRetry.js.map +1 -0
- package/lib/commonjs/helpers/mediaWireData.js +62 -0
- package/lib/commonjs/helpers/mediaWireData.js.map +1 -0
- package/lib/commonjs/helpers/mentionSpans.js +19 -0
- package/lib/commonjs/helpers/mentionSpans.js.map +1 -0
- package/lib/commonjs/helpers/mimeToExtension.js +45 -0
- package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
- package/lib/commonjs/helpers/readReceipts.js +173 -0
- package/lib/commonjs/helpers/readReceipts.js.map +1 -0
- package/lib/commonjs/helpers/repairFilenameEncoding.js +79 -0
- package/lib/commonjs/helpers/repairFilenameEncoding.js.map +1 -0
- package/lib/commonjs/helpers/safeJson.js +18 -0
- package/lib/commonjs/helpers/safeJson.js.map +1 -0
- package/lib/commonjs/helpers/updateMessagesTillLast.js +3 -1
- package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +384 -193
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/i18n/strings.js +144 -0
- package/lib/commonjs/i18n/strings.js.map +1 -1
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/auth.api.js +62 -3
- package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
- package/lib/commonjs/networking/stanzaHandlers.js +100 -3
- package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +4 -2
- package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js +28 -0
- package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
- package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
- package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js +28 -0
- package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
- package/lib/commonjs/networking/xmppClient.js +64 -0
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/persistence.js +78 -5
- package/lib/commonjs/roomStore/persistence.js.map +1 -1
- package/lib/commonjs/roomStore/roomHeapSlice.js +4 -0
- package/lib/commonjs/roomStore/roomHeapSlice.js.map +1 -1
- package/lib/commonjs/roomStore/roomsSlice.js +114 -1
- package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
- package/lib/commonjs/types/models/attachment.model.js +2 -0
- package/lib/commonjs/types/models/attachment.model.js.map +1 -0
- package/lib/commonjs/version.js +1 -1
- package/lib/module/assets/icons.js +1 -1
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/MainComponents/AlbumGrid.js +146 -0
- package/lib/module/components/MainComponents/AlbumGrid.js.map +1 -0
- package/lib/module/components/MainComponents/ChatRoom.js +2 -2
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/MediaMessage.js +200 -124
- package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/module/components/MainComponents/MediaUploadOverlay.js +104 -0
- package/lib/module/components/MainComponents/MediaUploadOverlay.js.map +1 -0
- package/lib/module/components/MessageBubble/MediaCaption.js +46 -0
- package/lib/module/components/MessageBubble/MediaCaption.js.map +1 -0
- package/lib/module/components/MessageBubble/Message.js +44 -5
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js +2 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +75 -0
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/RoomComponents/LastMessageItem.js +20 -4
- package/lib/module/components/RoomComponents/LastMessageItem.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastAudioMessage.js +3 -2
- package/lib/module/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js +3 -2
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +3 -2
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +3 -2
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/module/components/Thread/ThreadWrapper.js +3 -2
- package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
- package/lib/module/components/VideoCalls/ActiveCallBar.js +63 -18
- package/lib/module/components/VideoCalls/ActiveCallBar.js.map +1 -1
- package/lib/module/components/VideoCalls/CallIcons.js +38 -15
- package/lib/module/components/VideoCalls/CallIcons.js.map +1 -1
- package/lib/module/components/VideoCalls/VideoCallOverlay.js +185 -11
- package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
- package/lib/module/components/VideoCalls/VideoCallSession.js +41 -16
- package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/module/components/VideoCalls/callSessionController.js +46 -24
- package/lib/module/components/VideoCalls/callSessionController.js.map +1 -1
- package/lib/module/components/VideoCalls/callUiStore.js +30 -3
- package/lib/module/components/VideoCalls/callUiStore.js.map +1 -1
- package/lib/module/components/VideoCalls/livekitRuntime.js +9 -1
- package/lib/module/components/VideoCalls/livekitRuntime.js.map +1 -1
- package/lib/module/components/VideoCalls/useCallKeep.js +198 -29
- package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
- package/lib/module/components/VideoCalls/useOngoingCallNotification.js +84 -0
- package/lib/module/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
- package/lib/module/components/VideoCalls/usePipTile.js +228 -0
- package/lib/module/components/VideoCalls/usePipTile.js.map +1 -0
- package/lib/module/components/styled/MediaFilePreview.js +61 -48
- package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/module/components/styled/MessageImage.js +16 -6
- package/lib/module/components/styled/MessageImage.js.map +1 -1
- package/lib/module/components/styled/SendInput.js +99 -68
- package/lib/module/components/styled/SendInput.js.map +1 -1
- package/lib/module/components/styled/VideoMessage.js +24 -10
- package/lib/module/components/styled/VideoMessage.js.map +1 -1
- package/lib/module/context/xmppProvider.js +46 -0
- package/lib/module/context/xmppProvider.js.map +1 -1
- package/lib/module/e2ee/fileEnvelope.js +1 -1
- package/lib/module/e2ee/fileEnvelope.js.map +1 -1
- package/lib/module/e2ee/sealedBody.js +32 -2
- package/lib/module/e2ee/sealedBody.js.map +1 -1
- package/lib/module/helpers/albumLayout.js +143 -0
- package/lib/module/helpers/albumLayout.js.map +1 -0
- package/lib/module/helpers/attachments.js +245 -0
- package/lib/module/helpers/attachments.js.map +1 -0
- package/lib/module/helpers/caption.js +207 -0
- package/lib/module/helpers/caption.js.map +1 -0
- package/lib/module/helpers/createMainMessageForThread.js +5 -1
- package/lib/module/helpers/createMainMessageForThread.js.map +1 -1
- package/lib/module/helpers/createMessageFromXml.js +20 -6
- package/lib/module/helpers/createMessageFromXml.js.map +1 -1
- package/lib/module/helpers/fileKind.js +34 -0
- package/lib/module/helpers/fileKind.js.map +1 -0
- package/lib/module/helpers/getDataFromXml.js +6 -1
- package/lib/module/helpers/getDataFromXml.js.map +1 -1
- package/lib/module/helpers/mapWithConcurrency.js +37 -0
- package/lib/module/helpers/mapWithConcurrency.js.map +1 -0
- package/lib/module/helpers/mediaLimits.js +27 -0
- package/lib/module/helpers/mediaLimits.js.map +1 -0
- package/lib/module/helpers/mediaSendRetry.js +55 -0
- package/lib/module/helpers/mediaSendRetry.js.map +1 -0
- package/lib/module/helpers/mediaWireData.js +58 -0
- package/lib/module/helpers/mediaWireData.js.map +1 -0
- package/lib/module/helpers/mentionSpans.js +14 -0
- package/lib/module/helpers/mentionSpans.js.map +1 -0
- package/lib/module/helpers/mimeToExtension.js +43 -0
- package/lib/module/helpers/mimeToExtension.js.map +1 -1
- package/lib/module/helpers/readReceipts.js +160 -0
- package/lib/module/helpers/readReceipts.js.map +1 -0
- package/lib/module/helpers/repairFilenameEncoding.js +74 -0
- package/lib/module/helpers/repairFilenameEncoding.js.map +1 -0
- package/lib/module/helpers/safeJson.js +13 -0
- package/lib/module/helpers/safeJson.js.map +1 -0
- package/lib/module/helpers/updateMessagesTillLast.js +3 -1
- package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +387 -195
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/i18n/strings.js +144 -0
- package/lib/module/i18n/strings.js.map +1 -1
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/auth.api.js +62 -3
- package/lib/module/networking/api-requests/auth.api.js.map +1 -1
- package/lib/module/networking/stanzaHandlers.js +97 -4
- package/lib/module/networking/stanzaHandlers.js.map +1 -1
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js +5 -3
- package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js +25 -0
- package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
- package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
- package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js +25 -0
- package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
- package/lib/module/networking/xmppClient.js +64 -0
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/persistence.js +78 -5
- package/lib/module/roomStore/persistence.js.map +1 -1
- package/lib/module/roomStore/roomHeapSlice.js +4 -0
- package/lib/module/roomStore/roomHeapSlice.js.map +1 -1
- package/lib/module/roomStore/roomsSlice.js +109 -0
- package/lib/module/roomStore/roomsSlice.js.map +1 -1
- package/lib/module/types/models/attachment.model.js +2 -0
- package/lib/module/types/models/attachment.model.js.map +1 -0
- package/lib/module/version.js +1 -1
- package/lib/typescript/assets/icons.d.ts +6 -1
- package/lib/typescript/assets/icons.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/AlbumGrid.d.ts +21 -0
- package/lib/typescript/components/MainComponents/AlbumGrid.d.ts.map +1 -0
- package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts +17 -0
- package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts.map +1 -0
- package/lib/typescript/components/MessageBubble/MediaCaption.d.ts +12 -0
- package/lib/typescript/components/MessageBubble/MediaCaption.d.ts.map +1 -0
- 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/FilePreviewModal/FilePreviewModal.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 +2 -0
- package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +2 -0
- package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +2 -0
- package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +2 -0
- package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
- package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts +9 -3
- package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/CallIcons.d.ts +9 -0
- package/lib/typescript/components/VideoCalls/CallIcons.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/callSessionController.d.ts +7 -0
- package/lib/typescript/components/VideoCalls/callSessionController.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/callUiStore.d.ts +13 -0
- package/lib/typescript/components/VideoCalls/callUiStore.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts +5 -0
- package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/useCallKeep.d.ts +12 -0
- package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts +10 -0
- package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts.map +1 -0
- package/lib/typescript/components/VideoCalls/usePipTile.d.ts +46 -0
- package/lib/typescript/components/VideoCalls/usePipTile.d.ts.map +1 -0
- package/lib/typescript/components/styled/MediaFilePreview.d.ts.map +1 -1
- package/lib/typescript/components/styled/MessageImage.d.ts +10 -0
- package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
- package/lib/typescript/components/styled/SendInput.d.ts +7 -1
- package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
- package/lib/typescript/components/styled/VideoMessage.d.ts +7 -0
- package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
- package/lib/typescript/e2ee/fileEnvelope.d.ts +1 -1
- package/lib/typescript/e2ee/fileEnvelope.d.ts.map +1 -1
- package/lib/typescript/e2ee/sealedBody.d.ts +16 -0
- package/lib/typescript/e2ee/sealedBody.d.ts.map +1 -1
- package/lib/typescript/helpers/albumLayout.d.ts +66 -0
- package/lib/typescript/helpers/albumLayout.d.ts.map +1 -0
- package/lib/typescript/helpers/attachments.d.ts +55 -0
- package/lib/typescript/helpers/attachments.d.ts.map +1 -0
- package/lib/typescript/helpers/caption.d.ts +64 -0
- package/lib/typescript/helpers/caption.d.ts.map +1 -0
- package/lib/typescript/helpers/createMainMessageForThread.d.ts.map +1 -1
- package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/fileKind.d.ts +20 -0
- package/lib/typescript/helpers/fileKind.d.ts.map +1 -0
- package/lib/typescript/helpers/getDataFromXml.d.ts.map +1 -1
- package/lib/typescript/helpers/mapWithConcurrency.d.ts +9 -0
- package/lib/typescript/helpers/mapWithConcurrency.d.ts.map +1 -0
- package/lib/typescript/helpers/mediaLimits.d.ts +13 -0
- package/lib/typescript/helpers/mediaLimits.d.ts.map +1 -0
- package/lib/typescript/helpers/mediaSendRetry.d.ts +26 -0
- package/lib/typescript/helpers/mediaSendRetry.d.ts.map +1 -0
- package/lib/typescript/helpers/mediaWireData.d.ts +16 -0
- package/lib/typescript/helpers/mediaWireData.d.ts.map +1 -0
- package/lib/typescript/helpers/mentionSpans.d.ts +8 -0
- package/lib/typescript/helpers/mentionSpans.d.ts.map +1 -0
- package/lib/typescript/helpers/mimeToExtension.d.ts +7 -0
- package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
- package/lib/typescript/helpers/readReceipts.d.ts +82 -0
- package/lib/typescript/helpers/readReceipts.d.ts.map +1 -0
- package/lib/typescript/helpers/repairFilenameEncoding.d.ts +12 -0
- package/lib/typescript/helpers/repairFilenameEncoding.d.ts.map +1 -0
- package/lib/typescript/helpers/safeJson.d.ts +2 -0
- package/lib/typescript/helpers/safeJson.d.ts.map +1 -0
- package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
- package/lib/typescript/hooks/useSendMessage.d.ts +2 -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 +1 -1
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts +2 -0
- package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
- package/lib/typescript/networking/stanzaHandlers.d.ts +7 -3
- package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts +3 -0
- package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts.map +1 -0
- package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts +12 -0
- package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts +3 -0
- package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts.map +1 -0
- package/lib/typescript/networking/xmppClient.d.ts +15 -0
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomHeapSlice.d.ts +22 -1
- package/lib/typescript/roomStore/roomHeapSlice.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts +67 -3
- package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
- package/lib/typescript/types/models/attachment.model.d.ts +52 -0
- package/lib/typescript/types/models/attachment.model.d.ts.map +1 -0
- package/lib/typescript/types/models/message.model.d.ts +26 -0
- package/lib/typescript/types/models/message.model.d.ts.map +1 -1
- package/lib/typescript/types/models/modal.model.d.ts +7 -0
- package/lib/typescript/types/models/modal.model.d.ts.map +1 -1
- package/lib/typescript/types/models/room.model.d.ts +2 -0
- package/lib/typescript/types/models/room.model.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +69 -1
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +4 -1
- package/plugins/notification-service/Info.plist +31 -0
- package/plugins/notification-service/NotificationService.swift +82 -0
- package/plugins/withNotificationServiceExtension.js +137 -0
- package/src/assets/icons.tsx +20 -2
- package/src/components/MainComponents/AlbumGrid.tsx +183 -0
- package/src/components/MainComponents/ChatRoom.tsx +4 -2
- package/src/components/MainComponents/MediaMessage.tsx +246 -130
- package/src/components/MainComponents/MediaUploadOverlay.tsx +102 -0
- package/src/components/MessageBubble/MediaCaption.tsx +45 -0
- package/src/components/MessageBubble/Message.tsx +71 -3
- package/src/components/MessageBubble/MessageInteractions.tsx +2 -1
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +64 -0
- package/src/components/RoomComponents/LastMessageItem.tsx +15 -4
- package/src/components/RoomComponents/styled/LastAudioMessage.tsx +6 -3
- package/src/components/RoomComponents/styled/LastMessageFile.tsx +6 -2
- package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +6 -2
- package/src/components/RoomComponents/styled/LastMessageVideo.tsx +6 -2
- package/src/components/Thread/ThreadWrapper.tsx +5 -9
- package/src/components/VideoCalls/ActiveCallBar.tsx +56 -10
- package/src/components/VideoCalls/CallIcons.tsx +36 -12
- package/src/components/VideoCalls/VideoCallOverlay.tsx +205 -8
- package/src/components/VideoCalls/VideoCallSession.tsx +45 -13
- package/src/components/VideoCalls/callSessionController.ts +51 -20
- package/src/components/VideoCalls/callUiStore.ts +33 -3
- package/src/components/VideoCalls/livekitRuntime.ts +13 -0
- package/src/components/VideoCalls/useCallKeep.ts +204 -33
- package/src/components/VideoCalls/useOngoingCallNotification.ts +113 -0
- package/src/components/VideoCalls/usePipTile.ts +214 -0
- package/src/components/styled/MediaFilePreview.tsx +49 -34
- package/src/components/styled/MessageImage.tsx +21 -5
- package/src/components/styled/SendInput.tsx +101 -87
- package/src/components/styled/VideoMessage.tsx +34 -9
- package/src/context/xmppProvider.tsx +32 -0
- package/src/e2ee/fileEnvelope.ts +1 -1
- package/src/e2ee/sealedBody.ts +44 -5
- package/src/helpers/albumLayout.ts +207 -0
- package/src/helpers/attachments.ts +316 -0
- package/src/helpers/caption.ts +283 -0
- package/src/helpers/createMainMessageForThread.ts +6 -1
- package/src/helpers/createMessageFromXml.ts +21 -5
- package/src/helpers/fileKind.ts +38 -0
- package/src/helpers/getDataFromXml.ts +5 -1
- package/src/helpers/mapWithConcurrency.ts +32 -0
- package/src/helpers/mediaLimits.ts +27 -0
- package/src/helpers/mediaSendRetry.ts +59 -0
- package/src/helpers/mediaWireData.ts +57 -0
- package/src/helpers/mentionSpans.ts +17 -0
- package/src/helpers/mimeToExtension.ts +51 -0
- package/src/helpers/readReceipts.ts +219 -0
- package/src/helpers/repairFilenameEncoding.ts +82 -0
- package/src/helpers/safeJson.ts +11 -0
- package/src/helpers/updateMessagesTillLast.tsx +2 -1
- package/src/hooks/useSendMessage.tsx +448 -249
- package/src/i18n/strings.ts +144 -0
- package/src/main.ts +3 -0
- package/src/networking/api-requests/auth.api.ts +60 -3
- package/src/networking/stanzaHandlers.ts +91 -2
- package/src/networking/xmpp/handleStanzas.xmpp.ts +6 -2
- package/src/networking/xmpp/sendDisplayedMarker.xmpp.ts +31 -0
- package/src/networking/xmpp/sendMediaMessage.xmpp.ts +60 -3
- package/src/networking/xmpp/sendReceivedReceipt.xmpp.ts +31 -0
- package/src/networking/xmppClient.ts +48 -0
- package/src/roomStore/persistence.ts +94 -3
- package/src/roomStore/roomHeapSlice.ts +23 -1
- package/src/roomStore/roomsSlice.ts +112 -1
- package/src/types/models/attachment.model.ts +51 -0
- package/src/types/models/message.model.ts +29 -0
- package/src/types/models/modal.model.ts +7 -0
- package/src/types/models/room.model.ts +2 -0
- package/src/types/types.ts +83 -1
- package/src/version.ts +1 -1
- package/lib/commonjs/components/VideoCalls/useDraggable.js +0 -59
- package/lib/commonjs/components/VideoCalls/useDraggable.js.map +0 -1
- package/lib/module/components/VideoCalls/useDraggable.js +0 -55
- package/lib/module/components/VideoCalls/useDraggable.js.map +0 -1
- package/lib/typescript/components/VideoCalls/useDraggable.d.ts +0 -19
- package/lib/typescript/components/VideoCalls/useDraggable.d.ts.map +0 -1
- package/src/components/VideoCalls/useDraggable.ts +0 -46
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","claimMamResult","collectMamMessage","collectMamReaction","replayArchivedReaction","extractReaction","addRooms","addRoomMessage","deleteRoomMessage","editRoomMessage","setComposing","setCurrentRoom","setRoomRole","setReactions","updateRoom","adjustUsersCnt","isRoomMembersTruncated","requestSendersOf","createMessageFromXml","getDataFromXml","setDeleteModal","messageNotificationManager","isOwnIncomingMessage","transformCallLogMessage","translateKey","isWindowQueryId","loadRoomMembers","subscribeRoomForPush","onRealtimeMessage","stanza","getChild","is","attrs","id","body","archived","data","deleted","senderJID","from","parsed","pData","pId","pBody","pRest","mergedData","rawMessage","isDeleted","message","getState","chatSettingStore","user","xmppUsername","roomJID","split","dispatch","state","stanzaFrom","room","rooms","roomName","title","name","locale","uiLocale","config","i18n","langSource","overrides","strings","senderName","senderFirstName","senderLastName","filter","Boolean","join","trim","showNotification","err","console","warn","onDeleteMessage","stanzaId","by","messageId","isDeleteModal","onEditMessage","includes","replace","text","isMamResult","xmlns","parseMamResult","forwardedMsg","reaction","undefined","delay","forwardedMessage","innerFrom","mergedAttrs","xmppId","positionalMessage","parsedFull","catch","translations","onMessageHistory","queryid","claimed","handleComposing","currentUser","composingUser","norm","s","toLowerCase","senderLocal","selfUser","selfXmppUsername","selfWallet","walletAddress","isSelf","chatJID","composingList","push","fullName","pop","composing","MUC_USER_NS","onRoomMembershipChange","roomJid","String","x","getChildren","find","e","item","memberJid","jid","affiliation","leaving","members","Array","isArray","idx","findIndex","m","next","updates","usersCnt","length","_","i","_id","firstName","lastName","onPresenceInRoom","startsWith","role","children","onChatInvite","client","type","chatId","xEls","el","child","chat","presenceInRoomStanza","getRoomsStanza","onGetMembers","onGetRoomInfo","onGetLastMessageArchive","_xmpp","onNewRoomCreated","xmpp","onGetChatRooms","known","fresh","jids","result","Number","users_cnt","messages","isLoading","roomBg","room_background","icon","room_thumbnail","unreadMessages","lastViewedTimestamp","activeRoomJID","force","onMessageError","_stanza","onReactionMessage","latestReactionTimestamp","ts","reactions","emoji","onReactionHistory","onRoomKicked","slash","indexOf","slice","nickname","error"],"sourceRoot":"../../../src","sources":["networking/stanzaHandlers.ts"],"mappings":";;AACA,SAASA,KAAK,QAAQ,cAAc;AACpC,SACEC,cAAc,EACdC,iBAAiB,EACjBC,kBAAkB,EAClBC,sBAAsB,QACjB,kBAAkB;AACzB,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SACEC,QAAQ,EACRC,cAAc,EACdC,iBAAiB,EACjBC,eAAe,EACfC,YAAY,EACZC,cAAc,EACdC,WAAW,EACXC,YAAY,EACZC,UAAU,QACL,yBAAyB;AAEhC,SAASC,cAAc,EAAEC,sBAAsB,QAAQ,0BAA0B;AACjF,SAASC,gBAAgB,QAAQ,yBAAyB;AAC1D,SAASC,oBAAoB,QAAQ,iCAAiC;AACtE,SAASC,cAAc,QAAQ,2BAA2B;AAC1D,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,0BAA0B,QAAQ,qCAAqC;AAChF,SAASC,oBAAoB,QAAQ,+BAA+B;AACpE,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,oBAAoB,QAAQ,qCAAqC;;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,iBAAiB,GAAG,MAAOC,MAAe,IAAK;EACnD,IACE,CAACA,MAAM,EAAEC,QAAQ,CAAC,QAAQ,CAAC,IAC3B,CAACD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,IAC7B,CAACD,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,IAC1B,CAACD,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC,IAC3B,CAACD,MAAM,CAACE,EAAE,CAAC,IAAI,CAAC,IAChBF,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,qBAAqB,IACzC,CAACJ,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,EAC7B;IACA,MAAMI,IAAI,GAAGL,MAAM,EAAEC,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAMK,QAAQ,GAAGN,MAAM,EAAEC,QAAQ,CAAC,UAAU,CAAC;IAC7C,MAAMM,IAAI,GAAGP,MAAM,EAAEC,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAMG,EAAE,GAAGE,QAAQ,EAAEH,KAAK,CAACC,EAAE;IAE7B,MAAMI,OAAO,GAAGR,MAAM,CACnBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,SAAS,CAAC;IAEvB,IAAI,CAACM,IAAI,EAAE;MACT;IACF;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAME,SAAS,GAAGF,IAAI,CAACJ,KAAK,CAACM,SAAS,IAAIT,MAAM,CAACG,KAAK,CAACO,IAAI;IAC3D,IAAI,CAACD,SAAS,EAAE;MACd;IACF;;IAEA;IACA;IACA;IACA;IACA,MAAME,MAAM,GAAG,MAAMrB,cAAc,CAACU,MAAM,CAAC;IAC3C,MAAM;MAAEO,IAAI,EAAEK,KAAK;MAAER,EAAE,EAAES,GAAG;MAAER,IAAI,EAAES,KAAK;MAAE,GAAGC;IAAM,CAAC,GACnDJ,MAAM,IAAK,CAAC,CAAyC;IACvD,MAAMK,UAAmC,GAAG;MAAE,IAAIJ,KAAK,IAAIL,IAAI,CAACJ,KAAK;IAAE,CAAC;IACxE,IAAI,CAACa,UAAU,CAACP,SAAS,EAAE;MAACO,UAAU,CAACP,SAAS,GAAGA,SAAS;IAAC;IAC7D;IACA;IACA;IACA,MAAMQ,UAAU,GAAG,MAAM5B,oBAAoB,CAAC;MAC5CkB,IAAI,EAAES,UAAU;MAChBZ,EAAE,EAAES,GAAG,IAAIT,EAAE;MACbC,IAAI,EAAES,KAAK,IAAI,EAAE;MACjB,GAAGC,KAAK;MACRG,SAAS,EAAE,CAAC,CAACV,OAAO,IAAI,CAAC,CAACO,KAAK,EAAEP;IACnC,CAA+C,CAAC;;IAEhD;IACA;IACA;IACA;IACA;IACA,MAAMW,OAAO,GAAGzB,uBAAuB,CACrCuB,UAAU,EACV9C,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,IAAI,EAAEC,YAAY,IAAI,EAC1D,CAAC;IAED,MAAMC,OAAO,GAAGxB,MAAM,CAACG,KAAK,CAACO,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/CtD,KAAK,CAACuD,QAAQ,CACZhD,cAAc,CAAC;MACb8C,OAAO;MACPL;IACF,CAAC,CACH,CAAC;IACD;IACA;IACA,IAAI;MACF/B,gBAAgB,CAAC,CAAC+B,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC,MAAM;MACN;IAAA;;IAGF;IACA;IACA;IACA,IAAI;MACF,MAAMQ,KAAK,GAAGxD,KAAK,CAACiD,QAAQ,CAAC,CAAC;MAC9B,IACE3B,oBAAoB,CAAC;QACnB0B,OAAO;QACPS,UAAU,EAAE5B,MAAM,CAACG,KAAK,CAACO,IAAI;QAC7BD,SAAS;QACTa,IAAI,EAAEK,KAAK,CAACN,gBAAgB,CAACC;MAC/B,CAAC,CAAC,EACF;QACA,OAAOH,OAAO;MAChB;MACA,MAAMU,IAAI,GAAGF,KAAK,CAACG,KAAK,CAACA,KAAK,CAACN,OAAO,CAAC;MACvC,MAAMO,QAAQ,GAAGF,IAAI,EAAEG,KAAK,IAAIH,IAAI,EAAEI,IAAI,IAAI,EAAE;MAChD;MACA;MACA;MACA;MACA;MACA;MACA;MACA,MAAMC,MAAM,GACVP,KAAK,CAACN,gBAAgB,CAACc,QAAQ,IAC/BR,KAAK,CAACN,gBAAgB,CAACe,MAAM,EAAEC,IAAI,EAAEH,MAAM,IAC3CP,KAAK,CAACN,gBAAgB,CAACiB,UAAU;MACnC,MAAMC,SAAS,GAAGZ,KAAK,CAACN,gBAAgB,CAACe,MAAM,EAAEC,IAAI,EAAEG,OAAO;MAC9D,MAAMC,UAAU,GAAG,CACjBlC,IAAI,CAACJ,KAAK,CAACuC,eAAe,EAC1BnC,IAAI,CAACJ,KAAK,CAACwC,cAAc,CAC1B,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC,CACTC,IAAI,CAAC,CAAC,IAAIpD,YAAY,CAAC,6BAA6B,EAAEuC,MAAM,EAAEK,SAAS,CAAC;MAC3E/C,0BAA0B,CAACwD,gBAAgB,CACzC7B,OAAO,EACPY,QAAQ,EACRU,UAAU,EACVjB,OACF,CAAC;IACH,CAAC,CAAC,OAAOyB,GAAG,EAAE;MACZC,OAAO,CAACC,IAAI,CAAC,8BAA8B,EAAEF,GAAG,CAAC;IACnD;IACA,OAAO9B,OAAO;EAChB;AACF,CAAC;AAED,MAAMiC,eAAe,GAAG,MAAOpD,MAAe,IAAK;EACjD,IAAIA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,qBAAqB,EAAE;IAC7C,MAAMI,OAAO,GAAGR,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC;IACzC,MAAMoD,QAAQ,GAAGrD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC;IAE7C,IAAI,CAACO,OAAO,EAAE;MACZ;IACF;IAEArC,KAAK,CAACuD,QAAQ,CACZ/C,iBAAiB,CAAC;MAChB6C,OAAO,EAAE6B,QAAQ,EAAElD,KAAK,CAACmD,EAAE;MAC3BC,SAAS,EAAE/C,OAAO,CAACL,KAAK,CAACC;IAC3B,CAAC,CACH,CAAC;IACDjC,KAAK,CAACuD,QAAQ,CAACnC,cAAc,CAAC;MAAEiE,aAAa,EAAE;IAAM,CAAC,CAAC,CAAC;EAC1D;AACF,CAAC;AAED,MAAMC,aAAa,GAAG,MAAOzD,MAAe,IAAK;EAC/C,IAAIA,MAAM,EAAEG,KAAK,EAAEC,EAAE,EAAEsD,QAAQ,CAAC,cAAc,CAAC,EAAE;IAC/C,MAAML,QAAQ,GAAGrD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC;IAC7C,MAAM0D,OAAO,GAAG3D,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC;IAE1C,IAAI,CAACoD,QAAQ,IAAI,CAACM,OAAO,EAAE;MACzB;IACF;IAEAxF,KAAK,CAACuD,QAAQ,CACZ9C,eAAe,CAAC;MACd4C,OAAO,EAAE6B,QAAQ,EAAElD,KAAK,CAACmD,EAAE;MAC3BC,SAAS,EAAEI,OAAO,EAAExD,KAAK,CAACC,EAAE;MAC5BwD,IAAI,EAAED,OAAO,EAAExD,KAAK,CAACyD;IACvB,CAAC,CACH,CAAC;EACH;AACF,CAAC;AAED,MAAMC,WAAW,GAAI7D,MAAW,IAC9B,CAAC,CAACA,MAAM,EAAEE,EAAE,GAAG,SAAS,CAAC,IACzBF,MAAM,CAACC,QAAQ,GAAG,QAAQ,CAAC,EAAEE,KAAK,EAAE2D,KAAK,KAAK,gBAAgB;AAEhE,MAAMC,cAAc,GAAG,MAAO/D,MAAW,IAAoC;EAC3E;IACE,MAAMgE,YAAY,GAAGhE,MAAM,CACxBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC;IACvB,IAAI+D,YAAY,EAAE/D,QAAQ,GAAG,WAAW,CAAC,EAAE;MACzC,MAAMgE,QAAQ,GAAGzF,eAAe,CAC9BwF,YAAY,EACZhE,MAAM,CAACG,KAAK,EAAEO,IAAI,EAClBV,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAEE,KAAK,EAAEC,EACpC,CAAC;MACD,IAAI6D,QAAQ,IAAI,CAAC3F,kBAAkB,CAAC0B,MAAM,EAAEiE,QAAQ,CAAC,EAAE;QACrD;QACA;QACA1F,sBAAsB,CAAC0F,QAAQ,CAAC;MAClC;MACA,OAAOC,SAAS;IAClB;IACA;IACA,MAAM7D,IAAI,GAAGL,MAAM,CAChBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,MAAM,CAAC;IACpB,MAAMM,IAAI,GAAGP,MAAM,CAChBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,MAAM,CAAC;IACpB,MAAMO,OAAO,GAAGR,MAAM,CACnBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC,EACnBA,QAAQ,CAAC,SAAS,CAAC;IAEvB,MAAMkE,KAAK,GAAGnE,MAAM,CACjBC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,OAAO,CAAC;IACrB,MAAMG,EAAE,GAAGJ,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAEE,KAAK,CAACC,EAAE;IAC9C,IAAI,CAAC+D,KAAK,EAAE;MACV,IAAInE,MAAM,CAACC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC9B;MACF;MACA,IAAI,CAACM,IAAI,IAAI,CAACF,IAAI,IAAI,CAACD,EAAE,EAAE;QACzB;MACF;IACF;IACA;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMgE,gBAAgB,GAAGpE,MAAM,CAC5BC,QAAQ,CAAC,QAAQ,CAAC,EACjBA,QAAQ,CAAC,WAAW,CAAC,EACrBA,QAAQ,CAAC,SAAS,CAAC;IACvB,MAAMoE,SAAS,GAAGD,gBAAgB,EAAEjE,KAAK,EAAEO,IAAI,IAAIV,MAAM,CAACG,KAAK,CAACO,IAAI;IACpE,MAAMD,SAAS,GAAGF,IAAI,EAAEJ,KAAK,EAAEM,SAAS,IAAI4D,SAAS;IACrD,IAAI,CAAC9D,IAAI,EAAEJ,KAAK,IAAI,CAACM,SAAS,EAAE;MAC9B;MACA;MACA;MACA;MACA;IACF;IACA,MAAM6D,WAAW,GAAG;MAAE,GAAG/D,IAAI,CAACJ;IAAM,CAAC;IACrC,IAAI,CAACmE,WAAW,CAAC7D,SAAS,EAAE;MAAC6D,WAAW,CAAC7D,SAAS,GAAGA,SAAS;IAAC;IAC/D;IACA;IACA;IACA;IACA;IACA,IAAI2D,gBAAgB,EAAEjE,KAAK,EAAEC,EAAE,EAAE;MAACkE,WAAW,CAACC,MAAM,GAAGH,gBAAgB,CAACjE,KAAK,CAACC,EAAE;IAAC;IACjF,MAAMoE,iBAAiB,GAAG,MAAMnF,oBAAoB,CAClDiF,WAAW,EACXjE,IAAI,EACJD,EAAE;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACAiE,SAAS,EACT,CAAC,CAAC7D,OACJ,CAAC;;IAED;IACA;IACA;IACA;IACA;IACA;IACA,MAAMiE,UAAU,GAAG,MAAMnF,cAAc,CAACU,MAAM,CAAC,CAAC0E,KAAK,CAAC,MAAMR,SAAS,CAAC;IACtE,MAAMjD,UAAU,GAAG;MACjB,GAAGuD,iBAAiB;MACpB,IAAIC,UAAU,EAAEE,YAAY,GACxB;QAAEA,YAAY,EAAEF,UAAU,CAACE;MAAa,CAAC,GACzC,CAAC,CAAC,CAAC;MACP,IAAIF,UAAU,EAAEnC,UAAU,GAAG;QAAEA,UAAU,EAAEmC,UAAU,CAACnC;MAAW,CAAC,GAAG,CAAC,CAAC;IACzE,CAAC;;IAED;IACA;IACA,MAAMnB,OAAO,GAAGzB,uBAAuB,CACrCuB,UAAU,EACV9C,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,IAAI,EAAEC,YAAY,IAAI,EAC1D,CAAC;IACD,OAAOJ,OAAO;EAChB;AACF,CAAC;AAED,MAAMyD,gBAAgB,GAAG,MAAO5E,MAAW,IAAK;EAC9C,IAAI,CAAC6D,WAAW,CAAC7D,MAAM,CAAC,EAAE;IAAC;EAAO;EAClC;EACA;EACA;EACA,IAAIJ,eAAe,CAACI,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAEE,KAAK,EAAE0E,OAAO,CAAC,EAAE;IAAC;EAAO;EACxE,MAAMC,OAAO,GAAG1G,cAAc,CAAC4B,MAAM,CAAC;EACtC,IAAImB,OAA6B;EACjC,IAAI;IACFA,OAAO,GAAG,MAAM4C,cAAc,CAAC/D,MAAM,CAAC;EACxC,CAAC,SAAS;IACR,IAAI8E,OAAO,EAAE;MACXzG,iBAAiB,CAAC2B,MAAM,EAAEmB,OAAO,CAAC;IACpC;EACF;EACA,IAAI,CAAC2D,OAAO,IAAI3D,OAAO,EAAE;IACvBhD,KAAK,CAACuD,QAAQ,CACZhD,cAAc,CAAC;MACb8C,OAAO,EAAExB,MAAM,CAACG,KAAK,CAACO,IAAI;MAC1BS;IACF,CAAC,CACH,CAAC;EACH;AACF,CAAC;AAED,MAAM4D,eAAe,GAAG,MAAAA,CAAO/E,MAAe,EAAEgF,WAAmB,KAAK;EACtE,IAAIhF,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,IAAID,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,EAAE;IAC7D,MAAMgF,aAAa,GAAGjF,MAAM,CAACG,KAAK,EAAEO,IAAI,EAAEe,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;IAEzD;IACA;IACA;IACA;IACA;IACA,MAAMyD,IAAI,GAAIC,CAAU,IACtB,CAACA,CAAC,IAAI,EAAE,EAAEC,WAAW,CAAC,CAAC,CAACzB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;;IAE3C;IACA;IACA;IACA,MAAMlD,SAAS,GAAGT,MAAM,CAACC,QAAQ,CAAC,MAAM,CAAC,EAAEE,KAAK,EAAEM,SAAS,IAAI,EAAE;IACjE,MAAM4E,WAAW,GAAG5E,SAAS,CAACgB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IACjD,MAAME,KAAK,GAAGxD,KAAK,CAACiD,QAAQ,CAAC,CAAC;IAC9B,MAAMkE,QAAQ,GAAG3D,KAAK,CAACN,gBAAgB,EAAEC,IAAI;IAC7C,MAAMiE,gBAAgB,GAAGD,QAAQ,EAAE/D,YAAY,IAAI,EAAE;IACrD,MAAMiE,UAAU,GAAGF,QAAQ,EAAEG,aAAa,IAAI,EAAE;IAChD,MAAMC,MAAM,GACTT,aAAa,IAAIC,IAAI,CAACF,WAAW,CAAC,KAAKE,IAAI,CAACD,aAAa,CAAC,IAC1DI,WAAW,IAAIH,IAAI,CAACG,WAAW,CAAC,KAAKH,IAAI,CAACK,gBAAgB,CAAE,IAC5DF,WAAW,IAAIH,IAAI,CAACG,WAAW,CAAC,CAAC3B,QAAQ,CAACwB,IAAI,CAACM,UAAU,CAAC,CAAE;IAE/D,IAAIP,aAAa,IAAI,CAACS,MAAM,EAAE;MAC5B,MAAMC,OAAO,GAAG3F,MAAM,CAACG,KAAK,EAAEO,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;MAEhD,IAAImE,aAAuB,GAAG,EAAE;MAEhC5F,MAAM,EAAEC,QAAQ,CAAC,WAAW,CAAC,GACzB2F,aAAa,CAACC,IAAI,CAChB7F,MAAM,CAACC,QAAQ,CAAC,MAAM,CAAC,EAAEE,KAAK,EAAE2F,QAAQ,EAAErE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,MAC/D,CAAC,GACDmE,aAAa,CAACG,GAAG,CAAC,CAAC;MAEvB5H,KAAK,CAACuD,QAAQ,CACZ7C,YAAY,CAAC;QACX8G,OAAO,EAAEA,OAAO;QAChBK,SAAS,EAAE,CAAC,CAAChG,MAAM,EAAEC,QAAQ,CAAC,WAAW,CAAC;QAC1C2F;MACF,CAAC,CACH,CAAC;IACH;EACF;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMK,WAAW,GAAG,qCAAqC;AAEzD,MAAMC,sBAAsB,GAAIlG,MAAqB,IAAW;EAC9D,IAAI,OAAOA,MAAM,EAAEE,EAAE,KAAK,UAAU,IAAI,CAACF,MAAM,CAACE,EAAE,CAAC,SAAS,CAAC,EAAE;IAAC;EAAO;EACvE,MAAMiG,OAAO,GAAGC,MAAM,CAACpG,MAAM,CAACG,KAAK,EAAEO,IAAI,IAAI,EAAE,CAAC,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC9D,MAAMI,IAAI,GAAGsE,OAAO,GAAGhI,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACU,KAAK,CAACA,KAAK,CAACqE,OAAO,CAAC,GAAGjC,SAAS;EACxE,IAAI,CAACrC,IAAI,EAAE;IAAC;EAAO;EAEnB,MAAMwE,CAAC,GAAG,CAACrG,MAAM,CAACsG,WAAW,GAAG,GAAG,CAAC,IAAI,EAAE,EAAEC,IAAI,CAC7CC,CAAU,IAAKA,CAAC,EAAErG,KAAK,EAAE2D,KAAK,KAAKmC,WACtC,CAAC;EACD,IAAI,CAACI,CAAC,IAAIA,CAAC,CAACpG,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAAC;EAAO;EACxC,MAAMwG,IAAI,GAAGJ,CAAC,CAACpG,QAAQ,CAAC,MAAM,CAAC;EAC/B,MAAMyG,SAAS,GAAGN,MAAM,CAACK,IAAI,EAAEtG,KAAK,EAAEwG,GAAG,IAAI,EAAE,CAAC;EAChD,IAAI,CAACD,SAAS,EAAE;IAAC;EAAO;EAExB,MAAMnF,YAAY,GAAGmF,SAAS,CAACjF,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC5C,MAAMmF,WAAW,GAAGR,MAAM,CAACK,IAAI,EAAEtG,KAAK,EAAEyG,WAAW,IAAI,EAAE,CAAC;EAC1D,MAAMC,OAAO,GAAGD,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,SAAS;EACnE,MAAME,OAAO,GAAGC,KAAK,CAACC,OAAO,CAACnF,IAAI,CAACiF,OAAO,CAAC,GAAGjF,IAAI,CAACiF,OAAO,GAAG,EAAE;EAC/D,MAAMG,GAAG,GAAGH,OAAO,CAACI,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAAC5F,YAAY,KAAKA,YAAY,CAAC;EAErE,IAAI6F,IAAkB;EACtB,IAAIP,OAAO,EAAE;IACX,IAAII,GAAG,GAAG,CAAC,EAAE;MACX;MACA,IAAI,CAAC9H,sBAAsB,CAAC0C,IAAI,CAAC,EAAE;QAAC;MAAO;MAC3C1D,KAAK,CAACuD,QAAQ,CACZzC,UAAU,CAAC;QACT0H,GAAG,EAAER,OAAO;QACZkB,OAAO,EAAE;UAAEC,QAAQ,EAAEpI,cAAc,CAAC2C,IAAI,EAAE,CAAC,CAAC,EAAEiF,OAAO,CAACS,MAAM;QAAE;MAChE,CAAC,CACH,CAAC;MACD;IACF;IACAH,IAAI,GAAGN,OAAO,CAAClE,MAAM,CAAC,CAAC4E,CAAC,EAAEC,CAAC,KAAKA,CAAC,KAAKR,GAAG,CAAC;EAC5C,CAAC,MAAM;IACL,IAAIA,GAAG,IAAI,CAAC,EAAE;MAAC;IAAO;IACtBG,IAAI,GAAG,CACL,GAAGN,OAAO,EACV;MAAEY,GAAG,EAAE,EAAE;MAAEC,SAAS,EAAE,EAAE;MAAEC,QAAQ,EAAE,EAAE;MAAErG,YAAY;MAAEoF,GAAG,EAAED;IAAU,CAAC,CACvE;EACH;EAEAvI,KAAK,CAACuD,QAAQ,CACZzC,UAAU,CAAC;IACT0H,GAAG,EAAER,OAAO;IACZkB,OAAO,EAAE;MACPP,OAAO,EAAEM,IAAI;MACbE,QAAQ,EAAEpI,cAAc,CAAC2C,IAAI,EAAEgF,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,EAAEO,IAAI,CAACG,MAAM;IAC9D;EACF,CAAC,CACH,CAAC;AACH,CAAC;AAED,MAAMM,gBAAgB,GAAI7H,MAAqB,IAAK;EAClDkG,sBAAsB,CAAClG,MAAM,CAAC;EAC9B,IACE,OAAOA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,QAAQ,IACnCJ,MAAM,CAACG,KAAK,CAACC,EAAE,CAAC0H,UAAU,CAAC,gBAAgB,CAAC,IAC5C,CAAC9H,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EACzB;IACA,MAAMuB,OAAe,GAAGxB,MAAM,CAACG,KAAK,CAACO,IAAI,CAACe,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,MAAMsG,IAAY,GAAG/H,MAAM,EAAEgI,QAAQ,CAAC,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,CAAC,EAAE7H,KAAK,CAAC4H,IAAI;IACjE,IAAIA,IAAI,IAAI5J,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACU,KAAK,CAACA,KAAK,GAAGN,OAAO,CAAC,EAAEuG,IAAI,KAAKA,IAAI,EAAE;MAClE5J,KAAK,CAACuD,QAAQ,CAAC3C,WAAW,CAAC;QAAE4G,OAAO,EAAEnE,OAAO;QAAEuG,IAAI,EAAEA;MAAK,CAAC,CAAC,CAAC;IAC/D;EACF;AACF,CAAC;AAED,MAAME,YAAY,GAAG,MAAAA,CAAOjI,MAAe,EAAEkI,MAAW,KAAK;EAC3D,IAAIlI,MAAM,CAACE,EAAE,CAAC,SAAS,CAAC,IAAIF,MAAM,CAACG,KAAK,CAACgI,IAAI,KAAK,WAAW,EAAE;IAC7D;IACA,MAAMC,MAAM,GAAGpI,MAAM,CAACG,KAAK,CAACO,IAAI;IAChC,MAAM2H,IAAI,GAAGrI,MAAM,CAACsG,WAAW,CAAC,GAAG,CAAC;IAEpC,KAAK,MAAMgC,EAAE,IAAID,IAAI,EAAE;MACrB,MAAME,KAAK,GAAGD,EAAE,CAACrI,QAAQ,CAAC,QAAQ,CAAC;MAEnC,IAAIsI,KAAK,EAAE;QACT,MAAMC,IAAI,GAAGrK,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACU,KAAK,CAACA,KAAK,CAACsG,MAAM,CAAC;QACjD,IAAII,IAAI,EAAE;UACR;QACF;QAEA,MAAMN,MAAM,CAACO,oBAAoB,CAACL,MAAM,CAAC;QACzC,MAAMF,MAAM,CAACQ,cAAc,CAAC,CAAC;MAC/B;IACF;EACF;AACF,CAAC;AAED,MAAMC,YAAY,GAAI3I,MAAe,IAAK;EACxC,IAAIoG,MAAM,CAACpG,MAAM,CAACG,KAAK,EAAEC,EAAE,IAAI,EAAE,CAAC,KAAK,gBAAgB,EAAE;IAAC;EAAO;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AACF,CAAC;AAED,MAAMwI,aAAa,GAAI5I,MAAe,IAAK;EACzC,IAAIA,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,UAAU,IAAI,CAACJ,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE,CACjE;AACF,CAAC;AAED,MAAM4I,uBAAuB,GAAGA,CAAC7I,MAAe,EAAE8I,KAAU,KAAK;EAC/D,IAAI9I,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,gBAAgB,EAAE,CAC1C;AACF,CAAC;AAED,MAAM2I,gBAAgB,GAAGA,CAAC/I,MAAe,EAAEgJ,IAAS,KAAK;EACvD7K,KAAK,CAACuD,QAAQ,CAAC5C,cAAc,CAAC;IAAE0C,OAAO,EAAExB,MAAM,CAACG,KAAK,CAACO;EAAK,CAAC,CAAC,CAAC;EAC9DsI,IAAI,CAACN,cAAc,CAAC,CAAC;AACvB,CAAC;AAED,MAAMO,cAAc,GAAGA,CAACjJ,MAAe,EAAEgJ,IAAS,KAAK;EACrD,IACEhJ,MAAM,CAACG,KAAK,CAACC,EAAE,KAAK,cAAc,IAClC2G,KAAK,CAACC,OAAO,CAAChH,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE+H,QAAQ,CAAC,EACjD;IACA,MAAMA,QAAQ,GAAGhI,MAAM,CAACC,QAAQ,CAAC,OAAO,CAAC,EAAE+H,QAAQ,IAAI,EAAE;IACzD,MAAMkB,KAAK,GAAG/K,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACU,KAAK,CAACA,KAAK;IAC1C,MAAMqH,KAAc,GAAG,EAAE;IACzB,MAAMC,IAAc,GAAG,EAAE;IACzB,KAAK,MAAMC,MAAM,IAAIrB,QAAQ,EAAW;MACtC,MAAMrB,GAAG,GAAG0C,MAAM,EAAElJ,KAAK,EAAEwG,GAAG;MAC9B,IAAI,CAACA,GAAG,EAAE;QAAC;MAAS;MACpByC,IAAI,CAACvD,IAAI,CAACc,GAAG,CAAC;MACd,IAAIuC,KAAK,CAACvC,GAAG,CAAC,EAAE;QAAC;MAAS;MAC1BwC,KAAK,CAACtD,IAAI,CAAC;QACTc,GAAG;QACH1E,IAAI,EAAEoH,MAAM,EAAElJ,KAAK,EAAE8B,IAAI,IAAI,EAAE;QAC/B7B,EAAE,EAAE,EAAE;QACN4B,KAAK,EAAEqH,MAAM,EAAElJ,KAAK,EAAE8B,IAAI,IAAI,EAAE;QAChCqF,QAAQ,EAAEgC,MAAM,CAACD,MAAM,EAAElJ,KAAK,EAAEoJ,SAAS,IAAI,CAAC,CAAC;QAC/CC,QAAQ,EAAE,EAAE;QACZC,SAAS,EAAE,KAAK;QAChBC,MAAM,EACJL,MAAM,EAAElJ,KAAK,EAAEwJ,eAAe,KAAK,MAAM,GACrCN,MAAM,EAAElJ,KAAK,EAAEwJ,eAAe,GAC9B,IAAI;QACVC,IAAI,EACFP,MAAM,EAAElJ,KAAK,EAAE0J,cAAc,KAAK,MAAM,GACpCR,MAAM,EAAElJ,KAAK,EAAE0J,cAAc,GAC7B,IAAI;QACVC,cAAc,EAAE,CAAC;QACjBC,mBAAmB,EAAE;MACvB,CAAC,CAAC;IACJ;IACA,IAAIZ,KAAK,CAAC5B,MAAM,EAAE;MAChBpJ,KAAK,CAACuD,QAAQ,CAACjD,QAAQ,CAAC;QAAEqD,KAAK,EAAEqH;MAAM,CAAC,CAAC,CAAC;MAC1C,IAAI,CAAChL,KAAK,CAACiD,QAAQ,CAAC,CAAC,CAACU,KAAK,CAACkI,aAAa,EAAE;QACzC7L,KAAK,CAACuD,QAAQ,CAAC5C,cAAc,CAAC;UAAE0C,OAAO,EAAE2H,KAAK,CAAC,CAAC,CAAC,CAACxC;QAAI,CAAC,CAAC,CAAC;MAC3D;MACA;MACA;MACA;MACA,KAAK,MAAM9E,IAAI,IAAIsH,KAAK,EAAE;QACxBtJ,eAAe,CAACgC,IAAI,CAAC8E,GAAG,EAAE;UAAEsD,KAAK,EAAE;QAAK,CAAC,CAAC,CAACvF,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D;QACA5E,oBAAoB,CAACkJ,IAAI,EAAEnH,IAAI,CAAC8E,GAAG,CAAC;MACtC;IACF;IACA,KAAK,MAAMA,GAAG,IAAIyC,IAAI,EAAE;MACtB,IAAI;QACFJ,IAAI,CAACP,oBAAoB,CAAC9B,GAAG,CAAC;MAChC,CAAC,CAAC,OAAOH,CAAC,EAAE;QACVtD,OAAO,CAACC,IAAI,CAAC,6BAA6B,EAAEwD,GAAG,EAAEH,CAAC,CAAC;MACrD;IACF;EACF;AACF,CAAC;;AAED;AACA;AACA;AACA,MAAM0D,cAAc,GAAGA,CAACC,OAAgB,EAAErB,KAAW,KAAK,CAAC,CAAC;AAC5D;AACA,MAAMsB,iBAAiB,GAAIpK,MAAe,IAAK;EAC7C,IAAI,CAACA,MAAM,EAAEE,EAAE,GAAG,SAAS,CAAC,IAAIF,MAAM,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAAC;EAAO;EACnE,IAAI,CAACD,MAAM,CAACC,QAAQ,CAAC,WAAW,CAAC,EAAE;IAAC;EAAO;EAC3C,MAAMgE,QAAQ,GAAGzF,eAAe,CAACwB,MAAM,EAAEA,MAAM,CAACG,KAAK,EAAEO,IAAI,CAAC;EAC5D,IAAI,CAACuD,QAAQ,EAAE;IAAC;EAAO;EACvB9F,KAAK,CAACuD,QAAQ,CACZ1C,YAAY,CAAC;IACXwC,OAAO,EAAEyC,QAAQ,CAACzC,OAAO;IACzB+B,SAAS,EAAEU,QAAQ,CAACV,SAAS;IAC7B8G,uBAAuB,EAAEpG,QAAQ,CAACqG,EAAE;IACpCC,SAAS,EAAEtG,QAAQ,CAACuG,KAAK;IACzB9J,IAAI,EAAEuD,QAAQ,CAACvD,IAAI;IACnBH,IAAI,EAAE0D,QAAQ,CAAC1D;EACjB,CAAC,CACH,CAAC;AACH,CAAC;AACD;AACA,MAAMkK,iBAAiB,GAAIN,OAAgB,IAAK,CAAC,CAAC;AAClD;AACA;AACA;AACA;AACA,MAAMO,YAAY,GAAI1K,MAAqB,IAAK;EAC9C,IAAI;IACF,IAAIA,MAAM,EAAEG,KAAK,EAAEgI,IAAI,KAAK,aAAa,EAAE;MAAC;IAAO;IACnD,MAAMzH,IAAI,GAAG0F,MAAM,CAACpG,MAAM,CAACG,KAAK,EAAEO,IAAI,IAAI,EAAE,CAAC;IAC7C,MAAMiK,KAAK,GAAGjK,IAAI,CAACkK,OAAO,CAAC,GAAG,CAAC;IAC/B,MAAMpJ,OAAO,GAAGmJ,KAAK,IAAI,CAAC,GAAGjK,IAAI,CAACmK,KAAK,CAAC,CAAC,EAAEF,KAAK,CAAC,GAAGjK,IAAI;IACxD,MAAMoK,QAAQ,GAAGH,KAAK,IAAI,CAAC,GAAGjK,IAAI,CAACmK,KAAK,CAACF,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE;IACxD,MAAMhJ,KAAK,GAAGxD,KAAK,CAACiD,QAAQ,CAAC,CAAC;IAC9B,MAAMS,IAAI,GAAGL,OAAO,GAAGG,KAAK,CAACG,KAAK,CAACA,KAAK,CAACN,OAAO,CAAC,GAAG0C,SAAS;IAC7D,IAAI,CAACrC,IAAI,IAAI,CAACiJ,QAAQ,EAAE;MAAC;IAAO;IAChC,IAAIA,QAAQ,MAAMnJ,KAAK,CAACN,gBAAgB,CAACC,IAAI,EAAEC,YAAY,IAAI,EAAE,CAAC,EAAE;MAAC;IAAO;IAE5E,MAAM8E,CAAC,GAAG,CAACrG,MAAM,CAACsG,WAAW,GAAG,GAAG,CAAC,IAAI,EAAE,EAAEC,IAAI,CAC7CC,CAAU,IAAKA,CAAC,EAAErG,KAAK,EAAE2D,KAAK,KAAKmC,WACtC,CAAC;IACD,MAAMQ,IAAI,GAAGJ,CAAC,EAAEpG,QAAQ,GAAG,MAAM,CAAC;IAClC,MAAM2G,WAAW,GAAGR,MAAM,CAACK,IAAI,EAAEtG,KAAK,EAAEyG,WAAW,IAAI,EAAE,CAAC;IAC1D,IAAI,CAACH,IAAI,IAAKG,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,SAAU,EAAE;MAAC;IAAO;IAE5E,MAAME,OAAO,GAAGC,KAAK,CAACC,OAAO,CAACnF,IAAI,CAACiF,OAAO,CAAC,GAAGjF,IAAI,CAACiF,OAAO,GAAG,EAAE;IAC/D,MAAMG,GAAG,GAAGH,OAAO,CAACI,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAAC5F,YAAY,KAAKuJ,QAAQ,CAAC;IACjE,IAAI7D,GAAG,GAAG,CAAC,EAAE;MACX,IAAI,CAAC9H,sBAAsB,CAAC0C,IAAI,CAAC,EAAE;QAAC;MAAO;MAC3C1D,KAAK,CAACuD,QAAQ,CACZzC,UAAU,CAAC;QACT0H,GAAG,EAAEnF,OAAO;QACZ6F,OAAO,EAAE;UAAEC,QAAQ,EAAEpI,cAAc,CAAC2C,IAAI,EAAE,CAAC,CAAC,EAAEiF,OAAO,CAACS,MAAM;QAAE;MAChE,CAAC,CACH,CAAC;MACD;IACF;IACA,MAAMH,IAAI,GAAGN,OAAO,CAAClE,MAAM,CAAC,CAAC4E,CAAC,EAAEC,CAAC,KAAKA,CAAC,KAAKR,GAAG,CAAC;IAChD9I,KAAK,CAACuD,QAAQ,CACZzC,UAAU,CAAC;MACT0H,GAAG,EAAEnF,OAAO;MACZ6F,OAAO,EAAE;QACPP,OAAO,EAAEM,IAAI;QACbE,QAAQ,EAAEpI,cAAc,CAAC2C,IAAI,EAAE,CAAC,CAAC,EAAEuF,IAAI,CAACG,MAAM;MAChD;IACF,CAAC,CACH,CAAC;EACH,CAAC,CAAC,OAAOwD,KAAK,EAAE;IACd7H,OAAO,CAACC,IAAI,CAAC,qBAAqB,EAAE4H,KAAK,CAAC;EAC5C;AACF,CAAC;AACD,SACEhL,iBAAiB,EACjB6E,gBAAgB,EAChBiD,gBAAgB,EAChBgB,uBAAuB,EACvB9D,eAAe,EACfkE,cAAc,EACdF,gBAAgB,EAChBJ,YAAY,EACZC,aAAa,EACbxF,eAAe,EACfK,aAAa,EACbwE,YAAY,EACZiC,cAAc,EACdE,iBAAiB,EACjBK,iBAAiB,EACjBC,YAAY","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["store","claimMamResult","collectMamMessage","collectMamReaction","replayArchivedReaction","extractReaction","addRooms","addRoomMessage","deleteRoomMessage","editRoomMessage","setComposing","setCurrentRoom","setDisplayedMarker","setReceivedReceipt","setRoomRole","setReactions","updateRoom","adjustUsersCnt","isRoomMembersTruncated","requestSendersOf","createMessageFromXml","getDataFromXml","setDeleteModal","messageNotificationManager","isOwnIncomingMessage","transformCallLogMessage","translateKey","isWindowQueryId","loadRoomMembers","subscribeRoomForPush","isReceiptMarkerId","RECEIPTS_NS","CHAT_MARKERS_NS","isReceiptMarkerStanza","stanza","attrs","id","getChild","ackReceivedMessage","message","roomJID","stanzaFrom","senderJID","xmppWs","sendReceivedReceiptStanza","isSystemMessage","String","startsWith","user","getState","chatSettingStore","onRealtimeMessage","is","body","archived","data","deleted","from","parsed","pData","pId","pBody","pRest","mergedData","rawMessage","isDeleted","xmppUsername","split","dispatch","state","room","rooms","roomName","title","name","locale","uiLocale","config","i18n","langSource","overrides","strings","senderName","senderFirstName","senderLastName","filter","Boolean","join","trim","showNotification","err","console","warn","onDeleteMessage","stanzaId","by","messageId","isDeleteModal","onReceivedReceipt","received","fromXmppUsername","timestamp","Date","now","onDisplayedMarker","displayed","onEditMessage","includes","replace","text","isMamResult","xmlns","parseMamResult","forwardedMsg","undefined","reaction","delay","forwardedMessage","innerFrom","mergedAttrs","xmppId","positionalMessage","parsedFull","catch","translations","onMessageHistory","queryid","claimed","handleComposing","currentUser","composingUser","norm","s","toLowerCase","senderLocal","selfUser","selfXmppUsername","selfWallet","walletAddress","isSelf","chatJID","composingList","push","fullName","pop","composing","MUC_USER_NS","onRoomMembershipChange","roomJid","x","getChildren","find","e","item","memberJid","jid","affiliation","leaving","members","Array","isArray","idx","findIndex","m","next","updates","usersCnt","length","_","i","_id","firstName","lastName","onPresenceInRoom","role","children","onChatInvite","client","type","chatId","xEls","el","child","chat","presenceInRoomStanza","getRoomsStanza","onGetMembers","onGetRoomInfo","onGetLastMessageArchive","_xmpp","onNewRoomCreated","xmpp","onGetChatRooms","known","fresh","jids","result","Number","users_cnt","messages","isLoading","roomBg","room_background","icon","room_thumbnail","unreadMessages","lastViewedTimestamp","activeRoomJID","force","onMessageError","_stanza","onReactionMessage","latestReactionTimestamp","ts","reactions","emoji","onReactionHistory","onRoomKicked","slash","indexOf","slice","nickname","error"],"sourceRoot":"../../../src","sources":["networking/stanzaHandlers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { routeMamIq } from './mamRouter';
|
|
4
|
-
import { onDeleteMessage, onEditMessage, onRealtimeMessage, onMessageHistory, onGetLastMessageArchive, handleComposing, onChatInvite, onPresenceInRoom, onGetChatRooms, onGetMembers, onGetRoomInfo, onNewRoomCreated, onReactionMessage, onReactionHistory, onRoomKicked, onMessageError } from '../stanzaHandlers';
|
|
4
|
+
import { onDeleteMessage, onEditMessage, onRealtimeMessage, onMessageHistory, onReceivedReceipt, onDisplayedMarker, onGetLastMessageArchive, handleComposing, onChatInvite, onPresenceInRoom, onGetChatRooms, onGetMembers, onGetRoomInfo, onNewRoomCreated, onReactionMessage, onReactionHistory, onRoomKicked, onMessageError } from '../stanzaHandlers';
|
|
5
5
|
import { onCallTokenMessage } from '../callTokenStanza';
|
|
6
6
|
import { onEthoraEvent } from '../ethoraEvents';
|
|
7
7
|
import { accountDomain, isE2eeEnabled } from '../../e2ee';
|
|
@@ -95,8 +95,10 @@ function dispatchStanza(stanza, xmppWs) {
|
|
|
95
95
|
onDeleteMessage(unwrapped);
|
|
96
96
|
onEditMessage(unwrapped);
|
|
97
97
|
onChatInvite(unwrapped, xmppWs);
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
onReceivedReceipt(unwrapped);
|
|
99
|
+
onDisplayedMarker(unwrapped);
|
|
100
|
+
onRealtimeMessage(unwrapped, xmppWs);
|
|
101
|
+
onMessageHistory(unwrapped, xmppWs);
|
|
100
102
|
handleComposing(unwrapped, xmppWs.username);
|
|
101
103
|
onPresenceInRoom(unwrapped);
|
|
102
104
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["routeMamIq","onDeleteMessage","onEditMessage","onRealtimeMessage","onMessageHistory","onGetLastMessageArchive","handleComposing","onChatInvite","onPresenceInRoom","onGetChatRooms","onGetMembers","onGetRoomInfo","onNewRoomCreated","onReactionMessage","onReactionHistory","onRoomKicked","onMessageError","onCallTokenMessage","onEthoraEvent","accountDomain","isE2eeEnabled","decryptStanzaInPlace","encryptedCarrier","rewriteEncryptedStanza","unwrapMucsubMessage","stanza","inner","getChild","held","queue","Promise","resolve","handleStanza","xmppWs","dispatchStanza","carrier","name","undefined","then","outcome","client","err","console","warn","__resetStanzaQueueForTests","attrs","type","unwrapped","username","log"],"sourceRoot":"../../../../src","sources":["networking/xmpp/handleStanzas.xmpp.ts"],"mappings":";;AACA,SAASA,UAAU,QAAQ,aAAa;AACxC,SACEC,eAAe,EACfC,aAAa,EACbC,iBAAiB,EACjBC,gBAAgB,EAChBC,uBAAuB,EACvBC,eAAe,EACfC,YAAY,EACZC,gBAAgB,EAChBC,cAAc,EACdC,YAAY,EACZC,aAAa,EACbC,gBAAgB,EAChBC,iBAAiB,EACjBC,iBAAiB,EACjBC,YAAY,EACZC,cAAc,QACT,mBAAmB;AAE1B,SAASC,kBAAkB,QAAQ,oBAAoB;AACvD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,aAAa,EAAEC,aAAa,QAAQ,YAAY;AACzD,SACEC,oBAAoB,EACpBC,gBAAgB,EAChBC,sBAAsB,QACjB,mBAAmB;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAIC,MAAe,IAAc;EACxD,MAAMC,KAAK,GAAID,MAAM,EACjBE,QAAQ,GAAG,OAAO,EAAE,yCAAyC,CAAC,EAC9DA,QAAQ,GAAG,OAAO,CAAC,EACnBA,QAAQ,GAAG,MAAM,CAAC,EAClBA,QAAQ,GAAG,SAAS,CAAC;EACzB,OAAQD,KAAK,IAAgBD,MAAM;AACrC,CAAC;AAED,IAAIG,IAAI,GAAG,CAAC;AACZ,IAAIC,KAAoB,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;AAE5C,OAAO,SAASC,YAAYA,CAACP,MAAe,EAAEQ,MAAkB,EAAE;EAChE,IAAI,CAACb,aAAa,CAAC,CAAC,EAAE;IACpBc,cAAc,CAACT,MAAM,EAAEQ,MAAM,CAAC;IAC9B;EACF;EACA,MAAME,OAAO,GACXV,MAAM,EAAEW,IAAI,KAAK,SAAS,GAAGd,gBAAgB,CAACG,MAAM,CAAC,GAAGY,SAAS;EACnE,IAAI,CAACF,OAAO,IAAIP,IAAI,KAAK,CAAC,EAAE;IAC1BM,cAAc,CAACT,MAAM,EAAEQ,MAAM,CAAC;IAC9B;EACF;EAEAL,IAAI,EAAE;EACNC,KAAK,GAAGA,KAAK,CAACS,IAAI,CAAC,YAAY;IAC7B,IAAI;MACF,IAAIH,OAAO,EAAE;QACX,MAAMI,OAAO,GAAG,MAAMlB,oBAAoB,CACxCI,MAAM,EACNN,aAAa,CAACc,MAAM,CAACO,MAAM,CAC7B,CAAC;QACD,IAAID,OAAO,KAAK,MAAM,EAAE;UAAC;QAAO;MAClC;MACAL,cAAc,CAACT,MAAM,EAAEQ,MAAM,CAAC;IAChC,CAAC,CAAC,OAAOQ,GAAG,EAAE;MACZC,OAAO,CAACC,IAAI,CAAC,gCAAgC,EAAEF,GAAG,CAAC;IACrD,CAAC,SAAS;MACRb,IAAI,EAAE;IACR;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,MAAMgB,0BAA0B,GAAGA,CAAA,KAAY;EACpDhB,IAAI,GAAG,CAAC;EACRC,KAAK,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED,SAASG,cAAcA,CAACT,MAAe,EAAEQ,MAAkB,EAAE;EAC3D;EACA;EACA;EACA,IAAIR,MAAM,EAAEW,IAAI,KAAK,SAAS,EAAE;IAC9BlB,aAAa,CAACO,MAAM,EAAEQ,MAAa,CAAC;EACtC;EAEA,IAAIR,MAAM,EAAEoB,KAAK,EAAEC,IAAI,KAAK,UAAU,EAAE;IAAC;EAAO;;EAEhD;EACA;EACA;EACA;EACA;EACA,IAAIrB,MAAM,EAAEW,IAAI,KAAK,SAAS,IAAInB,kBAAkB,CAACQ,MAAM,CAAC,EAAE;IAC5D;EACF;EAEA,IAAIA,MAAM,EAAEW,IAAI,KAAK,SAAS,IAAIb,sBAAsB,CAACE,MAAM,CAAC,KAAK,MAAM,EAAE;IAC3E;EACF;EAEA,QAAQA,MAAM,CAACW,IAAI;IACjB,KAAK,SAAS;MAAE;QACd,MAAMW,SAAS,GAAGvB,mBAAmB,CAACC,MAAM,CAAC;QAC7CT,cAAc,CAAC+B,SAAS,EAAEd,MAAM,CAAC;QACjCpB,iBAAiB,CAACkC,SAAS,CAAC;QAC5BjC,iBAAiB,CAACiC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"names":["routeMamIq","onDeleteMessage","onEditMessage","onRealtimeMessage","onMessageHistory","onReceivedReceipt","onDisplayedMarker","onGetLastMessageArchive","handleComposing","onChatInvite","onPresenceInRoom","onGetChatRooms","onGetMembers","onGetRoomInfo","onNewRoomCreated","onReactionMessage","onReactionHistory","onRoomKicked","onMessageError","onCallTokenMessage","onEthoraEvent","accountDomain","isE2eeEnabled","decryptStanzaInPlace","encryptedCarrier","rewriteEncryptedStanza","unwrapMucsubMessage","stanza","inner","getChild","held","queue","Promise","resolve","handleStanza","xmppWs","dispatchStanza","carrier","name","undefined","then","outcome","client","err","console","warn","__resetStanzaQueueForTests","attrs","type","unwrapped","username","log"],"sourceRoot":"../../../../src","sources":["networking/xmpp/handleStanzas.xmpp.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { xml } from '@xmpp/client';
|
|
4
|
+
|
|
5
|
+
// XEP-0333 read marker, broadcast to the room (same convention as
|
|
6
|
+
// sendReceivedReceipt.xmpp.ts / sendMessageReaction.xmpp.ts). `messageId` is
|
|
7
|
+
// the id of the newest message the user has displayed - a single watermark
|
|
8
|
+
// per room, not one marker per message.
|
|
9
|
+
export function sendDisplayedMarker(client, messageId, roomJid) {
|
|
10
|
+
const id = `message-displayed:${Date.now().toString()}`;
|
|
11
|
+
const message = xml('message', {
|
|
12
|
+
id,
|
|
13
|
+
type: 'groupchat',
|
|
14
|
+
from: client.jid?.toString(),
|
|
15
|
+
to: roomJid
|
|
16
|
+
}, xml('displayed', {
|
|
17
|
+
xmlns: 'urn:xmpp:chat-markers:0',
|
|
18
|
+
id: messageId,
|
|
19
|
+
from: client.jid?.toString()
|
|
20
|
+
}), xml('store', {
|
|
21
|
+
xmlns: 'urn:xmpp:hints'
|
|
22
|
+
}));
|
|
23
|
+
client.send(message);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=sendDisplayedMarker.xmpp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["xml","sendDisplayedMarker","client","messageId","roomJid","id","Date","now","toString","message","type","from","jid","to","xmlns","send"],"sourceRoot":"../../../../src","sources":["networking/xmpp/sendDisplayedMarker.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;;AAE1C;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CACjCC,MAAc,EACdC,SAAiB,EACjBC,OAAe,EACf;EACA,MAAMC,EAAE,GAAG,qBAAqBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE;EAEvD,MAAMC,OAAO,GAAGT,GAAG,CACjB,SAAS,EACT;IACEK,EAAE;IACFK,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAET,MAAM,CAACU,GAAG,EAAEJ,QAAQ,CAAC,CAAC;IAC5BK,EAAE,EAAET;EACN,CAAC,EACDJ,GAAG,CAAC,WAAW,EAAE;IACfc,KAAK,EAAE,yBAAyB;IAChCT,EAAE,EAAEF,SAAS;IACbQ,IAAI,EAAET,MAAM,CAACU,GAAG,EAAEJ,QAAQ,CAAC;EAC7B,CAAC,CAAC,EACFR,GAAG,CAAC,OAAO,EAAE;IAAEc,KAAK,EAAE;EAAiB,CAAC,CAC1C,CAAC;EAEDZ,MAAM,CAACa,IAAI,CAACN,OAAO,CAAC;AACtB","ignoreList":[]}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { xml } from '@xmpp/client';
|
|
4
4
|
import { sendSealedMedia, shouldEncrypt } from '../../e2ee/send';
|
|
5
|
+
import { serializeAttachments } from '../../helpers/attachments';
|
|
6
|
+
import { normalizeCaptionInput } from '../../helpers/caption';
|
|
5
7
|
|
|
6
8
|
// Monotonic counter — see sendTextMessage for the rationale (avoids
|
|
7
9
|
// Date.now() id collisions on <1ms-apart sends).
|
|
@@ -29,6 +31,19 @@ const toServiceXmlns = (devServer, client) => {
|
|
|
29
31
|
}
|
|
30
32
|
return `wss://${ds.replace(/^\/+|\/+$/g, '')}/ws`;
|
|
31
33
|
};
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* One media stanza for one or more files.
|
|
37
|
+
*
|
|
38
|
+
* `data` carries the flat fields that describe attachment #0, so a client
|
|
39
|
+
* that predates multi-attach still shows the first file. With more than one
|
|
40
|
+
* file the whole list rides on `<data attachments='JSON'>` (selection order).
|
|
41
|
+
*
|
|
42
|
+
* A typed caption rides on the message too: as `caption` / `captionMentions`
|
|
43
|
+
* attributes in a plain room, and inside the sealed <body> in an e2ee room
|
|
44
|
+
* (never as an attribute there). A message with one file and no caption is
|
|
45
|
+
* byte-identical to what this function produced before multi-attach.
|
|
46
|
+
*/
|
|
32
47
|
export function sendMediaMessage(client, roomJID, data, customId, devServer) {
|
|
33
48
|
const id = customId || `send-media-message-${Date.now()}-${_sendMediaSeq = _sendMediaSeq + 1 >>> 0}`;
|
|
34
49
|
const dataToSend = {
|
|
@@ -63,20 +78,56 @@ export function sendMediaMessage(client, roomJID, data, customId, devServer) {
|
|
|
63
78
|
roomJid: data?.roomJid,
|
|
64
79
|
push: 'true'
|
|
65
80
|
};
|
|
81
|
+
|
|
82
|
+
// Only stamped when there is more than one file, so a single-file stanza
|
|
83
|
+
// keeps exactly the attributes it always had.
|
|
84
|
+
const files = Array.isArray(data?.attachments) ? data.attachments : [];
|
|
85
|
+
if (files.length > 1) {
|
|
86
|
+
// The flat fields describe attachment #0, whatever the caller passed, so
|
|
87
|
+
// an older client shows the first file of the message.
|
|
88
|
+
const head = files[0];
|
|
89
|
+
const flat = ['attachmentId', 'location', 'locationPreview', 'mimetype', 'originalName', 'fileName', 'size', 'duration'];
|
|
90
|
+
for (const key of flat) {
|
|
91
|
+
const value = head[key];
|
|
92
|
+
if (value !== undefined && value !== null && value !== '') {
|
|
93
|
+
dataToSend[key] = value;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
dataToSend.attachments = serializeAttachments(files);
|
|
97
|
+
}
|
|
66
98
|
const keys = data?.e2eeKeys;
|
|
67
99
|
if (keys?.length) {
|
|
68
100
|
dataToSend.clientEncrypted = 'true';
|
|
69
101
|
}
|
|
102
|
+
const caption = normalizeCaptionInput({
|
|
103
|
+
text: typeof data?.caption === 'string' ? data.caption : '',
|
|
104
|
+
mentions: data?.captionMentions
|
|
105
|
+
});
|
|
70
106
|
const hints = xml('store', {
|
|
71
107
|
xmlns: 'urn:xmpp:hints'
|
|
72
108
|
});
|
|
73
109
|
if (keys?.length && shouldEncrypt(roomJID)) {
|
|
74
|
-
|
|
110
|
+
// The caption is sealed with the keys. It is never copied onto <data>.
|
|
111
|
+
const sealedBody = caption ? {
|
|
112
|
+
v: 1,
|
|
113
|
+
keys,
|
|
114
|
+
caption: caption.caption,
|
|
115
|
+
...(caption.mentions ? {
|
|
116
|
+
captionMentions: caption.mentions
|
|
117
|
+
} : {})
|
|
118
|
+
} : {
|
|
75
119
|
v: 1,
|
|
76
120
|
keys
|
|
77
|
-
}
|
|
121
|
+
};
|
|
122
|
+
sendSealedMedia(client, roomJID, id, xml('body', {}, JSON.stringify(sealedBody)), [xml('data', dataToSend), hints]);
|
|
78
123
|
return id;
|
|
79
124
|
}
|
|
125
|
+
if (caption) {
|
|
126
|
+
dataToSend.caption = caption.caption;
|
|
127
|
+
if (caption.mentions) {
|
|
128
|
+
dataToSend.captionMentions = JSON.stringify(caption.mentions);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
80
131
|
const message = xml('message', {
|
|
81
132
|
id: id,
|
|
82
133
|
type: 'groupchat',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["xml","sendSealedMedia","shouldEncrypt","_sendMediaSeq","toServiceXmlns","devServer","client","clientService","options","service","test","ds","trim","includes","replace","sendMediaMessage","roomJID","data","customId","id","Date","now","dataToSend","xmlns","senderJID","jid","toString","senderFirstName","firstName","senderLastName","lastName","senderWalletAddress","walletAddress","tokenAmount","receiverMessageId","mucname","chatName","photoURL","userAvatar","isMediafile","createdAt","expiresAt","fileName","isVisible","location","locationPreview","mimetype","originalName","ownerKey","size","duration","updatedAt","userId","waveForm","attachmentId","isReply","showInChannel","mainMessage","roomJid","push","
|
|
1
|
+
{"version":3,"names":["xml","sendSealedMedia","shouldEncrypt","serializeAttachments","normalizeCaptionInput","_sendMediaSeq","toServiceXmlns","devServer","client","clientService","options","service","test","ds","trim","includes","replace","sendMediaMessage","roomJID","data","customId","id","Date","now","dataToSend","xmlns","senderJID","jid","toString","senderFirstName","firstName","senderLastName","lastName","senderWalletAddress","walletAddress","tokenAmount","receiverMessageId","mucname","chatName","photoURL","userAvatar","isMediafile","createdAt","expiresAt","fileName","isVisible","location","locationPreview","mimetype","originalName","ownerKey","size","duration","updatedAt","userId","waveForm","attachmentId","isReply","showInChannel","mainMessage","roomJid","push","files","Array","isArray","attachments","length","head","flat","key","value","undefined","keys","e2eeKeys","clientEncrypted","caption","text","mentions","captionMentions","hints","sealedBody","v","JSON","stringify","message","type","from","to","sendResult","send","then","console","log","catch","err","error"],"sourceRoot":"../../../../src","sources":["networking/xmpp/sendMediaMessage.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;AAC1C,SAASC,eAAe,EAAEC,aAAa,QAAQ,iBAAiB;AAEhE,SAASC,oBAAoB,QAAQ,2BAA2B;AAChE,SAASC,qBAAqB,QAAQ,uBAAuB;;AAE7D;AACA;AACA,IAAIC,aAAa,GAAG,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAGA,CAACC,SAA6B,EAAEC,MAAc,KAAa;EAChF,MAAMC,aAAa,GAAID,MAAM,EAAUE,OAAO,EAAEC,OAA6B;EAC7E,IAAIF,aAAa,IAAI,YAAY,CAACG,IAAI,CAACH,aAAa,CAAC,EAAE;IAAC,OAAOA,aAAa;EAAC;EAC7E,MAAMI,EAAE,GAAG,CAACN,SAAS,IAAI,EAAE,EAAEO,IAAI,CAAC,CAAC;EACnC,IAAI,CAACD,EAAE,EAAE;IAAC,OAAO,6BAA6B;EAAC;EAC/C,IAAI,YAAY,CAACD,IAAI,CAACC,EAAE,CAAC,EAAE;IAAC,OAAOA,EAAE;EAAC;EACtC,IAAIA,EAAE,CAACE,QAAQ,CAAC,KAAK,CAAC,EAAE;IAAC,OAAOF,EAAE;EAAC;EACnC,OAAO,SAASA,EAAE,CAACG,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,KAAK;AACnD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAC9BT,MAAc,EACdU,OAAe,EACfC,IAAS,EACTC,QAAiB,EACjBb,SAAkB,EAClB;EACA,MAAMc,EAAE,GACND,QAAQ,IAAI,sBAAsBE,IAAI,CAACC,GAAG,CAAC,CAAC,IAAKlB,aAAa,GAAIA,aAAa,GAAG,CAAC,KAAM,CAAC,EAAG;EAE/F,MAAMmB,UAAmC,GAAG;IAC1CC,KAAK,EAAEnB,cAAc,CAACC,SAAS,EAAEC,MAAM,CAAC;IACxCkB,SAAS,EAAElB,MAAM,CAACmB,GAAG,EAAEC,QAAQ,CAAC,CAAC;IACjCC,eAAe,EAAEV,IAAI,CAACW,SAAS;IAC/BC,cAAc,EAAEZ,IAAI,CAACa,QAAQ;IAC7BC,mBAAmB,EAAEd,IAAI,CAACe,aAAa;IACvCC,WAAW,EAAE,GAAG;IAChBC,iBAAiB,EAAE,GAAG;IACtBC,OAAO,EAAElB,IAAI,CAACmB,QAAQ;IACtBC,QAAQ,EAAEpB,IAAI,CAACqB,UAAU,GAAGrB,IAAI,CAACqB,UAAU,GAAG,EAAE;IAChDC,WAAW,EAAE,IAAI;IACjBC,SAAS,EAAEvB,IAAI,CAACuB,SAAS;IACzBC,SAAS,EAAExB,IAAI,CAACwB,SAAS;IACzBC,QAAQ,EAAEzB,IAAI,CAACyB,QAAQ;IACvBC,SAAS,EAAE1B,IAAI,CAAC0B,SAAS;IACzBC,QAAQ,EAAE3B,IAAI,CAAC2B,QAAQ;IACvBC,eAAe,EAAE5B,IAAI,CAAC4B,eAAe;IACrCC,QAAQ,EAAE7B,IAAI,CAAC6B,QAAQ;IACvBC,YAAY,EAAE9B,IAAI,CAAC8B,YAAY;IAC/BC,QAAQ,EAAE/B,IAAI,CAAC+B,QAAQ;IACvBC,IAAI,EAAEhC,IAAI,CAACgC,IAAI;IACfC,QAAQ,EAAEjC,IAAI,EAAEiC,QAAQ;IACxBC,SAAS,EAAElC,IAAI,CAACkC,SAAS;IACzBC,MAAM,EAAEnC,IAAI,CAACmC,MAAM;IACnBC,QAAQ,EAAEpC,IAAI,CAACoC,QAAQ;IACvBC,YAAY,EAAErC,IAAI,EAAEqC,YAAY;IAChCC,OAAO,EAAEtC,IAAI,EAAEsC,OAAO;IACtBC,aAAa,EAAEvC,IAAI,EAAEuC,aAAa;IAClCC,WAAW,EAAExC,IAAI,EAAEwC,WAAW;IAC9BC,OAAO,EAAEzC,IAAI,EAAEyC,OAAO;IACtBC,IAAI,EAAE;EACR,CAAC;;EAED;EACA;EACA,MAAMC,KAAoB,GAAGC,KAAK,CAACC,OAAO,CAAC7C,IAAI,EAAE8C,WAAW,CAAC,GAAG9C,IAAI,CAAC8C,WAAW,GAAG,EAAE;EACrF,IAAIH,KAAK,CAACI,MAAM,GAAG,CAAC,EAAE;IACpB;IACA;IACA,MAAMC,IAAI,GAAGL,KAAK,CAAC,CAAC,CAAE;IACtB,MAAMM,IAA8B,GAAG,CACrC,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,UAAU,EACV,MAAM,EACN,UAAU,CACX;IACD,KAAK,MAAMC,GAAG,IAAID,IAAI,EAAE;MACtB,MAAME,KAAK,GAAGH,IAAI,CAACE,GAAG,CAAC;MACvB,IAAIC,KAAK,KAAKC,SAAS,IAAID,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAK,EAAE,EAAE;QACzD9C,UAAU,CAAC6C,GAAG,CAAC,GAAGC,KAAK;MACzB;IACF;IACA9C,UAAU,CAACyC,WAAW,GAAG9D,oBAAoB,CAAC2D,KAAK,CAAC;EACtD;EAEA,MAAMU,IAA0B,GAAGrD,IAAI,EAAEsD,QAAQ;EACjD,IAAID,IAAI,EAAEN,MAAM,EAAE;IAChB1C,UAAU,CAACkD,eAAe,GAAG,MAAM;EACrC;EAEA,MAAMC,OAAO,GAAGvE,qBAAqB,CAAC;IACpCwE,IAAI,EAAE,OAAOzD,IAAI,EAAEwD,OAAO,KAAK,QAAQ,GAAGxD,IAAI,CAACwD,OAAO,GAAG,EAAE;IAC3DE,QAAQ,EAAE1D,IAAI,EAAE2D;EAClB,CAAC,CAAC;EACF,MAAMC,KAAK,GAAG/E,GAAG,CAAC,OAAO,EAAE;IAAEyB,KAAK,EAAE;EAAiB,CAAC,CAAC;EAEvD,IAAI+C,IAAI,EAAEN,MAAM,IAAIhE,aAAa,CAACgB,OAAO,CAAC,EAAE;IAC1C;IACA,MAAM8D,UAAU,GAAGL,OAAO,GACtB;MAAEM,CAAC,EAAE,CAAC;MAAET,IAAI;MAAEG,OAAO,EAAEA,OAAO,CAACA,OAAO;MAAE,IAAIA,OAAO,CAACE,QAAQ,GAAG;QAAEC,eAAe,EAAEH,OAAO,CAACE;MAAS,CAAC,GAAG,CAAC,CAAC;IAAE,CAAC,GAC5G;MAAEI,CAAC,EAAE,CAAC;MAAET;IAAK,CAAC;IAClBvE,eAAe,CACbO,MAAM,EACNU,OAAO,EACPG,EAAE,EACFrB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAEkF,IAAI,CAACC,SAAS,CAACH,UAAU,CAAC,CAAC,EAC3C,CAAChF,GAAG,CAAC,MAAM,EAAEwB,UAAU,CAAC,EAAEuD,KAAK,CACjC,CAAC;IACD,OAAO1D,EAAE;EACX;EAEA,IAAIsD,OAAO,EAAE;IACXnD,UAAU,CAACmD,OAAO,GAAGA,OAAO,CAACA,OAAO;IACpC,IAAIA,OAAO,CAACE,QAAQ,EAAE;MACpBrD,UAAU,CAACsD,eAAe,GAAGI,IAAI,CAACC,SAAS,CAACR,OAAO,CAACE,QAAQ,CAAC;IAC/D;EACF;EAEA,MAAMO,OAAO,GAAGpF,GAAG,CACjB,SAAS,EACT;IACEqB,EAAE,EAAEA,EAAE;IACNgE,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE9E,MAAM,CAACmB,GAAG,EAAEC,QAAQ,CAAC,CAAC;IAC5B2D,EAAE,EAAErE;EACN,CAAC,EACDlB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EACxB+E,KAAK,EACL/E,GAAG,CAAC,MAAM,EAAEwB,UAAU,CACxB,CAAC;EAED,IAAI;IACF,MAAMgE,UAAU,GAAGhF,MAAM,CAACiF,IAAI,CAACL,OAAO,CAAC;IACvC,IAAII,UAAU,IAAI,OAAQA,UAAU,CAASE,IAAI,KAAK,UAAU,EAAE;MAC/DF,UAAU,CACRE,IAAI,CAAC,MAAMC,OAAO,CAACC,GAAG,CAAC,sBAAsB,EAAE;QAAEvE;MAAG,CAAC,CAAC,CAAC,CACvDwE,KAAK,CAAEC,GAAG,IACTH,OAAO,CAACI,KAAK,CAAC,sBAAsB,EAAE;QACpC1E,EAAE;QACF+D,OAAO,EAAGU,GAAG,EAAUV;MACzB,CAAC,CACH,CAAC;IACL;EACF,CAAC,CAAC,OAAOW,KAAK,EAAE;IACdJ,OAAO,CAACI,KAAK,CAACA,KAAK,CAAC;EACtB;EACA,OAAO1E,EAAE;AACX","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { xml } from '@xmpp/client';
|
|
4
|
+
|
|
5
|
+
// XEP-0184 delivery receipt, broadcast to the room (mirrors
|
|
6
|
+
// sendMessageReaction.xmpp.ts) so every occupant can render tick state.
|
|
7
|
+
// The top-level stanza `from` gets rewritten to the room/nick by the MUC
|
|
8
|
+
// server, so the real xmppUsername travels in the <received> `from` attr.
|
|
9
|
+
export function sendReceivedReceipt(client, messageId, roomJid) {
|
|
10
|
+
const id = `message-received:${Date.now().toString()}`;
|
|
11
|
+
const message = xml('message', {
|
|
12
|
+
id,
|
|
13
|
+
type: 'groupchat',
|
|
14
|
+
from: client.jid?.toString(),
|
|
15
|
+
to: roomJid
|
|
16
|
+
}, xml('received', {
|
|
17
|
+
xmlns: 'urn:xmpp:receipts',
|
|
18
|
+
id: messageId,
|
|
19
|
+
from: client.jid?.toString()
|
|
20
|
+
}), xml('store', {
|
|
21
|
+
xmlns: 'urn:xmpp:hints'
|
|
22
|
+
}));
|
|
23
|
+
client.send(message);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=sendReceivedReceipt.xmpp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["xml","sendReceivedReceipt","client","messageId","roomJid","id","Date","now","toString","message","type","from","jid","to","xmlns","send"],"sourceRoot":"../../../../src","sources":["networking/xmpp/sendReceivedReceipt.xmpp.ts"],"mappings":";;AAAA,SAAiBA,GAAG,QAAQ,cAAc;;AAE1C;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CACjCC,MAAc,EACdC,SAAiB,EACjBC,OAAe,EACf;EACA,MAAMC,EAAE,GAAG,oBAAoBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE;EAEtD,MAAMC,OAAO,GAAGT,GAAG,CACjB,SAAS,EACT;IACEK,EAAE;IACFK,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAET,MAAM,CAACU,GAAG,EAAEJ,QAAQ,CAAC,CAAC;IAC5BK,EAAE,EAAET;EACN,CAAC,EACDJ,GAAG,CAAC,UAAU,EAAE;IACdc,KAAK,EAAE,mBAAmB;IAC1BT,EAAE,EAAEF,SAAS;IACbQ,IAAI,EAAET,MAAM,CAACU,GAAG,EAAEJ,QAAQ,CAAC;EAC7B,CAAC,CAAC,EACFR,GAAG,CAAC,OAAO,EAAE;IAAEc,KAAK,EAAE;EAAiB,CAAC,CAC1C,CAAC;EAEDZ,MAAM,CAACa,IAAI,CAACN,OAAO,CAAC;AACtB","ignoreList":[]}
|
|
@@ -11,6 +11,8 @@ import { sendPing } from './xmpp/sendPing.xmpp';
|
|
|
11
11
|
import { fetchHistoryPage, getHistory, getHistoryPage } from './xmpp/getHistory.xmpp';
|
|
12
12
|
import { sendTextMessage } from './xmpp/sendTextMessage.xmpp';
|
|
13
13
|
import { sendMessageReaction } from './xmpp/sendMessageReaction.xmpp';
|
|
14
|
+
import { sendReceivedReceipt } from './xmpp/sendReceivedReceipt.xmpp';
|
|
15
|
+
import { sendDisplayedMarker } from './xmpp/sendDisplayedMarker.xmpp';
|
|
14
16
|
import { sendTextMessageWithTranslateTag } from './xmpp/sendTextMessageWithTranslateTag.xmpp';
|
|
15
17
|
import { deleteMessage } from './xmpp/deleteMessage.xmpp';
|
|
16
18
|
import { RoomJoinManager } from './xmpp/roomJoinSweep';
|
|
@@ -35,6 +37,8 @@ import { getServerReadTimestamp, isCorruptFutureReadMarker } from '../helpers/ge
|
|
|
35
37
|
|
|
36
38
|
// Canonical production XMPP WSS endpoint (standard wss/443, no port suffix).
|
|
37
39
|
const DEFAULT_DEV_SERVER = 'xmpp.chat.ethora.com';
|
|
40
|
+
// Upper bound on remembered XEP-0184 acks (oldest forgotten first).
|
|
41
|
+
const RECEIPT_ACKED_CAP = 2000;
|
|
38
42
|
|
|
39
43
|
// How long to wait for the old client's stop() during a reconnect before
|
|
40
44
|
// giving up on it. Short on purpose: we are already tearing this client
|
|
@@ -208,6 +212,13 @@ export class XmppClient {
|
|
|
208
212
|
}
|
|
209
213
|
disableLastRead = false;
|
|
210
214
|
activeRoomJID = null;
|
|
215
|
+
// XEP-0184 acks already sent, as `room:messageId`. A message is acked once,
|
|
216
|
+
// whether it arrived live or again inside a MAM page. Oldest entries drop
|
|
217
|
+
// first once the set passes the cap.
|
|
218
|
+
receiptAckedIds = new Set();
|
|
219
|
+
// XEP-0333: the last read watermark sent per room. A repeat flush for the
|
|
220
|
+
// same newest message sends nothing.
|
|
221
|
+
lastWatermarkSentByRoom = new Map();
|
|
211
222
|
activeRoomBoostUntil = 0;
|
|
212
223
|
softPauseUntil = 0;
|
|
213
224
|
mamInFlightByRoom = new Map();
|
|
@@ -1391,6 +1402,59 @@ export class XmppClient {
|
|
|
1391
1402
|
const result = await this.createRoomStanza(title, description, to);
|
|
1392
1403
|
return typeof result === 'string' ? result : '';
|
|
1393
1404
|
}
|
|
1405
|
+
|
|
1406
|
+
/**
|
|
1407
|
+
* XEP-0184 delivery receipt for a message from someone else. Sent for live
|
|
1408
|
+
* messages and for messages a MAM page brings in; a message already acked
|
|
1409
|
+
* is skipped. When the stream is down (or `config.disableReadReceipts` is
|
|
1410
|
+
* on) nothing is recorded, so a later page can still ack it.
|
|
1411
|
+
*/
|
|
1412
|
+
sendReceivedReceiptStanza(messageId, roomJid) {
|
|
1413
|
+
// Privacy switch: with read receipts off this client stays silent, so
|
|
1414
|
+
// nobody learns that (or when) it received their message.
|
|
1415
|
+
if (store.getState().chatSettingStore.config?.disableReadReceipts) {
|
|
1416
|
+
return;
|
|
1417
|
+
}
|
|
1418
|
+
if (!messageId || !roomJid || !this.isStreamReady()) {
|
|
1419
|
+
return;
|
|
1420
|
+
}
|
|
1421
|
+
const jid = normalizeRoomJid(roomJid, this.conference);
|
|
1422
|
+
const key = `${jid}:${messageId}`;
|
|
1423
|
+
if (this.receiptAckedIds.has(key)) {
|
|
1424
|
+
return;
|
|
1425
|
+
}
|
|
1426
|
+
this.receiptAckedIds.add(key);
|
|
1427
|
+
if (this.receiptAckedIds.size > RECEIPT_ACKED_CAP) {
|
|
1428
|
+
const oldest = this.receiptAckedIds.values().next().value;
|
|
1429
|
+
if (oldest !== undefined) {
|
|
1430
|
+
this.receiptAckedIds.delete(oldest);
|
|
1431
|
+
}
|
|
1432
|
+
}
|
|
1433
|
+
sendReceivedReceipt(this.client, messageId, jid);
|
|
1434
|
+
}
|
|
1435
|
+
|
|
1436
|
+
/**
|
|
1437
|
+
* XEP-0333 read watermark for a room: the newest message the user has
|
|
1438
|
+
* displayed. Off with `disableLastRead` or `config.disableReadReceipts`.
|
|
1439
|
+
* The caller decides when the room counts as read (see computeReadWatermark).
|
|
1440
|
+
*/
|
|
1441
|
+
sendDisplayedMarkerStanza(messageId, roomJid) {
|
|
1442
|
+
if (this.disableLastRead) {
|
|
1443
|
+
return;
|
|
1444
|
+
}
|
|
1445
|
+
if (store.getState().chatSettingStore.config?.disableReadReceipts) {
|
|
1446
|
+
return;
|
|
1447
|
+
}
|
|
1448
|
+
if (!messageId || !roomJid || !this.isStreamReady()) {
|
|
1449
|
+
return;
|
|
1450
|
+
}
|
|
1451
|
+
const jid = normalizeRoomJid(roomJid, this.conference);
|
|
1452
|
+
if (this.lastWatermarkSentByRoom.get(jid) === messageId) {
|
|
1453
|
+
return;
|
|
1454
|
+
}
|
|
1455
|
+
this.lastWatermarkSentByRoom.set(jid, messageId);
|
|
1456
|
+
sendDisplayedMarker(this.client, messageId, jid);
|
|
1457
|
+
}
|
|
1394
1458
|
sendMessageReactionStanza(messageId, roomJid, reactionsList, data) {
|
|
1395
1459
|
sendMessageReaction(this.client, messageId, normalizeRoomJid(roomJid, this.conference), reactionsList, data || {});
|
|
1396
1460
|
}
|