@ethora/chat-component-rn 26.8.4 → 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 (417) 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/Header/HeaderRoomList.js +12 -7
  7. package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
  8. package/lib/commonjs/components/MainComponents/ChatHeader.js +7 -9
  9. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  10. package/lib/commonjs/components/MainComponents/ChatRoom.js +47 -26
  11. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  12. package/lib/commonjs/components/MainComponents/ChatWrapper.js +58 -21
  13. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  14. package/lib/commonjs/components/MainComponents/KeyboardInputDock.js +40 -0
  15. package/lib/commonjs/components/MainComponents/KeyboardInputDock.js.map +1 -0
  16. package/lib/commonjs/components/MainComponents/MessageContainer.js +4 -12
  17. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  18. package/lib/commonjs/components/MainComponents/MessageList.js +110 -35
  19. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  20. package/lib/commonjs/components/MainComponents/RoomList.js +32 -29
  21. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  22. package/lib/commonjs/components/MainComponents/RoomStack.js +270 -0
  23. package/lib/commonjs/components/MainComponents/RoomStack.js.map +1 -0
  24. package/lib/commonjs/components/MainComponents/SystemMessage.js +6 -2
  25. package/lib/commonjs/components/MainComponents/SystemMessage.js.map +1 -1
  26. package/lib/commonjs/components/MessageBubble/Avatar.js +5 -1
  27. package/lib/commonjs/components/MessageBubble/Avatar.js.map +1 -1
  28. package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js +17 -21
  29. package/lib/commonjs/components/MessageBubble/BottomReplyContainer.js.map +1 -1
  30. package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js +447 -0
  31. package/lib/commonjs/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
  32. package/lib/commonjs/components/MessageBubble/Message.js +200 -132
  33. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  34. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +213 -12
  35. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  36. package/lib/commonjs/components/MessageBubble/MessageReaction.js +113 -94
  37. package/lib/commonjs/components/MessageBubble/MessageReaction.js.map +1 -1
  38. package/lib/commonjs/components/MessageBubble/MessageReply.js +66 -24
  39. package/lib/commonjs/components/MessageBubble/MessageReply.js.map +1 -1
  40. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +6 -1
  41. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  42. package/lib/commonjs/components/Modals/Modal/Modal.js +24 -0
  43. package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
  44. package/lib/commonjs/components/Modals/Modal/SwipeBackLayer.js +178 -0
  45. package/lib/commonjs/components/Modals/Modal/SwipeBackLayer.js.map +1 -0
  46. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js +28 -10
  47. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -1
  48. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +9 -3
  49. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  50. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +5 -4
  51. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  52. package/lib/commonjs/components/RoomComponents/styled/LastMessageEmoji.js +8 -9
  53. package/lib/commonjs/components/RoomComponents/styled/LastMessageEmoji.js.map +1 -1
  54. package/lib/commonjs/components/Thread/ThreadWrapper.js +265 -152
  55. package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
  56. package/lib/commonjs/components/styled/DateLabel.js +6 -3
  57. package/lib/commonjs/components/styled/DateLabel.js.map +1 -1
  58. package/lib/commonjs/context/MessageNotificationContext.js +188 -9
  59. package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
  60. package/lib/commonjs/context/xmppProvider.js +22 -7
  61. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  62. package/lib/commonjs/helpers/createRoomFromApi.js +36 -2
  63. package/lib/commonjs/helpers/createRoomFromApi.js.map +1 -1
  64. package/lib/commonjs/helpers/emoji.js +51 -0
  65. package/lib/commonjs/helpers/emoji.js.map +1 -0
  66. package/lib/commonjs/helpers/haptics.js +29 -0
  67. package/lib/commonjs/helpers/haptics.js.map +1 -0
  68. package/lib/commonjs/helpers/historyPreloadScheduler.js +32 -66
  69. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  70. package/lib/commonjs/helpers/insertMessageWithDelimiter.js +21 -12
  71. package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
  72. package/lib/commonjs/helpers/keyboardLayout.js +23 -1
  73. package/lib/commonjs/helpers/keyboardLayout.js.map +1 -1
  74. package/lib/commonjs/helpers/mamReactions.js +57 -0
  75. package/lib/commonjs/helpers/mamReactions.js.map +1 -0
  76. package/lib/commonjs/helpers/parseMessageReference.js +42 -0
  77. package/lib/commonjs/helpers/parseMessageReference.js.map +1 -0
  78. package/lib/commonjs/helpers/reactionsConfig.js +17 -0
  79. package/lib/commonjs/helpers/reactionsConfig.js.map +1 -0
  80. package/lib/commonjs/helpers/updateMessagesTillLast.js +17 -2
  81. package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
  82. package/lib/commonjs/hooks/useHeapSender.js +3 -1
  83. package/lib/commonjs/hooks/useHeapSender.js.map +1 -1
  84. package/lib/commonjs/hooks/useMessageHeapState.js +3 -2
  85. package/lib/commonjs/hooks/useMessageHeapState.js.map +1 -1
  86. package/lib/commonjs/hooks/useRoomInitialization.js +16 -7
  87. package/lib/commonjs/hooks/useRoomInitialization.js.map +1 -1
  88. package/lib/commonjs/hooks/useSendMessage.js +14 -8
  89. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  90. package/lib/commonjs/hooks/useUnreadMessagesCounter.js +1 -1
  91. package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
  92. package/lib/commonjs/networking/stanzaHandlers.js +106 -50
  93. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  94. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js +29 -74
  95. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js.map +1 -1
  96. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +4 -0
  97. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  98. package/lib/commonjs/networking/xmpp/mamRouter.js +186 -0
  99. package/lib/commonjs/networking/xmpp/mamRouter.js.map +1 -0
  100. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +41 -4
  101. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  102. package/lib/commonjs/networking/xmppClient.js +98 -23
  103. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  104. package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js +29 -34
  105. package/lib/commonjs/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
  106. package/lib/commonjs/roomStore/Middleware/perfMiddleware.js +51 -0
  107. package/lib/commonjs/roomStore/Middleware/perfMiddleware.js.map +1 -0
  108. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js +66 -43
  109. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  110. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +88 -68
  111. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  112. package/lib/commonjs/roomStore/index.js +18 -14
  113. package/lib/commonjs/roomStore/index.js.map +1 -1
  114. package/lib/commonjs/roomStore/persistBackend.js +96 -0
  115. package/lib/commonjs/roomStore/persistBackend.js.map +1 -0
  116. package/lib/commonjs/roomStore/persistence.js +245 -50
  117. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  118. package/lib/commonjs/roomStore/roomsSlice.js +282 -136
  119. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  120. package/lib/commonjs/theme/theme.js +3 -0
  121. package/lib/commonjs/theme/theme.js.map +1 -1
  122. package/lib/commonjs/utils/devLogger.js +14 -0
  123. package/lib/commonjs/utils/devLogger.js.map +1 -1
  124. package/lib/commonjs/version.js +1 -1
  125. package/lib/module/assets/emojiData.js +36 -0
  126. package/lib/module/assets/emojiData.js.map +1 -0
  127. package/lib/module/assets/icons.js +1 -1
  128. package/lib/module/assets/icons.js.map +1 -1
  129. package/lib/module/components/Header/HeaderRoomList.js +12 -7
  130. package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
  131. package/lib/module/components/MainComponents/ChatHeader.js +8 -10
  132. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  133. package/lib/module/components/MainComponents/ChatRoom.js +49 -28
  134. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  135. package/lib/module/components/MainComponents/ChatWrapper.js +60 -23
  136. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  137. package/lib/module/components/MainComponents/KeyboardInputDock.js +33 -0
  138. package/lib/module/components/MainComponents/KeyboardInputDock.js.map +1 -0
  139. package/lib/module/components/MainComponents/MessageContainer.js +7 -14
  140. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  141. package/lib/module/components/MainComponents/MessageList.js +110 -35
  142. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  143. package/lib/module/components/MainComponents/RoomList.js +32 -29
  144. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  145. package/lib/module/components/MainComponents/RoomStack.js +266 -0
  146. package/lib/module/components/MainComponents/RoomStack.js.map +1 -0
  147. package/lib/module/components/MainComponents/SystemMessage.js +6 -2
  148. package/lib/module/components/MainComponents/SystemMessage.js.map +1 -1
  149. package/lib/module/components/MessageBubble/Avatar.js +5 -1
  150. package/lib/module/components/MessageBubble/Avatar.js.map +1 -1
  151. package/lib/module/components/MessageBubble/BottomReplyContainer.js +18 -22
  152. package/lib/module/components/MessageBubble/BottomReplyContainer.js.map +1 -1
  153. package/lib/module/components/MessageBubble/EmojiPickerSheet.js +438 -0
  154. package/lib/module/components/MessageBubble/EmojiPickerSheet.js.map +1 -0
  155. package/lib/module/components/MessageBubble/Message.js +203 -134
  156. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  157. package/lib/module/components/MessageBubble/MessageInteractions.js +215 -14
  158. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  159. package/lib/module/components/MessageBubble/MessageReaction.js +115 -94
  160. package/lib/module/components/MessageBubble/MessageReaction.js.map +1 -1
  161. package/lib/module/components/MessageBubble/MessageReply.js +65 -24
  162. package/lib/module/components/MessageBubble/MessageReply.js.map +1 -1
  163. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +6 -1
  164. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  165. package/lib/module/components/Modals/Modal/Modal.js +25 -1
  166. package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
  167. package/lib/module/components/Modals/Modal/SwipeBackLayer.js +172 -0
  168. package/lib/module/components/Modals/Modal/SwipeBackLayer.js.map +1 -0
  169. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js +29 -11
  170. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -1
  171. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +10 -4
  172. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  173. package/lib/module/components/RoomComponents/ChatRoomItem.js +5 -4
  174. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  175. package/lib/module/components/RoomComponents/styled/LastMessageEmoji.js +8 -9
  176. package/lib/module/components/RoomComponents/styled/LastMessageEmoji.js.map +1 -1
  177. package/lib/module/components/Thread/ThreadWrapper.js +264 -152
  178. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  179. package/lib/module/components/styled/DateLabel.js +6 -3
  180. package/lib/module/components/styled/DateLabel.js.map +1 -1
  181. package/lib/module/context/MessageNotificationContext.js +190 -11
  182. package/lib/module/context/MessageNotificationContext.js.map +1 -1
  183. package/lib/module/context/xmppProvider.js +22 -7
  184. package/lib/module/context/xmppProvider.js.map +1 -1
  185. package/lib/module/helpers/createRoomFromApi.js +36 -2
  186. package/lib/module/helpers/createRoomFromApi.js.map +1 -1
  187. package/lib/module/helpers/emoji.js +44 -0
  188. package/lib/module/helpers/emoji.js.map +1 -0
  189. package/lib/module/helpers/haptics.js +24 -0
  190. package/lib/module/helpers/haptics.js.map +1 -0
  191. package/lib/module/helpers/historyPreloadScheduler.js +32 -66
  192. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  193. package/lib/module/helpers/insertMessageWithDelimiter.js +21 -12
  194. package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
  195. package/lib/module/helpers/keyboardLayout.js +20 -0
  196. package/lib/module/helpers/keyboardLayout.js.map +1 -1
  197. package/lib/module/helpers/mamReactions.js +51 -0
  198. package/lib/module/helpers/mamReactions.js.map +1 -0
  199. package/lib/module/helpers/parseMessageReference.js +37 -0
  200. package/lib/module/helpers/parseMessageReference.js.map +1 -0
  201. package/lib/module/helpers/reactionsConfig.js +10 -0
  202. package/lib/module/helpers/reactionsConfig.js.map +1 -0
  203. package/lib/module/helpers/updateMessagesTillLast.js +17 -2
  204. package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
  205. package/lib/module/hooks/useHeapSender.js +3 -1
  206. package/lib/module/hooks/useHeapSender.js.map +1 -1
  207. package/lib/module/hooks/useMessageHeapState.js +3 -2
  208. package/lib/module/hooks/useMessageHeapState.js.map +1 -1
  209. package/lib/module/hooks/useRoomInitialization.js +17 -8
  210. package/lib/module/hooks/useRoomInitialization.js.map +1 -1
  211. package/lib/module/hooks/useSendMessage.js +14 -8
  212. package/lib/module/hooks/useSendMessage.js.map +1 -1
  213. package/lib/module/hooks/useUnreadMessagesCounter.js +1 -1
  214. package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
  215. package/lib/module/networking/stanzaHandlers.js +107 -51
  216. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  217. package/lib/module/networking/xmpp/getHistory.xmpp.js +29 -74
  218. package/lib/module/networking/xmpp/getHistory.xmpp.js.map +1 -1
  219. package/lib/module/networking/xmpp/handleStanzas.xmpp.js +4 -0
  220. package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  221. package/lib/module/networking/xmpp/mamRouter.js +175 -0
  222. package/lib/module/networking/xmpp/mamRouter.js.map +1 -0
  223. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +38 -2
  224. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  225. package/lib/module/networking/xmppClient.js +99 -24
  226. package/lib/module/networking/xmppClient.js.map +1 -1
  227. package/lib/module/roomStore/Middleware/newMessageMidlleware.js +29 -34
  228. package/lib/module/roomStore/Middleware/newMessageMidlleware.js.map +1 -1
  229. package/lib/module/roomStore/Middleware/perfMiddleware.js +45 -0
  230. package/lib/module/roomStore/Middleware/perfMiddleware.js.map +1 -0
  231. package/lib/module/roomStore/Middleware/reactionsMiddleware.js +66 -43
  232. package/lib/module/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  233. package/lib/module/roomStore/Middleware/unreadMidlleware.js +89 -69
  234. package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  235. package/lib/module/roomStore/index.js +19 -15
  236. package/lib/module/roomStore/index.js.map +1 -1
  237. package/lib/module/roomStore/persistBackend.js +89 -0
  238. package/lib/module/roomStore/persistBackend.js.map +1 -0
  239. package/lib/module/roomStore/persistence.js +245 -48
  240. package/lib/module/roomStore/persistence.js.map +1 -1
  241. package/lib/module/roomStore/roomsSlice.js +275 -134
  242. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  243. package/lib/module/theme/theme.js +3 -0
  244. package/lib/module/theme/theme.js.map +1 -1
  245. package/lib/module/utils/devLogger.js +13 -0
  246. package/lib/module/utils/devLogger.js.map +1 -1
  247. package/lib/module/version.js +1 -1
  248. package/lib/typescript/assets/emojiData.d.ts +8 -0
  249. package/lib/typescript/assets/emojiData.d.ts.map +1 -0
  250. package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
  251. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  252. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  253. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  254. package/lib/typescript/components/MainComponents/KeyboardInputDock.d.ts +16 -0
  255. package/lib/typescript/components/MainComponents/KeyboardInputDock.d.ts.map +1 -0
  256. package/lib/typescript/components/MainComponents/MessageContainer.d.ts +2 -2
  257. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  258. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  259. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  260. package/lib/typescript/components/MainComponents/RoomStack.d.ts +42 -0
  261. package/lib/typescript/components/MainComponents/RoomStack.d.ts.map +1 -0
  262. package/lib/typescript/components/MainComponents/SystemMessage.d.ts.map +1 -1
  263. package/lib/typescript/components/MessageBubble/Avatar.d.ts +2 -0
  264. package/lib/typescript/components/MessageBubble/Avatar.d.ts.map +1 -1
  265. package/lib/typescript/components/MessageBubble/BottomReplyContainer.d.ts.map +1 -1
  266. package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts +11 -0
  267. package/lib/typescript/components/MessageBubble/EmojiPickerSheet.d.ts.map +1 -0
  268. package/lib/typescript/components/MessageBubble/Message.d.ts +2 -2
  269. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  270. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +2 -0
  271. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  272. package/lib/typescript/components/MessageBubble/MessageReaction.d.ts +1 -0
  273. package/lib/typescript/components/MessageBubble/MessageReaction.d.ts.map +1 -1
  274. package/lib/typescript/components/MessageBubble/MessageReply.d.ts +7 -7
  275. package/lib/typescript/components/MessageBubble/MessageReply.d.ts.map +1 -1
  276. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  277. package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
  278. package/lib/typescript/components/Modals/Modal/SwipeBackLayer.d.ts +16 -0
  279. package/lib/typescript/components/Modals/Modal/SwipeBackLayer.d.ts.map +1 -0
  280. package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts.map +1 -1
  281. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  282. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts +2 -2
  283. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  284. package/lib/typescript/components/RoomComponents/styled/LastMessageEmoji.d.ts +3 -6
  285. package/lib/typescript/components/RoomComponents/styled/LastMessageEmoji.d.ts.map +1 -1
  286. package/lib/typescript/components/Thread/ThreadWrapper.d.ts +7 -1
  287. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  288. package/lib/typescript/components/styled/DateLabel.d.ts +1 -0
  289. package/lib/typescript/components/styled/DateLabel.d.ts.map +1 -1
  290. package/lib/typescript/context/MessageNotificationContext.d.ts.map +1 -1
  291. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  292. package/lib/typescript/helpers/createRoomFromApi.d.ts.map +1 -1
  293. package/lib/typescript/helpers/emoji.d.ts +6 -0
  294. package/lib/typescript/helpers/emoji.d.ts.map +1 -0
  295. package/lib/typescript/helpers/haptics.d.ts +3 -0
  296. package/lib/typescript/helpers/haptics.d.ts.map +1 -0
  297. package/lib/typescript/helpers/historyPreloadScheduler.d.ts +1 -0
  298. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  299. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
  300. package/lib/typescript/helpers/keyboardLayout.d.ts +6 -0
  301. package/lib/typescript/helpers/keyboardLayout.d.ts.map +1 -1
  302. package/lib/typescript/helpers/mamReactions.d.ts +13 -0
  303. package/lib/typescript/helpers/mamReactions.d.ts.map +1 -0
  304. package/lib/typescript/helpers/parseMessageReference.d.ts +16 -0
  305. package/lib/typescript/helpers/parseMessageReference.d.ts.map +1 -0
  306. package/lib/typescript/helpers/reactionsConfig.d.ts +5 -0
  307. package/lib/typescript/helpers/reactionsConfig.d.ts.map +1 -0
  308. package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
  309. package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
  310. package/lib/typescript/hooks/useMessageHeapState.d.ts.map +1 -1
  311. package/lib/typescript/hooks/useRoomInitialization.d.ts +2 -2
  312. package/lib/typescript/hooks/useRoomInitialization.d.ts.map +1 -1
  313. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  314. package/lib/typescript/networking/stanzaHandlers.d.ts +4 -2
  315. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  316. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts +3 -1
  317. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts.map +1 -1
  318. package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
  319. package/lib/typescript/networking/xmpp/mamRouter.d.ts +23 -0
  320. package/lib/typescript/networking/xmpp/mamRouter.d.ts.map +1 -0
  321. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts +1 -0
  322. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
  323. package/lib/typescript/networking/xmppClient.d.ts +22 -1
  324. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  325. package/lib/typescript/roomStore/Middleware/newMessageMidlleware.d.ts.map +1 -1
  326. package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts +4 -0
  327. package/lib/typescript/roomStore/Middleware/perfMiddleware.d.ts.map +1 -0
  328. package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts +9 -0
  329. package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts.map +1 -1
  330. package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
  331. package/lib/typescript/roomStore/index.d.ts.map +1 -1
  332. package/lib/typescript/roomStore/persistBackend.d.ts +11 -0
  333. package/lib/typescript/roomStore/persistBackend.d.ts.map +1 -0
  334. package/lib/typescript/roomStore/persistence.d.ts +5 -6
  335. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  336. package/lib/typescript/roomStore/roomsSlice.d.ts +41 -1
  337. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  338. package/lib/typescript/theme/theme.d.ts +4 -1
  339. package/lib/typescript/theme/theme.d.ts.map +1 -1
  340. package/lib/typescript/types/models/message.model.d.ts +4 -0
  341. package/lib/typescript/types/models/message.model.d.ts.map +1 -1
  342. package/lib/typescript/types/models/room.model.d.ts +16 -0
  343. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  344. package/lib/typescript/types/models/xmpp.model.d.ts +6 -1
  345. package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
  346. package/lib/typescript/types/types.d.ts +15 -3
  347. package/lib/typescript/types/types.d.ts.map +1 -1
  348. package/lib/typescript/utils/devLogger.d.ts +8 -0
  349. package/lib/typescript/utils/devLogger.d.ts.map +1 -1
  350. package/lib/typescript/version.d.ts +1 -1
  351. package/package.json +10 -1
  352. package/src/assets/emojiData.ts +2146 -0
  353. package/src/assets/icons.tsx +5 -5
  354. package/src/components/Header/HeaderRoomList.tsx +7 -5
  355. package/src/components/MainComponents/ChatHeader.tsx +16 -7
  356. package/src/components/MainComponents/ChatRoom.tsx +64 -32
  357. package/src/components/MainComponents/ChatWrapper.tsx +73 -21
  358. package/src/components/MainComponents/KeyboardInputDock.tsx +47 -0
  359. package/src/components/MainComponents/MessageContainer.tsx +7 -15
  360. package/src/components/MainComponents/MessageList.tsx +96 -43
  361. package/src/components/MainComponents/RoomList.tsx +28 -29
  362. package/src/components/MainComponents/RoomStack.tsx +309 -0
  363. package/src/components/MainComponents/SystemMessage.tsx +6 -2
  364. package/src/components/MessageBubble/Avatar.tsx +7 -1
  365. package/src/components/MessageBubble/BottomReplyContainer.tsx +19 -21
  366. package/src/components/MessageBubble/EmojiPickerSheet.tsx +468 -0
  367. package/src/components/MessageBubble/Message.tsx +146 -87
  368. package/src/components/MessageBubble/MessageInteractions.tsx +213 -12
  369. package/src/components/MessageBubble/MessageReaction.tsx +120 -96
  370. package/src/components/MessageBubble/MessageReply.tsx +65 -32
  371. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +4 -0
  372. package/src/components/Modals/Modal/Modal.tsx +32 -1
  373. package/src/components/Modals/Modal/SwipeBackLayer.tsx +221 -0
  374. package/src/components/Modals/ProfileHeader/ProfileHeader.tsx +29 -8
  375. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +6 -3
  376. package/src/components/RoomComponents/ChatRoomItem.tsx +11 -4
  377. package/src/components/RoomComponents/styled/LastMessageEmoji.tsx +7 -8
  378. package/src/components/Thread/ThreadWrapper.tsx +274 -198
  379. package/src/components/styled/DateLabel.tsx +7 -3
  380. package/src/context/MessageNotificationContext.tsx +205 -7
  381. package/src/context/xmppProvider.tsx +29 -9
  382. package/src/helpers/createRoomFromApi.tsx +37 -1
  383. package/src/helpers/emoji.ts +39 -0
  384. package/src/helpers/haptics.ts +19 -0
  385. package/src/helpers/historyPreloadScheduler.ts +37 -69
  386. package/src/helpers/insertMessageWithDelimiter.ts +23 -16
  387. package/src/helpers/keyboardLayout.ts +26 -0
  388. package/src/helpers/mamReactions.ts +59 -0
  389. package/src/helpers/parseMessageReference.ts +38 -0
  390. package/src/helpers/reactionsConfig.ts +13 -0
  391. package/src/helpers/updateMessagesTillLast.tsx +14 -2
  392. package/src/hooks/useHeapSender.tsx +3 -2
  393. package/src/hooks/useMessageHeapState.tsx +6 -2
  394. package/src/hooks/useRoomInitialization.tsx +32 -15
  395. package/src/hooks/useSendMessage.tsx +18 -11
  396. package/src/hooks/useUnreadMessagesCounter.ts +1 -1
  397. package/src/networking/stanzaHandlers.ts +116 -60
  398. package/src/networking/xmpp/getHistory.xmpp.ts +44 -106
  399. package/src/networking/xmpp/handleStanzas.xmpp.ts +2 -0
  400. package/src/networking/xmpp/mamRouter.ts +176 -0
  401. package/src/networking/xmpp/presenceInRoom.xmpp.ts +46 -3
  402. package/src/networking/xmppClient.ts +105 -20
  403. package/src/roomStore/Middleware/newMessageMidlleware.tsx +35 -38
  404. package/src/roomStore/Middleware/perfMiddleware.ts +50 -0
  405. package/src/roomStore/Middleware/reactionsMiddleware.tsx +53 -52
  406. package/src/roomStore/Middleware/unreadMidlleware.tsx +92 -80
  407. package/src/roomStore/index.ts +28 -27
  408. package/src/roomStore/persistBackend.ts +96 -0
  409. package/src/roomStore/persistence.ts +280 -73
  410. package/src/roomStore/roomsSlice.ts +304 -155
  411. package/src/theme/theme.ts +10 -1
  412. package/src/types/models/message.model.ts +4 -0
  413. package/src/types/models/room.model.ts +17 -0
  414. package/src/types/models/xmpp.model.ts +4 -2
  415. package/src/types/types.ts +15 -3
  416. package/src/utils/devLogger.ts +16 -0
  417. package/src/version.ts +1 -1
