@ethora/chat-component-rn 26.8.1 → 26.8.2

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 (604) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/README.md +43 -10
  3. package/lib/commonjs/assets/icons.js +7 -2
  4. package/lib/commonjs/assets/icons.js.map +1 -1
  5. package/lib/commonjs/components/AuthForms/Login.js +4 -4
  6. package/lib/commonjs/components/AuthForms/Login.js.map +1 -1
  7. package/lib/commonjs/components/Header/HeaderRoomList.js +29 -8
  8. package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
  9. package/lib/commonjs/components/MainComponents/ChatHeader.js +9 -3
  10. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  11. package/lib/commonjs/components/MainComponents/ChatRoom.js +150 -14
  12. package/lib/commonjs/components/MainComponents/ChatRoom.js.map +1 -1
  13. package/lib/commonjs/components/MainComponents/ChatWrapper.js +34 -13
  14. package/lib/commonjs/components/MainComponents/ChatWrapper.js.map +1 -1
  15. package/lib/commonjs/components/MainComponents/LoginWrapper.js +2 -1
  16. package/lib/commonjs/components/MainComponents/LoginWrapper.js.map +1 -1
  17. package/lib/commonjs/components/MainComponents/MediaMessage.js +29 -9
  18. package/lib/commonjs/components/MainComponents/MediaMessage.js.map +1 -1
  19. package/lib/commonjs/components/MainComponents/MessageContainer.js +5 -1
  20. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  21. package/lib/commonjs/components/MainComponents/MessageList.js +13 -5
  22. package/lib/commonjs/components/MainComponents/MessageList.js.map +1 -1
  23. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js +14 -13
  24. package/lib/commonjs/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  25. package/lib/commonjs/components/MainComponents/RoomList.js +208 -35
  26. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  27. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js +317 -98
  28. package/lib/commonjs/components/Menu/HeaderRoomListMenu.js.map +1 -1
  29. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js +322 -110
  30. package/lib/commonjs/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  31. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +546 -203
  32. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  33. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +226 -0
  34. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
  35. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js +69 -27
  36. package/lib/commonjs/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  37. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js +2 -1
  38. package/lib/commonjs/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  39. package/lib/commonjs/components/Modals/Modal/Modal.js +8 -0
  40. package/lib/commonjs/components/Modals/Modal/Modal.js.map +1 -1
  41. package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js +2 -1
  42. package/lib/commonjs/components/Modals/NewChatModal/ModalContent.js.map +1 -1
  43. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js +202 -106
  44. package/lib/commonjs/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  45. package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
  46. package/lib/commonjs/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
  47. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js +563 -0
  48. package/lib/commonjs/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
  49. package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js +210 -0
  50. package/lib/commonjs/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
  51. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
  52. package/lib/commonjs/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  53. package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js +7 -21
  54. package/lib/commonjs/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
  55. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +507 -244
  56. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  57. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js +74 -46
  58. package/lib/commonjs/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  59. package/lib/commonjs/components/Modals/styledModalComponents.js +9 -2
  60. package/lib/commonjs/components/Modals/styledModalComponents.js.map +1 -1
  61. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +21 -7
  62. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  63. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js +22 -3
  64. package/lib/commonjs/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  65. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js +17 -3
  66. package/lib/commonjs/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  67. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js +17 -3
  68. package/lib/commonjs/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  69. package/lib/commonjs/components/VideoCalls/VideoCallSession.js +6 -3
  70. package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
  71. package/lib/commonjs/components/styled/AudioMessage.js +2 -1
  72. package/lib/commonjs/components/styled/AudioMessage.js.map +1 -1
  73. package/lib/commonjs/components/styled/MessageImage.js +37 -9
  74. package/lib/commonjs/components/styled/MessageImage.js.map +1 -1
  75. package/lib/commonjs/components/styled/SendInput.js +80 -11
  76. package/lib/commonjs/components/styled/SendInput.js.map +1 -1
  77. package/lib/commonjs/components/styled/StyledComponents.js +9 -3
  78. package/lib/commonjs/components/styled/StyledComponents.js.map +1 -1
  79. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
  80. package/lib/commonjs/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  81. package/lib/commonjs/components/styled/UnsupportedType.js +14 -4
  82. package/lib/commonjs/components/styled/UnsupportedType.js.map +1 -1
  83. package/lib/commonjs/components/styled/VideoMessage.js +119 -61
  84. package/lib/commonjs/components/styled/VideoMessage.js.map +1 -1
  85. package/lib/commonjs/context/xmppProvider.js +184 -59
  86. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  87. package/lib/commonjs/helpers/createMessageFromXml.js +19 -1
  88. package/lib/commonjs/helpers/createMessageFromXml.js.map +1 -1
  89. package/lib/commonjs/helpers/ensureScopedChatCache.js +2 -2
  90. package/lib/commonjs/helpers/ensureScopedChatCache.js.map +1 -1
  91. package/lib/commonjs/helpers/getChatBackground.js +23 -0
  92. package/lib/commonjs/helpers/getChatBackground.js.map +1 -0
  93. package/lib/commonjs/helpers/getDisplayFileName.js +79 -0
  94. package/lib/commonjs/helpers/getDisplayFileName.js.map +1 -0
  95. package/lib/commonjs/helpers/getServerReadTimestamp.js +188 -0
  96. package/lib/commonjs/helpers/getServerReadTimestamp.js.map +1 -0
  97. package/lib/commonjs/helpers/historyPreloadScheduler.js +65 -2
  98. package/lib/commonjs/helpers/historyPreloadScheduler.js.map +1 -1
  99. package/lib/commonjs/helpers/initXmppRooms.js +14 -8
  100. package/lib/commonjs/helpers/initXmppRooms.js.map +1 -1
  101. package/lib/commonjs/helpers/insertMessageWithDelimiter.js +51 -9
  102. package/lib/commonjs/helpers/insertMessageWithDelimiter.js.map +1 -1
  103. package/lib/commonjs/helpers/isOwnMessage.js +75 -0
  104. package/lib/commonjs/helpers/isOwnMessage.js.map +1 -0
  105. package/lib/commonjs/helpers/keyboardLayout.js +12 -2
  106. package/lib/commonjs/helpers/keyboardLayout.js.map +1 -1
  107. package/lib/commonjs/helpers/mediaLibraryRuntime.js +31 -0
  108. package/lib/commonjs/helpers/mediaLibraryRuntime.js.map +1 -0
  109. package/lib/commonjs/helpers/mimeToExtension.js +6 -14
  110. package/lib/commonjs/helpers/mimeToExtension.js.map +1 -1
  111. package/lib/commonjs/helpers/msgSortableMs.js +37 -0
  112. package/lib/commonjs/helpers/msgSortableMs.js.map +1 -0
  113. package/lib/commonjs/helpers/persistCrypto.js +122 -0
  114. package/lib/commonjs/helpers/persistCrypto.js.map +1 -0
  115. package/lib/commonjs/helpers/pickImageAsset.js +68 -0
  116. package/lib/commonjs/helpers/pickImageAsset.js.map +1 -0
  117. package/lib/commonjs/helpers/pushPayload.js +71 -0
  118. package/lib/commonjs/helpers/pushPayload.js.map +1 -0
  119. package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js +130 -17
  120. package/lib/commonjs/helpers/resolveInitBeforeLoadUser.js.map +1 -1
  121. package/lib/commonjs/helpers/secureFileUrl.js +101 -0
  122. package/lib/commonjs/helpers/secureFileUrl.js.map +1 -0
  123. package/lib/commonjs/helpers/secureKeyValue.js +83 -0
  124. package/lib/commonjs/helpers/secureKeyValue.js.map +1 -0
  125. package/lib/commonjs/helpers/secureStoreRuntime.js +59 -0
  126. package/lib/commonjs/helpers/secureStoreRuntime.js.map +1 -0
  127. package/lib/commonjs/helpers/secureUserStorage.js +75 -0
  128. package/lib/commonjs/helpers/secureUserStorage.js.map +1 -0
  129. package/lib/commonjs/helpers/shallowEqual.js +36 -0
  130. package/lib/commonjs/helpers/shallowEqual.js.map +1 -0
  131. package/lib/commonjs/helpers/sheetGestures.js +32 -0
  132. package/lib/commonjs/helpers/sheetGestures.js.map +1 -0
  133. package/lib/commonjs/hooks/useChatRoomFocus.js +45 -12
  134. package/lib/commonjs/hooks/useChatRoomFocus.js.map +1 -1
  135. package/lib/commonjs/hooks/useChatWrapperInit.js +30 -10
  136. package/lib/commonjs/hooks/useChatWrapperInit.js.map +1 -1
  137. package/lib/commonjs/hooks/useComposing.js +27 -0
  138. package/lib/commonjs/hooks/useComposing.js.map +1 -1
  139. package/lib/commonjs/hooks/useFileToken.js +10 -0
  140. package/lib/commonjs/hooks/useFileToken.js.map +1 -0
  141. package/lib/commonjs/hooks/useLogout.js +23 -7
  142. package/lib/commonjs/hooks/useLogout.js.map +1 -1
  143. package/lib/commonjs/hooks/usePendingNotification.js +8 -11
  144. package/lib/commonjs/hooks/usePendingNotification.js.map +1 -1
  145. package/lib/commonjs/hooks/useSendMessage.js +50 -14
  146. package/lib/commonjs/hooks/useSendMessage.js.map +1 -1
  147. package/lib/commonjs/hooks/useUnreadMessagesCounter.js +6 -1
  148. package/lib/commonjs/hooks/useUnreadMessagesCounter.js.map +1 -1
  149. package/lib/commonjs/i18n/strings.js +145 -37
  150. package/lib/commonjs/i18n/strings.js.map +1 -1
  151. package/lib/commonjs/main.js +44 -0
  152. package/lib/commonjs/main.js.map +1 -1
  153. package/lib/commonjs/networking/api-requests/auth.api.js +134 -60
  154. package/lib/commonjs/networking/api-requests/auth.api.js.map +1 -1
  155. package/lib/commonjs/networking/api-requests/roomMembers.api.js +1 -1
  156. package/lib/commonjs/networking/api-requests/roomMembers.api.js.map +1 -1
  157. package/lib/commonjs/networking/api-requests/rooms.api.js +9 -9
  158. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  159. package/lib/commonjs/networking/api-requests/user.api.js +68 -9
  160. package/lib/commonjs/networking/api-requests/user.api.js.map +1 -1
  161. package/lib/commonjs/networking/apiClient.js +62 -112
  162. package/lib/commonjs/networking/apiClient.js.map +1 -1
  163. package/lib/commonjs/networking/authRefresh.js +332 -0
  164. package/lib/commonjs/networking/authRefresh.js.map +1 -0
  165. package/lib/commonjs/networking/stanzaHandlers.js +41 -28
  166. package/lib/commonjs/networking/stanzaHandlers.js.map +1 -1
  167. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js +46 -8
  168. package/lib/commonjs/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  169. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js +8 -1
  170. package/lib/commonjs/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  171. package/lib/commonjs/networking/xmpp/subscribeToRoomMessages.xmpp.js +5 -1
  172. package/lib/commonjs/networking/xmpp/subscribeToRoomMessages.xmpp.js.map +1 -1
  173. package/lib/commonjs/networking/xmppClient.js +124 -8
  174. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  175. package/lib/commonjs/roomStore/chatSettingsSlice.js +26 -7
  176. package/lib/commonjs/roomStore/chatSettingsSlice.js.map +1 -1
  177. package/lib/commonjs/roomStore/index.js +35 -2
  178. package/lib/commonjs/roomStore/index.js.map +1 -1
  179. package/lib/commonjs/roomStore/persistence.js +226 -23
  180. package/lib/commonjs/roomStore/persistence.js.map +1 -1
  181. package/lib/commonjs/roomStore/roomsSlice.js +151 -38
  182. package/lib/commonjs/roomStore/roomsSlice.js.map +1 -1
  183. package/lib/commonjs/services/pushSubscriptionService.js +15 -13
  184. package/lib/commonjs/services/pushSubscriptionService.js.map +1 -1
  185. package/lib/commonjs/version.js +1 -1
  186. package/lib/module/assets/icons.js +6 -1
  187. package/lib/module/assets/icons.js.map +1 -1
  188. package/lib/module/components/AuthForms/Login.js +4 -4
  189. package/lib/module/components/AuthForms/Login.js.map +1 -1
  190. package/lib/module/components/Header/HeaderRoomList.js +29 -8
  191. package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
  192. package/lib/module/components/MainComponents/ChatHeader.js +9 -3
  193. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  194. package/lib/module/components/MainComponents/ChatRoom.js +152 -16
  195. package/lib/module/components/MainComponents/ChatRoom.js.map +1 -1
  196. package/lib/module/components/MainComponents/ChatWrapper.js +35 -14
  197. package/lib/module/components/MainComponents/ChatWrapper.js.map +1 -1
  198. package/lib/module/components/MainComponents/LoginWrapper.js +2 -1
  199. package/lib/module/components/MainComponents/LoginWrapper.js.map +1 -1
  200. package/lib/module/components/MainComponents/MediaMessage.js +30 -10
  201. package/lib/module/components/MainComponents/MediaMessage.js.map +1 -1
  202. package/lib/module/components/MainComponents/MessageContainer.js +5 -1
  203. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  204. package/lib/module/components/MainComponents/MessageList.js +13 -5
  205. package/lib/module/components/MainComponents/MessageList.js.map +1 -1
  206. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js +14 -13
  207. package/lib/module/components/MainComponents/ProfileImagePlaceholder.js.map +1 -1
  208. package/lib/module/components/MainComponents/RoomList.js +207 -35
  209. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  210. package/lib/module/components/Menu/HeaderRoomListMenu.js +319 -101
  211. package/lib/module/components/Menu/HeaderRoomListMenu.js.map +1 -1
  212. package/lib/module/components/Modals/AttachSheet/AttachSheet.js +313 -113
  213. package/lib/module/components/Modals/AttachSheet/AttachSheet.js.map +1 -1
  214. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +549 -207
  215. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  216. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +223 -0
  217. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -0
  218. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js +70 -28
  219. package/lib/module/components/Modals/FilePreviewModal/FilePreviewModal.js.map +1 -1
  220. package/lib/module/components/Modals/FilePreviewModal/PdfView.js +2 -1
  221. package/lib/module/components/Modals/FilePreviewModal/PdfView.js.map +1 -1
  222. package/lib/module/components/Modals/Modal/Modal.js +9 -1
  223. package/lib/module/components/Modals/Modal/Modal.js.map +1 -1
  224. package/lib/module/components/Modals/NewChatModal/ModalContent.js +2 -1
  225. package/lib/module/components/Modals/NewChatModal/ModalContent.js.map +1 -1
  226. package/lib/module/components/Modals/NewChatModal/NewChatModal.js +205 -108
  227. package/lib/module/components/Modals/NewChatModal/NewChatModal.js.map +1 -1
  228. package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js +8 -0
  229. package/lib/module/components/Modals/NewChatModal/UpdNewChatModal.js.map +1 -1
  230. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js +555 -0
  231. package/lib/module/components/Modals/ProfileHeader/ProfileHeader.js.map +1 -0
  232. package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js +205 -0
  233. package/lib/module/components/Modals/ProfileHeader/ProfileMenu.js.map +1 -0
  234. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js +4 -2
  235. package/lib/module/components/Modals/SelectUsersModal/SelectUsersModal.js.map +1 -1
  236. package/lib/module/components/Modals/UserProfileModal/EditUserModal.js +9 -23
  237. package/lib/module/components/Modals/UserProfileModal/EditUserModal.js.map +1 -1
  238. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +509 -248
  239. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  240. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js +76 -48
  241. package/lib/module/components/Modals/UserSettingsModal/UserSettingsModal.js.map +1 -1
  242. package/lib/module/components/Modals/styledModalComponents.js +9 -2
  243. package/lib/module/components/Modals/styledModalComponents.js.map +1 -1
  244. package/lib/module/components/RoomComponents/ChatRoomItem.js +21 -7
  245. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  246. package/lib/module/components/RoomComponents/styled/LastMessageFile.js +22 -3
  247. package/lib/module/components/RoomComponents/styled/LastMessageFile.js.map +1 -1
  248. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js +17 -3
  249. package/lib/module/components/RoomComponents/styled/LastMessagePhoto.js.map +1 -1
  250. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js +17 -3
  251. package/lib/module/components/RoomComponents/styled/LastMessageVideo.js.map +1 -1
  252. package/lib/module/components/VideoCalls/VideoCallSession.js +6 -3
  253. package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
  254. package/lib/module/components/styled/AudioMessage.js +2 -1
  255. package/lib/module/components/styled/AudioMessage.js.map +1 -1
  256. package/lib/module/components/styled/MessageImage.js +37 -9
  257. package/lib/module/components/styled/MessageImage.js.map +1 -1
  258. package/lib/module/components/styled/SendInput.js +81 -12
  259. package/lib/module/components/styled/SendInput.js.map +1 -1
  260. package/lib/module/components/styled/StyledComponents.js +9 -3
  261. package/lib/module/components/styled/StyledComponents.js.map +1 -1
  262. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js +11 -4
  263. package/lib/module/components/styled/StyledInputComponents/StyledInputComponents.js.map +1 -1
  264. package/lib/module/components/styled/UnsupportedType.js +14 -4
  265. package/lib/module/components/styled/UnsupportedType.js.map +1 -1
  266. package/lib/module/components/styled/VideoMessage.js +120 -62
  267. package/lib/module/components/styled/VideoMessage.js.map +1 -1
  268. package/lib/module/context/xmppProvider.js +184 -60
  269. package/lib/module/context/xmppProvider.js.map +1 -1
  270. package/lib/module/helpers/createMessageFromXml.js +19 -1
  271. package/lib/module/helpers/createMessageFromXml.js.map +1 -1
  272. package/lib/module/helpers/ensureScopedChatCache.js +2 -2
  273. package/lib/module/helpers/ensureScopedChatCache.js.map +1 -1
  274. package/lib/module/helpers/getChatBackground.js +18 -0
  275. package/lib/module/helpers/getChatBackground.js.map +1 -0
  276. package/lib/module/helpers/getDisplayFileName.js +73 -0
  277. package/lib/module/helpers/getDisplayFileName.js.map +1 -0
  278. package/lib/module/helpers/getServerReadTimestamp.js +181 -0
  279. package/lib/module/helpers/getServerReadTimestamp.js.map +1 -0
  280. package/lib/module/helpers/historyPreloadScheduler.js +66 -3
  281. package/lib/module/helpers/historyPreloadScheduler.js.map +1 -1
  282. package/lib/module/helpers/initXmppRooms.js +14 -8
  283. package/lib/module/helpers/initXmppRooms.js.map +1 -1
  284. package/lib/module/helpers/insertMessageWithDelimiter.js +52 -9
  285. package/lib/module/helpers/insertMessageWithDelimiter.js.map +1 -1
  286. package/lib/module/helpers/isOwnMessage.js +70 -0
  287. package/lib/module/helpers/isOwnMessage.js.map +1 -0
  288. package/lib/module/helpers/keyboardLayout.js +12 -2
  289. package/lib/module/helpers/keyboardLayout.js.map +1 -1
  290. package/lib/module/helpers/mediaLibraryRuntime.js +25 -0
  291. package/lib/module/helpers/mediaLibraryRuntime.js.map +1 -0
  292. package/lib/module/helpers/mimeToExtension.js +6 -13
  293. package/lib/module/helpers/mimeToExtension.js.map +1 -1
  294. package/lib/module/helpers/msgSortableMs.js +32 -0
  295. package/lib/module/helpers/msgSortableMs.js.map +1 -0
  296. package/lib/module/helpers/persistCrypto.js +115 -0
  297. package/lib/module/helpers/persistCrypto.js.map +1 -0
  298. package/lib/module/helpers/pickImageAsset.js +63 -0
  299. package/lib/module/helpers/pickImageAsset.js.map +1 -0
  300. package/lib/module/helpers/pushPayload.js +63 -0
  301. package/lib/module/helpers/pushPayload.js.map +1 -0
  302. package/lib/module/helpers/resolveInitBeforeLoadUser.js +130 -16
  303. package/lib/module/helpers/resolveInitBeforeLoadUser.js.map +1 -1
  304. package/lib/module/helpers/secureFileUrl.js +91 -0
  305. package/lib/module/helpers/secureFileUrl.js.map +1 -0
  306. package/lib/module/helpers/secureKeyValue.js +75 -0
  307. package/lib/module/helpers/secureKeyValue.js.map +1 -0
  308. package/lib/module/helpers/secureStoreRuntime.js +52 -0
  309. package/lib/module/helpers/secureStoreRuntime.js.map +1 -0
  310. package/lib/module/helpers/secureUserStorage.js +72 -0
  311. package/lib/module/helpers/secureUserStorage.js.map +1 -0
  312. package/lib/module/helpers/shallowEqual.js +31 -0
  313. package/lib/module/helpers/shallowEqual.js.map +1 -0
  314. package/lib/module/helpers/sheetGestures.js +26 -0
  315. package/lib/module/helpers/sheetGestures.js.map +1 -0
  316. package/lib/module/hooks/useChatRoomFocus.js +46 -13
  317. package/lib/module/hooks/useChatRoomFocus.js.map +1 -1
  318. package/lib/module/hooks/useChatWrapperInit.js +30 -10
  319. package/lib/module/hooks/useChatWrapperInit.js.map +1 -1
  320. package/lib/module/hooks/useComposing.js +28 -1
  321. package/lib/module/hooks/useComposing.js.map +1 -1
  322. package/lib/module/hooks/useFileToken.js +5 -0
  323. package/lib/module/hooks/useFileToken.js.map +1 -0
  324. package/lib/module/hooks/useLogout.js +23 -7
  325. package/lib/module/hooks/useLogout.js.map +1 -1
  326. package/lib/module/hooks/usePendingNotification.js +8 -11
  327. package/lib/module/hooks/usePendingNotification.js.map +1 -1
  328. package/lib/module/hooks/useSendMessage.js +52 -16
  329. package/lib/module/hooks/useSendMessage.js.map +1 -1
  330. package/lib/module/hooks/useUnreadMessagesCounter.js +6 -1
  331. package/lib/module/hooks/useUnreadMessagesCounter.js.map +1 -1
  332. package/lib/module/i18n/strings.js +145 -37
  333. package/lib/module/i18n/strings.js.map +1 -1
  334. package/lib/module/main.js +14 -2
  335. package/lib/module/main.js.map +1 -1
  336. package/lib/module/networking/api-requests/auth.api.js +131 -59
  337. package/lib/module/networking/api-requests/auth.api.js.map +1 -1
  338. package/lib/module/networking/api-requests/roomMembers.api.js +1 -1
  339. package/lib/module/networking/api-requests/roomMembers.api.js.map +1 -1
  340. package/lib/module/networking/api-requests/rooms.api.js +9 -9
  341. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  342. package/lib/module/networking/api-requests/user.api.js +64 -7
  343. package/lib/module/networking/api-requests/user.api.js.map +1 -1
  344. package/lib/module/networking/apiClient.js +61 -113
  345. package/lib/module/networking/apiClient.js.map +1 -1
  346. package/lib/module/networking/authRefresh.js +321 -0
  347. package/lib/module/networking/authRefresh.js.map +1 -0
  348. package/lib/module/networking/stanzaHandlers.js +41 -28
  349. package/lib/module/networking/stanzaHandlers.js.map +1 -1
  350. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js +46 -8
  351. package/lib/module/networking/xmpp/flushLastViewedToPrivateStore.js.map +1 -1
  352. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js +8 -1
  353. package/lib/module/networking/xmpp/presenceInRoom.xmpp.js.map +1 -1
  354. package/lib/module/networking/xmpp/subscribeToRoomMessages.xmpp.js +5 -1
  355. package/lib/module/networking/xmpp/subscribeToRoomMessages.xmpp.js.map +1 -1
  356. package/lib/module/networking/xmppClient.js +124 -8
  357. package/lib/module/networking/xmppClient.js.map +1 -1
  358. package/lib/module/roomStore/chatSettingsSlice.js +26 -7
  359. package/lib/module/roomStore/chatSettingsSlice.js.map +1 -1
  360. package/lib/module/roomStore/index.js +37 -4
  361. package/lib/module/roomStore/index.js.map +1 -1
  362. package/lib/module/roomStore/persistence.js +223 -22
  363. package/lib/module/roomStore/persistence.js.map +1 -1
  364. package/lib/module/roomStore/roomsSlice.js +139 -34
  365. package/lib/module/roomStore/roomsSlice.js.map +1 -1
  366. package/lib/module/services/pushSubscriptionService.js +15 -13
  367. package/lib/module/services/pushSubscriptionService.js.map +1 -1
  368. package/lib/module/version.js +1 -1
  369. package/lib/typescript/assets/icons.d.ts +16 -0
  370. package/lib/typescript/assets/icons.d.ts.map +1 -1
  371. package/lib/typescript/components/AuthForms/Login.d.ts.map +1 -1
  372. package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
  373. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  374. package/lib/typescript/components/MainComponents/ChatRoom.d.ts.map +1 -1
  375. package/lib/typescript/components/MainComponents/ChatWrapper.d.ts.map +1 -1
  376. package/lib/typescript/components/MainComponents/LoginWrapper.d.ts.map +1 -1
  377. package/lib/typescript/components/MainComponents/MediaMessage.d.ts.map +1 -1
  378. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  379. package/lib/typescript/components/MainComponents/MessageList.d.ts +10 -1
  380. package/lib/typescript/components/MainComponents/MessageList.d.ts.map +1 -1
  381. package/lib/typescript/components/MainComponents/ProfileImagePlaceholder.d.ts.map +1 -1
  382. package/lib/typescript/components/MainComponents/RoomList.d.ts +7 -0
  383. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  384. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts +3 -0
  385. package/lib/typescript/components/Menu/HeaderRoomListMenu.d.ts.map +1 -1
  386. package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts +9 -0
  387. package/lib/typescript/components/Modals/AttachSheet/AttachSheet.d.ts.map +1 -1
  388. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts +10 -0
  389. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  390. package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts +9 -0
  391. package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts.map +1 -0
  392. package/lib/typescript/components/Modals/FilePreviewModal/FilePreviewModal.d.ts.map +1 -1
  393. package/lib/typescript/components/Modals/FilePreviewModal/PdfView.d.ts.map +1 -1
  394. package/lib/typescript/components/Modals/Modal/Modal.d.ts.map +1 -1
  395. package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts +4 -2
  396. package/lib/typescript/components/Modals/NewChatModal/ModalContent.d.ts.map +1 -1
  397. package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts +1 -1
  398. package/lib/typescript/components/Modals/NewChatModal/NewChatModal.d.ts.map +1 -1
  399. package/lib/typescript/components/Modals/NewChatModal/UpdNewChatModal.d.ts.map +1 -1
  400. package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts +75 -0
  401. package/lib/typescript/components/Modals/ProfileHeader/ProfileHeader.d.ts.map +1 -0
  402. package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts +25 -0
  403. package/lib/typescript/components/Modals/ProfileHeader/ProfileMenu.d.ts.map +1 -0
  404. package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts +6 -1
  405. package/lib/typescript/components/Modals/SelectUsersModal/SelectUsersModal.d.ts.map +1 -1
  406. package/lib/typescript/components/Modals/UserProfileModal/EditUserModal.d.ts.map +1 -1
  407. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts +16 -0
  408. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  409. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts +1 -0
  410. package/lib/typescript/components/Modals/UserSettingsModal/UserSettingsModal.d.ts.map +1 -1
  411. package/lib/typescript/components/Modals/styledModalComponents.d.ts.map +1 -1
  412. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  413. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts +1 -1
  414. package/lib/typescript/components/RoomComponents/styled/LastMessageFile.d.ts.map +1 -1
  415. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts +1 -1
  416. package/lib/typescript/components/RoomComponents/styled/LastMessagePhoto.d.ts.map +1 -1
  417. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts +1 -1
  418. package/lib/typescript/components/RoomComponents/styled/LastMessageVideo.d.ts.map +1 -1
  419. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
  420. package/lib/typescript/components/styled/AudioMessage.d.ts.map +1 -1
  421. package/lib/typescript/components/styled/MessageImage.d.ts +14 -0
  422. package/lib/typescript/components/styled/MessageImage.d.ts.map +1 -1
  423. package/lib/typescript/components/styled/SendInput.d.ts.map +1 -1
  424. package/lib/typescript/components/styled/StyledComponents.d.ts.map +1 -1
  425. package/lib/typescript/components/styled/StyledInputComponents/StyledInputComponents.d.ts.map +1 -1
  426. package/lib/typescript/components/styled/UnsupportedType.d.ts.map +1 -1
  427. package/lib/typescript/components/styled/VideoMessage.d.ts +8 -0
  428. package/lib/typescript/components/styled/VideoMessage.d.ts.map +1 -1
  429. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  430. package/lib/typescript/helpers/createMessageFromXml.d.ts.map +1 -1
  431. package/lib/typescript/helpers/getChatBackground.d.ts +15 -0
  432. package/lib/typescript/helpers/getChatBackground.d.ts.map +1 -0
  433. package/lib/typescript/helpers/getDisplayFileName.d.ts +49 -0
  434. package/lib/typescript/helpers/getDisplayFileName.d.ts.map +1 -0
  435. package/lib/typescript/helpers/getServerReadTimestamp.d.ts +108 -0
  436. package/lib/typescript/helpers/getServerReadTimestamp.d.ts.map +1 -0
  437. package/lib/typescript/helpers/historyPreloadScheduler.d.ts.map +1 -1
  438. package/lib/typescript/helpers/initXmppRooms.d.ts.map +1 -1
  439. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts +1 -1
  440. package/lib/typescript/helpers/insertMessageWithDelimiter.d.ts.map +1 -1
  441. package/lib/typescript/helpers/isOwnMessage.d.ts +36 -0
  442. package/lib/typescript/helpers/isOwnMessage.d.ts.map +1 -0
  443. package/lib/typescript/helpers/keyboardLayout.d.ts +5 -1
  444. package/lib/typescript/helpers/keyboardLayout.d.ts.map +1 -1
  445. package/lib/typescript/helpers/mediaLibraryRuntime.d.ts +3 -0
  446. package/lib/typescript/helpers/mediaLibraryRuntime.d.ts.map +1 -0
  447. package/lib/typescript/helpers/mimeToExtension.d.ts +0 -15
  448. package/lib/typescript/helpers/mimeToExtension.d.ts.map +1 -1
  449. package/lib/typescript/helpers/msgSortableMs.d.ts +2 -0
  450. package/lib/typescript/helpers/msgSortableMs.d.ts.map +1 -0
  451. package/lib/typescript/helpers/persistCrypto.d.ts +13 -0
  452. package/lib/typescript/helpers/persistCrypto.d.ts.map +1 -0
  453. package/lib/typescript/helpers/pickImageAsset.d.ts +27 -0
  454. package/lib/typescript/helpers/pickImageAsset.d.ts.map +1 -0
  455. package/lib/typescript/helpers/pushPayload.d.ts +7 -0
  456. package/lib/typescript/helpers/pushPayload.d.ts.map +1 -0
  457. package/lib/typescript/helpers/resolveInitBeforeLoadUser.d.ts.map +1 -1
  458. package/lib/typescript/helpers/secureFileUrl.d.ts +7 -0
  459. package/lib/typescript/helpers/secureFileUrl.d.ts.map +1 -0
  460. package/lib/typescript/helpers/secureKeyValue.d.ts +13 -0
  461. package/lib/typescript/helpers/secureKeyValue.d.ts.map +1 -0
  462. package/lib/typescript/helpers/secureStoreRuntime.d.ts +29 -0
  463. package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +1 -0
  464. package/lib/typescript/helpers/secureUserStorage.d.ts +23 -0
  465. package/lib/typescript/helpers/secureUserStorage.d.ts.map +1 -0
  466. package/lib/typescript/helpers/shallowEqual.d.ts +11 -0
  467. package/lib/typescript/helpers/shallowEqual.d.ts.map +1 -0
  468. package/lib/typescript/helpers/sheetGestures.d.ts +20 -0
  469. package/lib/typescript/helpers/sheetGestures.d.ts.map +1 -0
  470. package/lib/typescript/hooks/useChatRoomFocus.d.ts +4 -1
  471. package/lib/typescript/hooks/useChatRoomFocus.d.ts.map +1 -1
  472. package/lib/typescript/hooks/useChatWrapperInit.d.ts.map +1 -1
  473. package/lib/typescript/hooks/useComposing.d.ts.map +1 -1
  474. package/lib/typescript/hooks/useFileToken.d.ts +2 -0
  475. package/lib/typescript/hooks/useFileToken.d.ts.map +1 -0
  476. package/lib/typescript/hooks/useLogout.d.ts.map +1 -1
  477. package/lib/typescript/hooks/usePendingNotification.d.ts.map +1 -1
  478. package/lib/typescript/hooks/useSendMessage.d.ts.map +1 -1
  479. package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts +1 -0
  480. package/lib/typescript/hooks/useUnreadMessagesCounter.d.ts.map +1 -1
  481. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  482. package/lib/typescript/main.d.ts +9 -2
  483. package/lib/typescript/main.d.ts.map +1 -1
  484. package/lib/typescript/networking/api-requests/auth.api.d.ts +3 -1
  485. package/lib/typescript/networking/api-requests/auth.api.d.ts.map +1 -1
  486. package/lib/typescript/networking/api-requests/user.api.d.ts +27 -0
  487. package/lib/typescript/networking/api-requests/user.api.d.ts.map +1 -1
  488. package/lib/typescript/networking/apiClient.d.ts +12 -6
  489. package/lib/typescript/networking/apiClient.d.ts.map +1 -1
  490. package/lib/typescript/networking/authRefresh.d.ts +95 -0
  491. package/lib/typescript/networking/authRefresh.d.ts.map +1 -0
  492. package/lib/typescript/networking/stanzaHandlers.d.ts.map +1 -1
  493. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts +10 -2
  494. package/lib/typescript/networking/xmpp/flushLastViewedToPrivateStore.d.ts.map +1 -1
  495. package/lib/typescript/networking/xmpp/presenceInRoom.xmpp.d.ts.map +1 -1
  496. package/lib/typescript/networking/xmpp/subscribeToRoomMessages.xmpp.d.ts.map +1 -1
  497. package/lib/typescript/networking/xmppClient.d.ts +14 -0
  498. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  499. package/lib/typescript/roomStore/chatSettingsSlice.d.ts +16 -0
  500. package/lib/typescript/roomStore/chatSettingsSlice.d.ts.map +1 -1
  501. package/lib/typescript/roomStore/index.d.ts.map +1 -1
  502. package/lib/typescript/roomStore/persistence.d.ts +18 -1
  503. package/lib/typescript/roomStore/persistence.d.ts.map +1 -1
  504. package/lib/typescript/roomStore/roomsSlice.d.ts +43 -3
  505. package/lib/typescript/roomStore/roomsSlice.d.ts.map +1 -1
  506. package/lib/typescript/services/pushSubscriptionService.d.ts +1 -1
  507. package/lib/typescript/services/pushSubscriptionService.d.ts.map +1 -1
  508. package/lib/typescript/types/types.d.ts +50 -5
  509. package/lib/typescript/types/types.d.ts.map +1 -1
  510. package/lib/typescript/version.d.ts +1 -1
  511. package/package.json +41 -28
  512. package/src/assets/icons.tsx +48 -9
  513. package/src/components/AuthForms/Login.tsx +3 -3
  514. package/src/components/Header/HeaderRoomList.tsx +29 -7
  515. package/src/components/MainComponents/ChatHeader.tsx +9 -3
  516. package/src/components/MainComponents/ChatRoom.tsx +161 -15
  517. package/src/components/MainComponents/ChatWrapper.tsx +36 -20
  518. package/src/components/MainComponents/LoginWrapper.tsx +1 -0
  519. package/src/components/MainComponents/MediaMessage.tsx +26 -8
  520. package/src/components/MainComponents/MessageContainer.tsx +5 -1
  521. package/src/components/MainComponents/MessageList.tsx +23 -4
  522. package/src/components/MainComponents/ProfileImagePlaceholder.tsx +21 -14
  523. package/src/components/MainComponents/RoomList.tsx +236 -39
  524. package/src/components/Menu/HeaderRoomListMenu.tsx +328 -75
  525. package/src/components/Modals/AttachSheet/AttachSheet.tsx +333 -97
  526. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +600 -282
  527. package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +244 -0
  528. package/src/components/Modals/FilePreviewModal/FilePreviewModal.tsx +79 -38
  529. package/src/components/Modals/FilePreviewModal/PdfView.tsx +2 -1
  530. package/src/components/Modals/Modal/Modal.tsx +7 -0
  531. package/src/components/Modals/NewChatModal/ModalContent.tsx +6 -3
  532. package/src/components/Modals/NewChatModal/NewChatModal.tsx +219 -119
  533. package/src/components/Modals/NewChatModal/UpdNewChatModal.tsx +12 -1
  534. package/src/components/Modals/ProfileHeader/ProfileHeader.tsx +624 -0
  535. package/src/components/Modals/ProfileHeader/ProfileMenu.tsx +217 -0
  536. package/src/components/Modals/SelectUsersModal/SelectUsersModal.tsx +14 -4
  537. package/src/components/Modals/UserProfileModal/EditUserModal.tsx +9 -25
  538. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +617 -307
  539. package/src/components/Modals/UserSettingsModal/UserSettingsModal.tsx +75 -58
  540. package/src/components/Modals/styledModalComponents.tsx +9 -2
  541. package/src/components/RoomComponents/ChatRoomItem.tsx +18 -3
  542. package/src/components/RoomComponents/styled/LastMessageFile.tsx +28 -4
  543. package/src/components/RoomComponents/styled/LastMessagePhoto.tsx +18 -3
  544. package/src/components/RoomComponents/styled/LastMessageVideo.tsx +18 -3
  545. package/src/components/VideoCalls/VideoCallSession.tsx +8 -3
  546. package/src/components/styled/AudioMessage.tsx +2 -1
  547. package/src/components/styled/MessageImage.tsx +53 -7
  548. package/src/components/styled/SendInput.tsx +83 -12
  549. package/src/components/styled/StyledComponents.ts +9 -3
  550. package/src/components/styled/StyledInputComponents/StyledInputComponents.tsx +11 -4
  551. package/src/components/styled/UnsupportedType.tsx +14 -4
  552. package/src/components/styled/VideoMessage.tsx +131 -54
  553. package/src/context/xmppProvider.tsx +216 -57
  554. package/src/helpers/createMessageFromXml.ts +20 -1
  555. package/src/helpers/ensureScopedChatCache.ts +2 -2
  556. package/src/helpers/getChatBackground.ts +18 -0
  557. package/src/helpers/getDisplayFileName.ts +87 -0
  558. package/src/helpers/getServerReadTimestamp.ts +197 -0
  559. package/src/helpers/historyPreloadScheduler.ts +80 -3
  560. package/src/helpers/initXmppRooms.tsx +14 -10
  561. package/src/helpers/insertMessageWithDelimiter.ts +55 -19
  562. package/src/helpers/isOwnMessage.ts +90 -0
  563. package/src/helpers/keyboardLayout.ts +23 -2
  564. package/src/helpers/mediaLibraryRuntime.ts +25 -0
  565. package/src/helpers/mimeToExtension.ts +6 -22
  566. package/src/helpers/msgSortableMs.ts +25 -0
  567. package/src/helpers/persistCrypto.ts +127 -0
  568. package/src/helpers/pickImageAsset.ts +68 -0
  569. package/src/helpers/pushPayload.ts +62 -0
  570. package/src/helpers/resolveInitBeforeLoadUser.ts +125 -18
  571. package/src/helpers/secureFileUrl.ts +103 -0
  572. package/src/helpers/secureKeyValue.ts +80 -0
  573. package/src/helpers/secureStoreRuntime.ts +62 -0
  574. package/src/helpers/secureUserStorage.ts +80 -0
  575. package/src/helpers/shallowEqual.ts +33 -0
  576. package/src/helpers/sheetGestures.ts +25 -0
  577. package/src/hooks/useChatRoomFocus.ts +49 -9
  578. package/src/hooks/useChatWrapperInit.ts +30 -10
  579. package/src/hooks/useComposing.tsx +37 -1
  580. package/src/hooks/useFileToken.ts +7 -0
  581. package/src/hooks/useLogout.tsx +29 -9
  582. package/src/hooks/usePendingNotification.ts +5 -11
  583. package/src/hooks/useSendMessage.tsx +60 -15
  584. package/src/hooks/useUnreadMessagesCounter.ts +11 -0
  585. package/src/i18n/strings.ts +145 -37
  586. package/src/main.ts +26 -2
  587. package/src/networking/api-requests/auth.api.ts +156 -48
  588. package/src/networking/api-requests/roomMembers.api.ts +1 -1
  589. package/src/networking/api-requests/rooms.api.ts +9 -9
  590. package/src/networking/api-requests/user.api.ts +79 -7
  591. package/src/networking/apiClient.ts +68 -123
  592. package/src/networking/authRefresh.ts +451 -0
  593. package/src/networking/stanzaHandlers.ts +44 -28
  594. package/src/networking/xmpp/flushLastViewedToPrivateStore.ts +71 -10
  595. package/src/networking/xmpp/presenceInRoom.xmpp.ts +6 -1
  596. package/src/networking/xmpp/subscribeToRoomMessages.xmpp.ts +12 -1
  597. package/src/networking/xmppClient.ts +141 -9
  598. package/src/roomStore/chatSettingsSlice.ts +34 -10
  599. package/src/roomStore/index.ts +40 -4
  600. package/src/roomStore/persistence.ts +234 -24
  601. package/src/roomStore/roomsSlice.ts +161 -29
  602. package/src/services/pushSubscriptionService.ts +18 -13
  603. package/src/types/types.ts +72 -5
  604. package/src/version.ts +1 -1
