@ethora/chat-component-rn 26.7.2 → 26.7.4

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 (263) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/README.md +9 -8
  3. package/lib/commonjs/assets/icons.js +7 -2
  4. package/lib/commonjs/assets/icons.js.map +1 -1
  5. package/lib/commonjs/components/Header/HeaderRoomList.js +20 -6
  6. package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
  7. package/lib/commonjs/components/MainComponents/ChatRoom.js +86 -7
  8. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  9. package/lib/commonjs/components/MainComponents/ChatWrapper.js +18 -0
  10. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  11. package/lib/commonjs/components/MainComponents/MessageList.js +11 -4
  12. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  13. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js +5 -5
  14. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  15. package/lib/commonjs/components/MainComponents/RoomList.js +62 -32
  16. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  17. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +208 -70
  18. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
  19. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +307 -99
  20. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  21. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +544 -200
  22. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  23. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +226 -0
  24. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
  25. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +6 -2
  26. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  27. package/lib/commonjs/components/Modals/Modal/Modal.js +8 -0
  28. package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
  29. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +202 -104
  30. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  31. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js +556 -0
  32. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
  33. package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js +210 -0
  34. package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
  35. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
  36. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  37. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +507 -244
  38. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  39. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +74 -46
  40. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  41. package/lib/commonjs/components/Modals/styledModalComponents.js +9 -2
  42. package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
  43. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +17 -7
  44. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  45. package/lib/commonjs/components/styled/SendInput.js +80 -1
  46. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  47. package/lib/commonjs/components/styled/StyledComponents.js +9 -3
  48. package/lib/commonjs/components/styled/StyledComponents.js.map +1 -1
  49. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
  50. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  51. package/lib/commonjs/context/xmppProvider.js +12 -0
  52. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  53. package/lib/commonjs/helpers/getChatBackground.js +23 -0
  54. package/lib/commonjs/helpers/getChatBackground.js.map +1 -0
  55. package/lib/commonjs/helpers/historyPreloadScheduler.js +65 -2
  56. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  57. package/lib/commonjs/helpers/mediaLibraryRuntime.js +31 -0
  58. package/lib/commonjs/helpers/mediaLibraryRuntime.js.map +1 -0
  59. package/lib/commonjs/helpers/shallowEqual.js +36 -0
  60. package/lib/commonjs/helpers/shallowEqual.js.map +1 -0
  61. package/lib/commonjs/helpers/sheetGestures.js +32 -0
  62. package/lib/commonjs/helpers/sheetGestures.js.map +1 -0
  63. package/lib/commonjs/hooks/useChatWrapperInit.js +15 -0
  64. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  65. package/lib/commonjs/hooks/useComposing.js +27 -0
  66. package/lib/commonjs/hooks/useComposing.js.map +1 -1
  67. package/lib/commonjs/hooks/useSendMessage.js +27 -1
  68. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  69. package/lib/commonjs/hooks/useUnreadMessagesCounter.js +6 -1
  70. package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
  71. package/lib/commonjs/i18n/strings.js +121 -1
  72. package/lib/commonjs/i18n/strings.js.map +1 -1
  73. package/lib/commonjs/networking/api-requests/user.api.js +59 -0
  74. package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
  75. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +6 -2
  76. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  77. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  78. package/lib/commonjs/roomStore/chatSettingsSlice.js +3 -1
  79. package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
  80. package/lib/commonjs/roomStore/roomsSlice.js +2 -2
  81. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  82. package/lib/module/assets/icons.js +6 -1
  83. package/lib/module/assets/icons.js.map +1 -1
  84. package/lib/module/components/Header/HeaderRoomList.js +20 -6
  85. package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
  86. package/lib/module/components/MainComponents/ChatRoom.js +87 -8
  87. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  88. package/lib/module/components/MainComponents/ChatWrapper.js +19 -1
  89. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  90. package/lib/module/components/MainComponents/MessageList.js +11 -4
  91. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  92. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js +5 -5
  93. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  94. package/lib/module/components/MainComponents/RoomList.js +62 -32
  95. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  96. package/lib/module/components/Menu/HeaderRoomListMenu.js +211 -73
  97. package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
  98. package/lib/module/components/Modals/AttachSheet/AttachSheet.js +298 -102
  99. package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  100. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +547 -204
  101. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  102. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +223 -0
  103. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
  104. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +6 -2
  105. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  106. package/lib/module/components/Modals/Modal/Modal.js +9 -1
  107. package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
  108. package/lib/module/components/Modals/NewChatModal/NewChatModal.js +205 -106
  109. package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  110. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js +548 -0
  111. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
  112. package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js +205 -0
  113. package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
  114. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
  115. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  116. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +509 -248
  117. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  118. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +76 -48
  119. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  120. package/lib/module/components/Modals/styledModalComponents.js +9 -2
  121. package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
  122. package/lib/module/components/RoomComponents/ChatRoomItem.js +17 -7
  123. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  124. package/lib/module/components/styled/SendInput.js +80 -1
  125. package/lib/module/components/styled/SendInput.js.map +1 -1
  126. package/lib/module/components/styled/StyledComponents.js +9 -3
  127. package/lib/module/components/styled/StyledComponents.js.map +1 -1
  128. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
  129. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  130. package/lib/module/context/xmppProvider.js +12 -0
  131. package/lib/module/context/xmppProvider.js.map +1 -1
  132. package/lib/module/helpers/getChatBackground.js +18 -0
  133. package/lib/module/helpers/getChatBackground.js.map +1 -0
  134. package/lib/module/helpers/historyPreloadScheduler.js +66 -3
  135. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  136. package/lib/module/helpers/mediaLibraryRuntime.js +25 -0
  137. package/lib/module/helpers/mediaLibraryRuntime.js.map +1 -0
  138. package/lib/module/helpers/shallowEqual.js +31 -0
  139. package/lib/module/helpers/shallowEqual.js.map +1 -0
  140. package/lib/module/helpers/sheetGestures.js +26 -0
  141. package/lib/module/helpers/sheetGestures.js.map +1 -0
  142. package/lib/module/hooks/useChatWrapperInit.js +15 -0
  143. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  144. package/lib/module/hooks/useComposing.js +28 -1
  145. package/lib/module/hooks/useComposing.js.map +1 -1
  146. package/lib/module/hooks/useSendMessage.js +28 -2
  147. package/lib/module/hooks/useSendMessage.js.map +1 -1
  148. package/lib/module/hooks/useUnreadMessagesCounter.js +6 -1
  149. package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
  150. package/lib/module/i18n/strings.js +121 -1
  151. package/lib/module/i18n/strings.js.map +1 -1
  152. package/lib/module/networking/api-requests/user.api.js +56 -0
  153. package/lib/module/networking/api-requests/user.api.js.map +1 -1
  154. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +6 -2
  155. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  156. package/lib/module/networking/xmppClient.js.map +1 -1
  157. package/lib/module/roomStore/chatSettingsSlice.js +3 -1
  158. package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
  159. package/lib/module/roomStore/roomsSlice.js +1 -1
  160. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  161. package/lib/typescript/assets/icons.d.ts +12 -0
  162. package/lib/typescript/assets/icons.d.ts.map +1 -1
  163. package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
  164. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  165. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  166. package/lib/typescript/components/MainComponents/MessageList.d.ts +10 -1
  167. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  168. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  169. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
  170. package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts +9 -0
  171. package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
  172. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts +10 -0
  173. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  174. package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts +9 -0
  175. package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts.map +1 -0
  176. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  177. package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
  178. package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts +1 -1
  179. package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts.map +1 -1
  180. package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts +75 -0
  181. package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts.map +1 -0
  182. package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts +25 -0
  183. package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts.map +1 -0
  184. package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts +6 -1
  185. package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts.map +1 -1
  186. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts +16 -0
  187. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  188. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts +1 -0
  189. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
  190. package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
  191. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  192. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  193. package/lib/typescript/components/styled/StyledComponents.d.ts.map +1 -1
  194. package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
  195. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  196. package/lib/typescript/helpers/getChatBackground.d.ts +15 -0
  197. package/lib/typescript/helpers/getChatBackground.d.ts.map +1 -0
  198. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  199. package/lib/typescript/helpers/mediaLibraryRuntime.d.ts +3 -0
  200. package/lib/typescript/helpers/mediaLibraryRuntime.d.ts.map +1 -0
  201. package/lib/typescript/helpers/shallowEqual.d.ts +11 -0
  202. package/lib/typescript/helpers/shallowEqual.d.ts.map +1 -0
  203. package/lib/typescript/helpers/sheetGestures.d.ts +20 -0
  204. package/lib/typescript/helpers/sheetGestures.d.ts.map +1 -0
  205. package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
  206. package/lib/typescript/hooks/useComposing.d.ts.map +1 -1
  207. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  208. package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts +1 -0
  209. package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts.map +1 -1
  210. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  211. package/lib/typescript/networking/api-requests/user.api.d.ts +27 -0
  212. package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
  213. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +1 -0
  214. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
  215. package/lib/typescript/networking/xmppClient.d.ts +1 -0
  216. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  217. package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
  218. package/lib/typescript/roomStore/roomsSlice.d.ts +1 -0
  219. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  220. package/lib/typescript/types/types.d.ts +9 -5
  221. package/lib/typescript/types/types.d.ts.map +1 -1
  222. package/package.json +6 -1
  223. package/src/assets/icons.tsx +29 -9
  224. package/src/components/Header/HeaderRoomList.tsx +20 -5
  225. package/src/components/MainComponents/ChatRoom.tsx +92 -8
  226. package/src/components/MainComponents/ChatWrapper.tsx +19 -1
  227. package/src/components/MainComponents/MessageList.tsx +21 -3
  228. package/src/components/MainComponents/ProfileImagePlaceholder.tsx +5 -5
  229. package/src/components/MainComponents/RoomList.tsx +65 -34
  230. package/src/components/Menu/HeaderRoomListMenu.tsx +209 -64
  231. package/src/components/Modals/AttachSheet/AttachSheet.tsx +318 -86
  232. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +599 -278
  233. package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +244 -0
  234. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +4 -2
  235. package/src/components/Modals/Modal/Modal.tsx +7 -0
  236. package/src/components/Modals/NewChatModal/NewChatModal.tsx +219 -117
  237. package/src/components/Modals/ProfileHeader/ProfileHeader.tsx +615 -0
  238. package/src/components/Modals/ProfileHeader/ProfileMenu.tsx +217 -0
  239. package/src/components/Modals/SelectUsersModal/SelectUsersModal.tsx +14 -4
  240. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +617 -307
  241. package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +75 -58
  242. package/src/components/Modals/styledModalComponents.tsx +9 -2
  243. package/src/components/RoomComponents/ChatRoomItem.tsx +14 -7
  244. package/src/components/styled/SendInput.tsx +83 -2
  245. package/src/components/styled/StyledComponents.ts +9 -3
  246. package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +11 -4
  247. package/src/context/xmppProvider.tsx +14 -0
  248. package/src/helpers/getChatBackground.ts +18 -0
  249. package/src/helpers/historyPreloadScheduler.ts +80 -3
  250. package/src/helpers/mediaLibraryRuntime.ts +25 -0
  251. package/src/helpers/shallowEqual.ts +33 -0
  252. package/src/helpers/sheetGestures.ts +25 -0
  253. package/src/hooks/useChatWrapperInit.ts +15 -0
  254. package/src/hooks/useComposing.tsx +37 -1
  255. package/src/hooks/useSendMessage.tsx +32 -2
  256. package/src/hooks/useUnreadMessagesCounter.ts +11 -0
  257. package/src/i18n/strings.ts +121 -1
  258. package/src/networking/api-requests/user.api.ts +71 -0
  259. package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +17 -3
  260. package/src/networking/xmppClient.ts +5 -1
  261. package/src/roomStore/chatSettingsSlice.ts +3 -1
  262. package/src/roomStore/roomsSlice.ts +1 -1
  263. package/src/types/types.ts +16 -5
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.shouldDismissOnDrag = exports.shouldClaimVerticalDrag = exports.DISMISS_VELOCITY = exports.DISMISS_DISTANCE = void 0;
7
+ /** @format */
8
+
9
+ /**
10
+ * Shared thresholds for the drag-to-dismiss gesture on bottom sheets (the
11
+ * attach sheet, the profile headers, the room-list menu). Kept in one
12
+ * place so a pull feels identical wherever the user does it — and so the
13
+ * numbers are unit-testable without a touch event.
14
+ */
15
+
16
+ /** Drag past this many points and letting go dismisses the sheet. */
17
+ const DISMISS_DISTANCE = exports.DISMISS_DISTANCE = 90;
18
+ /** …or flick faster than this, however short the drag. */
19
+ const DISMISS_VELOCITY = exports.DISMISS_VELOCITY = 0.8;
20
+
21
+ /**
22
+ * Claim a drag only once it is clearly a downward pull, so a tap on a row
23
+ * still registers and a horizontal swipe stays with whatever scrolls
24
+ * sideways inside the sheet.
25
+ */
26
+ const shouldClaimVerticalDrag = (dy, dx) => dy > 6 && Math.abs(dy) > Math.abs(dx) * 1.5;
27
+
28
+ /** Far enough / fast enough to let go of the sheet. */
29
+ exports.shouldClaimVerticalDrag = shouldClaimVerticalDrag;
30
+ const shouldDismissOnDrag = (dy, vy) => dy > DISMISS_DISTANCE || vy > DISMISS_VELOCITY;
31
+ exports.shouldDismissOnDrag = shouldDismissOnDrag;
32
+ //# sourceMappingURL=sheetGestures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DISMISS_DISTANCE","exports","DISMISS_VELOCITY","shouldClaimVerticalDrag","dy","dx","Math","abs","shouldDismissOnDrag","vy"],"sourceRoot":"../../../src","sources":["helpers/sheetGestures.ts"],"mappings":";;;;;;AAAA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACO,MAAMA,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,EAAE;AAClC;AACO,MAAME,gBAAgB,GAAAD,OAAA,CAAAC,gBAAA,GAAG,GAAG;;AAEnC;AACA;AACA;AACA;AACA;AACO,MAAMC,uBAAuB,GAAGA,CAACC,EAAU,EAAEC,EAAU,KAC5DD,EAAE,GAAG,CAAC,IAAIE,IAAI,CAACC,GAAG,CAACH,EAAE,CAAC,GAAGE,IAAI,CAACC,GAAG,CAACF,EAAE,CAAC,GAAG,GAAG;;AAE7C;AAAAJ,OAAA,CAAAE,uBAAA,GAAAA,uBAAA;AACO,MAAMK,mBAAmB,GAAGA,CAACJ,EAAU,EAAEK,EAAU,KACxDL,EAAE,GAAGJ,gBAAgB,IAAIS,EAAE,GAAGP,gBAAgB;AAACD,OAAA,CAAAO,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -19,6 +19,7 @@ var _useChatSettingState = require("./useChatSettingState");
19
19
  var _isChatIdPresentInArray = require("../helpers/isChatIdPresentInArray");
