@ethora/chat-component-rn 26.8.5 → 26.8.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 (373) hide show
  1. package/README.md +55 -0
  2. package/lib/commonjs/assets/emojiData.js +40 -0
  3. package/lib/commonjs/assets/emojiData.js.map +1 -0
  4. package/lib/commonjs/assets/icons.js +1 -1
  5. package/lib/commonjs/assets/icons.js.map +1 -1
  6. package/lib/commonjs/components/MainComponents/ChatHeader.js +7 -9
  7. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  8. package/lib/commonjs/components/MainComponents/ChatRoom.js +24 -23
  9. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  10. package/lib/commonjs/components/MainComponents/ChatWrapper.js +22 -16
  11. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  12. package/lib/commonjs/components/MainComponents/MessageContainer.js +4 -12
  13. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  14. package/lib/commonjs/components/MainComponents/MessageList.js +110 -35
  15. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  16. package/lib/commonjs/components/MainComponents/RoomList.js +32 -29
  17. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  18. package/lib/commonjs/components/MainComponents/RoomStack.js +133 -65
  19. package/lib/commonjs/components/MainComponents/RoomStack.js.map +1 -1
  20. package/lib/commonjs/components/MainComponents/SystemMessage.js +6 -2
  21. package/lib/commonjs/components/MainComponents/SystemMessage.js.map +1 -1
  22. package/lib/commonjs/components/MessageBubble/Avatar.js +5 -1
  23. package/lib/commonjs/components/MessageBubble/Avatar.js.map +1 -1
  24. package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js +17 -21
  25. package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js.map +1 -1
  26. package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js +447 -0
  27. package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
  28. package/lib/commonjs/components/MessageBubble/Message.js +200 -132
  29. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  30. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +213 -12
  31. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  32. package/lib/commonjs/components/MessageBubble/MessageReaction.js +113 -94
  33. package/lib/commonjs/components/MessageBubble/MessageReaction.js.map +1 -1
  34. package/lib/commonjs/components/MessageBubble/MessageReply.js +66 -24
  35. package/lib/commonjs/components/MessageBubble/MessageReply.js.map +1 -1
  36. package/lib/commonjs/components/Modals/Modal/SwipeBackLayer.js +76 -44
  37. package/lib/commonjs/components/Modals/Modal/SwipeBackLayer.js.map +1 -1
  38. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +5 -4
  39. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  40. package/lib/commonjs/components/RoomComponents/styled/LastMessageEmoji.js +8 -9
  41. package/lib/commonjs/components/RoomComponents/styled/LastMessageEmoji.js.map +1 -1
  42. package/lib/commonjs/components/Thread/ThreadWrapper.js +265 -152
  43. package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
  44. package/lib/commonjs/components/styled/DateLabel.js +6 -3
  45. package/lib/commonjs/components/styled/DateLabel.js.map +1 -1
  46. package/lib/commonjs/context/MessageNotificationContext.js +188 -9
  47. package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
  48. package/lib/commonjs/context/xmppProvider.js +22 -7
  49. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  50. package/lib/commonjs/helpers/createRoomFromApi.js +36 -2
  51. package/lib/commonjs/helpers/createRoomFromApi.js.map +1 -1
  52. package/lib/commonjs/helpers/emoji.js +51 -0
  53. package/lib/commonjs/helpers/emoji.js.map +1 -0
  54. package/lib/commonjs/helpers/haptics.js +29 -0
  55. package/lib/commonjs/helpers/haptics.js.map +1 -0
  56. package/lib/commonjs/helpers/historyPreloadScheduler.js +32 -66
  57. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  58. package/lib/commonjs/helpers/insertMessageWithDelimiter.js +21 -12
  59. package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
  60. package/lib/commonjs/helpers/mamReactions.js +57 -0
  61. package/lib/commonjs/helpers/mamReactions.js.map +1 -0
  62. package/lib/commonjs/helpers/parseMessageReference.js +42 -0
  63. package/lib/commonjs/helpers/parseMessageReference.js.map +1 -0
  64. package/lib/commonjs/helpers/reactionsConfig.js +17 -0
  65. package/lib/commonjs/helpers/reactionsConfig.js.map +1 -0
  66. package/lib/commonjs/helpers/updateMessagesTillLast.js +17 -2
  67. package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
  68. package/lib/commonjs/hooks/useHeapSender.js +3 -1
  69. package/lib/commonjs/hooks/useHeapSender.js.map +1 -1
  70. package/lib/commonjs/hooks/useMessageHeapState.js +3 -2
  71. package/lib/commonjs/hooks/useMessageHeapState.js.map +1 -1
  72. package/lib/commonjs/hooks/useRoomInitialization.js +16 -7
  73. package/lib/commonjs/hooks/useRoomInitialization.js.map +1 -1
  74. package/lib/commonjs/hooks/useSendMessage.js +14 -8
  75. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  76. package/lib/commonjs/hooks/useUnreadMessagesCounter.js +1 -1
  77. package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
  78. package/lib/commonjs/networking/stanzaHandlers.js +106 -50
  79. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  80. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js +29 -74
  81. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js.map +1 -1
  82. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +4 -0
  83. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  84. package/lib/commonjs/networking/xmpp/mamRouter.js +186 -0
  85. package/lib/commonjs/networking/xmpp/mamRouter.js.map +1 -0
  86. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +41 -4
  87. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  88. package/lib/commonjs/networking/xmppClient.js +98 -23
  89. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  90. package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js +29 -34
  91. package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
  92. package/lib/commonjs/roomStore/Middleware/perfMiddleware.js +51 -0
  93. package/lib/commonjs/roomStore/Middleware/perfMiddleware.js.map +1 -0
  94. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js +66 -43
  95. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  96. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +88 -68
  97. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  98. package/lib/commonjs/roomStore/index.js +18 -14
  99. package/lib/commonjs/roomStore/index.js.map +1 -1
  100. package/lib/commonjs/roomStore/persistBackend.js +96 -0
  101. package/lib/commonjs/roomStore/persistBackend.js.map +1 -0
  102. package/lib/commonjs/roomStore/persistence.js +245 -50
  103. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  104. package/lib/commonjs/roomStore/roomsSlice.js +282 -136
  105. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  106. package/lib/commonjs/theme/theme.js +3 -0
  107. package/lib/commonjs/theme/theme.js.map +1 -1
  108. package/lib/commonjs/utils/devLogger.js +14 -0
  109. package/lib/commonjs/utils/devLogger.js.map +1 -1
  110. package/lib/commonjs/version.js +1 -1
  111. package/lib/module/assets/emojiData.js +36 -0
  112. package/lib/module/assets/emojiData.js.map +1 -0
  113. package/lib/module/assets/icons.js +1 -1
  114. package/lib/module/assets/icons.js.map +1 -1
  115. package/lib/module/components/MainComponents/ChatHeader.js +8 -10
  116. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  117. package/lib/module/components/MainComponents/ChatRoom.js +25 -24
  118. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  119. package/lib/module/components/MainComponents/ChatWrapper.js +23 -17
  120. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  121. package/lib/module/components/MainComponents/MessageContainer.js +7 -14
  122. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  123. package/lib/module/components/MainComponents/MessageList.js +110 -35
  124. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  125. package/lib/module/components/MainComponents/RoomList.js +32 -29
  126. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  127. package/lib/module/components/MainComponents/RoomStack.js +131 -63
  128. package/lib/module/components/MainComponents/RoomStack.js.map +1 -1
  129. package/lib/module/components/MainComponents/SystemMessage.js +6 -2
  130. package/lib/module/components/MainComponents/SystemMessage.js.map +1 -1
  131. package/lib/module/components/MessageBubble/Avatar.js +5 -1
  132. package/lib/module/components/MessageBubble/Avatar.js.map +1 -1
  133. package/lib/module/components/MessageBubble/BottomReplyContainer.js +18 -22
  134. package/lib/module/components/MessageBubble/BottomReplyContainer.js.map +1 -1
  135. package/lib/module/components/MessageBubble/EmojiPickerSheet.js +438 -0
  136. package/lib/module/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
  137. package/lib/module/components/MessageBubble/Message.js +203 -134
  138. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  139. package/lib/module/components/MessageBubble/MessageInteractions.js +215 -14
  140. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  141. package/lib/module/components/MessageBubble/MessageReaction.js +115 -94
  142. package/lib/module/components/MessageBubble/MessageReaction.js.map +1 -1
  143. package/lib/module/components/MessageBubble/MessageReply.js +65 -24
  144. package/lib/module/components/MessageBubble/MessageReply.js.map +1 -1
  145. package/lib/module/components/Modals/Modal/SwipeBackLayer.js +76 -44
  146. package/lib/module/components/Modals/Modal/SwipeBackLayer.js.map +1 -1
  147. package/lib/module/components/RoomComponents/ChatRoomItem.js +5 -4
  148. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  149. package/lib/module/components/RoomComponents/styled/LastMessageEmoji.js +8 -9
  150. package/lib/module/components/RoomComponents/styled/LastMessageEmoji.js.map +1 -1
  151. package/lib/module/components/Thread/ThreadWrapper.js +264 -152
  152. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  153. package/lib/module/components/styled/DateLabel.js +6 -3
  154. package/lib/module/components/styled/DateLabel.js.map +1 -1
  155. package/lib/module/context/MessageNotificationContext.js +190 -11
  156. package/lib/module/context/MessageNotificationContext.js.map +1 -1
  157. package/lib/module/context/xmppProvider.js +22 -7
  158. package/lib/module/context/xmppProvider.js.map +1 -1
  159. package/lib/module/helpers/createRoomFromApi.js +36 -2
  160. package/lib/module/helpers/createRoomFromApi.js.map +1 -1
  161. package/lib/module/helpers/emoji.js +44 -0
  162. package/lib/module/helpers/emoji.js.map +1 -0
  163. package/lib/module/helpers/haptics.js +24 -0
  164. package/lib/module/helpers/haptics.js.map +1 -0
  165. package/lib/module/helpers/historyPreloadScheduler.js +32 -66
  166. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  167. package/lib/module/helpers/insertMessageWithDelimiter.js +21 -12
  168. package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
  169. package/lib/module/helpers/mamReactions.js +51 -0
  170. package/lib/module/helpers/mamReactions.js.map +1 -0
  171. package/lib/module/helpers/parseMessageReference.js +37 -0
  172. package/lib/module/helpers/parseMessageReference.js.map +1 -0
  173. package/lib/module/helpers/reactionsConfig.js +10 -0
  174. package/lib/module/helpers/reactionsConfig.js.map +1 -0
  175. package/lib/module/helpers/updateMessagesTillLast.js +17 -2
  176. package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
  177. package/lib/module/hooks/useHeapSender.js +3 -1
  178. package/lib/module/hooks/useHeapSender.js.map +1 -1
  179. package/lib/module/hooks/useMessageHeapState.js +3 -2
  180. package/lib/module/hooks/useMessageHeapState.js.map +1 -1
  181. package/lib/module/hooks/useRoomInitialization.js +17 -8
  182. package/lib/module/hooks/useRoomInitialization.js.map +1 -1
  183. package/lib/module/hooks/useSendMessage.js +14 -8
  184. package/lib/module/hooks/useSendMessage.js.map +1 -1
  185. package/lib/module/hooks/useUnreadMessagesCounter.js +1 -1
  186. package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
  187. package/lib/module/networking/stanzaHandlers.js +107 -51
  188. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  189. package/lib/module/networking/xmpp/getHistory.xmpp.js +29 -74
  190. package/lib/module/networking/xmpp/getHistory.xmpp.js.map +1 -1
  191. package/lib/module/networking/xmpp/handleStanzas.xmpp.js +4 -0
  192. package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  193. package/lib/module/networking/xmpp/mamRouter.js +175 -0
  194. package/lib/module/networking/xmpp/mamRouter.js.map +1 -0
  195. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +38 -2
  196. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  197. package/lib/module/networking/xmppClient.js +99 -24
  198. package/lib/module/networking/xmppClient.js.map +1 -1
  199. package/lib/module/roomStore/Middleware/newMessageMidlleware.js +29 -34
  200. package/lib/module/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
  201. package/lib/module/roomStore/Middleware/perfMiddleware.js +45 -0
  202. package/lib/module/roomStore/Middleware/perfMiddleware.js.map +1 -0
  203. package/lib/module/roomStore/Middleware/reactionsMiddleware.js +66 -43
  204. package/lib/module/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  205. package/lib/module/roomStore/Middleware/unreadMidlleware.js +89 -69
  206. package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  207. package/lib/module/roomStore/index.js +19 -15
  208. package/lib/module/roomStore/index.js.map +1 -1
  209. package/lib/module/roomStore/persistBackend.js +89 -0
  210. package/lib/module/roomStore/persistBackend.js.map +1 -0
  211. package/lib/module/roomStore/persistence.js +245 -48
  212. package/lib/module/roomStore/persistence.js.map +1 -1
  213. package/lib/module/roomStore/roomsSlice.js +275 -134
  214. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  215. package/lib/module/theme/theme.js +3 -0
  216. package/lib/module/theme/theme.js.map +1 -1
  217. package/lib/module/utils/devLogger.js +13 -0
  218. package/lib/module/utils/devLogger.js.map +1 -1
  219. package/lib/module/version.js +1 -1
  220. package/lib/typescript/assets/emojiData.d.ts +8 -0
  221. package/lib/typescript/assets/emojiData.d.ts.map +1 -0
  222. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  223. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  224. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  225. package/lib/typescript/components/MainComponents/MessageContainer.d.ts +2 -2
  226. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  227. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  228. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  229. package/lib/typescript/components/MainComponents/RoomStack.d.ts +7 -2
  230. package/lib/typescript/components/MainComponents/RoomStack.d.ts.map +1 -1
  231. package/lib/typescript/components/MainComponents/SystemMessage.d.ts.map +1 -1
  232. package/lib/typescript/components/MessageBubble/Avatar.d.ts +2 -0
  233. package/lib/typescript/components/MessageBubble/Avatar.d.ts.map +1 -1
  234. package/lib/typescript/components/MessageBubble/BottomReplyContainer.d.ts.map +1 -1
  235. package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts +11 -0
  236. package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts.map +1 -0
  237. package/lib/typescript/components/MessageBubble/Message.d.ts +2 -2
  238. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  239. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +2 -0
  240. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  241. package/lib/typescript/components/MessageBubble/MessageReaction.d.ts +1 -0
  242. package/lib/typescript/components/MessageBubble/MessageReaction.d.ts.map +1 -1
  243. package/lib/typescript/components/MessageBubble/MessageReply.d.ts +7 -7
  244. package/lib/typescript/components/MessageBubble/MessageReply.d.ts.map +1 -1
  245. package/lib/typescript/components/Modals/Modal/SwipeBackLayer.d.ts +2 -1
  246. package/lib/typescript/components/Modals/Modal/SwipeBackLayer.d.ts.map +1 -1
  247. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts +2 -2
  248. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  249. package/lib/typescript/components/RoomComponents/styled/LastMessageEmoji.d.ts +3 -6
  250. package/lib/typescript/components/RoomComponents/styled/LastMessageEmoji.d.ts.map +1 -1
  251. package/lib/typescript/components/Thread/ThreadWrapper.d.ts +7 -1
  252. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  253. package/lib/typescript/components/styled/DateLabel.d.ts +1 -0
  254. package/lib/typescript/components/styled/DateLabel.d.ts.map +1 -1
  255. package/lib/typescript/context/MessageNotificationContext.d.ts.map +1 -1
  256. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  257. package/lib/typescript/helpers/createRoomFromApi.d.ts.map +1 -1
  258. package/lib/typescript/helpers/emoji.d.ts +6 -0
  259. package/lib/typescript/helpers/emoji.d.ts.map +1 -0
  260. package/lib/typescript/helpers/haptics.d.ts +3 -0
  261. package/lib/typescript/helpers/haptics.d.ts.map +1 -0
  262. package/lib/typescript/helpers/historyPreloadScheduler.d.ts +1 -0
  263. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  264. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
  265. package/lib/typescript/helpers/mamReactions.d.ts +13 -0
  266. package/lib/typescript/helpers/mamReactions.d.ts.map +1 -0
  267. package/lib/typescript/helpers/parseMessageReference.d.ts +16 -0
  268. package/lib/typescript/helpers/parseMessageReference.d.ts.map +1 -0
  269. package/lib/typescript/helpers/reactionsConfig.d.ts +5 -0
  270. package/lib/typescript/helpers/reactionsConfig.d.ts.map +1 -0
  271. package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
  272. package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
  273. package/lib/typescript/hooks/useMessageHeapState.d.ts.map +1 -1
  274. package/lib/typescript/hooks/useRoomInitialization.d.ts +2 -2
  275. package/lib/typescript/hooks/useRoomInitialization.d.ts.map +1 -1
  276. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  277. package/lib/typescript/networking/stanzaHandlers.d.ts +4 -2
  278. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  279. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts +3 -1
  280. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts.map +1 -1
  281. package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
  282. package/lib/typescript/networking/xmpp/mamRouter.d.ts +23 -0
  283. package/lib/typescript/networking/xmpp/mamRouter.d.ts.map +1 -0
  284. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts +1 -0
  285. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
  286. package/lib/typescript/networking/xmppClient.d.ts +22 -1
  287. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  288. package/lib/typescript/roomStore/Middleware/newMessageMidlleware.d.ts.map +1 -1
  289. package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts +4 -0
  290. package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts.map +1 -0
  291. package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts +9 -0
  292. package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts.map +1 -1
  293. package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
  294. package/lib/typescript/roomStore/index.d.ts.map +1 -1
  295. package/lib/typescript/roomStore/persistBackend.d.ts +11 -0
  296. package/lib/typescript/roomStore/persistBackend.d.ts.map +1 -0
  297. package/lib/typescript/roomStore/persistence.d.ts +5 -6
  298. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  299. package/lib/typescript/roomStore/roomsSlice.d.ts +41 -1
  300. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  301. package/lib/typescript/theme/theme.d.ts +4 -1
  302. package/lib/typescript/theme/theme.d.ts.map +1 -1
  303. package/lib/typescript/types/models/message.model.d.ts +4 -0
  304. package/lib/typescript/types/models/message.model.d.ts.map +1 -1
  305. package/lib/typescript/types/models/room.model.d.ts +16 -0
  306. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  307. package/lib/typescript/types/models/xmpp.model.d.ts +6 -1
  308. package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
  309. package/lib/typescript/types/types.d.ts +15 -3
  310. package/lib/typescript/types/types.d.ts.map +1 -1
  311. package/lib/typescript/utils/devLogger.d.ts +8 -0
  312. package/lib/typescript/utils/devLogger.d.ts.map +1 -1
  313. package/lib/typescript/version.d.ts +1 -1
  314. package/package.json +10 -1
  315. package/src/assets/emojiData.ts +2146 -0
  316. package/src/assets/icons.tsx +5 -5
  317. package/src/components/MainComponents/ChatHeader.tsx +16 -7
  318. package/src/components/MainComponents/ChatRoom.tsx +35 -29
  319. package/src/components/MainComponents/ChatWrapper.tsx +28 -10
  320. package/src/components/MainComponents/MessageContainer.tsx +7 -15
  321. package/src/components/MainComponents/MessageList.tsx +96 -43
  322. package/src/components/MainComponents/RoomList.tsx +28 -29
  323. package/src/components/MainComponents/RoomStack.tsx +156 -83
  324. package/src/components/MainComponents/SystemMessage.tsx +6 -2
  325. package/src/components/MessageBubble/Avatar.tsx +7 -1
  326. package/src/components/MessageBubble/BottomReplyContainer.tsx +19 -21
  327. package/src/components/MessageBubble/EmojiPickerSheet.tsx +468 -0
  328. package/src/components/MessageBubble/Message.tsx +146 -87
  329. package/src/components/MessageBubble/MessageInteractions.tsx +213 -12
  330. package/src/components/MessageBubble/MessageReaction.tsx +120 -96
  331. package/src/components/MessageBubble/MessageReply.tsx +65 -32
  332. package/src/components/Modals/Modal/SwipeBackLayer.tsx +114 -63
  333. package/src/components/RoomComponents/ChatRoomItem.tsx +11 -4
  334. package/src/components/RoomComponents/styled/LastMessageEmoji.tsx +7 -8
  335. package/src/components/Thread/ThreadWrapper.tsx +274 -198
  336. package/src/components/styled/DateLabel.tsx +7 -3
  337. package/src/context/MessageNotificationContext.tsx +205 -7
  338. package/src/context/xmppProvider.tsx +29 -9
  339. package/src/helpers/createRoomFromApi.tsx +37 -1
  340. package/src/helpers/emoji.ts +39 -0
  341. package/src/helpers/haptics.ts +19 -0
  342. package/src/helpers/historyPreloadScheduler.ts +37 -69
  343. package/src/helpers/insertMessageWithDelimiter.ts +23 -16
  344. package/src/helpers/mamReactions.ts +59 -0
  345. package/src/helpers/parseMessageReference.ts +38 -0
  346. package/src/helpers/reactionsConfig.ts +13 -0
  347. package/src/helpers/updateMessagesTillLast.tsx +14 -2
  348. package/src/hooks/useHeapSender.tsx +3 -2
  349. package/src/hooks/useMessageHeapState.tsx +6 -2
  350. package/src/hooks/useRoomInitialization.tsx +32 -15
  351. package/src/hooks/useSendMessage.tsx +18 -11
  352. package/src/hooks/useUnreadMessagesCounter.ts +1 -1
  353. package/src/networking/stanzaHandlers.ts +116 -60
  354. package/src/networking/xmpp/getHistory.xmpp.ts +44 -106
  355. package/src/networking/xmpp/handleStanzas.xmpp.ts +2 -0
  356. package/src/networking/xmpp/mamRouter.ts +176 -0
  357. package/src/networking/xmpp/presenceInRoom.xmpp.ts +46 -3
  358. package/src/networking/xmppClient.ts +105 -20
  359. package/src/roomStore/Middleware/newMessageMidlleware.tsx +35 -38
  360. package/src/roomStore/Middleware/perfMiddleware.ts +50 -0
  361. package/src/roomStore/Middleware/reactionsMiddleware.tsx +53 -52
  362. package/src/roomStore/Middleware/unreadMidlleware.tsx +92 -80
  363. package/src/roomStore/index.ts +28 -27
  364. package/src/roomStore/persistBackend.ts +96 -0
  365. package/src/roomStore/persistence.ts +280 -73
  366. package/src/roomStore/roomsSlice.ts +304 -155
  367. package/src/theme/theme.ts +10 -1
  368. package/src/types/models/message.model.ts +4 -0
  369. package/src/types/models/room.model.ts +17 -0
  370. package/src/types/models/xmpp.model.ts +4 -2
  371. package/src/types/types.ts +15 -3
  372. package/src/utils/devLogger.ts +16 -0
  373. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactRedux","_useMessageHeapState","useHeapSender","client","dispatch","useDispatch","queue","useMessageHeapState","sendingRef","useRef","inFlightRef","Map","sendHeapMessages","useCallback","length","presencesReady","console","warn","current","msg","lastAttempt","get","id","Date","now","set","langSource","sendTextMessageWithTranslateTagStanza","roomJid","user","firstName","name","split","lastName","walletAddress","body","isReply","showInChannel","mainMessage","sendMessage","err","delete","prevReadyRef","useEffect","nowReady","wasReady","currentIds","Set","map","m","Array","from","keys","has","exports"],"sourceRoot":"../../../src","sources":["hooks/useHeapSender.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactRedux","_useMessageHeapState","useHeapSender","client","dispatch","useDispatch","queue","useMessageHeapState","sendingRef","useRef","inFlightRef","Map","sendHeapMessages","useCallback","length","presencesReady","console","warn","current","msg","lastAttempt","get","id","Date","now","set","langSource","sendTextMessageWithTranslateTagStanza","roomJid","user","firstName","name","split","lastName","walletAddress","body","isReply","showInChannel","mainMessage","sendMessage","String","err","delete","prevReadyRef","useEffect","nowReady","wasReady","currentIds","Set","map","m","Array","from","keys","has","exports"],"sourceRoot":"../../../src","sources":["hooks/useHeapSender.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,12 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useMessageHeapState = void 0;
