@ethora/chat-component-rn 26.10.4 → 26.10.6

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 (451) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +15 -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/VideoCalls/ActiveCallBar.js +61 -16
  35. package/lib/commonjs/components/VideoCalls/ActiveCallBar.js.map +1 -1
  36. package/lib/commonjs/components/VideoCalls/CallIcons.js +41 -16
  37. package/lib/commonjs/components/VideoCalls/CallIcons.js.map +1 -1
  38. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +183 -9
  39. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  40. package/lib/commonjs/components/VideoCalls/VideoCallSession.js +40 -15
  41. package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
  42. package/lib/commonjs/components/VideoCalls/callSessionController.js +49 -26
  43. package/lib/commonjs/components/VideoCalls/callSessionController.js.map +1 -1
  44. package/lib/commonjs/components/VideoCalls/callUiStore.js +33 -4
  45. package/lib/commonjs/components/VideoCalls/callUiStore.js.map +1 -1
  46. package/lib/commonjs/components/VideoCalls/livekitRuntime.js +9 -1
  47. package/lib/commonjs/components/VideoCalls/livekitRuntime.js.map +1 -1
  48. package/lib/commonjs/components/VideoCalls/useCallKeep.js +197 -28
  49. package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
  50. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js +88 -0
  51. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
  52. package/lib/commonjs/components/VideoCalls/usePipTile.js +232 -0
  53. package/lib/commonjs/components/VideoCalls/usePipTile.js.map +1 -0
  54. package/lib/commonjs/components/styled/MediaFilePreview.js +60 -47
  55. package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
  56. package/lib/commonjs/components/styled/MessageImage.js +16 -6
  57. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  58. package/lib/commonjs/components/styled/SendInput.js +99 -68
  59. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  60. package/lib/commonjs/components/styled/VideoMessage.js +24 -10
  61. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  62. package/lib/commonjs/context/xmppProvider.js +46 -0
  63. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  64. package/lib/commonjs/e2ee/fileEnvelope.js +6 -0
  65. package/lib/commonjs/e2ee/fileEnvelope.js.map +1 -1
  66. package/lib/commonjs/e2ee/sealedBody.js +32 -2
  67. package/lib/commonjs/e2ee/sealedBody.js.map +1 -1
  68. package/lib/commonjs/helpers/albumLayout.js +150 -0
  69. package/lib/commonjs/helpers/albumLayout.js.map +1 -0
  70. package/lib/commonjs/helpers/attachments.js +255 -0
  71. package/lib/commonjs/helpers/attachments.js.map +1 -0
  72. package/lib/commonjs/helpers/caption.js +214 -0
  73. package/lib/commonjs/helpers/caption.js.map +1 -0
  74. package/lib/commonjs/helpers/createMainMessageForThread.js +5 -1
  75. package/lib/commonjs/helpers/createMainMessageForThread.js.map +1 -1
  76. package/lib/commonjs/helpers/createMessageFromXml.js +19 -5
  77. package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
  78. package/lib/commonjs/helpers/fileKind.js +40 -0
  79. package/lib/commonjs/helpers/fileKind.js.map +1 -0
  80. package/lib/commonjs/helpers/getDataFromXml.js +6 -1
  81. package/lib/commonjs/helpers/getDataFromXml.js.map +1 -1
  82. package/lib/commonjs/helpers/mapWithConcurrency.js +41 -0
  83. package/lib/commonjs/helpers/mapWithConcurrency.js.map +1 -0
  84. package/lib/commonjs/helpers/mediaLimits.js +33 -0
  85. package/lib/commonjs/helpers/mediaLimits.js.map +1 -0
  86. package/lib/commonjs/helpers/mediaSendRetry.js +64 -0
  87. package/lib/commonjs/helpers/mediaSendRetry.js.map +1 -0
  88. package/lib/commonjs/helpers/mediaWireData.js +62 -0
  89. package/lib/commonjs/helpers/mediaWireData.js.map +1 -0
  90. package/lib/commonjs/helpers/mentionSpans.js +19 -0
  91. package/lib/commonjs/helpers/mentionSpans.js.map +1 -0
  92. package/lib/commonjs/helpers/mimeToExtension.js +45 -0
  93. package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
  94. package/lib/commonjs/helpers/readReceipts.js +173 -0
  95. package/lib/commonjs/helpers/readReceipts.js.map +1 -0
  96. package/lib/commonjs/helpers/repairFilenameEncoding.js +79 -0
  97. package/lib/commonjs/helpers/repairFilenameEncoding.js.map +1 -0
  98. package/lib/commonjs/helpers/safeJson.js +18 -0
  99. package/lib/commonjs/helpers/safeJson.js.map +1 -0
  100. package/lib/commonjs/helpers/updateMessagesTillLast.js +3 -1
  101. package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
  102. package/lib/commonjs/hooks/useSendMessage.js +384 -193
  103. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  104. package/lib/commonjs/i18n/strings.js +144 -0
  105. package/lib/commonjs/i18n/strings.js.map +1 -1
  106. package/lib/commonjs/main.js.map +1 -1
  107. package/lib/commonjs/networking/api-requests/auth.api.js +62 -3
  108. package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
  109. package/lib/commonjs/networking/stanzaHandlers.js +100 -3
  110. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  111. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +4 -2
  112. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  113. package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js +28 -0
  114. package/lib/commonjs/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
  115. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
  116. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  117. package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js +28 -0
  118. package/lib/commonjs/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
  119. package/lib/commonjs/networking/xmppClient.js +64 -0
  120. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  121. package/lib/commonjs/roomStore/persistence.js +78 -5
  122. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  123. package/lib/commonjs/roomStore/roomHeapSlice.js +4 -0
  124. package/lib/commonjs/roomStore/roomHeapSlice.js.map +1 -1
  125. package/lib/commonjs/roomStore/roomsSlice.js +114 -1
  126. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  127. package/lib/commonjs/types/models/attachment.model.js +2 -0
  128. package/lib/commonjs/types/models/attachment.model.js.map +1 -0
  129. package/lib/commonjs/version.js +1 -1
  130. package/lib/module/assets/icons.js +1 -1
  131. package/lib/module/assets/icons.js.map +1 -1
  132. package/lib/module/components/MainComponents/AlbumGrid.js +146 -0
  133. package/lib/module/components/MainComponents/AlbumGrid.js.map +1 -0
  134. package/lib/module/components/MainComponents/ChatRoom.js +2 -2
  135. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  136. package/lib/module/components/MainComponents/MediaMessage.js +200 -124
  137. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  138. package/lib/module/components/MainComponents/MediaUploadOverlay.js +104 -0
  139. package/lib/module/components/MainComponents/MediaUploadOverlay.js.map +1 -0
  140. package/lib/module/components/MessageBubble/MediaCaption.js +46 -0
  141. package/lib/module/components/MessageBubble/MediaCaption.js.map +1 -0
  142. package/lib/module/components/MessageBubble/Message.js +44 -5
  143. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  144. package/lib/module/components/MessageBubble/MessageInteractions.js +2 -1
  145. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  146. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +75 -0
  147. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  148. package/lib/module/components/RoomComponents/LastMessageItem.js +20 -4
  149. package/lib/module/components/RoomComponents/LastMessageItem.js.map +1 -1
  150. package/lib/module/components/RoomComponents/styled/LastAudioMessage.js +3 -2
  151. package/lib/module/components/RoomComponents/styled/LastAudioMessage.js.map +1 -1
  152. package/lib/module/components/RoomComponents/styled/LastMessageFile.js +3 -2
  153. package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  154. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +3 -2
  155. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  156. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +3 -2
  157. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  158. package/lib/module/components/Thread/ThreadWrapper.js +3 -2
  159. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  160. package/lib/module/components/VideoCalls/ActiveCallBar.js +63 -18
  161. package/lib/module/components/VideoCalls/ActiveCallBar.js.map +1 -1
  162. package/lib/module/components/VideoCalls/CallIcons.js +38 -15
  163. package/lib/module/components/VideoCalls/CallIcons.js.map +1 -1
  164. package/lib/module/components/VideoCalls/VideoCallOverlay.js +185 -11
  165. package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  166. package/lib/module/components/VideoCalls/VideoCallSession.js +41 -16
  167. package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
  168. package/lib/module/components/VideoCalls/callSessionController.js +46 -24
  169. package/lib/module/components/VideoCalls/callSessionController.js.map +1 -1
  170. package/lib/module/components/VideoCalls/callUiStore.js +30 -3
  171. package/lib/module/components/VideoCalls/callUiStore.js.map +1 -1
  172. package/lib/module/components/VideoCalls/livekitRuntime.js +9 -1
  173. package/lib/module/components/VideoCalls/livekitRuntime.js.map +1 -1
  174. package/lib/module/components/VideoCalls/useCallKeep.js +198 -29
  175. package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
  176. package/lib/module/components/VideoCalls/useOngoingCallNotification.js +84 -0
  177. package/lib/module/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
  178. package/lib/module/components/VideoCalls/usePipTile.js +228 -0
  179. package/lib/module/components/VideoCalls/usePipTile.js.map +1 -0
  180. package/lib/module/components/styled/MediaFilePreview.js +61 -48
  181. package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
  182. package/lib/module/components/styled/MessageImage.js +16 -6
  183. package/lib/module/components/styled/MessageImage.js.map +1 -1
  184. package/lib/module/components/styled/SendInput.js +99 -68
  185. package/lib/module/components/styled/SendInput.js.map +1 -1
  186. package/lib/module/components/styled/VideoMessage.js +24 -10
  187. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  188. package/lib/module/context/xmppProvider.js +46 -0
  189. package/lib/module/context/xmppProvider.js.map +1 -1
  190. package/lib/module/e2ee/fileEnvelope.js +1 -1
  191. package/lib/module/e2ee/fileEnvelope.js.map +1 -1
  192. package/lib/module/e2ee/sealedBody.js +32 -2
  193. package/lib/module/e2ee/sealedBody.js.map +1 -1
  194. package/lib/module/helpers/albumLayout.js +143 -0
  195. package/lib/module/helpers/albumLayout.js.map +1 -0
  196. package/lib/module/helpers/attachments.js +245 -0
  197. package/lib/module/helpers/attachments.js.map +1 -0
  198. package/lib/module/helpers/caption.js +207 -0
  199. package/lib/module/helpers/caption.js.map +1 -0
  200. package/lib/module/helpers/createMainMessageForThread.js +5 -1
  201. package/lib/module/helpers/createMainMessageForThread.js.map +1 -1
  202. package/lib/module/helpers/createMessageFromXml.js +20 -6
  203. package/lib/module/helpers/createMessageFromXml.js.map +1 -1
  204. package/lib/module/helpers/fileKind.js +34 -0
  205. package/lib/module/helpers/fileKind.js.map +1 -0
  206. package/lib/module/helpers/getDataFromXml.js +6 -1
  207. package/lib/module/helpers/getDataFromXml.js.map +1 -1
  208. package/lib/module/helpers/mapWithConcurrency.js +37 -0
  209. package/lib/module/helpers/mapWithConcurrency.js.map +1 -0
  210. package/lib/module/helpers/mediaLimits.js +27 -0
  211. package/lib/module/helpers/mediaLimits.js.map +1 -0
  212. package/lib/module/helpers/mediaSendRetry.js +55 -0
  213. package/lib/module/helpers/mediaSendRetry.js.map +1 -0
  214. package/lib/module/helpers/mediaWireData.js +58 -0
  215. package/lib/module/helpers/mediaWireData.js.map +1 -0
  216. package/lib/module/helpers/mentionSpans.js +14 -0
  217. package/lib/module/helpers/mentionSpans.js.map +1 -0
  218. package/lib/module/helpers/mimeToExtension.js +43 -0
  219. package/lib/module/helpers/mimeToExtension.js.map +1 -1
  220. package/lib/module/helpers/readReceipts.js +160 -0
  221. package/lib/module/helpers/readReceipts.js.map +1 -0
  222. package/lib/module/helpers/repairFilenameEncoding.js +74 -0
  223. package/lib/module/helpers/repairFilenameEncoding.js.map +1 -0
  224. package/lib/module/helpers/safeJson.js +13 -0
  225. package/lib/module/helpers/safeJson.js.map +1 -0
  226. package/lib/module/helpers/updateMessagesTillLast.js +3 -1
  227. package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
  228. package/lib/module/hooks/useSendMessage.js +387 -195
  229. package/lib/module/hooks/useSendMessage.js.map +1 -1
  230. package/lib/module/i18n/strings.js +144 -0
  231. package/lib/module/i18n/strings.js.map +1 -1
  232. package/lib/module/main.js.map +1 -1
  233. package/lib/module/networking/api-requests/auth.api.js +62 -3
  234. package/lib/module/networking/api-requests/auth.api.js.map +1 -1
  235. package/lib/module/networking/stanzaHandlers.js +97 -4
  236. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  237. package/lib/module/networking/xmpp/handleStanzas.xmpp.js +5 -3
  238. package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  239. package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js +25 -0
  240. package/lib/module/networking/xmpp/sendDisplayedMarker.xmpp.js.map +1 -0
  241. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js +53 -2
  242. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  243. package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js +25 -0
  244. package/lib/module/networking/xmpp/sendReceivedReceipt.xmpp.js.map +1 -0
  245. package/lib/module/networking/xmppClient.js +64 -0
  246. package/lib/module/networking/xmppClient.js.map +1 -1
  247. package/lib/module/roomStore/persistence.js +78 -5
  248. package/lib/module/roomStore/persistence.js.map +1 -1
  249. package/lib/module/roomStore/roomHeapSlice.js +4 -0
  250. package/lib/module/roomStore/roomHeapSlice.js.map +1 -1
  251. package/lib/module/roomStore/roomsSlice.js +109 -0
  252. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  253. package/lib/module/types/models/attachment.model.js +2 -0
  254. package/lib/module/types/models/attachment.model.js.map +1 -0
  255. package/lib/module/version.js +1 -1
  256. package/lib/typescript/assets/icons.d.ts +6 -1
  257. package/lib/typescript/assets/icons.d.ts.map +1 -1
  258. package/lib/typescript/components/MainComponents/AlbumGrid.d.ts +21 -0
  259. package/lib/typescript/components/MainComponents/AlbumGrid.d.ts.map +1 -0
  260. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  261. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  262. package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts +17 -0
  263. package/lib/typescript/components/MainComponents/MediaUploadOverlay.d.ts.map +1 -0
  264. package/lib/typescript/components/MessageBubble/MediaCaption.d.ts +12 -0
  265. package/lib/typescript/components/MessageBubble/MediaCaption.d.ts.map +1 -0
  266. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  267. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  268. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  269. package/lib/typescript/components/RoomComponents/LastMessageItem.d.ts.map +1 -1
  270. package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts +2 -0
  271. package/lib/typescript/components/RoomComponents/styled/LastAudioMessage.d.ts.map +1 -1
  272. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +2 -0
  273. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
  274. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +2 -0
  275. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
  276. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +2 -0
  277. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
  278. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  279. package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts +9 -3
  280. package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts.map +1 -1
  281. package/lib/typescript/components/VideoCalls/CallIcons.d.ts +9 -0
  282. package/lib/typescript/components/VideoCalls/CallIcons.d.ts.map +1 -1
  283. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
  284. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
  285. package/lib/typescript/components/VideoCalls/callSessionController.d.ts +7 -0
  286. package/lib/typescript/components/VideoCalls/callSessionController.d.ts.map +1 -1
  287. package/lib/typescript/components/VideoCalls/callUiStore.d.ts +13 -0
  288. package/lib/typescript/components/VideoCalls/callUiStore.d.ts.map +1 -1
  289. package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts +5 -0
  290. package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts.map +1 -1
  291. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts +12 -0
  292. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
  293. package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts +10 -0
  294. package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts.map +1 -0
  295. package/lib/typescript/components/VideoCalls/usePipTile.d.ts +46 -0
  296. package/lib/typescript/components/VideoCalls/usePipTile.d.ts.map +1 -0
  297. package/lib/typescript/components/styled/MediaFilePreview.d.ts.map +1 -1
  298. package/lib/typescript/components/styled/MessageImage.d.ts +10 -0
  299. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  300. package/lib/typescript/components/styled/SendInput.d.ts +7 -1
  301. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  302. package/lib/typescript/components/styled/VideoMessage.d.ts +7 -0
  303. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  304. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  305. package/lib/typescript/e2ee/fileEnvelope.d.ts +1 -1
  306. package/lib/typescript/e2ee/fileEnvelope.d.ts.map +1 -1
  307. package/lib/typescript/e2ee/sealedBody.d.ts +16 -0
  308. package/lib/typescript/e2ee/sealedBody.d.ts.map +1 -1
  309. package/lib/typescript/helpers/albumLayout.d.ts +66 -0
  310. package/lib/typescript/helpers/albumLayout.d.ts.map +1 -0
  311. package/lib/typescript/helpers/attachments.d.ts +55 -0
  312. package/lib/typescript/helpers/attachments.d.ts.map +1 -0
  313. package/lib/typescript/helpers/caption.d.ts +64 -0
  314. package/lib/typescript/helpers/caption.d.ts.map +1 -0
  315. package/lib/typescript/helpers/createMainMessageForThread.d.ts.map +1 -1
  316. package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
  317. package/lib/typescript/helpers/fileKind.d.ts +20 -0
  318. package/lib/typescript/helpers/fileKind.d.ts.map +1 -0
  319. package/lib/typescript/helpers/getDataFromXml.d.ts.map +1 -1
  320. package/lib/typescript/helpers/mapWithConcurrency.d.ts +9 -0
  321. package/lib/typescript/helpers/mapWithConcurrency.d.ts.map +1 -0
  322. package/lib/typescript/helpers/mediaLimits.d.ts +13 -0
  323. package/lib/typescript/helpers/mediaLimits.d.ts.map +1 -0
  324. package/lib/typescript/helpers/mediaSendRetry.d.ts +26 -0
  325. package/lib/typescript/helpers/mediaSendRetry.d.ts.map +1 -0
  326. package/lib/typescript/helpers/mediaWireData.d.ts +16 -0
  327. package/lib/typescript/helpers/mediaWireData.d.ts.map +1 -0
  328. package/lib/typescript/helpers/mentionSpans.d.ts +8 -0
  329. package/lib/typescript/helpers/mentionSpans.d.ts.map +1 -0
  330. package/lib/typescript/helpers/mimeToExtension.d.ts +7 -0
  331. package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
  332. package/lib/typescript/helpers/readReceipts.d.ts +82 -0
  333. package/lib/typescript/helpers/readReceipts.d.ts.map +1 -0
  334. package/lib/typescript/helpers/repairFilenameEncoding.d.ts +12 -0
  335. package/lib/typescript/helpers/repairFilenameEncoding.d.ts.map +1 -0
  336. package/lib/typescript/helpers/safeJson.d.ts +2 -0
  337. package/lib/typescript/helpers/safeJson.d.ts.map +1 -0
  338. package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
  339. package/lib/typescript/hooks/useSendMessage.d.ts +2 -1
  340. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  341. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  342. package/lib/typescript/main.d.ts +1 -1
  343. package/lib/typescript/main.d.ts.map +1 -1
  344. package/lib/typescript/networking/api-requests/auth.api.d.ts +2 -0
  345. package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
  346. package/lib/typescript/networking/stanzaHandlers.d.ts +7 -3
  347. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  348. package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
  349. package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts +3 -0
  350. package/lib/typescript/networking/xmpp/sendDisplayedMarker.xmpp.d.ts.map +1 -0
  351. package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts +12 -0
  352. package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts.map +1 -1
  353. package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts +3 -0
  354. package/lib/typescript/networking/xmpp/sendReceivedReceipt.xmpp.d.ts.map +1 -0
  355. package/lib/typescript/networking/xmppClient.d.ts +15 -0
  356. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  357. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  358. package/lib/typescript/roomStore/roomHeapSlice.d.ts +22 -1
  359. package/lib/typescript/roomStore/roomHeapSlice.d.ts.map +1 -1
  360. package/lib/typescript/roomStore/roomsSlice.d.ts +67 -3
  361. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  362. package/lib/typescript/types/models/attachment.model.d.ts +52 -0
  363. package/lib/typescript/types/models/attachment.model.d.ts.map +1 -0
  364. package/lib/typescript/types/models/message.model.d.ts +26 -0
  365. package/lib/typescript/types/models/message.model.d.ts.map +1 -1
  366. package/lib/typescript/types/models/modal.model.d.ts +7 -0
  367. package/lib/typescript/types/models/modal.model.d.ts.map +1 -1
  368. package/lib/typescript/types/models/room.model.d.ts +2 -0
  369. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  370. package/lib/typescript/types/types.d.ts +69 -1
  371. package/lib/typescript/types/types.d.ts.map +1 -1
  372. package/lib/typescript/version.d.ts +1 -1
  373. package/package.json +4 -1
  374. package/plugins/notification-service/Info.plist +31 -0
  375. package/plugins/notification-service/NotificationService.swift +82 -0
  376. package/plugins/withNotificationServiceExtension.js +137 -0
  377. package/src/assets/icons.tsx +20 -2
  378. package/src/components/MainComponents/AlbumGrid.tsx +183 -0
  379. package/src/components/MainComponents/ChatRoom.tsx +4 -2
  380. package/src/components/MainComponents/MediaMessage.tsx +246 -130
  381. package/src/components/MainComponents/MediaUploadOverlay.tsx +102 -0
  382. package/src/components/MessageBubble/MediaCaption.tsx +45 -0
  383. package/src/components/MessageBubble/Message.tsx +71 -3
  384. package/src/components/MessageBubble/MessageInteractions.tsx +2 -1
  385. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +64 -0
  386. package/src/components/RoomComponents/LastMessageItem.tsx +15 -4
  387. package/src/components/RoomComponents/styled/LastAudioMessage.tsx +6 -3
  388. package/src/components/RoomComponents/styled/LastMessageFile.tsx +6 -2
  389. package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +6 -2
  390. package/src/components/RoomComponents/styled/LastMessageVideo.tsx +6 -2
  391. package/src/components/Thread/ThreadWrapper.tsx +5 -9
  392. package/src/components/VideoCalls/ActiveCallBar.tsx +56 -10
  393. package/src/components/VideoCalls/CallIcons.tsx +36 -12
  394. package/src/components/VideoCalls/VideoCallOverlay.tsx +205 -8
  395. package/src/components/VideoCalls/VideoCallSession.tsx +45 -13
  396. package/src/components/VideoCalls/callSessionController.ts +51 -20
  397. package/src/components/VideoCalls/callUiStore.ts +33 -3
  398. package/src/components/VideoCalls/livekitRuntime.ts +13 -0
  399. package/src/components/VideoCalls/useCallKeep.ts +204 -33
  400. package/src/components/VideoCalls/useOngoingCallNotification.ts +113 -0
  401. package/src/components/VideoCalls/usePipTile.ts +214 -0
  402. package/src/components/styled/MediaFilePreview.tsx +49 -34
  403. package/src/components/styled/MessageImage.tsx +21 -5
  404. package/src/components/styled/SendInput.tsx +101 -87
  405. package/src/components/styled/VideoMessage.tsx +34 -9
  406. package/src/context/xmppProvider.tsx +32 -0
  407. package/src/e2ee/fileEnvelope.ts +1 -1
  408. package/src/e2ee/sealedBody.ts +44 -5
  409. package/src/helpers/albumLayout.ts +207 -0
  410. package/src/helpers/attachments.ts +316 -0
  411. package/src/helpers/caption.ts +283 -0
  412. package/src/helpers/createMainMessageForThread.ts +6 -1
  413. package/src/helpers/createMessageFromXml.ts +21 -5
  414. package/src/helpers/fileKind.ts +38 -0
  415. package/src/helpers/getDataFromXml.ts +5 -1
  416. package/src/helpers/mapWithConcurrency.ts +32 -0
  417. package/src/helpers/mediaLimits.ts +27 -0
  418. package/src/helpers/mediaSendRetry.ts +59 -0
  419. package/src/helpers/mediaWireData.ts +57 -0
  420. package/src/helpers/mentionSpans.ts +17 -0
  421. package/src/helpers/mimeToExtension.ts +51 -0
  422. package/src/helpers/readReceipts.ts +219 -0
  423. package/src/helpers/repairFilenameEncoding.ts +82 -0
  424. package/src/helpers/safeJson.ts +11 -0
  425. package/src/helpers/updateMessagesTillLast.tsx +2 -1
  426. package/src/hooks/useSendMessage.tsx +448 -249
  427. package/src/i18n/strings.ts +144 -0
  428. package/src/main.ts +3 -0
  429. package/src/networking/api-requests/auth.api.ts +60 -3
  430. package/src/networking/stanzaHandlers.ts +91 -2
  431. package/src/networking/xmpp/handleStanzas.xmpp.ts +6 -2
  432. package/src/networking/xmpp/sendDisplayedMarker.xmpp.ts +31 -0
  433. package/src/networking/xmpp/sendMediaMessage.xmpp.ts +60 -3
  434. package/src/networking/xmpp/sendReceivedReceipt.xmpp.ts +31 -0
  435. package/src/networking/xmppClient.ts +48 -0
  436. package/src/roomStore/persistence.ts +94 -3
  437. package/src/roomStore/roomHeapSlice.ts +23 -1
  438. package/src/roomStore/roomsSlice.ts +112 -1
  439. package/src/types/models/attachment.model.ts +51 -0
  440. package/src/types/models/message.model.ts +29 -0
  441. package/src/types/models/modal.model.ts +7 -0
  442. package/src/types/models/room.model.ts +2 -0
  443. package/src/types/types.ts +83 -1
  444. package/src/version.ts +1 -1
  445. package/lib/commonjs/components/VideoCalls/useDraggable.js +0 -59
  446. package/lib/commonjs/components/VideoCalls/useDraggable.js.map +0 -1
  447. package/lib/module/components/VideoCalls/useDraggable.js +0 -55
  448. package/lib/module/components/VideoCalls/useDraggable.js.map +0 -1
  449. package/lib/typescript/components/VideoCalls/useDraggable.d.ts +0 -19
  450. package/lib/typescript/components/VideoCalls/useDraggable.d.ts.map +0 -1
  451. package/src/components/VideoCalls/useDraggable.ts +0 -46