20
20
  var _useGetNewArchRoom = _interopRequireDefault(require("./useGetNewArchRoom"));
21
21
  var _getRoomsWithRetry = require("../helpers/getRoomsWithRetry");
22
+ var _shallowEqual = require("../helpers/shallowEqual");
22
23
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
23
24
  /** @format */
24
25
 
@@ -57,6 +58,20 @@ const useChatWrapperInit = ({
57
58
  }
58
59
  };
59
60
  }, [user.xmppPassword]);
61
+
62
+ // Presentational config flags (e.g. `disableHeader`) can change while the
63
+ // chat stays mounted — sync them to redux whenever `config` actually
64
+ // changes, not just at init. Shallow-equal guard: an inline object
65
+ // literal from the host is a fresh reference every render even when
66
+ // nothing in it changed, and dispatching unconditionally would re-render
67
+ // every config consumer on every host render.
68
+ const lastSyncedConfigRef = (0, _react.useRef)(undefined);
69
+ (0, _react.useEffect)(() => {
70
+ if (!(0, _shallowEqual.shallowEqual)(lastSyncedConfigRef.current, config)) {
71
+ lastSyncedConfigRef.current = config;
72
+ dispatch((0, _chatSettingsSlice.setConfig)(config));
73
+ }
74
+ }, [config, dispatch]);
60
75
  const getRoomsWithRertyRequest = async () => {
61
76
  setIsRetrying(true);
62
77
  const retryRooms = await (0, _getRoomsWithRetry.getRoomsWithRetry)(client, config, syncRooms, roomJID);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactRedux","_xmppProvider","_chatAutoEnterer","_initRoomsPresence","_updatedChatLastTimestamps","_updateMessagesTillLast","_authRefresh","_chatSettingsSlice","_roomsSlice","_useRoomState","_useChatSettingState","_isChatIdPresentInArray","_useGetNewArchRoom","_interopRequireDefault","_getRoomsWithRetry","e","__esModule","default","useChatWrapperInit","roomJID","wasAutoSelected","config","dispatch","useDispatch","inited","setInited","useState","showModal","setShowModal","isConnectionLost","setConnectionLost","isRetrying","setIsRetrying","hasSyncedHistoryRef","useRef","client","initializeClient","setClient","useXmppClient","syncRooms","useGetNewArchRoom","rooms","useSelector","state","roomsList","useRoomState","user","useChatSettingState","useEffect","xmppPassword","console","log","close","getRoomsWithRertyRequest","retryRooms","getRoomsWithRetry","loadRooms","disableLoad","setIsLoading","loading","loadingText","undefined","retryTimeout","initXmmpClient","translates","enabled","translations","setLangSource","setConfig","xmppUsername","error","chatAutoEnterer","newClient","defaultWallet","walletAddress","xmppSettings","status","Object","keys","length","initRoomsPresence","newArch","loadedRooms","enableRoomsRetry","isSelectedRoomPresent","isChatIdPresentInArray","getRoomsStanza","roomTimestampObject","getChatsPrivateStoreRequestStanza","updatedChatLastTimestamps","current","updateMessagesTillLast","err","warn","refreshTokens","refreshAuthTokensQuietly","setTimeout","clearTimeout","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatWrapperInit.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactRedux","_xmppProvider","_chatAutoEnterer","_initRoomsPresence","_updatedChatLastTimestamps","_updateMessagesTillLast","_authRefresh","_chatSettingsSlice","_roomsSlice","_useRoomState","_useChatSettingState","_isChatIdPresentInArray","_useGetNewArchRoom","_interopRequireDefault","_getRoomsWithRetry","_shallowEqual","e","__esModule","default","useChatWrapperInit","roomJID","wasAutoSelected","config","dispatch","useDispatch","inited","setInited","useState","showModal","setShowModal","isConnectionLost","setConnectionLost","isRetrying","setIsRetrying","hasSyncedHistoryRef","useRef","client","initializeClient","setClient","useXmppClient","syncRooms","useGetNewArchRoom","rooms","useSelector","state","roomsList","useRoomState","user","useChatSettingState","useEffect","xmppPassword","console","log","close","lastSyncedConfigRef","undefined","shallowEqual","current","setConfig","getRoomsWithRertyRequest","retryRooms","getRoomsWithRetry","loadRooms","disableLoad","setIsLoading","loading","loadingText","retryTimeout","initXmmpClient","translates","enabled","translations","setLangSource","xmppUsername","error","chatAutoEnterer","newClient","defaultWallet","walletAddress","xmppSettings","status","Object","keys","length","initRoomsPresence","newArch","loadedRooms","enableRoomsRetry","isSelectedRoomPresent","isChatIdPresentInArray","getRoomsStanza","roomTimestampObject","getChatsPrivateStoreRequestStanza","updatedChatLastTimestamps","updateMessagesTillLast","err","warn","refreshTokens","refreshAuthTokensQuietly","setTimeout","clearTimeout","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useChatWrapperInit.ts"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _react = require("react");
8
+ var _reactNative = require("react-native");
8
9
  var _xmppProvider = require("../context/xmppProvider");
9
10
  var _reactRedux = require("react-redux");
10
11
  var _useChatSettingState = require("./useChatSettingState");
@@ -18,7 +19,15 @@ const useComposing = config => {
18
19
  const {
19
20
  user
20
21
  } = (0, _useChatSettingState.useChatSettingState)();
22
+ // RN keeps a focused TextInput focused when the app is backgrounded or
23
+ // the device is locked — nothing fires `onBlur`, so without this the
24
+ // other participant sees "typing…" for as long as the user is away.
25
+ // Tracks whether the input is *currently* focused, independent of the
26
+ // foreground/background transition, so we know whether to resume
27
+ // composing on return.
28
+ const isFocusedRef = (0, _react.useRef)(false);
21
29
  const sendStartComposing = (0, _react.useCallback)(() => {
30
+ isFocusedRef.current = true;
22
31
  if (config?.disableTypingIndicator) {
23
32
  return;
24
33
  }
@@ -27,6 +36,7 @@ const useComposing = config => {
27
36
  }
28
37
  }, [activeRoomJID, client, config?.disableTypingIndicator, user.firstName, user.lastName]);
29
38
  const sendEndComposing = (0, _react.useCallback)(() => {
39
+ isFocusedRef.current = false;
30
40
  if (config?.disableTypingIndicator) {
31
41
  return;
32
42
  }
@@ -40,6 +50,23 @@ const useComposing = config => {
40
50
  }, 100);
41
51
  return () => clearTimeout(timerId);
42
52
  }, [sendEndComposing]);
53
+
54
+ // Foreground/background transition only — a pause in typing must NOT
55
+ // clear the indicator (that would flicker for a slowly-composing user),
56
+ // so this deliberately does not hook keystroke/idle timing at all.
57
+ (0, _react.useEffect)(() => {
58
+ const handleAppStateChange = nextState => {
59
+ if (nextState !== 'active') {
60
+ if (isFocusedRef.current && !config?.disableTypingIndicator && client) {
61
+ client.sendTypingRequestStanza(activeRoomJID || '', `${user.firstName} ${user.lastName}`, false);
62
+ }
63
+ } else if (isFocusedRef.current && !config?.disableTypingIndicator && client) {
64
+ client.sendTypingRequestStanza(activeRoomJID || '', `${user.firstName} ${user.lastName}`, true);
65
+ }
66
+ };
67
+ const subscription = _reactNative.AppState.addEventListener('change', handleAppStateChange);
68
+ return () => subscription.remove();
69
+ }, [activeRoomJID, client, config?.disableTypingIndicator, user.firstName, user.lastName]);
43
70
  return {
44
71
  sendStartComposing,
45
72
  sendEndComposing
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_xmppProvider","_reactRedux","_useChatSettingState","useComposing","config","client","useXmppClient","activeRoomJID","useSelector","state","rooms","user","useChatSettingState","sendStartComposing","useCallback","disableTypingIndicator","sendTypingRequestStanza","firstName","lastName","sendEndComposing","useEffect","timerId","setTimeout","clearTimeout","_default","exports","default"],"sourceRoot":"../../../src","sources":["hooks/useComposing.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAEA,IAAAG,oBAAA,GAAAH,OAAA;AAGA,MAAMI,YAAY,GAAIC,MAAgB,IAAK;EACzC,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,2BAAa,EAAC,CAAC;EAClC,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACC,KAAK,CAAC;EACxE,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,wCAAmB,EAAC,CAAC;EAEtC,MAAMC,kBAAkB,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC3C,IAAIV,MAAM,EAAEW,sBAAsB,EAAE;MAClC;IACF;IACA,IAAIV,MAAM,EAAE;MACVA,MAAM,CAACW,uBAAuB,CAC5BT,aAAa,IAAI,EAAE,EACnB,GAAGI,IAAI,CAACM,SAAS,IAAIN,IAAI,CAACO,QAAQ,EAAE,EACpC,IACF,CAAC;IACH;EACF,CAAC,EAAE,CAACX,aAAa,EAAEF,MAAM,EAAED,MAAM,EAAEW,sBAAsB,EAAEJ,IAAI,CAACM,SAAS,EAAEN,IAAI,CAACO,QAAQ,CAAC,CAAC;EAE1F,MAAMC,gBAAgB,GAAG,IAAAL,kBAAW,EAAC,MAAM;IACzC,IAAIV,MAAM,EAAEW,sBAAsB,EAAE;MAClC;IACF;IACA,IAAIV,MAAM,EAAE;MACVA,MAAM,CAACW,uBAAuB,CAC5BT,aAAa,IAAI,EAAE,EACnB,GAAGI,IAAI,CAACM,SAAS,IAAIN,IAAI,CAACO,QAAQ,EAAE,EACpC,KACF,CAAC;IACH;EACF,CAAC,EAAE,CAACX,aAAa,EAAEF,MAAM,EAAED,MAAM,EAAEW,sBAAsB,EAAEJ,IAAI,CAACM,SAAS,EAAEN,IAAI,CAACO,QAAQ,CAAC,CAAC;EAE1F,IAAAE,gBAAS,EAAC,MAAM;IACd,MAAMC,OAAO,GAAGC,UAAU,CAAC,MAAM;MAC/BH,gBAAgB,CAAC,CAAC;IACpB,CAAC,EAAE,GAAG,CAAC;IAEP,OAAO,MAAMI,YAAY,CAACF,OAAO,CAAC;EACpC,CAAC,EAAE,CAACF,gBAAgB,CAAC,CAAC;EAEtB,OAAO;IAAEN,kBAAkB;IAAEM;EAAiB,CAAC;AACjD,CAAC;AAAC,IAAAK,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEavB,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_xmppProvider","_reactRedux","_useChatSettingState","useComposing","config","client","useXmppClient","activeRoomJID","useSelector","state","rooms","user","useChatSettingState","isFocusedRef","useRef","sendStartComposing","useCallback","current","disableTypingIndicator","sendTypingRequestStanza","firstName","lastName","sendEndComposing","useEffect","timerId","setTimeout","clearTimeout","handleAppStateChange","nextState","subscription","AppState","addEventListener","remove","_default","exports","default"],"sourceRoot":"../../../src","sources":["hooks/useComposing.tsx"],"mappings":"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","ignoreList":[]}
@@ -182,6 +182,13 @@ const useSendMessage = _configOverride => {
182
182
  }
183
183
  if (stillPending && !alreadyFailed) {
184
184
  console.warn(`Send watchdog fired — message ${optimisticId} stuck pending > ${PENDING_WATCHDOG_MS}ms; marking failed`);
185
+ // Drop the buffered replay now that the bubble is showing
186
+ // "failed / tap to retry" — a later onOnline flush must not
187
+ // silently resend it behind the user's back. If the original
188
+ // send actually lands after this point, the server echo still
189
+ // flips the bubble back to delivered (newMessageMidlleware);
190
+ // only an explicit tap-to-retry should trigger another send.
191
+ (0, _outboundQueue.removeOutboundSend)(optimisticId);
185
192
  dispatch((0, _roomHeapSlice.markMessageFailed)({
186
193
  kind: 'text',
187
194
  id: optimisticId,
@@ -249,6 +256,9 @@ const useSendMessage = _configOverride => {
249
256
  });
250
257
  } catch (error) {
251
258
  clearTimeout(watchdogTimer);
259
+ // Same reasoning as the watchdog: once the bubble shows failed,
260
+ // only an explicit tap-to-retry should resend it.
261
+ (0, _outboundQueue.removeOutboundSend)(optimisticId);
252
262
  dispatch((0, _roomHeapSlice.markMessageFailed)({
253
263
  kind: 'text',
254
264
  id: optimisticId,
@@ -363,6 +373,10 @@ const useSendMessage = _configOverride => {
363
373
  const alreadyFailed = state.roomHeapSlice?.failedMessages?.[id];
364
374
  if (stillPending && !alreadyFailed) {
365
375
  console.warn(`Media-send watchdog fired — ${id} stuck pending > ${PENDING_WATCHDOG_MS}ms; marking failed`);
376
+ // See the text-send watchdog above: drop the buffered replay so
377
+ // a later onOnline flush can't silently resend behind the
378
+ // "failed / tap to retry" bubble.
379
+ (0, _outboundQueue.removeOutboundSend)(id);
366
380
  dispatch((0, _roomHeapSlice.markMessageFailed)({
367
381
  kind: 'media',
368
382
  id,
@@ -544,6 +558,18 @@ const useSendMessage = _configOverride => {
544
558
  if (!payload) {
545
559
  return;
546
560
  }
561
+
562
+ // The server may have accepted the original send even though its
563
+ // echo arrived too late to beat the watchdog — the bubble shows
564
+ // failed, but a confirmed (non-pending) copy is already sitting in
565
+ // the room. Resending here would deliver a genuine duplicate; just
566
+ // clear the failure and let the existing copy stand.
567
+ const roomMsgs = rooms?.[payload.roomJID]?.messages || [];
568
+ const alreadyDelivered = roomMsgs.some(m => !m.pending && (m.id === failedId || m.xmppId === failedId));
569
+ if (alreadyDelivered) {
570
+ dispatch((0, _roomHeapSlice.clearMessageFailure)(failedId));
571
+ return;
572
+ }
547
573
  dispatch((0, _roomHeapSlice.clearMessageFailure)(failedId));
548
574
  handleMessageRetry({
549
575
  messageId: failedId,
@@ -558,7 +584,7 @@ const useSendMessage = _configOverride => {
558
584
  } else {
559
585
  await sendMedia(payload.data, payload.type, payload.roomJID, payload.isReply, payload.isChecked, payload.mainMessage, failedId);
560
586
  }
561
- }, [failedMessages, dispatch, handleMessageRetry, sendMessage, sendMedia]);
587
+ }, [failedMessages, rooms, dispatch, handleMessageRetry, sendMessage, sendMedia]);
562
588
 
563
589
  // ChatRoom/ThreadWrapper consume this as the "edit branch" of send.
564
590
  // It mirrors the edit path inside `sendMessage` so callers can wire it
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","failedMessages","roomHeapSlice","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","setEditAction","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","streamOnline","getGlobalXmppClient","status","console","warn","watchdogTimer","setTimeout","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","showInChannel","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_uuid","_xmppProvider","_reactRedux","_roomsSlice","_roomHeapSlice","_auth","_outboundQueue","_roomStore","_clientRegistry","_useEventHandlers","PENDING_WATCHDOG_MS","MEDIA_PENDING_WATCHDOG_MS","__sendIdSeq","nextStanzaId","prefix","Date","now","MAX_MEDIA_BYTES","useSendMessage","_configOverride","client","useXmppClient","dispatch","useDispatch","reduxStore","useStore","user","useSelector","state","chatSettingStore","config","langSource","editAction","rooms","handleMessageSent","handleMessageFailed","handleMessageEdited","handleMessageRetry","useEventHandlers","failedMessages","roomHeapSlice","sendMessage","useCallback","message","activeRoomJID","isReply","isChecked","mainMessage","existingId","isEdit","editMessageStanza","roomJid","messageId","newMessage","roomJID","error","messageType","setEditAction","onCriticalSend","optimisticId","optimisticDate","toISOString","selfId","xmppUsername","walletAddress","optimisticMessage","id","xmppId","body","date","pending","isDeleted","name","firstName","lastName","trim","disableSentLogic","addRoomMessage","watchdogExtended","runWatchdog","getState","roomMsgs","messages","stillPending","find","m","alreadyFailed","streamOnline","getGlobalXmppClient","status","console","warn","watchdogTimer","setTimeout","removeOutboundSend","markMessageFailed","kind","Error","replaySend","c","sendTextMessageWithTranslateTagStanza","enqueueOutboundSend","enqueuedAt","send","effectiveClient","store","anyClient","forceReconnect","ensureStreamAlive","clearTimeout","sendMedia","data","type","size","uuidv4","optimisticTimestamp","displayName","fileSizeStr","String","normalizedFileUri","uri","replace","messageTimestampMs","xmppFrom","isSystemMessage","isMediafile","fileName","location","locationPreview","mimetype","originalName","showInChannel","addMessageToHeap","mediaWatchdog","fileBlob","mimeType","tryUpload","fd","FormData","append","uploadFileV2","err","response","fd2","item","results","messagePayload","createdAt","expiresAt","filename","isVisible","originalname","ownerKey","duration","updatedAt","userId","attachmentId","_id","wrappable","isPrivate","__v","effectiveMediaClient","setActiveRoomJid","Promise","resolve","prioritizeRoomPresence","catch","sendMediaMessageStanza","anyMediaClient","ttlMs","metadata","fileData","fileType","uploadResults","uriStr","uriScheme","match","statusText","serverBody","requestUrl","url","axiosMessage","axiosCode","code","axiosCauseMessage","cause","mime","fileSizeBytes","platformOS","Platform","OS","platformVersion","Version","retryMessage","failedId","payload","alreadyDelivered","some","clearMessageFailure","sendEditMessage","_activeRoomJID","isLastMessageFromUserAndProcessing","msgs","length","last","exports"],"sourceRoot":"../../../src","sources":["hooks/useSendMessage.tsx"],"mappings":"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","ignoreList":[]}
@@ -23,18 +23,23 @@ const useUnreadMessagesCounter = () => {
23
23
  const rooms = roomsState.rooms;
24
24
  const unreadByRoom = {};
25
25
  let totalCount = 0;
26
+ let isCapped = false;
26
27
  Object.entries(rooms).forEach(([roomJid, room]) => {
27
28
  const unreadCount = room.unreadMessages || 0;
28
29
  if (unreadCount > 0) {
29
30
  unreadByRoom[roomJid] = unreadCount;
30
31
  totalCount += unreadCount;
31
32
  }
33
+ if (room?.unreadCapped) {
34
+ isCapped = true;
35
+ }
32
36
  });
33
37
  return {
34
38
  hasUnread: totalCount > 0,
35
39
  totalCount,
36
40
  unreadByRoom,
37
- isLoading: !!roomsState.isUnreadSyncing || !!roomsState.isLoading
41
+ isLoading: !!roomsState.isUnreadSyncing || !!roomsState.isLoading,
42
+ isCapped
38
43
  };
39
44
  };
40
45
  exports.useUnread = exports.useUnreadMessagesCounter = useUnreadMessagesCounter;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_roomStore","useUnreadMessagesCounter","subscribe","callback","store","roomsState","useSyncExternalStore","getState","rooms","unreadByRoom","totalCount","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","hasUnread","isLoading","isUnreadSyncing","exports","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAD,OAAA;AAaO,MAAME,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKC,gBAAK,CAACF,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAME,UAAU,GAAG,IAAAC,2BAAoB,EACrCJ,SAAS,EACT,MAAME,gBAAK,CAACG,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGH,UAAU,CAACG,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAElBC,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBP,YAAY,CAACK,OAAO,CAAC,GAAGE,WAAW;MACnCN,UAAU,IAAIM,WAAW;IAC3B;EACF,CAAC,CAAC;EAEF,OAAO;IACLE,SAAS,EAAER,UAAU,GAAG,CAAC;IACzBA,UAAU;IACVD,YAAY;IACZU,SAAS,EAAE,CAAC,CAACd,UAAU,CAACe,eAAe,IAAI,CAAC,CAACf,UAAU,CAACc;EAC1D,CAAC;AACH,CAAC;AAACE,OAAA,CAAAC,SAAA,GAAAD,OAAA,CAAApB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_roomStore","useUnreadMessagesCounter","subscribe","callback","store","roomsState","useSyncExternalStore","getState","rooms","unreadByRoom","totalCount","isCapped","Object","entries","forEach","roomJid","room","unreadCount","unreadMessages","unreadCapped","hasUnread","isLoading","isUnreadSyncing","exports","useUnread"],"sourceRoot":"../../../src","sources":["hooks/useUnreadMessagesCounter.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAD,OAAA;AAmBO,MAAME,wBAAwB,GAAGA,CAAA,KAA2B;EACjE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,SAAS,GAAIC,QAAoB,IAAKC,gBAAK,CAACF,SAAS,CAACC,QAAQ,CAAC;EAErE,MAAME,UAAU,GAAG,IAAAC,2BAAoB,EACrCJ,SAAS,EACT,MAAME,gBAAK,CAACG,QAAQ,CAAC,CAAC,CAACC,KACzB,CAAC;EAED,MAAMA,KAAK,GAAGH,UAAU,CAACG,KAAK;EAC9B,MAAMC,YAA+B,GAAG,CAAC,CAAC;EAC1C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,QAAQ,GAAG,KAAK;EAEpBC,MAAM,CAACC,OAAO,CAACL,KAAK,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,OAAO,EAAEC,IAAI,CAAkB,KAAK;IAClE,MAAMC,WAAW,GAAGD,IAAI,CAACE,cAAc,IAAI,CAAC;IAC5C,IAAID,WAAW,GAAG,CAAC,EAAE;MACnBR,YAAY,CAACM,OAAO,CAAC,GAAGE,WAAW;MACnCP,UAAU,IAAIO,WAAW;IAC3B;IACA,IAAKD,IAAI,EAAUG,YAAY,EAAE;MAC/BR,QAAQ,GAAG,IAAI;IACjB;EACF,CAAC,CAAC;EAEF,OAAO;IACLS,SAAS,EAAEV,UAAU,GAAG,CAAC;IACzBA,UAAU;IACVD,YAAY;IACZY,SAAS,EAAE,CAAC,CAAChB,UAAU,CAACiB,eAAe,IAAI,CAAC,CAACjB,UAAU,CAACgB,SAAS;IACjEV;EACF,CAAC;AACH,CAAC;AAACY,OAAA,CAAAC,SAAA,GAAAD,OAAA,CAAAtB,wBAAA,GAAAA,wBAAA","ignoreList":[]}