@ethora/chat-component-rn 26.10.5 → 26.10.7

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 (426) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +18 -0
  3. package/app.plugin.js +2 -0
  4. package/lib/commonjs/assets/icons.js +2 -2
  5. package/lib/commonjs/assets/icons.js.map +1 -1
  6. package/lib/commonjs/components/MainComponents/AlbumGrid.js +152 -0
  7. package/lib/commonjs/components/MainComponents/AlbumGrid.js.map +1 -0
  8. package/lib/commonjs/components/MainComponents/ChatRoom.js +2 -2
  9. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  10. package/lib/commonjs/components/MainComponents/MediaMessage.js +199 -123
  11. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  12. package/lib/commonjs/components/MainComponents/MediaUploadOverlay.js +109 -0
  13. package/lib/commonjs/components/MainComponents/MediaUploadOverlay.js.map +1 -0
  14. package/lib/commonjs/components/MessageBubble/MediaCaption.js +51 -0
  15. package/lib/commonjs/components/MessageBubble/MediaCaption.js.map +1 -0
  16. package/lib/commonjs/components/MessageBubble/Message.js +40 -1
  17. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  18. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +2 -1
  19. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  20. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +75 -0
  21. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  22. package/lib/commonjs/components/RoomComponents/LastMessageItem.js +20 -4
  23. package/lib/commonjs/components/RoomComponents/LastMessageItem.js.map +1 -1
  24. package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js +3 -2
  25. package/lib/commonjs/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
  26. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +3 -2
  27. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  28. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +3 -2
  29. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  30. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +3 -2
  31. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  32. package/lib/commonjs/components/Thread/ThreadWrapper.js +3 -2
  33. package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
  34. package/lib/commonjs/components/styled/MediaFilePreview.js +60 -47
  35. package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
  36. package/lib/commonjs/components/styled/MessageImage.js +16 -6
  37. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  38. package/lib/commonjs/components/styled/SendInput.js +99 -68
  39. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  40. package/lib/commonjs/components/styled/VideoMessage.js +24 -10
  41. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  42. package/lib/commonjs/context/xmppProvider.js +46 -0
  43. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  44. package/lib/commonjs/e2ee/fileEnvelope.js +6 -0
  45. package/lib/commonjs/e2ee/fileEnvelope.js.map +1 -1
  46. package/lib/commonjs/e2ee/sealedBody.js +32 -2
  47. package/lib/commonjs/e2ee/sealedBody.js.map +1 -1
  48. package/lib/commonjs/helpers/albumLayout.js +150 -0
  49. package/lib/commonjs/helpers/albumLayout.js.map +1 -0
  50. package/lib/commonjs/helpers/attachments.js +255 -0
  51. package/lib/commonjs/helpers/attachments.js.map +1 -0
  52. package/lib/commonjs/helpers/caption.js +214 -0
  53. package/lib/commonjs/helpers/caption.js.map +1 -0
  54. package/lib/commonjs/helpers/createMainMessageForThread.js +5 -1
  55. package/lib/commonjs/helpers/createMainMessageForThread.js.map +1 -1
  56. package/lib/commonjs/helpers/createMessageFromXml.js +19 -5
  57. package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
  58. package/lib/commonjs/helpers/fileKind.js +40 -0
  59. package/lib/commonjs/helpers/fileKind.js.map +1 -0
  60. package/lib/commonjs/helpers/getDataFromXml.js +6 -1
  61. package/lib/commonjs/helpers/getDataFromXml.js.map +1 -1
  62. package/lib/commonjs/helpers/mapWithConcurrency.js +41 -0
  63. package/lib/commonjs/helpers/mapWithConcurrency.js.map +1 -0
  64. package/lib/commonjs/helpers/mediaLimits.js +33 -0
  65. package/lib/commonjs/helpers/mediaLimits.js.map +1 -0
  66. package/lib/commonjs/helpers/mediaSendRetry.js +64 -0
  67. package/lib/commonjs/helpers/mediaSendRetry.js.map +1 -0
  68. package/lib/commonjs/helpers/mediaWireData.js +62 -0
  69. package/lib/commonjs/helpers/mediaWireData.js.map +1 -0
  70. package/lib/commonjs/helpers/mentionSpans.js +19 -0
  71. package/lib/commonjs/helpers/mentionSpans.js.map +1 -0
  72. package/lib/commonjs/helpers/mimeToExtension.js +45 -0
  73. package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
  74. package/lib/commonjs/helpers/readReceipts.js +173 -0
  75. package/lib/commonjs/helpers/readReceipts.js.map +1 -0
  76. package/lib/commonjs/helpers/repairFilenameEncoding.js +79 -0
  77. package/lib/commonjs/helpers/repairFilenameEncoding.js.map +1 -0
  78. package/lib/commonjs/helpers/safeJson.js +18 -0
  79. package/lib/commonjs/helpers/safeJson.js.map +1 -0
  80. package/lib/commonjs/helpers/secureStoreRuntime.js +10 -1
  81. package/lib/commonjs/helpers/secureStoreRuntime.js.map +1 -1
  82. package/lib/commonjs/hooks/useSendMessage.js +384 -193
  83. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  84. package/lib/commonjs/i18n/strings.js +96 -0
  85. package/lib/commonjs/i18n/strings.js.map +1 -1
  86. package/lib/commonjs/main.js +81 -0
  87. package/lib/commonjs/main.js.map +1 -1
  88. package/lib/commonjs/networking/api-requests/auth.api.js +62 -3
  89. package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
  90. package/lib/commonjs/networking/api-requests/push.api.js +22 -7
  91. package/lib/commonjs/networking/api-requests/push.api.js.map +1 -1
  92. package/lib/commonjs/networking/stanzaHandlers.js +100 -3
  93. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  94. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +4 -2
  95. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  96. package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js +28 -0
  97. package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
  98. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
  99. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  100. package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js +28 -0
  101. package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
  102. package/lib/commonjs/networking/xmppClient.js +64 -0
  103. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  104. package/lib/commonjs/push/pushKeyStore.js +169 -0
  105. package/lib/commonjs/push/pushKeyStore.js.map +1 -0
  106. package/lib/commonjs/push/sealedBox.js +106 -0
  107. package/lib/commonjs/push/sealedBox.js.map +1 -0
  108. package/lib/commonjs/push/sealedPush.js +124 -0
  109. package/lib/commonjs/push/sealedPush.js.map +1 -0
  110. package/lib/commonjs/push/sealedPushTask.js +195 -0
  111. package/lib/commonjs/push/sealedPushTask.js.map +1 -0
  112. package/lib/commonjs/roomStore/persistence.js +78 -5
  113. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  114. package/lib/commonjs/roomStore/roomHeapSlice.js +4 -0
  115. package/lib/commonjs/roomStore/roomHeapSlice.js.map +1 -1
  116. package/lib/commonjs/roomStore/roomsSlice.js +114 -1
  117. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  118. package/lib/commonjs/services/pushRegistration.js +12 -7
  119. package/lib/commonjs/services/pushRegistration.js.map +1 -1
  120. package/lib/commonjs/types/models/attachment.model.js +2 -0
  121. package/lib/commonjs/types/models/attachment.model.js.map +1 -0
  122. package/lib/commonjs/version.js +1 -1
  123. package/lib/module/assets/icons.js +1 -1
  124. package/lib/module/assets/icons.js.map +1 -1
  125. package/lib/module/components/MainComponents/AlbumGrid.js +146 -0
  126. package/lib/module/components/MainComponents/AlbumGrid.js.map +1 -0
  127. package/lib/module/components/MainComponents/ChatRoom.js +2 -2
  128. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  129. package/lib/module/components/MainComponents/MediaMessage.js +200 -124
  130. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  131. package/lib/module/components/MainComponents/MediaUploadOverlay.js +104 -0
  132. package/lib/module/components/MainComponents/MediaUploadOverlay.js.map +1 -0
  133. package/lib/module/components/MessageBubble/MediaCaption.js +46 -0
  134. package/lib/module/components/MessageBubble/MediaCaption.js.map +1 -0
  135. package/lib/module/components/MessageBubble/Message.js +44 -5
  136. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  137. package/lib/module/components/MessageBubble/MessageInteractions.js +2 -1
  138. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  139. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +75 -0
  140. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  141. package/lib/module/components/RoomComponents/LastMessageItem.js +20 -4
  142. package/lib/module/components/RoomComponents/LastMessageItem.js.map +1 -1
  143. package/lib/module/components/RoomComponents/styled/LastAudioMessage.js +3 -2
  144. package/lib/module/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
  145. package/lib/module/components/RoomComponents/styled/LastMessageFile.js +3 -2
  146. package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  147. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +3 -2
  148. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  149. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +3 -2
  150. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  151. package/lib/module/components/Thread/ThreadWrapper.js +3 -2
  152. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  153. package/lib/module/components/styled/MediaFilePreview.js +61 -48
  154. package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
  155. package/lib/module/components/styled/MessageImage.js +16 -6
  156. package/lib/module/components/styled/MessageImage.js.map +1 -1
  157. package/lib/module/components/styled/SendInput.js +99 -68
  158. package/lib/module/components/styled/SendInput.js.map +1 -1
  159. package/lib/module/components/styled/VideoMessage.js +24 -10
  160. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  161. package/lib/module/context/xmppProvider.js +46 -0
  162. package/lib/module/context/xmppProvider.js.map +1 -1
  163. package/lib/module/e2ee/fileEnvelope.js +1 -1
  164. package/lib/module/e2ee/fileEnvelope.js.map +1 -1
  165. package/lib/module/e2ee/sealedBody.js +32 -2
  166. package/lib/module/e2ee/sealedBody.js.map +1 -1
  167. package/lib/module/helpers/albumLayout.js +143 -0
  168. package/lib/module/helpers/albumLayout.js.map +1 -0
  169. package/lib/module/helpers/attachments.js +245 -0
  170. package/lib/module/helpers/attachments.js.map +1 -0
  171. package/lib/module/helpers/caption.js +207 -0
  172. package/lib/module/helpers/caption.js.map +1 -0
  173. package/lib/module/helpers/createMainMessageForThread.js +5 -1
  174. package/lib/module/helpers/createMainMessageForThread.js.map +1 -1
  175. package/lib/module/helpers/createMessageFromXml.js +20 -6
  176. package/lib/module/helpers/createMessageFromXml.js.map +1 -1
  177. package/lib/module/helpers/fileKind.js +34 -0
  178. package/lib/module/helpers/fileKind.js.map +1 -0
  179. package/lib/module/helpers/getDataFromXml.js +6 -1
  180. package/lib/module/helpers/getDataFromXml.js.map +1 -1
  181. package/lib/module/helpers/mapWithConcurrency.js +37 -0
  182. package/lib/module/helpers/mapWithConcurrency.js.map +1 -0
  183. package/lib/module/helpers/mediaLimits.js +27 -0
  184. package/lib/module/helpers/mediaLimits.js.map +1 -0
  185. package/lib/module/helpers/mediaSendRetry.js +55 -0
  186. package/lib/module/helpers/mediaSendRetry.js.map +1 -0
  187. package/lib/module/helpers/mediaWireData.js +58 -0
  188. package/lib/module/helpers/mediaWireData.js.map +1 -0
  189. package/lib/module/helpers/mentionSpans.js +14 -0
  190. package/lib/module/helpers/mentionSpans.js.map +1 -0
  191. package/lib/module/helpers/mimeToExtension.js +43 -0
  192. package/lib/module/helpers/mimeToExtension.js.map +1 -1
  193. package/lib/module/helpers/readReceipts.js +160 -0
  194. package/lib/module/helpers/readReceipts.js.map +1 -0
  195. package/lib/module/helpers/repairFilenameEncoding.js +74 -0
  196. package/lib/module/helpers/repairFilenameEncoding.js.map +1 -0
  197. package/lib/module/helpers/safeJson.js +13 -0
  198. package/lib/module/helpers/safeJson.js.map +1 -0
  199. package/lib/module/helpers/secureStoreRuntime.js +10 -1
  200. package/lib/module/helpers/secureStoreRuntime.js.map +1 -1
  201. package/lib/module/hooks/useSendMessage.js +387 -195
  202. package/lib/module/hooks/useSendMessage.js.map +1 -1
  203. package/lib/module/i18n/strings.js +96 -0
  204. package/lib/module/i18n/strings.js.map +1 -1
  205. package/lib/module/main.js +6 -0
  206. package/lib/module/main.js.map +1 -1
  207. package/lib/module/networking/api-requests/auth.api.js +62 -3
  208. package/lib/module/networking/api-requests/auth.api.js.map +1 -1
  209. package/lib/module/networking/api-requests/push.api.js +21 -6
  210. package/lib/module/networking/api-requests/push.api.js.map +1 -1
  211. package/lib/module/networking/stanzaHandlers.js +97 -4
  212. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  213. package/lib/module/networking/xmpp/handleStanzas.xmpp.js +5 -3
  214. package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  215. package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js +25 -0
  216. package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
  217. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
  218. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  219. package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js +25 -0
  220. package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
  221. package/lib/module/networking/xmppClient.js +64 -0
  222. package/lib/module/networking/xmppClient.js.map +1 -1
  223. package/lib/module/push/pushKeyStore.js +159 -0
  224. package/lib/module/push/pushKeyStore.js.map +1 -0
  225. package/lib/module/push/sealedBox.js +97 -0
  226. package/lib/module/push/sealedBox.js.map +1 -0
  227. package/lib/module/push/sealedPush.js +117 -0
  228. package/lib/module/push/sealedPush.js.map +1 -0
  229. package/lib/module/push/sealedPushTask.js +187 -0
  230. package/lib/module/push/sealedPushTask.js.map +1 -0
  231. package/lib/module/roomStore/persistence.js +78 -5
  232. package/lib/module/roomStore/persistence.js.map +1 -1
  233. package/lib/module/roomStore/roomHeapSlice.js +4 -0
  234. package/lib/module/roomStore/roomHeapSlice.js.map +1 -1
  235. package/lib/module/roomStore/roomsSlice.js +109 -0
  236. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  237. package/lib/module/services/pushRegistration.js +12 -7
  238. package/lib/module/services/pushRegistration.js.map +1 -1
  239. package/lib/module/types/models/attachment.model.js +2 -0
  240. package/lib/module/types/models/attachment.model.js.map +1 -0
  241. package/lib/module/version.js +1 -1
  242. package/lib/typescript/assets/icons.d.ts +6 -1
  243. package/lib/typescript/assets/icons.d.ts.map +1 -1
  244. package/lib/typescript/components/MainComponents/AlbumGrid.d.ts +21 -0
  245. package/lib/typescript/components/MainComponents/AlbumGrid.d.ts.map +1 -0
  246. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  247. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  248. package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts +17 -0
  249. package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts.map +1 -0
  250. package/lib/typescript/components/MessageBubble/MediaCaption.d.ts +12 -0
  251. package/lib/typescript/components/MessageBubble/MediaCaption.d.ts.map +1 -0
  252. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  253. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  254. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  255. package/lib/typescript/components/RoomComponents/LastMessageItem.d.ts.map +1 -1
  256. package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts +2 -0
  257. package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts.map +1 -1
  258. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +2 -0
  259. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
  260. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +2 -0
  261. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
  262. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +2 -0
  263. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
  264. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  265. package/lib/typescript/components/styled/MediaFilePreview.d.ts.map +1 -1
  266. package/lib/typescript/components/styled/MessageImage.d.ts +10 -0
  267. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  268. package/lib/typescript/components/styled/SendInput.d.ts +7 -1
  269. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  270. package/lib/typescript/components/styled/VideoMessage.d.ts +7 -0
  271. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  272. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  273. package/lib/typescript/e2ee/fileEnvelope.d.ts +1 -1
  274. package/lib/typescript/e2ee/fileEnvelope.d.ts.map +1 -1
  275. package/lib/typescript/e2ee/sealedBody.d.ts +16 -0
  276. package/lib/typescript/e2ee/sealedBody.d.ts.map +1 -1
  277. package/lib/typescript/helpers/albumLayout.d.ts +66 -0
  278. package/lib/typescript/helpers/albumLayout.d.ts.map +1 -0
  279. package/lib/typescript/helpers/attachments.d.ts +55 -0
  280. package/lib/typescript/helpers/attachments.d.ts.map +1 -0
  281. package/lib/typescript/helpers/caption.d.ts +64 -0
  282. package/lib/typescript/helpers/caption.d.ts.map +1 -0
  283. package/lib/typescript/helpers/createMainMessageForThread.d.ts.map +1 -1
  284. package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
  285. package/lib/typescript/helpers/fileKind.d.ts +20 -0
  286. package/lib/typescript/helpers/fileKind.d.ts.map +1 -0
  287. package/lib/typescript/helpers/getDataFromXml.d.ts.map +1 -1
  288. package/lib/typescript/helpers/mapWithConcurrency.d.ts +9 -0
  289. package/lib/typescript/helpers/mapWithConcurrency.d.ts.map +1 -0
  290. package/lib/typescript/helpers/mediaLimits.d.ts +13 -0
  291. package/lib/typescript/helpers/mediaLimits.d.ts.map +1 -0
  292. package/lib/typescript/helpers/mediaSendRetry.d.ts +26 -0
  293. package/lib/typescript/helpers/mediaSendRetry.d.ts.map +1 -0
  294. package/lib/typescript/helpers/mediaWireData.d.ts +16 -0
  295. package/lib/typescript/helpers/mediaWireData.d.ts.map +1 -0
  296. package/lib/typescript/helpers/mentionSpans.d.ts +8 -0
  297. package/lib/typescript/helpers/mentionSpans.d.ts.map +1 -0
  298. package/lib/typescript/helpers/mimeToExtension.d.ts +7 -0
  299. package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
  300. package/lib/typescript/helpers/readReceipts.d.ts +82 -0
  301. package/lib/typescript/helpers/readReceipts.d.ts.map +1 -0
  302. package/lib/typescript/helpers/repairFilenameEncoding.d.ts +12 -0
  303. package/lib/typescript/helpers/repairFilenameEncoding.d.ts.map +1 -0
  304. package/lib/typescript/helpers/safeJson.d.ts +2 -0
  305. package/lib/typescript/helpers/safeJson.d.ts.map +1 -0
  306. package/lib/typescript/helpers/secureStoreRuntime.d.ts +17 -3
  307. package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +1 -1
  308. package/lib/typescript/hooks/useSendMessage.d.ts +2 -1
  309. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  310. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  311. package/lib/typescript/main.d.ts +6 -0
  312. package/lib/typescript/main.d.ts.map +1 -1
  313. package/lib/typescript/networking/api-requests/auth.api.d.ts +2 -0
  314. package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
  315. package/lib/typescript/networking/api-requests/push.api.d.ts +14 -2
  316. package/lib/typescript/networking/api-requests/push.api.d.ts.map +1 -1
  317. package/lib/typescript/networking/stanzaHandlers.d.ts +7 -3
  318. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  319. package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
  320. package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts +3 -0
  321. package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts.map +1 -0
  322. package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts +12 -0
  323. package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts.map +1 -1
  324. package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts +3 -0
  325. package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts.map +1 -0
  326. package/lib/typescript/networking/xmppClient.d.ts +15 -0
  327. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  328. package/lib/typescript/push/pushKeyStore.d.ts +35 -0
  329. package/lib/typescript/push/pushKeyStore.d.ts.map +1 -0
  330. package/lib/typescript/push/sealedBox.d.ts +24 -0
  331. package/lib/typescript/push/sealedBox.d.ts.map +1 -0
  332. package/lib/typescript/push/sealedPush.d.ts +61 -0
  333. package/lib/typescript/push/sealedPush.d.ts.map +1 -0
  334. package/lib/typescript/push/sealedPushTask.d.ts +33 -0
  335. package/lib/typescript/push/sealedPushTask.d.ts.map +1 -0
  336. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  337. package/lib/typescript/roomStore/roomHeapSlice.d.ts +22 -1
  338. package/lib/typescript/roomStore/roomHeapSlice.d.ts.map +1 -1
  339. package/lib/typescript/roomStore/roomsSlice.d.ts +67 -3
  340. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  341. package/lib/typescript/services/pushRegistration.d.ts +8 -0
  342. package/lib/typescript/services/pushRegistration.d.ts.map +1 -1
  343. package/lib/typescript/types/models/attachment.model.d.ts +52 -0
  344. package/lib/typescript/types/models/attachment.model.d.ts.map +1 -0
  345. package/lib/typescript/types/models/message.model.d.ts +26 -0
  346. package/lib/typescript/types/models/message.model.d.ts.map +1 -1
  347. package/lib/typescript/types/models/modal.model.d.ts +7 -0
  348. package/lib/typescript/types/models/modal.model.d.ts.map +1 -1
  349. package/lib/typescript/types/models/room.model.d.ts +2 -0
  350. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  351. package/lib/typescript/types/types.d.ts +35 -1
  352. package/lib/typescript/types/types.d.ts.map +1 -1
  353. package/lib/typescript/version.d.ts +1 -1
  354. package/package.json +14 -1
  355. package/plugins/notification-service/Info.plist +31 -0
  356. package/plugins/notification-service/NotificationService.swift +195 -0
  357. package/plugins/notification-service/SealedBox.swift +355 -0
  358. package/plugins/notification-service/check/gen-vectors.mjs +24 -0
  359. package/plugins/notification-service/check/main.swift +37 -0
  360. package/plugins/notification-service/check/run.sh +12 -0
  361. package/plugins/notification-service/check/vectors.json +1 -0
  362. package/plugins/withNotificationServiceExtension.js +189 -0
  363. package/src/assets/icons.tsx +20 -2
  364. package/src/components/MainComponents/AlbumGrid.tsx +183 -0
  365. package/src/components/MainComponents/ChatRoom.tsx +4 -2
  366. package/src/components/MainComponents/MediaMessage.tsx +246 -130
  367. package/src/components/MainComponents/MediaUploadOverlay.tsx +102 -0
  368. package/src/components/MessageBubble/MediaCaption.tsx +45 -0
  369. package/src/components/MessageBubble/Message.tsx +71 -3
  370. package/src/components/MessageBubble/MessageInteractions.tsx +2 -1
  371. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +64 -0
  372. package/src/components/RoomComponents/LastMessageItem.tsx +15 -4
  373. package/src/components/RoomComponents/styled/LastAudioMessage.tsx +6 -3
  374. package/src/components/RoomComponents/styled/LastMessageFile.tsx +6 -2
  375. package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +6 -2
  376. package/src/components/RoomComponents/styled/LastMessageVideo.tsx +6 -2
  377. package/src/components/Thread/ThreadWrapper.tsx +5 -9
  378. package/src/components/styled/MediaFilePreview.tsx +49 -34
  379. package/src/components/styled/MessageImage.tsx +21 -5
  380. package/src/components/styled/SendInput.tsx +101 -87
  381. package/src/components/styled/VideoMessage.tsx +34 -9
  382. package/src/context/xmppProvider.tsx +32 -0
  383. package/src/e2ee/fileEnvelope.ts +1 -1
  384. package/src/e2ee/sealedBody.ts +44 -5
  385. package/src/helpers/albumLayout.ts +207 -0
  386. package/src/helpers/attachments.ts +316 -0
  387. package/src/helpers/caption.ts +283 -0
  388. package/src/helpers/createMainMessageForThread.ts +6 -1
  389. package/src/helpers/createMessageFromXml.ts +21 -5
  390. package/src/helpers/fileKind.ts +38 -0
  391. package/src/helpers/getDataFromXml.ts +5 -1
  392. package/src/helpers/mapWithConcurrency.ts +32 -0
  393. package/src/helpers/mediaLimits.ts +27 -0
  394. package/src/helpers/mediaSendRetry.ts +59 -0
  395. package/src/helpers/mediaWireData.ts +57 -0
  396. package/src/helpers/mentionSpans.ts +17 -0
  397. package/src/helpers/mimeToExtension.ts +51 -0
  398. package/src/helpers/readReceipts.ts +219 -0
  399. package/src/helpers/repairFilenameEncoding.ts +82 -0
  400. package/src/helpers/safeJson.ts +11 -0
  401. package/src/helpers/secureStoreRuntime.ts +21 -3
  402. package/src/hooks/useSendMessage.tsx +448 -249
  403. package/src/i18n/strings.ts +96 -0
  404. package/src/main.ts +30 -0
  405. package/src/networking/api-requests/auth.api.ts +60 -3
  406. package/src/networking/api-requests/push.api.ts +29 -4
  407. package/src/networking/stanzaHandlers.ts +91 -2
  408. package/src/networking/xmpp/handleStanzas.xmpp.ts +6 -2
  409. package/src/networking/xmpp/sendDisplayedMarker.xmpp.ts +31 -0
  410. package/src/networking/xmpp/sendMediaMessage.xmpp.ts +60 -3
  411. package/src/networking/xmpp/sendReceivedReceipt.xmpp.ts +31 -0
  412. package/src/networking/xmppClient.ts +48 -0
  413. package/src/push/pushKeyStore.ts +163 -0
  414. package/src/push/sealedBox.ts +104 -0
  415. package/src/push/sealedPush.ts +127 -0
  416. package/src/push/sealedPushTask.ts +175 -0
  417. package/src/roomStore/persistence.ts +94 -3
  418. package/src/roomStore/roomHeapSlice.ts +23 -1
  419. package/src/roomStore/roomsSlice.ts +112 -1
  420. package/src/services/pushRegistration.ts +25 -5
  421. package/src/types/models/attachment.model.ts +51 -0
  422. package/src/types/models/message.model.ts +29 -0
  423. package/src/types/models/modal.model.ts +7 -0
  424. package/src/types/models/room.model.ts +2 -0
  425. package/src/types/types.ts +41 -1
  426. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["getPersistBackend","legacyAsyncStorageBackend","PERSIST_PREFIX","KEY_CHAT","KEY_ROOMS","KEY_ROOM_INDEX","KEY_ROOM_PREFIX","roomKey","jid","KEY_HEAP","MESSAGE_LIMIT","MAX_PERSISTED_FAILED_MESSAGES","sanitizeUser","user","token","_token","refreshToken","_refreshToken","xmppPassword","_xmppPassword","rest","PERSISTED_MESSAGE_FIELDS","PERSISTED_MESSAGE_USER_FIELDS","REFETCHED_ROOM_FIELDS","PERSISTED_ROOM_MEMBERS","pickDefined","source","keys","out","key","value","undefined","compactMessageForPersist","message","compact","sanitizeMessages","messages","Array","isArray","capped","length","slice","map","SESSION_ROOM_FIELDS","resetSessionRoomState","roomsMap","Object","fromEntries","entries","room","state","historyPreloadState","hasMessages","next","field","sanitizeRooms","rooms","includes","compactRoom","usersCnt","members","roomMembers","composing","composingList","isLoading","sanitizeMediaData","data","uri","type","name","size","sanitizeFailedMessagePayload","payload","id","roomJID","kind","isReply","isChecked","mainMessage","body","sanitizeFailedMessages","failedMessages","count","clean","reconstructFailedMessagePayload","showInChannel","isMediafile","location","fileName","mimetype","Number","computeBootTimeFailures","alreadyFailed","pending","push","asList","v","ROOM_ACTIONS","p","roomData","r","filter","Boolean","chatJID","roomMessages/applyPrivateStoreMarkers","roomMessages/deleteAllRooms","roomMessages/setLogoutState","TRANSIENT_ROOM_ACTIONS","Set","roomsTouchedBy","action","touch","startsWith","has","DEBOUNCE_MS","MAX_WAIT_MS","writeTimer","firstPendingAt","dirtyRooms","allRoomsDirty","chatDirty","heapDirty","knownRoomJids","legacyBlobPresent","migrateFromAsyncStorage","writeChain","Promise","resolve","schedule","flush","now","Date","clearTimeout","remaining","Math","max","setTimeout","min","persistedRoom","writePending","getState","backend","all","writeChat","writeHeap","sets","removes","chatPayload","chatSettingStore","JSON","stringify","heapPayload","roomHeapSlice","liveRooms","jids","nextKnown","add","delete","setMany","removeMany","old","allKeys","k","persistenceMiddleware","storeAPI","result","touched","then","catch","e","console","warn","readFrom","chatPlain","indexPlain","legacyPlain","heapPlain","getMany","parse","plain","chat","heap","legacyBlob","plains","forEach","idx","empty","readPersistedState","read","clearPersistedState","targets","target","PERSIST_KEYS","persistedRoomKey"],"sourceRoot":"../../../src","sources":["roomStore/persistence.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getPersistBackend","legacyAsyncStorageBackend","PERSIST_PREFIX","KEY_CHAT","KEY_ROOMS","KEY_ROOM_INDEX","KEY_ROOM_PREFIX","roomKey","jid","KEY_HEAP","MESSAGE_LIMIT","MAX_PERSISTED_FAILED_MESSAGES","sanitizeUser","user","token","_token","refreshToken","_refreshToken","xmppPassword","_xmppPassword","rest","PERSISTED_MESSAGE_FIELDS","PERSISTED_MESSAGE_USER_FIELDS","REFETCHED_ROOM_FIELDS","PERSISTED_ROOM_MEMBERS","pickDefined","source","keys","out","key","value","undefined","PERSISTED_ATTACHMENT_FIELDS","compactAttachments","attachments","Array","isArray","length","filter","item","map","compactMessageForPersist","message","compact","sanitizeMessages","messages","capped","slice","SESSION_ROOM_FIELDS","resetSessionRoomState","roomsMap","Object","fromEntries","entries","room","state","historyPreloadState","hasMessages","next","field","sanitizeRooms","rooms","includes","compactRoom","usersCnt","members","roomMembers","composing","composingList","isLoading","sanitizeMediaData","data","uri","type","name","size","MAX_PERSISTED_FAILED_FILES","sanitizeMediaFiles","files","file","clean","duration","waveForm","push","sanitizeFailedMessagePayload","payload","id","roomJID","kind","caption","isReply","isChecked","mainMessage","captionMentions","body","sanitizeFailedMessages","failedMessages","count","reconstructFailedMessagePayload","showInChannel","isMediafile","localUri","test","attachment","localUrl","location","originalName","fileName","mimetype","Number","computeBootTimeFailures","alreadyFailed","pending","asList","v","ROOM_ACTIONS","p","roomData","r","Boolean","chatJID","roomMessages/applyPrivateStoreMarkers","roomMessages/deleteAllRooms","roomMessages/setLogoutState","TRANSIENT_ROOM_ACTIONS","Set","roomsTouchedBy","action","touch","startsWith","has","DEBOUNCE_MS","MAX_WAIT_MS","writeTimer","firstPendingAt","dirtyRooms","allRoomsDirty","chatDirty","heapDirty","knownRoomJids","legacyBlobPresent","migrateFromAsyncStorage","writeChain","Promise","resolve","schedule","flush","now","Date","clearTimeout","remaining","Math","max","setTimeout","min","persistedRoom","writePending","getState","backend","all","writeChat","writeHeap","sets","removes","chatPayload","chatSettingStore","JSON","stringify","heapPayload","roomHeapSlice","liveRooms","jids","nextKnown","add","delete","setMany","removeMany","old","allKeys","k","persistenceMiddleware","storeAPI","result","touched","then","catch","e","console","warn","readFrom","chatPlain","indexPlain","legacyPlain","heapPlain","getMany","parse","plain","chat","heap","legacyBlob","plains","forEach","idx","empty","readPersistedState","read","clearPersistedState","targets","target","PERSIST_KEYS","persistedRoomKey"],"sourceRoot":"../../../src","sources":["roomStore/persistence.ts"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,10 @@ import { createSlice } from '@reduxjs/toolkit';
6
6
  // without the bubble needing to remember the original draft itself.
7
7
  // `kind === 'text'` carries the plain body; `kind === 'media'` carries
8
8
  // the upload payload so we don't have to make the user re-pick the file.
9
+ /**
10
+ * One file of a failed media send, as the retry replays it. Only the fields
11
+ * an upload needs, so it persists as a plain JSON object.
12
+ */
9
13
 
10
14
  const initialState = {
11
15
  messageHeap: [],
@@ -1 +1 @@
1
- {"version":3,"names":["createSlice","initialState","messageHeap","failedMessages","reducers","addMessageToHeap","state","action","push","payload","removeMessageFromHeapById","index","findIndex","m","id","splice","clearHeap","markMessageFailed","clearMessageFailure","roomHeapSlice","name","actions","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomHeapSlice.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAmC,kBAAkB;;AAIzE;AACA;AACA;AACA;;AA6BA,MAAMC,YAAgC,GAAG;EACvCC,WAAW,EAAE,EAAE;EACfC,cAAc,EAAE,CAAC;AACnB,CAAC;AAED,MAAMC,QAAQ,GAAG;EACfC,gBAAgB,EAAEA,CAACC,KAAwC,EAAEC,MAA+B,KAAK;IAC/FD,KAAK,CAACJ,WAAW,CAACM,IAAI,CAACD,MAAM,CAACE,OAAO,CAAC;EACxC,CAAC;EACDC,yBAAyB,EAAEA,CAACJ,KAAwC,EAAEC,MAA6B,KAAK;IACtG,MAAMI,KAAK,GAAGL,KAAK,CAACJ,WAAW,CAACU,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO,CAAC;IACzE,IAAIE,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBL,KAAK,CAACJ,WAAW,CAACa,MAAM,CAACJ,KAAK,EAAE,CAAC,CAAC;IACpC;EACF,CAAC;EACDK,SAAS,EAAGV,KAAwC,IAAK;IACvDA,KAAK,CAACJ,WAAW,GAAG,EAAE;IACtBI,KAAK,CAACH,cAAc,GAAG,CAAC,CAAC;EAC3B,CAAC;EACDc,iBAAiB,EAAEA,CACjBX,KAAwC,EACxCC,MAA2C,KACxC;IACHD,KAAK,CAACH,cAAc,CAACI,MAAM,CAACE,OAAO,CAACK,EAAE,CAAC,GAAGP,MAAM,CAACE,OAAO;IACxD;IACA;IACA,MAAME,KAAK,GAAGL,KAAK,CAACJ,WAAW,CAACU,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO,CAACK,EAAE,CAAC;IAC5E,IAAIH,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBL,KAAK,CAACJ,WAAW,CAACa,MAAM,CAACJ,KAAK,EAAE,CAAC,CAAC;IACpC;EACF,CAAC;EACDO,mBAAmB,EAAEA,CAACZ,KAAwC,EAAEC,MAA6B,KAAK;IAChG,OAAOD,KAAK,CAACH,cAAc,CAACI,MAAM,CAACE,OAAO,CAAC;EAC7C;AACF,CAAC;AAED,OAAO,MAAMU,aAA0E,GAAGnB,WAAW,CAAC;EACpGoB,IAAI,EAAE,eAAe;EACrBnB,YAAY;EACZG;AACF,CAAC,CAAC;AAEF,OAAO,MAAM;EACXC,gBAAgB;EAChBW,SAAS;EACTN,yBAAyB;EACzBO,iBAAiB;EACjBC;AACF,CAAC,GAAGC,aAAa,CAACE,OAAO;AAEzB,eAAeF,aAAa,CAACG,OAAO","ignoreList":[]}
1
+ {"version":3,"names":["createSlice","initialState","messageHeap","failedMessages","reducers","addMessageToHeap","state","action","push","payload","removeMessageFromHeapById","index","findIndex","m","id","splice","clearHeap","markMessageFailed","clearMessageFailure","roomHeapSlice","name","actions","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomHeapSlice.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAmC,kBAAkB;;AAIzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA+CA,MAAMC,YAAgC,GAAG;EACvCC,WAAW,EAAE,EAAE;EACfC,cAAc,EAAE,CAAC;AACnB,CAAC;AAED,MAAMC,QAAQ,GAAG;EACfC,gBAAgB,EAAEA,CAACC,KAAwC,EAAEC,MAA+B,KAAK;IAC/FD,KAAK,CAACJ,WAAW,CAACM,IAAI,CAACD,MAAM,CAACE,OAAO,CAAC;EACxC,CAAC;EACDC,yBAAyB,EAAEA,CAACJ,KAAwC,EAAEC,MAA6B,KAAK;IACtG,MAAMI,KAAK,GAAGL,KAAK,CAACJ,WAAW,CAACU,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO,CAAC;IACzE,IAAIE,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBL,KAAK,CAACJ,WAAW,CAACa,MAAM,CAACJ,KAAK,EAAE,CAAC,CAAC;IACpC;EACF,CAAC;EACDK,SAAS,EAAGV,KAAwC,IAAK;IACvDA,KAAK,CAACJ,WAAW,GAAG,EAAE;IACtBI,KAAK,CAACH,cAAc,GAAG,CAAC,CAAC;EAC3B,CAAC;EACDc,iBAAiB,EAAEA,CACjBX,KAAwC,EACxCC,MAA2C,KACxC;IACHD,KAAK,CAACH,cAAc,CAACI,MAAM,CAACE,OAAO,CAACK,EAAE,CAAC,GAAGP,MAAM,CAACE,OAAO;IACxD;IACA;IACA,MAAME,KAAK,GAAGL,KAAK,CAACJ,WAAW,CAACU,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO,CAACK,EAAE,CAAC;IAC5E,IAAIH,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBL,KAAK,CAACJ,WAAW,CAACa,MAAM,CAACJ,KAAK,EAAE,CAAC,CAAC;IACpC;EACF,CAAC;EACDO,mBAAmB,EAAEA,CAACZ,KAAwC,EAAEC,MAA6B,KAAK;IAChG,OAAOD,KAAK,CAACH,cAAc,CAACI,MAAM,CAACE,OAAO,CAAC;EAC7C;AACF,CAAC;AAED,OAAO,MAAMU,aAA0E,GAAGnB,WAAW,CAAC;EACpGoB,IAAI,EAAE,eAAe;EACrBnB,YAAY;EACZG;AACF,CAAC,CAAC;AAEF,OAAO,MAAM;EACXC,gBAAgB;EAChBW,SAAS;EACTN,yBAAyB;EACzBO,iBAAiB;EACjBC;AACF,CAAC,GAAGC,aAAa,CAACE,OAAO;AAEzB,eAAeF,aAAa,CAACG,OAAO","ignoreList":[]}
@@ -775,6 +775,63 @@ const reducers = {
775
775
  message.translations[locale] = entry;
776
776
  });
777
777
  },
778
+ /**
779
+ * Local upload state of one file of an outgoing media message: its
780
+ * `uploadStatus` ('uploading' | 'failed') and `uploadProgress` (0-100).
781
+ * `null` for `uploadStatus` clears both, once the file is up. Matches the
782
+ * message in the room and in the jump window, like the other patches.
783
+ * Never persisted: the persist whitelist drops these fields.
784
+ */
785
+ setMediaUploadState(state, action) {
786
+ const {
787
+ roomJID,
788
+ messageId,
789
+ attachmentId,
790
+ uploadStatus,
791
+ uploadProgress
792
+ } = action.payload;
793
+ if (!isSafeKey(roomJID) || !isSafeKey(messageId) || !isSafeKey(attachmentId)) {
794
+ return;
795
+ }
796
+ forEachMessageCopy(state, roomJID, messageId, message => {
797
+ const target = message.attachments?.find(attachment => attachment.attachmentId === attachmentId);
798
+ if (!target) {
799
+ return;
800
+ }
801
+ if (uploadStatus === null) {
802
+ delete target.uploadStatus;
803
+ delete target.uploadProgress;
804
+ return;
805
+ }
806
+ if (uploadStatus !== undefined) {
807
+ target.uploadStatus = uploadStatus;
808
+ }
809
+ if (typeof uploadProgress === 'number' && Number.isFinite(uploadProgress)) {
810
+ target.uploadProgress = Math.min(100, Math.max(0, uploadProgress));
811
+ }
812
+ });
813
+ },
814
+ /**
815
+ * Replaces the attachments of a message the sender already has, without
816
+ * touching its other fields: `pending` stays as it is, so the bubble is
817
+ * still waiting for the server echo. (addRoomMessage would count this as
818
+ * the echo and clear `pending`.)
819
+ */
820
+ setMessageAttachments(state, action) {
821
+ const {
822
+ roomJID,
823
+ messageId,
824
+ attachments
825
+ } = action.payload;
826
+ if (!isSafeKey(roomJID) || !isSafeKey(messageId) || !Array.isArray(attachments)) {
827
+ return;
828
+ }
829
+ forEachMessageCopy(state, roomJID, messageId, message => {
830
+ message.attachments = attachments.map(attachment => ({
831
+ ...attachment
832
+ }));
833
+ });
834
+ },
778
835
  addRoomMessage(state, action) {
779
836
  const {
780
837
  roomJID,
@@ -1187,6 +1244,54 @@ const reducers = {
1187
1244
  });
1188
1245
  }
1189
1246
  },
1247
+ /**
1248
+ * XEP-0184: an occupant's client acknowledged one of our messages. Only
1249
+ * the message id is matched (archive ids), on the live list and on a jump
1250
+ * window copy. Session-only: not persisted.
1251
+ */
1252
+ setReceivedReceipt: (state, action) => {
1253
+ const {
1254
+ roomJID,
1255
+ messageId,
1256
+ fromXmppUsername,
1257
+ timestamp
1258
+ } = action.payload;
1259
+ // Both keys become property names: an unsafe key must never reach the write.
1260
+ if (!isSafeKey(roomJID) || !isSafeKey(fromXmppUsername)) {
1261
+ return;
1262
+ }
1263
+ if (!state.rooms[roomJID] || !messageId) {
1264
+ return;
1265
+ }
1266
+ forEachMessageCopy(state, roomJID, message => message.id === messageId, message => {
1267
+ if (!message.receivedBy) {
1268
+ message.receivedBy = {};
1269
+ }
1270
+ message.receivedBy[fromXmppUsername] = timestamp;
1271
+ });
1272
+ },
1273
+ /**
1274
+ * XEP-0333: an occupant displayed up to `messageId`. One watermark per
1275
+ * user and room, replaced on every marker. Session-only: not persisted.
1276
+ */
1277
+ setDisplayedMarker: (state, action) => {
1278
+ const {
1279
+ roomJID,
1280
+ xmppUsername,
1281
+ messageId
1282
+ } = action.payload;
1283
+ if (!isSafeKey(roomJID) || !isSafeKey(xmppUsername)) {
1284
+ return;
1285
+ }
1286
+ const room = state.rooms[roomJID];
1287
+ if (!room || !messageId) {
1288
+ return;
1289
+ }
1290
+ if (!room.lastDisplayedByUser) {
1291
+ room.lastDisplayedByUser = {};
1292
+ }
1293
+ room.lastDisplayedByUser[xmppUsername] = messageId;
1294
+ },
1190
1295
  setLogoutState: state => {
1191
1296
  state.rooms = {};
1192
1297
  state.pendingReactions = {};
@@ -1412,6 +1517,8 @@ export const {
1412
1517
  deleteAllRooms,
1413
1518
  setRoomMessages,
1414
1519
  addRoomMessage,
1520
+ setMediaUploadState,
1521
+ setMessageAttachments,
1415
1522
  deleteRoomMessage,
1416
1523
  setEditAction,
1417
1524
  editRoomMessage,
@@ -1443,6 +1550,8 @@ export const {
1443
1550
  setJoiningRoom,
1444
1551
  clearJoiningRoom,
1445
1552
  setReactions,
1553
+ setReceivedReceipt,
1554
+ setDisplayedMarker,
1446
1555
  mergeUsersSet,
1447
1556
  removeRoomMessage,
1448
1557
  addRoomFromApi,
@@ -1 +1 @@
1
- {"version":3,"names":["createAsyncThunk","createSlice","insertMessageWithDelimiter","msgSortableMs","isSafeKey","mergeUsersSet","mergeIntoUsersSet","getRoomUserCount","subscribeRoomForPush","RUNTIME_MESSAGE_LIMIT","UNREAD_CAP_PAGE","RUNTIME_MESSAGE_CEILING","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","NO_GROWTH","grew","atHead","insertRoomMessage","state","roomJID","start","rooms","roomMessages","incomingCallLog","existingCallIdx","findIndex","msg","merged","takePendingReactions","lengthBefore","length","tailBefore","unshift","lastViewedValue","lastViewedTimestamp","visibleRoomJID","syncJumpWindowWithMessage","allowAppend","win","jumpWindow","wi","wExisting","wMerged","isKnownMessage","prev","next","key","value","Object","entries","undefined","user","pending","hasNewer","push","JUMP_WINDOW_MAX_MESSAGES","slice","oldest","Number","olderCursor","isFinite","hasOlder","capAfterGrowth","enforceMessageCap","Math","min","max","bumpLastMessageTimestamp","room","ts","lastMessageTimestamp","upsertRoom","roomData","jid","lastViewed","serverMarker","privateStoreMarkers","msgs","newest","m","t","messageTimestampMs","Date","getTime","incomingMessages","existingMessages","usersCnt","resolveIncomingUsersCnt","lastMessage","resolveApiUnread","icon","roomBg","unreadMessages","apiUnreadCount","activeRoomJID","unreadBaselineTimestamp","compareStanzaIds","applyReactionToMessage","from","reactions","data","fromId","split","list","r","current","reaction","emoji","anyShown","values","some","keys","byMessage","pendingReactions","limit","splice","mergeHistoryIntoCache","fetched","ex","fe","realExisting","realFetched","fetchedKeys","byMs","capTail","arr","existingIds","overlaps","sort","byId","isEdited","activeMessage","mergeWindowMessages","seen","num","x","y","initialState","isLoading","isUnreadSyncing","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","pendingJump","joiningRoomJID","readBoundaries","usersSet","archivedMessage","isValidRoomJid","includes","forEachMessageCopy","matches","fn","pred","live","incoming","apiTotal","membersLen","members","apiUnreadSeededAt","now","addRoomViaApi","xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","action","payload","setUnreadCounts","count","unreadCapped","addRooms","deleteRoom","updateRoom","updates","existingRoom","newMembers","floor","prevMembers","prevCnt","setRoomMessages","capped","deleteRoomMessage","idx","isDeleted","setEditAction","editRoomMessage","removeRoomMessage","setMessageTranslation","locale","entry","translations","addRoomMessage","outcome","addRoomMessages","anyAtTail","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setUnreadSyncing","setLastViewedTimestamp","timestamp","countNewerMessages","applyPrivateStoreMarkers","markers","newestKnownMs","newestAckedMessageMs","nowMs","looksCorrupt","FUTURE_MARKER_TOLERANCE_MS","cachedMarker","setReadBoundary","clearReadBoundary","setRoomRole","role","setRoomNoMessages","noMessages","setCurrentRoom","setVisibleRoom","requested","clearVisibleRoom","setPendingNotificationJid","clearPendingNotificationJid","requestJumpToMessage","ids","Boolean","canMatchByContent","createdAt","preview","at","clearPendingJump","showArchivedMessage","clearArchivedMessage","setJumpWindow","prependJumpWindowMessages","newerCursor","appendJumpWindowMessages","clearJumpWindow","setJoiningRoom","clearJoiningRoom","setReactions","latestReactionTimestamp","found","setLogoutState","setActiveMessage","flag","forEach","setCloseActiveMessage","title","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","name","norm","s","v","replace","isOwn","selfXmpp","selfWallet","candidates","userJID","xmppUsername","xmppFrom","self","c","ms","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createAsyncThunk","createSlice","insertMessageWithDelimiter","msgSortableMs","isSafeKey","mergeUsersSet","mergeIntoUsersSet","getRoomUserCount","subscribeRoomForPush","RUNTIME_MESSAGE_LIMIT","UNREAD_CAP_PAGE","RUNTIME_MESSAGE_CEILING","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","NO_GROWTH","grew","atHead","insertRoomMessage","state","roomJID","start","rooms","roomMessages","incomingCallLog","existingCallIdx","findIndex","msg","merged","takePendingReactions","lengthBefore","length","tailBefore","unshift","lastViewedValue","lastViewedTimestamp","visibleRoomJID","syncJumpWindowWithMessage","allowAppend","win","jumpWindow","wi","wExisting","wMerged","isKnownMessage","prev","next","key","value","Object","entries","undefined","user","pending","hasNewer","push","JUMP_WINDOW_MAX_MESSAGES","slice","oldest","Number","olderCursor","isFinite","hasOlder","capAfterGrowth","enforceMessageCap","Math","min","max","bumpLastMessageTimestamp","room","ts","lastMessageTimestamp","upsertRoom","roomData","jid","lastViewed","serverMarker","privateStoreMarkers","msgs","newest","m","t","messageTimestampMs","Date","getTime","incomingMessages","existingMessages","usersCnt","resolveIncomingUsersCnt","lastMessage","resolveApiUnread","icon","roomBg","unreadMessages","apiUnreadCount","activeRoomJID","unreadBaselineTimestamp","compareStanzaIds","applyReactionToMessage","from","reactions","data","fromId","split","list","r","current","reaction","emoji","anyShown","values","some","keys","byMessage","pendingReactions","limit","splice","mergeHistoryIntoCache","fetched","ex","fe","realExisting","realFetched","fetchedKeys","byMs","capTail","arr","existingIds","overlaps","sort","byId","isEdited","activeMessage","mergeWindowMessages","seen","num","x","y","initialState","isLoading","isUnreadSyncing","editAction","isEdit","roomJid","messageId","text","pendingNotificationJid","pendingJump","joiningRoomJID","readBoundaries","usersSet","archivedMessage","isValidRoomJid","includes","forEachMessageCopy","matches","fn","pred","live","incoming","apiTotal","membersLen","members","apiUnreadSeededAt","now","addRoomViaApi","xmpp","dispatch","roomsStore","actions","addRoomFromApi","reducers","addRoom","action","payload","setUnreadCounts","count","unreadCapped","addRooms","deleteRoom","updateRoom","updates","existingRoom","newMembers","floor","prevMembers","prevCnt","setRoomMessages","capped","deleteRoomMessage","idx","isDeleted","setEditAction","editRoomMessage","removeRoomMessage","setMessageTranslation","locale","entry","translations","setMediaUploadState","attachmentId","uploadStatus","uploadProgress","target","attachments","find","attachment","setMessageAttachments","addRoomMessage","outcome","addRoomMessages","anyAtTail","deleteAllRooms","setComposing","chatJID","composing","composingList","setIsLoading","loading","loadingText","setUnreadSyncing","setLastViewedTimestamp","timestamp","countNewerMessages","applyPrivateStoreMarkers","markers","newestKnownMs","newestAckedMessageMs","nowMs","looksCorrupt","FUTURE_MARKER_TOLERANCE_MS","cachedMarker","setReadBoundary","clearReadBoundary","setRoomRole","role","setRoomNoMessages","noMessages","setCurrentRoom","setVisibleRoom","requested","clearVisibleRoom","setPendingNotificationJid","clearPendingNotificationJid","requestJumpToMessage","ids","Boolean","canMatchByContent","createdAt","preview","at","clearPendingJump","showArchivedMessage","clearArchivedMessage","setJumpWindow","prependJumpWindowMessages","newerCursor","appendJumpWindowMessages","clearJumpWindow","setJoiningRoom","clearJoiningRoom","setReactions","latestReactionTimestamp","found","setReceivedReceipt","fromXmppUsername","receivedBy","setDisplayedMarker","xmppUsername","lastDisplayedByUser","setLogoutState","setActiveMessage","flag","forEach","setCloseActiveMessage","title","historyPreloadState","messageStats","historyComplete","applyRoomsPreloadBatch","patch","name","norm","s","v","replace","isOwn","selfXmpp","selfWallet","candidates","userJID","xmppFrom","self","c","ms","reducer"],"sourceRoot":"../../../src","sources":["roomStore/roomsSlice.ts"],"mappings":"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","ignoreList":[]}
@@ -28,7 +28,7 @@ const readSession = () => {
28
28
  };
29
29
  const isGateway = session => !!session.gatewayUrl;
30
30
  const isReady = session => !!session.authToken && (isGateway(session) ? !!session.xmppUsername && !!session.projectName : !!session.appId);
31
- const sameRegistration = (token, current, session) => !!current && current.token === token.token && current.tokenType === token.tokenType && current.gateway === isGateway(session) && current.appId === session.appId && current.xmppUsername === session.xmppUsername;
31
+ const sameRegistration = (token, current, session) => !!current && current.token === token.token && current.tokenType === token.tokenType && (current.pushKey || '') === (token.pushKey || '') && current.gateway === isGateway(session) && current.appId === session.appId && current.xmppUsername === session.xmppUsername;
32
32
  const slotsNeedingRegistration = session => SLOTS.filter(slot => {
33
33
  const token = held.get(slot);
34
34
  return !!token && !sameRegistration(token, registered.get(slot), session);
@@ -63,7 +63,8 @@ const registerOne = async (token, session) => {
63
63
  appId: session.appId,
64
64
  token: token.token,
65
65
  tokenType: token.tokenType,
66
- authToken: session.authToken
66
+ authToken: session.authToken,
67
+ pushKey: token.pushKey
67
68
  });
68
69
  }
69
70
  registered.set(slotOf(token.tokenType), {
@@ -72,7 +73,7 @@ const registerOne = async (token, session) => {
72
73
  xmppUsername: session.xmppUsername,
73
74
  gateway: isGateway(session)
74
75
  });
75
- pushLog('rn', `push: ${token.tokenType} token registered` + (isGateway(session) ? ' (gateway)' : ` for app ${session.appId}`));
76
+ pushLog('rn', `push: ${token.tokenType} token registered` + (isGateway(session) ? ' (gateway)' : ` for app ${session.appId}`) + (token.pushKey && !isGateway(session) ? ' with a device key (encrypted pushes)' : ''));
76
77
  };
77
78
  const registerNow = () => {
78
79
  if (inflight) {
@@ -117,7 +118,7 @@ const runTokenHook = session => {
117
118
  if (typeof entry?.token !== 'string' || !entry.token.trim()) {
118
119
  continue;
119
120
  }
120
- hold(entry.token.trim(), entry.tokenType);
121
+ hold(entry.token.trim(), entry.tokenType, entry.pushKey);
121
122
  }
122
123
  await registerNow();
123
124
  })().catch(error => {
@@ -126,11 +127,15 @@ const runTokenHook = session => {
126
127
  pushLog('warn', 'push: getPushTokens failed; will retry', error);
127
128
  });
128
129
  };
129
- const hold = (token, tokenType) => {
130
+ const hold = (token, tokenType, pushKey) => {
130
131
  const resolved = tokenType ?? detectPushTokenType(token);
132
+ const key = typeof pushKey === 'string' ? pushKey.trim() : '';
131
133
  const entry = {
132
134
  token,
133
- tokenType: resolved
135
+ tokenType: resolved,
136
+ ...(key ? {
137
+ pushKey: key
138
+ } : {})
134
139
  };
135
140
  held.set(slotOf(resolved), entry);
136
141
  return entry;
@@ -178,7 +183,7 @@ export async function registerPushToken(token, options) {
178
183
  if (typeof token !== 'string' || !token.trim()) {
179
184
  throw new TypeError('registerPushToken: token must be a non-empty string');
180
185
  }
181
- hold(token.trim(), options?.tokenType);
186
+ hold(token.trim(), options?.tokenType, options?.pushKey);
182
187
  ensureWatching();
183
188
  const session = readSession();
184
189
  if (session.pushDisabled) {