@ethora/chat-component-rn 26.5.7 → 26.5.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/README.md +67 -10
  3. package/index.js +24 -0
  4. package/lib/commonjs/assets/icons.js +5 -1
  5. package/lib/commonjs/assets/icons.js.map +1 -1
  6. package/lib/commonjs/components/ContextMenu/ContextMenuComponents.js +11 -5
  7. package/lib/commonjs/components/ContextMenu/ContextMenuComponents.js.map +1 -1
  8. package/lib/commonjs/components/MainComponents/ChatRoom.js +64 -38
  9. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  10. package/lib/commonjs/components/MainComponents/ChatWrapper.js +57 -13
  11. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  12. package/lib/commonjs/components/MainComponents/MediaMessage.js +4 -2
  13. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  14. package/lib/commonjs/components/MainComponents/MessageContainer.js +2 -2
  15. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  16. package/lib/commonjs/components/MainComponents/MessageList.js +165 -28
  17. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  18. package/lib/commonjs/components/MainComponents/ReduxWrapper.js +17 -8
  19. package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
  20. package/lib/commonjs/components/MainComponents/SystemMessage.js +34 -22
  21. package/lib/commonjs/components/MainComponents/SystemMessage.js.map +1 -1
  22. package/lib/commonjs/components/MessageBubble/Message.js +84 -39
  23. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  24. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +82 -22
  25. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  26. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +16 -4
  27. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  28. package/lib/commonjs/components/Modals/FilePreviewModal/DocumentViewer.js +104 -0
  29. package/lib/commonjs/components/Modals/FilePreviewModal/DocumentViewer.js.map +1 -0
  30. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +140 -24
  31. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  32. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +29 -1
  33. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  34. package/lib/commonjs/components/Modals/Modal/Modal.js +5 -1
  35. package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
  36. package/lib/commonjs/components/Modals/ModalWrapper/ModalWrapper.js +77 -47
  37. package/lib/commonjs/components/Modals/ModalWrapper/ModalWrapper.js.map +1 -1
  38. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +3 -3
  39. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  40. package/lib/commonjs/components/Modals/styledModalComponents.js +4 -9
  41. package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
  42. package/lib/commonjs/components/styled/MediaFilePreview.js +47 -28
  43. package/lib/commonjs/components/styled/MediaFilePreview.js.map +1 -1
  44. package/lib/commonjs/components/styled/MessageImage.js +49 -9
  45. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  46. package/lib/commonjs/components/styled/NewMessageLabel.js +8 -6
  47. package/lib/commonjs/components/styled/NewMessageLabel.js.map +1 -1
  48. package/lib/commonjs/components/styled/SendInput.js +49 -27
  49. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  50. package/lib/commonjs/components/styled/StyledInputComponents/MediaComponents.js +14 -4
  51. package/lib/commonjs/components/styled/StyledInputComponents/MediaComponents.js.map +1 -1
  52. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +7 -2
  53. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  54. package/lib/commonjs/components/styled/UnsupportedType.js +5 -1
  55. package/lib/commonjs/components/styled/UnsupportedType.js.map +1 -1
  56. package/lib/commonjs/components/styled/VideoMessage.js +60 -14
  57. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  58. package/lib/commonjs/context/MessageNotificationContext.js +7 -7
  59. package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
  60. package/lib/commonjs/context/xmppProvider.js +244 -32
  61. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  62. package/lib/commonjs/helpers/chatAutoEnterer.js +2 -7
  63. package/lib/commonjs/helpers/chatAutoEnterer.js.map +1 -1
  64. package/lib/commonjs/helpers/historyPreloadScheduler.js +4 -1
  65. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  66. package/lib/commonjs/helpers/insertMessageWithDelimiter.js +15 -5
  67. package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
  68. package/lib/commonjs/helpers/keyboardLayout.js +18 -0
  69. package/lib/commonjs/helpers/keyboardLayout.js.map +1 -0
  70. package/lib/commonjs/helpers/mediaDimensions.js +51 -0
  71. package/lib/commonjs/helpers/mediaDimensions.js.map +1 -0
  72. package/lib/commonjs/helpers/normalizeRoomJid.js +20 -0
  73. package/lib/commonjs/helpers/normalizeRoomJid.js.map +1 -0
  74. package/lib/commonjs/hooks/useChatRoomFocus.js +87 -0
  75. package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -0
  76. package/lib/commonjs/hooks/useHeapSender.js +1 -1
  77. package/lib/commonjs/hooks/useHeapSender.js.map +1 -1
  78. package/lib/commonjs/hooks/useLogout.js +3 -3
  79. package/lib/commonjs/hooks/useLogout.js.map +1 -1
  80. package/lib/commonjs/hooks/usePushNotifications.js +6 -2
  81. package/lib/commonjs/hooks/usePushNotifications.js.map +1 -1
  82. package/lib/commonjs/hooks/useRoomState.js +2 -0
  83. package/lib/commonjs/hooks/useRoomState.js.map +1 -1
  84. package/lib/commonjs/hooks/useSendMessage.js +201 -10
  85. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  86. package/lib/commonjs/hooks/useUnreadMessagesCounter.js +12 -14
  87. package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
  88. package/lib/commonjs/main.js +7 -0
  89. package/lib/commonjs/main.js.map +1 -1
  90. package/lib/commonjs/networking/api-requests/auth.api.js +67 -0
  91. package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
  92. package/lib/commonjs/networking/apiClient.js +2 -1
  93. package/lib/commonjs/networking/apiClient.js.map +1 -1
  94. package/lib/commonjs/networking/outboundQueue.js +92 -0
  95. package/lib/commonjs/networking/outboundQueue.js.map +1 -0
  96. package/lib/commonjs/networking/xmpp/createTimeoutPromise.xmpp.js +4 -1
  97. package/lib/commonjs/networking/xmpp/createTimeoutPromise.xmpp.js.map +1 -1
  98. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +7 -8
  99. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  100. package/lib/commonjs/networking/xmpp/getRoomsPaged.xmpp.js +26 -3
  101. package/lib/commonjs/networking/xmpp/getRoomsPaged.xmpp.js.map +1 -1
  102. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +26 -8
  103. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  104. package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js +2 -1
  105. package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
  106. package/lib/commonjs/networking/xmppClient.js +294 -35
  107. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  108. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +22 -6
  109. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  110. package/lib/commonjs/roomStore/roomsSlice.js +157 -23
  111. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  112. package/lib/commonjs/utils/installPromiseRejectionTracker.js +83 -0
  113. package/lib/commonjs/utils/installPromiseRejectionTracker.js.map +1 -0
  114. package/lib/commonjs/utils/resendMessage.js +1 -1
  115. package/lib/commonjs/utils/resendMessage.js.map +1 -1
  116. package/lib/module/assets/icons.js +5 -1
  117. package/lib/module/assets/icons.js.map +1 -1
  118. package/lib/module/components/ContextMenu/ContextMenuComponents.js +11 -5
  119. package/lib/module/components/ContextMenu/ContextMenuComponents.js.map +1 -1
  120. package/lib/module/components/MainComponents/ChatRoom.js +65 -39
  121. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  122. package/lib/module/components/MainComponents/ChatWrapper.js +57 -13
  123. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  124. package/lib/module/components/MainComponents/MediaMessage.js +4 -2
  125. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  126. package/lib/module/components/MainComponents/MessageContainer.js +2 -2
  127. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  128. package/lib/module/components/MainComponents/MessageList.js +166 -29
  129. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  130. package/lib/module/components/MainComponents/ReduxWrapper.js +18 -8
  131. package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
  132. package/lib/module/components/MainComponents/SystemMessage.js +33 -21
  133. package/lib/module/components/MainComponents/SystemMessage.js.map +1 -1
  134. package/lib/module/components/MessageBubble/Message.js +85 -40
  135. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  136. package/lib/module/components/MessageBubble/MessageInteractions.js +84 -24
  137. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  138. package/lib/module/components/Modals/AttachSheet/AttachSheet.js +15 -3
  139. package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  140. package/lib/module/components/Modals/FilePreviewModal/DocumentViewer.js +99 -0
  141. package/lib/module/components/Modals/FilePreviewModal/DocumentViewer.js.map +1 -0
  142. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +143 -25
  143. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  144. package/lib/module/components/Modals/FilePreviewModal/PdfView.js +31 -3
  145. package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  146. package/lib/module/components/Modals/Modal/Modal.js +5 -1
  147. package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
  148. package/lib/module/components/Modals/ModalWrapper/ModalWrapper.js +79 -49
  149. package/lib/module/components/Modals/ModalWrapper/ModalWrapper.js.map +1 -1
  150. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +3 -3
  151. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  152. package/lib/module/components/Modals/styledModalComponents.js +4 -9
  153. package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
  154. package/lib/module/components/styled/MediaFilePreview.js +47 -28
  155. package/lib/module/components/styled/MediaFilePreview.js.map +1 -1
  156. package/lib/module/components/styled/MessageImage.js +51 -11
  157. package/lib/module/components/styled/MessageImage.js.map +1 -1
  158. package/lib/module/components/styled/NewMessageLabel.js +8 -6
  159. package/lib/module/components/styled/NewMessageLabel.js.map +1 -1
  160. package/lib/module/components/styled/SendInput.js +50 -28
  161. package/lib/module/components/styled/SendInput.js.map +1 -1
  162. package/lib/module/components/styled/StyledInputComponents/MediaComponents.js +14 -4
  163. package/lib/module/components/styled/StyledInputComponents/MediaComponents.js.map +1 -1
  164. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +7 -2
  165. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  166. package/lib/module/components/styled/UnsupportedType.js +5 -1
  167. package/lib/module/components/styled/UnsupportedType.js.map +1 -1
  168. package/lib/module/components/styled/VideoMessage.js +61 -15
  169. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  170. package/lib/module/context/MessageNotificationContext.js +7 -7
  171. package/lib/module/context/MessageNotificationContext.js.map +1 -1
  172. package/lib/module/context/xmppProvider.js +246 -34
  173. package/lib/module/context/xmppProvider.js.map +1 -1
  174. package/lib/module/helpers/chatAutoEnterer.js +2 -7
  175. package/lib/module/helpers/chatAutoEnterer.js.map +1 -1
  176. package/lib/module/helpers/historyPreloadScheduler.js +4 -1
  177. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  178. package/lib/module/helpers/insertMessageWithDelimiter.js +15 -5
  179. package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
  180. package/lib/module/helpers/keyboardLayout.js +12 -0
  181. package/lib/module/helpers/keyboardLayout.js.map +1 -0
  182. package/lib/module/helpers/mediaDimensions.js +46 -0
  183. package/lib/module/helpers/mediaDimensions.js.map +1 -0
  184. package/lib/module/helpers/normalizeRoomJid.js +15 -0
  185. package/lib/module/helpers/normalizeRoomJid.js.map +1 -0
  186. package/lib/module/hooks/useChatRoomFocus.js +82 -0
  187. package/lib/module/hooks/useChatRoomFocus.js.map +1 -0
  188. package/lib/module/hooks/useHeapSender.js +1 -1
  189. package/lib/module/hooks/useHeapSender.js.map +1 -1
  190. package/lib/module/hooks/useLogout.js +3 -3
  191. package/lib/module/hooks/useLogout.js.map +1 -1
  192. package/lib/module/hooks/usePushNotifications.js +6 -2
  193. package/lib/module/hooks/usePushNotifications.js.map +1 -1
  194. package/lib/module/hooks/useRoomState.js +2 -0
  195. package/lib/module/hooks/useRoomState.js.map +1 -1
  196. package/lib/module/hooks/useSendMessage.js +203 -12
  197. package/lib/module/hooks/useSendMessage.js.map +1 -1
  198. package/lib/module/hooks/useUnreadMessagesCounter.js +12 -14
  199. package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
  200. package/lib/module/main.js +1 -0
  201. package/lib/module/main.js.map +1 -1
  202. package/lib/module/networking/api-requests/auth.api.js +67 -1
  203. package/lib/module/networking/api-requests/auth.api.js.map +1 -1
  204. package/lib/module/networking/apiClient.js +2 -1
  205. package/lib/module/networking/apiClient.js.map +1 -1
  206. package/lib/module/networking/outboundQueue.js +84 -0
  207. package/lib/module/networking/outboundQueue.js.map +1 -0
  208. package/lib/module/networking/xmpp/createTimeoutPromise.xmpp.js +4 -1
  209. package/lib/module/networking/xmpp/createTimeoutPromise.xmpp.js.map +1 -1
  210. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +7 -8
  211. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  212. package/lib/module/networking/xmpp/getRoomsPaged.xmpp.js +26 -3
  213. package/lib/module/networking/xmpp/getRoomsPaged.xmpp.js.map +1 -1
  214. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +26 -8
  215. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  216. package/lib/module/networking/xmpp/sendTextMessage.xmpp.js +2 -1
  217. package/lib/module/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
  218. package/lib/module/networking/xmppClient.js +294 -35
  219. package/lib/module/networking/xmppClient.js.map +1 -1
  220. package/lib/module/roomStore/Middleware/unreadMidlleware.js +22 -6
  221. package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  222. package/lib/module/roomStore/roomsSlice.js +154 -22
  223. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  224. package/lib/module/utils/installPromiseRejectionTracker.js +78 -0
  225. package/lib/module/utils/installPromiseRejectionTracker.js.map +1 -0
  226. package/lib/module/utils/resendMessage.js +1 -1
  227. package/lib/module/utils/resendMessage.js.map +1 -1
  228. package/lib/typescript/assets/icons.d.ts +8 -4
  229. package/lib/typescript/assets/icons.d.ts.map +1 -1
  230. package/lib/typescript/components/ContextMenu/ContextMenuComponents.d.ts.map +1 -1
  231. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  232. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  233. package/lib/typescript/components/MainComponents/MediaMessage.d.ts +1 -0
  234. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  235. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  236. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  237. package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts +1 -0
  238. package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
  239. package/lib/typescript/components/MainComponents/SystemMessage.d.ts +0 -7
  240. package/lib/typescript/components/MainComponents/SystemMessage.d.ts.map +1 -1
  241. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  242. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +4 -2
  243. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  244. package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
  245. package/lib/typescript/components/Modals/FilePreviewModal/DocumentViewer.d.ts +29 -0
  246. package/lib/typescript/components/Modals/FilePreviewModal/DocumentViewer.d.ts.map +1 -0
  247. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts +0 -1
  248. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  249. package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
  250. package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
  251. package/lib/typescript/components/Modals/ModalWrapper/ModalWrapper.d.ts.map +1 -1
  252. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  253. package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
  254. package/lib/typescript/components/styled/MediaFilePreview.d.ts.map +1 -1
  255. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  256. package/lib/typescript/components/styled/NewMessageLabel.d.ts +1 -5
  257. package/lib/typescript/components/styled/NewMessageLabel.d.ts.map +1 -1
  258. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  259. package/lib/typescript/components/styled/StyledInputComponents/MediaComponents.d.ts +9 -1
  260. package/lib/typescript/components/styled/StyledInputComponents/MediaComponents.d.ts.map +1 -1
  261. package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
  262. package/lib/typescript/components/styled/UnsupportedType.d.ts +1 -0
  263. package/lib/typescript/components/styled/UnsupportedType.d.ts.map +1 -1
  264. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  265. package/lib/typescript/context/xmppProvider.d.ts +1 -0
  266. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  267. package/lib/typescript/helpers/chatAutoEnterer.d.ts.map +1 -1
  268. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  269. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
  270. package/lib/typescript/helpers/keyboardLayout.d.ts +9 -0
  271. package/lib/typescript/helpers/keyboardLayout.d.ts.map +1 -0
  272. package/lib/typescript/helpers/mediaDimensions.d.ts +9 -0
  273. package/lib/typescript/helpers/mediaDimensions.d.ts.map +1 -0
  274. package/lib/typescript/helpers/normalizeRoomJid.d.ts +2 -0
  275. package/lib/typescript/helpers/normalizeRoomJid.d.ts.map +1 -0
  276. package/lib/typescript/hooks/useChatRoomFocus.d.ts +42 -0
  277. package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -0
  278. package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
  279. package/lib/typescript/hooks/usePushNotifications.d.ts.map +1 -1
  280. package/lib/typescript/hooks/useRoomState.d.ts +1 -0
  281. package/lib/typescript/hooks/useRoomState.d.ts.map +1 -1
  282. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  283. package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts.map +1 -1
  284. package/lib/typescript/main.d.ts +1 -0
  285. package/lib/typescript/main.d.ts.map +1 -1
  286. package/lib/typescript/networking/api-requests/auth.api.d.ts +3 -0
  287. package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
  288. package/lib/typescript/networking/apiClient.d.ts.map +1 -1
  289. package/lib/typescript/networking/outboundQueue.d.ts +57 -0
  290. package/lib/typescript/networking/outboundQueue.d.ts.map +1 -0
  291. package/lib/typescript/networking/xmpp/createTimeoutPromise.xmpp.d.ts.map +1 -1
  292. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +1 -1
  293. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
  294. package/lib/typescript/networking/xmpp/getRoomsPaged.xmpp.d.ts +1 -1
  295. package/lib/typescript/networking/xmpp/getRoomsPaged.xmpp.d.ts.map +1 -1
  296. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
  297. package/lib/typescript/networking/xmpp/sendTextMessage.xmpp.d.ts.map +1 -1
  298. package/lib/typescript/networking/xmppClient.d.ts +33 -4
  299. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  300. package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
  301. package/lib/typescript/roomStore/roomsSlice.d.ts +8 -1
  302. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  303. package/lib/typescript/types/models/media.model.d.ts +1 -0
  304. package/lib/typescript/types/models/media.model.d.ts.map +1 -1
  305. package/lib/typescript/types/models/xmpp.model.d.ts +1 -1
  306. package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
  307. package/lib/typescript/types/types.d.ts +4 -0
  308. package/lib/typescript/types/types.d.ts.map +1 -1
  309. package/lib/typescript/utils/installPromiseRejectionTracker.d.ts +20 -0
  310. package/lib/typescript/utils/installPromiseRejectionTracker.d.ts.map +1 -0
  311. package/lib/typescript/utils/resendMessage.d.ts.map +1 -1
  312. package/package.json +18 -2
  313. package/src/assets/icons.tsx +23 -14
  314. package/src/components/ContextMenu/ContextMenuComponents.tsx +10 -5
  315. package/src/components/MainComponents/ChatRoom.tsx +81 -66
  316. package/src/components/MainComponents/ChatWrapper.tsx +99 -21
  317. package/src/components/MainComponents/MediaMessage.tsx +3 -0
  318. package/src/components/MainComponents/MessageContainer.tsx +4 -2
  319. package/src/components/MainComponents/MessageList.tsx +175 -28
  320. package/src/components/MainComponents/ReduxWrapper.tsx +19 -9
  321. package/src/components/MainComponents/SystemMessage.tsx +38 -26
  322. package/src/components/MessageBubble/Message.tsx +91 -62
  323. package/src/components/MessageBubble/MessageInteractions.tsx +98 -29
  324. package/src/components/Modals/AttachSheet/AttachSheet.tsx +17 -3
  325. package/src/components/Modals/FilePreviewModal/DocumentViewer.tsx +93 -0
  326. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +152 -25
  327. package/src/components/Modals/FilePreviewModal/PdfView.tsx +32 -4
  328. package/src/components/Modals/Modal/Modal.tsx +4 -1
  329. package/src/components/Modals/ModalWrapper/ModalWrapper.tsx +70 -58
  330. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +19 -15
  331. package/src/components/Modals/styledModalComponents.tsx +4 -9
  332. package/src/components/styled/MediaFilePreview.tsx +46 -26
  333. package/src/components/styled/MessageImage.tsx +58 -13
  334. package/src/components/styled/NewMessageLabel.tsx +8 -5
  335. package/src/components/styled/SendInput.tsx +64 -29
  336. package/src/components/styled/StyledInputComponents/MediaComponents.tsx +15 -5
  337. package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +7 -2
  338. package/src/components/styled/UnsupportedType.tsx +7 -1
  339. package/src/components/styled/VideoMessage.tsx +59 -11
  340. package/src/context/MessageNotificationContext.tsx +8 -8
  341. package/src/context/xmppProvider.tsx +247 -30
  342. package/src/helpers/chatAutoEnterer.ts +2 -8
  343. package/src/helpers/historyPreloadScheduler.ts +4 -1
  344. package/src/helpers/insertMessageWithDelimiter.ts +22 -15
  345. package/src/helpers/keyboardLayout.ts +18 -0
  346. package/src/helpers/mediaDimensions.ts +47 -0
  347. package/src/helpers/normalizeRoomJid.ts +6 -0
  348. package/src/hooks/useChatRoomFocus.ts +95 -0
  349. package/src/hooks/useHeapSender.tsx +2 -1
  350. package/src/hooks/useLogout.tsx +3 -3
  351. package/src/hooks/usePushNotifications.ts +21 -8
  352. package/src/hooks/useRoomState.tsx +4 -0
  353. package/src/hooks/useSendMessage.tsx +258 -13
  354. package/src/hooks/useUnreadMessagesCounter.ts +13 -16
  355. package/src/main.ts +1 -0
  356. package/src/networking/api-requests/auth.api.ts +55 -1
  357. package/src/networking/apiClient.ts +2 -1
  358. package/src/networking/outboundQueue.ts +98 -0
  359. package/src/networking/xmpp/createTimeoutPromise.xmpp.ts +5 -1
  360. package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +11 -13
  361. package/src/networking/xmpp/getRoomsPaged.xmpp.ts +27 -3
  362. package/src/networking/xmpp/presenceInRoom.xmpp.ts +24 -9
  363. package/src/networking/xmpp/sendTextMessage.xmpp.ts +2 -1
  364. package/src/networking/xmppClient.ts +317 -43
  365. package/src/roomStore/Middleware/unreadMidlleware.tsx +23 -5
  366. package/src/roomStore/roomsSlice.ts +177 -27
  367. package/src/types/models/media.model.ts +3 -0
  368. package/src/types/models/xmpp.model.ts +2 -1
  369. package/src/types/types.ts +15 -0
  370. package/src/utils/installPromiseRejectionTracker.ts +91 -0
  371. package/src/utils/resendMessage.ts +2 -1
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useRef, useState } from 'react';
4
- import { View, Pressable, StyleSheet, findNodeHandle, UIManager, Dimensions, Text } from 'react-native';
4
+ import { View, Pressable, StyleSheet, findNodeHandle, UIManager, Text } from 'react-native';
5
5
  import { useDispatch } from 'react-redux';