7
+ var _react = require("react");
7
8
  var _reactRedux = require("react-redux");
8
9
  const useMessageHeapState = () => {
9
10
  const queue = (0, _reactRedux.useSelector)(state => state.roomHeapSlice?.messageHeap);
10
11
  const failedMessages = (0, _reactRedux.useSelector)(state => state.roomHeapSlice?.failedMessages);
11
- const idSet = new Set(queue?.map(m => m.id) ?? []);
12
- const failedIdSet = new Set(Object.keys(failedMessages || {}));
12
+ const idSet = (0, _react.useMemo)(() => new Set(queue?.map(m => m.id) ?? []), [queue]);
13
+ const failedIdSet = (0, _react.useMemo)(() => new Set(Object.keys(failedMessages || {})), [failedMessages]);
13
14
  return {
14
15
  queue,
15
16
  idSet,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactRedux","require","useMessageHeapState","queue","useSelector","state","roomHeapSlice","messageHeap","failedMessages","idSet","Set","map","m","id","failedIdSet","Object","keys","exports"],"sourceRoot":"../../../src","sources":["hooks/useMessageHeapState.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,KAAK,GAAG,IAAAC,uBAAW,EACtBC,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEC,WAC7C,CAAC;EACD,MAAMC,cAAc,GAAG,IAAAJ,uBAAW,EAC/BC,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEE,cAC7C,CAAC;EACD,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAACP,KAAK,EAAEQ,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,CAAC,IAAI,EAAE,CAAC;EACpD,MAAMC,WAAW,GAAG,IAAIJ,GAAG,CAACK,MAAM,CAACC,IAAI,CAACR,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC;EAE9D,OAAO;IAAEL,KAAK;IAAEM,KAAK;IAAED,cAAc;IAAEM;EAAY,CAAC;AACtD,CAAC;AAACG,OAAA,CAAAf,mBAAA,GAAAA,mBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactRedux","useMessageHeapState","queue","useSelector","state","roomHeapSlice","messageHeap","failedMessages","idSet","useMemo","Set","map","m","id","failedIdSet","Object","keys","exports"],"sourceRoot":"../../../src","sources":["hooks/useMessageHeapState.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGO,MAAME,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,KAAK,GAAG,IAAAC,uBAAW,EACtBC,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEC,WAC7C,CAAC;EACD,MAAMC,cAAc,GAAG,IAAAJ,uBAAW,EAC/BC,KAAgB,IAAKA,KAAK,CAACC,aAAa,EAAEE,cAC7C,CAAC;EACD,MAAMC,KAAK,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAIC,GAAG,CAACR,KAAK,EAAES,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAACX,KAAK,CAAC,CAAC;EAC5E,MAAMY,WAAW,GAAG,IAAAL,cAAO,EACzB,MAAM,IAAIC,GAAG,CAACK,MAAM,CAACC,IAAI,CAACT,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,EAChD,CAACA,cAAc,CACjB,CAAC;EAED,OAAO;IAAEL,KAAK;IAAEM,KAAK;IAAED,cAAc;IAAEO;EAAY,CAAC;AACtD,CAAC;AAACG,OAAA,CAAAhB,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -18,11 +18,20 @@ const hasLoadedRoomHistory = room => {
18
18
  }
19
19
  return messages.some(message => message?.id !== 'delimiter-new' && message?.pending !== true && !!String(message?.body || '').trim());
20
20
  };
21
- const useRoomInitialization = (activeRoomJID, roomsList, config, messageLength) => {
21
+ const defaultRoomJids = config => (config?.defaultRooms || []).map(room => typeof room === 'string' ? room : room?.jid);
22
+ const useRoomInitialization = (activeRoomJID, config) => {
22
23
  const {
23
24
  client
24
25
  } = (0, _xmppProvider.useXmppClient)();
25
26
  const dispatch = (0, _reactRedux.useDispatch)();
27
+ const reduxStore = (0, _reactRedux.useStore)();
28
+ const hasRooms = (0, _reactRedux.useSelector)(state => Object.keys(state.rooms.rooms || {}).length > 0);
29
+ const activeRoomExists = (0, _reactRedux.useSelector)(state => !!activeRoomJID && !!state.rooms.rooms?.[activeRoomJID]);
30
+ const activeHistoryLoaded = (0, _reactRedux.useSelector)(state => hasLoadedRoomHistory(state.rooms.rooms?.[activeRoomJID]));
31
+ const defaultRoomsMissing = (0, _reactRedux.useSelector)(state => {
32
+ const jids = defaultRoomJids(config);
33
+ return jids.length > 0 && jids.some(jid => !state.rooms.rooms?.[jid]);
34
+ });
26
35
  const syncRooms = (0, _useGetNewArchRoom.default)();
27
36
 
28
37
  // Fast active-room join. Mirrors web's first effect: as soon as the
@@ -51,8 +60,8 @@ const useRoomInitialization = (activeRoomJID, roomsList, config, messageLength)
51
60
  }
52
61
  }, [client, activeRoomJID]);