@@ -4,16 +4,32 @@
4
4
  // in-app toasts when a new message arrives in a room that is NOT the
5
5
  // currently visible room. Backed by the global messageNotificationManager,
6
6
  // which means non-React code (stanza handlers) can push notifications.
7
- import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
8
- import { Animated, AppState, Pressable, StyleSheet, Text, View } from 'react-native';
7
+ import React, { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
8
+ import { Animated, AppState, Easing, PanResponder, Pressable, StyleSheet, Text, View } from 'react-native';
9
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
9
10
  import { useDispatch, useSelector } from 'react-redux';
10
11
  import { messageNotificationManager } from '../utils/messageNotificationManager';
11
12
  import { setCurrentRoom } from '../roomStore/roomsSlice';
12
13
  import { useTheme } from '../hooks/useTheme';
14
+ import { ProfileImagePlaceholder } from '../components/MainComponents/ProfileImagePlaceholder';
15
+ import { useFileToken } from '../hooks/useFileToken';
16
+ import { appendFileToken } from '../helpers/secureFileUrl';
13
17
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
18
  const MessageNotificationContext = /*#__PURE__*/createContext(null);
15
19
  const DEFAULT_MAX = 3;
20
+ const pruneExpired = (prev, now, ttl) => {
21
+ if (prev.length === 0) {
22
+ return prev;
23
+ }
24
+ const next = prev.filter(t => now - t.timestamp < ttl);
25
+ return next.length === prev.length ? prev : next;
26
+ };
16
27
  const DEFAULT_DURATION_MS = 30000;
28
+ // The top banner is a glance, not a stack to work through: it leaves on its
29
+ // own after a few seconds unless the host sets `duration`.
30
+ const BANNER_DURATION_MS = 4000;
31
+ const BANNER_IN_MS = 280;
32
+ const BANNER_OUT_MS = 220;
17
33
  export const MessageNotificationProvider = ({
18
34
  children,
19
35
  config: propConfig
@@ -25,7 +41,14 @@ export const MessageNotificationProvider = ({
25
41
  const notificationConfig = config?.inAppNotifications;
26
42
  const isEnabled = notificationConfig?.enabled === true;
27
43
  const maxNotifications = notificationConfig?.maxNotifications ?? DEFAULT_MAX;
28
- const duration = notificationConfig?.duration ?? DEFAULT_DURATION_MS;
44
+ // Default presentation: one full-width banner sliding in from the top
45
+ // (the messenger convention). An explicit `position` or a
46
+ // `customComponent` keeps the stacked corner toasts.
47
+ const bannerMode = !notificationConfig?.position && !notificationConfig?.customComponent;
48
+ const duration = notificationConfig?.duration ?? (bannerMode ? BANNER_DURATION_MS : DEFAULT_DURATION_MS);
49
+ // The banner times its own exit (so it can animate out); the list prune
50
+ // below is only its safety net.
51
+ const pruneAfter = bannerMode ? duration + 2000 : duration;
29
52
  const [toasts, setToasts] = useState([]);
30
53
  const appActiveRef = useRef(AppState.currentState === 'active');
31
54
 
@@ -36,11 +59,11 @@ export const MessageNotificationProvider = ({
36
59
  appActiveRef.current = next === 'active';
37
60
  if (next === 'active') {
38
61
  const now = Date.now();
39
- setToasts(prev => prev.filter(t => now - t.timestamp < duration));
62
+ setToasts(prev => pruneExpired(prev, now, pruneAfter));
40
63
  }
41
64
  });
42
65
  return () => sub.remove();
43
- }, [duration]);
66
+ }, [pruneAfter]);
44
67
 
45
68
  // Periodic prune when active.
46
69
  useEffect(() => {
@@ -49,10 +72,10 @@ export const MessageNotificationProvider = ({
49
72
  return;
50
73
  }
51
74
  const now = Date.now();
52
- setToasts(prev => prev.filter(t => now - t.timestamp < duration));
75
+ setToasts(prev => pruneExpired(prev, now, pruneAfter));
53
76
  }, 1000);
54
77
  return () => clearInterval(interval);
55
- }, [duration]);
78
+ }, [pruneAfter]);
56
79
 
