@ethora/chat-component-rn 26.5.5 → 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 +177 -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/ChatHeader.js +7 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatRoom.js +66 -34
- package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +59 -14
- package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaMessage.js +15 -7
- 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 +175 -30
- 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 +117 -19
- 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 +175 -40
- 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 +78 -39
- 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 +115 -5
- package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/commonjs/components/styled/MessageImage.js +49 -10
- 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 +53 -29
- 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 -22
- 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 +315 -34
- 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/mimeToExtension.js +131 -0
- package/lib/commonjs/helpers/mimeToExtension.js.map +1 -0
- package/lib/commonjs/helpers/normalizeRoomJid.js +20 -0
- package/lib/commonjs/helpers/normalizeRoomJid.js.map +1 -0
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js +73 -1
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/commonjs/hooks/useChatRoomFocus.js +87 -0
- package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -0
- package/lib/commonjs/hooks/useChatWrapperInit.js +22 -10
- package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/commonjs/hooks/useEventHandlers.js +9 -1
- package/lib/commonjs/hooks/useEventHandlers.js.map +1 -1
- 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/useMessageHeapState.js +6 -2
- package/lib/commonjs/hooks/useMessageHeapState.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 +249 -14
- 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 +74 -1
- 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 +371 -26
- 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/roomHeapSlice.js +26 -8
- package/lib/commonjs/roomStore/roomHeapSlice.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/ChatHeader.js +7 -1
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatRoom.js +67 -35
- package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +59 -14
- package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/MediaMessage.js +15 -7
- 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 +176 -31
- 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 +118 -20
- 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 +179 -42
- 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 +80 -41
- 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 +116 -6
- package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/module/components/styled/MessageImage.js +51 -12
- 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 +54 -30
- 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 -23
- 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 +319 -37
- 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/mimeToExtension.js +124 -0
- package/lib/module/helpers/mimeToExtension.js.map +1 -0
- package/lib/module/helpers/normalizeRoomJid.js +15 -0
- package/lib/module/helpers/normalizeRoomJid.js.map +1 -0
- package/lib/module/helpers/resolveInitBeforeLoadUser.js +71 -0
- package/lib/module/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/module/hooks/useChatRoomFocus.js +82 -0
- package/lib/module/hooks/useChatRoomFocus.js.map +1 -0
- package/lib/module/hooks/useChatWrapperInit.js +22 -10
- package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/module/hooks/useEventHandlers.js +9 -1
- package/lib/module/hooks/useEventHandlers.js.map +1 -1
- 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/useMessageHeapState.js +6 -2
- package/lib/module/hooks/useMessageHeapState.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 +252 -17
- 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 +74 -2
- 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 +371 -26
- 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/roomHeapSlice.js +24 -7
- package/lib/module/roomStore/roomHeapSlice.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/ChatHeader.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/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 +6 -0
- 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/mimeToExtension.d.ts +37 -0
- package/lib/typescript/helpers/mimeToExtension.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/helpers/resolveInitBeforeLoadUser.d.ts +18 -0
- package/lib/typescript/helpers/resolveInitBeforeLoadUser.d.ts.map +1 -1
- package/lib/typescript/hooks/useChatRoomFocus.d.ts +42 -0
- package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -0
- package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
- package/lib/typescript/hooks/useEventHandlers.d.ts +6 -0
- package/lib/typescript/hooks/useEventHandlers.d.ts.map +1 -1
- package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
- package/lib/typescript/hooks/useMessageHeapState.d.ts +2 -0
- package/lib/typescript/hooks/useMessageHeapState.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 +2 -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 +58 -5
- 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/roomHeapSlice.d.ts +22 -1
- package/lib/typescript/roomStore/roomHeapSlice.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 +10 -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/ChatHeader.tsx +5 -1
- package/src/components/MainComponents/ChatRoom.tsx +81 -61
- package/src/components/MainComponents/ChatWrapper.tsx +100 -21
- package/src/components/MainComponents/MediaMessage.tsx +18 -8
- package/src/components/MainComponents/MessageContainer.tsx +4 -2
- package/src/components/MainComponents/MessageList.tsx +185 -31
- package/src/components/MainComponents/ReduxWrapper.tsx +19 -9
- package/src/components/MainComponents/SystemMessage.tsx +38 -26
- package/src/components/MessageBubble/Message.tsx +110 -27
- 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 +182 -37
- 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 +77 -44
- package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +19 -15
- package/src/components/Modals/styledModalComponents.tsx +4 -9
- package/src/components/styled/MediaFilePreview.tsx +111 -5
- package/src/components/styled/MessageImage.tsx +58 -14
- package/src/components/styled/NewMessageLabel.tsx +8 -5
- package/src/components/styled/SendInput.tsx +67 -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 -18
- package/src/context/MessageNotificationContext.tsx +8 -8
- package/src/context/xmppProvider.tsx +337 -32
- 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/mimeToExtension.ts +135 -0
- package/src/helpers/normalizeRoomJid.ts +6 -0
- package/src/helpers/resolveInitBeforeLoadUser.ts +79 -0
- package/src/hooks/useChatRoomFocus.ts +95 -0
- package/src/hooks/useChatWrapperInit.ts +51 -46
- package/src/hooks/useEventHandlers.tsx +24 -1
- package/src/hooks/useHeapSender.tsx +2 -1
- package/src/hooks/useLogout.tsx +3 -3
- package/src/hooks/useMessageHeapState.tsx +6 -2
- package/src/hooks/usePushNotifications.ts +21 -8
- package/src/hooks/useRoomState.tsx +4 -0
- package/src/hooks/useSendMessage.tsx +333 -17
- package/src/hooks/useUnreadMessagesCounter.ts +13 -16
- package/src/main.ts +1 -0
- package/src/networking/api-requests/auth.api.ts +60 -2
- 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 +399 -31
- package/src/roomStore/Middleware/unreadMidlleware.tsx +23 -5
- package/src/roomStore/roomHeapSlice.ts +47 -4
- 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 +25 -0
- package/src/utils/installPromiseRejectionTracker.ts +91 -0
- package/src/utils/resendMessage.ts +2 -1
|
@@ -7,15 +7,21 @@ exports.ReduxWrapper = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactRedux = require("react-redux");
|
|
9
9
|
var _reactNativeKeyboardController = require("react-native-keyboard-controller");
|
|
10
|
+
var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
|
|
10
11
|
var _roomStore = require("../../roomStore");
|
|
11
12
|
var _xmppProvider = require("../../context/xmppProvider");
|
|
12
13
|
var _MessageNotificationContext = require("../../context/MessageNotificationContext");
|
|
13
14
|
var _ToastContext = require("../../context/ToastContext");
|
|
14
15
|
var _LoginWrapper = _interopRequireDefault(require("./LoginWrapper"));
|
|
15
16
|
require("../../helpers/storeConsole");
|
|
17
|
+
var _installPromiseRejectionTracker = require("../../utils/installPromiseRejectionTracker");
|
|
16
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
20
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
21
|
+
// Mount-time, dev-only — wire a global unhandled-promise-rejection
|
|
22
|
+
// tracker so any future leak surfaces with a real stack trace in Metro
|
|
23
|
+
// logs (bug #4 follow-up). No-op in production.
|
|
24
|
+
(0, _installPromiseRejectionTracker.installPromiseRejectionTracker)();
|
|
19
25
|
const ReduxWrapper = exports.ReduxWrapper = /*#__PURE__*/_react.default.memo(({
|
|
20
26
|
...props
|
|
21
27
|
}) => {
|
|
@@ -24,15 +30,18 @@ const ReduxWrapper = exports.ReduxWrapper = /*#__PURE__*/_react.default.memo(({
|
|
|
24
30
|
}, [props.config]);
|
|
25
31
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRedux.Provider, {
|
|
26
32
|
store: _roomStore.store,
|
|
27
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
28
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
33
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSafeAreaContext.SafeAreaProvider, {
|
|
34
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeKeyboardController.KeyboardProvider, {
|
|
35
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_xmppProvider.XmppProvider, {
|
|
36
|
+
config: memoizedConfig,
|
|
37
|
+
isVisible: props.isVisible,
|
|
38
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ToastContext.ToastProvider, {
|
|
39
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MessageNotificationContext.MessageNotificationProvider, {
|
|
34
40
|
config: memoizedConfig,
|
|
35
|
-
|
|
41
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoginWrapper.default, {
|
|
42
|
+
config: memoizedConfig,
|
|
43
|
+
...props
|
|
44
|
+
})
|
|
36
45
|
})
|
|
37
46
|
})
|
|
38
47
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactRedux","_reactNativeKeyboardController","_roomStore","_xmppProvider","_MessageNotificationContext","_ToastContext","_LoginWrapper","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ReduxWrapper","exports","React","memo","props","memoizedConfig","useMemo","config","jsx","Provider","store","children","KeyboardProvider","XmppProvider","ToastProvider","MessageNotificationProvider"],"sourceRoot":"../../../../src","sources":["components/MainComponents/ReduxWrapper.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,8BAAA,GAAAF,OAAA;AACA,IAAAG,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactRedux","_reactNativeKeyboardController","_reactNativeSafeAreaContext","_roomStore","_xmppProvider","_MessageNotificationContext","_ToastContext","_LoginWrapper","_interopRequireDefault","_installPromiseRejectionTracker","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","installPromiseRejectionTracker","ReduxWrapper","exports","React","memo","props","memoizedConfig","useMemo","config","jsx","Provider","store","children","SafeAreaProvider","KeyboardProvider","XmppProvider","isVisible","ToastProvider","MessageNotificationProvider"],"sourceRoot":"../../../../src","sources":["components/MainComponents/ReduxWrapper.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,37 +3,49 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
9
|
-
var _native = _interopRequireDefault(require("styled-components/native"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
10
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
10
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
const CustomSystemMessageText = exports.CustomSystemMessageText = _native.default.Text`
|
|
13
|
-
margin: 0;
|
|
14
|
-
color: ${props => props.primary || '#0052cd'};
|
|
15
|
-
border-radius: 118px;
|
|
16
|
-
padding: 5px 8px;
|
|
17
|
-
display: flex;
|
|
18
|
-
align-items: center;
|
|
19
|
-
justify-content: center;
|
|
20
|
-
font-size: 12px;
|
|
21
|
-
line-height: 14px;
|
|
22
|
-
font-weight: 600;
|
|
23
|
-
background-color: ${props => props.secondary || '#e7edf9'};
|
|
24
|
-
height: 24px;
|
|
25
|
-
white-space: nowrap;
|
|
26
|
-
`;
|
|
27
11
|
const SystemMessage = ({
|
|
28
12
|
messageText,
|
|
29
13
|
colors
|
|
30
14
|
}) => {
|
|
31
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
15
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
16
|
+
style: styles.container,
|
|
17
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
18
|
+
style: [styles.bubble, {
|
|
19
|
+
backgroundColor: colors?.secondary || '#e7edf9'
|
|
20
|
+
}],
|
|
21
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
22
|
+
style: [styles.text, {
|
|
23
|
+
color: colors?.primary || '#0052cd'
|
|
24
|
+
}],
|
|
25
|
+
children: messageText
|
|
26
|
+
})
|
|
35
27
|
})
|
|
36
28
|
});
|
|
37
29
|
};
|
|
38
30
|
var _default = exports.default = SystemMessage;
|
|
31
|
+
const styles = _reactNative.StyleSheet.create({
|
|
32
|
+
container: {
|
|
33
|
+
width: '100%',
|
|
34
|
+
alignItems: 'center',
|
|
35
|
+
paddingVertical: 8,
|
|
36
|
+
paddingHorizontal: 16
|
|
37
|
+
},
|
|
38
|
+
bubble: {
|
|
39
|
+
maxWidth: '85%',
|
|
40
|
+
borderRadius: 12,
|
|
41
|
+
paddingVertical: 6,
|
|
42
|
+
paddingHorizontal: 12
|
|
43
|
+
},
|
|
44
|
+
text: {
|
|
45
|
+
fontSize: 12,
|
|
46
|
+
lineHeight: 16,
|
|
47
|
+
fontWeight: '600',
|
|
48
|
+
textAlign: 'center'
|
|
49
|
+
}
|
|
50
|
+
});
|
|
39
51
|
//# sourceMappingURL=SystemMessage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_jsxRuntime","e","__esModule","default","SystemMessage","messageText","colors","jsx","View","style","styles","container","children","bubble","backgroundColor","secondary","Text","text","color","primary","_default","exports","StyleSheet","create","width","alignItems","paddingVertical","paddingHorizontal","maxWidth","borderRadius","fontSize","lineHeight","fontWeight","textAlign"],"sourceRoot":"../../../../src","sources":["components/MainComponents/SystemMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAsD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOtD,MAAMG,aAA2C,GAAGA,CAAC;EACnDC,WAAW;EACXC;AACF,CAAC,KAAK;EACJ,oBACE,IAAAN,WAAA,CAAAO,GAAA,EAACR,YAAA,CAAAS,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAK5B,IAAAZ,WAAA,CAAAO,GAAA,EAACR,YAAA,CAAAS,IAAI;MACHC,KAAK,EAAE,CACLC,MAAM,CAACG,MAAM,EACb;QAAEC,eAAe,EAAER,MAAM,EAAES,SAAS,IAAI;MAAU,CAAC,CACnD;MAAAH,QAAA,eAEF,IAAAZ,WAAA,CAAAO,GAAA,EAACR,YAAA,CAAAiB,IAAI;QAACP,KAAK,EAAE,CAACC,MAAM,CAACO,IAAI,EAAE;UAAEC,KAAK,EAAEZ,MAAM,EAAEa,OAAO,IAAI;QAAU,CAAC,CAAE;QAAAP,QAAA,EACjEP;MAAW,CACR;IAAC,CACH;EAAC,CACH,CAAC;AAEX,CAAC;AAAC,IAAAe,QAAA,GAAAC,OAAA,CAAAlB,OAAA,GAEaC,aAAa;AAE5B,MAAMM,MAAM,GAAGY,uBAAU,CAACC,MAAM,CAAC;EAC/BZ,SAAS,EAAE;IACTa,KAAK,EAAE,MAAM;IACbC,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB,CAAC;EACDd,MAAM,EAAE;IACNe,QAAQ,EAAE,KAAK;IACfC,YAAY,EAAE,EAAE;IAChBH,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB,CAAC;EACDV,IAAI,EAAE;IACJa,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,EAAE;IACdC,UAAU,EAAE,KAAK;IACjBC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -23,6 +23,7 @@ var _parseMessageBody = require("../../helpers/parseMessageBody");
|
|
|
23
23
|
var _useMessageHeapState = require("../../hooks/useMessageHeapState");
|
|
24
24
|
var _icons = require("../../assets/icons");
|
|
25
25
|
var _xmppProvider = require("../../context/xmppProvider");
|
|
26
|
+
var _useSendMessage = require("../../hooks/useSendMessage");
|
|
26
27
|
var _MessageReaction = require("./MessageReaction");
|
|
27
28
|
var _StyledComponents = require("../styled/StyledComponents");
|
|
28
29
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -40,8 +41,19 @@ const CustomMessageContainer = _native.default.View`
|
|
|
40
41
|
const CustomMessageBubble = _native.default.View`
|
|
41
42
|
position: relative;
|
|
42
43
|
max-width: 85%;
|
|
43
|
-
min-width:
|
|
44
|
-
|
|
44
|
+
min-width: ${({
|
|
45
|
+
isMedia
|
|
46
|
+
}) => isMedia ? '0' : '30%'};
|
|
47
|
+
align-items: ${({
|
|
48
|
+
isMedia,
|
|
49
|
+
isUser
|
|
50
|
+
}) => isMedia ? isUser ? 'flex-end' : 'flex-start' : 'stretch'};
|
|
51
|
+
padding: ${({
|
|
52
|
+
isMedia
|
|
53
|
+
}) => isMedia ? '0' : '10'}px;
|
|
54
|
+
padding-bottom: ${({
|
|
55
|
+
isMedia
|
|
56
|
+
}) => isMedia ? '6' : '10'}px;
|
|
45
57
|
margin-right: ${({
|
|
46
58
|
isUser
|
|
47
59
|
}) => isUser ? '0' : '10px'};
|
|
@@ -49,6 +61,7 @@ const CustomMessageBubble = _native.default.View`
|
|
|
49
61
|
isUser
|
|
50
62
|
}) => isUser ? '10px' : '0'};
|
|
51
63
|
border-radius: 10px;
|
|
64
|
+
overflow: hidden;
|
|
52
65
|
border-bottom-left-radius: ${({
|
|
53
66
|
isUser
|
|
54
67
|
}) => isUser ? '10' : '0'}px;
|
|
@@ -81,6 +94,13 @@ const CustomMessagePhotoContainer = _native.default.TouchableOpacity`
|
|
|
81
94
|
const CustomUserName = _native.default.Text`
|
|
82
95
|
font-size: 14px;
|
|
83
96
|
font-weight: 500;
|
|
97
|
+
padding-bottom: 8px;
|
|
98
|
+
padding-left: ${({
|
|
99
|
+
media
|
|
100
|
+
}) => media ? '16px' : 0};
|
|
101
|
+
padding-top: ${({
|
|
102
|
+
media
|
|
103
|
+
}) => media ? '8px' : 0};
|
|
84
104
|
color: ${({
|
|
85
105
|
color
|
|
86
106
|
}) => color || '#333'};
|
|
@@ -96,6 +116,16 @@ const CustomMessageTimestamp = _native.default.Text`
|
|
|
96
116
|
margin-top: 5px;
|
|
97
117
|
align-self: flex-end;
|
|
98
118
|
`;
|
|
119
|
+
const CustomTimestampRow = _native.default.View`
|
|
120
|
+
flex-direction: row;
|
|
121
|
+
align-items: center;
|
|
122
|
+
align-self: flex-end;
|
|
123
|
+
margin-top: 4;
|
|
124
|
+
gap: 4;
|
|
125
|
+
padding-right: ${({
|
|
126
|
+
media
|
|
127
|
+
}) => media ? '10px' : 0};
|
|
128
|
+
`;
|
|
99
129
|
const Message = ({
|
|
100
130
|
message,
|
|
101
131
|
isUser,
|
|
@@ -111,8 +141,12 @@ const Message = ({
|
|
|
111
141
|
user
|
|
112
142
|
} = (0, _useChatSettingState.useChatSettingState)();
|
|
113
143
|
const {
|
|
114
|
-
idSet
|
|
144
|
+
idSet,
|
|
145
|
+
failedIdSet
|
|
115
146
|
} = (0, _useMessageHeapState.useMessageHeapState)();
|
|
147
|
+
const {
|
|
148
|
+
retryMessage
|
|
149
|
+
} = (0, _useSendMessage.useSendMessage)();
|
|
116
150
|
const [isPressed, setIsPressed] = (0, _react.useState)(false);
|
|
117
151
|
if (__DEV__ && message.id && !globalThis.__loggedMsg?.[message.id]) {
|
|
118
152
|
(globalThis.__loggedMsg ||= {})[message.id] = true;
|
|
@@ -120,6 +154,7 @@ const Message = ({
|
|
|
120
154
|
const [contextMenuPosition, setContextMenuPosition] = (0, _react.useState)(null);
|
|
121
155
|
const timerRef = (0, _react.useRef)(null);
|
|
122
156
|
const messageRef = (0, _react.useRef)(null);
|
|
157
|
+
const bubbleRef = (0, _react.useRef)(null);
|
|
123
158
|
const handleUserAvatarClick = user => {
|
|
124
159
|
dispatch((0, _chatSettingsSlice.setActiveModal)(_MODAL_TYPES.MODAL_TYPES.PROFILE));
|
|
125
160
|
dispatch((0, _chatSettingsSlice.setSelectedUser)(user));
|
|
@@ -175,16 +210,23 @@ const Message = ({
|
|
|
175
210
|
}
|
|
176
211
|
client?.sendMessageReactionStanza(message.id, message.roomJid, [...(message.reaction[user.xmppUsername || '']?.emoji || []), emoji], `${user.firstName} ${user.lastName}`);
|
|
177
212
|
};
|
|
213
|
+
|
|
214
|
+
// Long-press → capture the bubble's on-screen bounding box. The actual
|
|
215
|
+
// menu placement (above / below, clamped to the viewport) is done in
|
|
216
|
+
// MessageInteractions, which measures the rendered menu height via
|
|
217
|
+
// onLayout — more accurate than estimating it here, and it's what keeps
|
|
218
|
+
// the menu adjacent to the message instead of floating far above (#13).
|
|
178
219
|
const handleLongPress = () => {
|
|
179
|
-
|
|
180
|
-
|
|
220
|
+
const target = bubbleRef.current ?? messageRef.current;
|
|
221
|
+
if (target) {
|
|
222
|
+
const nodeHandle = (0, _reactNative.findNodeHandle)(target);
|
|
181
223
|
if (nodeHandle) {
|
|
182
|
-
_reactNative.UIManager.measure(nodeHandle, (
|
|
183
|
-
const screenHeight = _reactNative.Dimensions.get('window').height;
|
|
184
|
-
const enoughSpaceBelow = screenHeight - pageY - height > 150;
|
|
224
|
+
_reactNative.UIManager.measure(nodeHandle, (_x, _y, width, height, pageX, pageY) => {
|
|
185
225
|
setContextMenuPosition({
|
|
186
|
-
|
|
187
|
-
|
|
226
|
+
left: pageX,
|
|
227
|
+
right: pageX + width,
|
|
228
|
+
top: pageY,
|
|
229
|
+
bottom: pageY + height
|
|
188
230
|
});
|
|
189
231
|
});
|
|
190
232
|
}
|
|
@@ -192,7 +234,13 @@ const Message = ({
|
|
|
192
234
|
setIsPressed(true);
|
|
193
235
|
};
|
|
194
236
|
const messageText = config?.messageTextFilter?.enabled ? (0, _parseMessageBody.parseMessageBody)(config?.messageTextFilter.filterFunction(message.body)) : (0, _parseMessageBody.parseMessageBody)(message.body);
|
|
195
|
-
const
|
|
237
|
+
const isFailed = failedIdSet.has(message.id);
|
|
238
|
+
const isPending = !isFailed && (idSet.has(message.id) || message?.pending || false);
|
|
239
|
+
const onRetryPress = () => {
|
|
240
|
+
if (isFailed) {
|
|
241
|
+
retryMessage(message.id);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
196
244
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
197
245
|
children: [isPressed && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
198
246
|
style: styles.overlay
|
|
@@ -220,18 +268,32 @@ const Message = ({
|
|
|
220
268
|
username: message.user.name
|
|
221
269
|
})
|
|
222
270
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable
|
|
223
|
-
//
|
|
224
|
-
//
|
|
271
|
+
// The Pressable fills the row's content area, so the bubble
|
|
272
|
+
// inside must be aligned to the sender's side — otherwise it
|
|
273
|
+
// hugs the left and own media bubbles sit with a right-side
|
|
274
|
+
// gap (text bubbles only looked right because they're narrow).
|
|
275
|
+
// flex-end for own, flex-start for others.
|
|
225
276
|
, {
|
|
277
|
+
style: {
|
|
278
|
+
flex: 1,
|
|
279
|
+
alignItems: isUser ? 'flex-end' : 'flex-start'
|
|
280
|
+
}
|
|
281
|
+
// disableInteractions hides the long-press → context menu
|
|
282
|
+
// (delete / edit / reply / react). Mirrors web's config gate.
|
|
283
|
+
,
|
|
226
284
|
onLongPress: config?.disableInteractions ? undefined : handleLongPress,
|
|
227
285
|
delayLongPress: 500,
|
|
228
286
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(CustomMessageBubble, {
|
|
287
|
+
ref: bubbleRef,
|
|
288
|
+
collapsable: false,
|
|
229
289
|
isUser: isUser,
|
|
230
290
|
deleted: message.isDeleted,
|
|
291
|
+
isMedia: message?.isMediafile === 'true' && !message?.isDeleted,
|
|
231
292
|
backgroundMessageUser: config?.messageColor?.backgroundMessageUser,
|
|
232
293
|
backgroundMessage: config?.messageColor?.backgroundMessage,
|
|
233
294
|
children: [!isUser && /*#__PURE__*/(0, _jsxRuntime.jsx)(CustomUserName, {
|
|
234
295
|
color: config?.colors?.primary,
|
|
296
|
+
media: message?.isMediafile === 'true',
|
|
235
297
|
children: message.user.name
|
|
236
298
|
}), !isReply && message.mainMessage && /*#__PURE__*/(0, _jsxRuntime.jsx)(_MessageReply.MessageReply, {
|
|
237
299
|
handleReplyMessage: handleReplyMessage,
|
|
@@ -242,7 +304,8 @@ const Message = ({
|
|
|
242
304
|
mimeType: message.mimetype,
|
|
243
305
|
messageText: message.locationPreview,
|
|
244
306
|
location: message?.location,
|
|
245
|
-
message: message
|
|
307
|
+
message: message,
|
|
308
|
+
isUser: isUser
|
|
246
309
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
247
310
|
children: message.isDeleted && message.id !== 'delimiter-new' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeletedMessage.DeletedMessage, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(CustomMessageText, {
|
|
248
311
|
isUser: isUser,
|
|
@@ -256,13 +319,24 @@ const Message = ({
|
|
|
256
319
|
message: message,
|
|
257
320
|
config: config,
|
|
258
321
|
langSource: langSource
|
|
259
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
322
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(CustomTimestampRow, {
|
|
323
|
+
media: message?.isMediafile === 'true',
|
|
260
324
|
children: [!config?.disableSentLogic && isUser && isPending && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
325
|
+
style: styles.timestampText,
|
|
261
326
|
children: "sending..."
|
|
262
|
-
}),
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
327
|
+
}), !config?.disableSentLogic && isUser && isFailed && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
328
|
+
onPress: onRetryPress,
|
|
329
|
+
style: styles.failedText,
|
|
330
|
+
accessibilityRole: "button",
|
|
331
|
+
accessibilityLabel: "Retry sending message",
|
|
332
|
+
children: "! Failed \u2014 tap to retry"
|
|
333
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
334
|
+
style: styles.timestampText,
|
|
335
|
+
children: new Date(message.date).toLocaleTimeString([], {
|
|
336
|
+
hour: '2-digit',
|
|
337
|
+
minute: '2-digit'
|
|
338
|
+
})
|
|
339
|
+
}), !config?.disableSentLogic && isUser && !isPending && !isFailed && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.DoubleTick, {})]
|
|
266
340
|
}), message?.reply?.length && message?.reply?.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomReplyContainer.BottomReplyContainer, {
|
|
267
341
|
isUser: isUser,
|
|
268
342
|
onClick: handleReplyMessage,
|
|
@@ -313,6 +387,30 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
313
387
|
color: '#999',
|
|
314
388
|
marginTop: 5,
|
|
315
389
|
alignSelf: 'flex-end'
|
|
390
|
+
},
|
|
391
|
+
failedText: {
|
|
392
|
+
color: '#E53935',
|
|
393
|
+
fontWeight: '600',
|
|
394
|
+
marginRight: 6
|
|
395
|
+
},
|
|
396
|
+
// Row keeps the time text and the DoubleTick SVG on the same line.
|
|
397
|
+
// The time Text gets an explicit lineHeight equal to the 16px tick so
|
|
398
|
+
// both occupy the same-height box; with alignItems center they line up
|
|
399
|
+
// exactly. Without the lineHeight the Text's natural line box was
|
|
400
|
+
// shorter than the icon, so the centred tick floated above the digits.
|
|
401
|
+
timestampRow: {
|
|
402
|
+
flexDirection: 'row',
|
|
403
|
+
alignItems: 'center',
|
|
404
|
+
alignSelf: 'flex-end',
|
|
405
|
+
marginTop: 4,
|
|
406
|
+
gap: 4
|
|
407
|
+
},
|
|
408
|
+
timestampText: {
|
|
409
|
+
fontSize: 12,
|
|
410
|
+
lineHeight: 16,
|
|
411
|
+
color: '#999',
|
|
412
|
+
includeFontPadding: false,
|
|
413
|
+
textAlignVertical: 'center'
|
|
316
414
|
}
|
|
317
415
|
});
|
|
318
416
|
//# sourceMappingURL=Message.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactRedux","_Avatar","_MessageInteractions","_interopRequireDefault","_BottomReplyContainer","_MessageReply","_DeletedMessage","_chatSettingsSlice","_MODAL_TYPES","_roomsSlice","_native","_MediaMessage","_MessageTranslations","_useChatSettingState","_parseMessageBody","_useMessageHeapState","_icons","_xmppProvider","_MessageReaction","_StyledComponents","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CustomMessageContainer","styled","View","isUser","props","reply","CustomMessageBubble","deleted","backgroundMessageUser","backgroundMessage","CustomMessageText","Text","color","colorUser","CustomMessagePhoto","Image","CustomMessagePhotoContainer","TouchableOpacity","CustomUserName","CustomMessageTimestamp","Message","message","isReply","dispatch","useDispatch","client","useXmppClient","config","langSource","user","useChatSettingState","idSet","useMessageHeapState","isPressed","setIsPressed","useState","__DEV__","id","globalThis","__loggedMsg","contextMenuPosition","setContextMenuPosition","timerRef","useRef","messageRef","handleUserAvatarClick","setActiveModal","MODAL_TYPES","PROFILE","setSelectedUser","handleReplyMessage","setEditAction","isEdit","mainMessage","messageCore","JSON","parse","setActiveMessage","chatJID","roomJid","handleDeleteMessage","setDeleteModal","isDeleteModal","messageId","handleEditMessage","text","body","handleReactionMessage","emoji","reaction","sendMessageReactionStanza","firstName","lastName","xmppUsername","includes","filterEmoji","filter","handleLongPress","current","nodeHandle","findNodeHandle","UIManager","measure","x","y","width","height","pageX","pageY","screenHeight","Dimensions","enoughSpaceBelow","messageText","messageTextFilter","enabled","parseMessageBody","filterFunction","isPending","pending","jsxs","children","jsx","style","styles","overlay","ref","customMessageContainer","justifyContent","marginBottom","length","keys","transform","scale","paddingRight","undefined","onPress","profileImage","source","uri","Avatar","username","name","Pressable","onLongPress","disableInteractions","delayLongPress","isDeleted","messageColor","colors","primary","MessageReply","isMediafile","mimeType","mimetype","locationPreview","location","Fragment","DeletedMessage","enableTranslates","disableSentLogic","Date","date","toLocaleTimeString","hour","minute","DoubleTick","BottomReplyContainer","onClick","MessageFooter","disableReactions","MessageReaction","changeReaction","userName","position","closeMenu","exports","StyleSheet","create","flexDirection","padding","alignItems","absoluteFillObject","top","left","timestamp","fontSize","marginTop","alignSelf"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/Message.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactRedux","_Avatar","_MessageInteractions","_interopRequireDefault","_BottomReplyContainer","_MessageReply","_DeletedMessage","_chatSettingsSlice","_MODAL_TYPES","_roomsSlice","_native","_MediaMessage","_MessageTranslations","_useChatSettingState","_parseMessageBody","_useMessageHeapState","_icons","_xmppProvider","_useSendMessage","_MessageReaction","_StyledComponents","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CustomMessageContainer","styled","View","isUser","props","reply","CustomMessageBubble","isMedia","deleted","backgroundMessageUser","backgroundMessage","CustomMessageText","Text","color","colorUser","CustomMessagePhoto","Image","CustomMessagePhotoContainer","TouchableOpacity","CustomUserName","media","CustomMessageTimestamp","CustomTimestampRow","Message","message","isReply","dispatch","useDispatch","client","useXmppClient","config","langSource","user","useChatSettingState","idSet","failedIdSet","useMessageHeapState","retryMessage","useSendMessage","isPressed","setIsPressed","useState","__DEV__","id","globalThis","__loggedMsg","contextMenuPosition","setContextMenuPosition","timerRef","useRef","messageRef","bubbleRef","handleUserAvatarClick","setActiveModal","MODAL_TYPES","PROFILE","setSelectedUser","handleReplyMessage","setEditAction","isEdit","mainMessage","messageCore","JSON","parse","setActiveMessage","chatJID","roomJid","handleDeleteMessage","setDeleteModal","isDeleteModal","messageId","handleEditMessage","text","body","handleReactionMessage","emoji","reaction","sendMessageReactionStanza","firstName","lastName","xmppUsername","includes","filterEmoji","filter","handleLongPress","target","current","nodeHandle","findNodeHandle","UIManager","measure","_x","_y","width","height","pageX","pageY","left","right","top","bottom","messageText","messageTextFilter","enabled","parseMessageBody","filterFunction","isFailed","isPending","pending","onRetryPress","jsxs","children","jsx","style","styles","overlay","ref","customMessageContainer","justifyContent","marginBottom","length","keys","transform","scale","paddingRight","undefined","onPress","profileImage","source","uri","Avatar","username","name","Pressable","flex","alignItems","onLongPress","disableInteractions","delayLongPress","collapsable","isDeleted","isMediafile","messageColor","colors","primary","MessageReply","mimeType","mimetype","locationPreview","location","Fragment","DeletedMessage","enableTranslates","disableSentLogic","timestampText","failedText","accessibilityRole","accessibilityLabel","Date","date","toLocaleTimeString","hour","minute","DoubleTick","BottomReplyContainer","onClick","MessageFooter","disableReactions","MessageReaction","changeReaction","userName","position","closeMenu","exports","StyleSheet","create","flexDirection","padding","absoluteFillObject","timestamp","fontSize","marginTop","alignSelf","fontWeight","marginRight","timestampRow","gap","lineHeight","includeFontPadding","textAlignVertical"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/Message.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -27,6 +27,22 @@ const MessageInteractions = ({
|
|
|
27
27
|
showToast
|
|
28
28
|
} = (0, _ToastContext.useToast)();
|
|
29
29
|
const config = (0, _reactRedux.useSelector)(state => state.chatSettingStore.config);
|
|
30
|
+
const [menuSize, setMenuSize] = (0, _react.useState)({
|
|
31
|
+
width: 0,
|
|
32
|
+
height: 0
|
|
33
|
+
});
|
|
34
|
+
const handleMenuLayout = e => {
|
|
35
|
+
const {
|
|
36
|
+
width,
|
|
37
|
+
height
|
|
38
|
+
} = e.nativeEvent.layout;
|
|
39
|
+
if (width && height && (width !== menuSize.width || height !== menuSize.height)) {
|
|
40
|
+
setMenuSize({
|
|
41
|
+
width,
|
|
42
|
+
height
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
};
|
|
30
46
|
const handleCopyMessage = async text => {
|
|
31
47
|
try {
|
|
32
48
|
await Clipboard.setStringAsync(text);
|
|
@@ -51,19 +67,43 @@ const MessageInteractions = ({
|
|
|
51
67
|
replyMessage();
|
|
52
68
|
};
|
|
53
69
|
const memoPosition = (0, _react.useMemo)(() => {
|
|
54
|
-
if (position) {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
right: 10
|
|
59
|
-
};
|
|
60
|
-
}
|
|
70
|
+
if (!position) {
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
if (!menuSize.width || !menuSize.height) {
|
|
61
74
|
return {
|
|
62
|
-
top: position.
|
|
63
|
-
left:
|
|
75
|
+
top: position.bottom,
|
|
76
|
+
left: position.left,
|
|
77
|
+
opacity: 0
|
|
64
78
|
};
|
|
65
79
|
}
|
|
66
|
-
|
|
80
|
+
const {
|
|
81
|
+
width: screenWidth,
|
|
82
|
+
height: screenHeight
|
|
83
|
+
} = _reactNative.Dimensions.get('window');
|
|
84
|
+
const bottomReserve = (config?.keyboardVerticalOffset ?? 0) + 24;
|
|
85
|
+
const topReserve = 16;
|
|
86
|
+
const sideMargin = 8;
|
|
87
|
+
const spaceBelow = screenHeight - position.bottom - bottomReserve;
|
|
88
|
+
const spaceAbove = position.top - topReserve;
|
|
89
|
+
let top;
|
|
90
|
+
if (spaceBelow >= menuSize.height) {
|
|
91
|
+
top = position.bottom;
|
|
92
|
+
} else if (spaceAbove >= menuSize.height) {
|
|
93
|
+
top = position.top - menuSize.height;
|
|
94
|
+
} else {
|
|
95
|
+
top = Math.max(topReserve, screenHeight - menuSize.height - bottomReserve);
|
|
96
|
+
}
|
|
97
|
+
const leftMargin = position.left;
|
|
98
|
+
const rightMargin = screenWidth - position.right;
|
|
99
|
+
const rightAligned = rightMargin < leftMargin;
|
|
100
|
+
let left = rightAligned ? position.right - menuSize.width : position.left;
|
|
101
|
+
left = Math.max(sideMargin, Math.min(left, screenWidth - menuSize.width - sideMargin));
|
|
102
|
+
return {
|
|
103
|
+
top,
|
|
104
|
+
left
|
|
105
|
+
};
|
|
106
|
+
}, [position, menuSize, config?.keyboardVerticalOffset]);
|
|
67
107
|
if (config?.disableInteractions) {
|
|
68
108
|
return null;
|
|
69
109
|
}
|
|
@@ -79,20 +119,26 @@ const MessageInteractions = ({
|
|
|
79
119
|
onPress: closeMenu
|
|
80
120
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
81
121
|
style: [styles.contextMenu, memoPosition],
|
|
122
|
+
onLayout: handleMenuLayout,
|
|
82
123
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_ContextMenuComponents.MenuItem, {
|
|
83
124
|
onPress: () => handleCopyMessage(message.body),
|
|
84
125
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
126
|
+
style: styles.menuText,
|
|
85
127
|
children: _MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS.COPY
|
|
86
128
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS_ICONS.COPY, {})]
|
|
87
129
|
}), isUser && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
88
|
-
children: [
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
children:
|
|
92
|
-
|
|
130
|
+
children: [message?.isMediafile !== 'true' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
131
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ContextMenuComponents.Delimeter, {}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ContextMenuComponents.MenuItem, {
|
|
132
|
+
onPress: handleEditMessage,
|
|
133
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
134
|
+
style: styles.menuText,
|
|
135
|
+
children: _MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS.EDIT
|
|
136
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS_ICONS.EDIT, {})]
|
|
137
|
+
})]
|
|
93
138
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ContextMenuComponents.Delimeter, {}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ContextMenuComponents.MenuItem, {
|
|
94
139
|
onPress: handleDeleteMessage,
|
|
95
140
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
141
|
+
style: styles.menuText,
|
|
96
142
|
children: _MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS.DELETE
|
|
97
143
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_MESSAGE_INTERACTIONS.MESSAGE_INTERACTIONS_ICONS.DELETE, {})]
|
|
98
144
|
})]
|
|
@@ -110,18 +156,32 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
110
156
|
contextMenu: {
|
|
111
157
|
position: 'absolute',
|
|
112
158
|
backgroundColor: 'white',
|
|
113
|
-
paddingVertical:
|
|
114
|
-
paddingHorizontal:
|
|
115
|
-
borderRadius:
|
|
159
|
+
paddingVertical: 4,
|
|
160
|
+
paddingHorizontal: 8,
|
|
161
|
+
borderRadius: 12,
|
|
116
162
|
shadowColor: '#000',
|
|
117
163
|
shadowOffset: {
|
|
118
164
|
width: 0,
|
|
119
165
|
height: 2
|
|
120
166
|
},
|
|
121
|
-
shadowOpacity: 0.
|
|
122
|
-
shadowRadius:
|
|
123
|
-
elevation:
|
|
124
|
-
minWidth: 180
|
|
167
|
+
shadowOpacity: 0.18,
|
|
168
|
+
shadowRadius: 8,
|
|
169
|
+
elevation: 6,
|
|
170
|
+
minWidth: 180,
|
|
171
|
+
// Clip the children to the rounded corners (the hairline dividers
|
|
172
|
+
// run full width; without this they'd poke past the rounding on
|
|
173
|
+
// Android).
|
|
174
|
+
overflow: 'hidden'
|
|
175
|
+
},
|
|
176
|
+
// Explicit label styling so rows are the same height on both platforms
|
|
177
|
+
// — Android's default includeFontPadding made the menu rows taller and
|
|
178
|
+
// misaligned vs iOS. marginRight keeps the label off the trailing icon.
|
|
179
|
+
menuText: {
|
|
180
|
+
fontSize: 16,
|
|
181
|
+
color: '#141414',
|
|
182
|
+
includeFontPadding: false,
|
|
183
|
+
textAlignVertical: 'center',
|
|
184
|
+
marginRight: 16
|
|
125
185
|
}
|
|
126
186
|
});
|
|
127
187
|
//# sourceMappingURL=MessageInteractions.js.map
|