@ethora/chat-component-rn 26.9.1 → 26.10.1

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 (816) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +19 -0
  3. package/lib/commonjs/assets/icons.js +2 -2
  4. package/lib/commonjs/assets/icons.js.map +1 -1
  5. package/lib/commonjs/components/Header/HeaderRoomList.js +22 -6
  6. package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
  7. package/lib/commonjs/components/InputComponents/Search.js +38 -1
  8. package/lib/commonjs/components/InputComponents/Search.js.map +1 -1
  9. package/lib/commonjs/components/MainComponents/ArchivedMessageCard.js +166 -0
  10. package/lib/commonjs/components/MainComponents/ArchivedMessageCard.js.map +1 -0
  11. package/lib/commonjs/components/MainComponents/ChatHeader.js +22 -5
  12. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  13. package/lib/commonjs/components/MainComponents/ChatRoom.js +56 -25
  14. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  15. package/lib/commonjs/components/MainComponents/ChatWrapper.js +31 -1
  16. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  17. package/lib/commonjs/components/MainComponents/MediaMessage.js +18 -3
  18. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  19. package/lib/commonjs/components/MainComponents/MessageList.js +739 -42
  20. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  21. package/lib/commonjs/components/MainComponents/MessageSearchButton.js +58 -0
  22. package/lib/commonjs/components/MainComponents/MessageSearchButton.js.map +1 -0
  23. package/lib/commonjs/components/MainComponents/ReduxWrapper.js +15 -6
  24. package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
  25. package/lib/commonjs/components/MainComponents/RoomList.js +110 -1
  26. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  27. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +14 -3
  28. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
  29. package/lib/commonjs/components/MessageBubble/BubbleHighlight.js +112 -0
  30. package/lib/commonjs/components/MessageBubble/BubbleHighlight.js.map +1 -0
  31. package/lib/commonjs/components/MessageBubble/Message.js +169 -125
  32. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  33. package/lib/commonjs/components/MessageBubble/MessageInteractions.js +98 -78
  34. package/lib/commonjs/components/MessageBubble/MessageInteractions.js.map +1 -1
  35. package/lib/commonjs/components/MessageBubble/messageMenuLayout.js +50 -0
  36. package/lib/commonjs/components/MessageBubble/messageMenuLayout.js.map +1 -0
  37. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +73 -37
  38. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  39. package/lib/commonjs/components/Modals/MessageSearchModal/MessageHitResults.js +253 -0
  40. package/lib/commonjs/components/Modals/MessageSearchModal/MessageHitResults.js.map +1 -0
  41. package/lib/commonjs/components/Modals/MessageSearchModal/MessageSearchModal.js +488 -0
  42. package/lib/commonjs/components/Modals/MessageSearchModal/MessageSearchModal.js.map +1 -0
  43. package/lib/commonjs/components/Modals/MessageSearchModal/openHit.js +51 -0
  44. package/lib/commonjs/components/Modals/MessageSearchModal/openHit.js.map +1 -0
  45. package/lib/commonjs/components/Modals/MessageSearchModal/resolveSender.js +47 -0
  46. package/lib/commonjs/components/Modals/MessageSearchModal/resolveSender.js.map +1 -0
  47. package/lib/commonjs/components/Modals/MessageSearchModal/searchFilters.js +83 -0
  48. package/lib/commonjs/components/Modals/MessageSearchModal/searchFilters.js.map +1 -0
  49. package/lib/commonjs/components/Modals/MessageSearchModal/snippet.js +61 -0
  50. package/lib/commonjs/components/Modals/MessageSearchModal/snippet.js.map +1 -0
  51. package/lib/commonjs/components/Modals/MessageSearchModal/useMessageSearch.js +136 -0
  52. package/lib/commonjs/components/Modals/MessageSearchModal/useMessageSearch.js.map +1 -0
  53. package/lib/commonjs/components/Modals/PublicChatsModal/PublicChatsModal.js +306 -0
  54. package/lib/commonjs/components/Modals/PublicChatsModal/PublicChatsModal.js.map +1 -0
  55. package/lib/commonjs/components/Modals/PublicChatsModal/publicChatsLogic.js +36 -0
  56. package/lib/commonjs/components/Modals/PublicChatsModal/publicChatsLogic.js.map +1 -0
  57. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js +8 -1
  58. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  59. package/lib/commonjs/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.js +14 -12
  60. package/lib/commonjs/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.js.map +1 -1
  61. package/lib/commonjs/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.js +41 -39
  62. package/lib/commonjs/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.js.map +1 -1
  63. package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +137 -50
  64. package/lib/commonjs/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
  65. package/lib/commonjs/components/Modals/SettingsModals/ProfileShares/ProfileShares.js +15 -13
  66. package/lib/commonjs/components/Modals/SettingsModals/ProfileShares/ProfileShares.js.map +1 -1
  67. package/lib/commonjs/components/Modals/SettingsModals/Referrals/Referrals.js +57 -55
  68. package/lib/commonjs/components/Modals/SettingsModals/Referrals/Referrals.js.map +1 -1
  69. package/lib/commonjs/components/Modals/SettingsModals/SharedStyledComponents.js +15 -1
  70. package/lib/commonjs/components/Modals/SettingsModals/SharedStyledComponents.js.map +1 -1
  71. package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js +61 -59
  72. package/lib/commonjs/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
  73. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +8 -3
  74. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  75. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +13 -2
  76. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  77. package/lib/commonjs/components/RoomComponents/SwipeableRoomRow.js +38 -6
  78. package/lib/commonjs/components/RoomComponents/SwipeableRoomRow.js.map +1 -1
  79. package/lib/commonjs/components/Thread/ThreadHeader.js +3 -1
  80. package/lib/commonjs/components/Thread/ThreadHeader.js.map +1 -1
  81. package/lib/commonjs/components/Thread/ThreadWrapper.js +90 -10
  82. package/lib/commonjs/components/Thread/ThreadWrapper.js.map +1 -1
  83. package/lib/commonjs/components/styled/AudioDecoderHost.js +338 -0
  84. package/lib/commonjs/components/styled/AudioDecoderHost.js.map +1 -0
  85. package/lib/commonjs/components/styled/AudioMessage.js +493 -420
  86. package/lib/commonjs/components/styled/AudioMessage.js.map +1 -1
  87. package/lib/commonjs/components/styled/SendInput.js +31 -5
  88. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  89. package/lib/commonjs/context/MessageNotificationContext.js +14 -4
  90. package/lib/commonjs/context/MessageNotificationContext.js.map +1 -1
  91. package/lib/commonjs/context/xmppProvider.js +41 -77
  92. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  93. package/lib/commonjs/helpers/audioWaveform.js +165 -0
  94. package/lib/commonjs/helpers/audioWaveform.js.map +1 -0
  95. package/lib/commonjs/helpers/backgroundJoinSweep.js +36 -0
  96. package/lib/commonjs/helpers/backgroundJoinSweep.js.map +1 -0
  97. package/lib/commonjs/helpers/bubbleHighlight.js +44 -0
  98. package/lib/commonjs/helpers/bubbleHighlight.js.map +1 -0
  99. package/lib/commonjs/helpers/checkUniqueUsers.js +14 -12
  100. package/lib/commonjs/helpers/checkUniqueUsers.js.map +1 -1
  101. package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js +5 -1
  102. package/lib/commonjs/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
  103. package/lib/commonjs/helpers/constants/MODAL_TYPES.js +3 -1
  104. package/lib/commonjs/helpers/constants/MODAL_TYPES.js.map +1 -1
  105. package/lib/commonjs/helpers/createRoomFromApi.js +40 -3
  106. package/lib/commonjs/helpers/createRoomFromApi.js.map +1 -1
  107. package/lib/commonjs/helpers/dedupeMembers.js +34 -0
  108. package/lib/commonjs/helpers/dedupeMembers.js.map +1 -0
  109. package/lib/commonjs/helpers/ethoraLogger.js +56 -0
  110. package/lib/commonjs/helpers/ethoraLogger.js.map +1 -0
  111. package/lib/commonjs/helpers/getUnnamedUsers.js +9 -4
  112. package/lib/commonjs/helpers/getUnnamedUsers.js.map +1 -1
  113. package/lib/commonjs/helpers/historyPreloadConfig.js +44 -0
  114. package/lib/commonjs/helpers/historyPreloadConfig.js.map +1 -0
  115. package/lib/commonjs/helpers/historyPreloadScheduler.js +372 -137
  116. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  117. package/lib/commonjs/helpers/initRoomsPresence.js +17 -5
  118. package/lib/commonjs/helpers/initRoomsPresence.js.map +1 -1
  119. package/lib/commonjs/helpers/insertMessageWithDelimiter.js +5 -0
  120. package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
  121. package/lib/commonjs/helpers/isLikelyMucJid.js +67 -0
  122. package/lib/commonjs/helpers/isLikelyMucJid.js.map +1 -0
  123. package/lib/commonjs/helpers/isMessageSearchEnabled.js +18 -0
  124. package/lib/commonjs/helpers/isMessageSearchEnabled.js.map +1 -0
  125. package/lib/commonjs/helpers/joiningRoom.js +14 -0
  126. package/lib/commonjs/helpers/joiningRoom.js.map +1 -0
  127. package/lib/commonjs/helpers/jumpThread.js +100 -0
  128. package/lib/commonjs/helpers/jumpThread.js.map +1 -0
  129. package/lib/commonjs/helpers/jumpToMessage.js +58 -0
  130. package/lib/commonjs/helpers/jumpToMessage.js.map +1 -0
  131. package/lib/commonjs/helpers/jumpWindow.js +187 -0
  132. package/lib/commonjs/helpers/jumpWindow.js.map +1 -0
  133. package/lib/commonjs/helpers/loadRoomHistory.js +75 -0
  134. package/lib/commonjs/helpers/loadRoomHistory.js.map +1 -0
  135. package/lib/commonjs/helpers/notificationPolicy.js +77 -0
  136. package/lib/commonjs/helpers/notificationPolicy.js.map +1 -0
  137. package/lib/commonjs/helpers/openRoomAtMessage.js +47 -0
  138. package/lib/commonjs/helpers/openRoomAtMessage.js.map +1 -0
  139. package/lib/commonjs/helpers/openThreadForJump.js +72 -0
  140. package/lib/commonjs/helpers/openThreadForJump.js.map +1 -0
  141. package/lib/commonjs/helpers/parseMessageReference.js +27 -8
  142. package/lib/commonjs/helpers/parseMessageReference.js.map +1 -1
  143. package/lib/commonjs/helpers/publicChatsEntry.js +17 -0
  144. package/lib/commonjs/helpers/publicChatsEntry.js.map +1 -0
  145. package/lib/commonjs/helpers/roomActivityScore.js +37 -0
  146. package/lib/commonjs/helpers/roomActivityScore.js.map +1 -0
  147. package/lib/commonjs/helpers/roomUserCount.js +36 -0
  148. package/lib/commonjs/helpers/roomUserCount.js.map +1 -0
  149. package/lib/commonjs/helpers/runConfiguredHistoryPreload.js +68 -0
  150. package/lib/commonjs/helpers/runConfiguredHistoryPreload.js.map +1 -0
  151. package/lib/commonjs/helpers/sessionAppId.js +24 -0
  152. package/lib/commonjs/helpers/sessionAppId.js.map +1 -0
  153. package/lib/commonjs/helpers/timestamp.js +43 -0
  154. package/lib/commonjs/helpers/timestamp.js.map +1 -0
  155. package/lib/commonjs/helpers/userResolver.js +517 -0
  156. package/lib/commonjs/helpers/userResolver.js.map +1 -0
  157. package/lib/commonjs/helpers/xmppIdShape.js +52 -0
  158. package/lib/commonjs/helpers/xmppIdShape.js.map +1 -0
  159. package/lib/commonjs/hooks/useChatWrapperInit.js +27 -5
  160. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  161. package/lib/commonjs/hooks/useHeapSender.js +54 -3
  162. package/lib/commonjs/hooks/useHeapSender.js.map +1 -1
  163. package/lib/commonjs/hooks/useJumpToMessage.js +411 -0
  164. package/lib/commonjs/hooks/useJumpToMessage.js.map +1 -0
  165. package/lib/commonjs/hooks/useMessageLoaderQueue.js +32 -5
  166. package/lib/commonjs/hooks/useMessageLoaderQueue.js.map +1 -1
  167. package/lib/commonjs/hooks/useMessageQueue.js +13 -5
  168. package/lib/commonjs/hooks/useMessageQueue.js.map +1 -1
  169. package/lib/commonjs/hooks/useRoomDirectory.js +29 -0
  170. package/lib/commonjs/hooks/useRoomDirectory.js.map +1 -0
  171. package/lib/commonjs/hooks/useRoomInitialization.js +27 -5
  172. package/lib/commonjs/hooks/useRoomInitialization.js.map +1 -1
  173. package/lib/commonjs/hooks/useRoomMute.js +62 -0
  174. package/lib/commonjs/hooks/useRoomMute.js.map +1 -0
  175. package/lib/commonjs/hooks/useRoomState.js +3 -1
  176. package/lib/commonjs/hooks/useRoomState.js.map +1 -1
  177. package/lib/commonjs/hooks/useSendMessage.js +13 -3
  178. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  179. package/lib/commonjs/i18n/strings.js +312 -6
  180. package/lib/commonjs/i18n/strings.js.map +1 -1
  181. package/lib/commonjs/networking/api-requests/messageSearch.api.js +87 -0
  182. package/lib/commonjs/networking/api-requests/messageSearch.api.js.map +1 -0
  183. package/lib/commonjs/networking/api-requests/publicChats.api.js +48 -0
  184. package/lib/commonjs/networking/api-requests/publicChats.api.js.map +1 -0
  185. package/lib/commonjs/networking/api-requests/roomMembers.api.js +253 -4
  186. package/lib/commonjs/networking/api-requests/roomMembers.api.js.map +1 -1
  187. package/lib/commonjs/networking/api-requests/rooms.api.js +48 -12
  188. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  189. package/lib/commonjs/networking/api-requests/user.api.js +32 -3
  190. package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
  191. package/lib/commonjs/networking/api-requests/xmppToken.api.js +71 -0
  192. package/lib/commonjs/networking/api-requests/xmppToken.api.js.map +1 -0
  193. package/lib/commonjs/networking/ethoraEvents.js +227 -0
  194. package/lib/commonjs/networking/ethoraEvents.js.map +1 -0
  195. package/lib/commonjs/networking/stanzaHandlers.js +153 -16
  196. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  197. package/lib/commonjs/networking/xmpp/allRoomPresences.xmpp.js +124 -3
  198. package/lib/commonjs/networking/xmpp/allRoomPresences.xmpp.js.map +1 -1
  199. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js +319 -35
  200. package/lib/commonjs/networking/xmpp/getHistory.xmpp.js.map +1 -1
  201. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js +7 -0
  202. package/lib/commonjs/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  203. package/lib/commonjs/networking/xmpp/historyCursor.js +101 -0
  204. package/lib/commonjs/networking/xmpp/historyCursor.js.map +1 -0
  205. package/lib/commonjs/networking/xmpp/mamQueryIds.js +17 -0
  206. package/lib/commonjs/networking/xmpp/mamQueryIds.js.map +1 -0
  207. package/lib/commonjs/networking/xmpp/mamRouter.js +24 -9
  208. package/lib/commonjs/networking/xmpp/mamRouter.js.map +1 -1
  209. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +70 -65
  210. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  211. package/lib/commonjs/networking/xmpp/roomJoinSweep.js +389 -0
  212. package/lib/commonjs/networking/xmpp/roomJoinSweep.js.map +1 -0
  213. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js +0 -1
  214. package/lib/commonjs/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  215. package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js +0 -1
  216. package/lib/commonjs/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
  217. package/lib/commonjs/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js +0 -1
  218. package/lib/commonjs/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js.map +1 -1
  219. package/lib/commonjs/networking/xmppClient.js +269 -41
  220. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  221. package/lib/commonjs/networking/xmppCredentials.js +80 -0
  222. package/lib/commonjs/networking/xmppCredentials.js.map +1 -0
  223. package/lib/commonjs/roomStore/Middleware/jumpThreadMiddleware.js +158 -0
  224. package/lib/commonjs/roomStore/Middleware/jumpThreadMiddleware.js.map +1 -0
  225. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js +6 -0
  226. package/lib/commonjs/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  227. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js +45 -7
  228. package/lib/commonjs/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  229. package/lib/commonjs/roomStore/chatSettingsSlice.js +21 -1
  230. package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
  231. package/lib/commonjs/roomStore/index.js +13 -3
  232. package/lib/commonjs/roomStore/index.js.map +1 -1
  233. package/lib/commonjs/roomStore/persistence.js +48 -1
  234. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  235. package/lib/commonjs/roomStore/roomsSlice.js +474 -60
  236. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  237. package/lib/commonjs/roomStore/safeKey.js +44 -0
  238. package/lib/commonjs/roomStore/safeKey.js.map +1 -0
  239. package/lib/commonjs/roomStore/usersSetCap.js +37 -0
  240. package/lib/commonjs/roomStore/usersSetCap.js.map +1 -0
  241. package/lib/commonjs/version.js +1 -1
  242. package/lib/commonjs/version.js.map +1 -1
  243. package/lib/module/assets/icons.js +1 -1
  244. package/lib/module/assets/icons.js.map +1 -1
  245. package/lib/module/components/Header/HeaderRoomList.js +23 -7
  246. package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
  247. package/lib/module/components/InputComponents/Search.js +39 -2
  248. package/lib/module/components/InputComponents/Search.js.map +1 -1
  249. package/lib/module/components/MainComponents/ArchivedMessageCard.js +161 -0
  250. package/lib/module/components/MainComponents/ArchivedMessageCard.js.map +1 -0
  251. package/lib/module/components/MainComponents/ChatHeader.js +22 -5
  252. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  253. package/lib/module/components/MainComponents/ChatRoom.js +57 -26
  254. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  255. package/lib/module/components/MainComponents/ChatWrapper.js +31 -1
  256. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  257. package/lib/module/components/MainComponents/MediaMessage.js +18 -3
  258. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  259. package/lib/module/components/MainComponents/MessageList.js +740 -42
  260. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  261. package/lib/module/components/MainComponents/MessageSearchButton.js +48 -0
  262. package/lib/module/components/MainComponents/MessageSearchButton.js.map +1 -0
  263. package/lib/module/components/MainComponents/ReduxWrapper.js +15 -7
  264. package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
  265. package/lib/module/components/MainComponents/RoomList.js +111 -2
  266. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  267. package/lib/module/components/Menu/HeaderRoomListMenu.js +15 -4
  268. package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
  269. package/lib/module/components/MessageBubble/BubbleHighlight.js +106 -0
  270. package/lib/module/components/MessageBubble/BubbleHighlight.js.map +1 -0
  271. package/lib/module/components/MessageBubble/Message.js +172 -127
  272. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  273. package/lib/module/components/MessageBubble/MessageInteractions.js +98 -78
  274. package/lib/module/components/MessageBubble/MessageInteractions.js.map +1 -1
  275. package/lib/module/components/MessageBubble/messageMenuLayout.js +45 -0
  276. package/lib/module/components/MessageBubble/messageMenuLayout.js.map +1 -0
  277. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +74 -38
  278. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  279. package/lib/module/components/Modals/MessageSearchModal/MessageHitResults.js +243 -0
  280. package/lib/module/components/Modals/MessageSearchModal/MessageHitResults.js.map +1 -0
  281. package/lib/module/components/Modals/MessageSearchModal/MessageSearchModal.js +482 -0
  282. package/lib/module/components/Modals/MessageSearchModal/MessageSearchModal.js.map +1 -0
  283. package/lib/module/components/Modals/MessageSearchModal/openHit.js +45 -0
  284. package/lib/module/components/Modals/MessageSearchModal/openHit.js.map +1 -0
  285. package/lib/module/components/Modals/MessageSearchModal/resolveSender.js +41 -0
  286. package/lib/module/components/Modals/MessageSearchModal/resolveSender.js.map +1 -0
  287. package/lib/module/components/Modals/MessageSearchModal/searchFilters.js +74 -0
  288. package/lib/module/components/Modals/MessageSearchModal/searchFilters.js.map +1 -0
  289. package/lib/module/components/Modals/MessageSearchModal/snippet.js +57 -0
  290. package/lib/module/components/Modals/MessageSearchModal/snippet.js.map +1 -0
  291. package/lib/module/components/Modals/MessageSearchModal/useMessageSearch.js +131 -0
  292. package/lib/module/components/Modals/MessageSearchModal/useMessageSearch.js.map +1 -0
  293. package/lib/module/components/Modals/PublicChatsModal/PublicChatsModal.js +300 -0
  294. package/lib/module/components/Modals/PublicChatsModal/PublicChatsModal.js.map +1 -0
  295. package/lib/module/components/Modals/PublicChatsModal/publicChatsLogic.js +30 -0
  296. package/lib/module/components/Modals/PublicChatsModal/publicChatsLogic.js.map +1 -0
  297. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js +8 -1
  298. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  299. package/lib/module/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.js +15 -13
  300. package/lib/module/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.js.map +1 -1
  301. package/lib/module/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.js +42 -40
  302. package/lib/module/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.js.map +1 -1
  303. package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js +138 -52
  304. package/lib/module/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.js.map +1 -1
  305. package/lib/module/components/Modals/SettingsModals/ProfileShares/ProfileShares.js +16 -14
  306. package/lib/module/components/Modals/SettingsModals/ProfileShares/ProfileShares.js.map +1 -1
  307. package/lib/module/components/Modals/SettingsModals/Referrals/Referrals.js +58 -56
  308. package/lib/module/components/Modals/SettingsModals/Referrals/Referrals.js.map +1 -1
  309. package/lib/module/components/Modals/SettingsModals/SharedStyledComponents.js +14 -0
  310. package/lib/module/components/Modals/SettingsModals/SharedStyledComponents.js.map +1 -1
  311. package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js +62 -60
  312. package/lib/module/components/Modals/SettingsModals/Visibility/VisibilityModal.js.map +1 -1
  313. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +9 -4
  314. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  315. package/lib/module/components/RoomComponents/ChatRoomItem.js +14 -3
  316. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  317. package/lib/module/components/RoomComponents/SwipeableRoomRow.js +39 -7
  318. package/lib/module/components/RoomComponents/SwipeableRoomRow.js.map +1 -1
  319. package/lib/module/components/Thread/ThreadHeader.js +3 -1
  320. package/lib/module/components/Thread/ThreadHeader.js.map +1 -1
  321. package/lib/module/components/Thread/ThreadWrapper.js +89 -9
  322. package/lib/module/components/Thread/ThreadWrapper.js.map +1 -1
  323. package/lib/module/components/styled/AudioDecoderHost.js +332 -0
  324. package/lib/module/components/styled/AudioDecoderHost.js.map +1 -0
  325. package/lib/module/components/styled/AudioMessage.js +495 -422
  326. package/lib/module/components/styled/AudioMessage.js.map +1 -1
  327. package/lib/module/components/styled/SendInput.js +32 -6
  328. package/lib/module/components/styled/SendInput.js.map +1 -1
  329. package/lib/module/context/MessageNotificationContext.js +15 -5
  330. package/lib/module/context/MessageNotificationContext.js.map +1 -1
  331. package/lib/module/context/xmppProvider.js +42 -78
  332. package/lib/module/context/xmppProvider.js.map +1 -1
  333. package/lib/module/helpers/audioWaveform.js +153 -0
  334. package/lib/module/helpers/audioWaveform.js.map +1 -0
  335. package/lib/module/helpers/backgroundJoinSweep.js +30 -0
  336. package/lib/module/helpers/backgroundJoinSweep.js.map +1 -0
  337. package/lib/module/helpers/bubbleHighlight.js +38 -0
  338. package/lib/module/helpers/bubbleHighlight.js.map +1 -0
  339. package/lib/module/helpers/checkUniqueUsers.js +15 -13
  340. package/lib/module/helpers/checkUniqueUsers.js.map +1 -1
  341. package/lib/module/helpers/constants/MODAL_COMPONENTS.js +5 -1
  342. package/lib/module/helpers/constants/MODAL_COMPONENTS.js.map +1 -1
  343. package/lib/module/helpers/constants/MODAL_TYPES.js +3 -1
  344. package/lib/module/helpers/constants/MODAL_TYPES.js.map +1 -1
  345. package/lib/module/helpers/createRoomFromApi.js +37 -3
  346. package/lib/module/helpers/createRoomFromApi.js.map +1 -1
  347. package/lib/module/helpers/dedupeMembers.js +28 -0
  348. package/lib/module/helpers/dedupeMembers.js.map +1 -0
  349. package/lib/module/helpers/ethoraLogger.js +52 -0
  350. package/lib/module/helpers/ethoraLogger.js.map +1 -0
  351. package/lib/module/helpers/getUnnamedUsers.js +9 -4
  352. package/lib/module/helpers/getUnnamedUsers.js.map +1 -1
  353. package/lib/module/helpers/historyPreloadConfig.js +39 -0
  354. package/lib/module/helpers/historyPreloadConfig.js.map +1 -0
  355. package/lib/module/helpers/historyPreloadScheduler.js +368 -134
  356. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  357. package/lib/module/helpers/initRoomsPresence.js +18 -5
  358. package/lib/module/helpers/initRoomsPresence.js.map +1 -1
  359. package/lib/module/helpers/insertMessageWithDelimiter.js +5 -0
  360. package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
  361. package/lib/module/helpers/isLikelyMucJid.js +60 -0
  362. package/lib/module/helpers/isLikelyMucJid.js.map +1 -0
  363. package/lib/module/helpers/isMessageSearchEnabled.js +13 -0
  364. package/lib/module/helpers/isMessageSearchEnabled.js.map +1 -0
  365. package/lib/module/helpers/joiningRoom.js +9 -0
  366. package/lib/module/helpers/joiningRoom.js.map +1 -0
  367. package/lib/module/helpers/jumpThread.js +83 -0
  368. package/lib/module/helpers/jumpThread.js.map +1 -0
  369. package/lib/module/helpers/jumpToMessage.js +52 -0
  370. package/lib/module/helpers/jumpToMessage.js.map +1 -0
  371. package/lib/module/helpers/jumpWindow.js +177 -0
  372. package/lib/module/helpers/jumpWindow.js.map +1 -0
  373. package/lib/module/helpers/loadRoomHistory.js +69 -0
  374. package/lib/module/helpers/loadRoomHistory.js.map +1 -0
  375. package/lib/module/helpers/notificationPolicy.js +70 -0
  376. package/lib/module/helpers/notificationPolicy.js.map +1 -0
  377. package/lib/module/helpers/openRoomAtMessage.js +41 -0
  378. package/lib/module/helpers/openRoomAtMessage.js.map +1 -0
  379. package/lib/module/helpers/openThreadForJump.js +68 -0
  380. package/lib/module/helpers/openThreadForJump.js.map +1 -0
  381. package/lib/module/helpers/parseMessageReference.js +26 -6
  382. package/lib/module/helpers/parseMessageReference.js.map +1 -1
  383. package/lib/module/helpers/publicChatsEntry.js +12 -0
  384. package/lib/module/helpers/publicChatsEntry.js.map +1 -0
  385. package/lib/module/helpers/roomActivityScore.js +30 -0
  386. package/lib/module/helpers/roomActivityScore.js.map +1 -0
  387. package/lib/module/helpers/roomUserCount.js +29 -0
  388. package/lib/module/helpers/roomUserCount.js.map +1 -0
  389. package/lib/module/helpers/runConfiguredHistoryPreload.js +63 -0
  390. package/lib/module/helpers/runConfiguredHistoryPreload.js.map +1 -0
  391. package/lib/module/helpers/sessionAppId.js +20 -0
  392. package/lib/module/helpers/sessionAppId.js.map +1 -0
  393. package/lib/module/helpers/timestamp.js +37 -0
  394. package/lib/module/helpers/timestamp.js.map +1 -0
  395. package/lib/module/helpers/userResolver.js +503 -0
  396. package/lib/module/helpers/userResolver.js.map +1 -0
  397. package/lib/module/helpers/xmppIdShape.js +46 -0
  398. package/lib/module/helpers/xmppIdShape.js.map +1 -0
  399. package/lib/module/hooks/useChatWrapperInit.js +16 -5
  400. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  401. package/lib/module/hooks/useHeapSender.js +54 -3
  402. package/lib/module/hooks/useHeapSender.js.map +1 -1
  403. package/lib/module/hooks/useJumpToMessage.js +389 -0
  404. package/lib/module/hooks/useJumpToMessage.js.map +1 -0
  405. package/lib/module/hooks/useMessageLoaderQueue.js +32 -5
  406. package/lib/module/hooks/useMessageLoaderQueue.js.map +1 -1
  407. package/lib/module/hooks/useMessageQueue.js +13 -5
  408. package/lib/module/hooks/useMessageQueue.js.map +1 -1
  409. package/lib/module/hooks/useRoomDirectory.js +24 -0
  410. package/lib/module/hooks/useRoomDirectory.js.map +1 -0
  411. package/lib/module/hooks/useRoomInitialization.js +29 -7
  412. package/lib/module/hooks/useRoomInitialization.js.map +1 -1
  413. package/lib/module/hooks/useRoomMute.js +58 -0
  414. package/lib/module/hooks/useRoomMute.js.map +1 -0
  415. package/lib/module/hooks/useRoomState.js +3 -1
  416. package/lib/module/hooks/useRoomState.js.map +1 -1
  417. package/lib/module/hooks/useSendMessage.js +13 -3
  418. package/lib/module/hooks/useSendMessage.js.map +1 -1
  419. package/lib/module/i18n/strings.js +312 -6
  420. package/lib/module/i18n/strings.js.map +1 -1
  421. package/lib/module/networking/api-requests/messageSearch.api.js +81 -0
  422. package/lib/module/networking/api-requests/messageSearch.api.js.map +1 -0
  423. package/lib/module/networking/api-requests/publicChats.api.js +43 -0
  424. package/lib/module/networking/api-requests/publicChats.api.js.map +1 -0
  425. package/lib/module/networking/api-requests/roomMembers.api.js +248 -4
  426. package/lib/module/networking/api-requests/roomMembers.api.js.map +1 -1
  427. package/lib/module/networking/api-requests/rooms.api.js +48 -12
  428. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  429. package/lib/module/networking/api-requests/user.api.js +31 -3
  430. package/lib/module/networking/api-requests/user.api.js.map +1 -1
  431. package/lib/module/networking/api-requests/xmppToken.api.js +66 -0
  432. package/lib/module/networking/api-requests/xmppToken.api.js.map +1 -0
  433. package/lib/module/networking/ethoraEvents.js +220 -0
  434. package/lib/module/networking/ethoraEvents.js.map +1 -0
  435. package/lib/module/networking/stanzaHandlers.js +155 -18
  436. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  437. package/lib/module/networking/xmpp/allRoomPresences.xmpp.js +125 -3
  438. package/lib/module/networking/xmpp/allRoomPresences.xmpp.js.map +1 -1
  439. package/lib/module/networking/xmpp/getHistory.xmpp.js +318 -35
  440. package/lib/module/networking/xmpp/getHistory.xmpp.js.map +1 -1
  441. package/lib/module/networking/xmpp/handleStanzas.xmpp.js +7 -0
  442. package/lib/module/networking/xmpp/handleStanzas.xmpp.js.map +1 -1
  443. package/lib/module/networking/xmpp/historyCursor.js +95 -0
  444. package/lib/module/networking/xmpp/historyCursor.js.map +1 -0
  445. package/lib/module/networking/xmpp/mamQueryIds.js +12 -0
  446. package/lib/module/networking/xmpp/mamQueryIds.js.map +1 -0
  447. package/lib/module/networking/xmpp/mamRouter.js +22 -8
  448. package/lib/module/networking/xmpp/mamRouter.js.map +1 -1
  449. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +68 -62
  450. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  451. package/lib/module/networking/xmpp/roomJoinSweep.js +385 -0
  452. package/lib/module/networking/xmpp/roomJoinSweep.js.map +1 -0
  453. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js +0 -1
  454. package/lib/module/networking/xmpp/sendMediaMessage.xmpp.js.map +1 -1
  455. package/lib/module/networking/xmpp/sendTextMessage.xmpp.js +0 -1
  456. package/lib/module/networking/xmpp/sendTextMessage.xmpp.js.map +1 -1
  457. package/lib/module/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js +0 -1
  458. package/lib/module/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.js.map +1 -1
  459. package/lib/module/networking/xmppClient.js +269 -41
  460. package/lib/module/networking/xmppClient.js.map +1 -1
  461. package/lib/module/networking/xmppCredentials.js +76 -0
  462. package/lib/module/networking/xmppCredentials.js.map +1 -0
  463. package/lib/module/roomStore/Middleware/jumpThreadMiddleware.js +153 -0
  464. package/lib/module/roomStore/Middleware/jumpThreadMiddleware.js.map +1 -0
  465. package/lib/module/roomStore/Middleware/reactionsMiddleware.js +6 -0
  466. package/lib/module/roomStore/Middleware/reactionsMiddleware.js.map +1 -1
  467. package/lib/module/roomStore/Middleware/unreadMidlleware.js +46 -7
  468. package/lib/module/roomStore/Middleware/unreadMidlleware.js.map +1 -1
  469. package/lib/module/roomStore/chatSettingsSlice.js +19 -0
  470. package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
  471. package/lib/module/roomStore/index.js +7 -3
  472. package/lib/module/roomStore/index.js.map +1 -1
  473. package/lib/module/roomStore/persistence.js +46 -1
  474. package/lib/module/roomStore/persistence.js.map +1 -1
  475. package/lib/module/roomStore/roomsSlice.js +459 -58
  476. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  477. package/lib/module/roomStore/safeKey.js +37 -0
  478. package/lib/module/roomStore/safeKey.js.map +1 -0
  479. package/lib/module/roomStore/usersSetCap.js +32 -0
  480. package/lib/module/roomStore/usersSetCap.js.map +1 -0
  481. package/lib/module/version.js +1 -1
  482. package/lib/module/version.js.map +1 -1
  483. package/lib/typescript/assets/icons.d.ts +4 -0
  484. package/lib/typescript/assets/icons.d.ts.map +1 -1
  485. package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
  486. package/lib/typescript/components/InputComponents/Search.d.ts.map +1 -1
  487. package/lib/typescript/components/MainComponents/ArchivedMessageCard.d.ts +12 -0
  488. package/lib/typescript/components/MainComponents/ArchivedMessageCard.d.ts.map +1 -0
  489. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  490. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  491. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  492. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  493. package/lib/typescript/components/MainComponents/MessageList.d.ts +22 -1
  494. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  495. package/lib/typescript/components/MainComponents/MessageSearchButton.d.ts +7 -0
  496. package/lib/typescript/components/MainComponents/MessageSearchButton.d.ts.map +1 -0
  497. package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
  498. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  499. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
  500. package/lib/typescript/components/MessageBubble/BubbleHighlight.d.ts +12 -0
  501. package/lib/typescript/components/MessageBubble/BubbleHighlight.d.ts.map +1 -0
  502. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  503. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts +5 -0
  504. package/lib/typescript/components/MessageBubble/MessageInteractions.d.ts.map +1 -1
  505. package/lib/typescript/components/MessageBubble/messageMenuLayout.d.ts +29 -0
  506. package/lib/typescript/components/MessageBubble/messageMenuLayout.d.ts.map +1 -0
  507. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts +2 -0
  508. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  509. package/lib/typescript/components/Modals/MessageSearchModal/MessageHitResults.d.ts +44 -0
  510. package/lib/typescript/components/Modals/MessageSearchModal/MessageHitResults.d.ts.map +1 -0
  511. package/lib/typescript/components/Modals/MessageSearchModal/MessageSearchModal.d.ts +12 -0
  512. package/lib/typescript/components/Modals/MessageSearchModal/MessageSearchModal.d.ts.map +1 -0
  513. package/lib/typescript/components/Modals/MessageSearchModal/openHit.d.ts +15 -0
  514. package/lib/typescript/components/Modals/MessageSearchModal/openHit.d.ts.map +1 -0
  515. package/lib/typescript/components/Modals/MessageSearchModal/resolveSender.d.ts +34 -0
  516. package/lib/typescript/components/Modals/MessageSearchModal/resolveSender.d.ts.map +1 -0
  517. package/lib/typescript/components/Modals/MessageSearchModal/searchFilters.d.ts +41 -0
  518. package/lib/typescript/components/Modals/MessageSearchModal/searchFilters.d.ts.map +1 -0
  519. package/lib/typescript/components/Modals/MessageSearchModal/snippet.d.ts +15 -0
  520. package/lib/typescript/components/Modals/MessageSearchModal/snippet.d.ts.map +1 -0
  521. package/lib/typescript/components/Modals/MessageSearchModal/useMessageSearch.d.ts +23 -0
  522. package/lib/typescript/components/Modals/MessageSearchModal/useMessageSearch.d.ts.map +1 -0
  523. package/lib/typescript/components/Modals/PublicChatsModal/PublicChatsModal.d.ts +16 -0
  524. package/lib/typescript/components/Modals/PublicChatsModal/PublicChatsModal.d.ts.map +1 -0
  525. package/lib/typescript/components/Modals/PublicChatsModal/publicChatsLogic.d.ts +14 -0
  526. package/lib/typescript/components/Modals/PublicChatsModal/publicChatsLogic.d.ts.map +1 -0
  527. package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts.map +1 -1
  528. package/lib/typescript/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.d.ts.map +1 -1
  529. package/lib/typescript/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.d.ts.map +1 -1
  530. package/lib/typescript/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.d.ts.map +1 -1
  531. package/lib/typescript/components/Modals/SettingsModals/ProfileShares/ProfileShares.d.ts.map +1 -1
  532. package/lib/typescript/components/Modals/SettingsModals/Referrals/Referrals.d.ts.map +1 -1
  533. package/lib/typescript/components/Modals/SettingsModals/SharedStyledComponents.d.ts +1 -0
  534. package/lib/typescript/components/Modals/SettingsModals/SharedStyledComponents.d.ts.map +1 -1
  535. package/lib/typescript/components/Modals/SettingsModals/Visibility/VisibilityModal.d.ts.map +1 -1
  536. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
  537. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  538. package/lib/typescript/components/RoomComponents/SwipeableRoomRow.d.ts +5 -1
  539. package/lib/typescript/components/RoomComponents/SwipeableRoomRow.d.ts.map +1 -1
  540. package/lib/typescript/components/Thread/ThreadHeader.d.ts.map +1 -1
  541. package/lib/typescript/components/Thread/ThreadWrapper.d.ts +1 -0
  542. package/lib/typescript/components/Thread/ThreadWrapper.d.ts.map +1 -1
  543. package/lib/typescript/components/styled/AudioDecoderHost.d.ts +39 -0
  544. package/lib/typescript/components/styled/AudioDecoderHost.d.ts.map +1 -0
  545. package/lib/typescript/components/styled/AudioMessage.d.ts +14 -1
  546. package/lib/typescript/components/styled/AudioMessage.d.ts.map +1 -1
  547. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  548. package/lib/typescript/context/MessageNotificationContext.d.ts.map +1 -1
  549. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  550. package/lib/typescript/helpers/audioWaveform.d.ts +54 -0
  551. package/lib/typescript/helpers/audioWaveform.d.ts.map +1 -0
  552. package/lib/typescript/helpers/backgroundJoinSweep.d.ts +14 -0
  553. package/lib/typescript/helpers/backgroundJoinSweep.d.ts.map +1 -0
  554. package/lib/typescript/helpers/bubbleHighlight.d.ts +17 -0
  555. package/lib/typescript/helpers/bubbleHighlight.d.ts.map +1 -0
  556. package/lib/typescript/helpers/checkUniqueUsers.d.ts +2 -2
  557. package/lib/typescript/helpers/checkUniqueUsers.d.ts.map +1 -1
  558. package/lib/typescript/helpers/constants/MODAL_COMPONENTS.d.ts.map +1 -1
  559. package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts +2 -0
  560. package/lib/typescript/helpers/constants/MODAL_TYPES.d.ts.map +1 -1
  561. package/lib/typescript/helpers/createRoomFromApi.d.ts +25 -0
  562. package/lib/typescript/helpers/createRoomFromApi.d.ts.map +1 -1
  563. package/lib/typescript/helpers/dedupeMembers.d.ts +11 -0
  564. package/lib/typescript/helpers/dedupeMembers.d.ts.map +1 -0
  565. package/lib/typescript/helpers/ethoraLogger.d.ts +13 -0
  566. package/lib/typescript/helpers/ethoraLogger.d.ts.map +1 -0
  567. package/lib/typescript/helpers/getUnnamedUsers.d.ts.map +1 -1
  568. package/lib/typescript/helpers/historyPreloadConfig.d.ts +26 -0
  569. package/lib/typescript/helpers/historyPreloadConfig.d.ts.map +1 -0
  570. package/lib/typescript/helpers/historyPreloadScheduler.d.ts +8 -4
  571. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  572. package/lib/typescript/helpers/initRoomsPresence.d.ts +7 -0
  573. package/lib/typescript/helpers/initRoomsPresence.d.ts.map +1 -1
  574. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
  575. package/lib/typescript/helpers/isLikelyMucJid.d.ts +19 -0
  576. package/lib/typescript/helpers/isLikelyMucJid.d.ts.map +1 -0
  577. package/lib/typescript/helpers/isMessageSearchEnabled.d.ts +12 -0
  578. package/lib/typescript/helpers/isMessageSearchEnabled.d.ts.map +1 -0
  579. package/lib/typescript/helpers/joiningRoom.d.ts +7 -0
  580. package/lib/typescript/helpers/joiningRoom.d.ts.map +1 -0
  581. package/lib/typescript/helpers/jumpThread.d.ts +48 -0
  582. package/lib/typescript/helpers/jumpThread.d.ts.map +1 -0
  583. package/lib/typescript/helpers/jumpToMessage.d.ts +26 -0
  584. package/lib/typescript/helpers/jumpToMessage.d.ts.map +1 -0
  585. package/lib/typescript/helpers/jumpWindow.d.ts +74 -0
  586. package/lib/typescript/helpers/jumpWindow.d.ts.map +1 -0
  587. package/lib/typescript/helpers/loadRoomHistory.d.ts +34 -0
  588. package/lib/typescript/helpers/loadRoomHistory.d.ts.map +1 -0
  589. package/lib/typescript/helpers/notificationPolicy.d.ts +42 -0
  590. package/lib/typescript/helpers/notificationPolicy.d.ts.map +1 -0
  591. package/lib/typescript/helpers/openRoomAtMessage.d.ts +17 -0
  592. package/lib/typescript/helpers/openRoomAtMessage.d.ts.map +1 -0
  593. package/lib/typescript/helpers/openThreadForJump.d.ts +27 -0
  594. package/lib/typescript/helpers/openThreadForJump.d.ts.map +1 -0
  595. package/lib/typescript/helpers/parseMessageReference.d.ts +18 -5
  596. package/lib/typescript/helpers/parseMessageReference.d.ts.map +1 -1
  597. package/lib/typescript/helpers/publicChatsEntry.d.ts +11 -0
  598. package/lib/typescript/helpers/publicChatsEntry.d.ts.map +1 -0
  599. package/lib/typescript/helpers/roomActivityScore.d.ts +5 -0
  600. package/lib/typescript/helpers/roomActivityScore.d.ts.map +1 -0
  601. package/lib/typescript/helpers/roomUserCount.d.ts +20 -0
  602. package/lib/typescript/helpers/roomUserCount.d.ts.map +1 -0
  603. package/lib/typescript/helpers/runConfiguredHistoryPreload.d.ts +21 -0
  604. package/lib/typescript/helpers/runConfiguredHistoryPreload.d.ts.map +1 -0
  605. package/lib/typescript/helpers/sessionAppId.d.ts +8 -0
  606. package/lib/typescript/helpers/sessionAppId.d.ts.map +1 -0
  607. package/lib/typescript/helpers/timestamp.d.ts +3 -0
  608. package/lib/typescript/helpers/timestamp.d.ts.map +1 -0
  609. package/lib/typescript/helpers/userResolver.d.ts +58 -0
  610. package/lib/typescript/helpers/userResolver.d.ts.map +1 -0
  611. package/lib/typescript/helpers/xmppIdShape.d.ts +10 -0
  612. package/lib/typescript/helpers/xmppIdShape.d.ts.map +1 -0
  613. package/lib/typescript/hooks/useChatWrapperInit.d.ts +2 -0
  614. package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
  615. package/lib/typescript/hooks/useHeapSender.d.ts.map +1 -1
  616. package/lib/typescript/hooks/useJumpToMessage.d.ts +116 -0
  617. package/lib/typescript/hooks/useJumpToMessage.d.ts.map +1 -0
  618. package/lib/typescript/hooks/useMessageLoaderQueue.d.ts.map +1 -1
  619. package/lib/typescript/hooks/useMessageQueue.d.ts.map +1 -1
  620. package/lib/typescript/hooks/useRoomDirectory.d.ts +12 -0
  621. package/lib/typescript/hooks/useRoomDirectory.d.ts.map +1 -0
  622. package/lib/typescript/hooks/useRoomInitialization.d.ts.map +1 -1
  623. package/lib/typescript/hooks/useRoomMute.d.ts +8 -0
  624. package/lib/typescript/hooks/useRoomMute.d.ts.map +1 -0
  625. package/lib/typescript/hooks/useRoomState.d.ts +1 -0
  626. package/lib/typescript/hooks/useRoomState.d.ts.map +1 -1
  627. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  628. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  629. package/lib/typescript/networking/api-requests/messageSearch.api.d.ts +57 -0
  630. package/lib/typescript/networking/api-requests/messageSearch.api.d.ts.map +1 -0
  631. package/lib/typescript/networking/api-requests/publicChats.api.d.ts +24 -0
  632. package/lib/typescript/networking/api-requests/publicChats.api.d.ts.map +1 -0
  633. package/lib/typescript/networking/api-requests/roomMembers.api.d.ts +19 -1
  634. package/lib/typescript/networking/api-requests/roomMembers.api.d.ts.map +1 -1
  635. package/lib/typescript/networking/api-requests/rooms.api.d.ts.map +1 -1
  636. package/lib/typescript/networking/api-requests/user.api.d.ts +8 -0
  637. package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
  638. package/lib/typescript/networking/api-requests/xmppToken.api.d.ts +2 -0
  639. package/lib/typescript/networking/api-requests/xmppToken.api.d.ts.map +1 -0
  640. package/lib/typescript/networking/ethoraEvents.d.ts +45 -0
  641. package/lib/typescript/networking/ethoraEvents.d.ts.map +1 -0
  642. package/lib/typescript/networking/stanzaHandlers.d.ts +1 -1
  643. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  644. package/lib/typescript/networking/xmpp/allRoomPresences.xmpp.d.ts +32 -1
  645. package/lib/typescript/networking/xmpp/allRoomPresences.xmpp.d.ts.map +1 -1
  646. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts +64 -0
  647. package/lib/typescript/networking/xmpp/getHistory.xmpp.d.ts.map +1 -1
  648. package/lib/typescript/networking/xmpp/handleStanzas.xmpp.d.ts.map +1 -1
  649. package/lib/typescript/networking/xmpp/historyCursor.d.ts +35 -0
  650. package/lib/typescript/networking/xmpp/historyCursor.d.ts.map +1 -0
  651. package/lib/typescript/networking/xmpp/mamQueryIds.d.ts +10 -0
  652. package/lib/typescript/networking/xmpp/mamQueryIds.d.ts.map +1 -0
  653. package/lib/typescript/networking/xmpp/mamRouter.d.ts +7 -0
  654. package/lib/typescript/networking/xmpp/mamRouter.d.ts.map +1 -1
  655. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts +13 -2
  656. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
  657. package/lib/typescript/networking/xmpp/roomJoinSweep.d.ts +82 -0
  658. package/lib/typescript/networking/xmpp/roomJoinSweep.d.ts.map +1 -0
  659. package/lib/typescript/networking/xmpp/sendMediaMessage.xmpp.d.ts.map +1 -1
  660. package/lib/typescript/networking/xmpp/sendTextMessage.xmpp.d.ts.map +1 -1
  661. package/lib/typescript/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.d.ts.map +1 -1
  662. package/lib/typescript/networking/xmppClient.d.ts +90 -4
  663. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  664. package/lib/typescript/networking/xmppCredentials.d.ts +12 -0
  665. package/lib/typescript/networking/xmppCredentials.d.ts.map +1 -0
  666. package/lib/typescript/roomStore/Middleware/jumpThreadMiddleware.d.ts +3 -0
  667. package/lib/typescript/roomStore/Middleware/jumpThreadMiddleware.d.ts.map +1 -0
  668. package/lib/typescript/roomStore/Middleware/reactionsMiddleware.d.ts.map +1 -1
  669. package/lib/typescript/roomStore/Middleware/unreadMidlleware.d.ts.map +1 -1
  670. package/lib/typescript/roomStore/chatSettingsSlice.d.ts +8 -1
  671. package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
  672. package/lib/typescript/roomStore/index.d.ts +2 -1
  673. package/lib/typescript/roomStore/index.d.ts.map +1 -1
  674. package/lib/typescript/roomStore/persistence.d.ts +8 -0
  675. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  676. package/lib/typescript/roomStore/roomsSlice.d.ts +138 -2
  677. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  678. package/lib/typescript/roomStore/safeKey.d.ts +13 -0
  679. package/lib/typescript/roomStore/safeKey.d.ts.map +1 -0
  680. package/lib/typescript/roomStore/usersSetCap.d.ts +16 -0
  681. package/lib/typescript/roomStore/usersSetCap.d.ts.map +1 -0
  682. package/lib/typescript/types/models/media.model.d.ts +2 -0
  683. package/lib/typescript/types/models/media.model.d.ts.map +1 -1
  684. package/lib/typescript/types/models/room.model.d.ts +18 -5
  685. package/lib/typescript/types/models/room.model.d.ts.map +1 -1
  686. package/lib/typescript/types/models/xmpp.model.d.ts +8 -1
  687. package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
  688. package/lib/typescript/types/types.d.ts +88 -5
  689. package/lib/typescript/types/types.d.ts.map +1 -1
  690. package/lib/typescript/version.d.ts +1 -1
  691. package/lib/typescript/version.d.ts.map +1 -1
  692. package/package.json +1 -1
  693. package/src/assets/icons.tsx +13 -0
  694. package/src/components/Header/HeaderRoomList.tsx +21 -4
  695. package/src/components/InputComponents/Search.tsx +33 -0
  696. package/src/components/MainComponents/ArchivedMessageCard.tsx +139 -0
  697. package/src/components/MainComponents/ChatHeader.tsx +19 -3
  698. package/src/components/MainComponents/ChatRoom.tsx +60 -23
  699. package/src/components/MainComponents/ChatWrapper.tsx +23 -4
  700. package/src/components/MainComponents/MediaMessage.tsx +17 -0
  701. package/src/components/MainComponents/MessageList.tsx +823 -84
  702. package/src/components/MainComponents/MessageSearchButton.tsx +48 -0
  703. package/src/components/MainComponents/ReduxWrapper.tsx +16 -5
  704. package/src/components/MainComponents/RoomList.tsx +125 -0
  705. package/src/components/Menu/HeaderRoomListMenu.tsx +26 -2
  706. package/src/components/MessageBubble/BubbleHighlight.tsx +106 -0
  707. package/src/components/MessageBubble/Message.tsx +265 -177
  708. package/src/components/MessageBubble/MessageInteractions.tsx +109 -86
  709. package/src/components/MessageBubble/messageMenuLayout.ts +59 -0
  710. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +92 -21
  711. package/src/components/Modals/MessageSearchModal/MessageHitResults.tsx +271 -0
  712. package/src/components/Modals/MessageSearchModal/MessageSearchModal.tsx +487 -0
  713. package/src/components/Modals/MessageSearchModal/openHit.ts +50 -0
  714. package/src/components/Modals/MessageSearchModal/resolveSender.ts +57 -0
  715. package/src/components/Modals/MessageSearchModal/searchFilters.ts +109 -0
  716. package/src/components/Modals/MessageSearchModal/snippet.ts +58 -0
  717. package/src/components/Modals/MessageSearchModal/useMessageSearch.ts +151 -0
  718. package/src/components/Modals/PublicChatsModal/PublicChatsModal.tsx +288 -0
  719. package/src/components/Modals/PublicChatsModal/publicChatsLogic.ts +36 -0
  720. package/src/components/Modals/SelectUsersModal/SelectUsersModal.tsx +8 -1
  721. package/src/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.tsx +20 -17
  722. package/src/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.tsx +58 -55
  723. package/src/components/Modals/SettingsModals/ManageDataModal/ManageDataModal.tsx +156 -62
  724. package/src/components/Modals/SettingsModals/ProfileShares/ProfileShares.tsx +22 -19
  725. package/src/components/Modals/SettingsModals/Referrals/Referrals.tsx +48 -45
  726. package/src/components/Modals/SettingsModals/SharedStyledComponents.ts +11 -0
  727. package/src/components/Modals/SettingsModals/Visibility/VisibilityModal.tsx +63 -60
  728. package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +11 -3
  729. package/src/components/RoomComponents/ChatRoomItem.tsx +16 -3
  730. package/src/components/RoomComponents/SwipeableRoomRow.tsx +39 -6
  731. package/src/components/Thread/ThreadHeader.tsx +3 -1
  732. package/src/components/Thread/ThreadWrapper.tsx +96 -10
  733. package/src/components/styled/AudioDecoderHost.tsx +351 -0
  734. package/src/components/styled/AudioMessage.tsx +482 -425
  735. package/src/components/styled/SendInput.tsx +42 -4
  736. package/src/context/MessageNotificationContext.tsx +19 -5
  737. package/src/context/xmppProvider.tsx +44 -91
  738. package/src/helpers/audioWaveform.ts +142 -0
  739. package/src/helpers/backgroundJoinSweep.ts +35 -0
  740. package/src/helpers/bubbleHighlight.ts +47 -0
  741. package/src/helpers/checkUniqueUsers.tsx +15 -17
  742. package/src/helpers/constants/MODAL_COMPONENTS.tsx +4 -0
  743. package/src/helpers/constants/MODAL_TYPES.ts +3 -0
  744. package/src/helpers/createRoomFromApi.tsx +45 -4
  745. package/src/helpers/dedupeMembers.ts +29 -0
  746. package/src/helpers/ethoraLogger.ts +50 -0
  747. package/src/helpers/getUnnamedUsers.ts +7 -4
  748. package/src/helpers/historyPreloadConfig.ts +68 -0
  749. package/src/helpers/historyPreloadScheduler.ts +437 -199
  750. package/src/helpers/initRoomsPresence.ts +20 -7
  751. package/src/helpers/insertMessageWithDelimiter.ts +3 -0
  752. package/src/helpers/isLikelyMucJid.ts +72 -0
  753. package/src/helpers/isMessageSearchEnabled.ts +18 -0
  754. package/src/helpers/joiningRoom.ts +13 -0
  755. package/src/helpers/jumpThread.ts +102 -0
  756. package/src/helpers/jumpToMessage.ts +57 -0
  757. package/src/helpers/jumpWindow.ts +212 -0
  758. package/src/helpers/loadRoomHistory.ts +83 -0
  759. package/src/helpers/notificationPolicy.ts +82 -0
  760. package/src/helpers/openRoomAtMessage.ts +38 -0
  761. package/src/helpers/openThreadForJump.ts +96 -0
  762. package/src/helpers/parseMessageReference.ts +37 -8
  763. package/src/helpers/publicChatsEntry.ts +15 -0
  764. package/src/helpers/roomActivityScore.ts +45 -0
  765. package/src/helpers/roomUserCount.ts +44 -0
  766. package/src/helpers/runConfiguredHistoryPreload.ts +76 -0
  767. package/src/helpers/sessionAppId.ts +17 -0
  768. package/src/helpers/timestamp.ts +44 -0
  769. package/src/helpers/userResolver.ts +542 -0
  770. package/src/helpers/xmppIdShape.ts +46 -0
  771. package/src/hooks/useChatWrapperInit.ts +22 -4
  772. package/src/hooks/useHeapSender.tsx +54 -3
  773. package/src/hooks/useJumpToMessage.ts +538 -0
  774. package/src/hooks/useMessageLoaderQueue.tsx +40 -4
  775. package/src/hooks/useMessageQueue.ts +9 -5
  776. package/src/hooks/useRoomDirectory.ts +39 -0
  777. package/src/hooks/useRoomInitialization.tsx +33 -7
  778. package/src/hooks/useRoomMute.ts +42 -0
  779. package/src/hooks/useRoomState.tsx +6 -0
  780. package/src/hooks/useSendMessage.tsx +14 -2
  781. package/src/i18n/strings.ts +306 -0
  782. package/src/networking/api-requests/messageSearch.api.ts +130 -0
  783. package/src/networking/api-requests/publicChats.api.ts +71 -0
  784. package/src/networking/api-requests/roomMembers.api.ts +263 -11
  785. package/src/networking/api-requests/rooms.api.ts +52 -12
  786. package/src/networking/api-requests/user.api.ts +28 -2
  787. package/src/networking/api-requests/xmppToken.api.ts +62 -0
  788. package/src/networking/ethoraEvents.ts +262 -0
  789. package/src/networking/stanzaHandlers.ts +145 -19
  790. package/src/networking/xmpp/allRoomPresences.xmpp.ts +155 -5
  791. package/src/networking/xmpp/getHistory.xmpp.ts +433 -47
  792. package/src/networking/xmpp/handleStanzas.xmpp.ts +8 -0
  793. package/src/networking/xmpp/historyCursor.ts +124 -0
  794. package/src/networking/xmpp/mamQueryIds.ts +11 -0
  795. package/src/networking/xmpp/mamRouter.ts +24 -10
  796. package/src/networking/xmpp/presenceInRoom.xmpp.ts +91 -68
  797. package/src/networking/xmpp/roomJoinSweep.ts +412 -0
  798. package/src/networking/xmpp/sendMediaMessage.xmpp.ts +0 -1
  799. package/src/networking/xmpp/sendTextMessage.xmpp.ts +0 -1
  800. package/src/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.ts +0 -1
  801. package/src/networking/xmppClient.ts +323 -47
  802. package/src/networking/xmppCredentials.ts +87 -0
  803. package/src/roomStore/Middleware/jumpThreadMiddleware.ts +163 -0
  804. package/src/roomStore/Middleware/reactionsMiddleware.tsx +4 -0
  805. package/src/roomStore/Middleware/unreadMidlleware.tsx +59 -11
  806. package/src/roomStore/chatSettingsSlice.ts +17 -0
  807. package/src/roomStore/index.ts +10 -3
  808. package/src/roomStore/persistence.ts +54 -0
  809. package/src/roomStore/roomsSlice.ts +547 -65
  810. package/src/roomStore/safeKey.ts +49 -0
  811. package/src/roomStore/usersSetCap.ts +37 -0
  812. package/src/types/models/media.model.ts +4 -0
  813. package/src/types/models/room.model.ts +18 -5
  814. package/src/types/models/xmpp.model.ts +15 -1
  815. package/src/types/types.ts +93 -5
  816. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useRef","DEFAULT_BATCH_SIZE","DEFAULT_PAGE_SIZE","DEFAULT_POLL_INTERVAL","roomHasMoreMessages","room","max","messages","length","useMessageLoaderQueue","roomsList","rooms","globalLoading","loading","loadMoreMessages","batchSize","pageSize","pollInterval","processedChats","Set","intervalRef","processQueue","unprocessed","filter","jid","current","has","clearInterval","i","batch","slice","Promise","all","map","noMessages","historyComplete","err","console","error","res","setTimeout","add","setInterval"],"sourceRoot":"../../../src","sources":["hooks/useMessageLoaderQueue.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","DEFAULT_BATCH_SIZE","DEFAULT_PAGE_SIZE","DEFAULT_POLL_INTERVAL","LOAD_DEADLINE_MS","withDeadline","work","ms","timer","deadline","Promise","resolve","setTimeout","race","finally","clearTimeout","roomHasMoreMessages","room","max","messages","length","useMessageLoaderQueue","roomsList","rooms","globalLoading","loading","loadMoreMessages","batchSize","pageSize","pollInterval","processedChats","Set","intervalRef","sweepingRef","sweep","unprocessed","filter","jid","current","has","clearInterval","i","batch","slice","all","map","noMessages","historyComplete","err","console","error","res","add","processQueue","setInterval"],"sourceRoot":"../../../src","sources":["hooks/useMessageLoaderQueue.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,10 +8,14 @@ const hasDuplicateMessages = (newMessages, currentMessages) => {
8
8
  return newMessages.some(newMsg => currentMessages.some(currMsg => currMsg.id === newMsg.id));
9
9
  };