57
80
  // Clear toasts when their room becomes active.
58
81
  useEffect(() => {
@@ -114,11 +137,20 @@ export const MessageNotificationProvider = ({
114
137
  const unsubscribe = messageNotificationManager.addCallback(showMessageNotification);
115
138
  return unsubscribe;
116
139
  }, [isEnabled, showMessageNotification]);
140
+ const contextValue = useMemo(() => ({
141
+ showMessageNotification
142
+ }), [showMessageNotification]);
117
143
  return /*#__PURE__*/_jsxs(MessageNotificationContext.Provider, {
118
- value: {
119
- showMessageNotification
120
- },
121
- children: [children, isEnabled && toasts.length > 0 && /*#__PURE__*/_jsx(View, {
144
+ value: contextValue,
145
+ children: [children, isEnabled && bannerMode && toasts.length > 0 && /*#__PURE__*/_jsx(ToastBanner, {
146
+ item: toasts[toasts.length - 1],
147
+ duration: duration,
148
+ safeAreaTop: !!config?.headerLayout?.safeAreaTop,
149
+ onPress: t => navigateToMessage(t.roomJID, t.message.id, t.message, t.roomName, t.senderName)
150
+ // One banner stands for everything queued behind it.
151
+ ,
152
+ onDismiss: () => setToasts([])
153
+ }), isEnabled && !bannerMode && toasts.length > 0 && /*#__PURE__*/_jsx(View, {
122
154
  pointerEvents: "box-none",
123
155
  style: [styles.container, positionToStyle(notificationConfig?.position)],
124
156
  children: toasts.map(t => {
@@ -145,6 +177,119 @@ export const MessageNotificationProvider = ({
145
177
  })]
146
178
  });
147
179
  };
180
+
181
+ /**
182
+ * Top banner: slides down from under the status bar, stays for `duration`,
183
+ * slides back up. Tap opens the room; a flick upwards dismisses it. A newer
184
+ * message replaces the content in place and restarts the timer.
185
+ */
186
+ const ToastBanner = ({
187
+ item,
188
+ duration,
189
+ safeAreaTop,
190
+ onPress,
191
+ onDismiss
192
+ }) => {
193
+ const theme = useTheme();
194
+ const insets = useSafeAreaInsets();
195
+ const top = (safeAreaTop ? insets.top : 0) + 8;
196
+ const roomIcon = useSelector(state => state.rooms.rooms?.[item.roomJID]?.icon);
197
+ const fileToken = useFileToken();
198
+ // 0 = hidden above the screen, 1 = in place.
199
+ const shown = useRef(new Animated.Value(0)).current;
200
+ const drag = useRef(new Animated.Value(0)).current;
201
+ const leaving = useRef(false);
202
+ const onDismissRef = useRef(onDismiss);
203
+ onDismissRef.current = onDismiss;
204
+ const leave = useCallback(() => {
205
+ if (leaving.current) {
206
+ return;
207
+ }
208
+ leaving.current = true;
209
+ Animated.timing(shown, {
210
+ toValue: 0,
211
+ duration: BANNER_OUT_MS,
212
+ easing: Easing.in(Easing.cubic),
213
+ useNativeDriver: true
214
+ }).start(() => onDismissRef.current());
215
+ }, [shown]);
216
+ useEffect(() => {
217
+ Animated.timing(shown, {
218
+ toValue: 1,
219
+ duration: BANNER_IN_MS,
220
+ easing: Easing.out(Easing.cubic),
221
+ useNativeDriver: true
222
+ }).start();
223
+ }, [shown]);
224
+
225
+ // Restarts with every new message shown in the banner.
226
+ useEffect(() => {
227
+ const timer = setTimeout(leave, duration);
228
+ return () => clearTimeout(timer);
229
+ }, [item.id, duration, leave]);
230
+ const pan = useRef(PanResponder.create({
231
+ onMoveShouldSetPanResponder: (_e, g) => g.dy < -6 && Math.abs(g.dy) > Math.abs(g.dx),
232
+ onPanResponderMove: (_e, g) => drag.setValue(Math.min(g.dy, 0)),
233
+ onPanResponderRelease: (_e, g) => {
234
+ if (g.dy < -24 || g.vy < -0.5) {
235
+ leave();
236
+ } else {
237
+ Animated.spring(drag, {
238
+ toValue: 0,
239
+ useNativeDriver: true
240
+ }).start();
241
+ }
242
+ },
243
+ onPanResponderTerminate: () => {
244
+ Animated.spring(drag, {
245
+ toValue: 0,
246
+ useNativeDriver: true
247
+ }).start();
248
+ }
249
+ })).current;
250
+ const slide = shown.interpolate({
251
+ inputRange: [0, 1],
252
+ outputRange: [-(top + 96), 0]
253
+ });
254
+ return /*#__PURE__*/_jsx(Animated.View, {
255
+ testID: "message-notification-banner",
256
+ ...pan.panHandlers,
257
+ style: [styles.banner, {
258
+ top,
259
+ backgroundColor: theme.surface,
260
+ borderColor: theme.border,
261
+ shadowColor: theme.shadow,
262
+ opacity: shown,
263
+ transform: [{
264
+ translateY: Animated.add(slide, drag)
265
+ }]
266
+ }],
267
+ children: /*#__PURE__*/_jsxs(Pressable, {
268
+ style: styles.bannerBody,
269
+ onPress: () => onPress(item),
270
+ children: [/*#__PURE__*/_jsx(ProfileImagePlaceholder, {
271
+ name: item.roomName,
272
+ icon: appendFileToken(roomIcon, fileToken),
273
+ size: 40
274
+ }), /*#__PURE__*/_jsxs(View, {
275
+ style: styles.bannerText,
276
+ children: [/*#__PURE__*/_jsx(Text, {
277
+ style: [styles.bannerTitle, {
278
+ color: theme.text
279
+ }],
280
+ numberOfLines: 1,
281
+ children: item.roomName
282
+ }), /*#__PURE__*/_jsxs(Text, {
283
+ style: [styles.bannerSubtitle, {
284
+ color: theme.textSecondary
285
+ }],
286
+ numberOfLines: 2,
287
+ children: [item.senderName, ": ", item.message?.body || '']
288
+ })]
289
+ })]
290
+ })
291
+ });
292
+ };
148
293
  const ToastRow = ({
149
294
  item,
150
295
  onPress,
@@ -223,6 +368,40 @@ const styles = StyleSheet.create({
223
368
  zIndex: 10000,
224
369
  elevation: 10000
225
370
  },
371
+ banner: {
372
+ position: 'absolute',
373
+ left: 8,
374
+ right: 8,
375
+ zIndex: 10000,
376
+ elevation: 12,
377
+ borderRadius: 16,
378
+ borderWidth: StyleSheet.hairlineWidth,
379
+ shadowOpacity: 0.25,
380
+ shadowOffset: {
381
+ width: 0,
382
+ height: 6
383
+ },
384
+ shadowRadius: 16
385
+ },
386
+ bannerBody: {
387
+ flexDirection: 'row',
388
+ alignItems: 'center',
389
+ paddingVertical: 10,
390
+ paddingHorizontal: 12
391
+ },
392
+ bannerText: {
393
+ flex: 1,
394
+ marginLeft: 12
395
+ },
396
+ bannerTitle: {
397
+ fontWeight: '600',
398
+ fontSize: 15,
399
+ marginBottom: 2
400
+ },
401
+ bannerSubtitle: {
402
+ fontSize: 13,
403
+ lineHeight: 18
404
+ },
226
405
  toast: {
227
406
  flexDirection: 'row',
228
407
  alignItems: 'center',
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useRef","useState","Animated","AppState","Pressable","StyleSheet","Text","View","useDispatch","useSelector","messageNotificationManager","setCurrentRoom","useTheme","jsx","_jsx","jsxs","_jsxs","MessageNotificationContext","DEFAULT_MAX","DEFAULT_DURATION_MS","MessageNotificationProvider","children","config","propConfig","dispatch","contextConfig","state","chatSettingStore","visibleRoomJID","rooms","notificationConfig","inAppNotifications","isEnabled","enabled","maxNotifications","duration","toasts","setToasts","appActiveRef","currentState","sub","addEventListener","next","current","now","Date","prev","filter","t","timestamp","remove","interval","setInterval","clearInterval","roomJID","dismiss","id","navigateToMessage","messageId","message","roomName","senderName","customOnClick","onClick","Promise","resolve","catch","e","console","error","showMessageNotification","item","length","slice","unsubscribe","addCallback","Provider","value","pointerEvents","style","styles","container","positionToStyle","position","map","Custom","customComponent","onClose","onNavigateToMessage","ToastRow","onPress","onDismiss","theme","fade","Value","timing","toValue","useNativeDriver","start","toast","backgroundColor","surface","shadowColor","shadow","opacity","toastBody","toastTitle","color","text","numberOfLines","toastSubtitle","textSecondary","body","dismissText","textMuted","horizontal","vertical","offset","out","top","bottom","right","alignItems","left","create","zIndex","elevation","flexDirection","paddingVertical","paddingHorizontal","marginVertical","borderRadius","minWidth","maxWidth","shadowOpacity","shadowOffset","width","height","shadowRadius","flex","fontWeight","fontSize","marginBottom","useMessageNotification","ctx","Error"],"sourceRoot":"../../../src","sources":["context/MessageNotificationContext.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","Animated","AppState","Easing","PanResponder","Pressable","StyleSheet","Text","View","useSafeAreaInsets","useDispatch","useSelector","messageNotificationManager","setCurrentRoom","useTheme","ProfileImagePlaceholder","useFileToken","appendFileToken","jsx","_jsx","jsxs","_jsxs","MessageNotificationContext","DEFAULT_MAX","pruneExpired","prev","now","ttl","length","next","filter","t","timestamp","DEFAULT_DURATION_MS","BANNER_DURATION_MS","BANNER_IN_MS","BANNER_OUT_MS","MessageNotificationProvider","children","config","propConfig","dispatch","contextConfig","state","chatSettingStore","visibleRoomJID","rooms","notificationConfig","inAppNotifications","isEnabled","enabled","maxNotifications","bannerMode","position","customComponent","duration","pruneAfter","toasts","setToasts","appActiveRef","currentState","sub","addEventListener","current","Date","remove","interval","setInterval","clearInterval","roomJID","dismiss","id","navigateToMessage","messageId","message","roomName","senderName","customOnClick","onClick","Promise","resolve","catch","e","console","error","showMessageNotification","item","slice","unsubscribe","addCallback","contextValue","Provider","value","ToastBanner","safeAreaTop","headerLayout","onPress","onDismiss","pointerEvents","style","styles","container","positionToStyle","map","Custom","onClose","onNavigateToMessage","ToastRow","theme","insets","top","roomIcon","icon","fileToken","shown","Value","drag","leaving","onDismissRef","leave","timing","toValue","easing","in","cubic","useNativeDriver","start","out","timer","setTimeout","clearTimeout","pan","create","onMoveShouldSetPanResponder","_e","g","dy","Math","abs","dx","onPanResponderMove","setValue","min","onPanResponderRelease","vy","spring","onPanResponderTerminate","slide","interpolate","inputRange","outputRange","testID","panHandlers","banner","backgroundColor","surface","borderColor","border","shadowColor","shadow","opacity","transform","translateY","add","bannerBody","name","size","bannerText","bannerTitle","color","text","numberOfLines","bannerSubtitle","textSecondary","body","fade","toast","toastBody","toastTitle","toastSubtitle","dismissText","textMuted","horizontal","vertical","offset","bottom","right","alignItems","left","zIndex","elevation","borderRadius","borderWidth","hairlineWidth","shadowOpacity","shadowOffset","width","height","shadowRadius","flexDirection","paddingVertical","paddingHorizontal","flex","marginLeft","fontWeight","fontSize","marginBottom","lineHeight","marginVertical","minWidth","maxWidth","useMessageNotification","ctx","Error"],"sourceRoot":"../../../src","sources":["context/MessageNotificationContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -14,6 +14,7 @@ import { allRoomPresences } from '../networking/xmpp/allRoomPresences.xmpp';
14
14
  import { pushSubscriptionService } from '../services/pushSubscriptionService';
15
15
  import { store } from '../roomStore';
16
16
  import { logout, setStoreClient, setConfig } from '../roomStore/chatSettingsSlice';
17
+ import { logoutService } from '../hooks/useLogout';
17
18
  import { setLogoutState, setVisibleRoom, clearVisibleRoom, setLastViewedTimestamp, deleteRoomMessage, setUnreadSyncing } from '../roomStore/roomsSlice';
18
19
  import { getFlushBoundaryTs, getReadMarkerTimestamp } from '../helpers/getServerReadTimestamp';
19
20
  import { runHistoryPreloadScheduler } from '../helpers/historyPreloadScheduler';
@@ -160,6 +161,19 @@ export const XmppProvider = ({
160
161
  // Reused clients (steps 1+2 above) also need the provider — config
161
162
  // may have changed since the singleton was created.
162
163
  created.setCredentialsProvider(credentialsProvider);
164
+ // The XMPP password is gone for good (rejected, and the refresh could
165
+ // not produce a working one): end the session the same way the
166
+ // "Sign out" item does, then let the host route to its login.
167
+ created.setAuthLostHandler?.(() => {
168
+ devPushLog('error', 'XMPP password lost — logging out');
169
+ logoutService.performLogout().catch(() => {}).finally(() => {
170
+ try {
171
+ Promise.resolve(config?.logout?.onAfterLogout?.()).catch(() => {});
172
+ } catch {
173
+ /* host callback */
174
+ }
175
+ });
176
+ });
163
177
 
164
178
  // Re-join MUC rooms on every 'online'. After a reconnect the new
165
179
  // XMPP stream isn't a member of any room, so a sent message gets a
@@ -813,14 +827,15 @@ export const XmppProvider = ({
813
827
  });
814
828
  return () => sub.remove();
815
829
  }, [client]);
830
+ const contextValue = useMemo(() => ({
831
+ client,
832
+ providerBootstrapStatus,
833
+ initMode,
834
+ initializeClient,
835
+ setClient
836
+ }), [client, providerBootstrapStatus, initMode, initializeClient, setClient]);
816
837
  return /*#__PURE__*/_jsxs(XmppContext.Provider, {
817
- value: {
818
- client,
819
- providerBootstrapStatus,
820
- initMode,
821
- initializeClient,
822
- setClient
823
- },
838
+ value: contextValue,
824
839
  children: [children, /*#__PURE__*/_jsx(VideoCallOverlay, {})]
825
840
  });
826
841
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","AppState","DeviceEventEmitter","NetInfo","VideoCallOverlay","XmppClient","refreshAuthTokensQuietly","buildXmppClientKey","getGlobalXmppClient","getReusableXmppClientByKey","isXmppClientReusable","setGlobalXmppClient","withXmppClientInitLock","applyResolvedUserToStore","refreshUserCredentialsForXmpp","resolveInitBeforeLoadUser","ensureScopedChatCache","getRooms","prefetchRoomsViaRest","allRoomPresences","pushSubscriptionService","store","logout","setStoreClient","setConfig","setLogoutState","setVisibleRoom","clearVisibleRoom","setLastViewedTimestamp","deleteRoomMessage","setUnreadSyncing","getFlushBoundaryTs","getReadMarkerTimestamp","runHistoryPreloadScheduler","updateMessagesTillLast","secureUserStorage","clearPersistedState","pushLog","devPushLog","jsx","_jsx","jsxs","_jsxs","XmppContext","LOGOUT_EVENT","subscribeAllRoomsForPush","client","reason","rooms","Object","keys","getState","length","nick","jid","getLocal","subscribeToRooms","then","catch","e","XmppProvider","children","config","isVisible","setClient","providerBootstrapStatus","setProviderBootstrapStatus","initMode","initBeforeLoad","lastCredsRef","completedBootstrapKeyRef","inflightBootstrapKeyRef","credentialsProvider","refreshTokens","enabled","rotated","force","xmppPassword","rotatedUser","chatSettingStore","user","username","xmppUsername","defaultWallet","walletAddress","password","fresh","err","u","jwtLogin","token","userLogin","customLogin","initBeforeLoadAuth","myEndpoint","initializeClient","xmppSettings","settings","key","reusable","current","created","prevGlobal","close","newClient","setCredentialsProvider","waitForOnline","console","error","setOnOnline","underlying","finally","getChatsPrivateStoreRequestStanza","abortController","AbortController","cancelled","MAX_BOOTSTRAP_ATTEMPTS","bootstrapAttempt","BOOTSTRAP_BUDGET_MS","reachedReady","budgetTimer","setTimeout","abort","dispatch","clearBudget","clearTimeout","run","explicitUser","appId","baseUrl","devServer","join","mode","clearStoreBeforeInit","remove","undefined","resolved","signal","hasResolved","xmppPasswordPresent","connectPassword","restRoomsPromise","c","getRoomsStanza","roomCount","qos","historyQoS","activeRoomJID","defaultRoomJids","defaultRooms","map","r","filter","Boolean","selectedRoomJid","concurrency","stagedPreloadConcurrency","pageSize","stagedPreloadFirstPassSize","roomLimit","preloadTopKRooms","warn","aborted","backoff","Math","min","message","status","response","data","id","setInterval","currentState","suppressReconnect","forceReconnect","ensureStreamAlive","clearInterval","visibleBeforeBackground","suspendInBackground","keepAliveInBackground","sub","addEventListener","next","isSuspended","resume","roomJID","suspend","state","visibleRoomJID","boundaryTs","readBoundaries","readTs","roomHeapSlice","chatJID","timestamp","messageId","flushLastViewedToPrivateStoreStanza","visibleRoomTs","chatWasVisibleRef","wasVisible","lastMessagesRef","lastStampedMs","flushTimer","advance","s","room","messages","newest","freshState","freshBoundaryTs","unsub","subscribe","reachable","isConnected","isInternetReachable","addListener","disconnect","Provider","value","useXmppClient","context","Error","candidates","live","find","emitXmppLogout","emit"],"sourceRoot":"../../../src","sources":["context/xmppProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","AppState","DeviceEventEmitter","NetInfo","VideoCallOverlay","XmppClient","refreshAuthTokensQuietly","buildXmppClientKey","getGlobalXmppClient","getReusableXmppClientByKey","isXmppClientReusable","setGlobalXmppClient","withXmppClientInitLock","applyResolvedUserToStore","refreshUserCredentialsForXmpp","resolveInitBeforeLoadUser","ensureScopedChatCache","getRooms","prefetchRoomsViaRest","allRoomPresences","pushSubscriptionService","store","logout","setStoreClient","setConfig","logoutService","setLogoutState","setVisibleRoom","clearVisibleRoom","setLastViewedTimestamp","deleteRoomMessage","setUnreadSyncing","getFlushBoundaryTs","getReadMarkerTimestamp","runHistoryPreloadScheduler","updateMessagesTillLast","secureUserStorage","clearPersistedState","pushLog","devPushLog","jsx","_jsx","jsxs","_jsxs","XmppContext","LOGOUT_EVENT","subscribeAllRoomsForPush","client","reason","rooms","Object","keys","getState","length","nick","jid","getLocal","subscribeToRooms","then","catch","e","XmppProvider","children","config","isVisible","setClient","providerBootstrapStatus","setProviderBootstrapStatus","initMode","initBeforeLoad","lastCredsRef","completedBootstrapKeyRef","inflightBootstrapKeyRef","credentialsProvider","refreshTokens","enabled","rotated","force","xmppPassword","rotatedUser","chatSettingStore","user","username","xmppUsername","defaultWallet","walletAddress","password","fresh","err","u","jwtLogin","token","userLogin","customLogin","initBeforeLoadAuth","myEndpoint","initializeClient","xmppSettings","settings","key","reusable","current","created","prevGlobal","close","newClient","setCredentialsProvider","waitForOnline","console","error","setAuthLostHandler","performLogout","finally","Promise","resolve","onAfterLogout","setOnOnline","underlying","getChatsPrivateStoreRequestStanza","abortController","AbortController","cancelled","MAX_BOOTSTRAP_ATTEMPTS","bootstrapAttempt","BOOTSTRAP_BUDGET_MS","reachedReady","budgetTimer","setTimeout","abort","dispatch","clearBudget","clearTimeout","run","explicitUser","appId","baseUrl","devServer","join","mode","clearStoreBeforeInit","remove","undefined","resolved","signal","hasResolved","xmppPasswordPresent","connectPassword","restRoomsPromise","c","getRoomsStanza","roomCount","qos","historyQoS","activeRoomJID","defaultRoomJids","defaultRooms","map","r","filter","Boolean","selectedRoomJid","concurrency","stagedPreloadConcurrency","pageSize","stagedPreloadFirstPassSize","roomLimit","preloadTopKRooms","warn","aborted","backoff","Math","min","message","status","response","data","id","setInterval","currentState","suppressReconnect","forceReconnect","ensureStreamAlive","clearInterval","visibleBeforeBackground","suspendInBackground","keepAliveInBackground","sub","addEventListener","next","isSuspended","resume","roomJID","suspend","state","visibleRoomJID","boundaryTs","readBoundaries","readTs","roomHeapSlice","chatJID","timestamp","messageId","flushLastViewedToPrivateStoreStanza","visibleRoomTs","chatWasVisibleRef","wasVisible","lastMessagesRef","lastStampedMs","flushTimer","advance","s","room","messages","newest","freshState","freshBoundaryTs","unsub","subscribe","reachable","isConnected","isInternetReachable","addListener","disconnect","contextValue","Provider","value","useXmppClient","context","Error","candidates","live","find","emitXmppLogout","emit"],"sourceRoot":"../../../src","sources":["context/xmppProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,43 @@
1
1
  "use strict";
2
2
 
3
+ const mapApiLastMessage = (apiLastMessage, roomJid) => {
4
+ const body = String(apiLastMessage?.body || '').trim();
5
+ if (!apiLastMessage || !body) {
6
+ return undefined;
7
+ }
8
+ const senderName = `${apiLastMessage.senderFirstName || ''} ${apiLastMessage.senderLastName || ''}`.trim();
9
+ return {
10
+ id: apiLastMessage.messageId || apiLastMessage.stanzaId || '',
11
+ xmppId: apiLastMessage.stanzaId,
12
+ roomJid,
13
+ body,
14
+ date: apiLastMessage.createdAt,
15
+ isDeleted: false,
16
+ user: {
17
+ id: apiLastMessage.fromUserId || apiLastMessage.from || '',
18
+ name: senderName
19
+ }
20
+ };
21
+ };
22
+ const seedTimestamp = seed => {
23
+ if (!seed) {
24
+ return undefined;
25
+ }
26
+ const id = Number(seed.id);
27
+ if (Number.isFinite(id) && id > 0) {
28
+ return id;
29
+ }
30
+ const ms = seed.date ? new Date(seed.date).getTime() : NaN;
31
+ return Number.isFinite(ms) && ms > 0 ? ms * 1000 : undefined;
32
+ };
3
33
  export const createRoomFromApi = (room, service = 'conference.dev.xmpp.ethoradev.com', usersArrayLength = 0) => {
4
34
  try {
35
+ const jid = `${room?.name}@${service}` || '';
36
+ const lastMessage = mapApiLastMessage(room?.lastMessage, jid);
5
37
  const roomData = {
6
38
  ...room,
7
39
  id: room?._id || '',
8
- jid: `${room?.name}@${service}` || '',
40
+ jid,
9
41
  name: room?.title || '',
10
42
  title: room?.title || '',
11
43
  usersCnt: Number(room?.members?.length || usersArrayLength + 1),
@@ -14,7 +46,9 @@ export const createRoomFromApi = (room, service = 'conference.dev.xmpp.ethoradev
14
46
  roomBg: null,
15
47
  icon: room?.picture !== 'none' ? room?.picture : null,
16
48
  unreadMessages: 0,
17
- lastViewedTimestamp: 0
49
+ lastViewedTimestamp: 0,
50
+ lastMessage,
51
+ lastMessageTimestamp: seedTimestamp(lastMessage)
18
52
  };
19
53
  return roomData;
20
54
  } catch (error) {
@@ -1 +1 @@
1
- {"version":3,"names":["createRoomFromApi","room","service","usersArrayLength","roomData","id","_id","jid","name","title","usersCnt","Number","members","length","messages","isLoading","roomBg","icon","picture","unreadMessages","lastViewedTimestamp","error","console","log"],"sourceRoot":"../../../src","sources":["helpers/createRoomFromApi.tsx"],"mappings":";;AAEA,OAAO,MAAMA,iBAAiB,GAAGA,CAC/BC,IAAa,EACbC,OAAe,GAAG,mCAAmC,EACrDC,gBAAwB,GAAG,CAAC,KACX;EACjB,IAAI;IACF,MAAMC,QAAe,GAAG;MACtB,GAAGH,IAAI;MACPI,EAAE,EAAGJ,IAAI,EAAUK,GAAG,IAAI,EAAE;MAC5BC,GAAG,EAAE,GAAGN,IAAI,EAAEO,IAAI,IAAIN,OAAO,EAAE,IAAI,EAAE;MACrCM,IAAI,EAAEP,IAAI,EAAEQ,KAAK,IAAI,EAAE;MACvBA,KAAK,EAAER,IAAI,EAAEQ,KAAK,IAAI,EAAE;MACxBC,QAAQ,EAAEC,MAAM,CAACV,IAAI,EAAEW,OAAO,EAAEC,MAAM,IAAIV,gBAAgB,GAAG,CAAC,CAAC;MAC/DW,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,KAAK;MAChBC,MAAM,EAAE,IAAI;MACZC,IAAI,EAAEhB,IAAI,EAAEiB,OAAO,KAAK,MAAM,GAAGjB,IAAI,EAAEiB,OAAO,GAAG,IAAI;MACrDC,cAAc,EAAE,CAAC;MACjBC,mBAAmB,EAAE;IACvB,CAAC;IACD,OAAOhB,QAAQ;EACjB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IACdC,OAAO,CAACC,GAAG,CAACF,KAAK,CAAC;IAClB,OAAO,IAAI;EACb;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["mapApiLastMessage","apiLastMessage","roomJid","body","String","trim","undefined","senderName","senderFirstName","senderLastName","id","messageId","stanzaId","xmppId","date","createdAt","isDeleted","user","fromUserId","from","name","seedTimestamp","seed","Number","isFinite","ms","Date","getTime","NaN","createRoomFromApi","room","service","usersArrayLength","jid","lastMessage","roomData","_id","title","usersCnt","members","length","messages","isLoading","roomBg","icon","picture","unreadMessages","lastViewedTimestamp","lastMessageTimestamp","error","console","log"],"sourceRoot":"../../../src","sources":["helpers/createRoomFromApi.tsx"],"mappings":";;AAGA,MAAMA,iBAAiB,GAAGA,CACxBC,cAAsC,EACtCC,OAAe,KACa;EAC5B,MAAMC,IAAI,GAAGC,MAAM,CAACH,cAAc,EAAEE,IAAI,IAAI,EAAE,CAAC,CAACE,IAAI,CAAC,CAAC;EACtD,IAAI,CAACJ,cAAc,IAAI,CAACE,IAAI,EAAE;IAAC,OAAOG,SAAS;EAAC;EAChD,MAAMC,UAAU,GAAG,GAAGN,cAAc,CAACO,eAAe,IAAI,EAAE,IACxDP,cAAc,CAACQ,cAAc,IAAI,EAAE,EACnC,CAACJ,IAAI,CAAC,CAAC;EACT,OAAO;IACLK,EAAE,EAAET,cAAc,CAACU,SAAS,IAAIV,cAAc,CAACW,QAAQ,IAAI,EAAE;IAC7DC,MAAM,EAAEZ,cAAc,CAACW,QAAQ;IAC/BV,OAAO;IACPC,IAAI;IACJW,IAAI,EAAEb,cAAc,CAACc,SAAS;IAC9BC,SAAS,EAAE,KAAK;IAChBC,IAAI,EAAE;MACJP,EAAE,EAAET,cAAc,CAACiB,UAAU,IAAIjB,cAAc,CAACkB,IAAI,IAAI,EAAE;MAC1DC,IAAI,EAAEb;IACR;EACF,CAAC;AACH,CAAC;AAED,MAAMc,aAAa,GAAIC,IAA6B,IAAyB;EAC3E,IAAI,CAACA,IAAI,EAAE;IAAC,OAAOhB,SAAS;EAAC;EAC7B,MAAMI,EAAE,GAAGa,MAAM,CAACD,IAAI,CAACZ,EAAE,CAAC;EAC1B,IAAIa,MAAM,CAACC,QAAQ,CAACd,EAAE,CAAC,IAAIA,EAAE,GAAG,CAAC,EAAE;IAAC,OAAOA,EAAE;EAAC;EAC9C,MAAMe,EAAE,GAAGH,IAAI,CAACR,IAAI,GAAG,IAAIY,IAAI,CAACJ,IAAI,CAACR,IAAI,CAAC,CAACa,OAAO,CAAC,CAAC,GAAGC,GAAG;EAC1D,OAAOL,MAAM,CAACC,QAAQ,CAACC,EAAE,CAAC,IAAIA,EAAE,GAAG,CAAC,GAAGA,EAAE,GAAG,IAAI,GAAGnB,SAAS;AAC9D,CAAC;AAED,OAAO,MAAMuB,iBAAiB,GAAGA,CAC/BC,IAAa,EACbC,OAAe,GAAG,mCAAmC,EACrDC,gBAAwB,GAAG,CAAC,KACX;EACjB,IAAI;IACF,MAAMC,GAAG,GAAG,GAAGH,IAAI,EAAEV,IAAI,IAAIW,OAAO,EAAE,IAAI,EAAE;IAC5C,MAAMG,WAAW,GAAGlC,iBAAiB,CAAC8B,IAAI,EAAEI,WAAW,EAAED,GAAG,CAAC;IAC7D,MAAME,QAAe,GAAG;MACtB,GAAGL,IAAI;MACPpB,EAAE,EAAGoB,IAAI,EAAUM,GAAG,IAAI,EAAE;MAC5BH,GAAG;MACHb,IAAI,EAAEU,IAAI,EAAEO,KAAK,IAAI,EAAE;MACvBA,KAAK,EAAEP,IAAI,EAAEO,KAAK,IAAI,EAAE;MACxBC,QAAQ,EAAEf,MAAM,CAACO,IAAI,EAAES,OAAO,EAAEC,MAAM,IAAIR,gBAAgB,GAAG,CAAC,CAAC;MAC/DS,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,KAAK;MAChBC,MAAM,EAAE,IAAI;MACZC,IAAI,EAAEd,IAAI,EAAEe,OAAO,KAAK,MAAM,GAAGf,IAAI,EAAEe,OAAO,GAAG,IAAI;MACrDC,cAAc,EAAE,CAAC;MACjBC,mBAAmB,EAAE,CAAC;MACtBb,WAAW;MACXc,oBAAoB,EAAE3B,aAAa,CAACa,WAAW;IACjD,CAAC;IACD,OAAOC,QAAQ;EACjB,CAAC,CAAC,OAAOc,KAAK,EAAE;IACdC,OAAO,CAACC,GAAG,CAACF,KAAK,CAAC;IAClB,OAAO,IAAI;EACb;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ import { EMOJI_CATEGORIES } from '../assets/emojiData';
4
+ let byId = null;
5
+ const index = () => {
6
+ if (!byId) {
7
+ byId = new Map();
8
+ for (const category of EMOJI_CATEGORIES) {
9
+ for (const entry of category.emojis) {
10
+ byId.set(entry[0], entry);
11
+ }
12
+ }
13
+ }
14
+ return byId;
15
+ };
16
+ export const getEmojiNativeById = id => index().get(id)?.[1] ?? id;
17
+ export const getEmojiIdByNative = native => {
18
+ for (const [id, entry] of index()) {
19
+ if (entry[1] === native) {
20
+ return id;
21
+ }
22
+ }
23
+ return undefined;
24
+ };
25
+ export const DEFAULT_QUICK_REACTIONS = ['+1', 'heart', 'joy', 'open_mouth', 'cry', 'pray'];
26
+ export const searchEmojis = (query, limit = 60) => {
27
+ const q = query.trim().toLowerCase();
28
+ if (!q) {
29
+ return [];
30
+ }
31
+ const out = [];
32
+ for (const category of EMOJI_CATEGORIES) {
33
+ for (const entry of category.emojis) {
34
+ if (entry[0].includes(q) || entry[2].includes(q)) {
35
+ out.push(entry);
36
+ if (out.length >= limit) {
37
+ return out;
38
+ }
39
+ }
40
+ }
41
+ }
42
+ return out;
43
+ };
44
+ //# sourceMappingURL=emoji.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["EMOJI_CATEGORIES","byId","index","Map","category","entry","emojis","set","getEmojiNativeById","id","get","getEmojiIdByNative","native","undefined","DEFAULT_QUICK_REACTIONS","searchEmojis","query","limit","q","trim","toLowerCase","out","includes","push","length"],"sourceRoot":"../../../src","sources":["helpers/emoji.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAyB,qBAAqB;AAEvE,IAAIC,IAAoC,GAAG,IAAI;AAC/C,MAAMC,KAAK,GAAGA,CAAA,KAA+B;EAC3C,IAAI,CAACD,IAAI,EAAE;IACTA,IAAI,GAAG,IAAIE,GAAG,CAAC,CAAC;IAChB,KAAK,MAAMC,QAAQ,IAAIJ,gBAAgB,EAAE;MACvC,KAAK,MAAMK,KAAK,IAAID,QAAQ,CAACE,MAAM,EAAE;QAACL,IAAI,CAACM,GAAG,CAACF,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC;MAAC;IAClE;EACF;EACA,OAAOJ,IAAI;AACb,CAAC;AAED,OAAO,MAAMO,kBAAkB,GAAIC,EAAU,IAC3CP,KAAK,CAAC,CAAC,CAACQ,GAAG,CAACD,EAAE,CAAC,GAAG,CAAC,CAAC,IAAIA,EAAE;AAE5B,OAAO,MAAME,kBAAkB,GAAIC,MAAc,IAAyB;EACxE,KAAK,MAAM,CAACH,EAAE,EAAEJ,KAAK,CAAC,IAAIH,KAAK,CAAC,CAAC,EAAE;IACjC,IAAIG,KAAK,CAAC,CAAC,CAAC,KAAKO,MAAM,EAAE;MAAC,OAAOH,EAAE;IAAC;EACtC;EACA,OAAOI,SAAS;AAClB,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC;AAE1F,OAAO,MAAMC,YAAY,GAAGA,CAACC,KAAa,EAAEC,KAAK,GAAG,EAAE,KAAmB;EACvE,MAAMC,CAAC,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;EACpC,IAAI,CAACF,CAAC,EAAE;IAAC,OAAO,EAAE;EAAC;EACnB,MAAMG,GAAiB,GAAG,EAAE;EAC5B,KAAK,MAAMjB,QAAQ,IAAIJ,gBAAgB,EAAE;IACvC,KAAK,MAAMK,KAAK,IAAID,QAAQ,CAACE,MAAM,EAAE;MACnC,IAAID,KAAK,CAAC,CAAC,CAAC,CAACiB,QAAQ,CAACJ,CAAC,CAAC,IAAIb,KAAK,CAAC,CAAC,CAAC,CAACiB,QAAQ,CAACJ,CAAC,CAAC,EAAE;QAChDG,GAAG,CAACE,IAAI,CAAClB,KAAK,CAAC;QACf,IAAIgB,GAAG,CAACG,MAAM,IAAIP,KAAK,EAAE;UAAC,OAAOI,GAAG;QAAC;MACvC;IACF;EACF;EACA,OAAOA,GAAG;AACZ,CAAC","ignoreList":[]}