53
62
  (0, _react.useEffect)(() => {
54
- const activeRoom = roomsList?.[activeRoomJID];
55
- const shouldLoadActiveHistory = !!activeRoomJID && !hasLoadedRoomHistory(activeRoom);
63
+ const roomsList = reduxStore.getState().rooms.rooms || {};
64
+ const shouldLoadActiveHistory = !!activeRoomJID && !activeHistoryLoaded;
56
65
  const getDefaultHistory = async () => {
57
66
  if (!client || !activeRoomJID) {
58
67
  return;
@@ -121,7 +130,7 @@ const useRoomInitialization = (activeRoomJID, roomsList, config, messageLength)
121
130
  chatJID: activeRoomJID
122
131
  }));
123
132
  getDefaultHistory();
124
- } else {
133
+ } else if (roomsList?.[activeRoomJID]?.isLoading) {
125
134
  dispatch((0, _roomsSlice.setIsLoading)({
126
135
  loading: false,
127
136
  chatJID: activeRoomJID
@@ -131,8 +140,7 @@ const useRoomInitialization = (activeRoomJID, roomsList, config, messageLength)
131
140
  initialPresenceAndHistory();
132
141
  }
133
142
  if (client && config?.defaultRooms) {
134
- const allExist = config?.defaultRooms.every(room => roomsList[typeof room === 'string' ? room : room.jid] !== undefined);
135
- if (roomsList && !allExist) {
143
+ if (defaultRoomsMissing) {
136
144
  config?.defaultRooms.map(async room => {
137
145
  client.presenceInRoomStanza(typeof room === 'string' ? room : room.jid);
138
146
  });
@@ -143,7 +151,8 @@ const useRoomInitialization = (activeRoomJID, roomsList, config, messageLength)
143
151
  }
144
152
  }
145
153
  }
146
- }, [activeRoomJID, Object.keys(roomsList).length, messageLength, roomsList?.[activeRoomJID]?.messages?.length]);
154
+ // eslint-disable-next-line react-hooks/exhaustive-deps
155
+ }, [activeRoomJID, hasRooms, activeRoomExists, activeHistoryLoaded, defaultRoomsMissing]);
147
156
  };
148
157
  exports.useRoomInitialization = useRoomInitialization;