6
6
  import { Avatar } from './Avatar';
7
7
  import MessageInteractions from './MessageInteractions';
@@ -35,7 +35,13 @@ const CustomMessageContainer = styled.View`
35
35
  const CustomMessageBubble = styled.View`
36
36
  position: relative;
37
37
  max-width: 85%;
38
- min-width: 30%;
38
+ min-width: ${({
39
+ isMedia
40
+ }) => isMedia ? '0' : '30%'};
41
+ align-items: ${({
42
+ isMedia,
43
+ isUser
44
+ }) => isMedia ? isUser ? 'flex-end' : 'flex-start' : 'stretch'};
39
45
  padding: ${({
40
46
  isMedia
41
47
  }) => isMedia ? '0' : '10'}px;
@@ -82,6 +88,13 @@ const CustomMessagePhotoContainer = styled.TouchableOpacity`
82
88
  const CustomUserName = styled.Text`
83
89
  font-size: 14px;
84
90
  font-weight: 500;
91
+ padding-bottom: 8px;
92
+ padding-left: ${({
93
+ media
94
+ }) => media ? '16px' : 0};
95
+ padding-top: ${({
96
+ media
97
+ }) => media ? '8px' : 0};
85
98
  color: ${({
86
99
  color
87
100
  }) => color || '#333'};
@@ -97,6 +110,16 @@ const CustomMessageTimestamp = styled.Text`
97
110
  margin-top: 5px;
98
111
  align-self: flex-end;
99
112
  `;
