@ethora/chat-component-rn 26.6.12 → 26.7.1

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.
Files changed (281) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +2 -2
  3. package/lib/commonjs/components/AuthForms/Login.js +4 -4
  4. package/lib/commonjs/components/AuthForms/Login.js.map +1 -1
  5. package/lib/commonjs/components/MainComponents/ChatHeader.js +4 -1
  6. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  7. package/lib/commonjs/components/MainComponents/ChatWrapper.js +14 -13
  8. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  9. package/lib/commonjs/components/MainComponents/LoginWrapper.js +2 -1
  10. package/lib/commonjs/components/MainComponents/LoginWrapper.js.map +1 -1
  11. package/lib/commonjs/components/MainComponents/MediaMessage.js +17 -6
  12. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  13. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js +9 -8
  14. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  15. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +4 -1
  16. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  17. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +8 -7
  18. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  19. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +2 -1
  20. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  21. package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js +2 -1
  22. package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js.map +1 -1
  23. package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
  24. package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
  25. package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js +7 -21
  26. package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
  27. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +5 -1
  28. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  29. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +10 -2
  30. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  31. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +4 -1
  32. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  33. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +4 -1
  34. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  35. package/lib/commonjs/components/styled/AudioMessage.js +2 -1
  36. package/lib/commonjs/components/styled/AudioMessage.js.map +1 -1
  37. package/lib/commonjs/components/styled/MessageImage.js +34 -8
  38. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  39. package/lib/commonjs/components/styled/VideoMessage.js +7 -1
  40. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  41. package/lib/commonjs/context/xmppProvider.js +46 -21
  42. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  43. package/lib/commonjs/helpers/ensureScopedChatCache.js +2 -2
  44. package/lib/commonjs/helpers/ensureScopedChatCache.js.map +1 -1
  45. package/lib/commonjs/helpers/initXmppRooms.js +5 -1
  46. package/lib/commonjs/helpers/initXmppRooms.js.map +1 -1
  47. package/lib/commonjs/helpers/persistCrypto.js +122 -0
  48. package/lib/commonjs/helpers/persistCrypto.js.map +1 -0
  49. package/lib/commonjs/helpers/pickImageAsset.js +68 -0
  50. package/lib/commonjs/helpers/pickImageAsset.js.map +1 -0
  51. package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js +130 -17
  52. package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js.map +1 -1
  53. package/lib/commonjs/helpers/secureFileUrl.js +101 -0
  54. package/lib/commonjs/helpers/secureFileUrl.js.map +1 -0
  55. package/lib/commonjs/helpers/secureKeyValue.js +83 -0
  56. package/lib/commonjs/helpers/secureKeyValue.js.map +1 -0
  57. package/lib/commonjs/helpers/secureStoreRuntime.js +59 -0
  58. package/lib/commonjs/helpers/secureStoreRuntime.js.map +1 -0
  59. package/lib/commonjs/helpers/secureUserStorage.js +75 -0
  60. package/lib/commonjs/helpers/secureUserStorage.js.map +1 -0
  61. package/lib/commonjs/hooks/useChatWrapperInit.js +3 -3
  62. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  63. package/lib/commonjs/hooks/useFileToken.js +10 -0
  64. package/lib/commonjs/hooks/useFileToken.js.map +1 -0
  65. package/lib/commonjs/hooks/useLogout.js +15 -7
  66. package/lib/commonjs/hooks/useLogout.js.map +1 -1
  67. package/lib/commonjs/hooks/useSendMessage.js +23 -13
  68. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  69. package/lib/commonjs/main.js +25 -0
  70. package/lib/commonjs/main.js.map +1 -1
  71. package/lib/commonjs/networking/api-requests/auth.api.js +99 -54
  72. package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
  73. package/lib/commonjs/networking/api-requests/roomMembers.api.js +1 -1
  74. package/lib/commonjs/networking/api-requests/roomMembers.api.js.map +1 -1
  75. package/lib/commonjs/networking/api-requests/rooms.api.js +9 -9
  76. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  77. package/lib/commonjs/networking/api-requests/user.api.js +9 -9
  78. package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
  79. package/lib/commonjs/networking/apiClient.js +62 -112
  80. package/lib/commonjs/networking/apiClient.js.map +1 -1
  81. package/lib/commonjs/networking/authRefresh.js +322 -0
  82. package/lib/commonjs/networking/authRefresh.js.map +1 -0
  83. package/lib/commonjs/networking/xmppClient.js +33 -5
  84. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  85. package/lib/commonjs/roomStore/chatSettingsSlice.js +23 -6
  86. package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
  87. package/lib/commonjs/roomStore/persistence.js +29 -15
  88. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  89. package/lib/commonjs/roomStore/roomsSlice.js +2 -0
  90. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  91. package/lib/module/components/AuthForms/Login.js +4 -4
  92. package/lib/module/components/AuthForms/Login.js.map +1 -1
  93. package/lib/module/components/MainComponents/ChatHeader.js +4 -1
  94. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  95. package/lib/module/components/MainComponents/ChatWrapper.js +14 -13
  96. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  97. package/lib/module/components/MainComponents/LoginWrapper.js +2 -1
  98. package/lib/module/components/MainComponents/LoginWrapper.js.map +1 -1
  99. package/lib/module/components/MainComponents/MediaMessage.js +17 -6
  100. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  101. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js +9 -8
  102. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  103. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +4 -1
  104. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  105. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +8 -7
  106. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  107. package/lib/module/components/Modals/FilePreviewModal/PdfView.js +2 -1
  108. package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  109. package/lib/module/components/Modals/NewChatModal/ModalContent.js +2 -1
  110. package/lib/module/components/Modals/NewChatModal/ModalContent.js.map +1 -1
  111. package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
  112. package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
  113. package/lib/module/components/Modals/UserProfileModal/EditUserModal.js +9 -23
  114. package/lib/module/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
  115. package/lib/module/components/RoomComponents/ChatRoomItem.js +5 -1
  116. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  117. package/lib/module/components/RoomComponents/styled/LastMessageFile.js +10 -2
  118. package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  119. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +4 -1
  120. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  121. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +4 -1
  122. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  123. package/lib/module/components/styled/AudioMessage.js +2 -1
  124. package/lib/module/components/styled/AudioMessage.js.map +1 -1
  125. package/lib/module/components/styled/MessageImage.js +34 -8
  126. package/lib/module/components/styled/MessageImage.js.map +1 -1
  127. package/lib/module/components/styled/VideoMessage.js +7 -1
  128. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  129. package/lib/module/context/xmppProvider.js +45 -21
  130. package/lib/module/context/xmppProvider.js.map +1 -1
  131. package/lib/module/helpers/ensureScopedChatCache.js +2 -2
  132. package/lib/module/helpers/ensureScopedChatCache.js.map +1 -1
  133. package/lib/module/helpers/initXmppRooms.js +5 -1
  134. package/lib/module/helpers/initXmppRooms.js.map +1 -1
  135. package/lib/module/helpers/persistCrypto.js +115 -0
  136. package/lib/module/helpers/persistCrypto.js.map +1 -0
  137. package/lib/module/helpers/pickImageAsset.js +63 -0
  138. package/lib/module/helpers/pickImageAsset.js.map +1 -0
  139. package/lib/module/helpers/resolveInitBeforeLoadUser.js +130 -16
  140. package/lib/module/helpers/resolveInitBeforeLoadUser.js.map +1 -1
  141. package/lib/module/helpers/secureFileUrl.js +91 -0
  142. package/lib/module/helpers/secureFileUrl.js.map +1 -0
  143. package/lib/module/helpers/secureKeyValue.js +75 -0
  144. package/lib/module/helpers/secureKeyValue.js.map +1 -0
  145. package/lib/module/helpers/secureStoreRuntime.js +52 -0
  146. package/lib/module/helpers/secureStoreRuntime.js.map +1 -0
  147. package/lib/module/helpers/secureUserStorage.js +72 -0
  148. package/lib/module/helpers/secureUserStorage.js.map +1 -0
  149. package/lib/module/hooks/useChatWrapperInit.js +3 -3
  150. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  151. package/lib/module/hooks/useFileToken.js +5 -0
  152. package/lib/module/hooks/useFileToken.js.map +1 -0
  153. package/lib/module/hooks/useLogout.js +15 -7
  154. package/lib/module/hooks/useLogout.js.map +1 -1
  155. package/lib/module/hooks/useSendMessage.js +24 -14
  156. package/lib/module/hooks/useSendMessage.js.map +1 -1
  157. package/lib/module/main.js +12 -1
  158. package/lib/module/main.js.map +1 -1
  159. package/lib/module/networking/api-requests/auth.api.js +96 -53
  160. package/lib/module/networking/api-requests/auth.api.js.map +1 -1
  161. package/lib/module/networking/api-requests/roomMembers.api.js +1 -1
  162. package/lib/module/networking/api-requests/roomMembers.api.js.map +1 -1
  163. package/lib/module/networking/api-requests/rooms.api.js +9 -9
  164. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  165. package/lib/module/networking/api-requests/user.api.js +8 -7
  166. package/lib/module/networking/api-requests/user.api.js.map +1 -1
  167. package/lib/module/networking/apiClient.js +61 -113
  168. package/lib/module/networking/apiClient.js.map +1 -1
  169. package/lib/module/networking/authRefresh.js +311 -0
  170. package/lib/module/networking/authRefresh.js.map +1 -0
  171. package/lib/module/networking/xmppClient.js +33 -5
  172. package/lib/module/networking/xmppClient.js.map +1 -1
  173. package/lib/module/roomStore/chatSettingsSlice.js +23 -6
  174. package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
  175. package/lib/module/roomStore/persistence.js +30 -15
  176. package/lib/module/roomStore/persistence.js.map +1 -1
  177. package/lib/module/roomStore/roomsSlice.js +2 -0
  178. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  179. package/lib/typescript/components/AuthForms/Login.d.ts.map +1 -1
  180. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  181. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  182. package/lib/typescript/components/MainComponents/LoginWrapper.d.ts.map +1 -1
  183. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  184. package/lib/typescript/components/MainComponents/ProfileImagePlaceholder.d.ts.map +1 -1
  185. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  186. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  187. package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
  188. package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts +4 -2
  189. package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts.map +1 -1
  190. package/lib/typescript/components/Modals/NewChatModal/UpdNewChatModal.d.ts.map +1 -1
  191. package/lib/typescript/components/Modals/UserProfileModal/EditUserModal.d.ts.map +1 -1
  192. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  193. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
  194. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
  195. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
  196. package/lib/typescript/components/styled/AudioMessage.d.ts.map +1 -1
  197. package/lib/typescript/components/styled/MessageImage.d.ts +8 -0
  198. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  199. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  200. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  201. package/lib/typescript/helpers/initXmppRooms.d.ts.map +1 -1
  202. package/lib/typescript/helpers/persistCrypto.d.ts +13 -0
  203. package/lib/typescript/helpers/persistCrypto.d.ts.map +1 -0
  204. package/lib/typescript/helpers/pickImageAsset.d.ts +27 -0
  205. package/lib/typescript/helpers/pickImageAsset.d.ts.map +1 -0
  206. package/lib/typescript/helpers/resolveInitBeforeLoadUser.d.ts.map +1 -1
  207. package/lib/typescript/helpers/secureFileUrl.d.ts +7 -0
  208. package/lib/typescript/helpers/secureFileUrl.d.ts.map +1 -0
  209. package/lib/typescript/helpers/secureKeyValue.d.ts +13 -0
  210. package/lib/typescript/helpers/secureKeyValue.d.ts.map +1 -0
  211. package/lib/typescript/helpers/secureStoreRuntime.d.ts +29 -0
  212. package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +1 -0
  213. package/lib/typescript/helpers/secureUserStorage.d.ts +23 -0
  214. package/lib/typescript/helpers/secureUserStorage.d.ts.map +1 -0
  215. package/lib/typescript/hooks/useFileToken.d.ts +2 -0
  216. package/lib/typescript/hooks/useFileToken.d.ts.map +1 -0
  217. package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
  218. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  219. package/lib/typescript/main.d.ts +6 -1
  220. package/lib/typescript/main.d.ts.map +1 -1
  221. package/lib/typescript/networking/api-requests/auth.api.d.ts +3 -27
  222. package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
  223. package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
  224. package/lib/typescript/networking/apiClient.d.ts +12 -6
  225. package/lib/typescript/networking/apiClient.d.ts.map +1 -1
  226. package/lib/typescript/networking/authRefresh.d.ts +92 -0
  227. package/lib/typescript/networking/authRefresh.d.ts.map +1 -0
  228. package/lib/typescript/networking/xmppClient.d.ts +6 -0
  229. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  230. package/lib/typescript/roomStore/chatSettingsSlice.d.ts +16 -0
  231. package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
  232. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  233. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  234. package/lib/typescript/types/types.d.ts +17 -0
  235. package/lib/typescript/types/types.d.ts.map +1 -1
  236. package/package.json +8 -1
  237. package/src/components/AuthForms/Login.tsx +3 -3
  238. package/src/components/MainComponents/ChatHeader.tsx +4 -1
  239. package/src/components/MainComponents/ChatWrapper.tsx +14 -19
  240. package/src/components/MainComponents/LoginWrapper.tsx +1 -0
  241. package/src/components/MainComponents/MediaMessage.tsx +14 -4
  242. package/src/components/MainComponents/ProfileImagePlaceholder.tsx +16 -9
  243. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +4 -1
  244. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +8 -7
  245. package/src/components/Modals/FilePreviewModal/PdfView.tsx +2 -1
  246. package/src/components/Modals/NewChatModal/ModalContent.tsx +6 -3
  247. package/src/components/Modals/NewChatModal/UpdNewChatModal.tsx +12 -1
  248. package/src/components/Modals/UserProfileModal/EditUserModal.tsx +9 -25
  249. package/src/components/RoomComponents/ChatRoomItem.tsx +9 -1
  250. package/src/components/RoomComponents/styled/LastMessageFile.tsx +14 -2
  251. package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +4 -1
  252. package/src/components/RoomComponents/styled/LastMessageVideo.tsx +4 -1
  253. package/src/components/styled/AudioMessage.tsx +2 -1
  254. package/src/components/styled/MessageImage.tsx +45 -6
  255. package/src/components/styled/VideoMessage.tsx +10 -1
  256. package/src/context/xmppProvider.tsx +47 -23
  257. package/src/helpers/ensureScopedChatCache.ts +2 -2
  258. package/src/helpers/initXmppRooms.tsx +5 -1
  259. package/src/helpers/persistCrypto.ts +127 -0
  260. package/src/helpers/pickImageAsset.ts +68 -0
  261. package/src/helpers/resolveInitBeforeLoadUser.ts +125 -18
  262. package/src/helpers/secureFileUrl.ts +103 -0
  263. package/src/helpers/secureKeyValue.ts +80 -0
  264. package/src/helpers/secureStoreRuntime.ts +62 -0
  265. package/src/helpers/secureUserStorage.ts +80 -0
  266. package/src/hooks/useChatWrapperInit.ts +3 -3
  267. package/src/hooks/useFileToken.ts +7 -0
  268. package/src/hooks/useLogout.tsx +15 -9
  269. package/src/hooks/useSendMessage.tsx +28 -13
  270. package/src/main.ts +22 -1
  271. package/src/networking/api-requests/auth.api.ts +125 -52
  272. package/src/networking/api-requests/roomMembers.api.ts +1 -1
  273. package/src/networking/api-requests/rooms.api.ts +9 -9
  274. package/src/networking/api-requests/user.api.ts +8 -7
  275. package/src/networking/apiClient.ts +68 -123
  276. package/src/networking/authRefresh.ts +430 -0
  277. package/src/networking/xmppClient.ts +37 -5
  278. package/src/roomStore/chatSettingsSlice.ts +31 -9
  279. package/src/roomStore/persistence.ts +39 -19
  280. package/src/roomStore/roomsSlice.ts +2 -0
  281. package/src/types/types.ts +17 -0