149
158
  //# sourceMappingURL=useRoomInitialization.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_roomsSlice","_xmppProvider","_reactRedux","_useGetNewArchRoom","_interopRequireDefault","e","__esModule","default","countUndefinedText","arr","Array","isArray","filter","item","body","undefined","length","hasLoadedRoomHistory","room","messages","some","message","id","pending","String","trim","useRoomInitialization","activeRoomJID","roomsList","config","messageLength","client","useXmppClient","dispatch","useDispatch","syncRooms","useGetNewArchRoom","useEffect","setActiveRoomJid","promoteRoomHistory","presenceInRoomStanza","getRoomInfoStanza","activeRoom","shouldLoadActiveHistory","getDefaultHistory","setIsLoading","loading","chatJID","res","getHistoryStanza","prioritizeRoomPresence","catch","Number","loadingText","initialPresenceAndHistory","newArch","getRoomsStanza","Object","keys","defaultRooms","allExist","every","jid","map","exports"],"sourceRoot":"../../../src","sources":["hooks/useRoomInitialization.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAC,sBAAA,CAAAL,OAAA;AAAoD,SAAAK,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpD,MAAMG,kBAAkB,GAAIC,GAAe,IACzC,CAACC,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,GAAGA,GAAG,GAAG,EAAE,EAAEG,MAAM,CACnCC,IAAI,IAAKA,IAAI,EAAEC,IAAI,KAAKC,SAC3B,CAAC,EAAEC,MAAM;AAEX,MAAMC,oBAAoB,GAAIC,IAAY,IAAc;EACtD,MAAMC,QAAQ,GAAGT,KAAK,CAACC,OAAO,CAACO,IAAI,EAAEC,QAAQ,CAAC,GAAGD,IAAI,CAACC,QAAQ,GAAG,EAAE;EACnE,IAAI,CAACA,QAAQ,CAACH,MAAM,EAAE;IAAC,OAAO,KAAK;EAAC;EACpC,OAAOG,QAAQ,CAACC,IAAI,CACjBC,OAAO,IACNA,OAAO,EAAEC,EAAE,KAAK,eAAe,IAC/BD,OAAO,EAAEE,OAAO,KAAK,IAAI,IACzB,CAAC,CAACC,MAAM,CAACH,OAAO,EAAEP,IAAI,IAAI,EAAE,CAAC,CAACW,IAAI,CAAC,CACvC,CAAC;AACH,CAAC;AAEM,MAAMC,qBAAqB,GAAGA,CACnCC,aAAqB,EACrBC,SAAgC,EAChCC,MAAe,EACfC,aAAqB,KAClB;EACH,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,2BAAa,EAAC,CAAC;EAClC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAE9B,MAAMC,SAAS,GAAG,IAAAC,0BAAiB,EAAC,CAAC;;EAErC;EACA;EACA;EACA;EACA;EACA;EACA,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIN,MAAM,IAAIJ,aAAa,EAAE;MAC3BI,MAAM,CAACO,gBAAgB,GAAGX,aAAa,CAAC;MACxCI,MAAM,CAACQ,kBAAkB,GAAGZ,aAAa,CAAC;MAC1C,IAAI;QACFI,MAAM,CAACS,oBAAoB,CAACb,aAAa,CAAC;MAC5C,CAAC,CAAC,MAAM;QACN;MAAA;MAEF,IAAI;QACFI,MAAM,CAACU,iBAAiB,GAAGd,aAAa,CAAC;MAC3C,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;IACA,IAAII,MAAM,IAAI,CAACJ,aAAa,EAAE;MAC5BI,MAAM,CAACO,gBAAgB,GAAG,IAAI,CAAC;IACjC;EACF,CAAC,EAAE,CAACP,MAAM,EAAEJ,aAAa,CAAC,CAAC;EAE3B,IAAAU,gBAAS,EAAC,MAAM;IACd,MAAMK,UAAU,GAAGd,SAAS,GAAGD,aAAa,CAAC;IAC7C,MAAMgB,uBAAuB,GAC3B,CAAC,CAAChB,aAAa,IAAI,CAACV,oBAAoB,CAACyB,UAAU,CAAC;IAEtD,MAAME,iBAAiB,GAAG,MAAAA,CAAA,KAAY;MACpC,IAAI,CAACb,MAAM,IAAI,CAACJ,aAAa,EAAE;QAAC;MAAO;MACvC;MACA;MACA;MACA,IAAI;QACFI,MAAM,CAACS,oBAAoB,CAACb,aAAa,CAAC;MAC5C,CAAC,CAAC,MAAM;QACN;MAAA;MAEFM,QAAQ,CAAC,IAAAY,wBAAY,EAAC;QAAEC,OAAO,EAAE,IAAI;QAAEC,OAAO,EAAEpB;MAAc,CAAC,CAAC,CAAC;MACjE,IAAI;QACF,MAAMqB,GAAG,GAAG,MAAMjB,MAAM,CAACkB,gBAAgB,CAACtB,aAAa,EAAE,EAAE,CAAC;QAC5D,IAAI,CAACqB,GAAG,EAAEhC,MAAM,EAAE;UAChBe,MAAM,CAACmB,sBAAsB,GAAGvB,aAAa,CAAC,CAACwB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE;QACA,IAAIH,GAAG,IAAIxC,kBAAkB,CAACwC,GAAG,CAAC,GAAG,CAAC,EAAE;UACtCf,QAAQ,CAAC,IAAAY,wBAAY,EAAC;YAAEC,OAAO,EAAE,KAAK;YAAEC,OAAO,EAAEpB;UAAc,CAAC,CAAC,CAAC;UAClE,MAAMI,MAAM,CAACkB,gBAAgB,CAC3BtB,aAAa,EACb,EAAE,GAAGnB,kBAAkB,CAACwC,GAAG,CAAC,EAC5BI,MAAM,CAACJ,GAAG,CAAC,CAAC,CAAC,CAAC1B,EAAE,CAClB,CAAC;QACH;MACF,CAAC,SAAS;QACRW,QAAQ,CACN,IAAAY,wBAAY,EAAC;UACXC,OAAO,EAAE,KAAK;UACdC,OAAO,EAAEpB,aAAa;UACtB0B,WAAW,EAAEtC;QACf,CAAC,CACH,CAAC;MACH;IACF,CAAC;IAED,MAAMuC,yBAAyB,GAAG,MAAAA,CAAA,KAAY;MAC5C,IAAI,CAAC1B,SAAS,CAACD,aAAa,CAAC,IAAIA,aAAa,IAAII,MAAM,EAAE;QACxD,MAAMA,MAAM,CAACS,oBAAoB,CAACb,aAAa,CAAC;QAChD,IAAIE,MAAM,EAAE0B,OAAO,EAAE;UACnB,MAAMpB,SAAS,CAACJ,MAAM,EAAEF,MAAM,CAAC;QACjC,CAAC,MAAM;UACL,MAAME,MAAM,CAACyB,cAAc,CAAC,CAAC;QAC/B;QACA,MAAMZ,iBAAiB,CAAC,CAAC;MAC3B,CAAC,MAAM;QACL,MAAMA,iBAAiB,CAAC,CAAC;MAC3B;IACF,CAAC;IAED,IAAIa,MAAM,CAACC,IAAI,CAAC9B,SAAS,CAAC,EAAEZ,MAAM,GAAG,CAAC,EAAE;MACtC,IACEW,aAAa,IACb,CAACC,SAAS,GAAGD,aAAa,CAAC,IAC3B8B,MAAM,CAACC,IAAI,CAAC9B,SAAS,CAAC,CAACZ,MAAM,GAAG,CAAC,EACjC;QACAiB,QAAQ,CAAC,IAAAY,wBAAY,EAAC;UAAEC,OAAO,EAAE,IAAI;UAAEC,OAAO,EAAEpB;QAAc,CAAC,CAAC,CAAC;QACjE2B,yBAAyB,CAAC,CAAC;MAC7B,CAAC,MAAM,IAAI3B,aAAa,IAAIgB,uBAAuB,EAAE;QACnD;QACA;QACA;QACA;QACA;QACA;QACAV,QAAQ,CAAC,IAAAY,wBAAY,EAAC;UAAEC,OAAO,EAAE,IAAI;UAAEC,OAAO,EAAEpB;QAAc,CAAC,CAAC,CAAC;QACjEiB,iBAAiB,CAAC,CAAC;MACrB,CAAC,MAAM;QACLX,QAAQ,CAAC,IAAAY,wBAAY,EAAC;UAAEC,OAAO,EAAE,KAAK;UAAEC,OAAO,EAAEpB;QAAc,CAAC,CAAC,CAAC;MACpE;IACF,CAAC,MAAM,IAAI,CAACC,SAAS,GAAGD,aAAa,CAAC,EAAE;MACtC2B,yBAAyB,CAAC,CAAC;IAC7B;IAEA,IAAIvB,MAAM,IAAIF,MAAM,EAAE8B,YAAY,EAAE;MAClC,MAAMC,QAAQ,GAAG/B,MAAM,EAAE8B,YAAY,CAACE,KAAK,CACxC3C,IAAI,IAAKU,SAAS,CAAC,OAAOV,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAGA,IAAI,CAAC4C,GAAG,CAAC,KAAK/C,SACtE,CAAC;MACD,IAAIa,SAAS,IAAI,CAACgC,QAAQ,EAAE;QAC1B/B,MAAM,EAAE8B,YAAY,CAACI,GAAG,CAAC,MAAO7C,IAAI,IAAK;UACvCa,MAAM,CAACS,oBAAoB,CAAC,OAAOtB,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAGA,IAAI,CAAC4C,GAAG,CAAC;QACzE,CAAC,CAAC;QACF,IAAIjC,MAAM,EAAE0B,OAAO,EAAE;UACnB;QAAA,CACD,MAAM;UACLxB,MAAM,CAACyB,cAAc,CAAC,CAAC;QACzB;MACF;IACF;EACF,CAAC,EAAE,CACD7B,aAAa,EACb8B,MAAM,CAACC,IAAI,CAAC9B,SAAS,CAAC,CAACZ,MAAM,EAC7Bc,aAAa,EACbF,SAAS,GAAGD,aAAa,CAAC,EAAER,QAAQ,EAAEH,MAAM,CAC7C,CAAC;AACJ,CAAC;AAACgD,OAAA,CAAAtC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_roomsSlice","_xmppProvider","_reactRedux","_useGetNewArchRoom","_interopRequireDefault","e","__esModule","default","countUndefinedText","arr","Array","isArray","filter","item","body","undefined","length","hasLoadedRoomHistory","room","messages","some","message","id","pending","String","trim","defaultRoomJids","config","defaultRooms","map","jid","useRoomInitialization","activeRoomJID","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","hasRooms","useSelector","state","Object","keys","rooms","activeRoomExists","activeHistoryLoaded","defaultRoomsMissing","jids","syncRooms","useGetNewArchRoom","useEffect","setActiveRoomJid","promoteRoomHistory","presenceInRoomStanza","getRoomInfoStanza","roomsList","getState","shouldLoadActiveHistory","getDefaultHistory","setIsLoading","loading","chatJID","res","getHistoryStanza","prioritizeRoomPresence","catch","Number","loadingText","initialPresenceAndHistory","newArch","getRoomsStanza","isLoading","exports"],"sourceRoot":"../../../src","sources":["hooks/useRoomInitialization.tsx"],"mappings":"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","ignoreList":[]}