10
10
  const addRoomToProcessed = (queueRoom, processedRooms, rooms) => {
11
+ // A room that left the list while queued has nothing to trim.
12
+ if (!rooms[queueRoom.jid]) {
13
+ return;
14
+ }
11
15
  if (queueRoom.messageCount >= 20 && !processedRooms.current.has(queueRoom.jid)) {
12
16
  processedRooms.current.add(queueRoom.jid);
13
17
  console.log(`Marking room: ${queueRoom.jid} as processed`);
14
- if (rooms[queueRoom.jid].messages.length >= 30) {
18
+ if ((rooms[queueRoom.jid].messages?.length ?? 0) >= 30) {
15
19
  console.log(`Trimming messages for room: ${queueRoom.jid}`);
16
20
  rooms[queueRoom.jid].messages = rooms[queueRoom.jid].messages.slice(-30);
17
21
  }
@@ -23,7 +27,7 @@ export const useMessageQueue = (rooms, activeRoomJID, loadMessages) => {
23
27
  const processedRooms = useRef(new Set());
24
28
  const asyncLoadMessages = async (queueRoom, rooms) => {
25
29
  try {
26
- if (queueRoom.messageCount < 30 && !rooms[queueRoom.jid].historyComplete) {
30
+ if (queueRoom.messageCount < 30 && !rooms[queueRoom.jid]?.historyComplete) {
27
31
  console.log(`Loading messages for room: ${queueRoom.jid}`);
28
32
  dispatch(setIsLoading({
29
33
  chatJID: queueRoom.jid,
@@ -31,7 +35,7 @@ export const useMessageQueue = (rooms, activeRoomJID, loadMessages) => {
31
35
  }));
32
36
  const newMessages = await loadMessages(queueRoom.jid, 5, Number(queueRoom.lastMessageId));
33
37
  queueRoom.messages = [...queueRoom.messages, ...newMessages];
34
- if (queueRoom.messageCount + queueRoom.messages.length < 30 && !rooms[queueRoom.jid].historyComplete) {
38
+ if (queueRoom.messageCount + queueRoom.messages.length < 30 && !rooms[queueRoom.jid]?.historyComplete) {
35
39
  console.log(`Re-queuing room: ${queueRoom.jid} for more messages`);
36
40
  messageQueue.current.push({
37
41
  jid: queueRoom.jid,
@@ -69,14 +73,18 @@ export const useMessageQueue = (rooms, activeRoomJID, loadMessages) => {
69
73
  }
70
74
  await Promise.all(roomsToProcess.map(async room => {
71
75
  try {
72
- if (room.messageCount < 30 && !rooms[room.jid].historyComplete) {
76
+ // A room that left the list while queued is dropped, not retried.
77
+ if (!rooms[room.jid]) {
78
+ return;
79
+ }
80
+ if (room.messageCount < 30 && !rooms[room.jid]?.historyComplete) {
73
81
  console.log(`Loading messages for room: ${room.jid}`);
74
82
  dispatch(setIsLoading({
75
83
  chatJID: room.jid,
76
84
  loading: true
77
85
  }));
78
86
  await loadMessages(room.jid, 20, Number(room.lastMessageId));
79
- if (room.messageCount + 20 < 30 && !rooms[room.jid].historyComplete) {
87
+ if (room.messageCount + 20 < 30 && !rooms[room.jid]?.historyComplete) {
80
88
  console.log(`Re-queuing room: ${room.jid} for more messages`);
81
89
  queue.push({
82
90
  ...room,
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useDispatch","PriorityQueue","setIsLoading","hasDuplicateMessages","newMessages","currentMessages","some","newMsg","currMsg","id","addRoomToProcessed","queueRoom","processedRooms","rooms","messageCount","current","has","jid","add","console","log","messages","length","slice","useMessageQueue","activeRoomJID","loadMessages","dispatch","messageQueue","a","b","priority","Set","asyncLoadMessages","historyComplete","chatJID","loading","Number","lastMessageId","push","error","processQueue","queue","isEmpty","roomsToProcess","pop","Promise","all","map","room","Math","max","interval","setInterval","clearInterval"],"sourceRoot":"../../../src","sources":["hooks/useMessageQueue.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","useDispatch","PriorityQueue","setIsLoading","hasDuplicateMessages","newMessages","currentMessages","some","newMsg","currMsg","id","addRoomToProcessed","queueRoom","processedRooms","rooms","jid","messageCount","current","has","add","console","log","messages","length","slice","useMessageQueue","activeRoomJID","loadMessages","dispatch","messageQueue","a","b","priority","Set","asyncLoadMessages","historyComplete","chatJID","loading","Number","lastMessageId","push","error","processQueue","queue","isEmpty","roomsToProcess","pop","Promise","all","map","room","Math","max","interval","setInterval","clearInterval"],"sourceRoot":"../../../src","sources":["hooks/useMessageQueue.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useSyncExternalStore } from 'react';
4
+ import { ensureRoomDirectory, getRoomDirectoryMembers, getRoomDirectoryState, subscribeUserResolver } from '../helpers/userResolver';
5
+ const NO_MEMBERS = [];
6
+
7
+ /**
8
+ * Directory of a big room (usersCnt > the members the API returned).
9
+ * `enabled` starts the (once per room, deduplicated) load; the result grows
10
+ * page by page. Rooms that are not truncated never trigger a request.
11
+ */
12
+ export const useRoomDirectory = (roomJid, enabled) => {
13
+ const jid = roomJid || '';
14
+ const members = useSyncExternalStore(subscribeUserResolver, () => jid ? getRoomDirectoryMembers(jid) : NO_MEMBERS, () => NO_MEMBERS);
15
+ const state = useSyncExternalStore(subscribeUserResolver, () => jid ? getRoomDirectoryState(jid) : 'idle', () => 'idle');
16
+ useEffect(() => {
17
+ if (enabled && jid) ensureRoomDirectory(jid);
18
+ }, [enabled, jid]);
19
+ return {
20
+ members,
21
+ state
22
+ };
23
+ };
24
+ //# sourceMappingURL=useRoomDirectory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useSyncExternalStore","ensureRoomDirectory","getRoomDirectoryMembers","getRoomDirectoryState","subscribeUserResolver","NO_MEMBERS","useRoomDirectory","roomJid","enabled","jid","members","state"],"sourceRoot":"../../../src","sources":["hooks/useRoomDirectory.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,oBAAoB,QAAQ,OAAO;AACvD,SACEC,mBAAmB,EACnBC,uBAAuB,EACvBC,qBAAqB,EACrBC,qBAAqB,QAEhB,yBAAyB;AAGhC,MAAMC,UAAwB,GAAG,EAAE;;AAEnC;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAGA,CAC9BC,OAA2B,EAC3BC,OAAgB,KACyC;EACzD,MAAMC,GAAG,GAAGF,OAAO,IAAI,EAAE;EACzB,MAAMG,OAAO,GAAGV,oBAAoB,CAClCI,qBAAqB,EACrB,MAAOK,GAAG,GAAGP,uBAAuB,CAACO,GAAG,CAAC,GAAGJ,UAAW,EACvD,MAAMA,UACR,CAAC;EACD,MAAMM,KAAK,GAAGX,oBAAoB,CAChCI,qBAAqB,EACrB,MAAOK,GAAG,GAAGN,qBAAqB,CAACM,GAAG,CAAC,GAAG,MAAO,EACjD,MAAM,MACR,CAAC;EAEDV,SAAS,CAAC,MAAM;IACd,IAAIS,OAAO,IAAIC,GAAG,EAAER,mBAAmB,CAACQ,GAAG,CAAC;EAC9C,CAAC,EAAE,CAACD,OAAO,EAAEC,GAAG,CAAC,CAAC;EAElB,OAAO;IAAEC,OAAO;IAAEC;EAAM,CAAC;AAC3B,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
- import { useEffect } from 'react';
4
- import { setIsLoading } from '../roomStore/roomsSlice';
3
+ import { useEffect, useRef } from 'react';
4
+ import { clearJoiningRoom, setIsLoading, setJoiningRoom } from '../roomStore/roomsSlice';
5
5
  import { useXmppClient } from '../context/xmppProvider';
6
6
  import { useDispatch, useSelector, useStore } from 'react-redux';
7
7
  import useGetNewArchRoom from './useGetNewArchRoom';
@@ -29,6 +29,11 @@ export const useRoomInitialization = (activeRoomJID, config) => {
29
29
  });
30
30
  const syncRooms = useGetNewArchRoom();
31
31
 
32
+ // Rooms whose join flag this mount already raised. The effect below re-runs
33
+ // as the room list settles; only the first run owns the flag, so a re-run
34
+ // cannot clear it from under a join that is still in flight.
35
+ const joinFlagRef = useRef(new Set());
36
+
32
37
  // Fast active-room join. Mirrors web's first effect: as soon as the
33
38
  // active room changes, eagerly send presence + ask for room info so
34
39
  // the header populates and the MUC join lets MAM history flow.
@@ -95,11 +100,28 @@ export const useRoomInitialization = (activeRoomJID, config) => {
95
100
  };
96
101
  const initialPresenceAndHistory = async () => {
97
102
  if (!roomsList[activeRoomJID] && activeRoomJID && client) {
98
- await client.presenceInRoomStanza(activeRoomJID);
99
- if (config?.newArch) {
100
- await syncRooms(client, config);
101
- } else {
102
- await client.getRoomsStanza();
103
+ // Entering a room we are not a member of yet (the public chats
104
+ // directory, a link, a QR code). Until it shows up in the room list
105
+ // the pane says "joining" (ChatRoom reads joiningRoomJID) instead of
106
+ // flashing the "choose a chat" placeholder the user just left.
107
+ const joinJid = activeRoomJID;
108
+ const ownsJoinFlag = !joinFlagRef.current.has(joinJid);
109
+ if (ownsJoinFlag) {
110
+ joinFlagRef.current.add(joinJid);
111
+ dispatch(setJoiningRoom(joinJid));
112
+ }
113
+ try {
114
+ await client.presenceInRoomStanza(activeRoomJID);
115
+ if (config?.newArch) {
116
+ await syncRooms(client, config);
117
+ } else {
118
+ await client.getRoomsStanza();
119
+ }
120
+ } finally {
121
+ if (ownsJoinFlag) {
122
+ joinFlagRef.current.delete(joinJid);
123
+ dispatch(clearJoiningRoom(joinJid));
124
+ }
103
125
  }
104
126
  await getDefaultHistory();
105
127
  } else {
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","setIsLoading","useXmppClient","useDispatch","useSelector","useStore","useGetNewArchRoom","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","dispatch","reduxStore","hasRooms","state","Object","keys","rooms","activeRoomExists","activeHistoryLoaded","defaultRoomsMissing","jids","syncRooms","setActiveRoomJid","promoteRoomHistory","presenceInRoomStanza","getRoomInfoStanza","roomsList","getState","shouldLoadActiveHistory","getDefaultHistory","loading","chatJID","res","getHistoryStanza","prioritizeRoomPresence","catch","Number","loadingText","initialPresenceAndHistory","newArch","getRoomsStanza","isLoading"],"sourceRoot":"../../../src","sources":["hooks/useRoomInitialization.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","clearJoiningRoom","setIsLoading","setJoiningRoom","useXmppClient","useDispatch","useSelector","useStore","useGetNewArchRoom","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","dispatch","reduxStore","hasRooms","state","Object","keys","rooms","activeRoomExists","activeHistoryLoaded","defaultRoomsMissing","jids","syncRooms","joinFlagRef","Set","setActiveRoomJid","promoteRoomHistory","presenceInRoomStanza","getRoomInfoStanza","roomsList","getState","shouldLoadActiveHistory","getDefaultHistory","loading","chatJID","res","getHistoryStanza","prioritizeRoomPresence","catch","Number","loadingText","initialPresenceAndHistory","joinJid","ownsJoinFlag","current","has","add","newArch","getRoomsStanza","delete","isLoading"],"sourceRoot":"../../../src","sources":["hooks/useRoomInitialization.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ import { useCallback } from 'react';
4
+ import { useDispatch, useStore } from 'react-redux';
5
+ import { updateRoom } from '../roomStore/roomsSlice';
6
+ import { setRoomMuted } from '../networking/api-requests/rooms.api';
7
+
8
+ /** Rooms with a mute request in flight: a second tap waits for the first. */
9
+ const inFlight = new Set();
10
+
11
+ /**
12
+ * Mute / unmute a chat's notifications, shared by the chat profile and the
13
+ * room-list swipe. Optimistic: the bell flips at once, the server's answer
14
+ * wins, and a failure flips it back. Resolves false on that failure, so the
15
+ * caller can say so in its own way (the profile toasts, the list alerts).
16
+ */
17
+ export const useRoomMute = () => {
18
+ const dispatch = useDispatch();
19
+ const store = useStore();
20
+ return useCallback(async jid => {
21
+ const room = store.getState().rooms.rooms[jid];
22
+ if (!room?.jid || !room?.name || inFlight.has(jid)) {
23
+ return true;
24
+ }
25
+ const next = !room.muted;
26
+ inFlight.add(jid);
27
+ dispatch(updateRoom({
28
+ jid,
29
+ updates: {
30
+ muted: next
31
+ }
32
+ }));
33
+ try {
34
+ const confirmed = await setRoomMuted(room.name, next);
35
+ if (confirmed !== next) {
36
+ dispatch(updateRoom({
37
+ jid,
38
+ updates: {
39
+ muted: confirmed
40
+ }
41
+ }));
42
+ }
43
+ } catch (error) {
44
+ dispatch(updateRoom({
45
+ jid,
46
+ updates: {
47
+ muted: !next
48
+ }
49
+ }));
50
+ console.warn('[ethora-rn] mute toggle failed', error);
51
+ return false;
52
+ } finally {
53
+ inFlight.delete(jid);
54
+ }
55
+ return true;
56
+ }, [dispatch, store]);
57
+ };
58
+ //# sourceMappingURL=useRoomMute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useDispatch","useStore","updateRoom","setRoomMuted","inFlight","Set","useRoomMute","dispatch","store","jid","room","getState","rooms","name","has","next","muted","add","updates","confirmed","error","console","warn","delete"],"sourceRoot":"../../../src","sources":["hooks/useRoomMute.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AACnC,SAASC,WAAW,EAAEC,QAAQ,QAAQ,aAAa;AAEnD,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,YAAY,QAAQ,sCAAsC;;AAEnE;AACA,MAAMC,QAAQ,GAAG,IAAIC,GAAG,CAAS,CAAC;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC/B,MAAMC,QAAQ,GAAGP,WAAW,CAAC,CAAC;EAC9B,MAAMQ,KAAK,GAAGP,QAAQ,CAAY,CAAC;EACnC,OAAOF,WAAW,CAChB,MAAOU,GAAW,IAAuB;IACvC,MAAMC,IAAI,GAAGF,KAAK,CAACG,QAAQ,CAAC,CAAC,CAACC,KAAK,CAACA,KAAK,CAACH,GAAG,CAAC;IAC9C,IAAI,CAACC,IAAI,EAAED,GAAG,IAAI,CAACC,IAAI,EAAEG,IAAI,IAAIT,QAAQ,CAACU,GAAG,CAACL,GAAG,CAAC,EAAE;MAAC,OAAO,IAAI;IAAC;IACjE,MAAMM,IAAI,GAAG,CAACL,IAAI,CAACM,KAAK;IACxBZ,QAAQ,CAACa,GAAG,CAACR,GAAG,CAAC;IACjBF,QAAQ,CAACL,UAAU,CAAC;MAAEO,GAAG;MAAES,OAAO,EAAE;QAAEF,KAAK,EAAED;MAAK;IAAE,CAAC,CAAC,CAAC;IACvD,IAAI;MACF,MAAMI,SAAS,GAAG,MAAMhB,YAAY,CAACO,IAAI,CAACG,IAAI,EAAEE,IAAI,CAAC;MACrD,IAAII,SAAS,KAAKJ,IAAI,EAAE;QACtBR,QAAQ,CAACL,UAAU,CAAC;UAAEO,GAAG;UAAES,OAAO,EAAE;YAAEF,KAAK,EAAEG;UAAU;QAAE,CAAC,CAAC,CAAC;MAC9D;IACF,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdb,QAAQ,CAACL,UAAU,CAAC;QAAEO,GAAG;QAAES,OAAO,EAAE;UAAEF,KAAK,EAAE,CAACD;QAAK;MAAE,CAAC,CAAC,CAAC;MACxDM,OAAO,CAACC,IAAI,CAAC,gCAAgC,EAAEF,KAAK,CAAC;MACrD,OAAO,KAAK;IACd,CAAC,SAAS;MACRhB,QAAQ,CAACmB,MAAM,CAACd,GAAG,CAAC;IACtB;IACA,OAAO,IAAI;EACb,CAAC,EACD,CAACF,QAAQ,EAAEC,KAAK,CAClB,CAAC;AACH,CAAC","ignoreList":[]}
@@ -17,6 +17,7 @@ export const useRoomState = roomJID => {
17
17
  });
18
18
  const loadingText = useSelector(state => state.rooms.loadingText);
19
19
  const usersSet = useSelector(state => state.rooms.usersSet);
20
+ const joiningRoomJID = useSelector(state => typeof state.rooms?.joiningRoomJID === 'string' ? state.rooms.joiningRoomJID : null);
20
21
  const roomMessages = useMemo(() => activeRoomJID && roomsList[activeRoomJID] ? roomsList[activeRoomJID].messages || [] : [], [roomsList, activeRoomJID]);
21
22
  return {
22
23
  room,
@@ -28,7 +29,8 @@ export const useRoomState = roomJID => {
28
29
  loadingText,
29
30
  loading,
30
31
  roomMessages,
31
- usersSet
32
+ usersSet,
33
+ joiningRoomJID
32
34
  };
33
35
  };
34
36
  //# sourceMappingURL=useRoomState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useSelector","useRoomState","roomJID","room","state","rooms","undefined","roomsList","activeRoomJID","visibleRoomJID","editAction","globalLoading","isLoading","loading","activeJID","loadingText","usersSet","roomMessages","messages"],"sourceRoot":"../../../src","sources":["hooks/useRoomState.tsx"],"mappings":";;AAAA;;AAEA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,YAAY,GAAIC,OAAgB,IAAK;EAChD,MAAMC,IAAI,GAAGH,WAAW,CAAEI,KAAgB,IACxCF,OAAO,GAAGE,KAAK,CAACC,KAAK,CAACA,KAAK,CAACH,OAAO,CAAC,GAAGI,SACzC,CAAC;EACD,MAAMC,SAAS,GAAGP,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACA,KAAK,CAAC;EACtE,MAAMG,aAAa,GAAGR,WAAW,CAC9BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACG,aACpC,CAAC;EACD,MAAMC,cAAc,GAAGT,WAAW,CAC/BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACI,cACpC,CAAC;EACD,MAAMC,UAAU,GAAGV,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACK,UAAU,CAAC;EAC5E,MAAMC,aAAa,GAAGX,WAAW,CAC9BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACO,SACpC,CAAC;EACD,MAAMC,OAAO,GAAGb,WAAW,CAAEI,KAAgB,IAAK;IAChD,MAAMU,SAAS,GAAGV,KAAK,CAACC,KAAK,CAACG,aAAa;IAC3C,OAAOM,SAAS,GAAGV,KAAK,CAACC,KAAK,CAACA,KAAK,CAACS,SAAS,CAAC,EAAEF,SAAS,IAAI,KAAK,GAAG,KAAK;EAC7E,CAAC,CAAC;EACF,MAAMG,WAAW,GAAGf,WAAW,CAC5BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACU,WACpC,CAAC;EACD,MAAMC,QAAQ,GAAGhB,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACW,QAAQ,CAAC;EAExE,MAAMC,YAAY,GAAGlB,OAAO,CAC1B,MACES,aAAa,IAAID,SAAS,CAACC,aAAa,CAAC,GACrCD,SAAS,CAACC,aAAa,CAAC,CAACU,QAAQ,IAAI,EAAE,GACvC,EAAE,EACR,CAACX,SAAS,EAAEC,aAAa,CAC3B,CAAC;EAED,OAAO;IACLL,IAAI;IACJI,SAAS;IACTC,aAAa;IACbC,cAAc;IACdC,UAAU;IACVC,aAAa;IACbI,WAAW;IACXF,OAAO;IACPI,YAAY;IACZD;EACF,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useSelector","useRoomState","roomJID","room","state","rooms","undefined","roomsList","activeRoomJID","visibleRoomJID","editAction","globalLoading","isLoading","loading","activeJID","loadingText","usersSet","joiningRoomJID","roomMessages","messages"],"sourceRoot":"../../../src","sources":["hooks/useRoomState.tsx"],"mappings":";;AAAA;;AAEA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,YAAY,GAAIC,OAAgB,IAAK;EAChD,MAAMC,IAAI,GAAGH,WAAW,CAAEI,KAAgB,IACxCF,OAAO,GAAGE,KAAK,CAACC,KAAK,CAACA,KAAK,CAACH,OAAO,CAAC,GAAGI,SACzC,CAAC;EACD,MAAMC,SAAS,GAAGP,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACA,KAAK,CAAC;EACtE,MAAMG,aAAa,GAAGR,WAAW,CAC9BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACG,aACpC,CAAC;EACD,MAAMC,cAAc,GAAGT,WAAW,CAC/BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACI,cACpC,CAAC;EACD,MAAMC,UAAU,GAAGV,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACK,UAAU,CAAC;EAC5E,MAAMC,aAAa,GAAGX,WAAW,CAC9BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACO,SACpC,CAAC;EACD,MAAMC,OAAO,GAAGb,WAAW,CAAEI,KAAgB,IAAK;IAChD,MAAMU,SAAS,GAAGV,KAAK,CAACC,KAAK,CAACG,aAAa;IAC3C,OAAOM,SAAS,GAAGV,KAAK,CAACC,KAAK,CAACA,KAAK,CAACS,SAAS,CAAC,EAAEF,SAAS,IAAI,KAAK,GAAG,KAAK;EAC7E,CAAC,CAAC;EACF,MAAMG,WAAW,GAAGf,WAAW,CAC5BI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACU,WACpC,CAAC;EACD,MAAMC,QAAQ,GAAGhB,WAAW,CAAEI,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAACW,QAAQ,CAAC;EACxE,MAAMC,cAAc,GAAGjB,WAAW,CAAEI,KAAgB,IAClD,OAAOA,KAAK,CAACC,KAAK,EAAEY,cAAc,KAAK,QAAQ,GAC3Cb,KAAK,CAACC,KAAK,CAACY,cAAc,GAC1B,IACN,CAAC;EAED,MAAMC,YAAY,GAAGnB,OAAO,CAC1B,MACES,aAAa,IAAID,SAAS,CAACC,aAAa,CAAC,GACrCD,SAAS,CAACC,aAAa,CAAC,CAACW,QAAQ,IAAI,EAAE,GACvC,EAAE,EACR,CAACZ,SAAS,EAAEC,aAAa,CAC3B,CAAC;EAED,OAAO;IACLL,IAAI;IACJI,SAAS;IACTC,aAAa;IACbC,cAAc;IACdC,UAAU;IACVC,aAAa;IACbI,WAAW;IACXF,OAAO;IACPK,YAAY;IACZF,QAAQ;IACRC;EACF,CAAC;AACH,CAAC","ignoreList":[]}
@@ -156,7 +156,15 @@ export const useSendMessage = _configOverride => {
156
156
  ...user,
157
157
  id: selfId,
158
158
  name: `${user?.firstName || ''} ${user?.lastName || ''}`.trim() || selfId
159
- }
159
+ },
160
+ // Thread replies: without these the optimistic copy has no
161
+ // mainMessage, so it shows in the channel instead of the thread
162
+ // until the echo lands.
163
+ ...(isReply ? {
164
+ isReply: 'true',
165
+ showInChannel: isChecked ? 'true' : 'false',
166
+ mainMessage: mainMessage || ''
167
+ } : {})
160
168
  };
161
169
  // On retry (`existingId`) the original optimistic bubble is still in
162
170
  // the room (pending:true) — clearMessageFailure just flipped it back out
@@ -351,7 +359,6 @@ export const useSendMessage = _configOverride => {
351
359
  isDeleted: false,
352
360
  xmppId: id,
353
361
  xmppFrom: `${activeRoomJID}/${selfId}`,
354
- isSystemMessage: 'false',
355
362
  isMediafile: 'true',
356
363
  fileName: data?.name,
357
364
  location: normalizedFileUri,
@@ -359,6 +366,8 @@ export const useSendMessage = _configOverride => {
359
366
  mimetype: type,
360
367
  originalName: data?.name,
361
368
  size: fileSizeStr,
369
+ duration: data?.duration,
370
+ waveForm: data?.waveForm,
362
371
  isReply: isReply ? 'true' : 'false',
363
372
  showInChannel: `${isChecked}`,
364
373
  mainMessage
@@ -487,7 +496,8 @@ export const useSendMessage = _configOverride => {
487
496
  originalName: item?.originalname,
488
497
  ownerKey: item?.ownerKey,
489
498
  size: item.size,
490
- duration: item?.duration,
499
+ duration: item?.duration ?? data?.duration,
500
+ waveForm: data?.waveForm,
491
501
  updatedAt: item?.updatedAt,
492
502
  userId: item?.userId,
493
503
  attachmentId: item?._id,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","Platform","v4","uuidv4","useXmppClient","useDispatch","useSelector","useStore","addRoomMessage","setEditAction","addMessageToHeap","clearMessageFailure","markMessageFailed","uploadFileV2","enqueueOutboundSend","removeOutboundSend","store","getGlobalXmppClient","useEventHandlers","canEditMessage","canSendMediaToRoom","canSendToRoom","shouldEncrypt","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","dispatch","reduxStore","user","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","sendMessage","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","edited","getState","roomJid","messages","find","m","id","messageId","console","warn","editMessageStanza","newMessage","roomJID","error","messageType","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","watchdogExtended","runWatchdog","roomMsgs","stillPending","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","status","watchdogTimer","setTimeout","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueuedAt","send","effectiveClient","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","mediaWatchdog","fileBlob","mimeType","sealed","tryUpload","sealPickedFile","require","undefined","part","options","clientEncrypted","fd","FormData","append","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","e2eeKeys","keyMaterial","rememberOpened","dispose","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","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","Platform","v4","uuidv4","useXmppClient","useDispatch","useSelector","useStore","addRoomMessage","setEditAction","addMessageToHeap","clearMessageFailure","markMessageFailed","uploadFileV2","enqueueOutboundSend","removeOutboundSend","store","getGlobalXmppClient","useEventHandlers","canEditMessage","canSendMediaToRoom","canSendToRoom","shouldEncrypt","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","dispatch","reduxStore","user","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","sendMessage","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","edited","getState","roomJid","messages","find","m","id","messageId","console","warn","editMessageStanza","newMessage","roomJID","error","messageType","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","xmppId","body","date","pending","isDeleted","showInChannel","name","firstName","lastName","trim","disableSentLogic","watchdogExtended","runWatchdog","roomMsgs","stillPending","alreadyFailed","roomHeapSlice","failedMessages","streamOnline","status","watchdogTimer","setTimeout","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueuedAt","send","effectiveClient","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isMediafile","fileName","location","locationPreview","mimetype","originalName","duration","waveForm","mediaWatchdog","fileBlob","mimeType","sealed","tryUpload","sealPickedFile","require","undefined","part","options","clientEncrypted","fd","FormData","append","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","e2eeKeys","keyMaterial","rememberOpened","dispose","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","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}