@@ -0,0 +1,555 @@
1
+ "use strict";
2
+
3
+ /** @format */
4
+
5
+ import React from 'react';
6
+ import { Animated, Image, StyleSheet, Text, TouchableOpacity, View } from 'react-native';
7
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
8
+ import { BackIcon } from '../../../assets/icons';
9
+ import { getAvatarTextColor } from '../../../helpers/getAvatarColor';
10
+
11
+ /** Height of the expanded photo hero. */
12
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ export const HERO_HEIGHT = 320;
14
+ /** Back / "…" row, directly below the status-bar inset. */
15
+ export const TOP_BAR_BUTTONS = 60;
16
+ /**
17
+ * Avatar + name row underneath it, revealed as the header collapses.
18
+ * Taller than the 48pt avatar it holds, so the row breathes: the extra
19
+ * height splits evenly above and below (the row centres its content),
20
+ * putting real space between the avatar and both the buttons above and
21
+ * the content below.
22
+ */
23
+ export const TOP_BAR_NAME = 92;
24
+ /** Content band of the collapsed bar, below the status-bar inset. */
25
+ export const TOP_BAR_BAND = TOP_BAR_BUTTONS + TOP_BAR_NAME;
26
+ /** How far above the fully-collapsed point the bar starts fading in. */
27
+ const COLLAPSE_RAMP = 48;
28
+ /**
29
+ * Blur strength once the header is fully collapsed. The design's collapsed
30
+ * bar is frosted heavily — the picture is a mood, not a subject — so this
31
+ * sits near the top of expo-blur's 0-100 range, with a dim over it to keep
32
+ * the white text and the sharp round avatar reading against it.
33
+ */
34
+ const BLUR_INTENSITY = 92;
35
+ /** Darkening applied on top of the blur (and used alone without it). */
36
+ const FROST_DIM = 'rgba(0,0,0,0.28)';
37
+ /** Height of the readability gradient under the name and buttons. */
38
+ const SCRIM_HEIGHT = 220;
39
+ /** Bands the gradient is built from — enough that no step is visible. */
40
+ const SCRIM_BANDS = 16;
41
+ /** Darkest the gradient gets, at the very bottom of the hero. */
42
+ const SCRIM_MAX_ALPHA = 0.45;
43
+
44
+ /**
45
+ * How far above the hero its backdrop reaches. Over-scrolling downwards
46
+ * exposes that band, and the picture grows into it (anchored at its own
47
+ * bottom edge) rather than a second copy being painted there.
48
+ */
49
+ const OVERSCROLL_REACH = 400;
50
+
51
+ // expo-blur is an OPTIONAL peer. Having the JS package is not enough — the
52
+ // native view has to be in the binary too, and an app that installed the
53
+ // package without rebuilding renders a red "Unimplemented component:
54
+ // ExpoBlurView" box instead of a blur. `requireNativeModule` throws when
55
+ // that native half is missing, which is the only reliable way to tell the
56
+ // two apart, so probe it once and fall back to a plain dim otherwise.
57
+ let BlurView = null;
58
+ try {
59
+ const {
60
+ requireNativeModule
61
+ } = require('expo-modules-core');
62
+ requireNativeModule('ExpoBlur');
63
+ BlurView = require('expo-blur').BlurView ?? null;
64
+ } catch {
65
+ BlurView = null;
66
+ }
67
+
68
+ /** True when the frosted-glass layer is the real thing, not the dim. */
69
+ export const hasNativeBlur = () => !!BlurView;
70
+
71
+ /**
72
+ * Bottom-up darkening so white text stays readable over a photo.
73
+ *
74
+ * A single flat overlay (what this was) has a hard top edge that reads as
75
+ * "the bottom half of the picture is dark". There is no gradient
76
+ * dependency in this package, so it is stacked out of thin bands whose
77
+ * alpha ramps quadratically — at 16 bands over 220 pt the steps are below
78
+ * what the eye picks up on a photo.
79
+ */
80
+ const ScrimGradient = () => /*#__PURE__*/_jsx(View, {
81
+ pointerEvents: "none",
82
+ style: styles.scrim,
83
+ children: Array.from({
84
+ length: SCRIM_BANDS
85
+ }, (_, i) => /*#__PURE__*/_jsx(View, {
86
+ style: {
87
+ height: SCRIM_HEIGHT / SCRIM_BANDS,
88
+ backgroundColor: `rgba(0,0,0,${(SCRIM_MAX_ALPHA * ((i + 1) / SCRIM_BANDS) ** 2).toFixed(3)})`
89
+ }
90
+ }, i))
91
+ });
92
+ const FrostLayer = ({
93
+ tint = 'dark'
94
+ }) => BlurView ? /*#__PURE__*/_jsxs(_Fragment, {
95
+ children: [/*#__PURE__*/_jsx(BlurView, {
96
+ intensity: BLUR_INTENSITY,
97
+ tint: tint,
98
+ style: StyleSheet.absoluteFill
99
+ }), /*#__PURE__*/_jsx(View, {
100
+ style: [StyleSheet.absoluteFill, styles.frostDim]
101
+ })]
102
+ }) : /*#__PURE__*/_jsx(View, {
103
+ style: [StyleSheet.absoluteFill, styles.frostFallback]
104
+ });
105
+ /** Everything the screen needs to line its scroll content up with the bar. */
106
+ export const useHeaderMetrics = () => {
107
+ const insets = useSafeAreaInsets();
108
+ const barHeight = insets.top + TOP_BAR_BAND;
109
+ return {
110
+ insets,
111
+ barHeight,
112
+ /** Scroll distance between the expanded hero and the collapsed bar. */
113
+ collapseDistance: Math.max(HERO_HEIGHT - barHeight, 1)
114
+ };
115
+ };
116
+ const useCollapse = (scrollY, collapseDistance) => scrollY.interpolate({
117
+ inputRange: [Math.max(collapseDistance - COLLAPSE_RAMP, 0), collapseDistance],
118
+ outputRange: [0, 1],
119
+ extrapolate: 'clamp'
120
+ });
121
+
122
+ /**
123
+ * The chat picture, blown up to a full-bleed hero with the name, member
124
+ * count and the round action buttons on top of it.
125
+ *
126
+ * It lives INSIDE the ScrollView (rather than behind it) so the action
127
+ * buttons stay tappable — an absolutely-positioned hero would sit under a
128
+ * full-screen scroll surface that swallows every touch. Parallax is done
129
+ * on the inner image instead: the wrapper keeps its layout height while
130
+ * the picture drifts at ~⅓ of the scroll speed, and over-scrolling
131
+ * upwards scales it up the way iOS profile headers do.
132
+ */
133
+ export const ProfileHero = ({
134
+ title,
135
+ subtitle,
136
+ imageUri,
137
+ fallbackColor,
138
+ initials,
139
+ scrollY,
140
+ actions,
141
+ titleAccessory,
142
+ titleStyle,
143
+ subtitleStyle,
144
+ testIDPrefix = 'chat-profile'
145
+ }) => {
146
+ const {
147
+ collapseDistance
148
+ } = useHeaderMetrics();
149
+ const parallax = scrollY.interpolate({
150
+ inputRange: [0, HERO_HEIGHT],
151
+ outputRange: [0, HERO_HEIGHT * 0.35],
152
+ // Clamped on the left: with `extend` an over-scroll pulled the picture
153
+ // UP off its own bottom edge, exposing a band of the backdrop colour
154
+ // under it. Pulling down is the scale's job alone.
155
+ extrapolateLeft: 'clamp',
156
+ extrapolateRight: 'clamp'
157
+ });
158
+ const scale = scrollY.interpolate({
159
+ inputRange: [-HERO_HEIGHT, 0],
160
+ outputRange: [2, 1],
161
+ extrapolateRight: 'clamp'
162
+ });
163
+ // The name and buttons are gone well before the collapsed bar arrives,
164
+ // so the two never overlap mid-scroll.
165
+ const contentOpacity = scrollY.interpolate({
166
+ inputRange: [0, HERO_HEIGHT * 0.4],
167
+ outputRange: [1, 0],
168
+ extrapolate: 'clamp'
169
+ });
170
+ const collapsed = useCollapse(scrollY, collapseDistance);
171
+
172
+ // On a photo everything is white over a bottom scrim. On the flat
173
+ // fallback colour there is no scrim at all — that double-tone banding
174
+ // was two stacked scrims showing their seam — so the text takes
175
+ // whichever of black/white reads on that colour.
176
+ const onPhoto = !!imageUri;
177
+ const contentColor = onPhoto ? '#FFFFFF' : getAvatarTextColor(fallbackColor);
178
+ // The glyphs inside the circles are always white — several of the SDK's
179
+ // icons paint white regardless of their `color` prop, so tinting the
180
+ // rest to match the title left a mix of black and white glyphs in one
181
+ // row. The circle darkens instead, which keeps them readable on a light
182
+ // fill as well as on a photo.
183
+ const iconColor = '#FFFFFF';
184
+ const circleTint = onPhoto ? 'rgba(255,255,255,0.22)' : contentColor === '#FFFFFF' ? 'rgba(255,255,255,0.22)' : 'rgba(0,0,0,0.22)';
185
+ return /*#__PURE__*/_jsxs(View, {
186
+ style: [styles.hero, {
187
+ backgroundColor: fallbackColor
188
+ }],
189
+ children: [/*#__PURE__*/_jsxs(View, {
190
+ style: [styles.backdropClip, {
191
+ backgroundColor: fallbackColor
192
+ }],
193
+ children: [/*#__PURE__*/_jsx(Animated.View, {
194
+ style: [styles.backdrop, {
195
+ transform: [{
196
+ translateY: parallax
197
+ },
198
+ // Scale about the bottom edge (translate → scale →
199
+ // translate back, RN has no transform-origin) so pulling
200
+ // down grows the picture upwards into the exposed band by
201
+ // exactly the amount that band opened.
202
+ {
203
+ translateY: HERO_HEIGHT / 2
204
+ }, {
205
+ scale
206
+ }, {
207
+ translateY: -HERO_HEIGHT / 2
208
+ }]
209
+ }],
210
+ children: onPhoto ? /*#__PURE__*/_jsx(Image, {
211
+ testID: `${testIDPrefix}-hero-image`,
212
+ source: {
213
+ uri: imageUri
214
+ },
215
+ style: StyleSheet.absoluteFill,
216
+ resizeMode: "cover"
217
+ }) : /*#__PURE__*/_jsx(View, {
218
+ style: styles.initialsWrap,
219
+ children: /*#__PURE__*/_jsx(Text, {
220
+ testID: `${testIDPrefix}-hero-initials`,
221
+ style: [styles.heroInitials, {
222
+ color: contentColor
223
+ }],
224
+ children: initials
225
+ })
226
+ })
227
+ }), onPhoto && /*#__PURE__*/_jsx(Animated.View, {
228
+ testID: `${testIDPrefix}-hero-blur`,
229
+ pointerEvents: "none",
230
+ style: [StyleSheet.absoluteFill, {
231
+ opacity: collapsed
232
+ }],
233
+ children: /*#__PURE__*/_jsx(FrostLayer, {})
234
+ }), onPhoto && /*#__PURE__*/_jsx(ScrimGradient, {})]
235
+ }), /*#__PURE__*/_jsxs(Animated.View, {
236
+ style: [styles.heroContent, {
237
+ opacity: contentOpacity
238
+ }],
239
+ children: [/*#__PURE__*/_jsxs(View, {
240
+ style: styles.titleRow,
241
+ children: [/*#__PURE__*/_jsx(Text, {
242
+ numberOfLines: 2,
243
+ style: [styles.heroTitle, styles.titleText, {
244
+ color: contentColor
245
+ }, titleStyle],
246
+ children: title
247
+ }), titleAccessory]
248
+ }), !!subtitle && /*#__PURE__*/_jsx(Text, {
249
+ style: [styles.heroSubtitle, {
250
+ color: contentColor,
251
+ opacity: 0.85
252
+ }, subtitleStyle],
253
+ children: subtitle
254
+ }), actions.length > 0 && /*#__PURE__*/_jsx(View, {
255
+ style: styles.actionsRow,
256
+ children: actions.map(action => /*#__PURE__*/_jsxs(TouchableOpacity, {
257
+ testID: `${testIDPrefix}-action-${action.key}`,
258
+ activeOpacity: 0.7,
259
+ style: styles.action,
260
+ onPress: action.onPress,
261
+ children: [/*#__PURE__*/_jsx(View, {
262
+ style: [styles.actionCircle, {
263
+ backgroundColor: circleTint
264
+ }],
265
+ children: action.icon(iconColor)
266
+ }), /*#__PURE__*/_jsx(Text, {
267
+ style: [styles.actionLabel, {
268
+ color: contentColor
269
+ }],
270
+ numberOfLines: 1,
271
+ adjustsFontSizeToFit: true,
272
+ minimumFontScale: 0.8,
273
+ children: action.label
274
+ })]
275
+ }, action.key))
276
+ })]
277
+ })]
278
+ });
279
+ };
280
+
281
+ /**
282
+ * The bar pinned over the hero: back button and the "…" menu are always
283
+ * there, while the frosted picture, small avatar and name fade in as the
284
+ * hero scrolls away — the collapsed state from the design's third screen.
285
+ */
286
+ export const ProfileTopBar = ({
287
+ title,
288
+ subtitle,
289
+ imageUri,
290
+ fallbackColor,
291
+ initials,
292
+ scrollY,
293
+ onBack,
294
+ menu,
295
+ titleStyle,
296
+ testIDPrefix = 'chat-profile'
297
+ }) => {
298
+ const {
299
+ insets,
300
+ barHeight,
301
+ collapseDistance
302
+ } = useHeaderMetrics();
303
+ const collapsed = useCollapse(scrollY, collapseDistance);
304
+ const rise = collapsed.interpolate({
305
+ inputRange: [0, 1],
306
+ outputRange: [10, 0]
307
+ });
308
+ const onPhoto = !!imageUri;
309
+ const contentColor = onPhoto ? '#FFFFFF' : getAvatarTextColor(fallbackColor);
310
+ return /*#__PURE__*/_jsxs(View, {
311
+ pointerEvents: "box-none",
312
+ style: [styles.topBar, {
313
+ height: barHeight,
314
+ paddingTop: insets.top
315
+ }],
316
+ children: [/*#__PURE__*/_jsx(Animated.View, {
317
+ pointerEvents: "none",
318
+ style: [StyleSheet.absoluteFill, {
319
+ backgroundColor: fallbackColor,
320
+ opacity: collapsed
321
+ }],
322
+ children: onPhoto && /*#__PURE__*/_jsxs(_Fragment, {
323
+ children: [/*#__PURE__*/_jsx(Image, {
324
+ source: {
325
+ uri: imageUri
326
+ },
327
+ style: StyleSheet.absoluteFill,
328
+ resizeMode: "cover"
329
+ }), /*#__PURE__*/_jsx(FrostLayer, {})]
330
+ })
331
+ }), /*#__PURE__*/_jsxs(View, {
332
+ style: styles.topBarButtons,
333
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
334
+ testID: `${testIDPrefix}-back`,
335
+ activeOpacity: 0.7,
336
+ onPress: onBack,
337
+ style: styles.roundButton,
338
+ hitSlop: {
339
+ top: 8,
340
+ bottom: 8,
341
+ left: 8,
342
+ right: 8
343
+ },
344
+ children: /*#__PURE__*/_jsx(BackIcon, {
345
+ color: "#FFFFFF"
346
+ })
347
+ }), /*#__PURE__*/_jsx(View, {
348
+ style: styles.topBarRight,
349
+ children: menu
350
+ })]
351
+ }), /*#__PURE__*/_jsxs(Animated.View, {
352
+ testID: `${testIDPrefix}-collapsed-title`,
353
+ pointerEvents: "none",
354
+ style: [styles.collapsedTitle, {
355
+ opacity: collapsed,
356
+ transform: [{
357
+ translateY: rise
358
+ }]
359
+ }],
360
+ children: [/*#__PURE__*/_jsx(View, {
361
+ style: styles.collapsedAvatar,
362
+ children: onPhoto ? /*#__PURE__*/_jsx(Image, {
363
+ source: {
364
+ uri: imageUri
365
+ },
366
+ style: styles.collapsedAvatarImage
367
+ }) : /*#__PURE__*/_jsx(View, {
368
+ style: [styles.collapsedAvatarImage, styles.initialsWrap, {
369
+ backgroundColor: fallbackColor
370
+ }],
371
+ children: /*#__PURE__*/_jsx(Text, {
372
+ style: [styles.collapsedInitials, {
373
+ color: contentColor
374
+ }],
375
+ children: initials
376
+ })
377
+ })
378
+ }), /*#__PURE__*/_jsxs(View, {
379
+ style: styles.collapsedText,
380
+ children: [/*#__PURE__*/_jsx(Text, {
381
+ numberOfLines: 1,
382
+ style: [styles.collapsedName, titleStyle],
383
+ children: title
384
+ }), !!subtitle && /*#__PURE__*/_jsx(Text, {
385
+ numberOfLines: 1,
386
+ style: styles.collapsedSubtitle,
387
+ children: subtitle
388
+ })]
389
+ })]
390
+ })]
391
+ });
392
+ };
393
+ const styles = StyleSheet.create({
394
+ hero: {
395
+ width: '100%',
396
+ height: HERO_HEIGHT,
397
+ justifyContent: 'flex-end'
398
+ },
399
+ // Reaches above the hero and clips its own contents, so the picture can
400
+ // grow up into the over-scroll band without spilling over the cards
401
+ // below when it parallaxes down.
402
+ backdropClip: {
403
+ position: 'absolute',
404
+ left: 0,
405
+ right: 0,
406
+ bottom: 0,
407
+ height: HERO_HEIGHT + OVERSCROLL_REACH,
408
+ overflow: 'hidden'
409
+ },
410
+ backdrop: {
411
+ position: 'absolute',
412
+ left: 0,
413
+ right: 0,
414
+ bottom: 0,
415
+ height: HERO_HEIGHT
416
+ },
417
+ initialsWrap: {
418
+ ...StyleSheet.absoluteFill,
419
+ alignItems: 'center',
420
+ justifyContent: 'center'
421
+ },
422
+ heroInitials: {
423
+ fontSize: 64,
424
+ fontWeight: '600',
425
+ // Sit in the upper half so the name below never collides with it.
426
+ marginBottom: 120
427
+ },
428
+ frostDim: {
429
+ backgroundColor: FROST_DIM
430
+ },
431
+ frostFallback: {
432
+ backgroundColor: 'rgba(0,0,0,0.35)'
433
+ },
434
+ // Only over a photo: keeps white text readable without tinting the flat
435
+ // fallback colour.
436
+ scrim: {
437
+ ...StyleSheet.absoluteFill,
438
+ top: undefined,
439
+ height: SCRIM_HEIGHT,
440
+ justifyContent: 'flex-end'
441
+ },
442
+ heroContent: {
443
+ paddingHorizontal: 20,
444
+ paddingBottom: 20
445
+ },
446
+ // The accessory (the profile's Leave button) is pushed to the far right;
447
+ // the name takes what is left of the row.
448
+ titleRow: {
449
+ flexDirection: 'row',
450
+ alignItems: 'center',
451
+ justifyContent: 'space-between',
452
+ gap: 12
453
+ },
454
+ titleText: {
455
+ flexShrink: 1
456
+ },
457
+ heroTitle: {
458
+ fontSize: 26,
459
+ fontWeight: '600'
460
+ },
461
+ heroSubtitle: {
462
+ fontSize: 14,
463
+ marginTop: 2
464
+ },
465
+ // Centred: Search / Leave / Report.
466
+ actionsRow: {
467
+ flexDirection: 'row',
468
+ justifyContent: 'center',
469
+ marginTop: 20,
470
+ gap: 16
471
+ },
472
+ // minWidth, not a fixed width: translated labels ("Rechercher",
473
+ // "Denunciar") don't fit 64pt and used to wrap mid-word. English labels
474
+ // are shorter than 64pt, so their layout is unchanged.
475
+ action: {
476
+ alignItems: 'center',
477
+ minWidth: 64,
478
+ maxWidth: 96
479
+ },
480
+ actionCircle: {
481
+ width: 56,
482
+ height: 56,
483
+ borderRadius: 28,
484
+ alignItems: 'center',
485
+ justifyContent: 'center'
486
+ },
487
+ actionLabel: {
488
+ fontSize: 12,
489
+ marginTop: 6
490
+ },
491
+ topBar: {
492
+ position: 'absolute',
493
+ top: 0,
494
+ left: 0,
495
+ right: 0,
496
+ zIndex: 10
497
+ },
498
+ topBarButtons: {
499
+ height: TOP_BAR_BUTTONS,
500
+ flexDirection: 'row',
501
+ alignItems: 'flex-end',
502
+ paddingBottom: 4,
503
+ // 20 = the collapsed row's 16pt inset + half the difference between
504
+ // the 48pt avatar and these 40pt buttons, so a button's centre line
505
+ // matches the avatar's once the header is collapsed.
506
+ paddingHorizontal: 20
507
+ },
508
+ roundButton: {
509
+ width: 40,
510
+ height: 40,
511
+ borderRadius: 20,
512
+ backgroundColor: 'rgba(0,0,0,0.28)',
513
+ alignItems: 'center',
514
+ justifyContent: 'center'
515
+ },
516
+ topBarRight: {
517
+ marginLeft: 'auto'
518
+ },
519
+ collapsedTitle: {
520
+ height: TOP_BAR_NAME,
521
+ flexDirection: 'row',
522
+ alignItems: 'center',
523
+ paddingHorizontal: 16,
524
+ gap: 12
525
+ },
526
+ collapsedAvatar: {
527
+ width: 48,
528
+ height: 48,
529
+ borderRadius: 24,
530
+ overflow: 'hidden',
531
+ backgroundColor: 'rgba(255,255,255,0.2)'
532
+ },
533
+ collapsedAvatarImage: {
534
+ width: '100%',
535
+ height: '100%'
536
+ },
537
+ collapsedInitials: {
538
+ fontSize: 18,
539
+ fontWeight: '600'
540
+ },
541
+ collapsedText: {
542
+ flex: 1
543
+ },
544
+ collapsedName: {
545
+ color: '#FFFFFF',
546
+ fontSize: 20,
547
+ fontWeight: '600'
548
+ },
549
+ collapsedSubtitle: {
550
+ color: 'rgba(255,255,255,0.8)',
551
+ fontSize: 13,
552
+ marginTop: 1
553
+ }
554
+ });
555
+ //# sourceMappingURL=ProfileHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Animated","Image","StyleSheet","Text","TouchableOpacity","View","useSafeAreaInsets","BackIcon","getAvatarTextColor","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","HERO_HEIGHT","TOP_BAR_BUTTONS","TOP_BAR_NAME","TOP_BAR_BAND","COLLAPSE_RAMP","BLUR_INTENSITY","FROST_DIM","SCRIM_HEIGHT","SCRIM_BANDS","SCRIM_MAX_ALPHA","OVERSCROLL_REACH","BlurView","requireNativeModule","require","hasNativeBlur","ScrimGradient","pointerEvents","style","styles","scrim","children","Array","from","length","_","i","height","backgroundColor","toFixed","FrostLayer","tint","intensity","absoluteFill","frostDim","frostFallback","useHeaderMetrics","insets","barHeight","top","collapseDistance","Math","max","useCollapse","scrollY","interpolate","inputRange","outputRange","extrapolate","ProfileHero","title","subtitle","imageUri","fallbackColor","initials","actions","titleAccessory","titleStyle","subtitleStyle","testIDPrefix","parallax","extrapolateLeft","extrapolateRight","scale","contentOpacity","collapsed","onPhoto","contentColor","iconColor","circleTint","hero","backdropClip","backdrop","transform","translateY","testID","source","uri","resizeMode","initialsWrap","heroInitials","color","opacity","heroContent","titleRow","numberOfLines","heroTitle","titleText","heroSubtitle","actionsRow","map","action","key","activeOpacity","onPress","actionCircle","icon","actionLabel","adjustsFontSizeToFit","minimumFontScale","label","ProfileTopBar","onBack","menu","rise","topBar","paddingTop","topBarButtons","roundButton","hitSlop","bottom","left","right","topBarRight","collapsedTitle","collapsedAvatar","collapsedAvatarImage","collapsedInitials","collapsedText","collapsedName","collapsedSubtitle","create","width","justifyContent","position","overflow","alignItems","fontSize","fontWeight","marginBottom","undefined","paddingHorizontal","paddingBottom","flexDirection","gap","flexShrink","marginTop","minWidth","maxWidth","borderRadius","zIndex","marginLeft","flex"],"sourceRoot":"../../../../../src","sources":["components/Modals/ProfileHeader/ProfileHeader.tsx"],"mappings":"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","ignoreList":[]}