@ethora/chat-component-rn 26.5.7 → 26.5.10
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 +133 -0
- package/README.md +67 -10
- package/index.js +24 -0
- package/lib/commonjs/assets/icons.js +5 -1
- package/lib/commonjs/assets/icons.js.map +1 -1
- package/lib/commonjs/components/ContextMenu/ContextMenuComponents.js +11 -5
- package/lib/commonjs/components/ContextMenu/ContextMenuComponents.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +64 -38
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +57 -13
- package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaMessage.js +4 -2
- package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageContainer.js +2 -2
- package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MessageList.js +165 -28
- package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js +17 -8
- package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/SystemMessage.js +34 -22
- package/lib/commonjs/components/MainComponents/SystemMessage.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/Message.js +84 -39
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js +82 -22
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +16 -4
- package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/DocumentViewer.js +104 -0
- package/lib/commonjs/components/Modals/FilePreviewModal/DocumentViewer.js.map +1 -0
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +140 -24
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +29 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/commonjs/components/Modals/Modal/Modal.js +5 -1
- package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/commonjs/components/Modals/ModalWrapper/ModalWrapper.js +77 -47
- package/lib/commonjs/components/Modals/ModalWrapper/ModalWrapper.js.map +1 -1
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +3 -3
- package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/styledModalComponents.js +4 -9
- package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/commonjs/components/styled/MediaFilePreview.js +47 -28
- package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/commonjs/components/styled/MessageImage.js +49 -9
- package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
- package/lib/commonjs/components/styled/NewMessageLabel.js +8 -6
- package/lib/commonjs/components/styled/NewMessageLabel.js.map +1 -1
- package/lib/commonjs/components/styled/SendInput.js +49 -27
- package/lib/commonjs/components/styled/SendInput.js.map +1 -1
- package/lib/commonjs/components/styled/StyledInputComponents/MediaComponents.js +14 -4
- package/lib/commonjs/components/styled/StyledInputComponents/MediaComponents.js.map +1 -1
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +7 -2
- package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/commonjs/components/styled/UnsupportedType.js +5 -1
- package/lib/commonjs/components/styled/UnsupportedType.js.map +1 -1
- package/lib/commonjs/components/styled/VideoMessage.js +60 -14
- package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
- package/lib/commonjs/context/MessageNotificationContext.js +7 -7
- package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +244 -32
- package/lib/commonjs/context/xmppProvider.js.map +1 -1
- package/lib/commonjs/helpers/chatAutoEnterer.js +2 -7
- package/lib/commonjs/helpers/chatAutoEnterer.js.map +1 -1
- package/lib/commonjs/helpers/historyPreloadScheduler.js +4 -1
- package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js +15 -5
- package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/commonjs/helpers/keyboardLayout.js +18 -0
- package/lib/commonjs/helpers/keyboardLayout.js.map +1 -0
- package/lib/commonjs/helpers/mediaDimensions.js +51 -0
- package/lib/commonjs/helpers/mediaDimensions.js.map +1 -0
- package/lib/commonjs/helpers/normalizeRoomJid.js +20 -0
- package/lib/commonjs/helpers/normalizeRoomJid.js.map +1 -0
- package/lib/commonjs/hooks/useChatRoomFocus.js +87 -0
- package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -0
- package/lib/commonjs/hooks/useHeapSender.js +1 -1
- package/lib/commonjs/hooks/useHeapSender.js.map +1 -1
- package/lib/commonjs/hooks/useLogout.js +3 -3
- package/lib/commonjs/hooks/useLogout.js.map +1 -1
- package/lib/commonjs/hooks/usePushNotifications.js +6 -2
- package/lib/commonjs/hooks/usePushNotifications.js.map +1 -1
- package/lib/commonjs/hooks/useRoomState.js +2 -0
- package/lib/commonjs/hooks/useRoomState.js.map +1 -1
- package/lib/commonjs/hooks/useSendMessage.js +201 -10
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js +12 -14
- package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
- package/lib/commonjs/main.js +7 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/auth.api.js +67 -0
- package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
- package/lib/commonjs/networking/apiClient.js +2 -1
- package/lib/commonjs/networking/apiClient.js.map +1 -1
- package/lib/commonjs/networking/outboundQueue.js +92 -0
- package/lib/commonjs/networking/outboundQueue.js.map +1 -0
- package/lib/commonjs/networking/xmpp/createTimeoutPromise.xmpp.js +4 -1
- package/lib/commonjs/networking/xmpp/createTimeoutPromise.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +7 -8
- package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
- package/lib/commonjs/networking/xmpp/getRoomsPaged.xmpp.js +26 -3
- package/lib/commonjs/networking/xmpp/getRoomsPaged.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +26 -8
- package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js +2 -1
- package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmppClient.js +294 -35
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +22 -6
- package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
- package/lib/commonjs/roomStore/roomsSlice.js +157 -23
- package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
- package/lib/commonjs/utils/installPromiseRejectionTracker.js +83 -0
- package/lib/commonjs/utils/installPromiseRejectionTracker.js.map +1 -0
- package/lib/commonjs/utils/resendMessage.js +1 -1
- package/lib/commonjs/utils/resendMessage.js.map +1 -1
- package/lib/module/assets/icons.js +5 -1
- package/lib/module/assets/icons.js.map +1 -1
- package/lib/module/components/ContextMenu/ContextMenuComponents.js +11 -5
- package/lib/module/components/ContextMenu/ContextMenuComponents.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +65 -39
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +57 -13
- package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/MediaMessage.js +4 -2
- package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/module/components/MainComponents/MessageContainer.js +2 -2
- package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
- package/lib/module/components/MainComponents/MessageList.js +166 -29
- package/lib/module/components/MainComponents/MessageList.js.map +1 -1
- package/lib/module/components/MainComponents/ReduxWrapper.js +18 -8
- package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/SystemMessage.js +33 -21
- package/lib/module/components/MainComponents/SystemMessage.js.map +1 -1
- package/lib/module/components/MessageBubble/Message.js +85 -40
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js +84 -24
- package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js +15 -3
- package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/DocumentViewer.js +99 -0
- package/lib/module/components/Modals/FilePreviewModal/DocumentViewer.js.map +1 -0
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +143 -25
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js +31 -3
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/module/components/Modals/Modal/Modal.js +5 -1
- package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
- package/lib/module/components/Modals/ModalWrapper/ModalWrapper.js +79 -49
- package/lib/module/components/Modals/ModalWrapper/ModalWrapper.js.map +1 -1
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +3 -3
- package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
- package/lib/module/components/Modals/styledModalComponents.js +4 -9
- package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
- package/lib/module/components/styled/MediaFilePreview.js +47 -28
- package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/module/components/styled/MessageImage.js +51 -11
- package/lib/module/components/styled/MessageImage.js.map +1 -1
- package/lib/module/components/styled/NewMessageLabel.js +8 -6
- package/lib/module/components/styled/NewMessageLabel.js.map +1 -1
- package/lib/module/components/styled/SendInput.js +50 -28
- package/lib/module/components/styled/SendInput.js.map +1 -1
- package/lib/module/components/styled/StyledInputComponents/MediaComponents.js +14 -4
- package/lib/module/components/styled/StyledInputComponents/MediaComponents.js.map +1 -1
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +7 -2
- package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
- package/lib/module/components/styled/UnsupportedType.js +5 -1
- package/lib/module/components/styled/UnsupportedType.js.map +1 -1
- package/lib/module/components/styled/VideoMessage.js +61 -15
- package/lib/module/components/styled/VideoMessage.js.map +1 -1
- package/lib/module/context/MessageNotificationContext.js +7 -7
- package/lib/module/context/MessageNotificationContext.js.map +1 -1
- package/lib/module/context/xmppProvider.js +246 -34
- package/lib/module/context/xmppProvider.js.map +1 -1
- package/lib/module/helpers/chatAutoEnterer.js +2 -7
- package/lib/module/helpers/chatAutoEnterer.js.map +1 -1
- package/lib/module/helpers/historyPreloadScheduler.js +4 -1
- package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
- package/lib/module/helpers/insertMessageWithDelimiter.js +15 -5
- package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
- package/lib/module/helpers/keyboardLayout.js +12 -0
- package/lib/module/helpers/keyboardLayout.js.map +1 -0
- package/lib/module/helpers/mediaDimensions.js +46 -0
- package/lib/module/helpers/mediaDimensions.js.map +1 -0
- package/lib/module/helpers/normalizeRoomJid.js +15 -0
- package/lib/module/helpers/normalizeRoomJid.js.map +1 -0
- package/lib/module/hooks/useChatRoomFocus.js +82 -0
- package/lib/module/hooks/useChatRoomFocus.js.map +1 -0
- package/lib/module/hooks/useHeapSender.js +1 -1
- package/lib/module/hooks/useHeapSender.js.map +1 -1
- package/lib/module/hooks/useLogout.js +3 -3
- package/lib/module/hooks/useLogout.js.map +1 -1
- package/lib/module/hooks/usePushNotifications.js +6 -2
- package/lib/module/hooks/usePushNotifications.js.map +1 -1
- package/lib/module/hooks/useRoomState.js +2 -0
- package/lib/module/hooks/useRoomState.js.map +1 -1
- package/lib/module/hooks/useSendMessage.js +203 -12
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/hooks/useUnreadMessagesCounter.js +12 -14
- package/lib/module/hooks/useUnreadMessagesCounter.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 +67 -1
- package/lib/module/networking/api-requests/auth.api.js.map +1 -1
- package/lib/module/networking/apiClient.js +2 -1
- package/lib/module/networking/apiClient.js.map +1 -1
- package/lib/module/networking/outboundQueue.js +84 -0
- package/lib/module/networking/outboundQueue.js.map +1 -0
- package/lib/module/networking/xmpp/createTimeoutPromise.xmpp.js +4 -1
- package/lib/module/networking/xmpp/createTimeoutPromise.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +7 -8
- package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
- package/lib/module/networking/xmpp/getRoomsPaged.xmpp.js +26 -3
- package/lib/module/networking/xmpp/getRoomsPaged.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +26 -8
- package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
- package/lib/module/networking/xmpp/sendTextMessage.xmpp.js +2 -1
- package/lib/module/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
- package/lib/module/networking/xmppClient.js +294 -35
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/Middleware/unreadMidlleware.js +22 -6
- package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
- package/lib/module/roomStore/roomsSlice.js +154 -22
- package/lib/module/roomStore/roomsSlice.js.map +1 -1
- package/lib/module/utils/installPromiseRejectionTracker.js +78 -0
- package/lib/module/utils/installPromiseRejectionTracker.js.map +1 -0
- package/lib/module/utils/resendMessage.js +1 -1
- package/lib/module/utils/resendMessage.js.map +1 -1
- package/lib/typescript/assets/icons.d.ts +8 -4
- package/lib/typescript/assets/icons.d.ts.map +1 -1
- package/lib/typescript/components/ContextMenu/ContextMenuComponents.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/MediaMessage.d.ts +1 -0
- package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts +1 -0
- package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/SystemMessage.d.ts +0 -7
- package/lib/typescript/components/MainComponents/SystemMessage.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
- package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +4 -2
- package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
- package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/DocumentViewer.d.ts +29 -0
- package/lib/typescript/components/Modals/FilePreviewModal/DocumentViewer.d.ts.map +1 -0
- package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts +0 -1
- package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
- package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ModalWrapper/ModalWrapper.d.ts.map +1 -1
- package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/MediaFilePreview.d.ts.map +1 -1
- package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
- package/lib/typescript/components/styled/NewMessageLabel.d.ts +1 -5
- package/lib/typescript/components/styled/NewMessageLabel.d.ts.map +1 -1
- package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledInputComponents/MediaComponents.d.ts +9 -1
- package/lib/typescript/components/styled/StyledInputComponents/MediaComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
- package/lib/typescript/components/styled/UnsupportedType.d.ts +1 -0
- package/lib/typescript/components/styled/UnsupportedType.d.ts.map +1 -1
- package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.d.ts +1 -0
- package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
- package/lib/typescript/helpers/chatAutoEnterer.d.ts.map +1 -1
- package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
- package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
- package/lib/typescript/helpers/keyboardLayout.d.ts +9 -0
- package/lib/typescript/helpers/keyboardLayout.d.ts.map +1 -0
- package/lib/typescript/helpers/mediaDimensions.d.ts +9 -0
- package/lib/typescript/helpers/mediaDimensions.d.ts.map +1 -0
- package/lib/typescript/helpers/normalizeRoomJid.d.ts +2 -0
- package/lib/typescript/helpers/normalizeRoomJid.d.ts.map +1 -0
- package/lib/typescript/hooks/useChatRoomFocus.d.ts +42 -0
- package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -0
- package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
- package/lib/typescript/hooks/usePushNotifications.d.ts.map +1 -1
- package/lib/typescript/hooks/useRoomState.d.ts +1 -0
- package/lib/typescript/hooks/useRoomState.d.ts.map +1 -1
- package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +1 -0
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts +3 -0
- package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
- package/lib/typescript/networking/apiClient.d.ts.map +1 -1
- package/lib/typescript/networking/outboundQueue.d.ts +57 -0
- package/lib/typescript/networking/outboundQueue.d.ts.map +1 -0
- package/lib/typescript/networking/xmpp/createTimeoutPromise.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +1 -1
- package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/getRoomsPaged.xmpp.d.ts +1 -1
- package/lib/typescript/networking/xmpp/getRoomsPaged.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendTextMessage.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmppClient.d.ts +33 -4
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts +8 -1
- package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
- package/lib/typescript/types/models/media.model.d.ts +1 -0
- package/lib/typescript/types/models/media.model.d.ts.map +1 -1
- package/lib/typescript/types/models/xmpp.model.d.ts +1 -1
- package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +4 -0
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/utils/installPromiseRejectionTracker.d.ts +20 -0
- package/lib/typescript/utils/installPromiseRejectionTracker.d.ts.map +1 -0
- package/lib/typescript/utils/resendMessage.d.ts.map +1 -1
- package/package.json +18 -2
- package/src/assets/icons.tsx +23 -14
- package/src/components/ContextMenu/ContextMenuComponents.tsx +10 -5
- package/src/components/MainComponents/ChatRoom.tsx +81 -66
- package/src/components/MainComponents/ChatWrapper.tsx +99 -21
- package/src/components/MainComponents/MediaMessage.tsx +3 -0
- package/src/components/MainComponents/MessageContainer.tsx +4 -2
- package/src/components/MainComponents/MessageList.tsx +175 -28
- package/src/components/MainComponents/ReduxWrapper.tsx +19 -9
- package/src/components/MainComponents/SystemMessage.tsx +38 -26
- package/src/components/MessageBubble/Message.tsx +91 -62
- package/src/components/MessageBubble/MessageInteractions.tsx +98 -29
- package/src/components/Modals/AttachSheet/AttachSheet.tsx +17 -3
- package/src/components/Modals/FilePreviewModal/DocumentViewer.tsx +93 -0
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +152 -25
- package/src/components/Modals/FilePreviewModal/PdfView.tsx +32 -4
- package/src/components/Modals/Modal/Modal.tsx +4 -1
- package/src/components/Modals/ModalWrapper/ModalWrapper.tsx +70 -58
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +19 -15
- package/src/components/Modals/styledModalComponents.tsx +4 -9
- package/src/components/styled/MediaFilePreview.tsx +46 -26
- package/src/components/styled/MessageImage.tsx +58 -13
- package/src/components/styled/NewMessageLabel.tsx +8 -5
- package/src/components/styled/SendInput.tsx +64 -29
- package/src/components/styled/StyledInputComponents/MediaComponents.tsx +15 -5
- package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +7 -2
- package/src/components/styled/UnsupportedType.tsx +7 -1
- package/src/components/styled/VideoMessage.tsx +59 -11
- package/src/context/MessageNotificationContext.tsx +8 -8
- package/src/context/xmppProvider.tsx +247 -30
- package/src/helpers/chatAutoEnterer.ts +2 -8
- package/src/helpers/historyPreloadScheduler.ts +4 -1
- package/src/helpers/insertMessageWithDelimiter.ts +22 -15
- package/src/helpers/keyboardLayout.ts +18 -0
- package/src/helpers/mediaDimensions.ts +47 -0
- package/src/helpers/normalizeRoomJid.ts +6 -0
- package/src/hooks/useChatRoomFocus.ts +95 -0
- package/src/hooks/useHeapSender.tsx +2 -1
- package/src/hooks/useLogout.tsx +3 -3
- package/src/hooks/usePushNotifications.ts +21 -8
- package/src/hooks/useRoomState.tsx +4 -0
- package/src/hooks/useSendMessage.tsx +258 -13
- package/src/hooks/useUnreadMessagesCounter.ts +13 -16
- package/src/main.ts +1 -0
- package/src/networking/api-requests/auth.api.ts +55 -1
- package/src/networking/apiClient.ts +2 -1
- package/src/networking/outboundQueue.ts +98 -0
- package/src/networking/xmpp/createTimeoutPromise.xmpp.ts +5 -1
- package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +11 -13
- package/src/networking/xmpp/getRoomsPaged.xmpp.ts +27 -3
- package/src/networking/xmpp/presenceInRoom.xmpp.ts +24 -9
- package/src/networking/xmpp/sendTextMessage.xmpp.ts +2 -1
- package/src/networking/xmppClient.ts +317 -43
- package/src/roomStore/Middleware/unreadMidlleware.tsx +23 -5
- package/src/roomStore/roomsSlice.ts +177 -27
- package/src/types/models/media.model.ts +3 -0
- package/src/types/models/xmpp.model.ts +2 -1
- package/src/types/types.ts +15 -0
- package/src/utils/installPromiseRejectionTracker.ts +91 -0
- package/src/utils/resendMessage.ts +2 -1
|
@@ -59,7 +59,12 @@ const isOwnMessage = (msg, selfXmpp, selfWallet) => {
|
|
|
59
59
|
// events, typing-indicator setComposing, etc. — and walked every room's
|
|
60
60
|
// messages array looking for a count delta that almost never came. For
|
|
61
61
|
// 50 rooms × 100 messages that's 5000 Date() parses per modal click.
|
|
62
|
-
const TRIGGER_ACTIONS = new Set(['roomMessages/addRoomMessage', 'roomMessages/setRoomMessages', 'roomMessages/editRoomMessage', 'roomMessages/setLastViewedTimestamp', 'roomMessages/setCurrentRoom', 'roomMessages/addRoom', 'roomMessages/updateRoom'
|
|
62
|
+
const TRIGGER_ACTIONS = new Set(['roomMessages/addRoomMessage', 'roomMessages/setRoomMessages', 'roomMessages/editRoomMessage', 'roomMessages/setLastViewedTimestamp', 'roomMessages/setCurrentRoom', 'roomMessages/setVisibleRoom', 'roomMessages/clearVisibleRoom', 'roomMessages/addRoom', 'roomMessages/updateRoom',
|
|
63
|
+
// The history preload scheduler merges fetched pages via this action on
|
|
64
|
+
// re-entry; recompute so unread reflects messages that arrived while the
|
|
65
|
+
// app was away (the per-room fingerprint cache below skips no-op batches,
|
|
66
|
+
// e.g. the 'loading' marker dispatch that carries no messages).
|
|
67
|
+
'roomMessages/applyRoomsPreloadBatch']);
|
|
63
68
|
const unreadMiddleware = storeAPI => next => action => {
|
|
64
69
|
if (!action || !action.type) {
|
|
65
70
|
console.error('Invalid action in unreadMiddleware:', action);
|
|
@@ -84,7 +89,7 @@ const unreadMiddleware = storeAPI => next => action => {
|
|
|
84
89
|
}
|
|
85
90
|
const state = storeAPI.getState();
|
|
86
91
|
const rooms = state.rooms.rooms;
|
|
87
|
-
const
|
|
92
|
+
const visibleRoomJID = state.rooms.visibleRoomJID;
|
|
88
93
|
const selfUser = state.chatSettingStore?.user;
|
|
89
94
|
const selfXmpp = selfUser?.xmppUsername || '';
|
|
90
95
|
const selfWallet = selfUser?.walletAddress || '';
|
|
@@ -94,13 +99,24 @@ const unreadMiddleware = storeAPI => next => action => {
|
|
|
94
99
|
if (!room) {
|
|
95
100
|
return;
|
|
96
101
|
}
|
|
97
|
-
// Skip rooms the user is currently viewing —
|
|
98
|
-
//
|
|
99
|
-
//
|
|
102
|
+
// Skip rooms the user is currently viewing — visibility clears the
|
|
103
|
+
// badge directly. Skip rooms with no reference point (covers
|
|
104
|
+
// undefined / null / 0) — after logout→login, hydrated rooms
|
|
100
105
|
// come back without lastViewedTimestamp, and treating that as 0
|
|
101
106
|
// made every history message satisfy `date > 0` and incorrectly
|
|
102
107
|
// bumped unread for already-seen content.
|
|
103
|
-
if (
|
|
108
|
+
if (jid === visibleRoomJID) {
|
|
109
|
+
if (room.unreadMessages !== 0) {
|
|
110
|
+
storeAPI.dispatch((0, _roomsSlice.updateRoom)({
|
|
111
|
+
jid,
|
|
112
|
+
updates: {
|
|
113
|
+
unreadMessages: 0
|
|
114
|
+
}
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (!(room.lastViewedTimestamp > 0)) {
|
|
104
120
|
return;
|
|
105
121
|
}
|
|
106
122
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_roomsSlice","require","triggerCache","norm","s","v","String","toLowerCase","split","replace","isOwnMessage","msg","selfXmpp","selfWallet","candidates","user","id","userJID","xmppUsername","xmppFrom","filter","Boolean","length","self","Set","c","has","TRIGGER_ACTIONS","unreadMiddleware","storeAPI","next","action","type","console","error","result","state","getState","rooms","
|
|
1
|
+
{"version":3,"names":["_roomsSlice","require","triggerCache","norm","s","v","String","toLowerCase","split","replace","isOwnMessage","msg","selfXmpp","selfWallet","candidates","user","id","userJID","xmppUsername","xmppFrom","filter","Boolean","length","self","Set","c","has","TRIGGER_ACTIONS","unreadMiddleware","storeAPI","next","action","type","console","error","result","state","getState","rooms","visibleRoomJID","selfUser","chatSettingStore","walletAddress","Object","keys","forEach","jid","room","unreadMessages","dispatch","updateRoom","updates","lastViewedTimestamp","currentMessagesLength","messages","fingerprint","unreadMessagesCount","pending","msgSortableMs","exports"],"sourceRoot":"../../../../src","sources":["roomStore/Middleware/unreadMidlleware.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.updateRoom = exports.setRoomRole = exports.setRoomNoMessages = exports.setRoomMessages = exports.setReactions = exports.setPendingNotificationJid = exports.setLogoutState = exports.setLastViewedTimestamp = exports.setIsLoading = exports.setEditAction = exports.setCurrentRoom = exports.setComposing = exports.setCloseActiveMessage = exports.setActiveMessage = exports.roomsStore = exports.msgSortableMs = exports.editRoomMessage = exports.deleteRoomMessage = exports.deleteRoom = exports.deleteAllRooms = exports.default = exports.clearPendingNotificationJid = exports.applyRoomsPreloadBatch = exports.addRoomViaApi = exports.addRoomMessage = exports.addRoom = void 0;
|
|
6
|
+
exports.updateRoom = exports.setVisibleRoom = exports.setRoomRole = exports.setRoomNoMessages = exports.setRoomMessages = exports.setReactions = exports.setPendingNotificationJid = exports.setLogoutState = exports.setLastViewedTimestamp = exports.setIsLoading = exports.setEditAction = exports.setCurrentRoom = exports.setComposing = exports.setCloseActiveMessage = exports.setActiveMessage = exports.roomsStore = exports.msgSortableMs = exports.editRoomMessage = exports.deleteRoomMessage = exports.deleteRoom = exports.deleteAllRooms = exports.default = exports.clearVisibleRoom = exports.clearPendingNotificationJid = exports.applyRoomsPreloadBatch = exports.addRoomViaApi = exports.addRoomMessage = exports.addRoom = void 0;
|
|
7
7
|
var _toolkit = require("@reduxjs/toolkit");
|
|
8
8
|
var _insertMessageWithDelimiter = require("../helpers/insertMessageWithDelimiter");
|
|
9
9
|
// Per-room runtime message cap. Mirrors the persistence layer's
|
|
@@ -23,9 +23,62 @@ const enforceMessageCap = messages => {
|
|
|
23
23
|
messages.shift();
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
|
+
|
|
27
|
+
// Merge a freshly-fetched recent history page into a room's cached
|
|
28
|
+
// messages instead of REPLACING them — so re-entering the app no longer
|
|
29
|
+
// wipes older history (and the unread derived from it). Mirrors the web
|
|
30
|
+
// SDK's incremental sync:
|
|
31
|
+
// • union + dedupe by message id (the server-authoritative,
|
|
32
|
+
// microsecond-resolution stanza id) — overlapping messages collapse
|
|
33
|
+
// and older cached history is kept;
|
|
34
|
+
// • if the fetched page shares NO id with the cache, a gap has opened
|
|
35
|
+
// (more than a page of new messages arrived while away) and stitching
|
|
36
|
+
// them would leave a hole — so we clear THIS chat's cache and keep
|
|
37
|
+
// just the fresh page;
|
|
38
|
+
// • locally-pending (optimistic) sends are always preserved;
|
|
39
|
+
// • an empty fetch leaves the cache untouched (the old replace wiped it);
|
|
40
|
+
// • the transient 'delimiter-new' marker is dropped (the realtime insert
|
|
41
|
+
// path re-derives it) so it can't mis-sort.
|
|
42
|
+
// `function` (hoisted) so the reducers above can call it regardless of
|
|
43
|
+
// where it sits in the file. msgSortableMs (defined below) is referenced
|
|
44
|
+
// at call time, after module init.
|
|
45
|
+
function mergeHistoryIntoCache(existing, fetched) {
|
|
46
|
+
const ex = Array.isArray(existing) ? existing : [];
|
|
47
|
+
const fe = Array.isArray(fetched) ? fetched : [];
|
|
48
|
+
const pending = ex.filter(m => m?.pending);
|
|
49
|
+
const realExisting = ex.filter(m => m && !m.pending && m.id !== 'delimiter-new');
|
|
50
|
+
const realFetched = fe.filter(m => m && m.id !== 'delimiter-new');
|
|
51
|
+
|
|
52
|
+
// Nothing usable came back → keep the cache exactly as it was.
|
|
53
|
+
if (realFetched.length === 0) {
|
|
54
|
+
return ex;
|
|
55
|
+
}
|
|
56
|
+
const byMs = (a, b) => msgSortableMs(a) - msgSortableMs(b);
|
|
57
|
+
const capTail = arr => arr.length > RUNTIME_MESSAGE_LIMIT ? arr.slice(-RUNTIME_MESSAGE_LIMIT) : arr;
|
|
58
|
+
const existingIds = new Set(realExisting.map(m => String(m.id)));
|
|
59
|
+
const overlaps = realFetched.some(m => existingIds.has(String(m.id)));
|
|
60
|
+
|
|
61
|
+
// Cold room, or a gap (no shared id) → can't merge → use the fresh page.
|
|
62
|
+
if (realExisting.length === 0 || !overlaps) {
|
|
63
|
+
return [...capTail(realFetched.slice().sort(byMs)), ...pending];
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// Overlap → union + dedupe by id. Fetched wins on collision: it carries
|
|
67
|
+
// the freshest server state (reactions / edits / deletions).
|
|
68
|
+
const byId = new Map();
|
|
69
|
+
for (const m of realExisting) {
|
|
70
|
+
byId.set(String(m.id), m);
|
|
71
|
+
}
|
|
72
|
+
for (const m of realFetched) {
|
|
73
|
+
byId.set(String(m.id), m);
|
|
74
|
+
}
|
|
75
|
+
const merged = Array.from(byId.values()).sort(byMs);
|
|
76
|
+
return [...capTail(merged), ...pending];
|
|
77
|
+
}
|
|
26
78
|
const initialState = {
|
|
27
79
|
rooms: {},
|
|
28
80
|
activeRoomJID: null,
|
|
81
|
+
visibleRoomJID: null,
|
|
29
82
|
isLoading: false,
|
|
30
83
|
editAction: {
|
|
31
84
|
isEdit: false,
|
|
@@ -62,16 +115,59 @@ const reducers = {
|
|
|
62
115
|
roomData
|
|
63
116
|
} = action.payload;
|
|
64
117
|
const existing = state.rooms[roomData.jid];
|
|
65
|
-
//
|
|
66
|
-
//
|
|
67
|
-
//
|
|
68
|
-
//
|
|
69
|
-
//
|
|
70
|
-
//
|
|
71
|
-
|
|
118
|
+
// Default-marker resolution (cold-start unread bug):
|
|
119
|
+
// 1. Explicit value on the payload wins.
|
|
120
|
+
// 2. Existing redux value wins (preserves persisted/hydrated
|
|
121
|
+
// markers when the privateStore pull lands before
|
|
122
|
+
// /chats/my).
|
|
123
|
+
// 3. Otherwise, anchor to the *newest known message* in the
|
|
124
|
+
// payload — this marks everything currently in the room
|
|
125
|
+
// as "seen" but lets any NEWER incoming message count as
|
|
126
|
+
// unread. Previously this fell back to `Date.now()`, which
|
|
127
|
+
// stamped a future-leaning marker that hid genuinely-new
|
|
128
|
+
// messages received while the app was closed.
|
|
129
|
+
// 4. If there are no messages at all yet, stamp `0` (=
|
|
130
|
+
// "unknown — let the privateStore hydration set the real
|
|
131
|
+
// marker before any future message arrives").
|
|
132
|
+
let lastViewed;
|
|
133
|
+
// Treat an incoming `0` as "unset". stanzaHandlers' addRoom passes
|
|
134
|
+
// `lastViewedTimestamp: 0` as a placeholder; the old `!= null` check
|
|
135
|
+
// let that 0 win and OVERWROTE the persisted/hydrated marker from
|
|
136
|
+
// the previous session, so cold-start showed no unread badge for
|
|
137
|
+
// messages received while the app was closed (bug #19/#20). A real
|
|
138
|
+
// (non-zero) explicit value still wins; otherwise keep the existing
|
|
139
|
+
// value; otherwise anchor to the newest message in the payload.
|
|
140
|
+
if (roomData.lastViewedTimestamp != null && roomData.lastViewedTimestamp !== 0) {
|
|
141
|
+
lastViewed = roomData.lastViewedTimestamp;
|
|
142
|
+
} else if (existing?.lastViewedTimestamp != null) {
|
|
143
|
+
lastViewed = existing.lastViewedTimestamp;
|
|
144
|
+
} else {
|
|
145
|
+
const msgs = roomData.messages || [];
|
|
146
|
+
let newest = 0;
|
|
147
|
+
for (const m of msgs) {
|
|
148
|
+
const t = m?.messageTimestampMs || (m?.date ? new Date(m.date).getTime() : 0);
|
|
149
|
+
if (t > newest) {
|
|
150
|
+
newest = t;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
lastViewed = newest; // 0 if no messages → cold-start safe
|
|
154
|
+
}
|
|
155
|
+
// Preserve cached messages + unread when the incoming room carries
|
|
156
|
+
// none. The /chats/my fetch (rooms.api) builds rooms with
|
|
157
|
+
// `messages: []` and no unread; without this guard, re-entering the
|
|
158
|
+
// app replaced every cached room with an empty one — wiping history
|
|
159
|
+
// AND the unread badge before the history scheduler could re-merge
|
|
160
|
+
// (the user's "it clears cache, unread and messages" bug). New rooms
|
|
161
|
+
// (no existing) fall through to the incoming values. Mirrors
|
|
162
|
+
// addRoomFromApi's preservation.
|
|
163
|
+
const incomingMessages = Array.isArray(roomData.messages) ? roomData.messages : [];
|
|
164
|
+
const existingMessages = Array.isArray(existing?.messages) ? existing.messages : [];
|
|
72
165
|
state.rooms[roomData.jid] = {
|
|
73
166
|
...roomData,
|
|
74
|
-
|
|
167
|
+
messages: existingMessages.length > 0 ? existingMessages : incomingMessages,
|
|
168
|
+
lastViewedTimestamp: lastViewed,
|
|
169
|
+
unreadMessages: roomData.unreadMessages ?? existing?.unreadMessages ?? 0,
|
|
170
|
+
unreadBaselineTimestamp: existing?.unreadBaselineTimestamp ?? existing?.lastViewedTimestamp ?? roomData.unreadBaselineTimestamp ?? 0
|
|
75
171
|
};
|
|
76
172
|
},
|
|
77
173
|
deleteRoom(state, action) {
|
|
@@ -80,6 +176,9 @@ const reducers = {
|
|
|
80
176
|
} = action.payload;
|
|
81
177
|
if (state.rooms[jid]) {
|
|
82
178
|
delete state.rooms[jid];
|
|
179
|
+
if (state.visibleRoomJID === jid) {
|
|
180
|
+
state.visibleRoomJID = null;
|
|
181
|
+
}
|
|
83
182
|
}
|
|
84
183
|
},
|
|
85
184
|
updateRoom(state, action) {
|
|
@@ -113,13 +212,27 @@ const reducers = {
|
|
|
113
212
|
roomJID,
|
|
114
213
|
messageId
|
|
115
214
|
} = action.payload;
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
message.isDeleted = true;
|
|
120
|
-
}
|
|
121
|
-
});
|
|
215
|
+
const room = state.rooms[roomJID];
|
|
216
|
+
if (!room?.messages) {
|
|
217
|
+
return;
|
|
122
218
|
}
|
|
219
|
+
// The "New messages" divider is a transient UI marker, not a real
|
|
220
|
+
// message — SPLICE it out so it can be re-inserted for the next
|
|
221
|
+
// unread batch. Marking it isDeleted (like a real message) left it in
|
|
222
|
+
// the array, where insertMessageWithDelimiter's "already present"
|
|
223
|
+
// guard then blocked every future divider (one-shot bug).
|
|
224
|
+
if (messageId === 'delimiter-new') {
|
|
225
|
+
const idx = room.messages.findIndex(m => m.id === 'delimiter-new');
|
|
226
|
+
if (idx !== -1) {
|
|
227
|
+
room.messages.splice(idx, 1);
|
|
228
|
+
}
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
room.messages.map(message => {
|
|
232
|
+
if (message.id === messageId) {
|
|
233
|
+
message.isDeleted = true;
|
|
234
|
+
}
|
|
235
|
+
});
|
|
123
236
|
},
|
|
124
237
|
setEditAction: (state, action) => {
|
|
125
238
|
if (action.payload?.isEdit) {
|
|
@@ -171,7 +284,8 @@ const reducers = {
|
|
|
171
284
|
if (roomMessages.length === 0 || start) {
|
|
172
285
|
roomMessages.unshift(message);
|
|
173
286
|
} else {
|
|
174
|
-
const
|
|
287
|
+
const lastViewedValue = state.rooms[roomJID].lastViewedTimestamp;
|
|
288
|
+
const lastViewedTimestamp = state.visibleRoomJID === roomJID ? null : lastViewedValue ? new Date(lastViewedValue) : null;
|
|
175
289
|
(0, _insertMessageWithDelimiter.insertMessageWithDelimiter)(roomMessages, message, lastViewedTimestamp);
|
|
176
290
|
}
|
|
177
291
|
|
|
@@ -185,6 +299,7 @@ const reducers = {
|
|
|
185
299
|
},
|
|
186
300
|
deleteAllRooms(state) {
|
|
187
301
|
state.rooms = {};
|
|
302
|
+
state.visibleRoomJID = null;
|
|
188
303
|
},
|
|
189
304
|
setComposing(state, action) {
|
|
190
305
|
const {
|
|
@@ -214,10 +329,12 @@ const reducers = {
|
|
|
214
329
|
} = action.payload;
|
|
215
330
|
if (state.rooms[chatJID]) {
|
|
216
331
|
state.rooms[chatJID].lastViewedTimestamp = timestamp;
|
|
217
|
-
//
|
|
218
|
-
// unread
|
|
219
|
-
//
|
|
220
|
-
|
|
332
|
+
// A non-positive timestamp means "no persisted marker yet" and
|
|
333
|
+
// must not inflate unread from history that predates the first
|
|
334
|
+
// successful private-store hydration. The visible-room state is
|
|
335
|
+
// tracked separately via `visibleRoomJID`; no read/unread meaning
|
|
336
|
+
// is encoded in the timestamp itself anymore.
|
|
337
|
+
if (!(timestamp > 0)) {
|
|
221
338
|
state.rooms[chatJID].unreadMessages = 0;
|
|
222
339
|
} else {
|
|
223
340
|
state.rooms[chatJID].unreadMessages = countNewerMessages(state.rooms[chatJID].messages, timestamp);
|
|
@@ -247,6 +364,16 @@ const reducers = {
|
|
|
247
364
|
// back button from chat → return to RoomList). Mirrors web.
|
|
248
365
|
state.activeRoomJID = action.payload.roomJID || '';
|
|
249
366
|
},
|
|
367
|
+
setVisibleRoom: (state, action) => {
|
|
368
|
+
state.visibleRoomJID = action.payload.roomJID || null;
|
|
369
|
+
const jid = state.visibleRoomJID;
|
|
370
|
+
if (jid && state.rooms[jid]) {
|
|
371
|
+
state.rooms[jid].unreadMessages = 0;
|
|
372
|
+
}
|
|
373
|
+
},
|
|
374
|
+
clearVisibleRoom: state => {
|
|
375
|
+
state.visibleRoomJID = null;
|
|
376
|
+
},
|
|
250
377
|
/**
|
|
251
378
|
* Stash a JID that a push notification asked us to open before
|
|
252
379
|
* the rooms list has loaded. The Chat component clears this once
|
|
@@ -283,6 +410,7 @@ const reducers = {
|
|
|
283
410
|
setLogoutState: state => {
|
|
284
411
|
state.rooms = {};
|
|
285
412
|
state.activeRoomJID = null;
|
|
413
|
+
state.visibleRoomJID = null;
|
|
286
414
|
state.isLoading = false;
|
|
287
415
|
},
|
|
288
416
|
setActiveMessage: (state, action) => {
|
|
@@ -361,9 +489,11 @@ const reducers = {
|
|
|
361
489
|
room.historyComplete = patch.historyComplete;
|
|
362
490
|
}
|
|
363
491
|
if (Array.isArray(patch.messages)) {
|
|
364
|
-
// Merge
|
|
365
|
-
|
|
366
|
-
|
|
492
|
+
// Merge the fetched page into cache by message id rather than
|
|
493
|
+
// replacing — preserves older history + unread on re-entry. Only
|
|
494
|
+
// a true gap (no overlapping id) clears this chat's cache. See
|
|
495
|
+
// mergeHistoryIntoCache.
|
|
496
|
+
room.messages = mergeHistoryIntoCache(room.messages, patch.messages);
|
|
367
497
|
}
|
|
368
498
|
}
|
|
369
499
|
}
|
|
@@ -457,6 +587,8 @@ const {
|
|
|
457
587
|
setLastViewedTimestamp,
|
|
458
588
|
setRoomNoMessages,
|
|
459
589
|
setCurrentRoom,
|
|
590
|
+
setVisibleRoom,
|
|
591
|
+
clearVisibleRoom,
|
|
460
592
|
setRoomRole,
|
|
461
593
|
setLogoutState,
|
|
462
594
|
setActiveMessage,
|
|
@@ -478,6 +610,8 @@ exports.setCloseActiveMessage = setCloseActiveMessage;
|
|
|
478
610
|
exports.setActiveMessage = setActiveMessage;
|
|
479
611
|
exports.setLogoutState = setLogoutState;
|
|
480
612
|
exports.setRoomRole = setRoomRole;
|
|
613
|
+
exports.clearVisibleRoom = clearVisibleRoom;
|
|
614
|
+
exports.setVisibleRoom = setVisibleRoom;
|
|
481
615
|
exports.setCurrentRoom = setCurrentRoom;
|
|
482
616
|
exports.setRoomNoMessages = setRoomNoMessages;
|
|
483
617
|
exports.setLastViewedTimestamp = setLastViewedTimestamp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_toolkit","require","_insertMessageWithDelimiter","RUNTIME_MESSAGE_LIMIT","enforceMessageCap","messages","length","shift","initialState","rooms","activeRoomJID","isLoading","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","isValidRoomJid","jid","includes","addRoomViaApi","exports","createAsyncThunk","room","xmpp","_xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","state","action","roomData","payload","existing","lastViewed","lastViewedTimestamp","Date","now","deleteRoom","updateRoom","updates","existingRoom","setRoomMessages","roomJID","capped","slice","deleteRoomMessage","map","message","id","isDeleted","setEditAction","editRoomMessage","body","addRoomMessage","start","roomMessages","lengthBefore","unshift","insertMessageWithDelimiter","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setLastViewedTimestamp","timestamp","unreadMessages","countNewerMessages","setRoomRole","role","setRoomNoMessages","value","noMessages","setCurrentRoom","setPendingNotificationJid","clearPendingNotificationJid","setReactions","reactions","msg","setLogoutState","setActiveMessage","activeMessage","setCloseActiveMessage","incomingMessages","Array","isArray","existingMessages","title","usersCnt","incoming","previous","Math","max","icon","unreadBaselineTimestamp","unreadCapped","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","pending","filter","m","createSlice","name","msgSortableMs","String","exec","Number","date","t","getTime","isFinite","norm","s","v","toLowerCase","split","replace","isOwn","selfXmpp","selfWallet","candidates","user","userJID","xmppUsername","xmppFrom","Boolean","self","Set","c","has","count","ms","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_toolkit","require","_insertMessageWithDelimiter","RUNTIME_MESSAGE_LIMIT","enforceMessageCap","messages","length","shift","mergeHistoryIntoCache","existing","fetched","ex","Array","isArray","fe","pending","filter","m","realExisting","id","realFetched","byMs","a","b","msgSortableMs","capTail","arr","slice","existingIds","Set","map","String","overlaps","some","has","sort","byId","Map","set","merged","from","values","initialState","rooms","activeRoomJID","visibleRoomJID","isLoading","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","isValidRoomJid","jid","includes","addRoomViaApi","exports","createAsyncThunk","room","xmpp","_xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","state","action","roomData","payload","lastViewed","lastViewedTimestamp","msgs","newest","t","messageTimestampMs","date","Date","getTime","incomingMessages","existingMessages","unreadMessages","unreadBaselineTimestamp","deleteRoom","updateRoom","updates","existingRoom","setRoomMessages","roomJID","capped","deleteRoomMessage","idx","findIndex","splice","message","isDeleted","setEditAction","editRoomMessage","body","addRoomMessage","start","roomMessages","lengthBefore","unshift","lastViewedValue","insertMessageWithDelimiter","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setLastViewedTimestamp","timestamp","countNewerMessages","setRoomRole","role","setRoomNoMessages","value","noMessages","setCurrentRoom","setVisibleRoom","clearVisibleRoom","setPendingNotificationJid","clearPendingNotificationJid","setReactions","reactions","msg","setLogoutState","setActiveMessage","activeMessage","setCloseActiveMessage","title","usersCnt","incoming","previous","Math","max","icon","unreadCapped","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","createSlice","name","exec","Number","isFinite","norm","s","v","toLowerCase","split","replace","isOwn","selfXmpp","selfWallet","candidates","user","userJID","xmppUsername","xmppFrom","Boolean","self","c","count","ms","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
exports.installPromiseRejectionTracker = installPromiseRejectionTracker;
|
|
8
|
+
/**
|
|
9
|
+
* Dev-only unhandled-promise-rejection tracker.
|
|
10
|
+
*
|
|
11
|
+
* RN's red-screen for `Uncaught (in promise, id: N)` famously hides the
|
|
12
|
+
* actual rejection's stack trace — it only shows the promise id. When a
|
|
13
|
+
* leak slips past the SDK's coverage, the integrator gets a useless
|
|
14
|
+
* red box that they can't diagnose.
|
|
15
|
+
*
|
|
16
|
+
* This installer attaches a global `unhandledrejection` listener that
|
|
17
|
+
* prints the rejection value AND a stack trace (best-effort) so the
|
|
18
|
+
* source is visible in Metro logs. It's a no-op in production builds.
|
|
19
|
+
*
|
|
20
|
+
* Installed automatically from `ReduxWrapper` on mount. Safe to call
|
|
21
|
+
* multiple times — guarded by a module-level flag.
|
|
22
|
+
*
|
|
23
|
+
* Bug #4 follow-up.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
let installed = false;
|
|
27
|
+
function installPromiseRejectionTracker() {
|
|
28
|
+
if (typeof __DEV__ !== 'undefined' && !__DEV__) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
if (installed) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
installed = true;
|
|
35
|
+
|
|
36
|
+
// RN's RCTPromise polyfill emits `unhandledrejection` on the global
|
|
37
|
+
// (HermesInternal / global). It also forwards through the
|
|
38
|
+
// `process.on('unhandledRejection', ...)` shim on some builds.
|
|
39
|
+
const g = globalThis;
|
|
40
|
+
const onRejection = (eventOrReason, maybePromise) => {
|
|
41
|
+
// Two calling conventions across RN versions:
|
|
42
|
+
// - `(event)` where event has `.reason` / `.promise`
|
|
43
|
+
// - `(reason, promise)` (older)
|
|
44
|
+
const reason = eventOrReason?.reason ?? eventOrReason;
|
|
45
|
+
const promise = eventOrReason?.promise ?? maybePromise;
|
|
46
|
+
const stack = reason && reason.stack || new Error('unhandledrejection (captured at handler)').stack;
|
|
47
|
+
// console.WARN (not error): RN's LogBox turns every console.error into
|
|
48
|
+
// a full-screen red overlay. With `allRejections: true` Hermes reports
|
|
49
|
+
// rejections that get handled a microtask later (false positives, e.g.
|
|
50
|
+
// a bare `undefined` rejection during connect teardown), so escalating
|
|
51
|
+
// to a red box was pure noise. warn keeps the trace in Metro/Logs.
|
|
52
|
+
// eslint-disable-next-line no-console
|
|
53
|
+
console.warn('[ethora-rn] UNHANDLED PROMISE REJECTION:', typeof reason === 'object' ? JSON.stringify(reason, null, 2) : String(reason), '\nstack:', stack, '\npromise:', promise);
|
|
54
|
+
};
|
|
55
|
+
try {
|
|
56
|
+
if (typeof g.addEventListener === 'function') {
|
|
57
|
+
g.addEventListener('unhandledrejection', onRejection);
|
|
58
|
+
}
|
|
59
|
+
} catch {}
|
|
60
|
+
try {
|
|
61
|
+
if (g.process && typeof g.process.on === 'function') {
|
|
62
|
+
g.process.on('unhandledRejection', onRejection);
|
|
63
|
+
}
|
|
64
|
+
} catch {}
|
|
65
|
+
try {
|
|
66
|
+
// Hermes-only hook — newer RN exposes this.
|
|
67
|
+
if (typeof g.HermesInternal?.enablePromiseRejectionTracker === 'function') {
|
|
68
|
+
g.HermesInternal.enablePromiseRejectionTracker({
|
|
69
|
+
allRejections: false,
|
|
70
|
+
onUnhandled: (id, error) => {
|
|
71
|
+
// warn, not error — see note above. `allRejections: true` fires
|
|
72
|
+
// this for rejections handled a tick later, so a red box here
|
|
73
|
+
// was a false alarm. Stays visible in Metro/Logs as a warning.
|
|
74
|
+
// eslint-disable-next-line no-console
|
|
75
|
+
console.warn(`[ethora-rn] Hermes unhandled rejection id=${id}:`, error?.message ?? error, '\nstack:', error?.stack);
|
|
76
|
+
},
|
|
77
|
+
onHandled: () => {}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
} catch {}
|
|
81
|
+
}
|
|
82
|
+
var _default = exports.default = installPromiseRejectionTracker;
|
|
83
|
+
//# sourceMappingURL=installPromiseRejectionTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["installed","installPromiseRejectionTracker","__DEV__","g","globalThis","onRejection","eventOrReason","maybePromise","reason","promise","stack","Error","console","warn","JSON","stringify","String","addEventListener","process","on","HermesInternal","enablePromiseRejectionTracker","allRejections","onUnhandled","id","error","message","onHandled","_default","exports","default"],"sourceRoot":"../../../src","sources":["utils/installPromiseRejectionTracker.ts"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,IAAIA,SAAS,GAAG,KAAK;AAEd,SAASC,8BAA8BA,CAAA,EAAG;EAC/C,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAI,CAACA,OAAO,EAAE;IAAC;EAAO;EACxD,IAAIF,SAAS,EAAE;IAAC;EAAO;EACvBA,SAAS,GAAG,IAAI;;EAEhB;EACA;EACA;EACA,MAAMG,CAAM,GAAGC,UAAiB;EAEhC,MAAMC,WAAW,GAAGA,CAACC,aAAkB,EAAEC,YAA2B,KAAK;IACvE;IACA;IACA;IACA,MAAMC,MAAM,GAAGF,aAAa,EAAEE,MAAM,IAAIF,aAAa;IACrD,MAAMG,OAAO,GAAGH,aAAa,EAAEG,OAAO,IAAIF,YAAY;IACtD,MAAMG,KAAK,GACRF,MAAM,IAAIA,MAAM,CAACE,KAAK,IACvB,IAAIC,KAAK,CAAC,0CAA0C,CAAC,CAACD,KAAK;IAC7D;IACA;IACA;IACA;IACA;IACA;IACAE,OAAO,CAACC,IAAI,CACV,0CAA0C,EAC1C,OAAOL,MAAM,KAAK,QAAQ,GAAGM,IAAI,CAACC,SAAS,CAACP,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAGQ,MAAM,CAACR,MAAM,CAAC,EAC7E,UAAU,EACVE,KAAK,EACL,YAAY,EACZD,OACF,CAAC;EACH,CAAC;EAED,IAAI;IACF,IAAI,OAAON,CAAC,CAACc,gBAAgB,KAAK,UAAU,EAAE;MAC5Cd,CAAC,CAACc,gBAAgB,CAAC,oBAAoB,EAAEZ,WAAW,CAAC;IACvD;EACF,CAAC,CAAC,MAAM,CAAC;EACT,IAAI;IACF,IAAIF,CAAC,CAACe,OAAO,IAAI,OAAOf,CAAC,CAACe,OAAO,CAACC,EAAE,KAAK,UAAU,EAAE;MACnDhB,CAAC,CAACe,OAAO,CAACC,EAAE,CAAC,oBAAoB,EAAEd,WAAW,CAAC;IACjD;EACF,CAAC,CAAC,MAAM,CAAC;EACT,IAAI;IACF;IACA,IAAI,OAAOF,CAAC,CAACiB,cAAc,EAAEC,6BAA6B,KAAK,UAAU,EAAE;MACzElB,CAAC,CAACiB,cAAc,CAACC,6BAA6B,CAAC;QAC7CC,aAAa,EAAE,KAAK;QACpBC,WAAW,EAAEA,CAACC,EAAU,EAAEC,KAAU,KAAK;UACvC;UACA;UACA;UACA;UACAb,OAAO,CAACC,IAAI,CACV,6CAA6CW,EAAE,GAAG,EAClDC,KAAK,EAAEC,OAAO,IAAID,KAAK,EACvB,UAAU,EACVA,KAAK,EAAEf,KACT,CAAC;QACH,CAAC;QACDiB,SAAS,EAAEA,CAAA,KAAM,CAAC;MACpB,CAAC,CAAC;IACJ;EACF,CAAC,CAAC,MAAM,CAAC;AACX;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc7B,8BAA8B","ignoreList":[]}
|
|
@@ -37,7 +37,7 @@ async function resendMessage(message, options = {}) {
|
|
|
37
37
|
}));
|
|
38
38
|
const useTranslate = !!(options.respectTranslateConfig && config?.translates?.enabled);
|
|
39
39
|
if (useTranslate) {
|
|
40
|
-
client.sendTextMessageWithTranslateTagStanza(activeRoomJID, user.firstName, user.lastName, '', user.walletAddress, message.body, '', message.isReply || false, message.showInChannel === 'true' || false, message.mainMessage || '', state.chatSettingStore.langSource || 'en');
|
|
40
|
+
client.sendTextMessageWithTranslateTagStanza(activeRoomJID, user.firstName, user.lastName, '', user.walletAddress, message.body, '', message.isReply || false, message.showInChannel === 'true' || false, message.mainMessage || '', state.chatSettingStore.langSource || 'en', id);
|
|
41
41
|
} else {
|
|
42
42
|
client.sendMessage(activeRoomJID, user.firstName, user.lastName, '', user.walletAddress, message.body, '', message.isReply || false, message.showInChannel === 'true' || false, message.mainMessage || '', id);
|
|
43
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clientRegistry","require","_roomStore","_roomsSlice","_uuid","resendMessage","message","options","client","requireXmppClient","state","store","getState","user","chatSettingStore","config","activeRoomJID","roomJid","id","uuidv4","dispatch","addRoomMessage","roomJID","xmppUsername","name","firstName","lastName","date","Date","toISOString","body","xmppFrom","pending","isReply","showInChannel","mainMessage","useTranslate","respectTranslateConfig","translates","enabled","sendTextMessageWithTranslateTagStanza","walletAddress","langSource","sendMessage","_default","exports","default"],"sourceRoot":"../../../src","sources":["utils/resendMessage.ts"],"mappings":";;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAOO,eAAeI,aAAaA,CACjCC,OAIC,EACDC,OAAsB,GAAG,CAAC,CAAC,EACV;EACjB,MAAMC,MAAM,GAAG,IAAAC,iCAAiB,EAAC,CAAC;EAClC,MAAMC,KAAK,GAAGC,gBAAK,CAACC,QAAQ,CAAC,CAAC;EAC9B,MAAMC,IAAI,GAAGH,KAAK,CAACI,gBAAgB,CAACD,IAAI;EACxC,MAAME,MAAM,GAAGL,KAAK,CAACI,gBAAgB,CAACC,MAAM;EAC5C,MAAMC,aAAa,GAAGV,OAAO,CAACW,OAAO;EAErC,MAAMC,EAAE,GAAG,uBAAuB,IAAAC,QAAM,EAAC,CAAC,EAAE;EAE5CR,gBAAK,CAACS,QAAQ,CACZ,IAAAC,0BAAc,EAAC;IACbC,OAAO,EAAEN,aAAa;IACtBV,OAAO,EAAE;MACPY,EAAE;MACFL,IAAI,EAAE;QACJ,GAAGA,IAAI;QACPK,EAAE,EAAEL,IAAI,CAACU,YAAY,IAAI,EAAE;QAC3BC,IAAI,EAAEX,IAAI,CAACY,SAAS,GAAG,GAAG,GAAGZ,IAAI,CAACa;MACpC,CAAQ;MACRC,IAAI,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MAC9BC,IAAI,EAAExB,OAAO,CAACwB,IAAI;MAClBb,OAAO,EAAED,aAAa;MACtBe,QAAQ,EAAE,GAAGf,aAAa,IAAIH,IAAI,CAACU,YAAY,EAAE;MACjDS,OAAO,EAAE,IAAI;MACbC,OAAO,EAAE3B,OAAO,CAAC2B,OAAO,IAAI,KAAK;MACjCC,aAAa,EAAG5B,OAAO,CAAC4B,aAAa,IAAa,OAAe;MACjEC,WAAW,EAAE7B,OAAO,CAAC6B,WAAW,IAAI;IACtC;EACF,CAAC,CACH,CAAC;EAED,MAAMC,YAAY,GAAG,CAAC,EACpB7B,OAAO,CAAC8B,sBAAsB,IAAItB,MAAM,EAAEuB,UAAU,EAAEC,OAAO,CAC9D;EAED,IAAIH,YAAY,EAAE;IAChB5B,MAAM,CAACgC,qCAAqC,CAC1CxB,aAAa,EACbH,IAAI,CAACY,SAAS,EACdZ,IAAI,CAACa,QAAQ,EACb,EAAE,EACFb,IAAI,CAAC4B,aAAa,EAClBnC,OAAO,CAACwB,IAAI,EACZ,EAAE,EACFxB,OAAO,CAAC2B,OAAO,IAAI,KAAK,EACxB3B,OAAO,CAAC4B,aAAa,KAAK,MAAM,IAAI,KAAK,EACzC5B,OAAO,CAAC6B,WAAW,IAAI,EAAE,EACxBzB,KAAK,CAACI,gBAAgB,CAAC4B,UAAU,IAAY,
|
|
1
|
+
{"version":3,"names":["_clientRegistry","require","_roomStore","_roomsSlice","_uuid","resendMessage","message","options","client","requireXmppClient","state","store","getState","user","chatSettingStore","config","activeRoomJID","roomJid","id","uuidv4","dispatch","addRoomMessage","roomJID","xmppUsername","name","firstName","lastName","date","Date","toISOString","body","xmppFrom","pending","isReply","showInChannel","mainMessage","useTranslate","respectTranslateConfig","translates","enabled","sendTextMessageWithTranslateTagStanza","walletAddress","langSource","sendMessage","_default","exports","default"],"sourceRoot":"../../../src","sources":["utils/resendMessage.ts"],"mappings":";;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAOO,eAAeI,aAAaA,CACjCC,OAIC,EACDC,OAAsB,GAAG,CAAC,CAAC,EACV;EACjB,MAAMC,MAAM,GAAG,IAAAC,iCAAiB,EAAC,CAAC;EAClC,MAAMC,KAAK,GAAGC,gBAAK,CAACC,QAAQ,CAAC,CAAC;EAC9B,MAAMC,IAAI,GAAGH,KAAK,CAACI,gBAAgB,CAACD,IAAI;EACxC,MAAME,MAAM,GAAGL,KAAK,CAACI,gBAAgB,CAACC,MAAM;EAC5C,MAAMC,aAAa,GAAGV,OAAO,CAACW,OAAO;EAErC,MAAMC,EAAE,GAAG,uBAAuB,IAAAC,QAAM,EAAC,CAAC,EAAE;EAE5CR,gBAAK,CAACS,QAAQ,CACZ,IAAAC,0BAAc,EAAC;IACbC,OAAO,EAAEN,aAAa;IACtBV,OAAO,EAAE;MACPY,EAAE;MACFL,IAAI,EAAE;QACJ,GAAGA,IAAI;QACPK,EAAE,EAAEL,IAAI,CAACU,YAAY,IAAI,EAAE;QAC3BC,IAAI,EAAEX,IAAI,CAACY,SAAS,GAAG,GAAG,GAAGZ,IAAI,CAACa;MACpC,CAAQ;MACRC,IAAI,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MAC9BC,IAAI,EAAExB,OAAO,CAACwB,IAAI;MAClBb,OAAO,EAAED,aAAa;MACtBe,QAAQ,EAAE,GAAGf,aAAa,IAAIH,IAAI,CAACU,YAAY,EAAE;MACjDS,OAAO,EAAE,IAAI;MACbC,OAAO,EAAE3B,OAAO,CAAC2B,OAAO,IAAI,KAAK;MACjCC,aAAa,EAAG5B,OAAO,CAAC4B,aAAa,IAAa,OAAe;MACjEC,WAAW,EAAE7B,OAAO,CAAC6B,WAAW,IAAI;IACtC;EACF,CAAC,CACH,CAAC;EAED,MAAMC,YAAY,GAAG,CAAC,EACpB7B,OAAO,CAAC8B,sBAAsB,IAAItB,MAAM,EAAEuB,UAAU,EAAEC,OAAO,CAC9D;EAED,IAAIH,YAAY,EAAE;IAChB5B,MAAM,CAACgC,qCAAqC,CAC1CxB,aAAa,EACbH,IAAI,CAACY,SAAS,EACdZ,IAAI,CAACa,QAAQ,EACb,EAAE,EACFb,IAAI,CAAC4B,aAAa,EAClBnC,OAAO,CAACwB,IAAI,EACZ,EAAE,EACFxB,OAAO,CAAC2B,OAAO,IAAI,KAAK,EACxB3B,OAAO,CAAC4B,aAAa,KAAK,MAAM,IAAI,KAAK,EACzC5B,OAAO,CAAC6B,WAAW,IAAI,EAAE,EACxBzB,KAAK,CAACI,gBAAgB,CAAC4B,UAAU,IAAY,IAAI,EAClDxB,EACF,CAAC;EACH,CAAC,MAAM;IACLV,MAAM,CAACmC,WAAW,CAChB3B,aAAa,EACbH,IAAI,CAACY,SAAS,EACdZ,IAAI,CAACa,QAAQ,EACb,EAAE,EACFb,IAAI,CAAC4B,aAAa,EAClBnC,OAAO,CAACwB,IAAI,EACZ,EAAE,EACFxB,OAAO,CAAC2B,OAAO,IAAI,KAAK,EACxB3B,OAAO,CAAC4B,aAAa,KAAK,MAAM,IAAI,KAAK,EACzC5B,OAAO,CAAC6B,WAAW,IAAI,EAAE,EACzBjB,EACF,CAAC;EACH;EAEA,OAAOA,EAAE;AACX;AAAC,IAAA0B,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEczC,aAAa","ignoreList":[]}
|