@@ -78,6 +78,12 @@ function isNotAuthorizedError(err) {
78
78
  const message = (err?.message || err?.text || '').toString();
79
79
  return /not-authorized|SASLError/i.test(message);
80
80
  }
81
+ /**
82
+ * Floor between two credential rotations driven by reconnects. Well under
83
+ * the XMPP password's one-hour life, but high enough that a link flapping
84
+ * every few seconds rotates once, not thirty times.
85
+ */
86
+ const CREDENTIALS_REFRESH_MIN_INTERVAL_MS = 60_000;
81
87
  class XmppClient {
82
88
  host = '';
83
89
  service = '';
@@ -111,6 +117,12 @@ class XmppClient {
111
117
  // derived XMPP password after idle). Triggers the credentialsProvider
112
118
  // refresh path in reconnect().
113
119
  lastAuthError = null;
120
+ /**
121
+ * When the credentials currently held were last (re)minted. Drives the
122
+ * throttle in `reconnect()` so a flapping connection can't rotate the
123
+ * session once per flap.
124
+ */
125
+ credentialsRefreshedAt = 0;
114
126
  credentialsProvider = null;
115
127
  credentialsRefreshInFlight = null;
116
128
  // Fired by the provider on every 'online' so it can re-join MUC rooms
@@ -658,14 +670,29 @@ class XmppClient {
658
670
  this.reconnecting = true;
659
671
  console.log('Attempting to reconnect xmpp client...');
660
672
  try {
661
- // If the last failure was a SASL `not-authorized` (typically a stale
662
- // JWT-derived XMPP password after idle), try to fetch fresh creds
663
- // before retrying. Without this, reconnect retries with the same
664
- // stale password forever and the user has to kill the app.
665
- if (this.lastAuthError === 'not-authorized' && this.credentialsProvider) {
673
+ // Re-mint credentials BEFORE reconnecting.
674
+ //
675
+ // This deliberately no longer waits for a SASL `not-authorized`.
676
+ // The XMPP password expires after an hour, and an expiry does NOT
677
+ // drop an established connection — authentication happens once, at
678
+ // bind. So by the time anything disconnects us (a network blip, a
679
+ // sleeping device, a server restart) the password we still hold may
680
+ // well be dead, and we have no way to know. Reconnecting with it
681
+ // burns a guaranteed-failed bind plus a backoff delay before the
682
+ // old `lastAuthError` path could even start recovering.
683
+ //
684
+ // Throttled, because reconnects are not rare: a flapping link would
685
+ // otherwise rotate the whole session (access + refresh + file token
686
+ // + XMPP password) once per flap. A SASL failure bypasses the
687
+ // throttle — there the credentials are known bad.
688
+ const authFailed = this.lastAuthError === 'not-authorized';
689
+ const staleCreds = Date.now() - this.credentialsRefreshedAt >= CREDENTIALS_REFRESH_MIN_INTERVAL_MS;
690
+ if (this.credentialsProvider && (authFailed || staleCreds)) {
666
691
  try {
667
692
  await this.refreshCredentialsOnce();
668
693
  } catch (err) {
694
+ // Offline is the common case here — reconnect with what we
695
+ // have and let the next attempt try again.
669
696
  console.warn('XMPP credential refresh failed; reconnecting with cached creds', err);
670
697
  }
671
698
  }
@@ -722,6 +749,7 @@ class XmppClient {
722
749
  // creds really are stale we simply get not-authorized again and
723
750
  // retry, which is the confirmed-good 26.5.7 behaviour.
724
751
  this.updateCredentials(fresh.username, fresh.password);
752
+ this.credentialsRefreshedAt = Date.now();
725
753
  this.lastAuthError = null;
726
754
  }
727
755
  } finally {
@@ -1 +1 @@
1
- {"version":3,"names":["_client","_interopRequireDefault","require","_walletUsername","_sendMediaMessage","_getChatsPrivateStoreRequest","_actionSetTimestampToPrivateStore","_flushLastViewedToPrivateStore","_sendTypingRequest","_sendPing","_getHistory","_sendTextMessage","_sendTextMessageWithTranslateTag","_deleteMessage","_presenceInRoom","_getLastMessageArchive","_createRoom","_setRoomImage","_getRoomMembers","_getRoomInfo","_leaveTheRoom","_editMessage","_inviteRoomRequest","_getRooms","_handleStanzas","_devLogger","_normalizeRoomJid","_roomStore","_roomsSlice","_outboundQueue","e","__esModule","default","DEFAULT_DEV_SERVER","STOP_TIMEOUT_MS","withTimeout","promise","ms","Promise","resolve","settled","done","clearTimeout","timer","setTimeout","then","isNotAuthorizedError","err","condition","name","type","error","includes","message","text","toString","test","XmppClient","host","service","conference","status","password","reconnectAttempts","maxReconnectAttempts","reconnectDelay","maxReconnectDelay","lastReconnectAt","suppressReconnect","reconnectTimer","reconnecting","lastAuthError","credentialsProvider","credentialsRefreshInFlight","onOnlineCallback","presencesReady","disableLastRead","activeRoomJID","activeRoomBoostUntil","softPauseUntil","mamInFlightByRoom","Map","maxInFlightHistory","softPauseAfterSendMs","activeRoomBoostTtlMs","alwaysPrioritizeActiveRoom","checkOnline","client","setCredentialsProvider","provider","setOnOnline","cb","updateCredentials","username","constructor","xmppSettings","devServer","qos","historyQoS","initializeClient","setActiveRoomJid","roomJID","promoteRoomHistory","_roomJID","Date","now","isActiveRoomGateOpen","size","onCriticalSend","_messageId","prioritizeRoomPresence","presenceInRoomStanza","enqueueHistoryTask","params","chatJID","max","before","id","source","existing","get","sourceRank","r","wait","handle","p","getHistory","cur","delete","set","startedAt","s","url","match","detachEventListeners","xmpp","walletToUsername","reconnect","stop","setMaxListeners","origSend","send","bind","wrapped","stanza","tag","attrs","to","devPushLog","split","undefined","result","catch","Object","defineProperty","value","writable","configurable","console","warn","attachEventListeners","start","scheduleReconnect","onDisconnect","log","onOnline","flushPendingSends","onError","onStanza","from","handleStanza","on","c","removeListener","waitForOnline","timeoutMs","reject","tick","Error","ensureConnected","timeout","exp","Math","min","delay","pow","forceReconnect","streamAliveProbe","verifyStreamAlive","underlying","alive","sendPing","finally","ensureStreamAlive","refreshCredentialsOnce","old","fresh","disconnect","options","close","clearOutboundSends","getRoomsStanza","getRooms","createRoomStanza","title","description","createRoom","inviteRoomRequestStanza","roomJid","inviteRoomRequest","leaveTheRoomStanza","leaveTheRoom","normalizeRoomJid","presenceInRoom","getHistoryStanza","coalesceRoom","getLastMessageArchiveStanza","getLastMessage","setRoomImageStanza","roomThumbnail","roomBackground","setRoomImage","getRoomInfoStanza","getRoomInfo","getRoomMembersStanza","getRoomMembers","isStreamReady","flushOutboundSends","sendMessage","firstName","lastName","photo","walletAddress","userMessage","notDisplayedValue","isReply","showInChannel","mainMessage","customId","enqueueOutboundSend","optimisticId","enqueuedAt","sendTextMessage","deleteMessageStanza","room","msgId","deleteMessage","editMessageStanza","editMessage","sendTypingRequestStanza","chatId","fullName","sendTypingRequest","getChatsPrivateStoreRequestStanza","markers","getChatsPrivateStoreRequest","normalized","jid","keys","n","Number","isFinite","length","store","dispatch","applyPrivateStoreMarkers","actionSetTimestampToPrivateStoreStanza","timestamp","chats","actionSetTimestampToPrivateStore","flushLastViewedToPrivateStoreStanza","rooms","opts","flushLastViewedToPrivateStore","sendMediaMessageStanza","data","sendMediaMessage","setVCardStanza","_xmppUsername","createPrivateRoomStanza","sendMessageReactionStanza","_roomJid","_reactionsList","_reactionSymbol","sendTextMessageWithTranslateTagStanza","langSource","sendTextMessageWithTranslateTag","exports","_default"],"sourceRoot":"../../../src","sources":["networking/xmppClient.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_client","_interopRequireDefault","require","_walletUsername","_sendMediaMessage","_getChatsPrivateStoreRequest","_actionSetTimestampToPrivateStore","_flushLastViewedToPrivateStore","_sendTypingRequest","_sendPing","_getHistory","_sendTextMessage","_sendTextMessageWithTranslateTag","_deleteMessage","_presenceInRoom","_getLastMessageArchive","_createRoom","_setRoomImage","_getRoomMembers","_getRoomInfo","_leaveTheRoom","_editMessage","_inviteRoomRequest","_getRooms","_handleStanzas","_devLogger","_normalizeRoomJid","_roomStore","_roomsSlice","_outboundQueue","e","__esModule","default","DEFAULT_DEV_SERVER","STOP_TIMEOUT_MS","withTimeout","promise","ms","Promise","resolve","settled","done","clearTimeout","timer","setTimeout","then","isNotAuthorizedError","err","condition","name","type","error","includes","message","text","toString","test","CREDENTIALS_REFRESH_MIN_INTERVAL_MS","XmppClient","host","service","conference","status","password","reconnectAttempts","maxReconnectAttempts","reconnectDelay","maxReconnectDelay","lastReconnectAt","suppressReconnect","reconnectTimer","reconnecting","lastAuthError","credentialsRefreshedAt","credentialsProvider","credentialsRefreshInFlight","onOnlineCallback","presencesReady","disableLastRead","activeRoomJID","activeRoomBoostUntil","softPauseUntil","mamInFlightByRoom","Map","maxInFlightHistory","softPauseAfterSendMs","activeRoomBoostTtlMs","alwaysPrioritizeActiveRoom","checkOnline","client","setCredentialsProvider","provider","setOnOnline","cb","updateCredentials","username","constructor","xmppSettings","devServer","qos","historyQoS","initializeClient","setActiveRoomJid","roomJID","promoteRoomHistory","_roomJID","Date","now","isActiveRoomGateOpen","size","onCriticalSend","_messageId","prioritizeRoomPresence","presenceInRoomStanza","enqueueHistoryTask","params","chatJID","max","before","id","source","existing","get","sourceRank","r","wait","handle","p","getHistory","cur","delete","set","startedAt","s","url","match","detachEventListeners","xmpp","walletToUsername","reconnect","stop","setMaxListeners","origSend","send","bind","wrapped","stanza","tag","attrs","to","devPushLog","split","undefined","result","catch","Object","defineProperty","value","writable","configurable","console","warn","attachEventListeners","start","scheduleReconnect","onDisconnect","log","onOnline","flushPendingSends","onError","onStanza","from","handleStanza","on","c","removeListener","waitForOnline","timeoutMs","reject","tick","Error","ensureConnected","timeout","exp","Math","min","delay","pow","forceReconnect","streamAliveProbe","verifyStreamAlive","underlying","alive","sendPing","finally","ensureStreamAlive","authFailed","staleCreds","refreshCredentialsOnce","old","fresh","disconnect","options","close","clearOutboundSends","getRoomsStanza","getRooms","createRoomStanza","title","description","createRoom","inviteRoomRequestStanza","roomJid","inviteRoomRequest","leaveTheRoomStanza","leaveTheRoom","normalizeRoomJid","presenceInRoom","getHistoryStanza","coalesceRoom","getLastMessageArchiveStanza","getLastMessage","setRoomImageStanza","roomThumbnail","roomBackground","setRoomImage","getRoomInfoStanza","getRoomInfo","getRoomMembersStanza","getRoomMembers","isStreamReady","flushOutboundSends","sendMessage","firstName","lastName","photo","walletAddress","userMessage","notDisplayedValue","isReply","showInChannel","mainMessage","customId","enqueueOutboundSend","optimisticId","enqueuedAt","sendTextMessage","deleteMessageStanza","room","msgId","deleteMessage","editMessageStanza","editMessage","sendTypingRequestStanza","chatId","fullName","sendTypingRequest","getChatsPrivateStoreRequestStanza","markers","getChatsPrivateStoreRequest","normalized","jid","keys","n","Number","isFinite","length","store","dispatch","applyPrivateStoreMarkers","actionSetTimestampToPrivateStoreStanza","timestamp","chats","actionSetTimestampToPrivateStore","flushLastViewedToPrivateStoreStanza","rooms","opts","flushLastViewedToPrivateStore","sendMediaMessageStanza","data","sendMediaMessage","setVCardStanza","_xmppUsername","createPrivateRoomStanza","sendMessageReactionStanza","_roomJid","_reactionsList","_reactionSymbol","sendTextMessageWithTranslateTagStanza","langSource","sendTextMessageWithTranslateTag","exports","_default"],"sourceRoot":"../../../src","sources":["networking/xmppClient.ts"],"mappings":"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","ignoreList":[]}
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.updateUser = exports.unpackAndTransform = exports.setUser = exports.setTranslateMode = exports.setStoreClient = exports.setSelectedUser = exports.setLangSource = exports.setDeleteModal = exports.setConfig = exports.setActiveModal = exports.setActiveFile = exports.refreshTokens = exports.logout = exports.default = exports.chatSlice = void 0;
7
7
  var _toolkit = require("@reduxjs/toolkit");
8
- var _LOCAL_STORAGE = require("../helpers/constants/LOCAL_STORAGE");
9
- var _useLocalStorage = require("../hooks/useLocalStorage");
8
+ var _secureUserStorage = require("../helpers/secureUserStorage");
10
9
  const unpackAndTransform = input => {
11
10
  return {
12
11
  description: '',
@@ -15,6 +14,7 @@ const unpackAndTransform = input => {
15
14
  _id: input?._id || '',
16
15
  walletAddress: input?.defaultWallet?.walletAddress || '',
17
16
  xmppPassword: input?.xmppPassword || '',
17
+ fileToken: input?.fileToken || '',
18
18
  refreshToken: input?.refreshToken || '',
19
19
  firstName: input?.firstName || '',
20
20
  lastName: input?.lastName || '',
@@ -48,6 +48,7 @@ const initialState = {
48
48
  _id: '',
49
49
  walletAddress: '',
50
50
  xmppPassword: '',
51
+ fileToken: '',
51
52
  refreshToken: '',
52
53
  firstName: '',
53
54
  lastName: '',
@@ -91,7 +92,7 @@ const initialState = {
91
92
  const reducers = {
92
93
  setUser: (state, action) => {
93
94
  state.user = unpackAndTransform(action.payload);
94
- (0, _useLocalStorage.asyncLocalStorage)(_LOCAL_STORAGE.localStorageConstants.ETHORA_USER).set(unpackAndTransform(action.payload));
95
+ (0, _secureUserStorage.secureUserStorage)().set(unpackAndTransform(action.payload));
95
96
  },
96
97
  updateUser(state, action) {
97
98
  const {
@@ -126,11 +127,27 @@ const reducers = {
126
127
  setSelectedUser: (state, action) => {
127
128
  state.selectedUser = action.payload;
128
129
  },
130
+ /**
131
+ * Token rotation. Dispatched from ONE place only — `authRefresh` —
132
+ * which awaits the AsyncStorage write immediately afterwards, before
133
+ * resolving its promise.
134
+ *
135
+ * The reducer used to fire its own best-effort write here. That was
136
+ * both redundant and racy (two writers, no ordering), and a
137
+ * fire-and-forget write can be lost if the app dies right after a
138
+ * rotation — which on a backend with reuse detection means the next
139
+ * launch presents a burned token. Persistence now belongs to the
140
+ * caller, which can actually await it.
141
+ */
129
142
  refreshTokens: (state, action) => {
130
143
  state.user.refreshToken = action.payload.refreshToken;
131
144
  state.user.token = action.payload.token;
132
- // AsyncStorage is async; fire-and-forget so the reducer stays sync.
133
- (0, _useLocalStorage.asyncLocalStorage)(_LOCAL_STORAGE.localStorageConstants.ETHORA_USER).set(state.user);
145
+ if (action.payload.xmppPassword) {
146
+ state.user.xmppPassword = action.payload.xmppPassword;
147
+ }
148
+ if (action.payload.fileToken) {
149
+ state.user.fileToken = action.payload.fileToken;
150
+ }
134
151
  },
135
152
  logout: state => {
136
153
  state.user = unpackAndTransform();
@@ -138,7 +155,7 @@ const reducers = {
138
155
  state.client = undefined;
139
156
  state.langSource = undefined;
140
157
  state.translateMode = undefined;
141
- (0, _useLocalStorage.asyncLocalStorage)(_LOCAL_STORAGE.localStorageConstants.ETHORA_USER).remove();
158
+ (0, _secureUserStorage.secureUserStorage)().remove();
142
159
  },
143
160
  setLangSource: (state, action) => {
144
161
  state.langSource = action.payload;
@@ -1 +1 @@
1
- {"version":3,"names":["_toolkit","require","_LOCAL_STORAGE","_useLocalStorage","unpackAndTransform","input","description","token","profileImage","_id","walletAddress","defaultWallet","xmppPassword","refreshToken","firstName","lastName","email","username","appId","homeScreen","registrationChannelType","updatedAt","authMethod","resetPasswordExpires","resetPasswordToken","xmppUsername","roles","tags","__v","isProfileOpen","isAssetsOpen","isAgreeWithTerms","exports","initialState","user","deleteModal","isDeleteModal","roomJid","messageId","config","colors","primary","secondary","reducers","setUser","state","action","payload","asyncLocalStorage","localStorageConstants","ETHORA_USER","set","updateUser","updates","setConfig","setActiveModal","activeModal","setActiveFile","activeFile","setDeleteModal","setStoreClient","client","setSelectedUser","selectedUser","refreshTokens","logout","undefined","langSource","translateMode","remove","setLangSource","setTranslateMode","chatSlice","createSlice","name","actions","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/chatSettingsSlice.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_toolkit","require","_secureUserStorage","unpackAndTransform","input","description","token","profileImage","_id","walletAddress","defaultWallet","xmppPassword","fileToken","refreshToken","firstName","lastName","email","username","appId","homeScreen","registrationChannelType","updatedAt","authMethod","resetPasswordExpires","resetPasswordToken","xmppUsername","roles","tags","__v","isProfileOpen","isAssetsOpen","isAgreeWithTerms","exports","initialState","user","deleteModal","isDeleteModal","roomJid","messageId","config","colors","primary","secondary","reducers","setUser","state","action","payload","secureUserStorage","set","updateUser","updates","setConfig","setActiveModal","activeModal","setActiveFile","activeFile","setDeleteModal","setStoreClient","client","setSelectedUser","selectedUser","refreshTokens","logout","undefined","langSource","translateMode","remove","setLangSource","setTranslateMode","chatSlice","createSlice","name","actions","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/chatSettingsSlice.ts"],"mappings":"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","ignoreList":[]}
@@ -8,6 +8,7 @@ exports.clearPersistedState = clearPersistedState;
8
8
  exports.persistenceMiddleware = void 0;
9
9
  exports.readPersistedState = readPersistedState;
10
10
  var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
11
+ var _persistCrypto = require("../helpers/persistCrypto");
11
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
13
  // -------------------------------------------------------------------
13
14
  // Lightweight RN persistence layer. Mirrors what redux-persist gives
@@ -18,7 +19,11 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
18
19
  // - cap each room's messages to the most recent MESSAGE_LIMIT (100)
19
20
  // - debounced writes (200ms) on relevant action types
20
21
  //
21
- // Not encrypted. We rely on AsyncStorage's per-app sandbox.
22
+ // AES-256-CBC at rest (see `helpers/persistCrypto.ts`): the JSON blob
23
+ // under each key below is encrypted before it reaches AsyncStorage, with
24
+ // the symmetric key held in the platform Keychain/Keystore. `user` here
25
+ // is already secret-free (see `sanitizeUser`) — the encryption is for
26
+ // the message bodies in `rooms`, which aren't.
22
27
  // -------------------------------------------------------------------
23
28
 
24
29
  const KEY_CHAT = '@ethora/persist:chatSettingStore';
@@ -159,18 +164,21 @@ const persistenceMiddleware = storeAPI => next => action => {
159
164
  clearTimeout(writeTimer);
160
165
  }
161
166
  writeTimer = setTimeout(() => {
162
- try {
163
- const state = storeAPI.getState();
164
- const chatPayload = {
165
- user: sanitizeUser(state.chatSettingStore?.user)
166
- };
167
- const roomsPayload = {
168
- rooms: sanitizeRooms(state.rooms?.rooms || {})
169
- };
170
- _asyncStorage.default.multiSet([[KEY_CHAT, JSON.stringify(chatPayload)], [KEY_ROOMS, JSON.stringify(roomsPayload)]]).catch(e => console.warn('persist write failed', e));
171
- } catch (e) {
172
- console.warn('persist serialize failed', e);
173
- }
167
+ (async () => {
168
+ try {
169
+ const state = storeAPI.getState();
170
+ const chatPayload = {
171
+ user: sanitizeUser(state.chatSettingStore?.user)
172
+ };
173
+ const roomsPayload = {
174
+ rooms: sanitizeRooms(state.rooms?.rooms || {})
175
+ };
176
+ const [chatCipher, roomsCipher] = await Promise.all([(0, _persistCrypto.encryptForPersist)(JSON.stringify(chatPayload)), (0, _persistCrypto.encryptForPersist)(JSON.stringify(roomsPayload))]);
177
+ await _asyncStorage.default.multiSet([[KEY_CHAT, chatCipher], [KEY_ROOMS, roomsCipher]]);
178
+ } catch (e) {
179
+ console.warn('persist write failed', e);
180
+ }
181
+ })();
174
182
  }, 200);
175
183
  return result;
176
184
  };
@@ -184,8 +192,14 @@ exports.persistenceMiddleware = persistenceMiddleware;
184
192
  async function readPersistedState() {
185
193
  try {
186
194
  const [chatRaw, roomsRaw] = await _asyncStorage.default.multiGet([KEY_CHAT, KEY_ROOMS]);
187
- const chat = chatRaw[1] ? JSON.parse(chatRaw[1]) : null;
188
- const rooms = roomsRaw[1] ? JSON.parse(roomsRaw[1]) : null;
195
+ const [chatPlain, roomsPlain] = await Promise.all([chatRaw[1] ? (0, _persistCrypto.decryptFromPersist)(chatRaw[1]) : Promise.resolve(null), roomsRaw[1] ? (0, _persistCrypto.decryptFromPersist)(roomsRaw[1]) : Promise.resolve(null)]);
196
+ // `decryptFromPersist` returns null both for "nothing stored" and
197
+ // for "stored value isn't a valid envelope for the current key" —
198
+ // notably a plaintext blob left over from a pre-encryption install.
199
+ // Either way there is nothing safe to parse, so the caller treats it
200
+ // as a cold start and re-hydrates from the server.
201
+ const chat = chatPlain ? JSON.parse(chatPlain) : null;
202
+ const rooms = roomsPlain ? JSON.parse(roomsPlain) : null;
189
203
  return {
190
204
  chat,
191
205
  rooms
@@ -1 +1 @@
1
- {"version":3,"names":["_asyncStorage","_interopRequireDefault","require","e","__esModule","default","KEY_CHAT","KEY_ROOMS","MESSAGE_LIMIT","exports","sanitizeUser","user","token","_token","refreshToken","_refreshToken","xmppPassword","_xmppPassword","rest","PERSISTED_MESSAGE_FIELDS","PERSISTED_MESSAGE_USER_FIELDS","REFETCHED_ROOM_FIELDS","pickDefined","source","keys","out","key","value","undefined","compactMessageForPersist","message","compact","sanitizeMessages","messages","Array","isArray","capped","length","slice","map","sanitizeRooms","rooms","jid","room","Object","entries","includes","compactRoom","usersCnt","members","field","composing","composingList","isLoading","historyPreloadState","writeTimer","persistenceMiddleware","storeAPI","next","action","result","type","startsWith","clearTimeout","setTimeout","state","getState","chatPayload","chatSettingStore","roomsPayload","AsyncStorage","multiSet","JSON","stringify","catch","console","warn","readPersistedState","chatRaw","roomsRaw","multiGet","chat","parse","clearPersistedState","multiRemove","PERSIST_KEYS"],"sourceRoot":"../../../src","sources":["roomStore/persistence.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_asyncStorage","_interopRequireDefault","require","_persistCrypto","e","__esModule","default","KEY_CHAT","KEY_ROOMS","MESSAGE_LIMIT","exports","sanitizeUser","user","token","_token","refreshToken","_refreshToken","xmppPassword","_xmppPassword","rest","PERSISTED_MESSAGE_FIELDS","PERSISTED_MESSAGE_USER_FIELDS","REFETCHED_ROOM_FIELDS","pickDefined","source","keys","out","key","value","undefined","compactMessageForPersist","message","compact","sanitizeMessages","messages","Array","isArray","capped","length","slice","map","sanitizeRooms","rooms","jid","room","Object","entries","includes","compactRoom","usersCnt","members","field","composing","composingList","isLoading","historyPreloadState","writeTimer","persistenceMiddleware","storeAPI","next","action","result","type","startsWith","clearTimeout","setTimeout","state","getState","chatPayload","chatSettingStore","roomsPayload","chatCipher","roomsCipher","Promise","all","encryptForPersist","JSON","stringify","AsyncStorage","multiSet","console","warn","readPersistedState","chatRaw","roomsRaw","multiGet","chatPlain","roomsPlain","decryptFromPersist","resolve","chat","parse","clearPersistedState","multiRemove","PERSIST_KEYS"],"sourceRoot":"../../../src","sources":["roomStore/persistence.ts"],"mappings":"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","ignoreList":[]}
@@ -268,6 +268,8 @@ const reducers = {
268
268
  const existingMessages = Array.isArray(existing?.messages) ? existing.messages : [];
269
269
  state.rooms[roomData.jid] = {
270
270
  ...roomData,
271
+ icon: roomData.icon !== undefined ? roomData.icon : existing?.icon,
272
+ roomBg: roomData.roomBg !== undefined ? roomData.roomBg : existing?.roomBg,
271
273
  messages: existingMessages.length > 0 ? existingMessages : incomingMessages,
272
274
  lastViewedTimestamp: lastViewed,
273
275
  unreadMessages: roomData.unreadMessages ?? existing?.unreadMessages ?? 0,
@@ -1 +1 @@
1
- {"version":3,"names":["_toolkit","require","_insertMessageWithDelimiter","RUNTIME_MESSAGE_LIMIT","CALL_SIGNAL_BODIES","Set","isCallSignalMessage","message","body","String","trim","toLowerCase","has","stripCallSignals","messages","Array","isArray","filter","isLocalCallLogEntry","id","startsWith","mergeCallLogEntries","a","b","aLocal","bLocal","identity","display","callLog","durationMs","xmppId","date","collapseCallLogDuplicates","byCallId","Map","hasDuplicates","callId","existing","get","set","emitted","add","map","enforceMessageCap","length","shift","mergeHistoryIntoCache","fetched","ex","fe","pending","m","realExisting","realFetched","byMs","msgSortableMs","capTail","arr","slice","existingIds","overlaps","some","sort","byId","prev","isEdited","merged","from","values","initialState","rooms","activeRoomJID","visibleRoomJID","isLoading","isUnreadSyncing","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","privateStoreMarkers","isValidRoomJid","jid","includes","addRoomViaApi","exports","createAsyncThunk","room","xmpp","_xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","state","action","roomData","payload","lastViewed","serverMarker","lastViewedTimestamp","msgs","newest","t","messageTimestampMs","Date","getTime","incomingMessages","existingMessages","unreadMessages","unreadBaselineTimestamp","deleteRoom","updateRoom","updates","existingRoom","setRoomMessages","roomJID","capped","deleteRoomMessage","idx","findIndex","splice","isDeleted","setEditAction","editRoomMessage","addRoomMessage","start","roomMessages","incomingCallLog","existingCallIdx","msg","lengthBefore","unshift","lastViewedValue","insertMessageWithDelimiter","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setUnreadSyncing","setLastViewedTimestamp","timestamp","countNewerMessages","applyPrivateStoreMarkers","markers","Object","keys","ts","Number","isFinite","setRoomRole","role","setRoomNoMessages","value","noMessages","setCurrentRoom","setVisibleRoom","clearVisibleRoom","setPendingNotificationJid","clearPendingNotificationJid","setReactions","reactions","setLogoutState","setActiveMessage","activeMessage","setCloseActiveMessage","title","usersCnt","incoming","previous","Math","max","icon","unreadCapped","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","mergeUsersSet","usersSet","members","createSlice","name","exec","norm","s","v","split","replace","isOwn","selfXmpp","selfWallet","candidates","user","userJID","xmppUsername","xmppFrom","Boolean","self","c","count","ms","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_toolkit","require","_insertMessageWithDelimiter","RUNTIME_MESSAGE_LIMIT","CALL_SIGNAL_BODIES","Set","isCallSignalMessage","message","body","String","trim","toLowerCase","has","stripCallSignals","messages","Array","isArray","filter","isLocalCallLogEntry","id","startsWith","mergeCallLogEntries","a","b","aLocal","bLocal","identity","display","callLog","durationMs","xmppId","date","collapseCallLogDuplicates","byCallId","Map","hasDuplicates","callId","existing","get","set","emitted","add","map","enforceMessageCap","length","shift","mergeHistoryIntoCache","fetched","ex","fe","pending","m","realExisting","realFetched","byMs","msgSortableMs","capTail","arr","slice","existingIds","overlaps","some","sort","byId","prev","isEdited","merged","from","values","initialState","rooms","activeRoomJID","visibleRoomJID","isLoading","isUnreadSyncing","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","privateStoreMarkers","isValidRoomJid","jid","includes","addRoomViaApi","exports","createAsyncThunk","room","xmpp","_xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","state","action","roomData","payload","lastViewed","serverMarker","lastViewedTimestamp","msgs","newest","t","messageTimestampMs","Date","getTime","incomingMessages","existingMessages","icon","undefined","roomBg","unreadMessages","unreadBaselineTimestamp","deleteRoom","updateRoom","updates","existingRoom","setRoomMessages","roomJID","capped","deleteRoomMessage","idx","findIndex","splice","isDeleted","setEditAction","editRoomMessage","addRoomMessage","start","roomMessages","incomingCallLog","existingCallIdx","msg","lengthBefore","unshift","lastViewedValue","insertMessageWithDelimiter","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setUnreadSyncing","setLastViewedTimestamp","timestamp","countNewerMessages","applyPrivateStoreMarkers","markers","Object","keys","ts","Number","isFinite","setRoomRole","role","setRoomNoMessages","value","noMessages","setCurrentRoom","setVisibleRoom","clearVisibleRoom","setPendingNotificationJid","clearPendingNotificationJid","setReactions","reactions","setLogoutState","setActiveMessage","activeMessage","setCloseActiveMessage","title","usersCnt","incoming","previous","Math","max","unreadCapped","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","mergeUsersSet","usersSet","members","createSlice","name","exec","norm","s","v","split","replace","isOwn","selfXmpp","selfWallet","candidates","user","userJID","xmppUsername","xmppFrom","Boolean","self","c","count","ms","_default","default","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}