@ethora/chat-component-rn 26.6.11 → 26.6.13
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 +24 -0
- package/README.md +2 -2
- package/lib/commonjs/components/AuthForms/Login.js +2 -1
- package/lib/commonjs/components/AuthForms/Login.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js +4 -1
- package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/commonjs/components/MainComponents/ChatWrapper.js +14 -13
- package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/LoginWrapper.js +2 -1
- package/lib/commonjs/components/MainComponents/LoginWrapper.js.map +1 -1
- package/lib/commonjs/components/MainComponents/MediaMessage.js +18 -7
- package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/InteractionsOverlay.js +1 -1
- package/lib/commonjs/components/MessageBubble/InteractionsOverlay.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/Message.js +1 -1
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js +1 -1
- package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +4 -1
- package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +15 -11
- package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/GViewWebView.js +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/GViewWebView.js.map +1 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +2 -1
- package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +5 -1
- package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +10 -2
- package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +4 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +4 -1
- package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js +6 -3
- package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/commonjs/components/styled/AudioMessage.js +2 -1
- package/lib/commonjs/components/styled/AudioMessage.js.map +1 -1
- package/lib/commonjs/components/styled/MediaFilePreview.js +1 -1
- package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/commonjs/components/styled/MessageImage.js +34 -8
- package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
- package/lib/commonjs/components/styled/VideoMessage.js +36 -64
- package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
- package/lib/commonjs/context/xmppProvider.js +44 -18
- package/lib/commonjs/context/xmppProvider.js.map +1 -1
- package/lib/commonjs/helpers/initXmppRooms.js +5 -1
- package/lib/commonjs/helpers/initXmppRooms.js.map +1 -1
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js +126 -12
- package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/commonjs/helpers/secureFileUrl.js +101 -0
- package/lib/commonjs/helpers/secureFileUrl.js.map +1 -0
- package/lib/commonjs/hooks/useChatWrapperInit.js +3 -3
- package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/commonjs/hooks/useFileToken.js +10 -0
- package/lib/commonjs/hooks/useFileToken.js.map +1 -0
- package/lib/commonjs/hooks/useSendMessage.js +23 -13
- package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
- package/lib/commonjs/main.js +25 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/auth.api.js +99 -54
- package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/roomMembers.api.js +1 -1
- package/lib/commonjs/networking/api-requests/roomMembers.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/rooms.api.js +9 -9
- package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/commonjs/networking/api-requests/user.api.js +9 -9
- package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
- package/lib/commonjs/networking/apiClient.js +62 -112
- package/lib/commonjs/networking/apiClient.js.map +1 -1
- package/lib/commonjs/networking/authRefresh.js +323 -0
- package/lib/commonjs/networking/authRefresh.js.map +1 -0
- package/lib/commonjs/networking/xmppClient.js +33 -5
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/roomStore/chatSettingsSlice.js +20 -2
- package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/module/components/AuthForms/Login.js +2 -1
- package/lib/module/components/AuthForms/Login.js.map +1 -1
- package/lib/module/components/MainComponents/ChatHeader.js +4 -1
- package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
- package/lib/module/components/MainComponents/ChatWrapper.js +14 -13
- package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/LoginWrapper.js +2 -1
- package/lib/module/components/MainComponents/LoginWrapper.js.map +1 -1
- package/lib/module/components/MainComponents/MediaMessage.js +18 -7
- package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
- package/lib/module/components/MessageBubble/InteractionsOverlay.js +1 -1
- package/lib/module/components/MessageBubble/InteractionsOverlay.js.map +1 -1
- package/lib/module/components/MessageBubble/Message.js +1 -1
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js +1 -1
- package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +4 -1
- package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +15 -11
- package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/GViewWebView.js +1 -1
- package/lib/module/components/Modals/FilePreviewModal/GViewWebView.js.map +1 -1
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js +2 -1
- package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js +5 -1
- package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js +10 -2
- package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +4 -1
- package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +4 -1
- package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
- package/lib/module/components/VideoCalls/VideoCallSession.js +6 -3
- package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
- package/lib/module/components/styled/AudioMessage.js +2 -1
- package/lib/module/components/styled/AudioMessage.js.map +1 -1
- package/lib/module/components/styled/MediaFilePreview.js +1 -1
- package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
- package/lib/module/components/styled/MessageImage.js +34 -8
- package/lib/module/components/styled/MessageImage.js.map +1 -1
- package/lib/module/components/styled/VideoMessage.js +36 -64
- package/lib/module/components/styled/VideoMessage.js.map +1 -1
- package/lib/module/context/xmppProvider.js +43 -18
- package/lib/module/context/xmppProvider.js.map +1 -1
- package/lib/module/helpers/initXmppRooms.js +5 -1
- package/lib/module/helpers/initXmppRooms.js.map +1 -1
- package/lib/module/helpers/resolveInitBeforeLoadUser.js +126 -11
- package/lib/module/helpers/resolveInitBeforeLoadUser.js.map +1 -1
- package/lib/module/helpers/secureFileUrl.js +91 -0
- package/lib/module/helpers/secureFileUrl.js.map +1 -0
- package/lib/module/hooks/useChatWrapperInit.js +3 -3
- package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
- package/lib/module/hooks/useFileToken.js +5 -0
- package/lib/module/hooks/useFileToken.js.map +1 -0
- package/lib/module/hooks/useSendMessage.js +24 -14
- package/lib/module/hooks/useSendMessage.js.map +1 -1
- package/lib/module/main.js +12 -1
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/auth.api.js +96 -53
- package/lib/module/networking/api-requests/auth.api.js.map +1 -1
- package/lib/module/networking/api-requests/roomMembers.api.js +1 -1
- package/lib/module/networking/api-requests/roomMembers.api.js.map +1 -1
- package/lib/module/networking/api-requests/rooms.api.js +9 -9
- package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
- package/lib/module/networking/api-requests/user.api.js +8 -7
- package/lib/module/networking/api-requests/user.api.js.map +1 -1
- package/lib/module/networking/apiClient.js +61 -113
- package/lib/module/networking/apiClient.js.map +1 -1
- package/lib/module/networking/authRefresh.js +312 -0
- package/lib/module/networking/authRefresh.js.map +1 -0
- package/lib/module/networking/xmppClient.js +33 -5
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/roomStore/chatSettingsSlice.js +20 -2
- package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
- package/lib/typescript/components/AuthForms/Login.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/LoginWrapper.d.ts.map +1 -1
- package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
- package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
- package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
- package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
- package/lib/typescript/components/styled/AudioMessage.d.ts.map +1 -1
- package/lib/typescript/components/styled/MessageImage.d.ts +8 -0
- package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
- package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
- package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
- package/lib/typescript/helpers/initXmppRooms.d.ts.map +1 -1
- package/lib/typescript/helpers/resolveInitBeforeLoadUser.d.ts.map +1 -1
- package/lib/typescript/helpers/secureFileUrl.d.ts +7 -0
- package/lib/typescript/helpers/secureFileUrl.d.ts.map +1 -0
- package/lib/typescript/hooks/useCustomTypingIndicator.d.ts +16 -4
- package/lib/typescript/hooks/useCustomTypingIndicator.d.ts.map +1 -1
- package/lib/typescript/hooks/useFileToken.d.ts +2 -0
- package/lib/typescript/hooks/useFileToken.d.ts.map +1 -0
- package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +6 -1
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/auth.api.d.ts +3 -27
- package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
- package/lib/typescript/networking/apiClient.d.ts +12 -6
- package/lib/typescript/networking/apiClient.d.ts.map +1 -1
- package/lib/typescript/networking/authRefresh.d.ts +92 -0
- package/lib/typescript/networking/authRefresh.d.ts.map +1 -0
- package/lib/typescript/networking/xmppClient.d.ts +6 -0
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts +16 -0
- package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
- package/lib/typescript/types/types.d.ts +17 -0
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/package.json +29 -28
- package/src/components/AuthForms/Login.tsx +1 -0
- package/src/components/MainComponents/ChatHeader.tsx +4 -1
- package/src/components/MainComponents/ChatWrapper.tsx +14 -19
- package/src/components/MainComponents/LoginWrapper.tsx +1 -0
- package/src/components/MainComponents/MediaMessage.tsx +15 -5
- package/src/components/MessageBubble/InteractionsOverlay.tsx +1 -1
- package/src/components/MessageBubble/Message.tsx +1 -1
- package/src/components/MessageBubble/MessageInteractions.tsx +1 -1
- package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +4 -1
- package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +14 -10
- package/src/components/Modals/FilePreviewModal/GViewWebView.tsx +1 -1
- package/src/components/Modals/FilePreviewModal/PdfView.tsx +2 -1
- package/src/components/RoomComponents/ChatRoomItem.tsx +9 -1
- package/src/components/RoomComponents/styled/LastMessageFile.tsx +14 -2
- package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +4 -1
- package/src/components/RoomComponents/styled/LastMessageVideo.tsx +4 -1
- package/src/components/VideoCalls/VideoCallSession.tsx +8 -3
- package/src/components/styled/AudioMessage.tsx +2 -1
- package/src/components/styled/MediaFilePreview.tsx +1 -1
- package/src/components/styled/MessageImage.tsx +45 -6
- package/src/components/styled/VideoMessage.tsx +36 -60
- package/src/context/xmppProvider.tsx +45 -20
- package/src/helpers/initXmppRooms.tsx +5 -1
- package/src/helpers/resolveInitBeforeLoadUser.ts +123 -11
- package/src/helpers/secureFileUrl.ts +103 -0
- package/src/hooks/useChatWrapperInit.ts +3 -3
- package/src/hooks/useFileToken.ts +7 -0
- package/src/hooks/useSendMessage.tsx +28 -13
- package/src/main.ts +22 -1
- package/src/networking/api-requests/auth.api.ts +125 -52
- package/src/networking/api-requests/roomMembers.api.ts +1 -1
- package/src/networking/api-requests/rooms.api.ts +9 -9
- package/src/networking/api-requests/user.api.ts +8 -7
- package/src/networking/apiClient.ts +68 -123
- package/src/networking/authRefresh.ts +435 -0
- package/src/networking/xmppClient.ts +37 -5
- package/src/roomStore/chatSettingsSlice.ts +28 -3
- package/src/types/types.ts +17 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ChatWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,EAAE,EAA+B,MAAM,OAAO,CAAC;AAa9D,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAkB,MAAM,mBAAmB,CAAC;AAyBhF,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ChatWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ChatWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,EAAE,EAA+B,MAAM,OAAO,CAAC;AAa9D,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAkB,MAAM,mBAAmB,CAAC;AAyBhF,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAobrC,CAAC;AAEF,OAAO,EAAC,WAAW,EAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LoginWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAC,OAAO,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAUxD,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IACzC,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"LoginWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LoginWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAC,OAAO,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAUxD,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IACzC,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoH7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/MediaMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"MediaMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/MediaMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAmB7C,UAAU,iBAAiB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAgHD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA6H7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatProfileModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/ChatProfileModal/ChatProfileModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatProfileModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/ChatProfileModal/ChatProfileModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAyC5D,UAAU,qBAAqB;IAC7B,gBAAgB,EAAE,GAAG,CAAC;CACvB;AAED,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA8brD,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePreviewModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/FilePreviewModal/FilePreviewModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FilePreviewModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/FilePreviewModal/FilePreviewModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AA6G3D,UAAU,qBAAqB;IAC7B,gBAAgB,EAAE,GAAG,CAAC;CACvB;AAED,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA2TrD,CAAC;AAkBF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdfView.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/FilePreviewModal/PdfView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PdfView.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/FilePreviewModal/PdfView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAOnD,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAgEvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatRoomItem.d.ts","sourceRoot":"","sources":["../../../../src/components/RoomComponents/ChatRoomItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatRoomItem.d.ts","sourceRoot":"","sources":["../../../../src/components/RoomComponents/ChatRoomItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAcnD,UAAU,iBAAiB;IACzB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAwM7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LastMessageFile.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessageFile.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"LastMessageFile.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessageFile.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAenD,UAAU,oBACR,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,GAAG,iBAAiB,CAAC;CAAG;AAK3E,QAAA,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CAwC7C,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LastMessagePhoto.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessagePhoto.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"LastMessagePhoto.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessagePhoto.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIlC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAsBnD,UAAU,qBACR,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,GAAG,iBAAiB,CAAC;CAAG;AAE3E,QAAA,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAyB/C,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LastMessageVideo.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessageVideo.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"LastMessageVideo.d.ts","sourceRoot":"","sources":["../../../../../src/components/RoomComponents/styled/LastMessageVideo.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIlC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAqCnD,UAAU,qBACR,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,cAAc,CAAC;CAAG;AAEpE,QAAA,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CA0B/C,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoCallSession.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallSession.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAMH,MAAM,OAAO,CAAC;AASf,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA6CnD,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kDAAkD;IAClD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,
|
|
1
|
+
{"version":3,"file":"VideoCallSession.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallSession.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAMH,MAAM,OAAO,CAAC;AASf,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA6CnD,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kDAAkD;IAClD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAoctD,CAAC;AAoIF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/AudioMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AudioMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/AudioMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AA+B3D,KAAK,iBAAiB,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAqRF,QAAA,MAAM,YAAY,GAAI,4CAKnB,iBAAiB,sBA4dnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface CustomMessageImageProps {
|
|
3
|
+
/** Full-size file. Opened in the preview modal, NOT rendered inline. */
|
|
3
4
|
fileURL: string;
|
|
4
5
|
fileName: string;
|
|
5
6
|
mimetype: string;
|
|
7
|
+
/**
|
|
8
|
+
* Server-generated thumbnail — what the bubble actually renders, same
|
|
9
|
+
* as the web client. The full-size original can be many megabytes and,
|
|
10
|
+
* for secure uploads, is served from a different (membership-gated)
|
|
11
|
+
* route; rendering it inline is what left the bubbles blank.
|
|
12
|
+
*/
|
|
13
|
+
locationPreview?: string;
|
|
6
14
|
}
|
|
7
15
|
declare const CustomMessageImage: React.FC<CustomMessageImageProps>;
|
|
8
16
|
export default CustomMessageImage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageImage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/MessageImage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageImage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/MessageImage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAoBnD,UAAU,uBAAuB;IAC/B,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AASD,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA6FzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/VideoMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"VideoMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/styled/VideoMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAmBnD,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAqGD,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA8BzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xmppProvider.d.ts","sourceRoot":"","sources":["../../../src/context/xmppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,SAAS,EAQV,MAAM,OAAO,CAAC;AAIf,OAAO,UAEN,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,OAAO,EACP,uBAAuB,EAEvB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAkCxB,UAAU,QAAQ;IAChB,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,gBAAgB,EAAE,CAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,qBAAqB,KACjC,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IAIjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAID,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"xmppProvider.d.ts","sourceRoot":"","sources":["../../../src/context/xmppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,SAAS,EAQV,MAAM,OAAO,CAAC;AAIf,OAAO,UAEN,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,OAAO,EACP,uBAAuB,EAEvB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAkCxB,UAAU,QAAQ;IAChB,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,gBAAgB,EAAE,CAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,qBAAqB,KACjC,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IAIjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAID,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAutBpD,CAAC;AAEF,eAAO,MAAM,aAAa,uBAkBzB,CAAC;AAEF,iFAAiF;AACjF,wBAAgB,cAAc,SAE7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initXmppRooms.d.ts","sourceRoot":"","sources":["../../../src/helpers/initXmppRooms.tsx"],"names":[],"mappings":"AAGA,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"initXmppRooms.d.ts","sourceRoot":"","sources":["../../../src/helpers/initXmppRooms.tsx"],"names":[],"mappings":"AAGA,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAItD,QAAA,MAAM,aAAa,GACjB,MAAM,IAAI,EACV,QAAQ,OAAO,EACf,YAAY,UAAU,EACtB,QAAQ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,EAChC,UAAU,MAAM,kBA2DjB,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveInitBeforeLoadUser.d.ts","sourceRoot":"","sources":["../../../src/helpers/resolveInitBeforeLoadUser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolveInitBeforeLoadUser.d.ts","sourceRoot":"","sources":["../../../src/helpers/resolveInitBeforeLoadUser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAO/C,UAAU,gCAAgC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AA0PD,eAAO,MAAM,yBAAyB,GACpC,UAAU,gCAAgC,KACzC,OAAO,CAAC,IAAI,GAAG,IAAI,CA8ErB,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,OAAO,IAAI,GAAG,IAAI,SAG1D,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,6BAA6B,GACxC,SAAS,OAAO,EAChB,SAAS,WAAW,KACnB,OAAO,CAAC,IAAI,GAAG,IAAI,CAyDrB,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const resolveFileUrl: (url?: string | null) => string;
|
|
2
|
+
export declare const isSecureFileUrl: (url?: string | null) => boolean;
|
|
3
|
+
export declare const appendFileToken: (url: string | null | undefined, fileToken: string | null | undefined) => string;
|
|
4
|
+
export declare const withFileToken: (url?: string | null) => string;
|
|
5
|
+
export declare const requestFileTokenRecovery: () => Promise<boolean>;
|
|
6
|
+
export declare const __resetFileTokenRecoveryForTests: () => void;
|
|
7
|
+
//# sourceMappingURL=secureFileUrl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secureFileUrl.d.ts","sourceRoot":"","sources":["../../../src/helpers/secureFileUrl.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,MAQpD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,OASrD,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,EAC9B,WAAW,MAAM,GAAG,IAAI,GAAG,SAAS,KACnC,MAuBF,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,GAAG,IAAI,KAAG,MAIjD,CAAC;AAMJ,eAAO,MAAM,wBAAwB,QAAO,OAAO,CAAC,OAAO,CA6B1D,CAAC;AAEF,eAAO,MAAM,gCAAgC,QAAO,IAGnD,CAAC"}
|
|
@@ -67,7 +67,10 @@ export declare const useCustomTypingIndicator: (roomJID: string) => {
|
|
|
67
67
|
cursor?: import("react-native").CursorValue | undefined;
|
|
68
68
|
filter?: ReadonlyArray<import("react-native").FilterFunction> | string | undefined;
|
|
69
69
|
mixBlendMode?: import("react-native").BlendMode | undefined;
|
|
70
|
-
experimental_backgroundImage?: ReadonlyArray<import("react-native").
|
|
70
|
+
experimental_backgroundImage?: ReadonlyArray<import("react-native").BackgroundImageValue> | string | undefined;
|
|
71
|
+
experimental_backgroundSize?: ReadonlyArray<import("react-native").BackgroundSizeValue> | string | undefined;
|
|
72
|
+
experimental_backgroundPosition?: ReadonlyArray<import("react-native").BackgroundPositionValue> | string | undefined;
|
|
73
|
+
experimental_backgroundRepeat?: ReadonlyArray<import("react-native").BackgroundRepeatValue> | string | undefined;
|
|
71
74
|
alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | undefined;
|
|
72
75
|
alignItems?: import("react-native").FlexAlignType | undefined;
|
|
73
76
|
alignSelf?: "auto" | import("react-native").FlexAlignType | undefined;
|
|
@@ -202,7 +205,10 @@ export declare const useCustomTypingIndicator: (roomJID: string) => {
|
|
|
202
205
|
boxShadow?: ReadonlyArray<import("react-native").BoxShadowValue> | string | undefined;
|
|
203
206
|
filter?: ReadonlyArray<import("react-native").FilterFunction> | string | undefined;
|
|
204
207
|
mixBlendMode?: import("react-native").BlendMode | undefined;
|
|
205
|
-
experimental_backgroundImage?: ReadonlyArray<import("react-native").
|
|
208
|
+
experimental_backgroundImage?: ReadonlyArray<import("react-native").BackgroundImageValue> | string | undefined;
|
|
209
|
+
experimental_backgroundSize?: ReadonlyArray<import("react-native").BackgroundSizeValue> | string | undefined;
|
|
210
|
+
experimental_backgroundPosition?: ReadonlyArray<import("react-native").BackgroundPositionValue> | string | undefined;
|
|
211
|
+
experimental_backgroundRepeat?: ReadonlyArray<import("react-native").BackgroundRepeatValue> | string | undefined;
|
|
206
212
|
alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | undefined;
|
|
207
213
|
alignItems?: import("react-native").FlexAlignType | undefined;
|
|
208
214
|
alignSelf?: "auto" | import("react-native").FlexAlignType | undefined;
|
|
@@ -335,7 +341,10 @@ export declare const useCustomTypingIndicator: (roomJID: string) => {
|
|
|
335
341
|
cursor?: import("react-native").CursorValue | undefined;
|
|
336
342
|
filter?: ReadonlyArray<import("react-native").FilterFunction> | string | undefined;
|
|
337
343
|
mixBlendMode?: import("react-native").BlendMode | undefined;
|
|
338
|
-
experimental_backgroundImage?: ReadonlyArray<import("react-native").
|
|
344
|
+
experimental_backgroundImage?: ReadonlyArray<import("react-native").BackgroundImageValue> | string | undefined;
|
|
345
|
+
experimental_backgroundSize?: ReadonlyArray<import("react-native").BackgroundSizeValue> | string | undefined;
|
|
346
|
+
experimental_backgroundPosition?: ReadonlyArray<import("react-native").BackgroundPositionValue> | string | undefined;
|
|
347
|
+
experimental_backgroundRepeat?: ReadonlyArray<import("react-native").BackgroundRepeatValue> | string | undefined;
|
|
339
348
|
alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | undefined;
|
|
340
349
|
alignItems?: import("react-native").FlexAlignType | undefined;
|
|
341
350
|
alignSelf?: "auto" | import("react-native").FlexAlignType | undefined;
|
|
@@ -465,7 +474,10 @@ export declare const useCustomTypingIndicator: (roomJID: string) => {
|
|
|
465
474
|
boxShadow?: ReadonlyArray<import("react-native").BoxShadowValue> | string | undefined;
|
|
466
475
|
filter?: ReadonlyArray<import("react-native").FilterFunction> | string | undefined;
|
|
467
476
|
mixBlendMode?: import("react-native").BlendMode | undefined;
|
|
468
|
-
experimental_backgroundImage?: ReadonlyArray<import("react-native").
|
|
477
|
+
experimental_backgroundImage?: ReadonlyArray<import("react-native").BackgroundImageValue> | string | undefined;
|
|
478
|
+
experimental_backgroundSize?: ReadonlyArray<import("react-native").BackgroundSizeValue> | string | undefined;
|
|
479
|
+
experimental_backgroundPosition?: ReadonlyArray<import("react-native").BackgroundPositionValue> | string | undefined;
|
|
480
|
+
experimental_backgroundRepeat?: ReadonlyArray<import("react-native").BackgroundRepeatValue> | string | undefined;
|
|
469
481
|
alignContent?: "flex-start" | "flex-end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | undefined;
|
|
470
482
|
alignItems?: import("react-native").FlexAlignType | undefined;
|
|
471
483
|
alignSelf?: "auto" | import("react-native").FlexAlignType | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCustomTypingIndicator.d.ts","sourceRoot":"","sources":["../../../src/hooks/useCustomTypingIndicator.tsx"],"names":[],"mappings":"AASA;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS,MAAM;;;;;;;;;;;;;;;;iCAYtC,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;;kCAkC/C,MAAM
|
|
1
|
+
{"version":3,"file":"useCustomTypingIndicator.d.ts","sourceRoot":"","sources":["../../../src/hooks/useCustomTypingIndicator.tsx"],"names":[],"mappings":"AASA;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS,MAAM;;;;;;;;;;;;;;;;iCAYtC,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;;kCAkC/C,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgEpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;4BAWjB,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAqCA,MAAM,EAAE;8BAMd,MAAM,EAAE;+BAIP,MAAM,EAAE;;CAIlC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFileToken.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFileToken.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,QAAO,MAG7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSendMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSendMessage.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,gBAAgB,CAAC;AAwCxD,eAAO,MAAM,cAAc,GAAI,kBAAkB,OAAO;2BAwCzC,MAAM,iBACA,MAAM,YACX,OAAO,cACL,OAAO,gBACL,MAAM,eAOP,MAAM;
|
|
1
|
+
{"version":3,"file":"useSendMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSendMessage.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,gBAAgB,CAAC;AAwCxD,eAAO,MAAM,cAAc,GAAI,kBAAkB,OAAO;2BAwCzC,MAAM,iBACA,MAAM,YACX,OAAO,cACL,OAAO,gBACL,MAAM,eAOP,MAAM;sBAmOb,GAAG,QACH,MAAM,iBACG,MAAM,YACZ,OAAO,cACL,OAAO,gBACL,MAAM,eACN,MAAM;+BAuWL,MAAM,mBAAmB,MAAM;6BAvC9B,MAAM;kDAwEb,MAAM,KAAG,OAAO;CAoB7B,CAAC"}
|
package/lib/typescript/main.d.ts
CHANGED
|
@@ -7,7 +7,10 @@
|
|
|
7
7
|
*
|
|
8
8
|
* <Chat
|
|
9
9
|
* config={{
|
|
10
|
-
*
|
|
10
|
+
* // The API ROOT — the SDK versions every path itself
|
|
11
|
+
* // (`/v1/...`, `/v2/...`). A legacy `.../v1` is accepted and
|
|
12
|
+
* // normalised, so existing integrations keep working.
|
|
13
|
+
* baseUrl: 'https://api.chat.ethora.com',
|
|
11
14
|
* xmppSettings: { host: 'xmpp.chat.ethora.com' },
|
|
12
15
|
* jwtLogin: { enabled: true, token: '<paste JWT>' },
|
|
13
16
|
* initBeforeLoad: true,
|
|
@@ -34,4 +37,6 @@ export type { UiStringTable } from './i18n/strings';
|
|
|
34
37
|
export type { IConfig, IRoom, IMessage, IUser, User, ConfigUser, MessageProps, TypographyConfig, RNFontSource, ChatTextStyle, VideoCallsConfig, VideoCallIcons, } from './types/types';
|
|
35
38
|
export type { Iso639_1Codes } from './types/models/language.model';
|
|
36
39
|
export type { TranslateMode } from './utils/translateModePolicy';
|
|
40
|
+
export { refreshAuthTokens, refreshAuthTokensQuietly, RefreshFatalError, isRefreshFatalError, } from './networking/authRefresh';
|
|
41
|
+
export type { RefreshErrorCode, RefreshResult, RefreshOptions, } from './networking/authRefresh';
|
|
37
42
|
//# sourceMappingURL=main.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,gCAAgC,CAAC;AAGxC,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAKpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAIpD,YAAY,EACV,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAQjE,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,MAAM,0BAA0B,CAAC"}
|
|
@@ -3,39 +3,15 @@ export declare function loginEmail(email: string, password: string): Promise<imp
|
|
|
3
3
|
user: User;
|
|
4
4
|
refreshToken: string;
|
|
5
5
|
token: string;
|
|
6
|
+
fileToken?: string;
|
|
6
7
|
}, any, {}>>;
|
|
7
8
|
export declare function loginSocial(idToken: string, accessToken: string, loginType: string, authToken?: string): Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
8
9
|
export declare function registerSocial(idToken: string, accessToken: string, authToken: string, loginType: string, signUpPlan?: string): Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
9
10
|
export declare function checkEmailExist(email: string): Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
10
11
|
export declare function loginViaJwt(clientToken: string): Promise<User>;
|
|
11
12
|
export declare function uploadFile(formData: FormData): Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
12
|
-
|
|
13
|
-
* Multipart upload of a picked file, sent over `XMLHttpRequest`.
|
|
14
|
-
*
|
|
15
|
-
* The transport matters here, and both obvious alternatives are wrong:
|
|
16
|
-
*
|
|
17
|
-
* - `fetch`. Expo SDK 54 shipped a WinterCG-compliant fetch and SDK 57
|
|
18
|
-
* installs it as the GLOBAL fetch. It accepts only `Blob` / `File` /
|
|
19
|
-
* string form parts, so React Native's own `{ uri, type, name }` part
|
|
20
|
-
* — which is exactly what an image/document picker hands us — is
|
|
21
|
-
* rejected with "Unsupported FormDataPart implementation", surfacing
|
|
22
|
-
* to the caller as ERR_NETWORK. A host can set
|
|
23
|
-
* `EXPO_PUBLIC_USE_RN_FETCH=1`, but that opts their whole app out of
|
|
24
|
-
* Expo's fetch just to satisfy this SDK; not a cost we get to impose
|
|
25
|
-
* on a consumer.
|
|
26
|
-
* - axios. It forces its own `Content-Type: multipart/form-data`
|
|
27
|
-
* WITHOUT a boundary, so the server mis-parses one file as many and
|
|
28
|
-
* answers HTTP 413 TOO_MANY_FILES (bug #10 — this is why the upload
|
|
29
|
-
* was moved off axios in the first place).
|
|
30
|
-
*
|
|
31
|
-
* `XMLHttpRequest` avoids both. Expo replaces `fetch`, not `XHR`, so the
|
|
32
|
-
* request still goes through React Native's native networking module,
|
|
33
|
-
* which understands the `{ uri, type, name }` part, streams the file
|
|
34
|
-
* straight from disk (a 50MB video never lands in JS memory) and writes
|
|
35
|
-
* its own `Content-Type` with a valid boundary — which is precisely why
|
|
36
|
-
* we must NOT set that header ourselves below.
|
|
37
|
-
*/
|
|
38
|
-
export declare function uploadFileMultipart(formData: FormData): Promise<{
|
|
13
|
+
export declare function uploadFileV2(formData: FormData, activeRoomJID: string): Promise<{
|
|
39
14
|
data: any;
|
|
40
15
|
}>;
|
|
16
|
+
export declare const __resetSecureUploadLatchForTests: () => void;
|
|
41
17
|
//# sourceMappingURL=auth.api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.api.d.ts","sourceRoot":"","sources":["../../../../src/networking/api-requests/auth.api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAezC,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;UAEtD,IAAI;kBACI,MAAM;WACb,MAAM;
|
|
1
|
+
{"version":3,"file":"auth.api.d.ts","sourceRoot":"","sources":["../../../../src/networking/api-requests/auth.api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAezC,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;UAEtD,IAAI;kBACI,MAAM;WACb,MAAM;gBACD,MAAM;aAuBrB;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAoB,wDAYhC;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,wDAapB;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,wDAM5C;AAED,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BpE;AAuBD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,wDAa5C;AA8GD,wBAAsB,YAAY,CAChC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CA8BxB;AAED,eAAO,MAAM,gCAAgC,QAAO,IAEnD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.api.d.ts","sourceRoot":"","sources":["../../../../src/networking/api-requests/user.api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"user.api.d.ts","sourceRoot":"","sources":["../../../../src/networking/api-requests/user.api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAazE;AAED,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,wDAOjD;AAED,wBAAgB,eAAe,yDAQ9B;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,wDAO5C;AAED,wBAAgB,QAAQ,yDAEvB;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,GAAG,wDAEjC;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC,CAczE"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
+
import { RefreshResult } from './authRefresh';
|
|
1
2
|
declare const http: import("axios").AxiosInstance;
|
|
3
|
+
export declare const normalizeApiPath: (path?: string) => string | undefined;
|
|
2
4
|
export declare function setBaseURL(baseUrl?: string, appToken?: string): void;
|
|
3
5
|
export declare function getCurrentAppToken(): string;
|
|
4
6
|
export declare function getCurrentBaseURL(): string;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @deprecated Import `refreshAuthTokens` from `./authRefresh` instead.
|
|
9
|
+
*
|
|
10
|
+
* Kept as a thin forwarder so existing call sites keep working while
|
|
11
|
+
* they migrate. Declared as a function (not `const refresh =
|
|
12
|
+
* refreshAuthTokens`) on purpose: this module and `authRefresh` import
|
|
13
|
+
* each other, and a const would capture the binding before the other
|
|
14
|
+
* module finished evaluating.
|
|
15
|
+
*/
|
|
16
|
+
export declare function refresh(): Promise<RefreshResult>;
|
|
11
17
|
export default http;
|
|
12
18
|
//# sourceMappingURL=apiClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../../src/networking/apiClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../../src/networking/apiClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,aAAa,EACd,MAAM,eAAe,CAAC;AAWvB,QAAA,MAAM,IAAI,+BAER,CAAC;AASH,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SAKzD,CAAC;AAEF,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,QAS7D;AAED,wBAAgB,kBAAkB,WAEjC;AAED,wBAAgB,iBAAiB,WAEhC;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAEhD;AAkED,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* THE single refresh-token rotation point for the SDK.
|
|
3
|
+
*
|
|
4
|
+
* The backend now runs refresh-token ROTATION with REUSE DETECTION:
|
|
5
|
+
* every successful `/users/login/refresh` burns the presented refresh
|
|
6
|
+
* token and issues a new one. Presenting an already-rotated token is
|
|
7
|
+
* indistinguishable, server-side, from a stolen token — so it is
|
|
8
|
+
* treated as theft and (once the backend leaves monitor mode and
|
|
9
|
+
* enables enforcing mode) kills the whole token family.
|
|
10
|
+
*
|
|
11
|
+
* That puts three hard obligations on the client:
|
|
12
|
+
*
|
|
13
|
+
* 1. Persist the NEW refreshToken from every response, immediately,
|
|
14
|
+
* before any other logic can throw and drop it on the floor.
|
|
15
|
+
* 2. Never rotate concurrently. Two parallel refreshes both start
|
|
16
|
+
* from the same token; the loser presents a burned one and looks
|
|
17
|
+
* like an attacker. React Native is single-process, so a shared
|
|
18
|
+
* in-flight promise is the whole lock — no Web Locks needed (the
|
|
19
|
+
* web build of this component does need them, see its own
|
|
20
|
+
* `authRefresh.ts`).
|
|
21
|
+
* 3. Route EVERY refresh path through here. One "side" refresh
|
|
22
|
+
* elsewhere in the codebase breaks the scheme for everyone.
|
|
23
|
+
*
|
|
24
|
+
* Callers must also stop treating 401 as "log out". Two of the four
|
|
25
|
+
* refresh error codes are race signals, not auth failures — see
|
|
26
|
+
* `RefreshErrorCode` below and `RefreshFatalError`.
|
|
27
|
+
*/
|
|
28
|
+
export type RefreshErrorCode = 'REFRESH_IN_PROGRESS' | 'REFRESH_TOKEN_ALREADY_ROTATED' | 'REFRESH_TOKEN_REUSE_DETECTED' | 'REFRESH_TOKEN_NOT_FOUND';
|
|
29
|
+
export interface RefreshResult {
|
|
30
|
+
token: string;
|
|
31
|
+
refreshToken: string;
|
|
32
|
+
/**
|
|
33
|
+
* Present in the backend response but not currently consumed
|
|
34
|
+
* anywhere in the SDK. Passed through so callers can use it without
|
|
35
|
+
* a second round trip.
|
|
36
|
+
* TODO(phase-7): decide whether to persist this on `User`.
|
|
37
|
+
*/
|
|
38
|
+
wsToken?: string;
|
|
39
|
+
xmppPassword?: string;
|
|
40
|
+
fileToken?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Thrown when the session is genuinely dead and the caller must do a
|
|
44
|
+
* hard logout (clear storage, drop XMPP, send the user to login).
|
|
45
|
+
*
|
|
46
|
+
* Anything else this module rejects with — network errors, 5xx, an
|
|
47
|
+
* unrecognised 401 — is NOT fatal and must NOT trigger a logout.
|
|
48
|
+
*/
|
|
49
|
+
export declare class RefreshFatalError extends Error {
|
|
50
|
+
code: RefreshErrorCode;
|
|
51
|
+
constructor(code: RefreshErrorCode, message?: string);
|
|
52
|
+
}
|
|
53
|
+
export declare const isRefreshFatalError: (error: unknown) => error is RefreshFatalError;
|
|
54
|
+
/**
|
|
55
|
+
* All four codes come back as HTTP 401, so the status alone tells us
|
|
56
|
+
* nothing — the code in the body is the only signal.
|
|
57
|
+
*
|
|
58
|
+
* TODO(backend-confirm): the exact location of `code` in the payload is
|
|
59
|
+
* not documented yet. Until it is, probe every shape the API uses
|
|
60
|
+
* elsewhere and take the first hit. Once confirmed, collapse this to
|
|
61
|
+
* the single real path.
|
|
62
|
+
*/
|
|
63
|
+
export declare const parseRefreshErrorCode: (error: unknown) => RefreshErrorCode | null;
|
|
64
|
+
export interface RefreshOptions {
|
|
65
|
+
/**
|
|
66
|
+
* Rotate THIS token instead of the one in the store/storage.
|
|
67
|
+
*
|
|
68
|
+
* Only for bootstrap, where the session being restored isn't in the
|
|
69
|
+
* store yet (a host-supplied `userLogin.user`, a persisted record).
|
|
70
|
+
* Everywhere else, omitting it is the correct and safer choice: the
|
|
71
|
+
* module then always presents the newest token it knows about.
|
|
72
|
+
*/
|
|
73
|
+
refreshToken?: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Rotate the tokens. Concurrent callers share ONE request — this is the
|
|
77
|
+
* lock the new backend scheme requires.
|
|
78
|
+
*
|
|
79
|
+
* Rejects with `RefreshFatalError` when the session is dead (caller
|
|
80
|
+
* should hard-logout) and with a plain error otherwise (caller should
|
|
81
|
+
* surface the failure and leave the session alone).
|
|
82
|
+
*/
|
|
83
|
+
export declare function refreshAuthTokens(options?: RefreshOptions): Promise<RefreshResult>;
|
|
84
|
+
/**
|
|
85
|
+
* Fire-and-forget variant for call sites that only want "make sure the
|
|
86
|
+
* tokens are fresh" and have no meaningful error handling — chat
|
|
87
|
+
* bootstrap, XMPP reconnect. Never rejects.
|
|
88
|
+
*/
|
|
89
|
+
export declare function refreshAuthTokensQuietly(): Promise<RefreshResult | null>;
|
|
90
|
+
/** Test seam — drops any shared in-flight promise between cases. */
|
|
91
|
+
export declare function __resetAuthRefreshStateForTests(): void;
|
|
92
|
+
//# sourceMappingURL=authRefresh.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authRefresh.d.ts","sourceRoot":"","sources":["../../../src/networking/authRefresh.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,+BAA+B,GAC/B,8BAA8B,GAC9B,yBAAyB,CAAC;AAE9B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,IAAI,EAAE,gBAAgB,CAAC;gBAEX,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,MAAM;CAQrD;AAED,eAAO,MAAM,mBAAmB,GAC9B,OAAO,OAAO,KACb,KAAK,IAAI,iBAEgD,CAAC;AA2B7D;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAChC,OAAO,OAAO,KACb,gBAAgB,GAAG,IA2BrB,CAAC;AAsOF,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CAYxB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAW9E;AAED,oEAAoE;AACpE,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD"}
|
|
@@ -29,6 +29,12 @@ export declare class XmppClient {
|
|
|
29
29
|
private reconnectTimer;
|
|
30
30
|
private reconnecting;
|
|
31
31
|
lastAuthError: 'not-authorized' | null;
|
|
32
|
+
/**
|
|
33
|
+
* When the credentials currently held were last (re)minted. Drives the
|
|
34
|
+
* throttle in `reconnect()` so a flapping connection can't rotate the
|
|
35
|
+
* session once per flap.
|
|
36
|
+
*/
|
|
37
|
+
private credentialsRefreshedAt;
|
|
32
38
|
private credentialsProvider;
|
|
33
39
|
private credentialsRefreshInFlight;
|
|
34
40
|
private onOnlineCallback;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xmppClient.d.ts","sourceRoot":"","sources":["../../../src/networking/xmppClient.ts"],"names":[],"mappings":"AAAA,OAAa,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAgFvD,KAAK,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAEtE,UAAU,cAAc;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"xmppClient.d.ts","sourceRoot":"","sources":["../../../src/networking/xmppClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,9 +32,23 @@ declare const reducers: {
|
|
|
32
32
|
setDeleteModal: (state: WritableDraft<ChatState>, action: PayloadAction<DeleteModal | undefined>) => void;
|
|
33
33
|
setStoreClient: (state: WritableDraft<ChatState>, action: PayloadAction<any>) => void;
|
|
34
34
|
setSelectedUser: (state: WritableDraft<ChatState>, action: PayloadAction<IUser | undefined>) => void;
|
|
35
|
+
/**
|
|
36
|
+
* Token rotation. Dispatched from ONE place only — `authRefresh` —
|
|
37
|
+
* which awaits the AsyncStorage write immediately afterwards, before
|
|
38
|
+
* resolving its promise.
|
|
39
|
+
*
|
|
40
|
+
* The reducer used to fire its own best-effort write here. That was
|
|
41
|
+
* both redundant and racy (two writers, no ordering), and a
|
|
42
|
+
* fire-and-forget write can be lost if the app dies right after a
|
|
43
|
+
* rotation — which on a backend with reuse detection means the next
|
|
44
|
+
* launch presents a burned token. Persistence now belongs to the
|
|
45
|
+
* caller, which can actually await it.
|
|
46
|
+
*/
|
|
35
47
|
refreshTokens: (state: WritableDraft<ChatState>, action: PayloadAction<{
|
|
36
48
|
token: string;
|
|
37
49
|
refreshToken: string;
|
|
50
|
+
xmppPassword?: string;
|
|
51
|
+
fileToken?: string;
|
|
38
52
|
}>) => void;
|
|
39
53
|
logout: (state: WritableDraft<ChatState>) => void;
|
|
40
54
|
setLangSource: (state: WritableDraft<ChatState>, action: PayloadAction<Iso639_1Codes | undefined>) => void;
|
|
@@ -44,6 +58,8 @@ export declare const chatSlice: Slice<ChatState, typeof reducers, 'chat'>;
|
|
|
44
58
|
export declare const setUser: import("@reduxjs/toolkit").ActionCreatorWithPayload<User, "chat/setUser">, setConfig: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<IConfig | undefined, "chat/setConfig">, refreshTokens: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
45
59
|
token: string;
|
|
46
60
|
refreshToken: string;
|
|
61
|
+
xmppPassword?: string;
|
|
62
|
+
fileToken?: string;
|
|
47
63
|
}, "chat/refreshTokens">, logout: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chat/logout">, setActiveModal: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, "chat/setActiveModal">, setDeleteModal: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<DeleteModal | undefined, "chat/setDeleteModal">, setSelectedUser: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<IUser | undefined, "chat/setSelectedUser">, updateUser: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
48
64
|
updates: Partial<User>;
|
|
49
65
|
}, "chat/updateUser">, setActiveFile: import("@reduxjs/toolkit").ActionCreatorWithPayload<ModalFile, "chat/setActiveFile">, setStoreClient: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "chat/setStoreClient">, setLangSource: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<Iso639_1Codes | undefined, "chat/setLangSource">, setTranslateMode: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TranslateMode | undefined, "chat/setTranslateMode">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatSettingsSlice.d.ts","sourceRoot":"","sources":["../../../src/roomStore/chatSettingsSlice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EACL,WAAW,EAEX,OAAO,EACP,KAAK,EACL,SAAS,EACT,SAAS,EACT,IAAI,EACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAIlE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,eAAO,MAAM,kBAAkB,GAAI,QAAQ,IAAI,KAAG,
|
|
1
|
+
{"version":3,"file":"chatSettingsSlice.d.ts","sourceRoot":"","sources":["../../../src/roomStore/chatSettingsSlice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EACL,WAAW,EAEX,OAAO,EACP,KAAK,EACL,SAAS,EACT,SAAS,EACT,IAAI,EACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAIlE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,eAAO,MAAM,kBAAkB,GAAI,QAAQ,IAAI,KAAG,IAgCjD,CAAC;AA8CF,QAAA,MAAM,QAAQ;qBACK,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,IAAI,CAAC;sBAMpD,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC;uBAU1E,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC;4BAM/D,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;2BAGvE,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,SAAS,CAAC;4BAGzD,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;4BAGxE,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,GAAG,CAAC;6BAGnD,aAAa,CAAC,SAAS,CAAC,UAAU,aAAa,CAAC,KAAK,GAAG,SAAS,CAAC;IAG3F;;;;;;;;;;;OAWG;2BAEM,aAAa,CAAC,SAAS,CAAC,UACvB,aAAa,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;oBAaY,aAAa,CAAC,SAAS,CAAC;2BAS/B,aAAa,CAAC,SAAS,CAAC,UACvB,aAAa,CAAC,aAAa,GAAG,SAAS,CAAC;8BAKzC,aAAa,CAAC,SAAS,CAAC,UACvB,aAAa,CAAC,aAAa,GAAG,SAAS,CAAC;CAInD,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,MAAM,CAI9D,CAAC;AAEH,eAAO,MACL,OAAO,6EACP,SAAS,sGACT,aAAa;WAhDF,MAAM;kBACC,MAAM;mBACL,MAAM;gBACT,MAAM;0BA8CtB,MAAM,yEACN,cAAc,0GACd,cAAc,+GACd,eAAe,0GACf,UAAU;aAnGmE,OAAO,CAAC,IAAI,CAAC;uBAoG1F,aAAa,wFACb,cAAc,mFACd,aAAa,gHACb,gBAAgB,iHACG,CAAC;;AAEtB,wBAAiC"}
|
|
@@ -83,6 +83,7 @@ export interface User {
|
|
|
83
83
|
];
|
|
84
84
|
appId: string;
|
|
85
85
|
xmppPassword: string;
|
|
86
|
+
fileToken?: string;
|
|
86
87
|
homeScreen?: string;
|
|
87
88
|
registrationChannelType?: string;
|
|
88
89
|
updatedAt?: string;
|
|
@@ -384,9 +385,25 @@ export interface IConfig {
|
|
|
384
385
|
defaultLogin?: boolean;
|
|
385
386
|
refreshTokens?: {
|
|
386
387
|
enabled: boolean;
|
|
388
|
+
/**
|
|
389
|
+
* Host-owned rotation. When set, the SDK calls this INSTEAD of
|
|
390
|
+
* `/users/login/refresh` — always, including during bootstrap — and
|
|
391
|
+
* never rotates the Ethora refresh token itself. Serialised through
|
|
392
|
+
* the same lock as the built-in path.
|
|
393
|
+
*
|
|
394
|
+
* Return `refreshToken` whenever the host's flow actually rotates an
|
|
395
|
+
* Ethora refresh token: the backend now treats a re-presented one as
|
|
396
|
+
* theft, so omitting it leaves a burned token in storage that ends
|
|
397
|
+
* the session the next time it is used. It stays optional because
|
|
398
|
+
* some hosts re-mint an access token from a different authority
|
|
399
|
+
* (SuperTokens, an owner-session endpoint) and hold no Ethora
|
|
400
|
+
* refresh token at all.
|
|
401
|
+
*/
|
|
387
402
|
refreshFunction?: () => Promise<{
|
|
388
403
|
accessToken: string;
|
|
389
404
|
refreshToken?: string;
|
|
405
|
+
fileToken?: string;
|
|
406
|
+
xmppPassword?: string;
|
|
390
407
|
} | null>;
|
|
391
408
|
};
|
|
392
409
|
initBeforeLoad?: boolean;
|