113
+ const CustomTimestampRow = styled.View`
114
+ flex-direction: row;
115
+ align-items: center;
116
+ align-self: flex-end;
117
+ margin-top: 4;
118
+ gap: 4;
119
+ padding-right: ${({
120
+ media
121
+ }) => media ? '10px' : 0};
122
+ `;
100
123
  const Message = ({
101
124
  message,
102
125
  isUser,
@@ -125,6 +148,7 @@ const Message = ({
125
148
  const [contextMenuPosition, setContextMenuPosition] = useState(null);
126
149
  const timerRef = useRef(null);
127
150
  const messageRef = useRef(null);
151
+ const bubbleRef = useRef(null);
128
152
  const handleUserAvatarClick = user => {
129
153
  dispatch(setActiveModal(MODAL_TYPES.PROFILE));
130
154
  dispatch(setSelectedUser(user));
@@ -180,40 +204,23 @@ const Message = ({
180
204
  }
181
205
  client?.sendMessageReactionStanza(message.id, message.roomJid, [...(message.reaction[user.xmppUsername || '']?.emoji || []), emoji], `${user.firstName} ${user.lastName}`);
182
206
  };
207
+
208
+ // Long-press → capture the bubble's on-screen bounding box. The actual
209
+ // menu placement (above / below, clamped to the viewport) is done in
210
+ // MessageInteractions, which measures the rendered menu height via
211
+ // onLayout — more accurate than estimating it here, and it's what keeps
212
+ // the menu adjacent to the message instead of floating far above (#13).
183
213
  const handleLongPress = () => {
184
- if (messageRef.current) {
185
- const nodeHandle = findNodeHandle(messageRef.current);
214
+ const target = bubbleRef.current ?? messageRef.current;
215
+ if (target) {
216
+ const nodeHandle = findNodeHandle(target);
186
217
  if (nodeHandle) {
187
- UIManager.measure(nodeHandle, (_x, _y, _width, height, pageX, pageY) => {
188
- const screenHeight = Dimensions.get('window').height;
189
- // MessageInteractions is ~5 rows (delete/edit/reply/react/copy)
190
- // at ~48px each + padding, plus emoji bar on top. 280 covers
191
- // both even with a couple of long labels. The legacy 150
192
- // figure assumed a much shorter menu and stranded the popup
193
- // off-screen on the last message of the room.
194
- const MENU_HEIGHT = 280;
195
- // Treat the consumer-supplied keyboardVerticalOffset as a
196
- // proxy for tab bar + bottom safe-area when present; falls
197
- // back to a reasonable default so the menu doesn't bump into
198
- // the nav bar on phones without one in config.
199
- const bottomReserve = (config?.keyboardVerticalOffset ?? 0) + 24;
200
- const topReserve = 16;
201
- const spaceBelow = screenHeight - (pageY + height) - bottomReserve;
202
- const spaceAbove = pageY - topReserve;
203
- let menuY;
204
- if (spaceBelow >= MENU_HEIGHT) {
205
- menuY = pageY + height;
206
- } else if (spaceAbove >= MENU_HEIGHT) {
207
- menuY = pageY - MENU_HEIGHT;
208
- } else {
209
- // Neither side has room (e.g. very small phone, large
210
- // menu) — clamp to the visible region so at least the
211
- // top of the menu is reachable.
212
- menuY = Math.max(topReserve, screenHeight - MENU_HEIGHT - bottomReserve);
213
- }
218
+ UIManager.measure(nodeHandle, (_x, _y, width, height, pageX, pageY) => {
214
219
  setContextMenuPosition({
215
- x: pageX,
216
- y: menuY
220
+ left: pageX,
221
+ right: pageX + width,
222
+ top: pageY,
223
+ bottom: pageY + height
217
224
  });
218
225
  });
219
226
  }
@@ -255,12 +262,24 @@ const Message = ({
255
262
  username: message.user.name
256
263
  })
257
264
  }), /*#__PURE__*/_jsx(Pressable
258
- // disableInteractions hides the long-press → context menu
259
- // (delete / edit / reply / react). Mirrors web's config gate.
265
+ // The Pressable fills the row's content area, so the bubble
266
+ // inside must be aligned to the sender's side — otherwise it
267
+ // hugs the left and own media bubbles sit with a right-side
268
+ // gap (text bubbles only looked right because they're narrow).
269
+ // flex-end for own, flex-start for others.
260
270
  , {
271
+ style: {
272
+ flex: 1,
273
+ alignItems: isUser ? 'flex-end' : 'flex-start'
274
+ }
275
+ // disableInteractions hides the long-press → context menu
276
+ // (delete / edit / reply / react). Mirrors web's config gate.
277
+ ,
261
278
  onLongPress: config?.disableInteractions ? undefined : handleLongPress,
262
279
  delayLongPress: 500,
263
280
  children: /*#__PURE__*/_jsxs(CustomMessageBubble, {
281
+ ref: bubbleRef,
282
+ collapsable: false,
264
283
  isUser: isUser,
265
284
  deleted: message.isDeleted,
266
285
  isMedia: message?.isMediafile === 'true' && !message?.isDeleted,
@@ -268,6 +287,7 @@ const Message = ({
268
287
  backgroundMessage: config?.messageColor?.backgroundMessage,
269
288
  children: [!isUser && /*#__PURE__*/_jsx(CustomUserName, {
270
289
  color: config?.colors?.primary,
290
+ media: message?.isMediafile === 'true',
271
291
  children: message.user.name
272
292
  }), !isReply && message.mainMessage && /*#__PURE__*/_jsx(MessageReply, {
273
293
  handleReplyMessage: handleReplyMessage,
@@ -278,7 +298,8 @@ const Message = ({
278
298
  mimeType: message.mimetype,
279
299
  messageText: message.locationPreview,
280
300
  location: message?.location,
281
- message: message
301
+ message: message,
302
+ isUser: isUser
282
303
  }) : /*#__PURE__*/_jsx(_Fragment, {
283
304
  children: message.isDeleted && message.id !== 'delimiter-new' ? /*#__PURE__*/_jsx(DeletedMessage, {}) : /*#__PURE__*/_jsx(CustomMessageText, {
284
305
  isUser: isUser,
@@ -292,8 +313,10 @@ const Message = ({
292
313
  message: message,
293
314
  config: config,
294
315
  langSource: langSource
295
- }), /*#__PURE__*/_jsxs(CustomMessageTimestamp, {
316
+ }), /*#__PURE__*/_jsxs(CustomTimestampRow, {
317
+ media: message?.isMediafile === 'true',
296
318
  children: [!config?.disableSentLogic && isUser && isPending && /*#__PURE__*/_jsx(Text, {
319
+ style: styles.timestampText,
297
320
  children: "sending..."
298
321
  }), !config?.disableSentLogic && isUser && isFailed && /*#__PURE__*/_jsx(Text, {
299
322
  onPress: onRetryPress,
@@ -301,9 +324,12 @@ const Message = ({
301
324
  accessibilityRole: "button",
302
325
  accessibilityLabel: "Retry sending message",
303
326
  children: "! Failed \u2014 tap to retry"
304
- }), new Date(message.date).toLocaleTimeString([], {
305
- hour: '2-digit',
306
- minute: '2-digit'
327
+ }), /*#__PURE__*/_jsx(Text, {
328
+ style: styles.timestampText,
329
+ children: new Date(message.date).toLocaleTimeString([], {
330
+ hour: '2-digit',
331
+ minute: '2-digit'
332
+ })
307
333
  }), !config?.disableSentLogic && isUser && !isPending && !isFailed && /*#__PURE__*/_jsx(DoubleTick, {})]
308
334
  }), message?.reply?.length && message?.reply?.length > 0 ? /*#__PURE__*/_jsx(BottomReplyContainer, {
309
335
  isUser: isUser,
@@ -360,6 +386,25 @@ const styles = StyleSheet.create({
360
386
  color: '#E53935',
361
387
  fontWeight: '600',
362
388
  marginRight: 6
389
+ },
390
+ // Row keeps the time text and the DoubleTick SVG on the same line.
391
+ // The time Text gets an explicit lineHeight equal to the 16px tick so
392
+ // both occupy the same-height box; with alignItems center they line up
393
+ // exactly. Without the lineHeight the Text's natural line box was
394
+ // shorter than the icon, so the centred tick floated above the digits.
395
+ timestampRow: {
396
+ flexDirection: 'row',
397
+ alignItems: 'center',
398
+ alignSelf: 'flex-end',
399
+ marginTop: 4,
400
+ gap: 4
401
+ },
402
+ timestampText: {
403
+ fontSize: 12,
404
+ lineHeight: 16,
405
+ color: '#999',
406
+ includeFontPadding: false,
407
+ textAlignVertical: 'center'
363
408
  }
364
409
  });
365
410
  //# sourceMappingURL=Message.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","useState","View","Pressable","StyleSheet","findNodeHandle","UIManager","Dimensions","Text","useDispatch","Avatar","MessageInteractions","BottomReplyContainer","MessageReply","DeletedMessage","setActiveModal","setDeleteModal","setSelectedUser","MODAL_TYPES","setActiveMessage","setEditAction","styled","MediaMessage","MessageTranslations","useChatSettingState","parseMessageBody","useMessageHeapState","DoubleTick","useXmppClient","useSendMessage","MessageReaction","MessageFooter","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CustomMessageContainer","isUser","props","reply","CustomMessageBubble","isMedia","deleted","backgroundMessageUser","backgroundMessage","CustomMessageText","color","colorUser","CustomMessagePhoto","Image","CustomMessagePhotoContainer","TouchableOpacity","CustomUserName","CustomMessageTimestamp","Message","message","isReply","dispatch","client","config","langSource","user","idSet","failedIdSet","retryMessage","isPressed","setIsPressed","__DEV__","id","globalThis","__loggedMsg","contextMenuPosition","setContextMenuPosition","timerRef","messageRef","handleUserAvatarClick","PROFILE","handleReplyMessage","isEdit","mainMessage","messageCore","JSON","parse","chatJID","roomJid","handleDeleteMessage","isDeleteModal","messageId","handleEditMessage","text","body","handleReactionMessage","emoji","reaction","sendMessageReactionStanza","firstName","lastName","xmppUsername","includes","filterEmoji","filter","handleLongPress","current","nodeHandle","measure","_x","_y","_width","height","pageX","pageY","screenHeight","get","MENU_HEIGHT","bottomReserve","keyboardVerticalOffset","topReserve","spaceBelow","spaceAbove","menuY","Math","max","x","y","messageText","messageTextFilter","enabled","filterFunction","isFailed","has","isPending","pending","onRetryPress","children","style","styles","overlay","ref","customMessageContainer","justifyContent","marginBottom","length","Object","keys","transform","scale","paddingRight","undefined","onPress","profileImage","source","uri","username","name","onLongPress","disableInteractions","delayLongPress","isDeleted","isMediafile","messageColor","colors","primary","mimeType","mimetype","locationPreview","location","enableTranslates","disableSentLogic","failedText","accessibilityRole","accessibilityLabel","Date","date","toLocaleTimeString","hour","minute","onClick","disableReactions","changeReaction","userName","position","closeMenu","create","flexDirection","padding","alignItems","absoluteFillObject","top","left","width","timestamp","fontSize","marginTop","alignSelf","fontWeight","marginRight"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/Message.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC/C,SACEC,IAAI,EACJC,SAAS,EACTC,UAAU,EACVC,cAAc,EACdC,SAAS,EACTC,UAAU,EACVC,IAAI,QACC,cAAc;AACrB,SAASC,WAAW,QAAqB,aAAa;AAEtD,SAASC,MAAM,QAAQ,UAAU;AACjC,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SACEC,cAAc,EACdC,cAAc,EACdC,eAAe,QACV,mCAAmC;AAC1C,SAASC,WAAW,QAAQ,qCAAqC;AACjE,SAASC,gBAAgB,EAAEC,aAAa,QAAQ,4BAA4B;AAC5E,OAAOC,MAAM,MAAM,0BAA0B;AAE7C,OAAOC,YAAY,MAAM,gCAAgC;AACzD,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,gBAAgB,QAAQ,gCAAgC;AACjE,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,cAAc,QAAQ,4BAA4B;AAC3D,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,aAAa,QAAQ,4BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE3D,MAAMC,sBAAsB,GAAGjB,MAAM,CAACnB,IAAyC;AAC/E;AACA;AACA;AACA,qBAAqB,CAAC;EAAEqC;AAAO,CAAC,KAAMA,MAAM,GAAG,UAAU,GAAG,YAAa;AACzE,mBAAoBC,KAAK,IAAMA,KAAK,CAACC,KAAK,GAAG,MAAM,GAAG,KAAM;AAC5D,CAAC;AAED,MAAMC,mBAAmB,GAAGrB,MAAM,CAACnB,IAMjC;AACF;AACA;AACA;AACA,aAAa,CAAC;EAACyC;AAAO,CAAC,KAAKA,OAAO,GAAG,GAAG,GAAG,IAAI;AAChD,oBAAoB,CAAC;EAACA;AAAO,CAAC,KAAKA,OAAO,GAAG,GAAG,GAAG,IAAI;AACvD,kBAAkB,CAAC;EAACJ;AAAM,CAAC,KAAKA,MAAM,GAAG,GAAG,GAAG,MAAM;AACrD,iBAAiB,CAAC;EAACA;AAAM,CAAC,KAAKA,MAAM,GAAG,MAAM,GAAG,GAAG;AACpD;AACA;AACA,+BAA+B,CAAC;EAAEA;AAAO,CAAC,KAAMA,MAAM,GAAG,IAAI,GAAG,GAAI;AACpE,gCAAgC,CAAC;EAAEA;AAAO,CAAC,KAAMA,MAAM,GAAG,GAAG,GAAG,IAAK;AACrE,sBAAsB,CAAC;EACnBA,MAAM;EACNK,OAAO;EACPC,qBAAqB;EACrBC;AACF,CAAC,KACCF,OAAO,GACH,SAAS,GACTL,MAAM,GACNM,qBAAqB,IAAI,SAAS,GAClCC,iBAAiB,IAAI,MAAM;AACnC,CAAC;AAED,MAAMC,iBAAiB,GAAG1B,MAAM,CAACb,IAI/B;AACF;AACA,WAAW,CAAC;EAAEwC,KAAK;EAAEC,SAAS;EAAEV;AAAO,CAAC,KACpCA,MAAM,GAAGU,SAAS,IAAI,MAAM,GAAGD,KAAK,IAAI,MAAM;AAClD,CAAC;AAED,MAAME,kBAAkB,GAAG7B,MAAM,CAAC8B,KAAK;AACvC;AACA;AACA;AACA,CAAC;AAED,MAAMC,2BAA2B,GAAG/B,MAAM,CAACgC,gBAAgB;AAC3D;AACA,CAAC;AAED,MAAMC,cAAc,GAAGjC,MAAM,CAACb,IAAwB;AACtD;AACA;AACA,WAAW,CAAC;EAAEwC;AAAM,CAAC,KAAKA,KAAK,IAAI,MAAM;AACzC,CAAC;AAED,MAAMO,sBAAsB,GAAGlC,MAAM,CAACb,IAIpC;AACF;AACA;AACA,WAAW,CAAC;EAAE+B,MAAM;EAAES,KAAK;EAAEC;AAAU,CAAC,KACpCV,MAAM,GAAGU,SAAS,IAAI,MAAM,GAAGD,KAAK,IAAI,MAAM;AAClD;AACA;AACA,CAAC;AAED,MAAMQ,OAA+B,GAAGA,CAAC;EAAEC,OAAO;EAAElB,MAAM;EAAEmB;AAAQ,CAAC,KAAK;EACxE,MAAMC,QAAQ,GAAGlD,WAAW,CAAC,CAAC;EAC9B,MAAM;IAAEmD;EAAO,CAAC,GAAGhC,aAAa,CAAC,CAAC;EAClC,MAAM;IAAEiC,MAAM;IAAEC,UAAU;IAAEC;EAAI,CAAC,GAAGvC,mBAAmB,CAAC,CAAC;EACzD,MAAM;IAAEwC,KAAK;IAAEC;EAAY,CAAC,GAAGvC,mBAAmB,CAAC,CAAC;EACpD,MAAM;IAAEwC;EAAa,CAAC,GAAGrC,cAAc,CAAC,CAAC;EAEzC,MAAM,CAACsC,SAAS,EAAEC,YAAY,CAAC,GAAGnE,QAAQ,CAAC,KAAK,CAAC;EAEjD,IAAIoE,OAAO,IAAIZ,OAAO,CAACa,EAAE,IAAI,CAAEC,UAAU,CAASC,WAAW,GAAGf,OAAO,CAACa,EAAE,CAAC,EAAE;IAC3E,CAAEC,UAAU,CAASC,WAAW,KAAK,CAAC,CAAC,EAAEf,OAAO,CAACa,EAAE,CAAC,GAAG,IAAI;EAC7D;EAEA,MAAM,CAACG,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGzE,QAAQ,CAGpD,IAAI,CAAC;EAEf,MAAM0E,QAAQ,GAAG3E,MAAM,CAAwB,IAAI,CAAC;EACpD,MAAM4E,UAAU,GAAG5E,MAAM,CAAO,IAAI,CAAC;EAErC,MAAM6E,qBAAqB,GAAId,IAAW,IAAW;IACnDJ,QAAQ,CAAC5C,cAAc,CAACG,WAAW,CAAC4D,OAAO,CAAC,CAAC;IAC7CnB,QAAQ,CAAC1C,eAAe,CAAC8C,IAAI,CAAC,CAAC;EACjC,CAAC;EAED,MAAMgB,kBAAkB,GAAGA,CAAA,KAAM;IAC/BpB,QAAQ,CAACvC,aAAa,CAAC;MAAE4D,MAAM,EAAE;IAAM,CAAC,CAAC,CAAC;IAE1C,IAAI,CAACtB,OAAO,IAAID,OAAO,CAACwB,WAAW,EAAE;MACnC,MAAMC,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAC3B,OAAO,CAACwB,WAAW,CAAC;MACnDtB,QAAQ,CACNxC,gBAAgB,CAAC;QAAEmD,EAAE,EAAEY,WAAW,CAACZ,EAAE;QAAEe,OAAO,EAAEH,WAAW,CAACI;MAAQ,CAAC,CACvE,CAAC;MAED,OAAOlB,YAAY,CAAC,KAAK,CAAC;IAC5B;IAEAT,QAAQ,CAACxC,gBAAgB,CAAC;MAAEmD,EAAE,EAAEb,OAAO,CAACa,EAAE;MAAEe,OAAO,EAAE5B,OAAO,CAAC6B;IAAQ,CAAC,CAAC,CAAC;IAExE,OAAOlB,YAAY,CAAC,KAAK,CAAC;EAC5B,CAAC;EAED,MAAMmB,mBAAmB,GAAGA,CAAA,KAAM;IAChC5B,QAAQ,CACN3C,cAAc,CAAC;MACbwE,aAAa,EAAE,IAAI;MACnBF,OAAO,EAAE7B,OAAO,CAAC6B,OAAO;MACxBG,SAAS,EAAEhC,OAAO,CAACa;IACrB,CAAC,CACH,CAAC;IACDF,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC;EAED,MAAMsB,iBAAiB,GAAGA,CAAA,KAAM;IAC9B/B,QAAQ,CACNvC,aAAa,CAAC;MACZ4D,MAAM,EAAE,IAAI;MACZM,OAAO,EAAE7B,OAAO,CAAC6B,OAAO;MACxBG,SAAS,EAAEhC,OAAO,CAACa,EAAE;MACrBqB,IAAI,EAAElC,OAAO,CAACmC;IAChB,CAAC,CACH,CAAC;IAED,OAAOxB,YAAY,CAAC,KAAK,CAAC;EAC5B,CAAC;;EAED;EACA;EACA;EACA;;EAEA,MAAMyB,qBAAqB,GAAIC,KAAa,IAAK;IAC/C,IAAI,CAACrC,OAAO,CAACsC,QAAQ,EAAE;MACrB,OAAOnC,MAAM,EAAEoC,yBAAyB,CACtCvC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC6B,OAAO,EACf,CAACQ,KAAK,CAAC,EACP,GAAG/B,IAAI,CAACkC,SAAS,IAAIlC,IAAI,CAACmC,QAAQ,EACpC,CAAC;IACH;IACA,IACEzC,OAAO,CAACsC,QAAQ,IAChBtC,OAAO,CAACsC,QAAQ,CAAChC,IAAI,CAACoC,YAAY,IAAI,EAAE,CAAC,IACzC1C,OAAO,CAACsC,QAAQ,CAAChC,IAAI,CAACoC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,CAACM,QAAQ,CAACN,KAAK,CAAC,EAChE;MACA,MAAMO,WAAW,GAAG5C,OAAO,CAACsC,QAAQ,CAAChC,IAAI,CAACoC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,CAACQ,MAAM,CACxEP,QAAa,IAAKA,QAAQ,KAAKD,KAClC,CAAC;MAED,OAAOlC,MAAM,EAAEoC,yBAAyB,CACtCvC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC6B,OAAO,EACfe,WAAW,EACX,GAAGtC,IAAI,CAACkC,SAAS,IAAIlC,IAAI,CAACmC,QAAQ,EACpC,CAAC;IACH;IAEAtC,MAAM,EAAEoC,yBAAyB,CAC/BvC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC6B,OAAO,EACf,CAAC,IAAI7B,OAAO,CAACsC,QAAQ,CAAChC,IAAI,CAACoC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,IAAI,EAAE,CAAC,EAAEA,KAAK,CAAC,EACpE,GAAG/B,IAAI,CAACkC,SAAS,IAAIlC,IAAI,CAACmC,QAAQ,EACpC,CAAC;EACH,CAAC;EAED,MAAMK,eAAe,GAAGA,CAAA,KAAM;IAC5B,IAAI3B,UAAU,CAAC4B,OAAO,EAAE;MACtB,MAAMC,UAAU,GAAGpG,cAAc,CAACuE,UAAU,CAAC4B,OAAO,CAAC;MACrD,IAAIC,UAAU,EAAE;QACdnG,SAAS,CAACoG,OAAO,CAACD,UAAU,EAAE,CAACE,EAAE,EAAEC,EAAE,EAAEC,MAAM,EAAEC,MAAM,EAAEC,KAAK,EAAEC,KAAK,KAAK;UACtE,MAAMC,YAAY,GAAG1G,UAAU,CAAC2G,GAAG,CAAC,QAAQ,CAAC,CAACJ,MAAM;UACpD;UACA;UACA;UACA;UACA;UACA,MAAMK,WAAW,GAAG,GAAG;UACvB;UACA;UACA;UACA;UACA,MAAMC,aAAa,GACjB,CAACvD,MAAM,EAAEwD,sBAAsB,IAAI,CAAC,IAAI,EAAE;UAC5C,MAAMC,UAAU,GAAG,EAAE;UAErB,MAAMC,UAAU,GAAGN,YAAY,IAAID,KAAK,GAAGF,MAAM,CAAC,GAAGM,aAAa;UAClE,MAAMI,UAAU,GAAGR,KAAK,GAAGM,UAAU;UAErC,IAAIG,KAAa;UACjB,IAAIF,UAAU,IAAIJ,WAAW,EAAE;YAC7BM,KAAK,GAAGT,KAAK,GAAGF,MAAM;UACxB,CAAC,MAAM,IAAIU,UAAU,IAAIL,WAAW,EAAE;YACpCM,KAAK,GAAGT,KAAK,GAAGG,WAAW;UAC7B,CAAC,MAAM;YACL;YACA;YACA;YACAM,KAAK,GAAGC,IAAI,CAACC,GAAG,CACdL,UAAU,EACVL,YAAY,GAAGE,WAAW,GAAGC,aAC/B,CAAC;UACH;UAEA1C,sBAAsB,CAAC;YAAEkD,CAAC,EAAEb,KAAK;YAAEc,CAAC,EAAEJ;UAAM,CAAC,CAAC;QAChD,CAAC,CAAC;MACJ;IACF;IACArD,YAAY,CAAC,IAAI,CAAC;EACpB,CAAC;EAED,MAAM0D,WAAW,GAAGjE,MAAM,EAAEkE,iBAAiB,EAAEC,OAAO,GAClDvG,gBAAgB,CAACoC,MAAM,EAAEkE,iBAAiB,CAACE,cAAc,CAACxE,OAAO,CAACmC,IAAI,CAAC,CAAC,GACxEnE,gBAAgB,CAACgC,OAAO,CAACmC,IAAI,CAAC;EAElC,MAAMsC,QAAQ,GAAGjE,WAAW,CAACkE,GAAG,CAAC1E,OAAO,CAACa,EAAE,CAAC;EAC5C,MAAM8D,SAAS,GACb,CAACF,QAAQ,KAAKlE,KAAK,CAACmE,GAAG,CAAC1E,OAAO,CAACa,EAAE,CAAC,IAAIb,OAAO,EAAE4E,OAAO,IAAI,KAAK,CAAC;EAEnE,MAAMC,YAAY,GAAGA,CAAA,KAAM;IACzB,IAAIJ,QAAQ,EAAE;MAAChE,YAAY,CAACT,OAAO,CAACa,EAAE,CAAC;IAAC;EAC1C,CAAC;EAED,oBACEjC,KAAA,CAACnC,IAAI;IAAAqI,QAAA,GACFpE,SAAS,iBAAIlC,IAAA,CAAC/B,IAAI;MAACsI,KAAK,EAAEC,MAAM,CAACC;IAAQ,CAAE,CAAC,eAC7CrG,KAAA,CAACnC,IAAI;MACHyI,GAAG,EAAE/D,UAAW;MAChB4D,KAAK,EAAE,CACLC,MAAM,CAACG,sBAAsB,EAC7B;QACEC,cAAc,EAAEtG,MAAM,GAAG,UAAU,GAAG,YAAY;QAClDuG,YAAY,EAAE,CAAC,CAACrF,OAAO,EAAEhB,KAAK,EAAEsG,MAAM,IAAItF,OAAO,EAAEsC,QAAQ,IAAI,CAAC,CAACiD,MAAM,CAACC,IAAI,CAACxF,OAAO,EAAEsC,QAAQ,CAAC,EAAEgD,MAAM,GACpG,EAAE,GAAG;MACV,CAAC,EACD5E,SAAS,GACL;QAAE+E,SAAS,EAAE,CAAC;UAAEC,KAAK,EAAE;QAAK,CAAC,CAAC;QAAEC,YAAY,EAAE;MAAG,CAAC,GAClDC;MACJ;MACA;MAAA,CACA;MAAAd,QAAA,GAED,CAAChG,MAAM,iBACNN,IAAA,CAACmB,2BAA2B;QAC1BkG,OAAO,EAAEA,CAAA,KAAMzE,qBAAqB,CAACpB,OAAO,CAACM,IAAI,CAAE;QAAAwE,QAAA,EAElD9E,OAAO,CAACM,IAAI,EAAEwF,YAAY,gBACzBtH,IAAA,CAACiB,kBAAkB;UAACsG,MAAM,EAAE;YAAEC,GAAG,EAAEhG,OAAO,CAACM,IAAI,CAACwF;UAAa;QAAE,CAAE,CAAC,gBAElEtH,IAAA,CAACvB,MAAM;UAACgJ,QAAQ,EAAEjG,OAAO,CAACM,IAAI,CAAC4F;QAAK,CAAE;MACvC,CAC0B,CAC9B,eACD1H,IAAA,CAAC9B;MACC;MACA;MAAA;QACAyJ,WAAW,EACT/F,MAAM,EAAEgG,mBAAmB,GAAGR,SAAS,GAAG9C,eAC3C;QACDuD,cAAc,EAAE,GAAI;QAAAvB,QAAA,eAEpBlG,KAAA,CAACK,mBAAmB;UAClBH,MAAM,EAAEA,MAAO;UACfK,OAAO,EAAEa,OAAO,CAACsG,SAAU;UAC3BpH,OAAO,EAAEc,OAAO,EAAEuG,WAAW,KAAK,MAAM,IAAI,CAACvG,OAAO,EAAEsG,SAAU;UAChElH,qBAAqB,EAAEgB,MAAM,EAAEoG,YAAY,EAAEpH,qBAAsB;UACnEC,iBAAiB,EAAEe,MAAM,EAAEoG,YAAY,EAAEnH,iBAAkB;UAAAyF,QAAA,GAE1D,CAAChG,MAAM,iBACNN,IAAA,CAACqB,cAAc;YAACN,KAAK,EAAEa,MAAM,EAAEqG,MAAM,EAAEC,OAAQ;YAAA5B,QAAA,EAC5C9E,OAAO,CAACM,IAAI,CAAC4F;UAAI,CACJ,CACjB,EACA,CAACjG,OAAO,IAAID,OAAO,CAACwB,WAAW,iBAC9BhD,IAAA,CAACpB,YAAY;YACXkE,kBAAkB,EAAEA,kBAAmB;YACvCxC,MAAM,EAAEA,MAAO;YACfoD,IAAI,EAAER,IAAI,CAACC,KAAK,CAAC3B,OAAO,CAACwB,WAAW,CAAC,CAACU,IAAK;YAC3C3C,KAAK,EAAEa,MAAM,EAAEqG,MAAM,EAAEC;UAAQ,CAChC,CACF,EAEA1G,OAAO,EAAEuG,WAAW,KAAK,MAAM,IAAI,CAACvG,OAAO,EAAEsG,SAAS,gBACrD9H,IAAA,CAACX,YAAY;YACX8I,QAAQ,EAAE3G,OAAO,CAAC4G,QAAS;YAC3BvC,WAAW,EAAErE,OAAO,CAAC6G,eAAgB;YACrCC,QAAQ,EAAE9G,OAAO,EAAE8G,QAAS;YAC5B9G,OAAO,EAAEA;UAAQ,CAClB,CAAC,gBAEFxB,IAAA,CAAAE,SAAA;YAAAoG,QAAA,EACG9E,OAAO,CAACsG,SAAS,IAAItG,OAAO,CAACa,EAAE,KAAK,eAAe,gBAClDrC,IAAA,CAACnB,cAAc,IAAE,CAAC,gBAElBmB,IAAA,CAACc,iBAAiB;cAChBR,MAAM,EAAEA,MAAO;cACfU,SAAS,EAAEY,MAAM,EAAEoG,YAAY,EAAEhH,SAAU;cAC3CD,KAAK,EAAEa,MAAM,EAAEoG,YAAY,EAAEjH,KAAM;cAAAuF,QAAA,eAEnCtG,IAAA,CAACzB,IAAI;gBAAA+H,QAAA,EAAET;cAAW,CAAO;YAAC,CACT;UACpB,CACD,CACH,EACAjE,MAAM,EAAE2G,gBAAgB,iBACvBvI,IAAA,CAACV,mBAAmB;YAClBkC,OAAO,EAAEA,OAAQ;YACjBI,MAAM,EAAEA,MAAO;YACfC,UAAU,EAAEA;UAAW,CACxB,CACF,eACDzB,KAAA,CAACkB,sBAAsB;YAAAgF,QAAA,GACtB,CAAC1E,MAAM,EAAE4G,gBAAgB,IAAIlI,MAAM,IAAI6F,SAAS,iBAAInG,IAAA,CAACzB,IAAI;cAAA+H,QAAA,EAAC;YAAU,CAAM,CAAC,EAC3E,CAAC1E,MAAM,EAAE4G,gBAAgB,IAAIlI,MAAM,IAAI2F,QAAQ,iBAC9CjG,IAAA,CAACzB,IAAI;cACH8I,OAAO,EAAEhB,YAAa;cACtBE,KAAK,EAAEC,MAAM,CAACiC,UAAW;cACzBC,iBAAiB,EAAC,QAAQ;cAC1BC,kBAAkB,EAAC,uBAAuB;cAAArC,QAAA,EAC3C;YAED,CAAM,CACP,EACA,IAAIsC,IAAI,CAACpH,OAAO,CAACqH,IAAI,CAAC,CAACC,kBAAkB,CAAC,EAAE,EAAE;cAC7CC,IAAI,EAAE,SAAS;cACfC,MAAM,EAAE;YACV,CAAC,CAAC,EACD,CAACpH,MAAM,EAAE4G,gBAAgB,IAAIlI,MAAM,IAAI,CAAC6F,SAAS,IAAI,CAACF,QAAQ,iBAC7DjG,IAAA,CAACN,UAAU,IAAE,CACd;UAAA,CACqB,CAAC,EAExB8B,OAAO,EAAEhB,KAAK,EAAEsG,MAAM,IAAItF,OAAO,EAAEhB,KAAK,EAAEsG,MAAM,GAAG,CAAC,gBACjD9G,IAAA,CAACrB,oBAAoB;YACnB2B,MAAM,EAAEA,MAAO;YACf2I,OAAO,EAAEnG,kBAAmB;YAC5BtC,KAAK,EAAEgB,OAAO,EAAEhB;UAAM,CACvB,CAAC,gBAEFR,IAAA,CAAC/B,IAAI,IAAE,CACR,eAEH+B,IAAA,CAACF,aAAa;YAACQ,MAAM,EAAEA,MAAO;YAAAgG,QAAA,EAE3B9E,OAAO,CAACsC,QAAQ,IAAI,CAAClC,MAAM,EAAEsH,gBAAgB,iBAC5ClJ,IAAA,CAACH,eAAe;cACdiE,QAAQ,EAAEtC,OAAO,CAACsC,QAAS;cAC3BqF,cAAc,EAAEvF,qBAAsB;cACtC7C,KAAK,EAAEa,MAAM,EAAEqG,MAAM,EAAEC,OAAO,IAAI,SAAU;cAC5CkB,QAAQ,EAAE,GAAGtH,IAAI,CAACkC,SAAS,IAAIlC,IAAI,CAACmC,QAAQ;YAAG,CAChD;UACF,CACY,CAAC;QAAA,CACK;MAAC,CACb,CAAC;IAAA,CACR,CAAC,EACN,CAACrC,MAAM,EAAEgG,mBAAmB,IAAI1F,SAAS,iBACxClC,IAAA,CAACtB,mBAAmB;MAClB2K,QAAQ,EAAE7G,mBAAoB;MAC9Bf,OAAO,EAAEA,OAAQ;MACjBnB,MAAM,EAAEA,MAAO;MACfkB,OAAO,EAAEA,OAAQ;MACjB8H,SAAS,EAAEA,CAAA,KAAMnH,YAAY,CAAC,KAAK,CAAE;MACrCW,kBAAkB,EAAEA,kBAAmB;MACvCQ,mBAAmB,EAAEA,mBAAoB;MACzCG,iBAAiB,EAAEA,iBAAkB;MACrCG,qBAAqB,EAAEA;IAAsB,CAC9C,CACF;EAAA,CACG,CAAC;AAEX,CAAC;AAED,SAASrC,OAAO;AAEhB,MAAMiF,MAAM,GAAGrI,UAAU,CAACoL,MAAM,CAAC;EAC/B5C,sBAAsB,EAAE;IACtB6C,aAAa,EAAE,KAAK;IACpBC,OAAO,EAAE,EAAE;IACXC,UAAU,EAAE,UAAU;IACtBL,QAAQ,EAAE;EACZ,CAAC;EACD5C,OAAO,EAAE;IACP,GAAGtI,UAAU,CAACwL,kBAAkB;IAChCN,QAAQ,EAAE,UAAU;IACpBO,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,MAAM;IACbjF,MAAM,EAAE;IACR;EACF,CAAC;EACDkF,SAAS,EAAE;IACTC,QAAQ,EAAE,EAAE;IACZjJ,KAAK,EAAE,MAAM;IACbkJ,SAAS,EAAE,CAAC;IACZC,SAAS,EAAE;EACb,CAAC;EACDzB,UAAU,EAAE;IACV1H,KAAK,EAAE,SAAS;IAChBoJ,UAAU,EAAE,KAAK;IACjBC,WAAW,EAAE;EACf;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useRef","useState","View","Pressable","StyleSheet","findNodeHandle","UIManager","Text","useDispatch","Avatar","MessageInteractions","BottomReplyContainer","MessageReply","DeletedMessage","setActiveModal","setDeleteModal","setSelectedUser","MODAL_TYPES","setActiveMessage","setEditAction","styled","MediaMessage","MessageTranslations","useChatSettingState","parseMessageBody","useMessageHeapState","DoubleTick","useXmppClient","useSendMessage","MessageReaction","MessageFooter","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CustomMessageContainer","isUser","props","reply","CustomMessageBubble","isMedia","deleted","backgroundMessageUser","backgroundMessage","CustomMessageText","color","colorUser","CustomMessagePhoto","Image","CustomMessagePhotoContainer","TouchableOpacity","CustomUserName","media","CustomMessageTimestamp","CustomTimestampRow","Message","message","isReply","dispatch","client","config","langSource","user","idSet","failedIdSet","retryMessage","isPressed","setIsPressed","__DEV__","id","globalThis","__loggedMsg","contextMenuPosition","setContextMenuPosition","timerRef","messageRef","bubbleRef","handleUserAvatarClick","PROFILE","handleReplyMessage","isEdit","mainMessage","messageCore","JSON","parse","chatJID","roomJid","handleDeleteMessage","isDeleteModal","messageId","handleEditMessage","text","body","handleReactionMessage","emoji","reaction","sendMessageReactionStanza","firstName","lastName","xmppUsername","includes","filterEmoji","filter","handleLongPress","target","current","nodeHandle","measure","_x","_y","width","height","pageX","pageY","left","right","top","bottom","messageText","messageTextFilter","enabled","filterFunction","isFailed","has","isPending","pending","onRetryPress","children","style","styles","overlay","ref","customMessageContainer","justifyContent","marginBottom","length","Object","keys","transform","scale","paddingRight","undefined","onPress","profileImage","source","uri","username","name","flex","alignItems","onLongPress","disableInteractions","delayLongPress","collapsable","isDeleted","isMediafile","messageColor","colors","primary","mimeType","mimetype","locationPreview","location","enableTranslates","disableSentLogic","timestampText","failedText","accessibilityRole","accessibilityLabel","Date","date","toLocaleTimeString","hour","minute","onClick","disableReactions","changeReaction","userName","position","closeMenu","create","flexDirection","padding","absoluteFillObject","timestamp","fontSize","marginTop","alignSelf","fontWeight","marginRight","timestampRow","gap","lineHeight","includeFontPadding","textAlignVertical"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/Message.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC/C,SACEC,IAAI,EACJC,SAAS,EACTC,UAAU,EACVC,cAAc,EACdC,SAAS,EACTC,IAAI,QACC,cAAc;AACrB,SAASC,WAAW,QAAqB,aAAa;AAEtD,SAASC,MAAM,QAAQ,UAAU;AACjC,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SACEC,cAAc,EACdC,cAAc,EACdC,eAAe,QACV,mCAAmC;AAC1C,SAASC,WAAW,QAAQ,qCAAqC;AACjE,SAASC,gBAAgB,EAAEC,aAAa,QAAQ,4BAA4B;AAC5E,OAAOC,MAAM,MAAM,0BAA0B;AAE7C,OAAOC,YAAY,MAAM,gCAAgC;AACzD,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,gBAAgB,QAAQ,gCAAgC;AACjE,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,cAAc,QAAQ,4BAA4B;AAC3D,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,aAAa,QAAQ,4BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE3D,MAAMC,sBAAsB,GAAGjB,MAAM,CAAClB,IAAyC;AAC/E;AACA;AACA;AACA,qBAAqB,CAAC;EAAEoC;AAAO,CAAC,KAAMA,MAAM,GAAG,UAAU,GAAG,YAAa;AACzE,mBAAoBC,KAAK,IAAMA,KAAK,CAACC,KAAK,GAAG,MAAM,GAAG,KAAM;AAC5D,CAAC;AAED,MAAMC,mBAAmB,GAAGrB,MAAM,CAAClB,IAMjC;AACF;AACA;AACA,eAAe,CAAC;EAAEwC;AAAQ,CAAC,KAAMA,OAAO,GAAG,GAAG,GAAG,KAAM;AACvD,iBAAiB,CAAC;EAAEA,OAAO;EAAEJ;AAAO,CAAC,KACjCI,OAAO,GAAIJ,MAAM,GAAG,UAAU,GAAG,YAAY,GAAI,SAAS;AAC9D,aAAa,CAAC;EAACI;AAAO,CAAC,KAAKA,OAAO,GAAG,GAAG,GAAG,IAAI;AAChD,oBAAoB,CAAC;EAACA;AAAO,CAAC,KAAKA,OAAO,GAAG,GAAG,GAAG,IAAI;AACvD,kBAAkB,CAAC;EAACJ;AAAM,CAAC,KAAKA,MAAM,GAAG,GAAG,GAAG,MAAM;AACrD,iBAAiB,CAAC;EAACA;AAAM,CAAC,KAAKA,MAAM,GAAG,MAAM,GAAG,GAAG;AACpD;AACA;AACA,+BAA+B,CAAC;EAAEA;AAAO,CAAC,KAAMA,MAAM,GAAG,IAAI,GAAG,GAAI;AACpE,gCAAgC,CAAC;EAAEA;AAAO,CAAC,KAAMA,MAAM,GAAG,GAAG,GAAG,IAAK;AACrE,sBAAsB,CAAC;EACnBA,MAAM;EACNK,OAAO;EACPC,qBAAqB;EACrBC;AACF,CAAC,KACCF,OAAO,GACH,SAAS,GACTL,MAAM,GACNM,qBAAqB,IAAI,SAAS,GAClCC,iBAAiB,IAAI,MAAM;AACnC,CAAC;AAED,MAAMC,iBAAiB,GAAG1B,MAAM,CAACb,IAI/B;AACF;AACA,WAAW,CAAC;EAAEwC,KAAK;EAAEC,SAAS;EAAEV;AAAO,CAAC,KACpCA,MAAM,GAAGU,SAAS,IAAI,MAAM,GAAGD,KAAK,IAAI,MAAM;AAClD,CAAC;AAED,MAAME,kBAAkB,GAAG7B,MAAM,CAAC8B,KAAK;AACvC;AACA;AACA;AACA,CAAC;AAED,MAAMC,2BAA2B,GAAG/B,MAAM,CAACgC,gBAAgB;AAC3D;AACA,CAAC;AAED,MAAMC,cAAc,GAAGjC,MAAM,CAACb,IAAwC;AACtE;AACA;AACA;AACA,kBAAkB,CAAC;EAAC+C;AAAK,CAAC,KAAKA,KAAK,GAAG,MAAM,GAAE,CAAC;AAChD,iBAAiB,CAAC;EAACA;AAAK,CAAC,KAAKA,KAAK,GAAG,KAAK,GAAE,CAAC;AAC9C,WAAW,CAAC;EAAEP;AAAM,CAAC,KAAKA,KAAK,IAAI,MAAM;AACzC,CAAC;AAED,MAAMQ,sBAAsB,GAAGnC,MAAM,CAACb,IAIpC;AACF;AACA;AACA,WAAW,CAAC;EAAE+B,MAAM;EAAES,KAAK;EAAEC;AAAU,CAAC,KACpCV,MAAM,GAAGU,SAAS,IAAI,MAAM,GAAGD,KAAK,IAAI,MAAM;AAClD;AACA;AACA,CAAC;AAED,MAAMS,kBAAkB,GAAGpC,MAAM,CAAClB,IAAsB;AACxD;AACA;AACA;AACA;AACA;AACA,mBAAmB,CAAC;EAACoD;AAAK,CAAC,KAAKA,KAAK,GAAG,MAAM,GAAE,CAAC;AACjD,CAAC;AAED,MAAMG,OAA+B,GAAGA,CAAC;EAAEC,OAAO;EAAEpB,MAAM;EAAEqB;AAAQ,CAAC,KAAK;EACxE,MAAMC,QAAQ,GAAGpD,WAAW,CAAC,CAAC;EAC9B,MAAM;IAAEqD;EAAO,CAAC,GAAGlC,aAAa,CAAC,CAAC;EAClC,MAAM;IAAEmC,MAAM;IAAEC,UAAU;IAAEC;EAAI,CAAC,GAAGzC,mBAAmB,CAAC,CAAC;EACzD,MAAM;IAAE0C,KAAK;IAAEC;EAAY,CAAC,GAAGzC,mBAAmB,CAAC,CAAC;EACpD,MAAM;IAAE0C;EAAa,CAAC,GAAGvC,cAAc,CAAC,CAAC;EAEzC,MAAM,CAACwC,SAAS,EAAEC,YAAY,CAAC,GAAGpE,QAAQ,CAAC,KAAK,CAAC;EAEjD,IAAIqE,OAAO,IAAIZ,OAAO,CAACa,EAAE,IAAI,CAAEC,UAAU,CAASC,WAAW,GAAGf,OAAO,CAACa,EAAE,CAAC,EAAE;IAC3E,CAAEC,UAAU,CAASC,WAAW,KAAK,CAAC,CAAC,EAAEf,OAAO,CAACa,EAAE,CAAC,GAAG,IAAI;EAC7D;EAEA,MAAM,CAACG,mBAAmB,EAAEC,sBAAsB,CAAC,GAAG1E,QAAQ,CAKpD,IAAI,CAAC;EAEf,MAAM2E,QAAQ,GAAG5E,MAAM,CAAwB,IAAI,CAAC;EACpD,MAAM6E,UAAU,GAAG7E,MAAM,CAAO,IAAI,CAAC;EACrC,MAAM8E,SAAS,GAAG9E,MAAM,CAAO,IAAI,CAAC;EAEpC,MAAM+E,qBAAqB,GAAIf,IAAW,IAAW;IACnDJ,QAAQ,CAAC9C,cAAc,CAACG,WAAW,CAAC+D,OAAO,CAAC,CAAC;IAC7CpB,QAAQ,CAAC5C,eAAe,CAACgD,IAAI,CAAC,CAAC;EACjC,CAAC;EAED,MAAMiB,kBAAkB,GAAGA,CAAA,KAAM;IAC/BrB,QAAQ,CAACzC,aAAa,CAAC;MAAE+D,MAAM,EAAE;IAAM,CAAC,CAAC,CAAC;IAE1C,IAAI,CAACvB,OAAO,IAAID,OAAO,CAACyB,WAAW,EAAE;MACnC,MAAMC,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAC5B,OAAO,CAACyB,WAAW,CAAC;MACnDvB,QAAQ,CACN1C,gBAAgB,CAAC;QAAEqD,EAAE,EAAEa,WAAW,CAACb,EAAE;QAAEgB,OAAO,EAAEH,WAAW,CAACI;MAAQ,CAAC,CACvE,CAAC;MAED,OAAOnB,YAAY,CAAC,KAAK,CAAC;IAC5B;IAEAT,QAAQ,CAAC1C,gBAAgB,CAAC;MAAEqD,EAAE,EAAEb,OAAO,CAACa,EAAE;MAAEgB,OAAO,EAAE7B,OAAO,CAAC8B;IAAQ,CAAC,CAAC,CAAC;IAExE,OAAOnB,YAAY,CAAC,KAAK,CAAC;EAC5B,CAAC;EAED,MAAMoB,mBAAmB,GAAGA,CAAA,KAAM;IAChC7B,QAAQ,CACN7C,cAAc,CAAC;MACb2E,aAAa,EAAE,IAAI;MACnBF,OAAO,EAAE9B,OAAO,CAAC8B,OAAO;MACxBG,SAAS,EAAEjC,OAAO,CAACa;IACrB,CAAC,CACH,CAAC;IACDF,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC;EAED,MAAMuB,iBAAiB,GAAGA,CAAA,KAAM;IAC9BhC,QAAQ,CACNzC,aAAa,CAAC;MACZ+D,MAAM,EAAE,IAAI;MACZM,OAAO,EAAE9B,OAAO,CAAC8B,OAAO;MACxBG,SAAS,EAAEjC,OAAO,CAACa,EAAE;MACrBsB,IAAI,EAAEnC,OAAO,CAACoC;IAChB,CAAC,CACH,CAAC;IAED,OAAOzB,YAAY,CAAC,KAAK,CAAC;EAC5B,CAAC;;EAED;EACA;EACA;EACA;;EAEA,MAAM0B,qBAAqB,GAAIC,KAAa,IAAK;IAC/C,IAAI,CAACtC,OAAO,CAACuC,QAAQ,EAAE;MACrB,OAAOpC,MAAM,EAAEqC,yBAAyB,CACtCxC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC8B,OAAO,EACf,CAACQ,KAAK,CAAC,EACP,GAAGhC,IAAI,CAACmC,SAAS,IAAInC,IAAI,CAACoC,QAAQ,EACpC,CAAC;IACH;IACA,IACE1C,OAAO,CAACuC,QAAQ,IAChBvC,OAAO,CAACuC,QAAQ,CAACjC,IAAI,CAACqC,YAAY,IAAI,EAAE,CAAC,IACzC3C,OAAO,CAACuC,QAAQ,CAACjC,IAAI,CAACqC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,CAACM,QAAQ,CAACN,KAAK,CAAC,EAChE;MACA,MAAMO,WAAW,GAAG7C,OAAO,CAACuC,QAAQ,CAACjC,IAAI,CAACqC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,CAACQ,MAAM,CACxEP,QAAa,IAAKA,QAAQ,KAAKD,KAClC,CAAC;MAED,OAAOnC,MAAM,EAAEqC,yBAAyB,CACtCxC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC8B,OAAO,EACfe,WAAW,EACX,GAAGvC,IAAI,CAACmC,SAAS,IAAInC,IAAI,CAACoC,QAAQ,EACpC,CAAC;IACH;IAEAvC,MAAM,EAAEqC,yBAAyB,CAC/BxC,OAAO,CAACa,EAAE,EACVb,OAAO,CAAC8B,OAAO,EACf,CAAC,IAAI9B,OAAO,CAACuC,QAAQ,CAACjC,IAAI,CAACqC,YAAY,IAAI,EAAE,CAAC,EAAEL,KAAK,IAAI,EAAE,CAAC,EAAEA,KAAK,CAAC,EACpE,GAAGhC,IAAI,CAACmC,SAAS,IAAInC,IAAI,CAACoC,QAAQ,EACpC,CAAC;EACH,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA,MAAMK,eAAe,GAAGA,CAAA,KAAM;IAC5B,MAAMC,MAAM,GAAG5B,SAAS,CAAC6B,OAAO,IAAI9B,UAAU,CAAC8B,OAAO;IACtD,IAAID,MAAM,EAAE;MACV,MAAME,UAAU,GAAGvG,cAAc,CAACqG,MAAM,CAAC;MACzC,IAAIE,UAAU,EAAE;QACdtG,SAAS,CAACuG,OAAO,CAACD,UAAU,EAAE,CAACE,EAAE,EAAEC,EAAE,EAAEC,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAEC,KAAK,KAAK;UACrExC,sBAAsB,CAAC;YACrByC,IAAI,EAAEF,KAAK;YACXG,KAAK,EAAEH,KAAK,GAAGF,KAAK;YACpBM,GAAG,EAAEH,KAAK;YACVI,MAAM,EAAEJ,KAAK,GAAGF;UAClB,CAAC,CAAC;QACJ,CAAC,CAAC;MACJ;IACF;IACA5C,YAAY,CAAC,IAAI,CAAC;EACpB,CAAC;EAED,MAAMmD,WAAW,GAAG1D,MAAM,EAAE2D,iBAAiB,EAAEC,OAAO,GAClDlG,gBAAgB,CAACsC,MAAM,EAAE2D,iBAAiB,CAACE,cAAc,CAACjE,OAAO,CAACoC,IAAI,CAAC,CAAC,GACxEtE,gBAAgB,CAACkC,OAAO,CAACoC,IAAI,CAAC;EAElC,MAAM8B,QAAQ,GAAG1D,WAAW,CAAC2D,GAAG,CAACnE,OAAO,CAACa,EAAE,CAAC;EAC5C,MAAMuD,SAAS,GACb,CAACF,QAAQ,KAAK3D,KAAK,CAAC4D,GAAG,CAACnE,OAAO,CAACa,EAAE,CAAC,IAAIb,OAAO,EAAEqE,OAAO,IAAI,KAAK,CAAC;EAEnE,MAAMC,YAAY,GAAGA,CAAA,KAAM;IACzB,IAAIJ,QAAQ,EAAE;MAACzD,YAAY,CAACT,OAAO,CAACa,EAAE,CAAC;IAAC;EAC1C,CAAC;EAED,oBACEnC,KAAA,CAAClC,IAAI;IAAA+H,QAAA,GACF7D,SAAS,iBAAIpC,IAAA,CAAC9B,IAAI;MAACgI,KAAK,EAAEC,MAAM,CAACC;IAAQ,CAAE,CAAC,eAC7ChG,KAAA,CAAClC,IAAI;MACHmI,GAAG,EAAExD,UAAW;MAChBqD,KAAK,EAAE,CACLC,MAAM,CAACG,sBAAsB,EAC7B;QACEC,cAAc,EAAEjG,MAAM,GAAG,UAAU,GAAG,YAAY;QAClDkG,YAAY,EAAE,CAAC,CAAC9E,OAAO,EAAElB,KAAK,EAAEiG,MAAM,IAAI/E,OAAO,EAAEuC,QAAQ,IAAI,CAAC,CAACyC,MAAM,CAACC,IAAI,CAACjF,OAAO,EAAEuC,QAAQ,CAAC,EAAEwC,MAAM,GACpG,EAAE,GAAG;MACV,CAAC,EACDrE,SAAS,GACL;QAAEwE,SAAS,EAAE,CAAC;UAAEC,KAAK,EAAE;QAAK,CAAC,CAAC;QAAEC,YAAY,EAAE;MAAG,CAAC,GAClDC;MACJ;MACA;MAAA,CACA;MAAAd,QAAA,GAED,CAAC3F,MAAM,iBACNN,IAAA,CAACmB,2BAA2B;QAC1B6F,OAAO,EAAEA,CAAA,KAAMjE,qBAAqB,CAACrB,OAAO,CAACM,IAAI,CAAE;QAAAiE,QAAA,EAElDvE,OAAO,CAACM,IAAI,EAAEiF,YAAY,gBACzBjH,IAAA,CAACiB,kBAAkB;UAACiG,MAAM,EAAE;YAAEC,GAAG,EAAEzF,OAAO,CAACM,IAAI,CAACiF;UAAa;QAAE,CAAE,CAAC,gBAElEjH,IAAA,CAACvB,MAAM;UAAC2I,QAAQ,EAAE1F,OAAO,CAACM,IAAI,CAACqF;QAAK,CAAE;MACvC,CAC0B,CAC9B,eACDrH,IAAA,CAAC7B;MACC;MACA;MACA;MACA;MACA;MAAA;QACA+H,KAAK,EAAE;UACLoB,IAAI,EAAE,CAAC;UACPC,UAAU,EAAEjH,MAAM,GAAG,UAAU,GAAG;QACpC;QACA;QACA;QAAA;QACAkH,WAAW,EACT1F,MAAM,EAAE2F,mBAAmB,GAAGV,SAAS,GAAGtC,eAC3C;QACDiD,cAAc,EAAE,GAAI;QAAAzB,QAAA,eAEpB7F,KAAA,CAACK,mBAAmB;UACX4F,GAAG,EAAEvD,SAAS;UAAE6E,WAAW,EAAE,KAAK;UACzCrH,MAAM,EAAEA,MAAO;UACfK,OAAO,EAAEe,OAAO,CAACkG,SAAU;UAC3BlH,OAAO,EAAEgB,OAAO,EAAEmG,WAAW,KAAK,MAAM,IAAI,CAACnG,OAAO,EAAEkG,SAAU;UAChEhH,qBAAqB,EAAEkB,MAAM,EAAEgG,YAAY,EAAElH,qBAAsB;UACnEC,iBAAiB,EAAEiB,MAAM,EAAEgG,YAAY,EAAEjH,iBAAkB;UAAAoF,QAAA,GAE1D,CAAC3F,MAAM,iBACNN,IAAA,CAACqB,cAAc;YAACN,KAAK,EAAEe,MAAM,EAAEiG,MAAM,EAAEC,OAAQ;YAAC1G,KAAK,EAAEI,OAAO,EAAEmG,WAAW,KAAK,MAAO;YAAA5B,QAAA,EACpFvE,OAAO,CAACM,IAAI,CAACqF;UAAI,CACJ,CACjB,EACA,CAAC1F,OAAO,IAAID,OAAO,CAACyB,WAAW,iBAC9BnD,IAAA,CAACpB,YAAY;YACXqE,kBAAkB,EAAEA,kBAAmB;YACvC3C,MAAM,EAAEA,MAAO;YACfuD,IAAI,EAAER,IAAI,CAACC,KAAK,CAAC5B,OAAO,CAACyB,WAAW,CAAC,CAACU,IAAK;YAC3C9C,KAAK,EAAEe,MAAM,EAAEiG,MAAM,EAAEC;UAAQ,CAChC,CACF,EAEAtG,OAAO,EAAEmG,WAAW,KAAK,MAAM,IAAI,CAACnG,OAAO,EAAEkG,SAAS,gBACrD5H,IAAA,CAACX,YAAY;YACX4I,QAAQ,EAAEvG,OAAO,CAACwG,QAAS;YAC3B1C,WAAW,EAAE9D,OAAO,CAACyG,eAAgB;YACrCC,QAAQ,EAAE1G,OAAO,EAAE0G,QAAS;YAC5B1G,OAAO,EAAEA,OAAQ;YACjBpB,MAAM,EAAEA;UAAO,CAChB,CAAC,gBAEFN,IAAA,CAAAE,SAAA;YAAA+F,QAAA,EACGvE,OAAO,CAACkG,SAAS,IAAIlG,OAAO,CAACa,EAAE,KAAK,eAAe,gBAClDvC,IAAA,CAACnB,cAAc,IAAE,CAAC,gBAElBmB,IAAA,CAACc,iBAAiB;cAChBR,MAAM,EAAEA,MAAO;cACfU,SAAS,EAAEc,MAAM,EAAEgG,YAAY,EAAE9G,SAAU;cAC3CD,KAAK,EAAEe,MAAM,EAAEgG,YAAY,EAAE/G,KAAM;cAAAkF,QAAA,eAEnCjG,IAAA,CAACzB,IAAI;gBAAA0H,QAAA,EAAET;cAAW,CAAO;YAAC,CACT;UACpB,CACD,CACH,EACA1D,MAAM,EAAEuG,gBAAgB,iBACvBrI,IAAA,CAACV,mBAAmB;YAClBoC,OAAO,EAAEA,OAAQ;YACjBI,MAAM,EAAEA,MAAO;YACfC,UAAU,EAAEA;UAAW,CACxB,CACF,eAED3B,KAAA,CAACoB,kBAAkB;YAACF,KAAK,EAAEI,OAAO,EAAEmG,WAAW,KAAK,MAAO;YAAA5B,QAAA,GACxD,CAACnE,MAAM,EAAEwG,gBAAgB,IAAIhI,MAAM,IAAIwF,SAAS,iBAC/C9F,IAAA,CAACzB,IAAI;cAAC2H,KAAK,EAAEC,MAAM,CAACoC,aAAc;cAAAtC,QAAA,EAAC;YAAU,CAAM,CACpD,EACA,CAACnE,MAAM,EAAEwG,gBAAgB,IAAIhI,MAAM,IAAIsF,QAAQ,iBAC9C5F,IAAA,CAACzB,IAAI;cACHyI,OAAO,EAAEhB,YAAa;cACtBE,KAAK,EAAEC,MAAM,CAACqC,UAAW;cACzBC,iBAAiB,EAAC,QAAQ;cAC1BC,kBAAkB,EAAC,uBAAuB;cAAAzC,QAAA,EAC3C;YAED,CAAM,CACP,eACDjG,IAAA,CAACzB,IAAI;cAAC2H,KAAK,EAAEC,MAAM,CAACoC,aAAc;cAAAtC,QAAA,EAC/B,IAAI0C,IAAI,CAACjH,OAAO,CAACkH,IAAI,CAAC,CAACC,kBAAkB,CAAC,EAAE,EAAE;gBAC7CC,IAAI,EAAE,SAAS;gBACfC,MAAM,EAAE;cACV,CAAC;YAAC,CACE,CAAC,EACN,CAACjH,MAAM,EAAEwG,gBAAgB,IAAIhI,MAAM,IAAI,CAACwF,SAAS,IAAI,CAACF,QAAQ,iBAC7D5F,IAAA,CAACN,UAAU,IAAE,CACd;UAAA,CACiB,CAAC,EAEtBgC,OAAO,EAAElB,KAAK,EAAEiG,MAAM,IAAI/E,OAAO,EAAElB,KAAK,EAAEiG,MAAM,GAAG,CAAC,gBACjDzG,IAAA,CAACrB,oBAAoB;YACnB2B,MAAM,EAAEA,MAAO;YACf0I,OAAO,EAAE/F,kBAAmB;YAC5BzC,KAAK,EAAEkB,OAAO,EAAElB;UAAM,CACvB,CAAC,gBAEFR,IAAA,CAAC9B,IAAI,IAAE,CACR,eAEH8B,IAAA,CAACF,aAAa;YAACQ,MAAM,EAAEA,MAAO;YAAA2F,QAAA,EAE3BvE,OAAO,CAACuC,QAAQ,IAAI,CAACnC,MAAM,EAAEmH,gBAAgB,iBAC5CjJ,IAAA,CAACH,eAAe;cACdoE,QAAQ,EAAEvC,OAAO,CAACuC,QAAS;cAC3BiF,cAAc,EAAEnF,qBAAsB;cACtChD,KAAK,EAAEe,MAAM,EAAEiG,MAAM,EAAEC,OAAO,IAAI,SAAU;cAC5CmB,QAAQ,EAAE,GAAGnH,IAAI,CAACmC,SAAS,IAAInC,IAAI,CAACoC,QAAQ;YAAG,CAChD;UACF,CACY,CAAC;QAAA,CACK;MAAC,CACb,CAAC;IAAA,CACR,CAAC,EACN,CAACtC,MAAM,EAAE2F,mBAAmB,IAAIrF,SAAS,iBACxCpC,IAAA,CAACtB,mBAAmB;MAClB0K,QAAQ,EAAE1G,mBAAoB;MAC9Bf,OAAO,EAAEA,OAAQ;MACjBrB,MAAM,EAAEA,MAAO;MACfoB,OAAO,EAAEA,OAAQ;MACjB2H,SAAS,EAAEA,CAAA,KAAMhH,YAAY,CAAC,KAAK,CAAE;MACrCY,kBAAkB,EAAEA,kBAAmB;MACvCQ,mBAAmB,EAAEA,mBAAoB;MACzCG,iBAAiB,EAAEA,iBAAkB;MACrCG,qBAAqB,EAAEA;IAAsB,CAC9C,CACF;EAAA,CACG,CAAC;AAEX,CAAC;AAED,SAAStC,OAAO;AAEhB,MAAM0E,MAAM,GAAG/H,UAAU,CAACkL,MAAM,CAAC;EAC/BhD,sBAAsB,EAAE;IACtBiD,aAAa,EAAE,KAAK;IACpBC,OAAO,EAAE,EAAE;IACXjC,UAAU,EAAE,UAAU;IACtB6B,QAAQ,EAAE;EACZ,CAAC;EACDhD,OAAO,EAAE;IACP,GAAGhI,UAAU,CAACqL,kBAAkB;IAChCL,QAAQ,EAAE,UAAU;IACpB9D,GAAG,EAAE,CAAC;IACNF,IAAI,EAAE,CAAC;IACPJ,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE;IACR;EACF,CAAC;EACDyE,SAAS,EAAE;IACTC,QAAQ,EAAE,EAAE;IACZ5I,KAAK,EAAE,MAAM;IACb6I,SAAS,EAAE,CAAC;IACZC,SAAS,EAAE;EACb,CAAC;EACDrB,UAAU,EAAE;IACVzH,KAAK,EAAE,SAAS;IAChB+I,UAAU,EAAE,KAAK;IACjBC,WAAW,EAAE;EACf,CAAC;EACD;EACA;EACA;EACA;EACA;EACAC,YAAY,EAAE;IACZT,aAAa,EAAE,KAAK;IACpBhC,UAAU,EAAE,QAAQ;IACpBsC,SAAS,EAAE,UAAU;IACrBD,SAAS,EAAE,CAAC;IACZK,GAAG,EAAE;EACP,CAAC;EACD1B,aAAa,EAAE;IACboB,QAAQ,EAAE,EAAE;IACZO,UAAU,EAAE,EAAE;IACdnJ,KAAK,EAAE,MAAM;IACboJ,kBAAkB,EAAE,KAAK;IACzBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import React, { useMemo } from 'react';
3
+ import React, { useMemo, useState } from 'react';
4
4
  import { Delimeter, MenuItem } from '../ContextMenu/ContextMenuComponents';
5
5
  import { useSelector } from 'react-redux';
6
6
  import { MESSAGE_INTERACTIONS, MESSAGE_INTERACTIONS_ICONS } from '../../helpers/constants/MESSAGE_INTERACTIONS';
7
- import { Modal, Text, StyleSheet, View, Pressable } from 'react-native';
7
+ import { Modal, Text, StyleSheet, View, Pressable, Dimensions } from 'react-native';
8
8
  import * as Clipboard from 'expo-clipboard';
9
9
  import { useToast } from '../../context/ToastContext';
10
10
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
@@ -22,6 +22,22 @@ const MessageInteractions = ({
22
22
  showToast
23
23
  } = useToast();
24
24
  const config = useSelector(state => state.chatSettingStore.config);
25
+ const [menuSize, setMenuSize] = useState({
26
+ width: 0,
27
+ height: 0
28
+ });
29
+ const handleMenuLayout = e => {
30
+ const {
31
+ width,
32
+ height
33
+ } = e.nativeEvent.layout;
34
+ if (width && height && (width !== menuSize.width || height !== menuSize.height)) {
35
+ setMenuSize({
36
+ width,
37
+ height
38
+ });
39
+ }
40
+ };
25
41
  const handleCopyMessage = async text => {
26
42
  try {
27
43
  await Clipboard.setStringAsync(text);
@@ -46,19 +62,43 @@ const MessageInteractions = ({
46
62
  replyMessage();
47
63
  };
48
64
  const memoPosition = useMemo(() => {
49
- if (position) {
50
- if (isUser) {
51
- return {
52
- top: position.y,
53
- right: 10
54
- };
55
- }
65
+ if (!position) {
66
+ return undefined;
67
+ }
68
+ if (!menuSize.width || !menuSize.height) {
56
69
  return {
57
- top: position.y,
58
- left: 10
70
+ top: position.bottom,
71
+ left: position.left,
72
+ opacity: 0
59
73
  };
60
74
  }
61
- }, [position, isUser]);
75
+ const {
76
+ width: screenWidth,
77
+ height: screenHeight
78
+ } = Dimensions.get('window');
79
+ const bottomReserve = (config?.keyboardVerticalOffset ?? 0) + 24;
80
+ const topReserve = 16;
81
+ const sideMargin = 8;
82
+ const spaceBelow = screenHeight - position.bottom - bottomReserve;
83
+ const spaceAbove = position.top - topReserve;
84
+ let top;
85
+ if (spaceBelow >= menuSize.height) {
86
+ top = position.bottom;
87
+ } else if (spaceAbove >= menuSize.height) {
88
+ top = position.top - menuSize.height;
89
+ } else {
90
+ top = Math.max(topReserve, screenHeight - menuSize.height - bottomReserve);
91
+ }
92
+ const leftMargin = position.left;
93
+ const rightMargin = screenWidth - position.right;
94
+ const rightAligned = rightMargin < leftMargin;
95
+ let left = rightAligned ? position.right - menuSize.width : position.left;
96
+ left = Math.max(sideMargin, Math.min(left, screenWidth - menuSize.width - sideMargin));
97
+ return {
98
+ top,
99
+ left
100
+ };
101
+ }, [position, menuSize, config?.keyboardVerticalOffset]);
62
102
  if (config?.disableInteractions) {
63
103
  return null;
64
104
  }
@@ -74,20 +114,26 @@ const MessageInteractions = ({
74
114
  onPress: closeMenu
75
115
  }), /*#__PURE__*/_jsxs(View, {
76
116
  style: [styles.contextMenu, memoPosition],
117
+ onLayout: handleMenuLayout,
77
118
  children: [/*#__PURE__*/_jsxs(MenuItem, {
78
119
  onPress: () => handleCopyMessage(message.body),
79
120
  children: [/*#__PURE__*/_jsx(Text, {
121
+ style: styles.menuText,
80
122
  children: MESSAGE_INTERACTIONS.COPY
81
123
  }), /*#__PURE__*/_jsx(MESSAGE_INTERACTIONS_ICONS.COPY, {})]
82
124
  }), isUser && /*#__PURE__*/_jsxs(_Fragment, {
83
- children: [/*#__PURE__*/_jsx(Delimeter, {}), /*#__PURE__*/_jsxs(MenuItem, {
84
- onPress: handleEditMessage,
85
- children: [/*#__PURE__*/_jsx(Text, {
86
- children: MESSAGE_INTERACTIONS.EDIT
87
- }), /*#__PURE__*/_jsx(MESSAGE_INTERACTIONS_ICONS.EDIT, {})]
125
+ children: [message?.isMediafile !== 'true' && /*#__PURE__*/_jsxs(_Fragment, {
126
+ children: [/*#__PURE__*/_jsx(Delimeter, {}), /*#__PURE__*/_jsxs(MenuItem, {
127
+ onPress: handleEditMessage,
128
+ children: [/*#__PURE__*/_jsx(Text, {
129
+ style: styles.menuText,
130
+ children: MESSAGE_INTERACTIONS.EDIT
131
+ }), /*#__PURE__*/_jsx(MESSAGE_INTERACTIONS_ICONS.EDIT, {})]
132
+ })]
88
133
  }), /*#__PURE__*/_jsx(Delimeter, {}), /*#__PURE__*/_jsxs(MenuItem, {
89
134
  onPress: handleDeleteMessage,
90
135
  children: [/*#__PURE__*/_jsx(Text, {
136
+ style: styles.menuText,
91
137
  children: MESSAGE_INTERACTIONS.DELETE
92
138
  }), /*#__PURE__*/_jsx(MESSAGE_INTERACTIONS_ICONS.DELETE, {})]
93
139
  })]
@@ -105,18 +151,32 @@ const styles = StyleSheet.create({
105
151
  contextMenu: {
106
152
  position: 'absolute',
107
153
  backgroundColor: 'white',
108
- paddingVertical: 8,
109
- paddingHorizontal: 16,
110
- borderRadius: 8,
154
+ paddingVertical: 4,
155
+ paddingHorizontal: 8,
156
+ borderRadius: 12,
111
157
  shadowColor: '#000',
112
158
  shadowOffset: {
113
159
  width: 0,
114
160
  height: 2
115
161
  },
116
- shadowOpacity: 0.25,
117
- shadowRadius: 4,
118
- elevation: 5,
119
- minWidth: 180
162
+ shadowOpacity: 0.18,
163
+ shadowRadius: 8,
164
+ elevation: 6,
165
+ minWidth: 180,
166
+ // Clip the children to the rounded corners (the hairline dividers
167
+ // run full width; without this they'd poke past the rounding on
168
+ // Android).
169
+ overflow: 'hidden'
170
+ },
171
+ // Explicit label styling so rows are the same height on both platforms
172
+ // — Android's default includeFontPadding made the menu rows taller and
173
+ // misaligned vs iOS. marginRight keeps the label off the trailing icon.
174
+ menuText: {
175
+ fontSize: 16,
176
+ color: '#141414',
177
+ includeFontPadding: false,
178
+ textAlignVertical: 'center',
179
+ marginRight: 16
120
180
  }
121
181
  });
122
182
  //# sourceMappingURL=MessageInteractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useMemo","Delimeter","MenuItem","useSelector","MESSAGE_INTERACTIONS","MESSAGE_INTERACTIONS_ICONS","Modal","Text","StyleSheet","View","Pressable","Clipboard","useToast","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MessageInteractions","isReply","isUser","message","closeMenu","position","handleReplyMessage","replyMessage","handleDeleteMessage","handleEditMessage","showToast","config","state","chatSettingStore","handleCopyMessage","text","setStringAsync","id","Date","now","toString","title","type","err","console","log","memoPosition","top","y","right","left","disableInteractions","transparent","animationType","visible","onRequestClose","children","isDeleted","style","styles","overlayFill","absoluteFill","onPress","contextMenu","body","COPY","EDIT","DELETE","create","absoluteFillObject","backgroundColor","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","minWidth"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/MessageInteractions.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","useState","Delimeter","MenuItem","useSelector","MESSAGE_INTERACTIONS","MESSAGE_INTERACTIONS_ICONS","Modal","Text","StyleSheet","View","Pressable","Dimensions","Clipboard","useToast","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MessageInteractions","isReply","isUser","message","closeMenu","position","handleReplyMessage","replyMessage","handleDeleteMessage","handleEditMessage","showToast","config","state","chatSettingStore","menuSize","setMenuSize","width","height","handleMenuLayout","e","nativeEvent","layout","handleCopyMessage","text","setStringAsync","id","Date","now","toString","title","type","err","console","log","memoPosition","undefined","top","bottom","left","opacity","screenWidth","screenHeight","get","bottomReserve","keyboardVerticalOffset","topReserve","sideMargin","spaceBelow","spaceAbove","Math","max","leftMargin","rightMargin","right","rightAligned","min","disableInteractions","transparent","animationType","visible","onRequestClose","children","isDeleted","style","styles","overlayFill","absoluteFill","onPress","contextMenu","onLayout","body","menuText","COPY","isMediafile","EDIT","DELETE","create","absoluteFillObject","backgroundColor","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","minWidth","overflow","fontSize","color","includeFontPadding","textAlignVertical","marginRight"],"sourceRoot":"../../../../src","sources":["components/MessageBubble/MessageInteractions.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  /** @format */
4
4
 
5
- import React from 'react';
5
+ import React, { useRef } from 'react';
6
6
  import { Modal, Platform, StyleSheet, Text, TouchableOpacity, View } from 'react-native';
7
7
  import { CameraIcon, DocumentIcon, MediaIcon } from '../../../assets/icons';
8
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -14,9 +14,20 @@ const AttachSheet = ({
14
14
  onDocument,
15
15
  primaryColor = '#0052CD'
16
16
  }) => {
17
+ const pendingRef = useRef(null);
18
+ const runPending = () => {
19
+ const fn = pendingRef.current;
20
+ pendingRef.current = null;
21
+ fn?.();
22
+ };
17
23
  const trigger = handler => () => {
18
- onClose();
19
- setTimeout(handler, 150);
24
+ if (Platform.OS === 'ios') {
25
+ pendingRef.current = handler;
26
+ onClose();
27
+ } else {
28
+ onClose();
29
+ setTimeout(handler, 150);
30
+ }
20
31
  };
21
32
  const rows = [{
22
33
  label: 'Take photo',
@@ -39,6 +50,7 @@ const AttachSheet = ({
39
50
  visible: visible,
40
51
  animationType: "slide",
41
52
  onRequestClose: onClose,
53
+ onDismiss: runPending,
42
54
  children: /*#__PURE__*/_jsx(TouchableOpacity, {
43
55
  style: styles.backdrop,
44
56
  activeOpacity: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Modal","Platform","StyleSheet","Text","TouchableOpacity","View","CameraIcon","DocumentIcon","MediaIcon","jsx","_jsx","jsxs","_jsxs","AttachSheet","visible","onClose","onCamera","onGallery","onDocument","primaryColor","trigger","handler","setTimeout","rows","label","hint","Icon","transparent","animationType","onRequestClose","children","style","styles","backdrop","activeOpacity","onPress","sheet","grabber","title","map","idx","row","length","rowDivider","iconBubble","backgroundColor","color","width","height","rowText","rowLabel","rowHint","cancelRow","cancelLabel","create","flex","justifyContent","borderTopLeftRadius","borderTopRightRadius","paddingTop","paddingBottom","OS","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","alignSelf","borderRadius","marginBottom","fontSize","fontWeight","letterSpacing","textTransform","paddingHorizontal","flexDirection","alignItems","paddingVertical","borderBottomWidth","hairlineWidth","borderBottomColor","marginRight","marginTop","marginHorizontal"],"sourceRoot":"../../../../../src","sources":["components/Modals/AttachSheet/AttachSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useRef","Modal","Platform","StyleSheet","Text","TouchableOpacity","View","CameraIcon","DocumentIcon","MediaIcon","jsx","_jsx","jsxs","_jsxs","AttachSheet","visible","onClose","onCamera","onGallery","onDocument","primaryColor","pendingRef","runPending","fn","current","trigger","handler","OS","setTimeout","rows","label","hint","Icon","transparent","animationType","onRequestClose","onDismiss","children","style","styles","backdrop","activeOpacity","onPress","sheet","grabber","title","map","idx","row","length","rowDivider","iconBubble","backgroundColor","color","width","height","rowText","rowLabel","rowHint","cancelRow","cancelLabel","create","flex","justifyContent","borderTopLeftRadius","borderTopRightRadius","paddingTop","paddingBottom","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","alignSelf","borderRadius","marginBottom","fontSize","fontWeight","letterSpacing","textTransform","paddingHorizontal","flexDirection","alignItems","paddingVertical","borderBottomWidth","hairlineWidth","borderBottomColor","marginRight","marginTop","marginHorizontal"],"sourceRoot":"../../../../../src","sources":["components/Modals/AttachSheet/AttachSheet.tsx"],"mappings":";;AAAA;;AAEA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AACrC,SACEC,KAAK,EACLC,QAAQ,EACRC,UAAU,EACVC,IAAI,EACJC,gBAAgB,EAChBC,IAAI,QACC,cAAc;AACrB,SAASC,UAAU,EAAEC,YAAY,EAAEC,SAAS,QAAQ,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAW5E,MAAMC,WAAuC,GAAGA,CAAC;EAC/CC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,SAAS;EACTC,UAAU;EACVC,YAAY,GAAG;AACjB,CAAC,KAAK;EACJ,MAAMC,UAAU,GAAGrB,MAAM,CAAsB,IAAI,CAAC;EAEpD,MAAMsB,UAAU,GAAGA,CAAA,KAAM;IACvB,MAAMC,EAAE,GAAGF,UAAU,CAACG,OAAO;IAC7BH,UAAU,CAACG,OAAO,GAAG,IAAI;IACzBD,EAAE,GAAG,CAAC;EACR,CAAC;EAED,MAAME,OAAO,GAAIC,OAAmB,IAAK,MAAM;IAC7C,IAAIxB,QAAQ,CAACyB,EAAE,KAAK,KAAK,EAAE;MACzBN,UAAU,CAACG,OAAO,GAAGE,OAAO;MAC5BV,OAAO,CAAC,CAAC;IACX,CAAC,MAAM;MACLA,OAAO,CAAC,CAAC;MACTY,UAAU,CAACF,OAAO,EAAE,GAAG,CAAC;IAC1B;EACF,CAAC;EAED,MAAMG,IAKH,GAAG,CACJ;IACEC,KAAK,EAAE,YAAY;IACnBC,IAAI,EAAE,yBAAyB;IAC/BC,IAAI,EAAEzB,UAAU;IAChBmB,OAAO,EAAET;EACX,CAAC,EACD;IACEa,KAAK,EAAE,gBAAgB;IACvBC,IAAI,EAAE,wBAAwB;IAC9BC,IAAI,EAAEvB,SAAS;IACfiB,OAAO,EAAER;EACX,CAAC,EACD;IACEY,KAAK,EAAE,UAAU;IACjBC,IAAI,EAAE,eAAe;IACrBC,IAAI,EAAExB,YAAY;IAClBkB,OAAO,EAAEP;EACX,CAAC,CACF;EAED,oBACER,IAAA,CAACV,KAAK;IACJgC,WAAW;IACXlB,OAAO,EAAEA,OAAQ;IACjBmB,aAAa,EAAC,OAAO;IACrBC,cAAc,EAAEnB,OAAQ;IACxBoB,SAAS,EAAEd,UAAW;IAAAe,QAAA,eAEtB1B,IAAA,CAACN,gBAAgB;MACfiC,KAAK,EAAEC,MAAM,CAACC,QAAS;MACvBC,aAAa,EAAE,CAAE;MACjBC,OAAO,EAAE1B,OAAQ;MAAAqB,QAAA,eAEjBxB,KAAA,CAACR,gBAAgB;QAACoC,aAAa,EAAE,CAAE;QAACH,KAAK,EAAEC,MAAM,CAACI,KAAM;QAAAN,QAAA,gBACtD1B,IAAA,CAACL,IAAI;UAACgC,KAAK,EAAEC,MAAM,CAACK;QAAQ,CAAE,CAAC,eAC/BjC,IAAA,CAACP,IAAI;UAACkC,KAAK,EAAEC,MAAM,CAACM,KAAM;UAAAR,QAAA,EAAC;QAAM,CAAM,CAAC,EACvCR,IAAI,CAACiB,GAAG,CAAC,CAAC;UAAEhB,KAAK;UAAEC,IAAI;UAAEC,IAAI;UAAEN;QAAQ,CAAC,EAAEqB,GAAG,kBAC5ClC,KAAA,CAACR,gBAAgB;UAEfoC,aAAa,EAAE,GAAI;UACnBH,KAAK,EAAE,CACLC,MAAM,CAACS,GAAG,EACVD,GAAG,GAAGlB,IAAI,CAACoB,MAAM,GAAG,CAAC,IAAIV,MAAM,CAACW,UAAU,CAC1C;UACFR,OAAO,EAAEjB,OAAO,CAACC,OAAO,CAAE;UAAAW,QAAA,gBAE1B1B,IAAA,CAACL,IAAI;YACHgC,KAAK,EAAE,CACLC,MAAM,CAACY,UAAU,EACjB;cAAEC,eAAe,EAAEhC,YAAY,GAAG;YAAK,CAAC,CACxC;YAAAiB,QAAA,eAEF1B,IAAA,CAACqB,IAAI;cAACqB,KAAK,EAAEjC,YAAa;cAACkC,KAAK,EAAE,EAAG;cAACC,MAAM,EAAE;YAAG,CAAE;UAAC,CAChD,CAAC,eACP1C,KAAA,CAACP,IAAI;YAACgC,KAAK,EAAEC,MAAM,CAACiB,OAAQ;YAAAnB,QAAA,gBAC1B1B,IAAA,CAACP,IAAI;cAACkC,KAAK,EAAEC,MAAM,CAACkB,QAAS;cAAApB,QAAA,EAAEP;YAAK,CAAO,CAAC,eAC5CnB,IAAA,CAACP,IAAI;cAACkC,KAAK,EAAEC,MAAM,CAACmB,OAAQ;cAAArB,QAAA,EAAEN;YAAI,CAAO,CAAC;UAAA,CACtC,CAAC;QAAA,GAnBFD,KAoBW,CACnB,CAAC,eACFnB,IAAA,CAACN,gBAAgB;UACfoC,aAAa,EAAE,GAAI;UACnBH,KAAK,EAAEC,MAAM,CAACoB,SAAU;UACxBjB,OAAO,EAAE1B,OAAQ;UAAAqB,QAAA,eAEjB1B,IAAA,CAACP,IAAI;YAACkC,KAAK,EAAEC,MAAM,CAACqB,WAAY;YAAAvB,QAAA,EAAC;UAAM,CAAM;QAAC,CAC9B,CAAC;MAAA,CACH;IAAC,CACH;EAAC,CACd,CAAC;AAEZ,CAAC;AAED,MAAME,MAAM,GAAGpC,UAAU,CAAC0D,MAAM,CAAC;EAC/BrB,QAAQ,EAAE;IACRsB,IAAI,EAAE,CAAC;IACPV,eAAe,EAAE,qBAAqB;IACtCW,cAAc,EAAE;EAClB,CAAC;EACDpB,KAAK,EAAE;IACLS,eAAe,EAAE,MAAM;IACvBY,mBAAmB,EAAE,EAAE;IACvBC,oBAAoB,EAAE,EAAE;IACxBC,UAAU,EAAE,CAAC;IACbC,aAAa,EAAEjE,QAAQ,CAACyB,EAAE,KAAK,KAAK,GAAG,EAAE,GAAG,EAAE;IAC9CyC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEf,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE,CAAC;IAAE,CAAC;IACtCe,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,EAAE;IAChBC,SAAS,EAAE;EACb,CAAC;EACD5B,OAAO,EAAE;IACP6B,SAAS,EAAE,QAAQ;IACnBnB,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,CAAC;IACTmB,YAAY,EAAE,CAAC;IACftB,eAAe,EAAE,SAAS;IAC1BuB,YAAY,EAAE;EAChB,CAAC;EACD9B,KAAK,EAAE;IACL+B,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBxB,KAAK,EAAE,SAAS;IAChByB,aAAa,EAAE,GAAG;IAClBC,aAAa,EAAE,WAAW;IAC1BC,iBAAiB,EAAE,EAAE;IACrBb,aAAa,EAAE;EACjB,CAAC;EACDnB,GAAG,EAAE;IACHiC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBF,iBAAiB,EAAE,EAAE;IACrBG,eAAe,EAAE;EACnB,CAAC;EACDjC,UAAU,EAAE;IACVkC,iBAAiB,EAAEjF,UAAU,CAACkF,aAAa;IAC3CC,iBAAiB,EAAE;EACrB,CAAC;EACDnC,UAAU,EAAE;IACVG,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVmB,YAAY,EAAE,EAAE;IAChBQ,UAAU,EAAE,QAAQ;IACpBnB,cAAc,EAAE,QAAQ;IACxBwB,WAAW,EAAE;EACf,CAAC;EACD/B,OAAO,EAAE;IACPM,IAAI,EAAE;EACR,CAAC;EACDL,QAAQ,EAAE;IACRmB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBxB,KAAK,EAAE;EACT,CAAC;EACDK,OAAO,EAAE;IACPkB,QAAQ,EAAE,EAAE;IACZvB,KAAK,EAAE,SAAS;IAChBmC,SAAS,EAAE;EACb,CAAC;EACD7B,SAAS,EAAE;IACT6B,SAAS,EAAE,CAAC;IACZC,gBAAgB,EAAE,EAAE;IACpBN,eAAe,EAAE,EAAE;IACnBT,YAAY,EAAE,EAAE;IAChBQ,UAAU,EAAE,QAAQ;IACpB9B,eAAe,EAAE;EACnB,CAAC;EACDQ,WAAW,EAAE;IACXgB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBxB,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAEF,eAAevC,WAAW","ignoreList":[]}