@@ -16,6 +16,7 @@ var _getElementFont = require("../../helpers/getElementFont");
16
16
  var _useTheme = require("../../hooks/useTheme");
17
17
  var _useT = require("../../i18n/useT");
18
18
  var _mediaLibraryRuntime = require("../../helpers/mediaLibraryRuntime");
19
+ var _mediaLimits = require("../../helpers/mediaLimits");
19
20
  var ImagePicker = _interopRequireWildcard(require("expo-image-picker"));
20
21
  var DocumentPicker = _interopRequireWildcard(require("expo-document-picker"));
21
22
  var ImageManipulator = _interopRequireWildcard(require("expo-image-manipulator"));
@@ -39,14 +40,6 @@ const VOICE_PRESET = {
39
40
  ..._expoAudio.RecordingPresets.HIGH_QUALITY,
40
41
  isMeteringEnabled: true
41
42
  };
42
-
43
- // iOS photos default to HEIC; many web backends (incl. ours) 500 on
44
- // HEIC uploads because they can't decode it. Convert to JPEG before
45
- // upload — JPEG is universally supported. JPEGs pass through.
46
- // Server rejects uploads over its body-size cap with HTTP 413 (Request
47
- // Entity Too Large). Guard client-side so the user gets a clear message
48
- // instead of a silent failed bubble. 50 MB matches the backend limit.
49
- const MAX_MEDIA_BYTES = 50 * 1024 * 1024;
50
43
  const formatBytes = bytes => {
51
44
  if (bytes >= 1024 * 1024) {
52
45
  return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
@@ -138,18 +131,68 @@ const SendInput = ({
138
131
  // (iOS, bug #4). A double-fire happens on a fast double-tap of the
139
132
  // "Document" row or a dev-mode double-run of the sheet's close callback.
140
133
  const pickingDocRef = (0, _react.useRef)(false);
141
- const handleFileSelect = files => {
142
- // Enforce the upload size cap before anything reaches the network.
143
- // The backend rejects oversized bodies with HTTP 413; catching it
144
- // here gives a clear message instead of a silent failed bubble.
145
- const limit = maxMediaBytes ?? MAX_MEDIA_BYTES;
146
- const oversize = files.find(f => typeof f.size === 'number' && f.size > limit);
147
- if (oversize) {
148
- _reactNative.Alert.alert('File too large', `"${oversize.name}" is ${formatBytes(oversize.size)}. The maximum allowed size is ${Math.round(limit / (1024 * 1024))} MB.`);
134
+
135
+ /**
136
+ * Adds picked files to the tray. The tray is a list, not a slot: a second
137
+ * pick or a camera shot appends. Enforces the per-message file cap and the
138
+ * per-file size cap before anything reaches the network; the size cap is
139
+ * the upload limit (50 MB, or the sealed-file limit in an e2ee room),
140
+ * lowered by `config.attachments.maxSizeMB`. The backend rejects oversized
141
+ * bodies with HTTP 413, so catching them here gives a clear message.
142
+ */
143
+ const handleFileSelect = incoming => {
144
+ if (incoming.length === 0) {
149
145
  return;
150
146
  }
151
- filePreviewsRef.current = files;
152
- setFilePreviews([...files]);
147
+ const limit = (0, _mediaLimits.mediaSizeLimit)(config, maxMediaBytes);
148
+ const fitting = incoming.filter(file => {
149
+ if (typeof file.size === 'number' && file.size > limit) {
150
+ _reactNative.Alert.alert(t('attachment.tooLarge', {
151
+ name: file.name,
152
+ max: formatBytes(limit)
153
+ }));
154
+ return false;
155
+ }
156
+ return true;
157
+ });
158
+ const cap = (0, _mediaLimits.mediaFileCap)(config);
159
+ const room = cap - filePreviewsRef.current.length;
160
+ if (fitting.length === 0) {
161
+ return;
162
+ }
163
+ if (room <= 0 || fitting.length > room) {
164
+ _reactNative.Alert.alert(t('attachment.limit', {
165
+ count: cap
166
+ }));
167
+ }
168
+ const accepted = fitting.slice(0, Math.max(0, room));
169
+ if (accepted.length === 0) {
170
+ return;
171
+ }
172
+ const next = [...filePreviewsRef.current, ...accepted];
173
+ filePreviewsRef.current = next;
174
+ setFilePreviews(next);
175
+ };
176
+
177
+ /** One picked image or video as the file the tray and the upload carry. */
178
+ const assetToFile = async (asset, fallbackPrefix) => {
179
+ if (asset.type === 'video') {
180
+ return {
181
+ uri: asset.uri,
182
+ type: asset.mimeType || 'video/mp4',
183
+ name: asset.fileName || asset.uri.split('/').pop() || `${fallbackPrefix}_${Date.now()}.mp4`,
184
+ size: asset.fileSize
185
+ };
186
+ }
187
+ // Videos pass through unchanged; only images get the HEIC→JPEG
188
+ // normalization (manipulator is image-only).
189
+ const normalized = await normalizeImageAsset(asset);
190
+ return {
191
+ uri: normalized.uri,
192
+ type: normalized.mime,
193
+ name: normalized.name,
194
+ size: asset.fileSize
195
+ };
153
196
  };
154
197
 
155
198
  // Both pickers use expo-image-picker / expo-document-picker. They
@@ -173,6 +216,7 @@ const SendInput = ({
173
216
  return;
174
217
  }
175
218
  try {
219
+ // Camera is a single shot per tap; the shot joins the tray.
176
220
  const result = await ImagePicker.launchCameraAsync({
177
221
  mediaTypes: ['images', 'videos'],
178
222
  quality: 0.9,
@@ -181,23 +225,7 @@ const SendInput = ({
181
225
  if (result.canceled || !result.assets?.[0]) {
182
226
  return;
183
227
  }
184
- const asset = result.assets[0];
185
- if (asset.type === 'video') {
186
- handleFileSelect([{
187
- uri: asset.uri,
188
- type: asset.mimeType || 'video/mp4',
189
- name: asset.fileName || asset.uri.split('/').pop() || `camera_${Date.now()}.mp4`,
190
- size: asset.fileSize
191
- }]);
192
- return;
193
- }
194
- const normalized = await normalizeImageAsset(asset);
195
- handleFileSelect([{
196
- uri: normalized.uri,
197
- type: normalized.mime,
198
- name: normalized.name,
199
- size: asset.fileSize
200
- }]);
228
+ handleFileSelect([await assetToFile(result.assets[0], 'camera')]);
201
229
  } catch (error) {
202
230
  console.error('Camera error:', error);
203
231
  }
@@ -208,35 +236,32 @@ const SendInput = ({
208
236
  promptOpenSettings(t('permission.gallery'));
209
237
  return;
210
238
  }
239
+
240
+ // The library takes as many as the tray has room for (at least one).
241
+ const remaining = (0, _mediaLimits.mediaFileCap)(config) - filePreviewsRef.current.length;
242
+ if (remaining <= 0) {
243
+ _reactNative.Alert.alert(t('attachment.limit', {
244
+ count: (0, _mediaLimits.mediaFileCap)(config)
245
+ }));
246
+ return;
247
+ }
211
248
  try {
212
249
  const result = await ImagePicker.launchImageLibraryAsync({
213
250
  mediaTypes: ['images', 'videos'],
214
251
  allowsEditing: false,
215
252
  quality: 0.9,
253
+ allowsMultipleSelection: true,
254
+ selectionLimit: remaining,
216
255
  preferredAssetRepresentationMode: ImagePicker.UIImagePickerPreferredAssetRepresentationMode.Compatible
217
256
  });
218
- if (result.canceled || !result.assets?.[0]) {
257
+ if (result.canceled || !result.assets?.length) {
219
258
  return;
220
259
  }
221
- const asset = result.assets[0];
222
- // Videos pass through unchanged; only images get the HEIC→JPEG
223
- // normalization (manipulator is image-only).
224
- if (asset.type === 'video') {
225
- handleFileSelect([{
226
- uri: asset.uri,
227
- type: asset.mimeType || 'video/mp4',
228
- name: asset.fileName || asset.uri.split('/').pop() || `gallery_${Date.now()}.mp4`,
229
- size: asset.fileSize
230
- }]);
231
- return;
260
+ const picked = [];
261
+ for (const asset of result.assets) {
262
+ picked.push(await assetToFile(asset, 'gallery'));
232
263
  }
233
- const normalized = await normalizeImageAsset(asset);
234
- handleFileSelect([{
235
- uri: normalized.uri,
236
- type: normalized.mime,
237
- name: normalized.name,
238
- size: asset.fileSize
239
- }]);
264
+ handleFileSelect(picked);
240
265
  } catch (error) {
241
266
  console.error('Gallery error:', error);
242
267
  }
@@ -292,19 +317,18 @@ const SendInput = ({
292
317
  try {
293
318
  const result = await DocumentPicker.getDocumentAsync({
294
319
  type: '*/*',
295
- multiple: false,
320
+ multiple: true,
296
321
  copyToCacheDirectory: true
297
322
  });
298
- if (result.canceled || !result.assets?.[0]) {
323
+ if (result.canceled || !result.assets?.length) {
299
324
  return;
300
325
  }
301
- const asset = result.assets[0];
302
- handleFileSelect([{
326
+ handleFileSelect(result.assets.map(asset => ({
303
327
  uri: asset.uri,
304
328
  type: asset.mimeType || 'application/octet-stream',
305
329
  name: asset.name || `file_${Date.now()}`,
306
330
  size: asset.size ?? undefined
307
- }]);
331
+ })));
308
332
  } catch (err) {
309
333
  console.error('DocumentPicker error:', err);
310
334
  } finally {
@@ -342,6 +366,13 @@ const SendInput = ({
342
366
  // check; afterwards the sheet opens with zero added latency.
343
367
  const libraryPermissionCheckedRef = (0, _react.useRef)(false);
344
368
  const handleAttachPress = () => {
369
+ const cap = (0, _mediaLimits.mediaFileCap)(config);
370
+ if (filePreviewsRef.current.length >= cap) {
371
+ _reactNative.Alert.alert(t('attachment.limit', {
372
+ count: cap
373
+ }));
374
+ return;
375
+ }
345
376
  if (libraryPermissionCheckedRef.current) {
346
377
  setShowMediaMenu(true);
347
378
  return;
@@ -546,17 +577,17 @@ const SendInput = ({
546
577
  setMessage('');
547
578
  setFilePreviews([]);
548
579
  try {
549
- for (const file of filesToSend) {
550
- try {
551
- await sendMedia(file, file.type);
552
- } catch (err) {
553
- console.error(err);
554
- return;
555
- }
556
- }
557
- if (messageToSend) {
580
+ if (filesToSend.length > 0) {
581
+ // The files go as ONE message. The text typed with them is its
582
+ // caption, never a separate text message.
583
+ await sendMedia(filesToSend, filesToSend[0].type, messageToSend ? {
584
+ text: messageToSend
585
+ } : undefined);
586
+ } else if (messageToSend) {
558
587
  sendMessage(messageToSend);
559
588
  }
589
+ } catch (err) {
590
+ console.error(err);
560
591
  } finally {
561
592
  sendingRef.current = false;
562
593
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_StyledInputComponents","_Button","_interopRequireDefault","_icons","_reactNative","_AttachSheet","_MediaFilePreview","_getIconColor","_getElementFont","_useTheme","_useT","_mediaLibraryRuntime","ImagePicker","DocumentPicker","ImageManipulator","FileSystem","_expoAudio","_audioWaveform","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","VOICE_PRESET","RecordingPresets","HIGH_QUALITY","isMeteringEnabled","MAX_MEDIA_BYTES","formatBytes","bytes","toFixed","normalizeImageAsset","asset","mime","mimeType","toLowerCase","looksLikeHeic","includes","uri","endsWith","name","fileName","split","pop","Date","now","result","manipulateAsync","compress","format","SaveFormat","JPEG","baseName","replace","SendInput","sendMessage","sendMedia","config","maxMediaBytes","onFocus","onBlur","editMessage","isLoading","isMessageProcessing","useT","theme","useTheme","message","setMessage","useState","isRecording","setIsRecording","recordingDuration","setRecordingDuration","isFocused","setIsFocused","filePreviews","setFilePreviews","showMediaMenu","setShowMediaMenu","audioRecorder","useAudioRecorder","isRecordingRef","useRef","recordingTimerRef","recordingLevelsRef","recordingStartedAtRef","messageRef","filePreviewsRef","sendingRef","pickingDocRef","handleFileSelect","files","limit","oversize","find","size","Alert","alert","Math","round","current","promptOpenSettings","text","style","onPress","Linking","openSettings","handleCameraSelection","perm","requestCameraPermissionsAsync","granted","launchCameraAsync","mediaTypes","quality","videoQuality","UIImagePickerControllerQualityType","Medium","canceled","assets","type","fileSize","normalized","error","console","handleGallerySelection","requestMediaLibraryPermissionsAsync","launchImageLibraryAsync","allowsEditing","preferredAssetRepresentationMode","UIImagePickerPreferredAssetRepresentationMode","Compatible","handleRecentMediaSelection","media","info","getInfoAsync","exists","isVideo","handleFileSelection","getDocumentAsync","multiple","copyToCacheDirectory","undefined","err","ensureLibraryPermission","MediaLibrary","getMediaLibrary","getPermissionsAsync","canAskAgain","requestPermissionsAsync","warn","libraryPermissionCheckedRef","handleAttachPress","finally","stopRecordingTimer","clearInterval","restoreAudioMode","setAudioModeAsync","allowsRecording","playsInSilentMode","handleStartRecording","requestRecordingPermissionsAsync","prepareToRecordAsync","record","startedAt","setInterval","push","meteringToLevel","getStatus","metering","floor","handleCancelRecording","wasRecording","stop","handleStopAndSendRecording","seconds","ts","levels","file","duration","max","waveForm","some","level","encodeWaveForm","scaleLevels","resamplePeaks","WAVEFORM_RESOLUTION","useEffect","catch","handleRemoveImage","index","next","filter","_","handleSendClick","useCallback","messageToSend","filesToSend","length","inputFontSize","typography","input","fontSize","elements","inputText","inputMinHeight","minHeight","estimatedLineHeight","inputVerticalPadding","jsxs","InputContainer","isText","children","jsx","MediaFilePreview","MessageInputContainer","Fragment","disableMedia","TouchableOpacity","width","height","justifyContent","alignItems","backgroundColor","activeOpacity","AttachIcon","color","getIconColor","MessageInput","testID","accessibilityLabel","colors","primary","fontWeight","placeholder","placeholderTextColor","textMuted","keyboardAppearance","dark","value","onChangeText","editable","multiline","maxHeight","paddingTop","paddingBottom","flex","getElementFont","borderRadius","surfaceSecondary","Text","danger","View","flexDirection","gap","paddingHorizontal","toString","padStart","textSecondary","hasContent","showMic","enableAudio","disabled","filled","EndIcon","RecordIcon","textOnPrimary","SendIcon","sendButtonSize","marginLeft","marginRight","opacity","visible","onClose","onCamera","onGallery","onDocument","onPickMedia","primaryColor","_default","exports"],"sourceRoot":"../../../../src","sources":["components/styled/SendInput.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_StyledInputComponents","_Button","_interopRequireDefault","_icons","_reactNative","_AttachSheet","_MediaFilePreview","_getIconColor","_getElementFont","_useTheme","_useT","_mediaLibraryRuntime","_mediaLimits","ImagePicker","DocumentPicker","ImageManipulator","FileSystem","_expoAudio","_audioWaveform","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","VOICE_PRESET","RecordingPresets","HIGH_QUALITY","isMeteringEnabled","formatBytes","bytes","toFixed","normalizeImageAsset","asset","mime","mimeType","toLowerCase","looksLikeHeic","includes","uri","endsWith","name","fileName","split","pop","Date","now","result","manipulateAsync","compress","format","SaveFormat","JPEG","baseName","replace","SendInput","sendMessage","sendMedia","config","maxMediaBytes","onFocus","onBlur","editMessage","isLoading","isMessageProcessing","useT","theme","useTheme","message","setMessage","useState","isRecording","setIsRecording","recordingDuration","setRecordingDuration","isFocused","setIsFocused","filePreviews","setFilePreviews","showMediaMenu","setShowMediaMenu","audioRecorder","useAudioRecorder","isRecordingRef","useRef","recordingTimerRef","recordingLevelsRef","recordingStartedAtRef","messageRef","filePreviewsRef","sendingRef","pickingDocRef","handleFileSelect","incoming","length","limit","mediaSizeLimit","fitting","filter","file","size","Alert","alert","max","cap","mediaFileCap","room","current","count","accepted","slice","Math","next","assetToFile","fallbackPrefix","type","fileSize","normalized","promptOpenSettings","text","style","onPress","Linking","openSettings","handleCameraSelection","perm","requestCameraPermissionsAsync","granted","launchCameraAsync","mediaTypes","quality","videoQuality","UIImagePickerControllerQualityType","Medium","canceled","assets","error","console","handleGallerySelection","requestMediaLibraryPermissionsAsync","remaining","launchImageLibraryAsync","allowsEditing","allowsMultipleSelection","selectionLimit","preferredAssetRepresentationMode","UIImagePickerPreferredAssetRepresentationMode","Compatible","picked","push","handleRecentMediaSelection","media","info","getInfoAsync","exists","isVideo","handleFileSelection","getDocumentAsync","multiple","copyToCacheDirectory","map","undefined","err","ensureLibraryPermission","MediaLibrary","getMediaLibrary","getPermissionsAsync","canAskAgain","requestPermissionsAsync","warn","libraryPermissionCheckedRef","handleAttachPress","finally","stopRecordingTimer","clearInterval","restoreAudioMode","setAudioModeAsync","allowsRecording","playsInSilentMode","handleStartRecording","requestRecordingPermissionsAsync","prepareToRecordAsync","record","startedAt","setInterval","meteringToLevel","getStatus","metering","floor","handleCancelRecording","wasRecording","stop","handleStopAndSendRecording","seconds","ts","levels","duration","round","waveForm","some","level","encodeWaveForm","scaleLevels","resamplePeaks","WAVEFORM_RESOLUTION","useEffect","catch","handleRemoveImage","index","_","handleSendClick","useCallback","messageToSend","filesToSend","inputFontSize","typography","input","fontSize","elements","inputText","inputMinHeight","minHeight","estimatedLineHeight","inputVerticalPadding","jsxs","InputContainer","isText","children","jsx","MediaFilePreview","MessageInputContainer","Fragment","disableMedia","TouchableOpacity","width","height","justifyContent","alignItems","backgroundColor","activeOpacity","AttachIcon","color","getIconColor","MessageInput","testID","accessibilityLabel","colors","primary","fontWeight","placeholder","placeholderTextColor","textMuted","keyboardAppearance","dark","value","onChangeText","editable","multiline","maxHeight","paddingTop","paddingBottom","flex","getElementFont","borderRadius","surfaceSecondary","Text","danger","View","flexDirection","gap","paddingHorizontal","toString","padStart","textSecondary","hasContent","showMic","enableAudio","disabled","filled","EndIcon","RecordIcon","textOnPrimary","SendIcon","sendButtonSize","marginLeft","marginRight","opacity","visible","onClose","onCamera","onGallery","onDocument","onPickMedia","primaryColor","_default","exports"],"sourceRoot":"../../../../src","sources":["components/styled/SendInput.tsx"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAMA,IAAAE,OAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,eAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AACA,IAAAY,oBAAA,GAAAZ,OAAA;AACA,IAAAa,YAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAf,uBAAA,CAAAC,OAAA;AACA,IAAAe,cAAA,GAAAhB,uBAAA,CAAAC,OAAA;AACA,IAAAgB,gBAAA,GAAAjB,uBAAA,CAAAC,OAAA;AACA,IAAAiB,UAAA,GAAAlB,uBAAA,CAAAC,OAAA;AAKA,IAAAkB,UAAA,GAAAlB,OAAA;AAMA,IAAAmB,cAAA,GAAAnB,OAAA;AAMqC,IAAAoB,WAAA,GAAApB,OAAA;AAAA,SAAAG,uBAAAkB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAtB,wBAAAsB,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAA1B,uBAAA,YAAAA,CAAAsB,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAxCrC;;AAwBA;AACA;AACA;AACA;;AAeA;AACA;AACA;AACA,MAAMgB,YAAY,GAAG;EAAE,GAAGC,2BAAgB,CAACC,YAAY;EAAEC,iBAAiB,EAAE;AAAK,CAAC;AAElF,MAAMC,WAAW,GAAIC,KAAa,IAAa;EAC7C,IAAIA,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE;IACxB,OAAO,GAAG,CAACA,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,EAAEC,OAAO,CAAC,CAAC,CAAC,KAAK;EACnD;EACA,IAAID,KAAK,IAAI,IAAI,EAAE;IACjB,OAAO,GAAG,CAACA,KAAK,GAAG,IAAI,EAAEC,OAAO,CAAC,CAAC,CAAC,KAAK;EAC1C;EACA,OAAO,GAAGD,KAAK,IAAI;AACrB,CAAC;AAED,MAAME,mBAAmB,GAAG,MAAOC,KAAmC,IAAK;EACzE,MAAMC,IAAI,GAAG,CAACD,KAAK,CAACE,QAAQ,IAAI,EAAE,EAAEC,WAAW,CAAC,CAAC;EACjD,MAAMC,aAAa,GACjBH,IAAI,CAACI,QAAQ,CAAC,MAAM,CAAC,IACrBJ,IAAI,CAACI,QAAQ,CAAC,MAAM,CAAC,IACrBL,KAAK,CAACM,GAAG,CAACH,WAAW,CAAC,CAAC,CAACI,QAAQ,CAAC,OAAO,CAAC,IACzCP,KAAK,CAACM,GAAG,CAACH,WAAW,CAAC,CAAC,CAACI,QAAQ,CAAC,OAAO,CAAC;EAC3C,IAAI,CAACH,aAAa,EAAE;IAClB,OAAO;MACLE,GAAG,EAAEN,KAAK,CAACM,GAAG;MACdL,IAAI,EAAED,KAAK,CAACE,QAAQ,IAAI,YAAY;MACpCM,IAAI,EAAER,KAAK,CAACS,QAAQ,IAAIT,KAAK,CAACM,GAAG,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,IAAI,SAASC,IAAI,CAACC,GAAG,CAAC,CAAC;IAC3E,CAAC;EACH;EACA,MAAMC,MAAM,GAAG,MAAM9C,gBAAgB,CAAC+C,eAAe,CAACf,KAAK,CAACM,GAAG,EAAE,EAAE,EAAE;IACnEU,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEjD,gBAAgB,CAACkD,UAAU,CAACC;EACtC,CAAC,CAAC;EACF,MAAMC,QAAQ,GAAG,CAACpB,KAAK,CAACS,QAAQ,IAAIT,KAAK,CAACM,GAAG,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,IAAI,SAASC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,EACpFQ,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;EACrC,OAAO;IAAEf,GAAG,EAAEQ,MAAM,CAACR,GAAG;IAAEL,IAAI,EAAE,YAAY;IAAEO,IAAI,EAAEY;EAAS,CAAC;AAChE,CAAC;AAuBD,MAAME,SAAmC,GAAGA,CAAC;EAC3CC,WAAW;EACXC,SAAS;EACTC,MAAM;EACNC,aAAa;EACbC,OAAO;EACPC,MAAM;EACNC,WAAW;EACXC,SAAS;EACTC;AACF,CAAC,KAAK;EACJ,MAAMvD,CAAC,GAAG,IAAAwD,UAAI,EAAC,CAAC;EAChB,MAAMC,KAAK,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACxB,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,EAAE,CAAC;EAC1C,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EACrD;EACA;EACA,MAAM,CAACG,iBAAiB,EAAEC,oBAAoB,CAAC,GAAG,IAAAJ,eAAQ,EAAC,CAAC,CAAC;EAC7D,MAAM,CAACK,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAN,eAAQ,EAAC,KAAK,CAAC;EACjD,MAAM,CAACO,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAR,eAAQ,EAAc,EAAE,CAAC;EACjE,MAAM,CAACS,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAV,eAAQ,EAAC,KAAK,CAAC;;EAEzD;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMW,aAAa,GAAG,IAAAC,2BAAgB,EAACzD,YAAY,CAAC;EACpD;EACA;EACA;EACA,MAAM0D,cAAc,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EACpC,MAAMC,iBAAiB,GAAG,IAAAD,aAAM,EAAwC,IAAI,CAAC;EAC7E;EACA,MAAME,kBAAkB,GAAG,IAAAF,aAAM,EAAW,EAAE,CAAC;EAC/C,MAAMG,qBAAqB,GAAG,IAAAH,aAAM,EAAC,CAAC,CAAC;;EAEvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMI,UAAU,GAAG,IAAAJ,aAAM,EAAChB,OAAO,CAAC;EAClC,MAAMqB,eAAe,GAAG,IAAAL,aAAM,EAAcP,YAAY,CAAC;EACzD;EACA;EACA,MAAMa,UAAU,GAAG,IAAAN,aAAM,EAAC,KAAK,CAAC;;EAEhC;EACA;EACA;EACA;EACA;EACA,MAAMO,aAAa,GAAG,IAAAP,aAAM,EAAC,KAAK,CAAC;;EAEnC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMQ,gBAAgB,GAAIC,QAAqB,IAAK;IAClD,IAAIA,QAAQ,CAACC,MAAM,KAAK,CAAC,EAAE;MAAC;IAAO;IACnC,MAAMC,KAAK,GAAG,IAAAC,2BAAc,EAACtC,MAAM,EAAEC,aAAa,CAAC;IACnD,MAAMsC,OAAO,GAAGJ,QAAQ,CAACK,MAAM,CAAEC,IAAI,IAAK;MACxC,IAAI,OAAOA,IAAI,CAACC,IAAI,KAAK,QAAQ,IAAID,IAAI,CAACC,IAAI,GAAGL,KAAK,EAAE;QACtDM,kBAAK,CAACC,KAAK,CACT7F,CAAC,CAAC,qBAAqB,EAAE;UACvBgC,IAAI,EAAE0D,IAAI,CAAC1D,IAAI;UACf8D,GAAG,EAAE1E,WAAW,CAACkE,KAAK;QACxB,CAAC,CACH,CAAC;QACD,OAAO,KAAK;MACd;MACA,OAAO,IAAI;IACb,CAAC,CAAC;IACF,MAAMS,GAAG,GAAG,IAAAC,yBAAY,EAAC/C,MAAM,CAAC;IAChC,MAAMgD,IAAI,GAAGF,GAAG,GAAGf,eAAe,CAACkB,OAAO,CAACb,MAAM;IACjD,IAAIG,OAAO,CAACH,MAAM,KAAK,CAAC,EAAE;MAAC;IAAO;IAClC,IAAIY,IAAI,IAAI,CAAC,IAAIT,OAAO,CAACH,MAAM,GAAGY,IAAI,EAAE;MACtCL,kBAAK,CAACC,KAAK,CAAC7F,CAAC,CAAC,kBAAkB,EAAE;QAAEmG,KAAK,EAAEJ;MAAI,CAAC,CAAC,CAAC;IACpD;IACA,MAAMK,QAAQ,GAAGZ,OAAO,CAACa,KAAK,CAAC,CAAC,EAAEC,IAAI,CAACR,GAAG,CAAC,CAAC,EAAEG,IAAI,CAAC,CAAC;IACpD,IAAIG,QAAQ,CAACf,MAAM,KAAK,CAAC,EAAE;MAAC;IAAO;IACnC,MAAMkB,IAAI,GAAG,CAAC,GAAGvB,eAAe,CAACkB,OAAO,EAAE,GAAGE,QAAQ,CAAC;IACtDpB,eAAe,CAACkB,OAAO,GAAGK,IAAI;IAC9BlC,eAAe,CAACkC,IAAI,CAAC;EACvB,CAAC;;EAED;EACA,MAAMC,WAAW,GAAG,MAAAA,CAClBhF,KAAmC,EACnCiF,cAAsB,KACC;IACvB,IAAIjF,KAAK,CAACkF,IAAI,KAAK,OAAO,EAAE;MAC1B,OAAO;QACL5E,GAAG,EAAEN,KAAK,CAACM,GAAG;QACd4E,IAAI,EAAElF,KAAK,CAACE,QAAQ,IAAI,WAAW;QACnCM,IAAI,EAAER,KAAK,CAACS,QAAQ,IAAIT,KAAK,CAACM,GAAG,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,IAAI,GAAGsE,cAAc,IAAIrE,IAAI,CAACC,GAAG,CAAC,CAAC,MAAM;QAC3FsD,IAAI,EAAGnE,KAAK,CAASmF;MACvB,CAAC;IACH;IACA;IACA;IACA,MAAMC,UAAU,GAAG,MAAMrF,mBAAmB,CAACC,KAAK,CAAC;IACnD,OAAO;MACLM,GAAG,EAAE8E,UAAU,CAAC9E,GAAG;MACnB4E,IAAI,EAAEE,UAAU,CAACnF,IAAI;MACrBO,IAAI,EAAE4E,UAAU,CAAC5E,IAAI;MACrB2D,IAAI,EAAGnE,KAAK,CAASmF;IACvB,CAAC;EACH,CAAC;;EAED;EACA;EACA;EACA;;EAEA,MAAME,kBAAkB,GAAIlD,OAAe,IAAK;IAC9CiC,kBAAK,CAACC,KAAK,CAAC7F,CAAC,CAAC,0BAA0B,CAAC,EAAE2D,OAAO,EAAE,CAClD;MAAEmD,IAAI,EAAE9G,CAAC,CAAC,eAAe,CAAC;MAAE+G,KAAK,EAAE;IAAS,CAAC,EAC7C;MAAED,IAAI,EAAE9G,CAAC,CAAC,qBAAqB,CAAC;MAAEgH,OAAO,EAAEA,CAAA,KAAMC,oBAAO,CAACC,YAAY,CAAC;IAAE,CAAC,CAC1E,CAAC;EACJ,CAAC;EAED,MAAMC,qBAAqB,GAAG,MAAAA,CAAA,KAAY;IACxC,MAAMC,IAAI,GAAG,MAAM9H,WAAW,CAAC+H,6BAA6B,CAAC,CAAC;IAC9D,IAAI,CAACD,IAAI,CAACE,OAAO,EAAE;MACjBT,kBAAkB,CAAC7G,CAAC,CAAC,mBAAmB,CAAC,CAAC;MAC1C;IACF;IAEA,IAAI;MACF;MACA,MAAMsC,MAAM,GAAG,MAAMhD,WAAW,CAACiI,iBAAiB,CAAC;QACjDC,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAChCC,OAAO,EAAE,GAAG;QACZC,YAAY,EAAEpI,WAAW,CAACqI,kCAAkC,CAACC;MAC/D,CAAC,CAAC;MACF,IAAItF,MAAM,CAACuF,QAAQ,IAAI,CAACvF,MAAM,CAACwF,MAAM,GAAG,CAAC,CAAC,EAAE;QAAC;MAAO;MACpD3C,gBAAgB,CAAC,CAAC,MAAMqB,WAAW,CAAClE,MAAM,CAACwF,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,eAAe,EAAEA,KAAK,CAAC;IACvC;EACF,CAAC;EAED,MAAME,sBAAsB,GAAG,MAAAA,CAAA,KAAY;IACzC,MAAMb,IAAI,GAAG,MAAM9H,WAAW,CAAC4I,mCAAmC,CAAC,CAAC;IACpE,IAAI,CAACd,IAAI,CAACE,OAAO,EAAE;MACjBT,kBAAkB,CAAC7G,CAAC,CAAC,oBAAoB,CAAC,CAAC;MAC3C;IACF;;IAEA;IACA,MAAMmI,SAAS,GAAG,IAAAnC,yBAAY,EAAC/C,MAAM,CAAC,GAAG+B,eAAe,CAACkB,OAAO,CAACb,MAAM;IACvE,IAAI8C,SAAS,IAAI,CAAC,EAAE;MAClBvC,kBAAK,CAACC,KAAK,CAAC7F,CAAC,CAAC,kBAAkB,EAAE;QAAEmG,KAAK,EAAE,IAAAH,yBAAY,EAAC/C,MAAM;MAAE,CAAC,CAAC,CAAC;MACnE;IACF;IAEA,IAAI;MACF,MAAMX,MAAM,GAAG,MAAMhD,WAAW,CAAC8I,uBAAuB,CAAC;QACvDZ,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAChCa,aAAa,EAAE,KAAK;QACpBZ,OAAO,EAAE,GAAG;QACZa,uBAAuB,EAAE,IAAI;QAC7BC,cAAc,EAAEJ,SAAS;QACzBK,gCAAgC,EAC9BlJ,WAAW,CAACmJ,6CAA6C,CAACC;MAC9D,CAAC,CAAC;MACF,IAAIpG,MAAM,CAACuF,QAAQ,IAAI,CAACvF,MAAM,CAACwF,MAAM,EAAEzC,MAAM,EAAE;QAAC;MAAO;MACvD,MAAMsD,MAAmB,GAAG,EAAE;MAC9B,KAAK,MAAMnH,KAAK,IAAIc,MAAM,CAACwF,MAAM,EAAE;QACjCa,MAAM,CAACC,IAAI,CAAC,MAAMpC,WAAW,CAAChF,KAAK,EAAE,SAAS,CAAC,CAAC;MAClD;MACA2D,gBAAgB,CAACwD,MAAM,CAAC;IAC1B,CAAC,CAAC,OAAOZ,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,gBAAgB,EAAEA,KAAK,CAAC;IACxC;EACF,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA,MAAMc,0BAA0B,GAAG,MAAOC,KAAkB,IAAK;IAC/D,IAAI;MACF,IAAInD,IAAwB;MAC5B,IAAI;QACF,MAAMoD,IAAI,GAAG,MAAMtJ,UAAU,CAACuJ,YAAY,CAACF,KAAK,CAAChH,GAAG,CAAC;QACrD,IAAIiH,IAAI,CAACE,MAAM,IAAI,OAAQF,IAAI,CAASpD,IAAI,KAAK,QAAQ,EAAE;UACzDA,IAAI,GAAIoD,IAAI,CAASpD,IAAI;QAC3B;MACF,CAAC,CAAC,MAAM;QACN;MAAA;MAGF,IAAImD,KAAK,CAACI,OAAO,EAAE;QACjB/D,gBAAgB,CAAC,CACf;UACErD,GAAG,EAAEgH,KAAK,CAAChH,GAAG;UACd4E,IAAI,EAAEoC,KAAK,CAACpH,QAAQ,IAAI,WAAW;UACnCM,IAAI,EAAE8G,KAAK,CAAC9G,IAAI;UAChB2D;QACF,CAAC,CACF,CAAC;QACF;MACF;MAEA,MAAMiB,UAAU,GAAG,MAAMrF,mBAAmB,CAAC;QAC3CO,GAAG,EAAEgH,KAAK,CAAChH,GAAG;QACdJ,QAAQ,EAAEoH,KAAK,CAACpH,QAAQ;QACxBO,QAAQ,EAAE6G,KAAK,CAAC9G;MAClB,CAAiC,CAAC;MAClCmD,gBAAgB,CAAC,CACf;QACErD,GAAG,EAAE8E,UAAU,CAAC9E,GAAG;QACnB4E,IAAI,EAAEE,UAAU,CAACnF,IAAI;QACrBO,IAAI,EAAE4E,UAAU,CAAC5E,IAAI;QACrB2D;MACF,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,OAAOoC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,qBAAqB,EAAEA,KAAK,CAAC;IAC7C;EACF,CAAC;EAED,MAAMoB,mBAAmB,GAAG,MAAAA,CAAA,KAAY;IACtC;IACA;IACA,IAAIjE,aAAa,CAACgB,OAAO,EAAE;MAAC;IAAO;IACnChB,aAAa,CAACgB,OAAO,GAAG,IAAI;IAC5B,IAAI;MACF,MAAM5D,MAAM,GAAG,MAAM/C,cAAc,CAAC6J,gBAAgB,CAAC;QACnD1C,IAAI,EAAE,KAAK;QACX2C,QAAQ,EAAE,IAAI;QACdC,oBAAoB,EAAE;MACxB,CAAC,CAAC;MACF,IAAIhH,MAAM,CAACuF,QAAQ,IAAI,CAACvF,MAAM,CAACwF,MAAM,EAAEzC,MAAM,EAAE;QAAC;MAAO;MACvDF,gBAAgB,CACd7C,MAAM,CAACwF,MAAM,CAACyB,GAAG,CAAE/H,KAAK,KAAM;QAC5BM,GAAG,EAAEN,KAAK,CAACM,GAAG;QACd4E,IAAI,EAAElF,KAAK,CAACE,QAAQ,IAAI,0BAA0B;QAClDM,IAAI,EAAER,KAAK,CAACQ,IAAI,IAAI,QAAQI,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE;QACxCsD,IAAI,EAAEnE,KAAK,CAACmE,IAAI,IAAI6D;MACtB,CAAC,CAAC,CACJ,CAAC;IACH,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZzB,OAAO,CAACD,KAAK,CAAC,uBAAuB,EAAE0B,GAAG,CAAC;IAC7C,CAAC,SAAS;MACRvE,aAAa,CAACgB,OAAO,GAAG,KAAK;IAC/B;EACF,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMwD,uBAAuB,GAAG,MAAAA,CAAA,KAAY;IAC1C,MAAMC,YAAY,GAAG,IAAAC,oCAAe,EAAC,CAAC;IACtC,IAAI,CAACD,YAAY,EAAEE,mBAAmB,EAAE;MAAC;IAAO;IAChD,IAAI;MACF,MAAMzC,IAAI,GAAG,MAAMuC,YAAY,CAACE,mBAAmB,CAAC,CAAC;MACrD,IAAIzC,IAAI,EAAEE,OAAO,IAAIF,IAAI,EAAE0C,WAAW,KAAK,KAAK,EAAE;QAAC;MAAO;MAC1D,MAAMH,YAAY,CAACI,uBAAuB,CAAC,CAAC;IAC9C,CAAC,CAAC,OAAON,GAAG,EAAE;MACZ;MACA;MACAzB,OAAO,CAACgC,IAAI,CAAC,wCAAwC,EAAEP,GAAG,CAAC;IAC7D;EACF,CAAC;;EAED;EACA;EACA,MAAMQ,2BAA2B,GAAG,IAAAtF,aAAM,EAAC,KAAK,CAAC;EAEjD,MAAMuF,iBAAiB,GAAGA,CAAA,KAAM;IAC9B,MAAMnE,GAAG,GAAG,IAAAC,yBAAY,EAAC/C,MAAM,CAAC;IAChC,IAAI+B,eAAe,CAACkB,OAAO,CAACb,MAAM,IAAIU,GAAG,EAAE;MACzCH,kBAAK,CAACC,KAAK,CAAC7F,CAAC,CAAC,kBAAkB,EAAE;QAAEmG,KAAK,EAAEJ;MAAI,CAAC,CAAC,CAAC;MAClD;IACF;IACA,IAAIkE,2BAA2B,CAAC/D,OAAO,EAAE;MACvC3B,gBAAgB,CAAC,IAAI,CAAC;MACtB;IACF;IACA0F,2BAA2B,CAAC/D,OAAO,GAAG,IAAI;IAC1CwD,uBAAuB,CAAC,CAAC,CAACS,OAAO,CAAC,MAAM5F,gBAAgB,CAAC,IAAI,CAAC,CAAC;EACjE,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA,MAAM6F,kBAAkB,GAAGA,CAAA,KAAM;IAC/B,IAAIxF,iBAAiB,CAACsB,OAAO,EAAE;MAC7BmE,aAAa,CAACzF,iBAAiB,CAACsB,OAAO,CAAC;MACxCtB,iBAAiB,CAACsB,OAAO,GAAG,IAAI;IAClC;EACF,CAAC;;EAED;EACA;EACA,MAAMoE,gBAAgB,GAAG,MAAAA,CAAA,KAAY;IACnC,IAAI;MACF,MAAM,IAAAC,4BAAiB,EAAC;QACtBC,eAAe,EAAE,KAAK;QACtBC,iBAAiB,EAAE;MACrB,CAAC,CAAC;IACJ,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC;EAED,MAAMC,oBAAoB,GAAG,MAAAA,CAAA,KAAY;IACvC,IAAI5G,WAAW,IAAIY,cAAc,CAACwB,OAAO,EAAE;MAAC;IAAO;IACnD,IAAI;MACF,MAAMkB,IAAI,GAAG,MAAM,IAAAuD,2CAAgC,EAAC,CAAC;MACrD,IAAI,CAACvD,IAAI,CAACE,OAAO,EAAE;QACjBT,kBAAkB,CAAC7G,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAC9C;MACF;MACA;MACA;MACA;MACA;MACA,MAAM,IAAAuK,4BAAiB,EAAC;QACtBC,eAAe,EAAE,IAAI;QACrBC,iBAAiB,EAAE;MACrB,CAAC,CAAC;MACF;MACA;MACA;MACA;MACA,MAAMjG,aAAa,CAACoG,oBAAoB,CAAC5J,YAAY,CAAC;MACtDwD,aAAa,CAACqG,MAAM,CAAC,CAAC;MACtBnG,cAAc,CAACwB,OAAO,GAAG,IAAI;MAC7BnC,cAAc,CAAC,IAAI,CAAC;MACpBE,oBAAoB,CAAC,CAAC,CAAC;MACvB,MAAM6G,SAAS,GAAG1I,IAAI,CAACC,GAAG,CAAC,CAAC;MAC5ByC,qBAAqB,CAACoB,OAAO,GAAG4E,SAAS;MACzCjG,kBAAkB,CAACqB,OAAO,GAAG,EAAE;MAC/B;MACA;MACAtB,iBAAiB,CAACsB,OAAO,GAAG6E,WAAW,CAAC,MAAM;QAC5C,IAAI;UACFlG,kBAAkB,CAACqB,OAAO,CAAC0C,IAAI,CAC7B,IAAAoC,8BAAe,EAACxG,aAAa,CAACyG,SAAS,CAAC,CAAC,CAACC,QAAQ,CACpD,CAAC;QACH,CAAC,CAAC,MAAM;UACN;QAAA;QAEFjH,oBAAoB,CAACqC,IAAI,CAAC6E,KAAK,CAAC,CAAC/I,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGyI,SAAS,IAAI,IAAI,CAAC,CAAC;MACnE,CAAC,EAAE,GAAG,CAAC;IACT,CAAC,CAAC,OAAOrB,GAAG,EAAE;MACZzB,OAAO,CAACgC,IAAI,CAAC,uBAAuB,EAAEP,GAAG,CAAC;MAC1C/E,cAAc,CAACwB,OAAO,GAAG,KAAK;MAC9BnC,cAAc,CAAC,KAAK,CAAC;MACrBE,oBAAoB,CAAC,CAAC,CAAC;MACvB,MAAMqG,gBAAgB,CAAC,CAAC;IAC1B;EACF,CAAC;EAED,MAAMc,qBAAqB,GAAG,MAAAA,CAAA,KAAY;IACxChB,kBAAkB,CAAC,CAAC;IACpB,MAAMiB,YAAY,GAAG3G,cAAc,CAACwB,OAAO;IAC3CxB,cAAc,CAACwB,OAAO,GAAG,KAAK;IAC9BnC,cAAc,CAAC,KAAK,CAAC;IACrBE,oBAAoB,CAAC,CAAC,CAAC;IACvB,IAAIoH,YAAY,EAAE;MAChB,IAAI;QACF,MAAM7G,aAAa,CAAC8G,IAAI,CAAC,CAAC;MAC5B,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;IACA,MAAMhB,gBAAgB,CAAC,CAAC;EAC1B,CAAC;EAED,MAAMiB,0BAA0B,GAAG,MAAAA,CAAA,KAAY;IAC7CnB,kBAAkB,CAAC,CAAC;IACpB,MAAMiB,YAAY,GAAG3G,cAAc,CAACwB,OAAO;IAC3CxB,cAAc,CAACwB,OAAO,GAAG,KAAK;IAC9BnC,cAAc,CAAC,KAAK,CAAC;IACrB,MAAMyH,OAAO,GAAGxH,iBAAiB;IACjCC,oBAAoB,CAAC,CAAC,CAAC;IACvB,IAAI,CAACoH,YAAY,EAAE;MACjB,MAAMf,gBAAgB,CAAC,CAAC;MACxB;IACF;IACA;IACA;IACA,IAAIkB,OAAO,GAAG,CAAC,EAAE;MACf,IAAI;QACF,MAAMhH,aAAa,CAAC8G,IAAI,CAAC,CAAC;MAC5B,CAAC,CAAC,MAAM,CAAC;MACT,MAAMhB,gBAAgB,CAAC,CAAC;MACxB;IACF;IACA,IAAI;MACF,MAAM9F,aAAa,CAAC8G,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,OAAO7B,GAAG,EAAE;MACZzB,OAAO,CAACgC,IAAI,CAAC,sBAAsB,EAAEP,GAAG,CAAC;IAC3C;IACA;IACA;IACA,MAAM3H,GAAG,GAAG0C,aAAa,CAAC1C,GAAG;IAC7B,MAAMwI,gBAAgB,CAAC,CAAC;IACxB,IAAI,CAACxI,GAAG,EAAE;MAAC;IAAO;IAClB;IACA;IACA;IACA;IACA,MAAM2J,EAAE,GAAGrJ,IAAI,CAACC,GAAG,CAAC,CAAC;IACrB,MAAMqJ,MAAM,GAAG7G,kBAAkB,CAACqB,OAAO;IACzCrB,kBAAkB,CAACqB,OAAO,GAAG,EAAE;IAC/B,MAAMR,IAAe,GAAG;MACtB5D,GAAG;MACH4E,IAAI,EAAE,WAAW;MACjB1E,IAAI,EAAE,SAASyJ,EAAE,MAAM;MACvBE,QAAQ,EAAErF,IAAI,CAACR,GAAG,CAChB,CAAC,EACDQ,IAAI,CAACsF,KAAK,CAAC,CAACH,EAAE,GAAG3G,qBAAqB,CAACoB,OAAO,IAAI,IAAI,CACxD,CAAC;MACD;MACA;MACA2F,QAAQ,EAAEH,MAAM,CAACI,IAAI,CAAEC,KAAK,IAAKA,KAAK,GAAG,CAAC,CAAC,GACvC,IAAAC,6BAAc,EACZ,IAAAC,0BAAW,EAAC,IAAAC,4BAAa,EAACR,MAAM,EAAES,kCAAmB,CAAC,CACxD,CAAC,GACD3C;IACN,CAAC;IACD,IAAI;MACF,MAAMxG,SAAS,CAAC0C,IAAI,EAAEA,IAAI,CAACgB,IAAI,CAAC;IAClC,CAAC,CAAC,OAAO+C,GAAG,EAAE;MACZzB,OAAO,CAACD,KAAK,CAAC,wBAAwB,EAAE0B,GAAG,CAAC;IAC9C;EACF,CAAC;;EAED;EACA;EACA,IAAA2C,gBAAS,EAAC,MAAM;IACd,OAAO,MAAM;MACXhC,kBAAkB,CAAC,CAAC;MACpB,IAAI1F,cAAc,CAACwB,OAAO,EAAE;QAC1BxB,cAAc,CAACwB,OAAO,GAAG,KAAK;QAC9B1B,aAAa,CAAC8G,IAAI,CAAC,CAAC,CAACe,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MACtC;MACA/B,gBAAgB,CAAC,CAAC;IACpB,CAAC;IACD;IACA;IACA;EACF,CAAC,EAAE,CAAC9F,aAAa,CAAC,CAAC;EAEnB,MAAM8H,iBAAiB,GAAIC,KAAa,IAAK;IAC3C,MAAMhG,IAAI,GAAGvB,eAAe,CAACkB,OAAO,CAACT,MAAM,CAAC,CAAC+G,CAAC,EAAEnM,CAAC,KAAKA,CAAC,KAAKkM,KAAK,CAAC;IAClEvH,eAAe,CAACkB,OAAO,GAAGK,IAAI;IAC9BlC,eAAe,CAACkC,IAAI,CAAC;EACvB,CAAC;EAED,MAAMkG,eAAe,GAAG,IAAAC,kBAAW,EAAC,YAAY;IAC9C;IACA;IACA;IACA,MAAMC,aAAa,GAAG5H,UAAU,CAACmB,OAAO;IACxC,MAAM0G,WAAW,GAAG5H,eAAe,CAACkB,OAAO;;IAE3C;IACA;IACA;IACA,IAAI,CAACyG,aAAa,IAAIC,WAAW,CAACvH,MAAM,KAAK,CAAC,EAAE;MAAC;IAAO;;IAExD;IACA;IACA;IACA,IAAIJ,UAAU,CAACiB,OAAO,EAAE;MAAC;IAAO;IAChCjB,UAAU,CAACiB,OAAO,GAAG,IAAI;;IAEzB;IACA;IACA;IACAnB,UAAU,CAACmB,OAAO,GAAG,EAAE;IACvBlB,eAAe,CAACkB,OAAO,GAAG,EAAE;IAC5BtC,UAAU,CAAC,EAAE,CAAC;IACdS,eAAe,CAAC,EAAE,CAAC;IAEnB,IAAI;MACF,IAAIuI,WAAW,CAACvH,MAAM,GAAG,CAAC,EAAE;QAC1B;QACA;QACA,MAAMrC,SAAS,CACb4J,WAAW,EACXA,WAAW,CAAC,CAAC,CAAC,CAAElG,IAAI,EACpBiG,aAAa,GAAG;UAAE7F,IAAI,EAAE6F;QAAc,CAAC,GAAGnD,SAC5C,CAAC;MACH,CAAC,MAAM,IAAImD,aAAa,EAAE;QACxB5J,WAAW,CAAC4J,aAAa,CAAC;MAC5B;IACF,CAAC,CAAC,OAAOlD,GAAG,EAAE;MACZzB,OAAO,CAACD,KAAK,CAAC0B,GAAG,CAAC;IACpB,CAAC,SAAS;MACRxE,UAAU,CAACiB,OAAO,GAAG,KAAK;IAC5B;IACA;IACA;IACA;IACA;EACF,CAAC,EAAE,CAACnD,WAAW,EAAEC,SAAS,CAAC,CAAC;EAE5B,IAAAoJ,gBAAS,EAAC,MAAM;IACd,MAAM7F,IAAI,GAAGlD,WAAW,IAAI,EAAE;IAC9B0B,UAAU,CAACmB,OAAO,GAAGK,IAAI;IACzB3C,UAAU,CAAC2C,IAAI,CAAC;EAClB,CAAC,EAAE,CAAClD,WAAW,CAAC,CAAC;;EAEjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMwJ,aAAa,GACjB5J,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEC,QAAQ,IACnC/J,MAAM,EAAE6J,UAAU,EAAEG,QAAQ,EAAEC,SAAS,EAAEF,QAAQ,IACjD,EAAE;EACJ,MAAMG,cAAc,GAAGlK,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEK,SAAS,IAAI,EAAE;EACjE,MAAMC,mBAAmB,GAAGR,aAAa,GAAG,GAAG;EAC/C,MAAMS,oBAAoB,GAAGhH,IAAI,CAACR,GAAG,CACnC,CAAC,EACD,CAACqH,cAAc,GAAGE,mBAAmB,IAAI,CAC3C,CAAC;EAED,oBACE,IAAAzN,WAAA,CAAA2N,IAAA,EAAC9O,sBAAA,CAAA+O,cAAc;IAACC,MAAM,EAAE,CAAC,CAAC9J,OAAQ;IAAA+J,QAAA,GAC7BtJ,YAAY,CAACiB,MAAM,GAAG,CAAC,iBACtB,IAAAzF,WAAA,CAAA+N,GAAA,EAAC5O,iBAAA,CAAA6O,gBAAgB;MACfxJ,YAAY,EAAEA,YAAa;MAC3BkI,iBAAiB,EAAEA;IAAkB,CACtC,CACF,eACD,IAAA1M,WAAA,CAAA2N,IAAA,EAAC9O,sBAAA,CAAAoP,qBAAqB;MAAAH,QAAA,GACnB,CAAC5J,WAAW,iBACX,IAAAlE,WAAA,CAAA2N,IAAA,EAAA3N,WAAA,CAAAkO,QAAA;QAAAJ,QAAA,GAEG,CAACzK,MAAM,EAAE8K,YAAY,iBACpB,IAAAnO,WAAA,CAAA+N,GAAA,EAAC9O,YAAA,CAAAmP,gBAAgB;UACfhH,OAAO,EAAEkD,iBAAkB;UAC3BnD,KAAK,EAAE;YACLkH,KAAK,EAAE,EAAE;YACTC,MAAM,EAAE,EAAE;YACVC,cAAc,EAAE,QAAQ;YACxBC,UAAU,EAAE,QAAQ;YACpBC,eAAe,EAAE;UACnB,CAAE;UACFC,aAAa,EAAE,GAAI;UAAAZ,QAAA,eAEnB,IAAA9N,WAAA,CAAA+N,GAAA,EAAC/O,MAAA,CAAA2P,UAAU;YAACC,KAAK,EAAE,IAAAC,0BAAY,EAACxL,MAAM;UAAE,CAAE;QAAC,CAC3B,CACnB,eACD,IAAArD,WAAA,CAAA+N,GAAA,EAAClP,sBAAA,CAAAiQ,YAAY;UACXC,MAAM,EAAC,oBAAoB;UAC3BC,kBAAkB,EAAC,oBAAoB;UACvC1K,SAAS,EAAEA,SAAU;UACrBsK,KAAK,EAAEvL,MAAM,EAAE4L,MAAM,EAAEC,OAAQ;UAC/B9B,QAAQ,EAAE/J,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEC,QAAS;UAC9C+B,UAAU,EAAE9L,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEgC,UAAkB;UACzDC,WAAW,EAAEhP,CAAC,CAAC,mBAAmB,CAAE;UACpCiP,oBAAoB,EAAExL,KAAK,CAACyL,SAAU;UACtCC,kBAAkB,EAAE1L,KAAK,CAAC2L,IAAI,GAAG,MAAM,GAAG,OAAQ;UAClDC,KAAK,EAAE1L,OAAQ;UACf2L,YAAY,EAAGxI,IAAI,IAAK;YACtB/B,UAAU,CAACmB,OAAO,GAAGY,IAAI;YACzBlD,UAAU,CAACkD,IAAI,CAAC;UAClB,CAAE;UACF3D,OAAO,EAAEA,CAAA,KAAM;YACbA,OAAO,GAAG,CAAC;YACXgB,YAAY,CAAC,IAAI,CAAC;UACpB,CAAE;UACFf,MAAM,EAAEA,CAAA,KAAM;YACZA,MAAM,GAAG,CAAC;YACVe,YAAY,CAAC,KAAK,CAAC;UACrB,CAAE;UACFoL,QAAQ,EAAE,CAACjM,SAAS,IAAI,CAACC,mBAAoB;UAC7CiM,SAAS,EAAE;UACX;UACA;UACA;UACA;UACA;UACA;UACA;UAAA;UACAzI,KAAK,EAAE,CACL;YACEqG,SAAS,EAAED,cAAc;YACzBsC,SAAS,EAAExM,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAE0C,SAAS,IAAI,GAAG;YACtDC,UAAU,EAAEpC,oBAAoB;YAChCqC,aAAa,EAAErC,oBAAoB;YACnCsC,IAAI,EAAE;UACR,CAAC,EACD,IAAAC,8BAAc,EAAC5M,MAAM,EAAE,WAAW,CAAC;QACnC,CACH,CAAC;MAAA,CACF,CACH,EACAa,WAAW,iBACV,IAAAlE,WAAA,CAAA2N,IAAA,EAAA3N,WAAA,CAAAkO,QAAA;QAAAJ,QAAA,gBACE,IAAA9N,WAAA,CAAA+N,GAAA,EAAC9O,YAAA,CAAAmP,gBAAgB;UACfW,MAAM,EAAC,oBAAoB;UAC3BC,kBAAkB,EAAC,oBAAoB;UACvC5H,OAAO,EAAEoE,qBAAsB;UAC/BrE,KAAK,EAAE;YACLkH,KAAK,EAAE,EAAE;YACTC,MAAM,EAAE,EAAE;YACV4B,YAAY,EAAE,EAAE;YAChB1B,UAAU,EAAE,QAAQ;YACpBD,cAAc,EAAE,QAAQ;YACxB;YACA;YACAE,eAAe,EAAE5K,KAAK,CAAC2L,IAAI,GAAG3L,KAAK,CAACsM,gBAAgB,GAAG;UACzD,CAAE;UACFzB,aAAa,EAAE,GAAI;UAAAZ,QAAA,eAEnB,IAAA9N,WAAA,CAAA+N,GAAA,EAAC9O,YAAA,CAAAmR,IAAI;YACHjJ,KAAK,EAAE;cACLyH,KAAK,EAAE/K,KAAK,CAAC2L,IAAI,GAAG3L,KAAK,CAACwM,MAAM,GAAG,SAAS;cAC5ClB,UAAU,EAAE,KAAK;cACjB/B,QAAQ,EAAE;YACZ,CAAE;YAAAU,QAAA,EACH;UAED,CAAM;QAAC,CACS,CAAC,eAGnB,IAAA9N,WAAA,CAAA2N,IAAA,EAAC1O,YAAA,CAAAqR,IAAI;UACHnJ,KAAK,EAAE;YACL6I,IAAI,EAAE,CAAC;YACPO,aAAa,EAAE,KAAK;YACpB/B,UAAU,EAAE,QAAQ;YACpBgC,GAAG,EAAE,CAAC;YACNC,iBAAiB,EAAE,CAAC;YACpBjD,SAAS,EAAE;UACb,CAAE;UAAAM,QAAA,gBAEF,IAAA9N,WAAA,CAAA+N,GAAA,EAAC9O,YAAA,CAAAqR,IAAI;YACHnJ,KAAK,EAAE;cACLkH,KAAK,EAAE,EAAE;cACTC,MAAM,EAAE,EAAE;cACV4B,YAAY,EAAE,CAAC;cACfzB,eAAe,EAAE5K,KAAK,CAAC2L,IAAI,GAAG3L,KAAK,CAACwM,MAAM,GAAG;YAC/C;UAAE,CACH,CAAC,eACF,IAAArQ,WAAA,CAAA2N,IAAA,EAAC1O,YAAA,CAAAmR,IAAI;YAACjJ,KAAK,EAAE;cAAEiG,QAAQ,EAAE,EAAE;cAAEwB,KAAK,EAAE/K,KAAK,CAACqD,IAAI;cAAEiI,UAAU,EAAE;YAAM,CAAE;YAAArB,QAAA,GACjEpH,IAAI,CAAC6E,KAAK,CAACnH,iBAAiB,GAAG,EAAE,CAAC,EAAC,GACpC,EAAC,CAACA,iBAAiB,GAAG,EAAE,EAAEsM,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;UAAA,CACjD,CAAC,eACP,IAAA3Q,WAAA,CAAA+N,GAAA,EAAC9O,YAAA,CAAAmR,IAAI;YAACjJ,KAAK,EAAE;cAAEiG,QAAQ,EAAE,EAAE;cAAEwB,KAAK,EAAE/K,KAAK,CAAC+M;YAAc,CAAE;YAAA9C,QAAA,EAAC;UAAU,CAAM,CAAC;QAAA,CACxE,CAAC;MAAA,CACP,CACH,EAaA,CAAC,MAAM;QACN,MAAM+C,UAAU,GAAG,CAAC,CAAC9M,OAAO,IAAIS,YAAY,CAACiB,MAAM,GAAG,CAAC;QACvD,MAAMqL,OAAO,GAAG,CAAC5M,WAAW,IAAI,CAAC2M,UAAU,IAAI,CAAC,CAACxN,MAAM,EAAE0N,WAAW;QACpE,MAAM3J,OAAO,GAAGlD,WAAW,GACvByH,0BAA0B,GAC1BmF,OAAO,GACLhG,oBAAoB,GACpB+B,eAAe;QACrB,MAAMmE,QAAQ,GAAG,CAAC9M,WAAW,IAAI,CAAC4M,OAAO,IAAI,CAACD,UAAU;QACxD,MAAMI,MAAM,GAAG/M,WAAW,IAAI2M,UAAU,IAAIC,OAAO;QACnD,oBACE,IAAA9Q,WAAA,CAAA+N,GAAA,EAACjP,OAAA,CAAAqB,OAAM;UACL4O,MAAM,EAAE+B,OAAO,GAAG,oBAAoB,GAAG,kBAAmB;UAC5D9B,kBAAkB,EAAE8B,OAAO,GAAG,oBAAoB,GAAG,kBAAmB;UACxE1J,OAAO,EAAEA,OAAQ;UACjB4J,QAAQ,EAAEA,QAAS;UACnBE,OAAO,EACLJ,OAAO,gBACL,IAAA9Q,WAAA,CAAA+N,GAAA,EAAC/O,MAAA,CAAAmS,UAAU;YAACvC,KAAK,EAAE/K,KAAK,CAACuN;UAAc,CAAE,CAAC,gBAE1C,IAAApR,WAAA,CAAA+N,GAAA,EAAC/O,MAAA,CAAAqS,QAAQ;YACPzC,KAAK,EAAEqC,MAAM,GAAGpN,KAAK,CAACuN,aAAa,GAAGvN,KAAK,CAACyL;UAAU,CACvD,CAEJ;UACDnI,KAAK,EAAE;YACLkH,KAAK,EAAEhL,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEmE,cAAc,IAAI,EAAE;YACtDhD,MAAM,EAAEjL,MAAM,EAAE6J,UAAU,EAAEC,KAAK,EAAEmE,cAAc,IAAI,EAAE;YACvDpB,YAAY,EAAE,EAAE;YAChB1B,UAAU,EAAE,QAAQ;YACpBD,cAAc,EAAE,QAAQ;YACxBgD,UAAU,EAAE,CAAC;YACbC,WAAW,EAAE,CAAC;YACd/C,eAAe,EAAEwC,MAAM,GACnB,IAAApC,0BAAY,EAACxL,MAAM,CAAC,GACpB,aAAa;YACjBoO,OAAO,EAAER,MAAM,GAAG,CAAC,GAAG;UACxB;QAAE,CACH,CAAC;MAEN,CAAC,EAAE,CAAC;IAAA,CACiB,CAAC,eACxB,IAAAjR,WAAA,CAAA+N,GAAA,EAAC7O,YAAA,CAAAiB,OAAW;MACVuR,OAAO,EAAEhN,aAAc;MACvBiN,OAAO,EAAEA,CAAA,KAAMhN,gBAAgB,CAAC,KAAK,CAAE;MACvCiN,QAAQ,EAAErK,qBAAsB;MAChCsK,SAAS,EAAExJ,sBAAuB;MAClCyJ,UAAU,EAAEvI,mBAAoB;MAChCwI,WAAW,EAAE9I,0BAA2B;MACxC+I,YAAY,EAAE,IAAAnD,0BAAY,EAACxL,MAAM;IAAE,CACpC,CAAC;EAAA,CACY,CAAC;AAEvB,CAAC;AAAC,IAAA4O,QAAA,GAAAC,OAAA,CAAA/R,OAAA,GAEa+C,SAAS","ignoreList":[]}
@@ -37,11 +37,13 @@ const PlayBadge = () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
37
37
  const PosterVideo = ({
38
38
  previewURL,
39
39
  onOpen,
40
- onPosterError
40
+ onPosterError,
41
+ tile
41
42
  }) => {
42
- const [dims, setDims] = (0, _react.useState)((0, _mediaDimensions.defaultMediaDims)());
43
+ const [measured, setDims] = (0, _react.useState)((0, _mediaDimensions.defaultMediaDims)());
44
+ const dims = tile ?? measured;
43
45
  (0, _react.useEffect)(() => {
44
- if (!previewURL) {
46
+ if (!previewURL || tile) {
45
47
  return;
46
48
  }
47
49
  let active = true;
@@ -55,13 +57,13 @@ const PosterVideo = ({
55
57
  return () => {
56
58
  active = false;
57
59
  };
58
- }, [previewURL]);
60
+ }, [previewURL, tile]);
59
61
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
60
62
  onPress: onOpen,
61
63
  style: [styles.wrapper, {
62
64
  width: dims.width,
63
65
  height: dims.height
64
- }],
66
+ }, tile && styles.tileWrapper],
65
67
  accessibilityRole: "button",
66
68
  accessibilityLabel: "Play video",
67
69
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
@@ -97,15 +99,16 @@ const PosterVideo = ({
97
99
  * preview modal.
98
100
  */
99
101
  const PlaceholderVideo = ({
100
- onOpen
102
+ onOpen,
103
+ tile
101
104
  }) => {
102
- const dims = (0, _mediaDimensions.defaultMediaDims)();
105
+ const dims = tile ?? (0, _mediaDimensions.defaultMediaDims)();
103
106
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
104
107
  onPress: onOpen,
105
108
  style: [styles.wrapper, {
106
109
  width: dims.width,
107
110
  height: dims.height
108
- }],
111
+ }, tile && styles.tileWrapper],
109
112
  accessibilityRole: "button",
110
113
  accessibilityLabel: "Play video",
111
114
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PlayBadge, {})
@@ -116,11 +119,17 @@ const CustomMessageVideo = ({
116
119
  originalName,
117
120
  fileURL,
118
121
  mimetype,
119
- previewURL
122
+ previewURL,
123
+ tile,
124
+ onOpen
120
125
  }) => {
121
126
  const dispatch = (0, _reactRedux.useDispatch)();
122
127
  const [posterFailed, setPosterFailed] = (0, _react.useState)(false);
123
128
  const handleOpen = () => {
129
+ if (onOpen) {
130
+ onOpen();
131
+ return;
132
+ }
124
133
  dispatch((0, _chatSettingsSlice.setActiveFile)({
125
134
  fileName,
126
135
  fileURL,
@@ -133,6 +142,7 @@ const CustomMessageVideo = ({
133
142
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(PosterVideo, {
134
143
  previewURL: previewURL,
135
144
  onOpen: handleOpen,
145
+ tile: tile,
136
146
  onPosterError: () => {
137
147
  if ((0, _secureFileUrl.isSecureFileUrl)(previewURL)) {
138
148
  (0, _secureFileUrl.requestFileTokenRecovery)();
@@ -142,7 +152,8 @@ const CustomMessageVideo = ({
142
152
  });
143
153
  }
144
154
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(PlaceholderVideo, {
145
- onOpen: handleOpen
155
+ onOpen: handleOpen,
156
+ tile: tile
146
157
  });
147
158
  };
148
159
  var _default = exports.default = CustomMessageVideo;
@@ -152,6 +163,9 @@ const styles = _reactNative.StyleSheet.create({
152
163
  overflow: 'hidden',
153
164
  backgroundColor: '#000'
154
165
  },
166
+ tileWrapper: {
167
+ borderRadius: 0
168
+ },
155
169
  video: {
156
170
  width: '100%',
157
171
  height: '100%'
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_secureFileUrl","_reactNative","_reactRedux","_chatSettingsSlice","_MODAL_TYPES","_icons","_mediaDimensions","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PlayBadge","jsx","View","style","styles","overlay","pointerEvents","children","playButton","PlayIcon","width","height","PosterVideo","previewURL","onOpen","onPosterError","dims","setDims","useState","defaultMediaDims","useEffect","active","Image","getSize","w","h","fitMediaDimensions","jsxs","Pressable","onPress","wrapper","accessibilityRole","accessibilityLabel","source","uri","video","resizeMode","onError","PlaceholderVideo","CustomMessageVideo","fileName","originalName","fileURL","mimetype","dispatch","useDispatch","posterFailed","setPosterFailed","handleOpen","setActiveFile","setActiveModal","MODAL_TYPES","FILE_PREVIEW","isSecureFileUrl","requestFileTokenRecovery","_default","exports","StyleSheet","create","borderRadius","overflow","backgroundColor","absoluteFill","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["components/styled/VideoMessage.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_secureFileUrl","_reactNative","_reactRedux","_chatSettingsSlice","_MODAL_TYPES","_icons","_mediaDimensions","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PlayBadge","jsx","View","style","styles","overlay","pointerEvents","children","playButton","PlayIcon","width","height","PosterVideo","previewURL","onOpen","onPosterError","tile","measured","setDims","useState","defaultMediaDims","dims","useEffect","active","Image","getSize","w","h","fitMediaDimensions","jsxs","Pressable","onPress","wrapper","tileWrapper","accessibilityRole","accessibilityLabel","source","uri","video","resizeMode","onError","PlaceholderVideo","CustomMessageVideo","fileName","originalName","fileURL","mimetype","dispatch","useDispatch","posterFailed","setPosterFailed","handleOpen","setActiveFile","setActiveModal","MODAL_TYPES","FILE_PREVIEW","isSecureFileUrl","requestFileTokenRecovery","_default","exports","StyleSheet","create","borderRadius","overflow","backgroundColor","absoluteFill","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["components/styled/VideoMessage.tsx"],"mappings":"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","ignoreList":[]}
@@ -29,6 +29,7 @@ var _updateMessagesTillLast = require("../helpers/updateMessagesTillLast");
29
29
  var _secureUserStorage = require("../helpers/secureUserStorage");
30
30
  var _persistence = require("../roomStore/persistence");
31
31
  var _devLogger = require("../utils/devLogger");
32
+ var _readReceipts = require("../helpers/readReceipts");
32
33
  var _jsxRuntime = require("react/jsx-runtime");
33
34
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
34
35
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -685,6 +686,33 @@ const XmppProvider = ({
685
686
  let lastMessagesRef = null;
686
687
  let lastStampedMs = 0;
687
688
  let flushTimer = null;
689
+ // Room whose XEP-0333 marker is waiting on the 2 s debounce below. Set
690
+ // only while that room is the one on screen.
691
+ let pendingMarkerJid = null;
692
+
693
+ // Sends the waiting marker now: the debounce is cut short because the
694
+ // user left the room or the app, so it would otherwise be lost. The room
695
+ // counts as on screen for this one call (it was when the marker was
696
+ // queued); the jump window, the scroll boundary and the disable flags
697
+ // still apply inside computeReadWatermark.
698
+ const flushPendingMarker = () => {
699
+ const jid = pendingMarkerJid;
700
+ pendingMarkerJid = null;
701
+ if (!jid) {
702
+ return;
703
+ }
704
+ const st = _roomStore.store.getState();
705
+ const watermark = (0, _readReceipts.computeReadWatermark)({
706
+ ...st,
707
+ rooms: {
708
+ ...st.rooms,
709
+ visibleRoomJID: jid
710
+ }
711
+ }, jid);
712
+ if (watermark) {
713
+ client?.sendDisplayedMarkerStanza?.(watermark, jid);
714
+ }
715
+ };
688
716
  const advance = () => {
689
717
  const s = _roomStore.store.getState();
690
718
  const jid = s.rooms?.activeRoomJID;
@@ -723,11 +751,20 @@ const XmppProvider = ({
723
751
  chatJID: jid,
724
752
  timestamp: newest
725
753
  }));
754
+
755
+ // Another room took over the debounce: send the old room's marker first.
756
+ if (pendingMarkerJid && pendingMarkerJid !== jid) {
757
+ flushPendingMarker();
758
+ }
726
759
  if (flushTimer) {
727
760
  clearTimeout(flushTimer);
728
761
  }
729
762
  if (client?.flushLastViewedToPrivateStoreStanza) {
763
+ if (s.rooms?.visibleRoomJID === jid) {
764
+ pendingMarkerJid = jid;
765
+ }
730
766
  flushTimer = setTimeout(() => {
767
+ pendingMarkerJid = null;
731
768
  // Re-read fresh state rather than closing over `boundaryTs`:
732
769
  // the user may have scrolled back to the bottom (clearing the
733
770
  // boundary) in the 2s between the stamp and this flush, and
@@ -738,6 +775,14 @@ const XmppProvider = ({
738
775
  visibleRoomJID: jid,
739
776
  visibleRoomTs: (0, _getServerReadTimestamp.getFlushBoundaryTs)(freshState.rooms?.rooms?.[jid], freshState.roomHeapSlice, freshBoundaryTs)
740
777
  }).catch(() => {});
778
+ // XEP-0333 read marker, on the same debounce as the private-store
779
+ // write above. computeReadWatermark sends nothing unless the room is
780
+ // still on screen, no jump window is open and the newest message
781
+ // is someone else's.
782
+ const watermark = (0, _readReceipts.computeReadWatermark)(freshState, jid);
783
+ if (watermark) {
784
+ client.sendDisplayedMarkerStanza?.(watermark, jid);
785
+ }
741
786
  }, 2000);
742
787
  }
743
788
  };
@@ -748,6 +793,7 @@ const XmppProvider = ({
748
793
  if (flushTimer) {
749
794
  clearTimeout(flushTimer);
750
795
  }
796
+ flushPendingMarker();
751
797
  };
752
798
  }, [isVisible, client]);
753
799