@@ -75,14 +75,12 @@ const useSendMessage = _configOverride => {
75
75
  // Mirrors the web SDK, which always sends through the translate-tag path.
76
76
  const langSource = (0, _reactRedux.useSelector)(state => state.chatSettingStore.langSource);
77
77
  const editAction = (0, _reactRedux.useSelector)(state => state.rooms.editAction);
78
- const rooms = (0, _reactRedux.useSelector)(state => state.rooms.rooms);
79
78
  const {
80
79
  handleMessageSent,
81
80
  handleMessageFailed,
82
81
  handleMessageEdited,
83
82
  handleMessageRetry
84
83
  } = (0, _useEventHandlers.useEventHandlers)(config);
85
- const failedMessages = (0, _reactRedux.useSelector)(state => state.roomHeapSlice?.failedMessages || {});
86
84
  const sendMessage = (0, _react.useCallback)(async (message, activeRoomJID, isReply, isChecked, mainMessage, existingId) => {
87
85
  if (editAction?.isEdit) {
88
86
  try {
@@ -136,6 +134,14 @@ const useSendMessage = _configOverride => {
136
134
  // manual-mode readers see the Translate link on it too (parity with
137
135
  // the web SDK, which stamps langSource on the optimistic message).
138
136
  langSource: langSource || 'en',
137
+ // Reply fields as the wire carries them (strings), so a thread reply
138
+ // shows in its thread — and NOT in the channel — from the first
139
+ // frame, not only once the server echo lands.
140
+ ...(isReply ? {
141
+ isReply: 'true',
142
+ showInChannel: isChecked ? 'true' : 'false',
143
+ mainMessage
144
+ } : {}),
139
145
  user: {
140
146
  ...user,
141
147
  id: selfId,
@@ -339,7 +345,7 @@ const useSendMessage = _configOverride => {
339
345
  mimetype: type,
340
346
  originalName: data?.name,
341
347
  size: fileSizeStr,
342
- isReply,
348
+ isReply: isReply ? 'true' : 'false',
343
349
  showInChannel: `${isChecked}`,
344
350
  mainMessage
345
351
  }
@@ -554,7 +560,7 @@ const useSendMessage = _configOverride => {
554
560
  // "sending..."; if the retry fails again `markMessageFailed` re-arms
555
561
  // it. No-op when the id isn't in the failed map.
556
562
  const retryMessage = (0, _react.useCallback)(async failedId => {
557
- const payload = failedMessages[failedId];
563
+ const payload = reduxStore.getState().roomHeapSlice?.failedMessages?.[failedId];
558
564
  if (!payload) {
559
565
  return;
560
566
  }
@@ -564,7 +570,7 @@ const useSendMessage = _configOverride => {
564
570
  // failed, but a confirmed (non-pending) copy is already sitting in
565
571
  // the room. Resending here would deliver a genuine duplicate; just
566
572
  // clear the failure and let the existing copy stand.
567
- const roomMsgs = rooms?.[payload.roomJID]?.messages || [];
573
+ const roomMsgs = reduxStore.getState().rooms?.rooms?.[payload.roomJID]?.messages || [];
568
574
  const alreadyDelivered = roomMsgs.some(m => !m.pending && (m.id === failedId || m.xmppId === failedId));
569
575
  if (alreadyDelivered) {
570
576
  dispatch((0, _roomHeapSlice.clearMessageFailure)(failedId));
@@ -584,7 +590,7 @@ const useSendMessage = _configOverride => {
584
590
  } else {
585
591
  await sendMedia(payload.data, payload.type, payload.roomJID, payload.isReply, payload.isChecked, payload.mainMessage, failedId);
586
592
  }
587
- }, [failedMessages, rooms, dispatch, handleMessageRetry, sendMessage, sendMedia]);
593
+ }, [reduxStore, dispatch, handleMessageRetry, sendMessage, sendMedia]);
588
594
 
589
595
  // ChatRoom/ThreadWrapper consume this as the "edit branch" of send.
590
596
  // It mirrors the edit path inside `sendMessage` so callers can wire it
@@ -621,7 +627,7 @@ const useSendMessage = _configOverride => {
621
627
  if (!roomJID) {
622
628
  return false;
623
629
  }
624
- const msgs = rooms?.[roomJID]?.messages;
630
+ const msgs = reduxStore.getState().rooms?.rooms?.[roomJID]?.messages;
625
631
  if (!msgs || msgs.length === 0) {
626
632
  return false;
627
633
  }
@@ -634,7 +640,7 @@ const useSendMessage = _configOverride => {
634
640
  return false;
635
641
  }
636
642
  return last.user?.id === selfId;
637
- }, [rooms, user?.xmppUsername, user?.walletAddress]);
643
+ }, [reduxStore, user?.xmppUsername, user?.walletAddress]);
638
644
  return {
639
645
  sendMessage,
640
646
  sendMedia,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","failedMessages","roomHeapSlice","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","setEditAction","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","streamOnline","getGlobalXmppClient","status","console","warn","watchdogTimer","setTimeout","removeOutboundSend","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","showInChannel","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","setEditAction","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","getGlobalXmppClient","status","console","warn","watchdogTimer","setTimeout","removeOutboundSend","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAKA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,cAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,iBAAA,GAAAX,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMY,mBAAmB,GAAG,MAAM;;AAElC;AACA;AACA;AACA;AACA;AACA,MAAMC,yBAAyB,GAAG,MAAM;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,WAAW,GAAG,CAAC;AACnB,MAAMC,YAAY,GAAIC,MAAc,IAClC,GAAGA,MAAM,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,IAAKJ,WAAW,GAAIA,WAAW,GAAG,CAAC,KAAM,CAAC,EAAG;;AAEtE;AACA;AACA;AACA,MAAMK,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI;AAEjC,MAAMC,cAAc,GAAIC,eAAyB,IAAK;EAC3D,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,2BAAa,EAAC,CAAC;EAClC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B;EACA;EACA;EACA,MAAMC,UAAU,GAAG,IAAAC,oBAAQ,EAAY,CAAC;;EAExC;EACA;EACA;EACA;EACA,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACH,IAAI,CAAC;EAC3E,MAAMI,MAAM,GAAG,IAAAH,uBAAW,EACvBC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACC,MAC/C,CAAC;EACD;EACA;EACA;EACA;EACA;EACA,MAAMC,UAAU,GAAG,IAAAJ,uBAAW,EAC3BC,KAAgB,IAAKA,KAAK,CAACC,gBAAgB,CAACE,UAC/C,CAAC;EACD,MAAMC,UAAU,GAAG,IAAAL,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACK,KAAK,CAACD,UAAU,CAAC;EAE5E,MAAM;IACJE,iBAAiB;IACjBC,mBAAmB;IACnBC,mBAAmB;IACnBC;EACF,CAAC,GAAG,IAAAC,kCAAgB,EAACR,MAAM,CAAC;EAE5B,MAAMS,WAAW,GAAG,IAAAC,kBAAW,EAC7B,OACEC,OAAe,EACfC,aAAqB,EACrBC,OAAiB,EACjBC,SAAmB,EACnBC,WAAoB,EAOpBC,UAAmB,KAChB;IACH,IAAId,UAAU,EAAEe,MAAM,EAAE;MACtB,IAAI;QACF3B,MAAM,EAAE4B,iBAAiB,CACvBhB,UAAU,CAACiB,OAAO,EAClBjB,UAAU,CAACkB,SAAS,EACpBT,OACF,CAAC;QACDL,mBAAmB,CAAC;UAClBc,SAAS,EAAElB,UAAU,CAACkB,SAAU;UAChCC,UAAU,EAAEV,OAAO;UACnBW,OAAO,EAAEpB,UAAU,CAACiB,OAAQ;UAC5BvB;QACF,CAAC,CAAC;MACJ,CAAC,CAAC,OAAO2B,KAAK,EAAE;QACdlB,mBAAmB,CAAC;UAClBM,OAAO;UACPW,OAAO,EAAEpB,UAAU,CAACiB,OAAQ;UAC5BI,KAAK,EAAEA,KAAc;UACrBC,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;MACAhC,QAAQ,CAAC,IAAAiC,yBAAa,EAAC;QAAER,MAAM,EAAE;MAAM,CAAC,CAAC,CAAC;MAC1C;IACF;;IAEA;IACA3B,MAAM,EAAEoC,cAAc,GAAGd,aAAa,CAAC;;IAEvC;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMe,YAAY,GAAGX,UAAU,IAAIjC,YAAY,CAAC,mBAAmB,CAAC;IACpE,MAAM6C,cAAc,GAAG,IAAI3C,IAAI,CAAC,CAAC,CAAC4C,WAAW,CAAC,CAAC;IAC/C,MAAMC,MAAM,GACTlC,IAAI,EAAUmC,YAAY,IAAKnC,IAAI,EAAUoC,aAAa,IAAI,EAAE;IACnE,MAAMC,iBAA2B,GAAG;MAClCC,EAAE,EAAEP,YAAY;MAChB;MACA;MACA;MACA;MACAQ,MAAM,EAAER,YAAY;MACpBS,IAAI,EAAEzB,OAAO;MACbQ,OAAO,EAAEP,aAAa;MACtByB,IAAI,EAAET,cAAc;MACpBU,OAAO,EAAE,IAAI;MACbC,SAAS,EAAE,KAAK;MAChB;MACA;MACA;MACAtC,UAAU,EAAGA,UAAU,IAAY,IAAI;MACvC;MACA;MACA;MACA,IAAIY,OAAO,GACP;QACEA,OAAO,EAAE,MAAM;QACf2B,aAAa,EAAE1B,SAAS,GAAG,MAAM,GAAG,OAAO;QAC3CC;MACF,CAAC,GACD,CAAC,CAAC,CAAC;MACPnB,IAAI,EAAE;QACJ,GAAIA,IAAY;QAChBsC,EAAE,EAAEJ,MAAM;QACVW,IAAI,EAAE,GAAG7C,IAAI,EAAE8C,SAAS,IAAI,EAAE,IAAI9C,IAAI,EAAE+C,QAAQ,IAAI,EAAE,EAAE,CAACC,IAAI,CAAC,CAAC,IAAId;MACrE;IACF,CAAa;IACb;IACA;IACA;IACA;IACA,IAAI,CAAC9B,MAAM,EAAE6C,gBAAgB,IAAI,CAAC7B,UAAU,EAAE;MAC5CxB,QAAQ,CACN,IAAAsD,0BAAc,EAAC;QAAExB,OAAO,EAAEV,aAAa;QAAED,OAAO,EAAEsB;MAAkB,CAAC,CACvE,CAAC;IACH;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA,IAAIc,gBAAgB,GAAG,KAAK;IAC5B,MAAMC,WAAW,GAAGA,CAAA,KAAM;MACxB,MAAMlD,KAAK,GAAGJ,UAAU,CAACuD,QAAQ,CAAC,CAAC;MACnC,MAAMC,QAAQ,GAAGpD,KAAK,CAACK,KAAK,EAAEA,KAAK,GAAGS,aAAa,CAAC,EAAEuC,QAAQ,IAAI,EAAE;MACpE,MAAMC,YAAY,GAAGF,QAAQ,CAACG,IAAI,CAC/BC,CAAM,IAAKA,CAAC,CAACpB,EAAE,KAAKP,YAAY,IAAI2B,CAAC,CAAChB,OACzC,CAAC;MACD,MAAMiB,aAAa,GAAGzD,KAAK,CAAC0D,aAAa,EAAEC,cAAc,GAAG9B,YAAY,CAAC;;MAEzE;MACA;MACA;MACA;MACA;MACA;MACA;MACA,MAAM+B,YAAY,GAAG,IAAAC,mCAAmB,EAAC,CAAC,EAAEC,MAAM,KAAK,QAAQ;MAC/D,IAAIR,YAAY,IAAI,CAACG,aAAa,IAAI,CAACG,YAAY,IAAI,CAACX,gBAAgB,EAAE;QACxEA,gBAAgB,GAAG,IAAI;QACvBc,OAAO,CAACC,IAAI,CACV,mBAAmBnC,YAAY,mEACjC,CAAC;QACDoC,aAAa,GAAGC,UAAU,CAAChB,WAAW,EAAEpE,mBAAmB,CAAC;QAC5D;MACF;MAEA,IAAIwE,YAAY,IAAI,CAACG,aAAa,EAAE;QAClCM,OAAO,CAACC,IAAI,CACV,iCAAiCnC,YAAY,oBAAoB/C,mBAAmB,oBACtF,CAAC;QACD;QACA;QACA;QACA;QACA;QACA;QACA,IAAAqF,iCAAkB,EAACtC,YAAY,CAAC;QAChCnC,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,MAAM;UACZjC,EAAE,EAAEP,YAAY;UAChBL,OAAO,EAAEV,aAAa;UACtBwB,IAAI,EAAEzB,OAAO;UACbE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;QACDV,mBAAmB,CAAC;UAClBM,OAAO;UACPW,OAAO,EAAEV,aAAa;UACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,iCAAiC,CAAC;UACnD5C,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;IACF,CAAC;IAED,IAAIuC,aAAa,GAAGC,UAAU,CAAChB,WAAW,EAAEpE,mBAAmB,CAAC;IAEhE,IAAI;MACF;MACA;MACA;MACA;MACA;MACA,MAAMyF,UAAU,GAAIC,CAAM,IACxBA,CAAC,CAACC,qCAAqC,CACrC3D,aAAa,EACbhB,IAAI,CAAC8C,SAAS,EACd9C,IAAI,CAAC+C,QAAQ,EACb,EAAE,EACF/C,IAAI,CAACoC,aAAa,EAClBrB,OAAO,EACP,EAAE,EACFE,OAAO,IAAI,KAAK,EAChBC,SAAS,IAAI,KAAK,EAClBC,WAAW,IAAI,EAAE,EAChBd,UAAU,IAAY,IAAI,EAC3B0B,YACF,CAAC;;MAEH;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA,IAAA6C,kCAAmB,EAAC;QAClB7C,YAAY;QACZL,OAAO,EAAEV,aAAa;QACtB6D,UAAU,EAAExF,IAAI,CAACC,GAAG,CAAC,CAAC;QACtBwF,IAAI,EAAEL;MACR,CAAC,CAAC;;MAEF;MACA;MACA;MACA;MACA,MAAMM,eAAoB,GAAG,CAC3BrF,MAAM,EACN,IAAAqE,mCAAmB,EAAC,CAAC,EACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM,CAC3C,CAAC+D,IAAI,CAAEiB,CAAM,IAAKA,CAAC,IAAIA,CAAC,CAACV,MAAM,KAAK,QAAQ,CAAC;MAE9C,IAAI,CAACe,eAAe,EAAE;QACpB;QACA;QACA,MAAME,SAAc,GAClBvF,MAAM,IACN,IAAAqE,mCAAmB,EAAC,CAAC,IACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM;QAC5C,IAAI;UACFuF,SAAS,EAAEC,cAAc,GAAG,CAAC;QAC/B,CAAC,CAAC,MAAM,CAAC;QACT;MACF;MAEAT,UAAU,CAACM,eAAe,CAAC;MAC3B,IAAI;QACFA,eAAe,CAACI,iBAAiB,GAAG,CAAC;MACvC,CAAC,CAAC,MAAM,CAAC;MACT,MAAM3E,iBAAiB,CAAC;QACtBO,OAAO;QACPW,OAAO,EAAEV,aAAa;QACtBhB,IAAI;QACJ4B,WAAW,EAAE;MACf,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOD,KAAK,EAAE;MACdyD,YAAY,CAACjB,aAAa,CAAC;MAC3B;MACA;MACA,IAAAE,iCAAkB,EAACtC,YAAY,CAAC;MAChCnC,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;QAChBC,IAAI,EAAE,MAAM;QACZjC,EAAE,EAAEP,YAAY;QAChBL,OAAO,EAAEV,aAAa;QACtBwB,IAAI,EAAEzB,OAAO;QACbE,OAAO;QACPC,SAAS;QACTC;MACF,CAAC,CACH,CAAC;MACDV,mBAAmB,CAAC;QAClBM,OAAO;QACPW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAACtB,UAAU,EAAEZ,MAAM,EAAEM,IAAI,EAAEK,UAAU,EAAET,QAAQ,EAAEY,iBAAiB,EAAEE,mBAAmB,EAAED,mBAAmB,EAAEX,UAAU,CAC1H,CAAC;EAED,MAAMuF,SAAS,GAAG,IAAAvE,kBAAW,EAC3B,OACEwE,IAAS,EACTC,IAAY,EACZvE,aAAqB,EACrBC,OAAgB,GAAG,KAAK,EACxBC,SAAkB,GAAG,KAAK,EAC1BC,WAAmB,GAAG,EAAE,EACxBC,UAAmB,KAChB;IACH1B,MAAM,EAAEoC,cAAc,GAAGd,aAAa,CAAC;;IAEvC;IACA;IACA,IAAI,OAAOsE,IAAI,EAAEE,IAAI,KAAK,QAAQ,IAAIF,IAAI,CAACE,IAAI,GAAGjG,eAAe,EAAE;MACjE0E,OAAO,CAACC,IAAI,CAAC,wCAAwC,EAAE;QACrDrB,IAAI,EAAEyC,IAAI,EAAEzC,IAAI;QAChB2C,IAAI,EAAEF,IAAI,EAAEE;MACd,CAAC,CAAC;MACF,IAAIpE,UAAU,EAAE;QACdxB,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,OAAO;UACbjC,EAAE,EAAElB,UAAU;UACdM,OAAO,EAAEV,aAAa;UACtBsE,IAAI;UACJC,IAAI;UACJtE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;MACH;MACAV,mBAAmB,CAAC;QAClBM,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,qCAAqC,CAAC;QACvD5C,WAAW,EAAE;MACf,CAAC,CAAC;MACF;IACF;IAEA,MAAMU,EAAE,GAAGlB,UAAU,IAAI,sBAAsB,IAAAqE,QAAM,EAAC,CAAC,EAAE;IACzD,MAAMC,mBAAmB,GAAGrG,IAAI,CAACC,GAAG,CAAC,CAAC;IACtC,MAAM0C,cAAc,GAAG,IAAI3C,IAAI,CAACqG,mBAAmB,CAAC,CAACzD,WAAW,CAAC,CAAC;IAClE,MAAMC,MAAM,GACTlC,IAAI,EAAUmC,YAAY,IAAKnC,IAAI,EAAUoC,aAAa,IAAI,EAAE;IACnE,MAAMuD,WAAW,GACf,GAAG3F,IAAI,EAAE8C,SAAS,IAAI,EAAE,IAAI9C,IAAI,EAAE+C,QAAQ,IAAI,EAAE,EAAE,CAACC,IAAI,CAAC,CAAC,IAAId,MAAM;IACrE,MAAM0D,WAAW,GAAGN,IAAI,EAAEE,IAAI,IAAI,IAAI,GAAGK,MAAM,CAACP,IAAI,CAACE,IAAI,CAAC,GAAG,EAAE;IAE/D,MAAMM,iBAAiB,GACrB,OAAOR,IAAI,EAAES,GAAG,KAAK,QAAQ,GACzBT,IAAI,CAACS,GAAG,CAACC,OAAO,CAAC,sBAAsB,EAAE,SAAS,CAAC,GACnD,EAAE;IAER,IAAI,CAAC5F,MAAM,EAAE6C,gBAAgB,IAAI,CAAC7B,UAAU,EAAE;MAC5CxB,QAAQ,CACN,IAAAsD,0BAAc,EAAC;QACbxB,OAAO,EAAEV,aAAa;QACtBD,OAAO,EAAE;UACPuB,EAAE,EAAEA,EAAE;UACNE,IAAI,EAAE,OAAO;UACbjB,OAAO,EAAEP,aAAa;UACtByB,IAAI,EAAET,cAAc;UACpBiE,kBAAkB,EAAEP,mBAAmB;UACvC1F,IAAI,EAAE;YACJ,GAAIA,IAAY;YAChBsC,EAAE,EAAEJ,MAAM;YACVW,IAAI,EAAE8C;UACR,CAAC;UACDjD,OAAO,EAAE,IAAI;UACbC,SAAS,EAAE,KAAK;UAChBJ,MAAM,EAAED,EAAE;UACV4D,QAAQ,EAAE,GAAGlF,aAAa,IAAIkB,MAAM,EAAE;UACtCiE,eAAe,EAAE,OAAO;UACxBC,WAAW,EAAE,MAAM;UACnBC,QAAQ,EAAEf,IAAI,EAAEzC,IAAI;UACpByD,QAAQ,EAAER,iBAAiB;UAC3BS,eAAe,EAAET,iBAAiB;UAClCU,QAAQ,EAAEjB,IAAI;UACdkB,YAAY,EAAEnB,IAAI,EAAEzC,IAAI;UACxB2C,IAAI,EAAEI,WAAW;UACjB3E,OAAO,EAAEA,OAAO,GAAG,MAAM,GAAG,OAAO;UACnC2B,aAAa,EAAE,GAAG1B,SAAS,EAAE;UAC7BC;QACF;MACF,CAAC,CACH,CAAC;MACDvB,QAAQ,CACN,IAAA8G,+BAAgB,EAAC;QACfpE,EAAE,EAAEA,EAAE;QACNtC,IAAI,EAAE;UACJ,GAAIA,IAAY;UAChBsC,EAAE,EAAEJ,MAAM;UACVW,IAAI,EAAE8C;QACR,CAAC;QACDlD,IAAI,EAAET,cAAc;QACpBiE,kBAAkB,EAAEP,mBAAmB;QACvClD,IAAI,EAAE,OAAO;QACbjB,OAAO,EAAEP,aAAa;QACtBkF,QAAQ,EAAE,GAAGlF,aAAa,IAAIkB,MAAM,EAAE;QACtCjB,OAAO;QACP2B,aAAa,EAAE,GAAG1B,SAAS,EAAS;QACpCC;MACF,CAAoB,CACtB,CAAC;IACH;;IAEA;IACA;IACA;IACA;IACA,MAAMwF,aAAa,GAAGvC,UAAU,CAAC,MAAM;MACrC,MAAMlE,KAAK,GAAGJ,UAAU,CAACuD,QAAQ,CAAC,CAAC;MACnC,MAAMC,QAAQ,GAAGpD,KAAK,CAACK,KAAK,EAAEA,KAAK,GAAGS,aAAa,CAAC,EAAEuC,QAAQ,IAAI,EAAE;MACpE,MAAMC,YAAY,GAAGF,QAAQ,CAACG,IAAI,CAC/BC,CAAM,IAAKA,CAAC,CAACpB,EAAE,KAAKA,EAAE,IAAIoB,CAAC,CAAChB,OAC/B,CAAC;MACD,MAAMiB,aAAa,GAAGzD,KAAK,CAAC0D,aAAa,EAAEC,cAAc,GAAGvB,EAAE,CAAC;MAC/D,IAAIkB,YAAY,IAAI,CAACG,aAAa,EAAE;QAClCM,OAAO,CAACC,IAAI,CACV,+BAA+B5B,EAAE,oBAAoBtD,mBAAmB,oBAC1E,CAAC;QACD;QACA;QACA;QACA,IAAAqF,iCAAkB,EAAC/B,EAAE,CAAC;QACtB1C,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;UAChBC,IAAI,EAAE,OAAO;UACbjC,EAAE;UACFZ,OAAO,EAAEV,aAAa;UACtBsE,IAAI;UACJC,IAAI;UACJtE,OAAO;UACPC,SAAS;UACTC;QACF,CAAC,CACH,CAAC;QACDV,mBAAmB,CAAC;UAClBM,OAAO,EAAE,OAAO;UAChBW,OAAO,EAAEV,aAAa;UACtBW,KAAK,EAAE,IAAI6C,KAAK,CAAC,uCAAuC,CAAC;UACzD5C,WAAW,EAAE;QACf,CAAC,CAAC;MACJ;IACF,CAAC,EAAE3C,yBAAyB,CAAC;;IAE7B;IACA;IACA;IACA;IACA;IACA,MAAM2H,QAAQ,GAAG;MACfb,GAAG,EAAED,iBAAiB,IAAIR,IAAI,EAAES,GAAG;MACnCR,IAAI,EACFD,IAAI,EAAEC,IAAI,IACVD,IAAI,EAAEuB,QAAQ,IACdtB,IAAI,IACJ,0BAA0B;MAC5B1C,IAAI,EAAEyC,IAAI,EAAEzC,IAAI,IAAIyC,IAAI,EAAEe,QAAQ,IAAI,SAAShH,IAAI,CAACC,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,MAAMwH,SAAS,GAAG,MAAAA,CAAA,KAAY;MAC5B,MAAMC,EAAE,GAAG,IAAIC,QAAQ,CAAC,CAAC;MACzBD,EAAE,CAACE,MAAM,CAAC,OAAO,EAAEL,QAAe,CAAC;MACnC,IAAI;QACF,OAAO,MAAM,IAAAM,kBAAY,EAACH,EAAE,EAAE/F,aAAa,CAAC;MAC9C,CAAC,CAAC,OAAOmG,GAAQ,EAAE;QACjB,IAAIA,GAAG,EAAEC,QAAQ,EAAEpD,MAAM,KAAK,GAAG,EAAE;UACjCC,OAAO,CAACC,IAAI,CACV,qEAAqE,EACrE;YAAErB,IAAI,EAAE+D,QAAQ,CAAC/D,IAAI;YAAE0C,IAAI,EAAEqB,QAAQ,CAACrB;UAAK,CAC7C,CAAC;UACD,MAAM8B,GAAG,GAAG,IAAIL,QAAQ,CAAC,CAAC;UAC1BK,GAAG,CAACJ,MAAM,CAAC,MAAM,EAAEL,QAAe,CAAC;UACnC,OAAO,MAAM,IAAAM,kBAAY,EAACG,GAAG,EAAErG,aAAa,CAAC;QAC/C;QACA,MAAMmG,GAAG;MACX;IACF,CAAC;IAED,IAAI;MACF,MAAMC,QAAQ,GAAG,MAAMN,SAAS,CAAC,CAAC;MAClC;MACA;MACA;MACA;MACA;;MAEA,KAAK,MAAMQ,IAAI,IAAIF,QAAQ,CAAC9B,IAAI,CAACiC,OAAO,EAAE;QACxC,MAAMC,cAAc,GAAG;UACrB1E,SAAS,EAAE9C,IAAI,CAAC8C,SAAS;UACzBC,QAAQ,EAAE/C,IAAI,CAAC+C,QAAQ;UACvBX,aAAa,EAAEpC,IAAI,CAACoC,aAAa;UACjCqF,SAAS,EAAEH,IAAI,CAACG,SAAS;UACzBC,SAAS,EAAEJ,IAAI,CAACI,SAAS;UACzBrB,QAAQ,EAAEiB,IAAI,CAACK,QAAQ;UACvBC,SAAS,EAAEN,IAAI,EAAEM,SAAS;UAC1BtB,QAAQ,EAAEgB,IAAI,CAAChB,QAAQ;UACvBC,eAAe,EAAEe,IAAI,CAACf,eAAe;UACrCC,QAAQ,EAAEc,IAAI,CAACd,QAAQ;UACvBC,YAAY,EAAEa,IAAI,EAAEO,YAAY;UAChCC,QAAQ,EAAER,IAAI,EAAEQ,QAAQ;UACxBtC,IAAI,EAAE8B,IAAI,CAAC9B,IAAI;UACfuC,QAAQ,EAAET,IAAI,EAAES,QAAQ;UACxBC,SAAS,EAAEV,IAAI,EAAEU,SAAS;UAC1BC,MAAM,EAAEX,IAAI,EAAEW,MAAM;UACpBC,YAAY,EAAEZ,IAAI,EAAEa,GAAG;UACvBC,SAAS,EAAE,IAAI;UACf7G,OAAO,EAAEP,aAAa;UACtB4B,aAAa,EAAE1B,SAAS;UACxBD,OAAO;UACPE,WAAW;UACXkH,SAAS,EAAEf,IAAI,EAAEe,SAAS;UAC1BC,GAAG,EAAEhB,IAAI,CAACgB;QACZ,CAAC;QACD;QACA;QACA;QACA;QACA;QACA;QACA,MAAMC,oBAAyB,GAAG,CAChC7I,MAAM,EACN,IAAAqE,mCAAmB,EAAC,CAAC,EACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM,CAC3C,CAAC+D,IAAI,CAAEiB,CAAM,IAAKA,CAAC,IAAIA,CAAC,CAACV,MAAM,KAAK,QAAQ,CAAC;QAC9C,IAAIuE,oBAAoB,EAAE;UACxBA,oBAAoB,CAACC,gBAAgB,GAAGxH,aAAa,CAAC;UACtD,MAAMyH,OAAO,CAACC,OAAO,CACnBH,oBAAoB,CAACI,sBAAsB,GAAG3H,aAAa,CAC7D,CAAC,CAAC4H,KAAK,CAAC,MAAM,KAAK,CAAC;UACpBL,oBAAoB,CAACM,sBAAsB,CACzC7H,aAAa,EACbwG,cAAc,EACdlF,EACF,CAAC;UACD,IAAI;YACFiG,oBAAoB,CAACpD,iBAAiB,GAAG,CAAC;UAC5C,CAAC,CAAC,MAAM,CAAC;QACX,CAAC,MAAM;UACL,MAAM2D,cAAmB,GACvBpJ,MAAM,IACN,IAAAqE,mCAAmB,EAAC,CAAC,IACrBiB,gBAAK,CAAC3B,QAAQ,CAAC,CAAC,EAAElD,gBAAgB,EAAET,MAAM;UAC5C,IAAI;YACFoJ,cAAc,EAAE5D,cAAc,GAAG,CAAC;UACpC,CAAC,CAAC,MAAM,CAAC;UACT,IAAAN,kCAAmB,EAAC;YAClB7C,YAAY,EAAEO,EAAE;YAChBZ,OAAO,EAAEV,aAAa;YACtB6D,UAAU,EAAExF,IAAI,CAACC,GAAG,CAAC,CAAC;YACtB;YACA;YACAyJ,KAAK,EAAE9J,yBAAyB;YAChC6F,IAAI,EAAGJ,CAAC,IACNA,CAAC,CAACmE,sBAAsB,CAAC7H,aAAa,EAAEwG,cAAc,EAAElF,EAAE;UAC9D,CAAC,CAAC;QACJ;MACF;MAEA,MAAM9B,iBAAiB,CAAC;QACtBO,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBhB,IAAI;QACJ4B,WAAW,EAAE,OAAO;QACpBoH,QAAQ,EAAE;UACR/H,OAAO;UACPC,SAAS;UACTC,WAAW;UACX8H,QAAQ,EAAE3D,IAAI;UACd4D,QAAQ,EAAE3D,IAAI;UACd/D,SAAS,EAAEc,EAAE;UACb6G,aAAa,EAAE/B,QAAQ,CAAC9B,IAAI,CAACiC;QAC/B;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAO5F,KAAU,EAAE;MACnB;MACA;MACAyD,YAAY,CAACuB,aAAa,CAAC;MAC3B;MACA;MACA;MACA;MACA,MAAMyC,MAAM,GAAG,OAAO9D,IAAI,EAAES,GAAG,KAAK,QAAQ,GAAGT,IAAI,CAACS,GAAG,GAAG,EAAE;MAC5D,MAAMsD,SAAS,GAAGD,MAAM,CAACE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS;MAC/DrF,OAAO,CAACtC,KAAK,CAAC,eAAe,EAAE;QAC7BqC,MAAM,EAAErC,KAAK,EAAEyF,QAAQ,EAAEpD,MAAM;QAC/BuF,UAAU,EAAE5H,KAAK,EAAEyF,QAAQ,EAAEmC,UAAU;QACvCC,UAAU,EAAE7H,KAAK,EAAEyF,QAAQ,EAAE9B,IAAI;QACjCmE,UAAU,EAAE9H,KAAK,EAAEvB,MAAM,EAAEsJ,GAAG;QAC9BC,YAAY,EAAEhI,KAAK,EAAEZ,OAAO;QAC5B6I,SAAS,EAAEjI,KAAK,EAAEkI,IAAI;QACtBC,iBAAiB,EAAEnI,KAAK,EAAEoI,KAAK,EAAEhJ,OAAO;QACxCgF,GAAG,EAAEqD,MAAM;QACXC,SAAS;QACTW,IAAI,EAAEpD,QAAQ,CAACrB,IAAI;QACnB0E,aAAa,EAAE3E,IAAI,EAAEE,IAAI,IAAI,IAAI;QACjCa,QAAQ,EAAEO,QAAQ,CAAC/D,IAAI;QACvBqH,UAAU,EAAEC,qBAAQ,CAACC,EAAE;QACvBC,eAAe,EAAEF,qBAAQ,CAACG;MAC5B,CAAC,CAAC;MACF1K,QAAQ,CACN,IAAA0E,gCAAiB,EAAC;QAChBC,IAAI,EAAE,OAAO;QACbjC,EAAE;QACFZ,OAAO,EAAEV,aAAa;QACtBsE,IAAI;QACJC,IAAI;QACJtE,OAAO;QACPC,SAAS;QACTC;MACF,CAAC,CACH,CAAC;MACDV,mBAAmB,CAAC;QAClBM,OAAO,EAAE,OAAO;QAChBW,OAAO,EAAEV,aAAa;QACtBW,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAAClC,MAAM,EAAEU,MAAM,EAAEJ,IAAI,EAAEJ,QAAQ,EAAEY,iBAAiB,EAAEC,mBAAmB,EAAEX,UAAU,CACrF,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMyK,YAAY,GAAG,IAAAzJ,kBAAW,EAC9B,MAAO0J,QAAgB,IAAK;IAC1B,MAAMC,OAAO,GACX3K,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAACO,aAAa,EAAEC,cAAc,GAAG2G,QAAQ,CAAC;IACjE,IAAI,CAACC,OAAO,EAAE;MAAC;IAAO;;IAEtB;IACA;IACA;IACA;IACA;IACA,MAAMnH,QAAQ,GACZxD,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAAC9C,KAAK,EAAEA,KAAK,GAAGkK,OAAO,CAAC/I,OAAO,CAAC,EAAE6B,QAAQ,IAAI,EAAE;IACvE,MAAMmH,gBAAgB,GAAGpH,QAAQ,CAACqH,IAAI,CACnCjH,CAAM,IACL,CAACA,CAAC,CAAChB,OAAO,KAAKgB,CAAC,CAACpB,EAAE,KAAKkI,QAAQ,IAAI9G,CAAC,CAACnB,MAAM,KAAKiI,QAAQ,CAC7D,CAAC;IACD,IAAIE,gBAAgB,EAAE;MACpB9K,QAAQ,CAAC,IAAAgL,kCAAmB,EAACJ,QAAQ,CAAC,CAAC;MACvC;IACF;IAEA5K,QAAQ,CAAC,IAAAgL,kCAAmB,EAACJ,QAAQ,CAAC,CAAC;IACvC7J,kBAAkB,CAAC;MACjBa,SAAS,EAAEgJ,QAAQ;MACnB9I,OAAO,EAAE+I,OAAO,CAAC/I,OAAO;MACxBE,WAAW,EAAE6I,OAAO,CAAClG;IACvB,CAAC,CAAC;IACF,IAAIkG,OAAO,CAAClG,IAAI,KAAK,MAAM,EAAE;MAC3B,MAAM1D,WAAW,CACf4J,OAAO,CAACjI,IAAI,EACZiI,OAAO,CAAC/I,OAAO,EACf+I,OAAO,CAACxJ,OAAO,EACfwJ,OAAO,CAACvJ,SAAS,EACjBuJ,OAAO,CAACtJ,WAAW;MACnB;MACA;MACAqJ,QACF,CAAC;IACH,CAAC,MAAM;MACL,MAAMnF,SAAS,CACboF,OAAO,CAACnF,IAAI,EACZmF,OAAO,CAAClF,IAAI,EACZkF,OAAO,CAAC/I,OAAO,EACf+I,OAAO,CAACxJ,OAAO,EACfwJ,OAAO,CAACvJ,SAAS,EACjBuJ,OAAO,CAACtJ,WAAW,EACnBqJ,QACF,CAAC;IACH;EACF,CAAC,EACD,CAAC1K,UAAU,EAAEF,QAAQ,EAAEe,kBAAkB,EAAEE,WAAW,EAAEwE,SAAS,CACnE,CAAC;;EAED;EACA;EACA;EACA,MAAMwF,eAAe,GAAG,IAAA/J,kBAAW,EACjC,OAAOC,OAAe,EAAE+J,cAAuB,KAAK;IAClD,IAAI,CAACxK,UAAU,EAAEe,MAAM,IAAI,CAACf,UAAU,CAACiB,OAAO,IAAI,CAACjB,UAAU,CAACkB,SAAS,EAAE;MACvE;IACF;IACA,IAAI;MACF9B,MAAM,EAAE4B,iBAAiB,CACvBhB,UAAU,CAACiB,OAAO,EAClBjB,UAAU,CAACkB,SAAS,EACpBT,OACF,CAAC;MACDL,mBAAmB,CAAC;QAClBc,SAAS,EAAElB,UAAU,CAACkB,SAAS;QAC/BC,UAAU,EAAEV,OAAO;QACnBW,OAAO,EAAEpB,UAAU,CAACiB,OAAO;QAC3BvB;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAO2B,KAAK,EAAE;MACdlB,mBAAmB,CAAC;QAClBM,OAAO;QACPW,OAAO,EAAEpB,UAAU,CAACiB,OAAO;QAC3BI,KAAK,EAAEA,KAAc;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ;IACAhC,QAAQ,CAAC,IAAAiC,yBAAa,EAAC;MAAER,MAAM,EAAE;IAAM,CAAC,CAAC,CAAC;EAC5C,CAAC,EACD,CAAC3B,MAAM,EAAEY,UAAU,EAAEN,IAAI,EAAEJ,QAAQ,EAAEc,mBAAmB,EAAED,mBAAmB,CAC/E,CAAC;;EAED;EACA;EACA;EACA,MAAMsK,kCAAkC,GAAG,IAAAjK,kBAAW,EACnDY,OAAe,IAAc;IAC5B,IAAI,CAACA,OAAO,EAAE;MAAC,OAAO,KAAK;IAAC;IAC5B,MAAMsJ,IAAI,GAAGlL,UAAU,CAACuD,QAAQ,CAAC,CAAC,CAAC9C,KAAK,EAAEA,KAAK,GAAGmB,OAAO,CAAC,EAAE6B,QAAQ;IACpE,IAAI,CAACyH,IAAI,IAAIA,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;MAAC,OAAO,KAAK;IAAC;IAC9C,MAAMC,IAAI,GAAGF,IAAI,CAACA,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;IAClC,IAAI,CAACC,IAAI,EAAExI,OAAO,EAAE;MAAC,OAAO,KAAK;IAAC;IAClC,MAAMR,MAAM,GAAGlC,IAAI,EAAEmC,YAAY,IAAInC,IAAI,EAAEoC,aAAa;IACxD,IAAI,CAACF,MAAM,EAAE;MAAC,OAAO,KAAK;IAAC;IAC3B,OAAOgJ,IAAI,CAAClL,IAAI,EAAEsC,EAAE,KAAKJ,MAAM;EACjC,CAAC,EACD,CAACpC,UAAU,EAAEE,IAAI,EAAEmC,YAAY,EAAEnC,IAAI,EAAEoC,aAAa,CACtD,CAAC;EAED,OAAO;IACLvB,WAAW;IACXwE,SAAS;IACTwF,eAAe;IACfN,YAAY;IACZQ;EACF,CAAC;AACH,CAAC;AAACI,OAAA,CAAA3L,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -30,7 +30,7 @@ const useUnreadMessagesCounter = () => {
30
30
  unreadByRoom[roomJid] = unreadCount;
31
31
  totalCount += unreadCount;
32
32
  }
33
- if (room?.unreadCapped) {
33
+ if (room?.unreadCapped && unreadCount >= 10) {
34
34
  isCapped = true;
35
35
  }
36
36
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_roomStore","useUnreadMessagesCounter","subscribe","callback","store","roomsState","useSyncExternalStore","getState","rooms","unreadByRoom","totalCount","isCapped","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","unreadCapped","hasUnread","isLoading","isUnreadSyncing","exports","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAD,OAAA;AAmBO,MAAME,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKC,gBAAK,CAACF,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAME,UAAU,GAAG,IAAAC,2BAAoB,EACrCJ,SAAS,EACT,MAAME,gBAAK,CAACG,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGH,UAAU,CAACG,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,QAAQ,GAAG,KAAK;EAEpBC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBR,YAAY,CAACM,OAAO,CAAC,GAAGE,WAAW;MACnCP,UAAU,IAAIO,WAAW;IAC3B;IACA,IAAKD,IAAI,EAAUG,YAAY,EAAE;MAC/BR,QAAQ,GAAG,IAAI;IACjB;EACF,CAAC,CAAC;EAEF,OAAO;IACLS,SAAS,EAAEV,UAAU,GAAG,CAAC;IACzBA,UAAU;IACVD,YAAY;IACZY,SAAS,EAAE,CAAC,CAAChB,UAAU,CAACiB,eAAe,IAAI,CAAC,CAACjB,UAAU,CAACgB,SAAS;IACjEV;EACF,CAAC;AACH,CAAC;AAACY,OAAA,CAAAC,SAAA,GAAAD,OAAA,CAAAtB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_roomStore","useUnreadMessagesCounter","subscribe","callback","store","roomsState","useSyncExternalStore","getState","rooms","unreadByRoom","totalCount","isCapped","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","unreadCapped","hasUnread","isLoading","isUnreadSyncing","exports","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAD,OAAA;AAmBO,MAAME,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKC,gBAAK,CAACF,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAME,UAAU,GAAG,IAAAC,2BAAoB,EACrCJ,SAAS,EACT,MAAME,gBAAK,CAACG,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGH,UAAU,CAACG,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,QAAQ,GAAG,KAAK;EAEpBC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBR,YAAY,CAACM,OAAO,CAAC,GAAGE,WAAW;MACnCP,UAAU,IAAIO,WAAW;IAC3B;IACA,IAAKD,IAAI,EAAUG,YAAY,IAAIF,WAAW,IAAI,EAAE,EAAE;MACpDN,QAAQ,GAAG,IAAI;IACjB;EACF,CAAC,CAAC;EAEF,OAAO;IACLS,SAAS,EAAEV,UAAU,GAAG,CAAC;IACzBA,UAAU;IACVD,YAAY;IACZY,SAAS,EAAE,CAAC,CAAChB,UAAU,CAACiB,eAAe,IAAI,CAAC,CAACjB,UAAU,CAACgB,SAAS;IACjEV;EACF,CAAC;AACH,CAAC;AAACY,OAAA,CAAAC,SAAA,GAAAD,OAAA,CAAAtB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.onRoomKicked = exports.onRealtimeMessage = exports.onReactionMessage = exports.onReactionHistory = exports.onPresenceInRoom = exports.onNewRoomCreated = exports.onMessageHistory = exports.onMessageError = exports.onGetRoomInfo = exports.onGetMembers = exports.onGetLastMessageArchive = exports.onGetChatRooms = exports.onEditMessage = exports.onDeleteMessage = exports.onChatInvite = exports.handleComposing = void 0;
7
7
  var _roomStore = require("../roomStore");
8
+ var _mamRouter = require("./xmpp/mamRouter");
9
+ var _mamReactions = require("../helpers/mamReactions");
8
10
  var _roomsSlice = require("../roomStore/roomsSlice");
9
11
  var _createMessageFromXml = require("../helpers/createMessageFromXml");
10
12
  var _getDataFromXml = require("../helpers/getDataFromXml");
@@ -22,15 +24,13 @@ var _strings = require("../i18n/strings");
22
24
 
23
25
  //core default
24
26
  const onRealtimeMessage = async stanza => {
25
- if (!stanza?.getChild('result') && !stanza.getChild('composing') && !stanza.getChild('paused') && !stanza.getChild('subject') && !stanza.is('iq') && stanza.attrs.id !== 'deleteMessageStanza') {
27
+ if (!stanza?.getChild('result') && !stanza.getChild('composing') && !stanza.getChild('paused') && !stanza.getChild('subject') && !stanza.is('iq') && stanza.attrs.id !== 'deleteMessageStanza' && !stanza.getChild('reactions')) {
26
28
  const body = stanza?.getChild('body');
27
29
  const archived = stanza?.getChild('archived');
28
30
  const data = stanza?.getChild('data');
29
31
  const id = archived?.attrs.id;
30
32
  const deleted = stanza.getChild('result')?.getChild('forwarded')?.getChild('message')?.getChild('deleted');
31
33
  if (!data) {
32
- console.log(stanza.toString());
33
- console.log('Missing data elements in real-time message.');
34
34
  return;
35
35
  }
36
36
 
@@ -48,8 +48,6 @@ const onRealtimeMessage = async stanza => {
48
48
  // to the same tolerance.
49
49
  const senderJID = data.attrs.senderJID || stanza.attrs.from;
50
50
  if (!senderJID) {
51
- console.log(stanza.toString());
52
- console.log('Missing sender information in real-time message.');
53
51
  return;
54
52
  }
55
53
 
@@ -154,8 +152,24 @@ const onEditMessage = async stanza => {
154
152
  }
155
153
  };
156
154
  exports.onEditMessage = onEditMessage;
157
- const onMessageHistory = async stanza => {
158
- if (stanza.is('message') && stanza.children[0].attrs.xmlns === 'urn:xmpp:mam:2') {
155
+ const isMamResult = stanza => !!stanza?.is?.('message') && stanza.children?.[0]?.attrs?.xmlns === 'urn:xmpp:mam:2';
156
+ const parseMamResult = async stanza => {
157
+ {
158
+ const forwardedMsg = stanza.getChild('result')?.getChild('forwarded')?.getChild('message');
159
+ if (forwardedMsg?.getChild?.('reactions')) {
160
+ const reaction = (0, _mamReactions.extractReaction)(forwardedMsg, stanza.attrs?.from, stanza.getChild('result')?.attrs?.id);
161
+ if (reaction && !(0, _mamRouter.collectMamReaction)(stanza, reaction)) {
162
+ _roomStore.store.dispatch((0, _roomsSlice.setReactions)({
163
+ roomJID: reaction.roomJID,
164
+ messageId: reaction.messageId,
165
+ from: reaction.from,
166
+ reactions: reaction.emoji,
167
+ data: reaction.data,
168
+ latestReactionTimestamp: reaction.ts
169
+ }));
170
+ }
171
+ return undefined;
172
+ }
159
173
  // console.log("stanza -->", stanza.toString());
160
174
  const body = stanza.getChild('result')?.getChild('forwarded')?.getChild('message')?.getChild('body');
161
175
  const data = stanza.getChild('result')?.getChild('forwarded')?.getChild('message')?.getChild('data');
@@ -164,11 +178,9 @@ const onMessageHistory = async stanza => {
164
178
  const id = stanza.getChild('result')?.attrs.id;
165
179
  if (!delay) {
166
180
  if (stanza.getChild('subject')) {
167
- console.log('Subject.');
168
181
  return;
169
182
  }
170
183
  if (!data || !body || !id) {
171
- console.log('Missing required elements in message history.');
172
184
  return;
173
185
  }
174
186
  }
@@ -238,6 +250,23 @@ const onMessageHistory = async stanza => {
238
250
  // Same call-log transform as the realtime path, applied to archived
239
251
  // history so calls received while offline still render as log entries.
240
252
  const message = (0, _callLogMessage.transformCallLogMessage)(rawMessage, _roomStore.store.getState().chatSettingStore.user?.xmppUsername || '');
253
+ return message;
254
+ }
255
+ };
256
+ const onMessageHistory = async stanza => {
257
+ if (!isMamResult(stanza)) {
258
+ return;
259
+ }
260
+ const claimed = (0, _mamRouter.claimMamResult)(stanza);
261
+ let message;
262
+ try {
263
+ message = await parseMamResult(stanza);
264
+ } finally {
265
+ if (claimed) {
266
+ (0, _mamRouter.collectMamMessage)(stanza, message);
267
+ }
268
+ }
269
+ if (!claimed && message) {
241
270
  _roomStore.store.dispatch((0, _roomsSlice.addRoomMessage)({
242
271
  roomJID: stanza.attrs.from,
243
272
  message
@@ -283,10 +312,12 @@ const onPresenceInRoom = stanza => {
283
312
  if (typeof stanza.attrs.id === 'string' && stanza.attrs.id.startsWith('presenceInRoom') && !stanza.getChild('error')) {
284
313
  const roomJID = stanza.attrs.from.split('/')[0];
285
314
  const role = stanza?.children[1]?.children[0]?.attrs.role;
286
- _roomStore.store.dispatch((0, _roomsSlice.setRoomRole)({
287
- chatJID: roomJID,
288
- role: role
289
- }));
315
+ if (role && _roomStore.store.getState().rooms.rooms?.[roomJID]?.role !== role) {
316
+ _roomStore.store.dispatch((0, _roomsSlice.setRoomRole)({
317
+ chatJID: roomJID,
318
+ role: role
319
+ }));
320
+ }
290
321
  }
291
322
  };
292
323
  exports.onPresenceInRoom = onPresenceInRoom;
@@ -345,45 +376,49 @@ exports.onNewRoomCreated = onNewRoomCreated;
345
376
  const onGetChatRooms = (stanza, xmpp) => {
346
377
  if (stanza.attrs.id === 'getUserRooms' && Array.isArray(stanza.getChild('query')?.children)) {
347
378
  const children = stanza.getChild('query')?.children || [];
348
- children.forEach(async result => {
349
- const currentChatRooms = _roomStore.store.getState().rooms.rooms;
350
- const isRoomAlreadyAdded = Object.values(currentChatRooms).some(element => element.jid === result?.attrs?.jid);
379
+ const known = _roomStore.store.getState().rooms.rooms;
380
+ const fresh = [];
381
+ const jids = [];
382
+ for (const result of children) {
351
383
  const jid = result?.attrs?.jid;
352
- if (!isRoomAlreadyAdded) {
353
- try {
354
- const roomData = {
355
- jid: jid || '',
356
- name: result?.attrs?.name || '',
357
- id: '',
358
- title: result?.attrs?.name || '',
359
- usersCnt: Number(result?.attrs?.users_cnt || 0),
360
- messages: [],
361
- isLoading: false,
362
- roomBg: result?.attrs?.room_background !== 'none' ? result?.attrs?.room_background : null,
363
- icon: result?.attrs?.room_thumbnail !== 'none' ? result?.attrs?.room_thumbnail : null,
364
- unreadMessages: 0,
365
- lastViewedTimestamp: 0
366
- };
367
- _roomStore.store.dispatch((0, _roomsSlice.addRoom)({
368
- roomData: {
369
- ...roomData
370
- }
371
- }));
372
- if (!_roomStore.store.getState().rooms.activeRoomJID) {
373
- _roomStore.store.dispatch((0, _roomsSlice.setCurrentRoom)({
374
- roomJID: roomData.jid
375
- }));
376
- }
377
- } catch (error) {}
384
+ if (!jid) {
385
+ continue;
378
386
  }
379
- if (jid) {
380
- try {
381
- xmpp.presenceInRoomStanza(jid);
382
- } catch (e) {
383
- console.warn('presenceInRoomStanza failed', jid, e);
384
- }
387
+ jids.push(jid);
388
+ if (known[jid]) {
389
+ continue;
385
390
  }
386
- });
391
+ fresh.push({
392
+ jid,
393
+ name: result?.attrs?.name || '',
394
+ id: '',
395
+ title: result?.attrs?.name || '',
396
+ usersCnt: Number(result?.attrs?.users_cnt || 0),
397
+ messages: [],
398
+ isLoading: false,
399
+ roomBg: result?.attrs?.room_background !== 'none' ? result?.attrs?.room_background : null,
400
+ icon: result?.attrs?.room_thumbnail !== 'none' ? result?.attrs?.room_thumbnail : null,
401
+ unreadMessages: 0,
402
+ lastViewedTimestamp: 0
403
+ });
404
+ }
405
+ if (fresh.length) {
406
+ _roomStore.store.dispatch((0, _roomsSlice.addRooms)({
407
+ rooms: fresh
408
+ }));
409
+ if (!_roomStore.store.getState().rooms.activeRoomJID) {
410
+ _roomStore.store.dispatch((0, _roomsSlice.setCurrentRoom)({
411
+ roomJID: fresh[0].jid
412
+ }));
413
+ }
414
+ }
415
+ for (const jid of jids) {
416
+ try {
417
+ xmpp.presenceInRoomStanza(jid);
418
+ } catch (e) {
419
+ console.warn('presenceInRoomStanza failed', jid, e);
420
+ }
421
+ }
387
422
  }
388
423
  };
389
424
 
@@ -392,8 +427,29 @@ const onGetChatRooms = (stanza, xmpp) => {
392
427
  // require() returns undefined at runtime → "X is not a function".
393
428
  exports.onGetChatRooms = onGetChatRooms;
394
429
  const onMessageError = (_stanza, _xmpp) => {};
430
+ /** A live reaction: the reactor's full current list on one message. */
395
431
  exports.onMessageError = onMessageError;
396
- const onReactionMessage = _stanza => {};
432
+ const onReactionMessage = stanza => {
433
+ if (!stanza?.is?.('message') || stanza.getChild('result')) {
434
+ return;
435
+ }
436
+ if (!stanza.getChild('reactions')) {
437
+ return;
438
+ }
439
+ const reaction = (0, _mamReactions.extractReaction)(stanza, stanza.attrs?.from);
440
+ if (!reaction) {
441
+ return;
442
+ }
443
+ _roomStore.store.dispatch((0, _roomsSlice.setReactions)({
444
+ roomJID: reaction.roomJID,
445
+ messageId: reaction.messageId,
446
+ latestReactionTimestamp: reaction.ts,
447
+ reactions: reaction.emoji,
448
+ from: reaction.from,
449
+ data: reaction.data
450
+ }));
451
+ };
452
+ // Archived reactions are handled by parseMamResult + the MAM router.
397
453
  exports.onReactionMessage = onReactionMessage;
398
454
  const onReactionHistory = _stanza => {};
399
455
  exports.onReactionHistory = onReactionHistory;