@kesha-antonov/react-native-chat 5.0.1 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1327) hide show
  1. package/README.md +486 -179
  2. package/lib/Actions.d.ts.map +1 -1
  3. package/lib/Actions.js +121 -42
  4. package/lib/Actions.js.map +1 -1
  5. package/lib/Avatar.d.ts.map +1 -1
  6. package/lib/Avatar.js +171 -86
  7. package/lib/Avatar.js.map +1 -1
  8. package/lib/Bubble/BubbleBody.d.ts +15 -0
  9. package/lib/Bubble/BubbleBody.d.ts.map +1 -0
  10. package/lib/Bubble/BubbleBody.js +218 -0
  11. package/lib/Bubble/BubbleBody.js.map +1 -0
  12. package/lib/Bubble/BubbleContent.d.ts +23 -0
  13. package/lib/Bubble/BubbleContent.d.ts.map +1 -0
  14. package/lib/Bubble/BubbleContent.js +446 -0
  15. package/lib/Bubble/BubbleContent.js.map +1 -0
  16. package/lib/Bubble/BubbleMenu.d.ts +45 -0
  17. package/lib/Bubble/BubbleMenu.d.ts.map +1 -0
  18. package/lib/Bubble/BubbleMenu.js +289 -0
  19. package/lib/Bubble/BubbleMenu.js.map +1 -0
  20. package/lib/Bubble/BubbleMeta.d.ts +17 -0
  21. package/lib/Bubble/BubbleMeta.d.ts.map +1 -0
  22. package/lib/Bubble/BubbleMeta.js +453 -0
  23. package/lib/Bubble/BubbleMeta.js.map +1 -0
  24. package/lib/Bubble/LiftedBubble.d.ts +18 -0
  25. package/lib/Bubble/LiftedBubble.d.ts.map +1 -0
  26. package/lib/Bubble/LiftedBubble.js +109 -0
  27. package/lib/Bubble/LiftedBubble.js.map +1 -0
  28. package/lib/Bubble/PressableBubbleRow.d.ts +33 -0
  29. package/lib/Bubble/PressableBubbleRow.d.ts.map +1 -0
  30. package/lib/Bubble/PressableBubbleRow.js +172 -0
  31. package/lib/Bubble/PressableBubbleRow.js.map +1 -0
  32. package/lib/Bubble/index.d.ts +6 -13
  33. package/lib/Bubble/index.d.ts.map +1 -1
  34. package/lib/Bubble/index.js +379 -509
  35. package/lib/Bubble/index.js.map +1 -1
  36. package/lib/Bubble/layout.d.ts +47 -0
  37. package/lib/Bubble/layout.d.ts.map +1 -0
  38. package/lib/Bubble/layout.js +258 -0
  39. package/lib/Bubble/layout.js.map +1 -0
  40. package/lib/Bubble/styles.d.ts +108 -16
  41. package/lib/Bubble/styles.d.ts.map +1 -1
  42. package/lib/Bubble/styles.js +227 -107
  43. package/lib/Bubble/styles.js.map +1 -1
  44. package/lib/Bubble/types.d.ts +19 -3
  45. package/lib/Bubble/types.d.ts.map +1 -1
  46. package/lib/Bubble/types.js.map +1 -1
  47. package/lib/Chat/Chat.d.ts +5 -0
  48. package/lib/Chat/Chat.d.ts.map +1 -0
  49. package/lib/Chat/Chat.js +464 -0
  50. package/lib/Chat/Chat.js.map +1 -0
  51. package/lib/Chat/ChatBackground.d.ts +16 -0
  52. package/lib/Chat/ChatBackground.d.ts.map +1 -0
  53. package/lib/Chat/ChatBackground.js +43 -0
  54. package/lib/Chat/ChatBackground.js.map +1 -0
  55. package/lib/Chat/ChatKeyboardAvoidingView.js +19 -4
  56. package/lib/Chat/ChatKeyboardAvoidingView.js.map +1 -1
  57. package/lib/Chat/ChatMessageList.d.ts +27 -0
  58. package/lib/Chat/ChatMessageList.d.ts.map +1 -0
  59. package/lib/Chat/ChatMessageList.js +220 -0
  60. package/lib/Chat/ChatMessageList.js.map +1 -0
  61. package/lib/Chat/ChatProviders.d.ts +18 -0
  62. package/lib/Chat/ChatProviders.d.ts.map +1 -0
  63. package/lib/Chat/ChatProviders.js +87 -0
  64. package/lib/Chat/ChatProviders.js.map +1 -0
  65. package/lib/Chat/ChatSafeAreaProvider.d.ts +35 -0
  66. package/lib/Chat/ChatSafeAreaProvider.d.ts.map +1 -0
  67. package/lib/Chat/ChatSafeAreaProvider.js +123 -0
  68. package/lib/Chat/ChatSafeAreaProvider.js.map +1 -0
  69. package/lib/Chat/ChatSelectionBar.d.ts +20 -0
  70. package/lib/Chat/ChatSelectionBar.d.ts.map +1 -0
  71. package/lib/Chat/ChatSelectionBar.js +141 -0
  72. package/lib/Chat/ChatSelectionBar.js.map +1 -0
  73. package/lib/Chat/ChatWrapper.d.ts +11 -0
  74. package/lib/Chat/ChatWrapper.d.ts.map +1 -0
  75. package/lib/Chat/ChatWrapper.js +98 -0
  76. package/lib/Chat/ChatWrapper.js.map +1 -0
  77. package/lib/Chat/ComposerHost.d.ts +20 -0
  78. package/lib/Chat/ComposerHost.d.ts.map +1 -0
  79. package/lib/Chat/ComposerHost.js +118 -0
  80. package/lib/Chat/ComposerHost.js.map +1 -0
  81. package/lib/Chat/index.d.ts +1 -8
  82. package/lib/Chat/index.d.ts.map +1 -1
  83. package/lib/Chat/index.js +1 -337
  84. package/lib/Chat/index.js.map +1 -1
  85. package/lib/Chat/styles.d.ts +14 -2
  86. package/lib/Chat/styles.d.ts.map +1 -1
  87. package/lib/Chat/styles.js +19 -9
  88. package/lib/Chat/styles.js.map +1 -1
  89. package/lib/Chat/types.d.ts +145 -11
  90. package/lib/Chat/types.d.ts.map +1 -1
  91. package/lib/Chat/types.js.map +1 -1
  92. package/lib/Chat/useChatContextValue.d.ts +19 -0
  93. package/lib/Chat/useChatContextValue.d.ts.map +1 -0
  94. package/lib/Chat/useChatContextValue.js +158 -0
  95. package/lib/Chat/useChatContextValue.js.map +1 -0
  96. package/lib/Chat/useChatMedia.d.ts +22 -0
  97. package/lib/Chat/useChatMedia.d.ts.map +1 -0
  98. package/lib/Chat/useChatMedia.js +127 -0
  99. package/lib/Chat/useChatMedia.js.map +1 -0
  100. package/lib/Chat/useChatSelection.d.ts +15 -0
  101. package/lib/Chat/useChatSelection.d.ts.map +1 -0
  102. package/lib/Chat/useChatSelection.js +106 -0
  103. package/lib/Chat/useChatSelection.js.map +1 -0
  104. package/lib/Chat/useComposerHandlers.d.ts +34 -0
  105. package/lib/Chat/useComposerHandlers.d.ts.map +1 -0
  106. package/lib/Chat/useComposerHandlers.js +330 -0
  107. package/lib/Chat/useComposerHandlers.js.map +1 -0
  108. package/lib/Chat/useComposerState.d.ts +27 -0
  109. package/lib/Chat/useComposerState.d.ts.map +1 -0
  110. package/lib/Chat/useComposerState.js +272 -0
  111. package/lib/Chat/useComposerState.js.map +1 -0
  112. package/lib/Chat/useInitialLayout.d.ts +19 -0
  113. package/lib/Chat/useInitialLayout.d.ts.map +1 -0
  114. package/lib/Chat/useInitialLayout.js +70 -0
  115. package/lib/Chat/useInitialLayout.js.map +1 -0
  116. package/lib/Chat/useMessageActions.d.ts +37 -0
  117. package/lib/Chat/useMessageActions.d.ts.map +1 -0
  118. package/lib/Chat/useMessageActions.js +323 -0
  119. package/lib/Chat/useMessageActions.js.map +1 -0
  120. package/lib/Chat/useMessageNavigation.d.ts +21 -0
  121. package/lib/Chat/useMessageNavigation.d.ts.map +1 -0
  122. package/lib/Chat/useMessageNavigation.js +149 -0
  123. package/lib/Chat/useMessageNavigation.js.map +1 -0
  124. package/lib/Chat/useOptionalPeerHints.d.ts +6 -0
  125. package/lib/Chat/useOptionalPeerHints.d.ts.map +1 -0
  126. package/lib/Chat/useOptionalPeerHints.js +63 -0
  127. package/lib/Chat/useOptionalPeerHints.js.map +1 -0
  128. package/lib/Chat/useResolvedReactions.d.ts +31 -0
  129. package/lib/Chat/useResolvedReactions.d.ts.map +1 -0
  130. package/lib/Chat/useResolvedReactions.js +95 -0
  131. package/lib/Chat/useResolvedReactions.js.map +1 -0
  132. package/lib/ChatAvatar.d.ts.map +1 -1
  133. package/lib/ChatAvatar.js +229 -84
  134. package/lib/ChatAvatar.js.map +1 -1
  135. package/lib/ChatContext.js +20 -10
  136. package/lib/ChatContext.js.map +1 -1
  137. package/lib/ChatList/ChatListAvatar.d.ts +21 -0
  138. package/lib/ChatList/ChatListAvatar.d.ts.map +1 -0
  139. package/lib/ChatList/ChatListAvatar.js +178 -0
  140. package/lib/ChatList/ChatListAvatar.js.map +1 -0
  141. package/lib/ChatList/ChatListCell.d.ts +16 -0
  142. package/lib/ChatList/ChatListCell.d.ts.map +1 -0
  143. package/lib/ChatList/ChatListCell.js +506 -0
  144. package/lib/ChatList/ChatListCell.js.map +1 -0
  145. package/lib/ChatList/ChatListShimmer.d.ts +3 -0
  146. package/lib/ChatList/ChatListShimmer.d.ts.map +1 -0
  147. package/lib/ChatList/ChatListShimmer.js +235 -0
  148. package/lib/ChatList/ChatListShimmer.js.map +1 -0
  149. package/lib/ChatList/index.d.ts +16 -0
  150. package/lib/ChatList/index.d.ts.map +1 -0
  151. package/lib/ChatList/index.js +1301 -0
  152. package/lib/ChatList/index.js.map +1 -0
  153. package/lib/ChatList/types.d.ts +128 -0
  154. package/lib/ChatList/types.d.ts.map +1 -0
  155. package/lib/ChatList/types.js +2 -0
  156. package/lib/ChatList/types.js.map +1 -0
  157. package/lib/ChatList/useChatList.d.ts +30 -0
  158. package/lib/ChatList/useChatList.d.ts.map +1 -0
  159. package/lib/ChatList/useChatList.js +211 -0
  160. package/lib/ChatList/useChatList.js.map +1 -0
  161. package/lib/ChatList/utils.d.ts +28 -0
  162. package/lib/ChatList/utils.d.ts.map +1 -0
  163. package/lib/ChatList/utils.js +60 -0
  164. package/lib/ChatList/utils.js.map +1 -0
  165. package/lib/Color.js +19 -19
  166. package/lib/Color.js.map +1 -1
  167. package/lib/Composer.d.ts.map +1 -1
  168. package/lib/Composer.js +148 -70
  169. package/lib/Composer.js.map +1 -1
  170. package/lib/Constant.js +4 -4
  171. package/lib/Constant.js.map +1 -1
  172. package/lib/Day/index.d.ts.map +1 -1
  173. package/lib/Day/index.js +115 -28
  174. package/lib/Day/index.js.map +1 -1
  175. package/lib/Day/styles.d.ts +3 -3
  176. package/lib/Day/styles.d.ts.map +1 -1
  177. package/lib/Day/styles.js +20 -17
  178. package/lib/Day/styles.js.map +1 -1
  179. package/lib/Day/types.js.map +1 -1
  180. package/lib/Icons.d.ts +1 -1
  181. package/lib/Icons.d.ts.map +1 -1
  182. package/lib/Icons.js.map +1 -1
  183. package/lib/InputToolbar/FieldGroup.d.ts +28 -0
  184. package/lib/InputToolbar/FieldGroup.d.ts.map +1 -0
  185. package/lib/InputToolbar/FieldGroup.js +143 -0
  186. package/lib/InputToolbar/FieldGroup.js.map +1 -0
  187. package/lib/InputToolbar/TakePreviewBar.d.ts +17 -0
  188. package/lib/InputToolbar/TakePreviewBar.d.ts.map +1 -0
  189. package/lib/InputToolbar/TakePreviewBar.js +126 -0
  190. package/lib/InputToolbar/TakePreviewBar.js.map +1 -0
  191. package/lib/InputToolbar/animations.d.ts +105 -0
  192. package/lib/InputToolbar/animations.d.ts.map +1 -0
  193. package/lib/InputToolbar/animations.js +238 -0
  194. package/lib/InputToolbar/animations.js.map +1 -0
  195. package/lib/InputToolbar/fragments.d.ts +13 -0
  196. package/lib/InputToolbar/fragments.d.ts.map +1 -0
  197. package/lib/InputToolbar/fragments.js +207 -0
  198. package/lib/InputToolbar/fragments.js.map +1 -0
  199. package/lib/InputToolbar/index.d.ts +7 -0
  200. package/lib/InputToolbar/index.d.ts.map +1 -0
  201. package/lib/InputToolbar/index.js +444 -0
  202. package/lib/InputToolbar/index.js.map +1 -0
  203. package/lib/InputToolbar/recordingOptions.d.ts +14 -0
  204. package/lib/InputToolbar/recordingOptions.d.ts.map +1 -0
  205. package/lib/InputToolbar/recordingOptions.js +38 -0
  206. package/lib/InputToolbar/recordingOptions.js.map +1 -0
  207. package/lib/InputToolbar/styles.d.ts +118 -0
  208. package/lib/InputToolbar/styles.d.ts.map +1 -0
  209. package/lib/InputToolbar/styles.js +139 -0
  210. package/lib/InputToolbar/styles.js.map +1 -0
  211. package/lib/InputToolbar/types.d.ts +77 -0
  212. package/lib/InputToolbar/types.d.ts.map +1 -0
  213. package/lib/InputToolbar/types.js +2 -0
  214. package/lib/InputToolbar/types.js.map +1 -0
  215. package/lib/InputToolbar/useActionsFragment.d.ts +6 -0
  216. package/lib/InputToolbar/useActionsFragment.d.ts.map +1 -0
  217. package/lib/InputToolbar/useActionsFragment.js +139 -0
  218. package/lib/InputToolbar/useActionsFragment.js.map +1 -0
  219. package/lib/InputToolbar/useComposerEditing.d.ts +11 -0
  220. package/lib/InputToolbar/useComposerEditing.d.ts.map +1 -0
  221. package/lib/InputToolbar/useComposerEditing.js +116 -0
  222. package/lib/InputToolbar/useComposerEditing.js.map +1 -0
  223. package/lib/InputToolbar/useEmojiButton.d.ts +14 -0
  224. package/lib/InputToolbar/useEmojiButton.d.ts.map +1 -0
  225. package/lib/InputToolbar/useEmojiButton.js +120 -0
  226. package/lib/InputToolbar/useEmojiButton.js.map +1 -0
  227. package/lib/InputToolbar/useKeyboardInset.d.ts +9 -0
  228. package/lib/InputToolbar/useKeyboardInset.d.ts.map +1 -0
  229. package/lib/InputToolbar/useKeyboardInset.js +25 -0
  230. package/lib/InputToolbar/useKeyboardInset.js.map +1 -0
  231. package/lib/InputToolbar/useRecordMode.d.ts +19 -0
  232. package/lib/InputToolbar/useRecordMode.d.ts.map +1 -0
  233. package/lib/InputToolbar/useRecordMode.js +124 -0
  234. package/lib/InputToolbar/useRecordMode.js.map +1 -0
  235. package/lib/InputToolbar/useRecordTake.d.ts +46 -0
  236. package/lib/InputToolbar/useRecordTake.d.ts.map +1 -0
  237. package/lib/InputToolbar/useRecordTake.js +315 -0
  238. package/lib/InputToolbar/useRecordTake.js.map +1 -0
  239. package/lib/InputToolbar/useReturnAnimations.d.ts +18 -0
  240. package/lib/InputToolbar/useReturnAnimations.d.ts.map +1 -0
  241. package/lib/InputToolbar/useReturnAnimations.js +30 -0
  242. package/lib/InputToolbar/useReturnAnimations.js.map +1 -0
  243. package/lib/InputToolbar/useRightControl.d.ts +40 -0
  244. package/lib/InputToolbar/useRightControl.d.ts.map +1 -0
  245. package/lib/InputToolbar/useRightControl.js +129 -0
  246. package/lib/InputToolbar/useRightControl.js.map +1 -0
  247. package/lib/LoadEarlierMessages.d.ts +2 -0
  248. package/lib/LoadEarlierMessages.d.ts.map +1 -1
  249. package/lib/LoadEarlierMessages.js +153 -40
  250. package/lib/LoadEarlierMessages.js.map +1 -1
  251. package/lib/Message/SwipeToReply.d.ts +23 -0
  252. package/lib/Message/SwipeToReply.d.ts.map +1 -0
  253. package/lib/Message/SwipeToReply.js +337 -0
  254. package/lib/Message/SwipeToReply.js.map +1 -0
  255. package/lib/Message/index.d.ts.map +1 -1
  256. package/lib/Message/index.js +415 -176
  257. package/lib/Message/index.js.map +1 -1
  258. package/lib/Message/styles.d.ts +2 -2
  259. package/lib/Message/styles.js +14 -14
  260. package/lib/Message/styles.js.map +1 -1
  261. package/lib/Message/types.d.ts +5 -0
  262. package/lib/Message/types.d.ts.map +1 -1
  263. package/lib/Message/types.js.map +1 -1
  264. package/lib/MessageAudio.d.ts.map +1 -1
  265. package/lib/MessageAudio.js +647 -107
  266. package/lib/MessageAudio.js.map +1 -1
  267. package/lib/MessageFile.d.ts +11 -0
  268. package/lib/MessageFile.d.ts.map +1 -0
  269. package/lib/MessageFile.js +315 -0
  270. package/lib/MessageFile.js.map +1 -0
  271. package/lib/MessageImage.d.ts +2 -0
  272. package/lib/MessageImage.d.ts.map +1 -1
  273. package/lib/MessageImage.js +430 -161
  274. package/lib/MessageImage.js.map +1 -1
  275. package/lib/MessageLocation.d.ts.map +1 -1
  276. package/lib/MessageLocation.js +180 -68
  277. package/lib/MessageLocation.js.map +1 -1
  278. package/lib/MessageText.d.ts +8 -1
  279. package/lib/MessageText.d.ts.map +1 -1
  280. package/lib/MessageText.js +261 -69
  281. package/lib/MessageText.js.map +1 -1
  282. package/lib/MessageVideo/ExpoVideoPlayer.d.ts +6 -0
  283. package/lib/MessageVideo/ExpoVideoPlayer.d.ts.map +1 -0
  284. package/lib/MessageVideo/ExpoVideoPlayer.js +68 -0
  285. package/lib/MessageVideo/ExpoVideoPlayer.js.map +1 -0
  286. package/lib/MessageVideo/MirroredVideo.d.ts +17 -0
  287. package/lib/MessageVideo/MirroredVideo.d.ts.map +1 -0
  288. package/lib/MessageVideo/MirroredVideo.js +223 -0
  289. package/lib/MessageVideo/MirroredVideo.js.map +1 -0
  290. package/lib/MessageVideo/RoundNotePlayer.d.ts +4 -0
  291. package/lib/MessageVideo/RoundNotePlayer.d.ts.map +1 -0
  292. package/lib/MessageVideo/RoundNotePlayer.js +560 -0
  293. package/lib/MessageVideo/RoundNotePlayer.js.map +1 -0
  294. package/lib/MessageVideo/RoundTranscription.d.ts +27 -0
  295. package/lib/MessageVideo/RoundTranscription.d.ts.map +1 -0
  296. package/lib/MessageVideo/RoundTranscription.js +151 -0
  297. package/lib/MessageVideo/RoundTranscription.js.map +1 -0
  298. package/lib/MessageVideo/VideoTransferOverlay.d.ts +11 -0
  299. package/lib/MessageVideo/VideoTransferOverlay.d.ts.map +1 -0
  300. package/lib/MessageVideo/VideoTransferOverlay.js +88 -0
  301. package/lib/MessageVideo/VideoTransferOverlay.js.map +1 -0
  302. package/lib/MessageVideo/constants.d.ts +13 -0
  303. package/lib/MessageVideo/constants.d.ts.map +1 -0
  304. package/lib/MessageVideo/constants.js +15 -0
  305. package/lib/MessageVideo/constants.js.map +1 -0
  306. package/lib/{MessageVideo.d.ts → MessageVideo/index.d.ts} +2 -2
  307. package/lib/MessageVideo/index.d.ts.map +1 -0
  308. package/lib/MessageVideo/index.js +92 -0
  309. package/lib/MessageVideo/index.js.map +1 -0
  310. package/lib/MessageVideo/liftedMedia.d.ts +13 -0
  311. package/lib/MessageVideo/liftedMedia.d.ts.map +1 -0
  312. package/lib/MessageVideo/liftedMedia.js +106 -0
  313. package/lib/MessageVideo/liftedMedia.js.map +1 -0
  314. package/lib/MessageVideo/styles.d.ts +71 -0
  315. package/lib/MessageVideo/styles.d.ts.map +1 -0
  316. package/lib/MessageVideo/styles.js +78 -0
  317. package/lib/MessageVideo/styles.js.map +1 -0
  318. package/lib/MessageVideo/types.d.ts +27 -0
  319. package/lib/MessageVideo/types.d.ts.map +1 -0
  320. package/lib/MessageVideo/types.js +2 -0
  321. package/lib/MessageVideo/types.js.map +1 -0
  322. package/lib/MessageVideo/useNoteGrow.d.ts +16 -0
  323. package/lib/MessageVideo/useNoteGrow.d.ts.map +1 -0
  324. package/lib/MessageVideo/useNoteGrow.js +122 -0
  325. package/lib/MessageVideo/useNoteGrow.js.map +1 -0
  326. package/lib/MessageVideo/useNotePlayer.d.ts +14 -0
  327. package/lib/MessageVideo/useNotePlayer.d.ts.map +1 -0
  328. package/lib/MessageVideo/useNotePlayer.js +142 -0
  329. package/lib/MessageVideo/useNotePlayer.js.map +1 -0
  330. package/lib/MessageVideo/useRingSeek.d.ts +16 -0
  331. package/lib/MessageVideo/useRingSeek.d.ts.map +1 -0
  332. package/lib/MessageVideo/useRingSeek.js +157 -0
  333. package/lib/MessageVideo/useRingSeek.js.map +1 -0
  334. package/lib/MessageVideo/useRoundNotePlayback.d.ts +46 -0
  335. package/lib/MessageVideo/useRoundNotePlayback.d.ts.map +1 -0
  336. package/lib/MessageVideo/useRoundNotePlayback.js +508 -0
  337. package/lib/MessageVideo/useRoundNotePlayback.js.map +1 -0
  338. package/lib/MessageVideo/useSendFlightReveal.d.ts +9 -0
  339. package/lib/MessageVideo/useSendFlightReveal.d.ts.map +1 -0
  340. package/lib/MessageVideo/useSendFlightReveal.js +85 -0
  341. package/lib/MessageVideo/useSendFlightReveal.js.map +1 -0
  342. package/lib/MessageVideo/videoPlayers.d.ts +8 -0
  343. package/lib/MessageVideo/videoPlayers.d.ts.map +1 -0
  344. package/lib/MessageVideo/videoPlayers.js +33 -0
  345. package/lib/MessageVideo/videoPlayers.js.map +1 -0
  346. package/lib/MessagesContainer/components/DayAnimated/debug.js +38 -24
  347. package/lib/MessagesContainer/components/DayAnimated/debug.js.map +1 -1
  348. package/lib/MessagesContainer/components/DayAnimated/index.d.ts +1 -1
  349. package/lib/MessagesContainer/components/DayAnimated/index.d.ts.map +1 -1
  350. package/lib/MessagesContainer/components/DayAnimated/index.js +244 -112
  351. package/lib/MessagesContainer/components/DayAnimated/index.js.map +1 -1
  352. package/lib/MessagesContainer/components/DayAnimated/styles.d.ts +3 -3
  353. package/lib/MessagesContainer/components/DayAnimated/styles.js +8 -8
  354. package/lib/MessagesContainer/components/DayAnimated/styles.js.map +1 -1
  355. package/lib/MessagesContainer/components/DayAnimated/types.d.ts +4 -2
  356. package/lib/MessagesContainer/components/DayAnimated/types.d.ts.map +1 -1
  357. package/lib/MessagesContainer/components/DayAnimated/types.js.map +1 -1
  358. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.d.ts.map +1 -1
  359. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js +34 -25
  360. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js.map +1 -1
  361. package/lib/MessagesContainer/components/Item/index.d.ts +3 -4
  362. package/lib/MessagesContainer/components/Item/index.d.ts.map +1 -1
  363. package/lib/MessagesContainer/components/Item/index.js +289 -119
  364. package/lib/MessagesContainer/components/Item/index.js.map +1 -1
  365. package/lib/MessagesContainer/components/Item/types.d.ts +5 -0
  366. package/lib/MessagesContainer/components/Item/types.d.ts.map +1 -1
  367. package/lib/MessagesContainer/components/Item/types.js.map +1 -1
  368. package/lib/MessagesContainer/components/PageDownCounter.d.ts +14 -0
  369. package/lib/MessagesContainer/components/PageDownCounter.d.ts.map +1 -0
  370. package/lib/MessagesContainer/components/PageDownCounter.js +209 -0
  371. package/lib/MessagesContainer/components/PageDownCounter.js.map +1 -0
  372. package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts +21 -0
  373. package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts.map +1 -0
  374. package/lib/MessagesContainer/components/ScrollToBottomButton.js +195 -0
  375. package/lib/MessagesContainer/components/ScrollToBottomButton.js.map +1 -0
  376. package/lib/MessagesContainer/components/dayLayout.d.ts +2 -2
  377. package/lib/MessagesContainer/components/dayLayout.d.ts.map +1 -1
  378. package/lib/MessagesContainer/components/dayLayout.js +18 -13
  379. package/lib/MessagesContainer/components/dayLayout.js.map +1 -1
  380. package/lib/MessagesContainer/index.d.ts.map +1 -1
  381. package/lib/MessagesContainer/index.js +361 -420
  382. package/lib/MessagesContainer/index.js.map +1 -1
  383. package/lib/MessagesContainer/listState.d.ts +18 -0
  384. package/lib/MessagesContainer/listState.d.ts.map +1 -0
  385. package/lib/MessagesContainer/listState.js +25 -0
  386. package/lib/MessagesContainer/listState.js.map +1 -0
  387. package/lib/MessagesContainer/listTransitions.d.ts +10 -0
  388. package/lib/MessagesContainer/listTransitions.d.ts.map +1 -0
  389. package/lib/MessagesContainer/listTransitions.js +12 -0
  390. package/lib/MessagesContainer/listTransitions.js.map +1 -0
  391. package/lib/MessagesContainer/pageDownReturn.d.ts +11 -0
  392. package/lib/MessagesContainer/pageDownReturn.d.ts.map +1 -0
  393. package/lib/MessagesContainer/pageDownReturn.js +9 -0
  394. package/lib/MessagesContainer/pageDownReturn.js.map +1 -0
  395. package/lib/MessagesContainer/rowConfig.d.ts +39 -0
  396. package/lib/MessagesContainer/rowConfig.d.ts.map +1 -0
  397. package/lib/MessagesContainer/rowConfig.js +161 -0
  398. package/lib/MessagesContainer/rowConfig.js.map +1 -0
  399. package/lib/MessagesContainer/rowStore.d.ts +37 -0
  400. package/lib/MessagesContainer/rowStore.d.ts.map +1 -0
  401. package/lib/MessagesContainer/rowStore.js +140 -0
  402. package/lib/MessagesContainer/rowStore.js.map +1 -0
  403. package/lib/MessagesContainer/styles.d.ts +37 -31
  404. package/lib/MessagesContainer/styles.d.ts.map +1 -1
  405. package/lib/MessagesContainer/styles.js +75 -54
  406. package/lib/MessagesContainer/styles.js.map +1 -1
  407. package/lib/MessagesContainer/types.d.ts +33 -30
  408. package/lib/MessagesContainer/types.d.ts.map +1 -1
  409. package/lib/MessagesContainer/types.js +1 -9
  410. package/lib/MessagesContainer/types.js.map +1 -1
  411. package/lib/MessagesContainer/useCellLayouts.d.ts +17 -0
  412. package/lib/MessagesContainer/useCellLayouts.d.ts.map +1 -0
  413. package/lib/MessagesContainer/useCellLayouts.js +133 -0
  414. package/lib/MessagesContainer/useCellLayouts.js.map +1 -0
  415. package/lib/MessagesContainer/useDaysPositions.d.ts +18 -0
  416. package/lib/MessagesContainer/useDaysPositions.d.ts.map +1 -0
  417. package/lib/MessagesContainer/useDaysPositions.js +109 -0
  418. package/lib/MessagesContainer/useDaysPositions.js.map +1 -0
  419. package/lib/MessagesContainer/useListChrome.d.ts +14 -0
  420. package/lib/MessagesContainer/useListChrome.d.ts.map +1 -0
  421. package/lib/MessagesContainer/useListChrome.js +176 -0
  422. package/lib/MessagesContainer/useListChrome.js.map +1 -0
  423. package/lib/MessagesContainer/useListMetrics.d.ts +32 -0
  424. package/lib/MessagesContainer/useListMetrics.d.ts.map +1 -0
  425. package/lib/MessagesContainer/useListMetrics.js +176 -0
  426. package/lib/MessagesContainer/useListMetrics.js.map +1 -0
  427. package/lib/MessagesContainer/useMessageRows.d.ts +46 -0
  428. package/lib/MessagesContainer/useMessageRows.d.ts.map +1 -0
  429. package/lib/MessagesContainer/useMessageRows.js +228 -0
  430. package/lib/MessagesContainer/useMessageRows.js.map +1 -0
  431. package/lib/MessagesContainer/usePageDownUnread.d.ts +27 -0
  432. package/lib/MessagesContainer/usePageDownUnread.d.ts.map +1 -0
  433. package/lib/MessagesContainer/usePageDownUnread.js +152 -0
  434. package/lib/MessagesContainer/usePageDownUnread.js.map +1 -0
  435. package/lib/MessagesContainer/useScrollActivity.d.ts +13 -0
  436. package/lib/MessagesContainer/useScrollActivity.d.ts.map +1 -0
  437. package/lib/MessagesContainer/useScrollActivity.js +84 -0
  438. package/lib/MessagesContainer/useScrollActivity.js.map +1 -0
  439. package/lib/MessagesContainer/useScrollToBottom.d.ts +26 -0
  440. package/lib/MessagesContainer/useScrollToBottom.d.ts.map +1 -0
  441. package/lib/MessagesContainer/useScrollToBottom.js +164 -0
  442. package/lib/MessagesContainer/useScrollToBottom.js.map +1 -0
  443. package/lib/MessagesContainer/useTapToClosePanels.d.ts +7 -0
  444. package/lib/MessagesContainer/useTapToClosePanels.d.ts.map +1 -0
  445. package/lib/MessagesContainer/useTapToClosePanels.js +55 -0
  446. package/lib/MessagesContainer/useTapToClosePanels.js.map +1 -0
  447. package/lib/MessagesContainer/viewability.d.ts +9 -0
  448. package/lib/MessagesContainer/viewability.d.ts.map +1 -0
  449. package/lib/MessagesContainer/viewability.js +110 -0
  450. package/lib/MessagesContainer/viewability.js.map +1 -0
  451. package/lib/Models.d.ts +188 -3
  452. package/lib/Models.d.ts.map +1 -1
  453. package/lib/Models.js.map +1 -1
  454. package/lib/QuickReplies.js +234 -101
  455. package/lib/QuickReplies.js.map +1 -1
  456. package/lib/Reactions/MessageReactions.d.ts +5 -0
  457. package/lib/Reactions/MessageReactions.d.ts.map +1 -1
  458. package/lib/Reactions/MessageReactions.js +359 -80
  459. package/lib/Reactions/MessageReactions.js.map +1 -1
  460. package/lib/Reactions/ReactionPicker.d.ts +5 -3
  461. package/lib/Reactions/ReactionPicker.d.ts.map +1 -1
  462. package/lib/Reactions/ReactionPicker.js +68 -82
  463. package/lib/Reactions/ReactionPicker.js.map +1 -1
  464. package/lib/Reactions/index.js +1 -0
  465. package/lib/Reactions/index.js.map +1 -1
  466. package/lib/Reactions/types.d.ts +49 -5
  467. package/lib/Reactions/types.d.ts.map +1 -1
  468. package/lib/Reactions/types.js.map +1 -1
  469. package/lib/Reply/index.js.map +1 -1
  470. package/lib/Reply/types.d.ts +19 -3
  471. package/lib/Reply/types.d.ts.map +1 -1
  472. package/lib/Reply/types.js.map +1 -1
  473. package/lib/Send.d.ts +2 -2
  474. package/lib/Send.d.ts.map +1 -1
  475. package/lib/Send.js +218 -47
  476. package/lib/Send.js.map +1 -1
  477. package/lib/SystemMessage.d.ts.map +1 -1
  478. package/lib/SystemMessage.js +106 -37
  479. package/lib/SystemMessage.js.map +1 -1
  480. package/lib/Theme.d.ts +320 -23
  481. package/lib/Theme.d.ts.map +1 -1
  482. package/lib/Theme.js +548 -119
  483. package/lib/Theme.js.map +1 -1
  484. package/lib/Time.d.ts +7 -0
  485. package/lib/Time.d.ts.map +1 -1
  486. package/lib/Time.js +122 -30
  487. package/lib/Time.js.map +1 -1
  488. package/lib/TypingIndicator/index.d.ts +9 -1
  489. package/lib/TypingIndicator/index.d.ts.map +1 -1
  490. package/lib/TypingIndicator/index.js +318 -94
  491. package/lib/TypingIndicator/index.js.map +1 -1
  492. package/lib/TypingIndicator/styles.d.ts +6 -2
  493. package/lib/TypingIndicator/styles.d.ts.map +1 -1
  494. package/lib/TypingIndicator/styles.js +22 -18
  495. package/lib/TypingIndicator/styles.js.map +1 -1
  496. package/lib/TypingIndicator/types.js.map +1 -1
  497. package/lib/attachments/AttachmentButton.d.ts +18 -0
  498. package/lib/attachments/AttachmentButton.d.ts.map +1 -0
  499. package/lib/attachments/AttachmentButton.js +110 -0
  500. package/lib/attachments/AttachmentButton.js.map +1 -0
  501. package/lib/attachments/AttachmentMenu/CaptionBar.d.ts +15 -0
  502. package/lib/attachments/AttachmentMenu/CaptionBar.d.ts.map +1 -0
  503. package/lib/attachments/AttachmentMenu/CaptionBar.js +165 -0
  504. package/lib/attachments/AttachmentMenu/CaptionBar.js.map +1 -0
  505. package/lib/attachments/AttachmentMenu/GalleryCell.d.ts +14 -0
  506. package/lib/attachments/AttachmentMenu/GalleryCell.d.ts.map +1 -0
  507. package/lib/attachments/AttachmentMenu/GalleryCell.js +267 -0
  508. package/lib/attachments/AttachmentMenu/GalleryCell.js.map +1 -0
  509. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts +18 -0
  510. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts.map +1 -0
  511. package/lib/attachments/AttachmentMenu/GalleryGrid.js +184 -0
  512. package/lib/attachments/AttachmentMenu/GalleryGrid.js.map +1 -0
  513. package/lib/attachments/AttachmentMenu/TabBar.d.ts +14 -0
  514. package/lib/attachments/AttachmentMenu/TabBar.d.ts.map +1 -0
  515. package/lib/attachments/AttachmentMenu/TabBar.js +127 -0
  516. package/lib/attachments/AttachmentMenu/TabBar.js.map +1 -0
  517. package/lib/attachments/AttachmentMenu/TabButton.d.ts +15 -0
  518. package/lib/attachments/AttachmentMenu/TabButton.d.ts.map +1 -0
  519. package/lib/attachments/AttachmentMenu/TabButton.js +219 -0
  520. package/lib/attachments/AttachmentMenu/TabButton.js.map +1 -0
  521. package/lib/attachments/AttachmentMenu/TabPanel.d.ts +17 -0
  522. package/lib/attachments/AttachmentMenu/TabPanel.d.ts.map +1 -0
  523. package/lib/attachments/AttachmentMenu/TabPanel.js +170 -0
  524. package/lib/attachments/AttachmentMenu/TabPanel.js.map +1 -0
  525. package/lib/attachments/AttachmentMenu/constants.d.ts +54 -0
  526. package/lib/attachments/AttachmentMenu/constants.d.ts.map +1 -0
  527. package/lib/attachments/AttachmentMenu/constants.js +79 -0
  528. package/lib/attachments/AttachmentMenu/constants.js.map +1 -0
  529. package/lib/attachments/AttachmentMenu/index.d.ts +16 -0
  530. package/lib/attachments/AttachmentMenu/index.d.ts.map +1 -0
  531. package/lib/attachments/AttachmentMenu/index.js +498 -0
  532. package/lib/attachments/AttachmentMenu/index.js.map +1 -0
  533. package/lib/attachments/AttachmentMenu/styles.d.ts +259 -0
  534. package/lib/attachments/AttachmentMenu/styles.d.ts.map +1 -0
  535. package/lib/attachments/AttachmentMenu/styles.js +262 -0
  536. package/lib/attachments/AttachmentMenu/styles.js.map +1 -0
  537. package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts +14 -0
  538. package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts.map +1 -0
  539. package/lib/attachments/AttachmentMenu/useSheetPresence.js +74 -0
  540. package/lib/attachments/AttachmentMenu/useSheetPresence.js.map +1 -0
  541. package/lib/attachments/buildMessages.d.ts +36 -0
  542. package/lib/attachments/buildMessages.d.ts.map +1 -0
  543. package/lib/attachments/buildMessages.js +192 -0
  544. package/lib/attachments/buildMessages.js.map +1 -0
  545. package/lib/attachments/gallery.d.ts +28 -0
  546. package/lib/attachments/gallery.d.ts.map +1 -0
  547. package/lib/attachments/gallery.js +245 -0
  548. package/lib/attachments/gallery.js.map +1 -0
  549. package/lib/attachments/types.d.ts +69 -0
  550. package/lib/attachments/types.d.ts.map +1 -0
  551. package/lib/attachments/types.js +2 -0
  552. package/lib/attachments/types.js.map +1 -0
  553. package/lib/colorUtils.d.ts +24 -0
  554. package/lib/colorUtils.d.ts.map +1 -0
  555. package/lib/colorUtils.js +71 -0
  556. package/lib/colorUtils.js.map +1 -0
  557. package/lib/components/AttachmentSheet.d.ts +1 -1
  558. package/lib/components/AttachmentSheet.d.ts.map +1 -1
  559. package/lib/components/AttachmentSheet.js +515 -155
  560. package/lib/components/AttachmentSheet.js.map +1 -1
  561. package/lib/components/BasicMarkdown.d.ts +7 -1
  562. package/lib/components/BasicMarkdown.d.ts.map +1 -1
  563. package/lib/components/BasicMarkdown.js +234 -184
  564. package/lib/components/BasicMarkdown.js.map +1 -1
  565. package/lib/components/BubbleBackground.d.ts +55 -0
  566. package/lib/components/BubbleBackground.d.ts.map +1 -0
  567. package/lib/components/BubbleBackground.js +513 -0
  568. package/lib/components/BubbleBackground.js.map +1 -0
  569. package/lib/components/ChatEmpty.d.ts +18 -0
  570. package/lib/components/ChatEmpty.d.ts.map +1 -0
  571. package/lib/components/ChatEmpty.js +125 -0
  572. package/lib/components/ChatEmpty.js.map +1 -0
  573. package/lib/components/ChatLoadingOverlay.d.ts +10 -0
  574. package/lib/components/ChatLoadingOverlay.d.ts.map +1 -0
  575. package/lib/components/ChatLoadingOverlay.js +89 -0
  576. package/lib/components/ChatLoadingOverlay.js.map +1 -0
  577. package/lib/components/ChatOverlay.d.ts +9 -0
  578. package/lib/components/ChatOverlay.d.ts.map +1 -0
  579. package/lib/components/ChatOverlay.js +60 -0
  580. package/lib/components/ChatOverlay.js.map +1 -0
  581. package/lib/components/ChatWallpaper.d.ts +32 -0
  582. package/lib/components/ChatWallpaper.d.ts.map +1 -0
  583. package/lib/components/ChatWallpaper.js +277 -0
  584. package/lib/components/ChatWallpaper.js.map +1 -0
  585. package/lib/components/ContextMenu/MenuCard.d.ts +21 -0
  586. package/lib/components/ContextMenu/MenuCard.d.ts.map +1 -0
  587. package/lib/components/ContextMenu/MenuCard.js +265 -0
  588. package/lib/components/ContextMenu/MenuCard.js.map +1 -0
  589. package/lib/components/ContextMenu/ReactionButton.d.ts +15 -0
  590. package/lib/components/ContextMenu/ReactionButton.d.ts.map +1 -0
  591. package/lib/components/ContextMenu/ReactionButton.js +116 -0
  592. package/lib/components/ContextMenu/ReactionButton.js.map +1 -0
  593. package/lib/components/ContextMenu/ReactionFlight.d.ts +14 -0
  594. package/lib/components/ContextMenu/ReactionFlight.d.ts.map +1 -0
  595. package/lib/components/ContextMenu/ReactionFlight.js +111 -0
  596. package/lib/components/ContextMenu/ReactionFlight.js.map +1 -0
  597. package/lib/components/ContextMenu/ReactionsBar.d.ts +35 -0
  598. package/lib/components/ContextMenu/ReactionsBar.d.ts.map +1 -0
  599. package/lib/components/ContextMenu/ReactionsBar.js +354 -0
  600. package/lib/components/ContextMenu/ReactionsBar.js.map +1 -0
  601. package/lib/components/ContextMenu/constants.d.ts +68 -0
  602. package/lib/components/ContextMenu/constants.d.ts.map +1 -0
  603. package/lib/components/ContextMenu/constants.js +105 -0
  604. package/lib/components/ContextMenu/constants.js.map +1 -0
  605. package/lib/components/ContextMenu/index.d.ts +12 -0
  606. package/lib/components/ContextMenu/index.d.ts.map +1 -0
  607. package/lib/components/ContextMenu/index.js +476 -0
  608. package/lib/components/ContextMenu/index.js.map +1 -0
  609. package/lib/components/ContextMenu/placement.d.ts +50 -0
  610. package/lib/components/ContextMenu/placement.d.ts.map +1 -0
  611. package/lib/components/ContextMenu/placement.js +117 -0
  612. package/lib/components/ContextMenu/placement.js.map +1 -0
  613. package/lib/components/ContextMenu/styles.d.ts +199 -0
  614. package/lib/components/ContextMenu/styles.d.ts.map +1 -0
  615. package/lib/components/ContextMenu/styles.js +169 -0
  616. package/lib/components/ContextMenu/styles.js.map +1 -0
  617. package/lib/components/ContextMenu/types.d.ts +62 -0
  618. package/lib/components/ContextMenu/types.d.ts.map +1 -0
  619. package/lib/components/ContextMenu/types.js +2 -0
  620. package/lib/components/ContextMenu/types.js.map +1 -0
  621. package/lib/components/ContextMenu/useExpandPanel.d.ts +11 -0
  622. package/lib/components/ContextMenu/useExpandPanel.d.ts.map +1 -0
  623. package/lib/components/ContextMenu/useExpandPanel.js +81 -0
  624. package/lib/components/ContextMenu/useExpandPanel.js.map +1 -0
  625. package/lib/components/ContextMenu/useMenuPresence.d.ts +17 -0
  626. package/lib/components/ContextMenu/useMenuPresence.d.ts.map +1 -0
  627. package/lib/components/ContextMenu/useMenuPresence.js +125 -0
  628. package/lib/components/ContextMenu/useMenuPresence.js.map +1 -0
  629. package/lib/components/FloatingRoundNote.d.ts +13 -0
  630. package/lib/components/FloatingRoundNote.d.ts.map +1 -0
  631. package/lib/components/FloatingRoundNote.js +541 -0
  632. package/lib/components/FloatingRoundNote.js.map +1 -0
  633. package/lib/components/GlassSurface.d.ts +16 -0
  634. package/lib/components/GlassSurface.d.ts.map +1 -0
  635. package/lib/components/GlassSurface.js +114 -0
  636. package/lib/components/GlassSurface.js.map +1 -0
  637. package/lib/components/Icon.js +57 -8
  638. package/lib/components/Icon.js.map +1 -1
  639. package/lib/components/LinkPreviewCard.d.ts +36 -0
  640. package/lib/components/LinkPreviewCard.d.ts.map +1 -0
  641. package/lib/components/LinkPreviewCard.js +416 -0
  642. package/lib/components/LinkPreviewCard.js.map +1 -0
  643. package/lib/components/LucideIcon.d.ts.map +1 -1
  644. package/lib/components/LucideIcon.js +103 -106
  645. package/lib/components/LucideIcon.js.map +1 -1
  646. package/lib/components/MarkdownMessageText.d.ts +17 -2
  647. package/lib/components/MarkdownMessageText.d.ts.map +1 -1
  648. package/lib/components/MarkdownMessageText.js +270 -22
  649. package/lib/components/MarkdownMessageText.js.map +1 -1
  650. package/lib/components/MediaCard.d.ts.map +1 -1
  651. package/lib/components/MediaCard.js +223 -85
  652. package/lib/components/MediaCard.js.map +1 -1
  653. package/lib/components/MediaControls.js +1094 -450
  654. package/lib/components/MediaControls.js.map +1 -1
  655. package/lib/components/MediaLoader.d.ts +21 -0
  656. package/lib/components/MediaLoader.d.ts.map +1 -0
  657. package/lib/components/MediaLoader.js +61 -0
  658. package/lib/components/MediaLoader.js.map +1 -0
  659. package/lib/components/MessageReply.d.ts +2 -2
  660. package/lib/components/MessageReply.d.ts.map +1 -1
  661. package/lib/components/MessageReply.js +266 -83
  662. package/lib/components/MessageReply.js.map +1 -1
  663. package/lib/components/MessageStatus.d.ts +23 -0
  664. package/lib/components/MessageStatus.d.ts.map +1 -0
  665. package/lib/components/MessageStatus.js +499 -0
  666. package/lib/components/MessageStatus.js.map +1 -0
  667. package/lib/components/NoteIndicators.d.ts +25 -0
  668. package/lib/components/NoteIndicators.d.ts.map +1 -0
  669. package/lib/components/NoteIndicators.js +206 -0
  670. package/lib/components/NoteIndicators.js.map +1 -0
  671. package/lib/components/NowPlayingBar.d.ts +15 -0
  672. package/lib/components/NowPlayingBar.d.ts.map +1 -0
  673. package/lib/components/NowPlayingBar.js +261 -0
  674. package/lib/components/NowPlayingBar.js.map +1 -0
  675. package/lib/components/PlayPauseIcon.d.ts +13 -0
  676. package/lib/components/PlayPauseIcon.d.ts.map +1 -0
  677. package/lib/components/PlayPauseIcon.js +187 -0
  678. package/lib/components/PlayPauseIcon.js.map +1 -0
  679. package/lib/components/PlaybackSpeedPill.d.ts +11 -0
  680. package/lib/components/PlaybackSpeedPill.d.ts.map +1 -0
  681. package/lib/components/PlaybackSpeedPill.js +350 -0
  682. package/lib/components/PlaybackSpeedPill.js.map +1 -0
  683. package/lib/components/RadialProgress.d.ts +70 -0
  684. package/lib/components/RadialProgress.d.ts.map +1 -0
  685. package/lib/components/RadialProgress.js +864 -0
  686. package/lib/components/RadialProgress.js.map +1 -0
  687. package/lib/components/RecordButton/LockPill.d.ts +27 -0
  688. package/lib/components/RecordButton/LockPill.d.ts.map +1 -0
  689. package/lib/components/RecordButton/LockPill.js +182 -0
  690. package/lib/components/RecordButton/LockPill.js.map +1 -0
  691. package/lib/components/RecordButton/ModeButton.d.ts +18 -0
  692. package/lib/components/RecordButton/ModeButton.d.ts.map +1 -0
  693. package/lib/components/RecordButton/ModeButton.js +154 -0
  694. package/lib/components/RecordButton/ModeButton.js.map +1 -0
  695. package/lib/components/RecordButton/ResumeButton.d.ts +20 -0
  696. package/lib/components/RecordButton/ResumeButton.d.ts.map +1 -0
  697. package/lib/components/RecordButton/ResumeButton.js +63 -0
  698. package/lib/components/RecordButton/ResumeButton.js.map +1 -0
  699. package/lib/components/RecordButton/Tooltips.d.ts +20 -0
  700. package/lib/components/RecordButton/Tooltips.d.ts.map +1 -0
  701. package/lib/components/RecordButton/Tooltips.js +191 -0
  702. package/lib/components/RecordButton/Tooltips.js.map +1 -0
  703. package/lib/components/RecordButton/ViewOnceButton.d.ts +16 -0
  704. package/lib/components/RecordButton/ViewOnceButton.d.ts.map +1 -0
  705. package/lib/components/RecordButton/ViewOnceButton.js +96 -0
  706. package/lib/components/RecordButton/ViewOnceButton.js.map +1 -0
  707. package/lib/components/RecordButton/constants.d.ts +52 -0
  708. package/lib/components/RecordButton/constants.d.ts.map +1 -0
  709. package/lib/components/RecordButton/constants.js +58 -0
  710. package/lib/components/RecordButton/constants.js.map +1 -0
  711. package/lib/components/RecordButton/index.d.ts +14 -0
  712. package/lib/components/RecordButton/index.d.ts.map +1 -0
  713. package/lib/components/RecordButton/index.js +382 -0
  714. package/lib/components/RecordButton/index.js.map +1 -0
  715. package/lib/components/RecordButton/styles.d.ts +155 -0
  716. package/lib/components/RecordButton/styles.d.ts.map +1 -0
  717. package/lib/components/RecordButton/styles.js +161 -0
  718. package/lib/components/RecordButton/styles.js.map +1 -0
  719. package/lib/components/RecordButton/types.d.ts +63 -0
  720. package/lib/components/RecordButton/types.d.ts.map +1 -0
  721. package/lib/components/RecordButton/types.js +2 -0
  722. package/lib/components/RecordButton/types.js.map +1 -0
  723. package/lib/components/RecordButton/useRecordGesture.d.ts +28 -0
  724. package/lib/components/RecordButton/useRecordGesture.d.ts.map +1 -0
  725. package/lib/components/RecordButton/useRecordGesture.js +263 -0
  726. package/lib/components/RecordButton/useRecordGesture.js.map +1 -0
  727. package/lib/components/RecordButton/useRecordHints.d.ts +27 -0
  728. package/lib/components/RecordButton/useRecordHints.d.ts.map +1 -0
  729. package/lib/components/RecordButton/useRecordHints.js +210 -0
  730. package/lib/components/RecordButton/useRecordHints.js.map +1 -0
  731. package/lib/components/RecordButton/useRecordSlideDistance.d.ts +3 -0
  732. package/lib/components/RecordButton/useRecordSlideDistance.d.ts.map +1 -0
  733. package/lib/components/RecordButton/useRecordSlideDistance.js +15 -0
  734. package/lib/components/RecordButton/useRecordSlideDistance.js.map +1 -0
  735. package/lib/components/RecordButton/useRecordTake.d.ts +41 -0
  736. package/lib/components/RecordButton/useRecordTake.d.ts.map +1 -0
  737. package/lib/components/RecordButton/useRecordTake.js +349 -0
  738. package/lib/components/RecordButton/useRecordTake.js.map +1 -0
  739. package/lib/components/RecordButton/useSendFlight.d.ts +25 -0
  740. package/lib/components/RecordButton/useSendFlight.d.ts.map +1 -0
  741. package/lib/components/RecordButton/useSendFlight.js +162 -0
  742. package/lib/components/RecordButton/useSendFlight.js.map +1 -0
  743. package/lib/components/RecordCircle.d.ts +92 -0
  744. package/lib/components/RecordCircle.d.ts.map +1 -0
  745. package/lib/components/RecordCircle.js +629 -0
  746. package/lib/components/RecordCircle.js.map +1 -0
  747. package/lib/components/RecordingBar.d.ts +24 -0
  748. package/lib/components/RecordingBar.d.ts.map +1 -0
  749. package/lib/components/RecordingBar.js +766 -0
  750. package/lib/components/RecordingBar.js.map +1 -0
  751. package/lib/components/ReplyPreview.js +318 -135
  752. package/lib/components/ReplyPreview.js.map +1 -1
  753. package/lib/components/SelectionBar.d.ts +17 -0
  754. package/lib/components/SelectionBar.d.ts.map +1 -0
  755. package/lib/components/SelectionBar.js +214 -0
  756. package/lib/components/SelectionBar.js.map +1 -0
  757. package/lib/components/SelectionCheckbox.d.ts +12 -0
  758. package/lib/components/SelectionCheckbox.d.ts.map +1 -0
  759. package/lib/components/SelectionCheckbox.js +104 -0
  760. package/lib/components/SelectionCheckbox.js.map +1 -0
  761. package/lib/components/SendIcon.js +60 -26
  762. package/lib/components/SendIcon.js.map +1 -1
  763. package/lib/components/ServiceSpinner.d.ts +17 -0
  764. package/lib/components/ServiceSpinner.d.ts.map +1 -0
  765. package/lib/components/ServiceSpinner.js +77 -0
  766. package/lib/components/ServiceSpinner.js.map +1 -0
  767. package/lib/components/Spinner.d.ts +18 -0
  768. package/lib/components/Spinner.d.ts.map +1 -0
  769. package/lib/components/Spinner.js +169 -0
  770. package/lib/components/Spinner.js.map +1 -0
  771. package/lib/components/StreamingCursor.js +54 -9
  772. package/lib/components/StreamingCursor.js.map +1 -1
  773. package/lib/components/Ticks.d.ts +6 -5
  774. package/lib/components/Ticks.d.ts.map +1 -1
  775. package/lib/components/Ticks.js +272 -82
  776. package/lib/components/Ticks.js.map +1 -1
  777. package/lib/components/TouchableOpacity.d.ts.map +1 -1
  778. package/lib/components/TouchableOpacity.js +153 -51
  779. package/lib/components/TouchableOpacity.js.map +1 -1
  780. package/lib/components/TranscribeButton.d.ts +45 -0
  781. package/lib/components/TranscribeButton.d.ts.map +1 -0
  782. package/lib/components/TranscribeButton.js +549 -0
  783. package/lib/components/TranscribeButton.js.map +1 -0
  784. package/lib/components/TypingStatus.d.ts +29 -0
  785. package/lib/components/TypingStatus.d.ts.map +1 -0
  786. package/lib/components/TypingStatus.js +446 -0
  787. package/lib/components/TypingStatus.js.map +1 -0
  788. package/lib/components/UnreadSeparator.d.ts +8 -0
  789. package/lib/components/UnreadSeparator.d.ts.map +1 -0
  790. package/lib/components/UnreadSeparator.js +101 -0
  791. package/lib/components/UnreadSeparator.js.map +1 -0
  792. package/lib/components/VideoNoteCapture/ProgressRing.d.ts +16 -0
  793. package/lib/components/VideoNoteCapture/ProgressRing.d.ts.map +1 -0
  794. package/lib/components/VideoNoteCapture/ProgressRing.js +75 -0
  795. package/lib/components/VideoNoteCapture/ProgressRing.js.map +1 -0
  796. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts +31 -0
  797. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts.map +1 -0
  798. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js +500 -0
  799. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js.map +1 -0
  800. package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts +12 -0
  801. package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts.map +1 -0
  802. package/lib/components/VideoNoteCapture/VideoNotePreviewView.js +105 -0
  803. package/lib/components/VideoNoteCapture/VideoNotePreviewView.js.map +1 -0
  804. package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts +12 -0
  805. package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts.map +1 -0
  806. package/lib/components/VideoNoteCapture/VideoNoteStage.js +95 -0
  807. package/lib/components/VideoNoteCapture/VideoNoteStage.js.map +1 -0
  808. package/lib/components/VideoNoteCapture/constants.d.ts +50 -0
  809. package/lib/components/VideoNoteCapture/constants.d.ts.map +1 -0
  810. package/lib/components/VideoNoteCapture/constants.js +53 -0
  811. package/lib/components/VideoNoteCapture/constants.js.map +1 -0
  812. package/lib/components/VideoNoteCapture/index.d.ts +3 -0
  813. package/lib/components/VideoNoteCapture/index.d.ts.map +1 -0
  814. package/lib/components/VideoNoteCapture/index.js +2 -0
  815. package/lib/components/VideoNoteCapture/index.js.map +1 -0
  816. package/lib/components/VideoNoteCapture/optional.d.ts +6 -0
  817. package/lib/components/VideoNoteCapture/optional.d.ts.map +1 -0
  818. package/lib/components/VideoNoteCapture/optional.js +15 -0
  819. package/lib/components/VideoNoteCapture/optional.js.map +1 -0
  820. package/lib/components/VideoNoteCapture/sessionState.d.ts +10 -0
  821. package/lib/components/VideoNoteCapture/sessionState.d.ts.map +1 -0
  822. package/lib/components/VideoNoteCapture/sessionState.js +19 -0
  823. package/lib/components/VideoNoteCapture/sessionState.js.map +1 -0
  824. package/lib/components/VideoNoteCapture/styles.d.ts +84 -0
  825. package/lib/components/VideoNoteCapture/styles.d.ts.map +1 -0
  826. package/lib/components/VideoNoteCapture/styles.js +86 -0
  827. package/lib/components/VideoNoteCapture/styles.js.map +1 -0
  828. package/lib/components/VideoNoteCapture/types.d.ts +54 -0
  829. package/lib/components/VideoNoteCapture/types.d.ts.map +1 -0
  830. package/lib/components/VideoNoteCapture/types.js +2 -0
  831. package/lib/components/VideoNoteCapture/types.js.map +1 -0
  832. package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts +47 -0
  833. package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts.map +1 -0
  834. package/lib/components/VideoNoteCapture/useRoundAnimation.js +216 -0
  835. package/lib/components/VideoNoteCapture/useRoundAnimation.js.map +1 -0
  836. package/lib/components/VideoNoteCapture/useRoundLayout.d.ts +14 -0
  837. package/lib/components/VideoNoteCapture/useRoundLayout.d.ts.map +1 -0
  838. package/lib/components/VideoNoteCapture/useRoundLayout.js +61 -0
  839. package/lib/components/VideoNoteCapture/useRoundLayout.js.map +1 -0
  840. package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts +25 -0
  841. package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts.map +1 -0
  842. package/lib/components/VideoNoteCapture/useVideoNoteSession.js +611 -0
  843. package/lib/components/VideoNoteCapture/useVideoNoteSession.js.map +1 -0
  844. package/lib/components/VideoNoteOverlay.d.ts +42 -11
  845. package/lib/components/VideoNoteOverlay.d.ts.map +1 -1
  846. package/lib/components/VideoNoteOverlay.js +722 -135
  847. package/lib/components/VideoNoteOverlay.js.map +1 -1
  848. package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts +6 -0
  849. package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts.map +1 -0
  850. package/lib/components/VideoNoteRecorder/LiveVideoNote.js +205 -0
  851. package/lib/components/VideoNoteRecorder/LiveVideoNote.js.map +1 -0
  852. package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts +35 -0
  853. package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts.map +1 -0
  854. package/lib/components/VideoNoteRecorder/RecorderChrome.js +350 -0
  855. package/lib/components/VideoNoteRecorder/RecorderChrome.js.map +1 -0
  856. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts +10 -0
  857. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts.map +1 -0
  858. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js +52 -0
  859. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js.map +1 -0
  860. package/lib/components/VideoNoteRecorder/constants.d.ts +16 -0
  861. package/lib/components/VideoNoteRecorder/constants.d.ts.map +1 -0
  862. package/lib/components/VideoNoteRecorder/constants.js +30 -0
  863. package/lib/components/VideoNoteRecorder/constants.js.map +1 -0
  864. package/lib/components/{VideoNoteRecorder.d.ts → VideoNoteRecorder/index.d.ts} +5 -10
  865. package/lib/components/VideoNoteRecorder/index.d.ts.map +1 -0
  866. package/lib/components/VideoNoteRecorder/index.js +26 -0
  867. package/lib/components/VideoNoteRecorder/index.js.map +1 -0
  868. package/lib/components/VideoNoteRecorder/styles.d.ts +159 -0
  869. package/lib/components/VideoNoteRecorder/styles.d.ts.map +1 -0
  870. package/lib/components/VideoNoteRecorder/styles.js +170 -0
  871. package/lib/components/VideoNoteRecorder/styles.js.map +1 -0
  872. package/lib/components/VideoNoteRecorder/types.d.ts +7 -0
  873. package/lib/components/VideoNoteRecorder/types.d.ts.map +1 -0
  874. package/lib/components/VideoNoteRecorder/types.js +2 -0
  875. package/lib/components/VideoNoteRecorder/types.js.map +1 -0
  876. package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts +10 -0
  877. package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts.map +1 -0
  878. package/lib/components/VideoNoteRecorder/useRecordingTimer.js +134 -0
  879. package/lib/components/VideoNoteRecorder/useRecordingTimer.js.map +1 -0
  880. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts +28 -0
  881. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts.map +1 -0
  882. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js +287 -0
  883. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js.map +1 -0
  884. package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts +6 -0
  885. package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts.map +1 -0
  886. package/lib/components/VideoNoteRecorder/visionCameraHooks.js +11 -0
  887. package/lib/components/VideoNoteRecorder/visionCameraHooks.js.map +1 -0
  888. package/lib/components/VideoRecordButton.d.ts +1 -1
  889. package/lib/components/VideoRecordButton.d.ts.map +1 -1
  890. package/lib/components/VideoRecordButton.js +221 -92
  891. package/lib/components/VideoRecordButton.js.map +1 -1
  892. package/lib/components/ViewOnceBadge.d.ts +23 -0
  893. package/lib/components/ViewOnceBadge.d.ts.map +1 -0
  894. package/lib/components/ViewOnceBadge.js +233 -0
  895. package/lib/components/ViewOnceBadge.js.map +1 -0
  896. package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts +16 -0
  897. package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts.map +1 -0
  898. package/lib/components/VoiceMessageInput/RecordedVoicePreview.js +503 -0
  899. package/lib/components/VoiceMessageInput/RecordedVoicePreview.js.map +1 -0
  900. package/lib/components/VoiceMessageInput/constants.d.ts +16 -0
  901. package/lib/components/VoiceMessageInput/constants.d.ts.map +1 -0
  902. package/lib/components/VoiceMessageInput/constants.js +22 -0
  903. package/lib/components/VoiceMessageInput/constants.js.map +1 -0
  904. package/lib/components/VoiceMessageInput/formatElapsed.d.ts +2 -0
  905. package/lib/components/VoiceMessageInput/formatElapsed.d.ts.map +1 -0
  906. package/lib/components/VoiceMessageInput/formatElapsed.js +7 -0
  907. package/lib/components/VoiceMessageInput/formatElapsed.js.map +1 -0
  908. package/lib/components/VoiceMessageInput/index.d.ts +9 -0
  909. package/lib/components/VoiceMessageInput/index.d.ts.map +1 -0
  910. package/lib/components/VoiceMessageInput/index.js +148 -0
  911. package/lib/components/VoiceMessageInput/index.js.map +1 -0
  912. package/lib/components/VoiceMessageInput/previewStyles.d.ts +77 -0
  913. package/lib/components/VoiceMessageInput/previewStyles.d.ts.map +1 -0
  914. package/lib/components/VoiceMessageInput/previewStyles.js +80 -0
  915. package/lib/components/VoiceMessageInput/previewStyles.js.map +1 -0
  916. package/lib/components/VoiceMessageInput/previewWaveform.d.ts +15 -0
  917. package/lib/components/VoiceMessageInput/previewWaveform.d.ts.map +1 -0
  918. package/lib/components/VoiceMessageInput/previewWaveform.js +27 -0
  919. package/lib/components/VoiceMessageInput/previewWaveform.js.map +1 -0
  920. package/lib/components/VoiceMessageInput/recorder.d.ts +18 -0
  921. package/lib/components/VoiceMessageInput/recorder.d.ts.map +1 -0
  922. package/lib/components/VoiceMessageInput/recorder.js +80 -0
  923. package/lib/components/VoiceMessageInput/recorder.js.map +1 -0
  924. package/lib/components/VoiceMessageInput/types.d.ts +56 -0
  925. package/lib/components/VoiceMessageInput/types.d.ts.map +1 -0
  926. package/lib/components/VoiceMessageInput/types.js +2 -0
  927. package/lib/components/VoiceMessageInput/types.js.map +1 -0
  928. package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts +7 -0
  929. package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts.map +1 -0
  930. package/lib/components/VoiceMessageInput/useLazyRecorder.js +61 -0
  931. package/lib/components/VoiceMessageInput/useLazyRecorder.js.map +1 -0
  932. package/lib/components/VoiceMessageInput/useStateReport.d.ts +16 -0
  933. package/lib/components/VoiceMessageInput/useStateReport.d.ts.map +1 -0
  934. package/lib/components/VoiceMessageInput/useStateReport.js +81 -0
  935. package/lib/components/VoiceMessageInput/useStateReport.js.map +1 -0
  936. package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts +34 -0
  937. package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts.map +1 -0
  938. package/lib/components/VoiceMessageInput/useTakePreviewActions.js +207 -0
  939. package/lib/components/VoiceMessageInput/useTakePreviewActions.js.map +1 -0
  940. package/lib/components/VoiceMessageInput/useVoiceTake.d.ts +25 -0
  941. package/lib/components/VoiceMessageInput/useVoiceTake.d.ts.map +1 -0
  942. package/lib/components/VoiceMessageInput/useVoiceTake.js +424 -0
  943. package/lib/components/VoiceMessageInput/useVoiceTake.js.map +1 -0
  944. package/lib/components/WaveformPlayer/Bars.d.ts +30 -0
  945. package/lib/components/WaveformPlayer/Bars.d.ts.map +1 -0
  946. package/lib/components/WaveformPlayer/Bars.js +171 -0
  947. package/lib/components/WaveformPlayer/Bars.js.map +1 -0
  948. package/lib/components/WaveformPlayer/VoiceButton.d.ts +23 -0
  949. package/lib/components/WaveformPlayer/VoiceButton.d.ts.map +1 -0
  950. package/lib/components/WaveformPlayer/VoiceButton.js +111 -0
  951. package/lib/components/WaveformPlayer/VoiceButton.js.map +1 -0
  952. package/lib/components/WaveformPlayer/WaveformTrack.d.ts +31 -0
  953. package/lib/components/WaveformPlayer/WaveformTrack.d.ts.map +1 -0
  954. package/lib/components/WaveformPlayer/WaveformTrack.js +199 -0
  955. package/lib/components/WaveformPlayer/WaveformTrack.js.map +1 -0
  956. package/lib/components/WaveformPlayer/audio.d.ts +23 -0
  957. package/lib/components/WaveformPlayer/audio.d.ts.map +1 -0
  958. package/lib/components/WaveformPlayer/audio.js +97 -0
  959. package/lib/components/WaveformPlayer/audio.js.map +1 -0
  960. package/lib/components/WaveformPlayer/index.d.ts +13 -0
  961. package/lib/components/WaveformPlayer/index.d.ts.map +1 -0
  962. package/lib/components/WaveformPlayer/index.js +475 -0
  963. package/lib/components/WaveformPlayer/index.js.map +1 -0
  964. package/lib/components/WaveformPlayer/styles.d.ts +257 -0
  965. package/lib/components/WaveformPlayer/styles.d.ts.map +1 -0
  966. package/lib/components/WaveformPlayer/styles.js +120 -0
  967. package/lib/components/WaveformPlayer/styles.js.map +1 -0
  968. package/lib/components/WaveformPlayer/types.d.ts +32 -0
  969. package/lib/components/WaveformPlayer/types.d.ts.map +1 -0
  970. package/lib/components/WaveformPlayer/types.js +2 -0
  971. package/lib/components/WaveformPlayer/types.js.map +1 -0
  972. package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts +21 -0
  973. package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts.map +1 -0
  974. package/lib/components/WaveformPlayer/useSendFlightReveal.js +105 -0
  975. package/lib/components/WaveformPlayer/useSendFlightReveal.js.map +1 -0
  976. package/lib/components/WaveformPlayer/useVoicePlayback.d.ts +39 -0
  977. package/lib/components/WaveformPlayer/useVoicePlayback.d.ts.map +1 -0
  978. package/lib/components/WaveformPlayer/useVoicePlayback.js +401 -0
  979. package/lib/components/WaveformPlayer/useVoicePlayback.js.map +1 -0
  980. package/lib/components/WaveformPlayer/useVoiceSource.d.ts +38 -0
  981. package/lib/components/WaveformPlayer/useVoiceSource.d.ts.map +1 -0
  982. package/lib/components/WaveformPlayer/useVoiceSource.js +244 -0
  983. package/lib/components/WaveformPlayer/useVoiceSource.js.map +1 -0
  984. package/lib/components/WaveformPlayer/useWaveformMotion.d.ts +16 -0
  985. package/lib/components/WaveformPlayer/useWaveformMotion.d.ts.map +1 -0
  986. package/lib/components/WaveformPlayer/useWaveformMotion.js +135 -0
  987. package/lib/components/WaveformPlayer/useWaveformMotion.js.map +1 -0
  988. package/lib/components/WaveformPlayer/useWaveformScrub.d.ts +16 -0
  989. package/lib/components/WaveformPlayer/useWaveformScrub.d.ts.map +1 -0
  990. package/lib/components/WaveformPlayer/useWaveformScrub.js +168 -0
  991. package/lib/components/WaveformPlayer/useWaveformScrub.js.map +1 -0
  992. package/lib/components/composerPanels.d.ts +13 -0
  993. package/lib/components/composerPanels.d.ts.map +1 -0
  994. package/lib/components/composerPanels.js +22 -0
  995. package/lib/components/composerPanels.js.map +1 -0
  996. package/lib/components/defaultMessageActions.d.ts +30 -0
  997. package/lib/components/defaultMessageActions.d.ts.map +1 -0
  998. package/lib/components/defaultMessageActions.js +124 -0
  999. package/lib/components/defaultMessageActions.js.map +1 -0
  1000. package/lib/components/earpiece.d.ts +56 -0
  1001. package/lib/components/earpiece.d.ts.map +1 -0
  1002. package/lib/components/earpiece.js +218 -0
  1003. package/lib/components/earpiece.js.map +1 -0
  1004. package/lib/components/floatingNoteMath.d.ts +66 -0
  1005. package/lib/components/floatingNoteMath.d.ts.map +1 -0
  1006. package/lib/components/floatingNoteMath.js +143 -0
  1007. package/lib/components/floatingNoteMath.js.map +1 -0
  1008. package/lib/components/haptics.d.ts +5 -0
  1009. package/lib/components/haptics.d.ts.map +1 -0
  1010. package/lib/components/haptics.js +26 -0
  1011. package/lib/components/haptics.js.map +1 -0
  1012. package/lib/components/mediaDownload.d.ts +14 -0
  1013. package/lib/components/mediaDownload.d.ts.map +1 -0
  1014. package/lib/components/mediaDownload.js +43 -0
  1015. package/lib/components/mediaDownload.js.map +1 -0
  1016. package/lib/components/mediaPalette.d.ts +7 -2
  1017. package/lib/components/mediaPalette.d.ts.map +1 -1
  1018. package/lib/components/mediaPalette.js +27 -15
  1019. package/lib/components/mediaPalette.js.map +1 -1
  1020. package/lib/components/mediaPlayback.d.ts +204 -5
  1021. package/lib/components/mediaPlayback.d.ts.map +1 -1
  1022. package/lib/components/mediaPlayback.js +746 -17
  1023. package/lib/components/mediaPlayback.js.map +1 -1
  1024. package/lib/components/mediaTransfer.d.ts +29 -0
  1025. package/lib/components/mediaTransfer.d.ts.map +1 -0
  1026. package/lib/components/mediaTransfer.js +52 -0
  1027. package/lib/components/mediaTransfer.js.map +1 -0
  1028. package/lib/components/mediaViewer/MediaViewer.d.ts +17 -0
  1029. package/lib/components/mediaViewer/MediaViewer.d.ts.map +1 -0
  1030. package/lib/components/mediaViewer/MediaViewer.js +347 -0
  1031. package/lib/components/mediaViewer/MediaViewer.js.map +1 -0
  1032. package/lib/components/mediaViewer/MediaViewerChrome.d.ts +14 -0
  1033. package/lib/components/mediaViewer/MediaViewerChrome.d.ts.map +1 -0
  1034. package/lib/components/mediaViewer/MediaViewerChrome.js +164 -0
  1035. package/lib/components/mediaViewer/MediaViewerChrome.js.map +1 -0
  1036. package/lib/components/mediaViewer/MediaViewerHost.d.ts +10 -0
  1037. package/lib/components/mediaViewer/MediaViewerHost.d.ts.map +1 -0
  1038. package/lib/components/mediaViewer/MediaViewerHost.js +76 -0
  1039. package/lib/components/mediaViewer/MediaViewerHost.js.map +1 -0
  1040. package/lib/components/mediaViewer/MediaViewerPage.d.ts +25 -0
  1041. package/lib/components/mediaViewer/MediaViewerPage.d.ts.map +1 -0
  1042. package/lib/components/mediaViewer/MediaViewerPage.js +194 -0
  1043. package/lib/components/mediaViewer/MediaViewerPage.js.map +1 -0
  1044. package/lib/components/mediaViewer/gallery.d.ts +27 -0
  1045. package/lib/components/mediaViewer/gallery.d.ts.map +1 -0
  1046. package/lib/components/mediaViewer/gallery.js +41 -0
  1047. package/lib/components/mediaViewer/gallery.js.map +1 -0
  1048. package/lib/components/messageHighlight.d.ts +41 -0
  1049. package/lib/components/messageHighlight.d.ts.map +1 -0
  1050. package/lib/components/messageHighlight.js +157 -0
  1051. package/lib/components/messageHighlight.js.map +1 -0
  1052. package/lib/components/messagePress.d.ts +14 -0
  1053. package/lib/components/messagePress.d.ts.map +1 -0
  1054. package/lib/components/messagePress.js +18 -0
  1055. package/lib/components/messagePress.js.map +1 -0
  1056. package/lib/components/messageSelection.d.ts +39 -0
  1057. package/lib/components/messageSelection.d.ts.map +1 -0
  1058. package/lib/components/messageSelection.js +135 -0
  1059. package/lib/components/messageSelection.js.map +1 -0
  1060. package/lib/components/recordingFeedback.d.ts +22 -0
  1061. package/lib/components/recordingFeedback.d.ts.map +1 -0
  1062. package/lib/components/recordingFeedback.js +80 -0
  1063. package/lib/components/recordingFeedback.js.map +1 -0
  1064. package/lib/components/recordingMeter.d.ts +19 -0
  1065. package/lib/components/recordingMeter.d.ts.map +1 -0
  1066. package/lib/components/recordingMeter.js +21 -0
  1067. package/lib/components/recordingMeter.js.map +1 -0
  1068. package/lib/components/roundNoteChrome.d.ts +107 -0
  1069. package/lib/components/roundNoteChrome.d.ts.map +1 -0
  1070. package/lib/components/roundNoteChrome.js +249 -0
  1071. package/lib/components/roundNoteChrome.js.map +1 -0
  1072. package/lib/components/roundNotePlayers.d.ts +78 -0
  1073. package/lib/components/roundNotePlayers.d.ts.map +1 -0
  1074. package/lib/components/roundNotePlayers.js +230 -0
  1075. package/lib/components/roundNotePlayers.js.map +1 -0
  1076. package/lib/components/sendFlight.d.ts +88 -0
  1077. package/lib/components/sendFlight.d.ts.map +1 -0
  1078. package/lib/components/sendFlight.js +146 -0
  1079. package/lib/components/sendFlight.js.map +1 -0
  1080. package/lib/components/viewOnce.d.ts +27 -0
  1081. package/lib/components/viewOnce.d.ts.map +1 -0
  1082. package/lib/components/viewOnce.js +168 -0
  1083. package/lib/components/viewOnce.js.map +1 -0
  1084. package/lib/components/visionCamera.d.ts +45 -0
  1085. package/lib/components/visionCamera.d.ts.map +1 -0
  1086. package/lib/components/visionCamera.js +117 -0
  1087. package/lib/components/visionCamera.js.map +1 -0
  1088. package/lib/components/voiceEditing.d.ts +34 -0
  1089. package/lib/components/voiceEditing.d.ts.map +1 -0
  1090. package/lib/components/voiceEditing.js +159 -0
  1091. package/lib/components/voiceEditing.js.map +1 -0
  1092. package/lib/components/voiceWaveform.d.ts +108 -0
  1093. package/lib/components/voiceWaveform.d.ts.map +1 -0
  1094. package/lib/components/voiceWaveform.js +165 -0
  1095. package/lib/components/voiceWaveform.js.map +1 -0
  1096. package/lib/components/wallpaperGradient.d.ts +16 -0
  1097. package/lib/components/wallpaperGradient.d.ts.map +1 -0
  1098. package/lib/components/wallpaperGradient.js +186 -0
  1099. package/lib/components/wallpaperGradient.js.map +1 -0
  1100. package/lib/components/windowInsets.d.ts +11 -0
  1101. package/lib/components/windowInsets.d.ts.map +1 -0
  1102. package/lib/components/windowInsets.js +44 -0
  1103. package/lib/components/windowInsets.js.map +1 -0
  1104. package/lib/dayjsLocales.js +15 -2
  1105. package/lib/dayjsLocales.js.map +1 -1
  1106. package/lib/emoji/EmojiGrid/BackspaceButton.d.ts +11 -0
  1107. package/lib/emoji/EmojiGrid/BackspaceButton.d.ts.map +1 -0
  1108. package/lib/emoji/EmojiGrid/BackspaceButton.js +111 -0
  1109. package/lib/emoji/EmojiGrid/BackspaceButton.js.map +1 -0
  1110. package/lib/emoji/EmojiGrid/EmojiRow.d.ts +15 -0
  1111. package/lib/emoji/EmojiGrid/EmojiRow.d.ts.map +1 -0
  1112. package/lib/emoji/EmojiGrid/EmojiRow.js +71 -0
  1113. package/lib/emoji/EmojiGrid/EmojiRow.js.map +1 -0
  1114. package/lib/emoji/EmojiGrid/Search.d.ts +29 -0
  1115. package/lib/emoji/EmojiGrid/Search.d.ts.map +1 -0
  1116. package/lib/emoji/EmojiGrid/Search.js +234 -0
  1117. package/lib/emoji/EmojiGrid/Search.js.map +1 -0
  1118. package/lib/emoji/EmojiGrid/TabStrip.d.ts +16 -0
  1119. package/lib/emoji/EmojiGrid/TabStrip.d.ts.map +1 -0
  1120. package/lib/emoji/EmojiGrid/TabStrip.js +237 -0
  1121. package/lib/emoji/EmojiGrid/TabStrip.js.map +1 -0
  1122. package/lib/emoji/EmojiGrid/TonePopup.d.ts +12 -0
  1123. package/lib/emoji/EmojiGrid/TonePopup.d.ts.map +1 -0
  1124. package/lib/emoji/EmojiGrid/TonePopup.js +137 -0
  1125. package/lib/emoji/EmojiGrid/TonePopup.js.map +1 -0
  1126. package/lib/emoji/EmojiGrid/constants.d.ts +29 -0
  1127. package/lib/emoji/EmojiGrid/constants.d.ts.map +1 -0
  1128. package/lib/emoji/EmojiGrid/constants.js +65 -0
  1129. package/lib/emoji/EmojiGrid/constants.js.map +1 -0
  1130. package/lib/emoji/EmojiGrid/index.d.ts +10 -0
  1131. package/lib/emoji/EmojiGrid/index.d.ts.map +1 -0
  1132. package/lib/emoji/EmojiGrid/index.js +450 -0
  1133. package/lib/emoji/EmojiGrid/index.js.map +1 -0
  1134. package/lib/emoji/EmojiGrid/items.d.ts +25 -0
  1135. package/lib/emoji/EmojiGrid/items.d.ts.map +1 -0
  1136. package/lib/emoji/EmojiGrid/items.js +75 -0
  1137. package/lib/emoji/EmojiGrid/items.js.map +1 -0
  1138. package/lib/emoji/EmojiGrid/styles.d.ts +181 -0
  1139. package/lib/emoji/EmojiGrid/styles.d.ts.map +1 -0
  1140. package/lib/emoji/EmojiGrid/styles.js +184 -0
  1141. package/lib/emoji/EmojiGrid/styles.js.map +1 -0
  1142. package/lib/emoji/EmojiGrid/types.d.ts +53 -0
  1143. package/lib/emoji/EmojiGrid/types.d.ts.map +1 -0
  1144. package/lib/emoji/EmojiGrid/types.js +2 -0
  1145. package/lib/emoji/EmojiGrid/types.js.map +1 -0
  1146. package/lib/emoji/EmojiGrid/useTabScroll.d.ts +19 -0
  1147. package/lib/emoji/EmojiGrid/useTabScroll.d.ts.map +1 -0
  1148. package/lib/emoji/EmojiGrid/useTabScroll.js +124 -0
  1149. package/lib/emoji/EmojiGrid/useTabScroll.js.map +1 -0
  1150. package/lib/emoji/EmojiKeyboard.d.ts +79 -0
  1151. package/lib/emoji/EmojiKeyboard.d.ts.map +1 -0
  1152. package/lib/emoji/EmojiKeyboard.js +445 -0
  1153. package/lib/emoji/EmojiKeyboard.js.map +1 -0
  1154. package/lib/emoji/defaultExpandedPicker.d.ts +5 -0
  1155. package/lib/emoji/defaultExpandedPicker.d.ts.map +1 -0
  1156. package/lib/emoji/defaultExpandedPicker.js +11 -0
  1157. package/lib/emoji/defaultExpandedPicker.js.map +1 -0
  1158. package/lib/emoji/emojiData.d.ts +2 -0
  1159. package/lib/emoji/emojiData.d.ts.map +1 -0
  1160. package/lib/emoji/emojiData.js +5 -0
  1161. package/lib/emoji/emojiData.js.map +1 -0
  1162. package/lib/emoji/emojiStore.d.ts +70 -0
  1163. package/lib/emoji/emojiStore.d.ts.map +1 -0
  1164. package/lib/emoji/emojiStore.js +246 -0
  1165. package/lib/emoji/emojiStore.js.map +1 -0
  1166. package/lib/emoji/textEditing.d.ts +20 -0
  1167. package/lib/emoji/textEditing.d.ts.map +1 -0
  1168. package/lib/emoji/textEditing.js +97 -0
  1169. package/lib/emoji/textEditing.js.map +1 -0
  1170. package/lib/emojiOnly.d.ts +11 -0
  1171. package/lib/emojiOnly.d.ts.map +1 -0
  1172. package/lib/emojiOnly.js +79 -0
  1173. package/lib/emojiOnly.js.map +1 -0
  1174. package/lib/gestures/useRowSwipe.d.ts +43 -0
  1175. package/lib/gestures/useRowSwipe.d.ts.map +1 -0
  1176. package/lib/gestures/useRowSwipe.js +74 -0
  1177. package/lib/gestures/useRowSwipe.js.map +1 -0
  1178. package/lib/hooks/useAnimatedPresence.d.ts +22 -0
  1179. package/lib/hooks/useAnimatedPresence.d.ts.map +1 -0
  1180. package/lib/hooks/useAnimatedPresence.js +97 -0
  1181. package/lib/hooks/useAnimatedPresence.js.map +1 -0
  1182. package/lib/hooks/useChatMessages.d.ts +39 -0
  1183. package/lib/hooks/useChatMessages.d.ts.map +1 -0
  1184. package/lib/hooks/useChatMessages.js +125 -0
  1185. package/lib/hooks/useChatMessages.js.map +1 -0
  1186. package/lib/hooks/useColorScheme.d.ts +7 -1
  1187. package/lib/hooks/useColorScheme.d.ts.map +1 -1
  1188. package/lib/hooks/useColorScheme.js +46 -8
  1189. package/lib/hooks/useColorScheme.js.map +1 -1
  1190. package/lib/hooks/useHasKeyboardProvider.js +18 -7
  1191. package/lib/hooks/useHasKeyboardProvider.js.map +1 -1
  1192. package/lib/hooks/useIcons.js +15 -2
  1193. package/lib/hooks/useIcons.js.map +1 -1
  1194. package/lib/hooks/useIsKeyboardVisible.js +39 -17
  1195. package/lib/hooks/useIsKeyboardVisible.js.map +1 -1
  1196. package/lib/hooks/useIsRTL.js +15 -2
  1197. package/lib/hooks/useIsRTL.js.map +1 -1
  1198. package/lib/hooks/useKeyboardVerticalOffset.d.ts +5 -3
  1199. package/lib/hooks/useKeyboardVerticalOffset.d.ts.map +1 -1
  1200. package/lib/hooks/useKeyboardVerticalOffset.js +52 -18
  1201. package/lib/hooks/useKeyboardVerticalOffset.js.map +1 -1
  1202. package/lib/hooks/useLabels.js +15 -2
  1203. package/lib/hooks/useLabels.js.map +1 -1
  1204. package/lib/hooks/useStreamingMessages.js +200 -86
  1205. package/lib/hooks/useStreamingMessages.js.map +1 -1
  1206. package/lib/hooks/useTheme.js +56 -7
  1207. package/lib/hooks/useTheme.js.map +1 -1
  1208. package/lib/hooks/useUpdateLayoutEffect.d.ts.map +1 -1
  1209. package/lib/hooks/useUpdateLayoutEffect.js +35 -11
  1210. package/lib/hooks/useUpdateLayoutEffect.js.map +1 -1
  1211. package/lib/i18n.d.ts +182 -0
  1212. package/lib/i18n.d.ts.map +1 -1
  1213. package/lib/i18n.js +121 -23
  1214. package/lib/i18n.js.map +1 -1
  1215. package/lib/index.d.ts +31 -1
  1216. package/lib/index.d.ts.map +1 -1
  1217. package/lib/index.js +18 -1
  1218. package/lib/index.js.map +1 -1
  1219. package/lib/linkParser.js +318 -185
  1220. package/lib/linkParser.js.map +1 -1
  1221. package/lib/locales/ar.d.ts.map +1 -1
  1222. package/lib/locales/ar.js +110 -19
  1223. package/lib/locales/ar.js.map +1 -1
  1224. package/lib/locales/de.d.ts.map +1 -1
  1225. package/lib/locales/de.js +110 -19
  1226. package/lib/locales/de.js.map +1 -1
  1227. package/lib/locales/es.d.ts.map +1 -1
  1228. package/lib/locales/es.js +110 -19
  1229. package/lib/locales/es.js.map +1 -1
  1230. package/lib/locales/fr.d.ts.map +1 -1
  1231. package/lib/locales/fr.js +110 -19
  1232. package/lib/locales/fr.js.map +1 -1
  1233. package/lib/locales/hi.d.ts.map +1 -1
  1234. package/lib/locales/hi.js +110 -19
  1235. package/lib/locales/hi.js.map +1 -1
  1236. package/lib/locales/id.d.ts.map +1 -1
  1237. package/lib/locales/id.js +110 -19
  1238. package/lib/locales/id.js.map +1 -1
  1239. package/lib/locales/index.js +19 -5
  1240. package/lib/locales/index.js.map +1 -1
  1241. package/lib/locales/it.d.ts.map +1 -1
  1242. package/lib/locales/it.js +110 -19
  1243. package/lib/locales/it.js.map +1 -1
  1244. package/lib/locales/ja.d.ts.map +1 -1
  1245. package/lib/locales/ja.js +110 -19
  1246. package/lib/locales/ja.js.map +1 -1
  1247. package/lib/locales/ko.d.ts.map +1 -1
  1248. package/lib/locales/ko.js +110 -19
  1249. package/lib/locales/ko.js.map +1 -1
  1250. package/lib/locales/nl.d.ts.map +1 -1
  1251. package/lib/locales/nl.js +110 -19
  1252. package/lib/locales/nl.js.map +1 -1
  1253. package/lib/locales/pl.d.ts.map +1 -1
  1254. package/lib/locales/pl.js +110 -19
  1255. package/lib/locales/pl.js.map +1 -1
  1256. package/lib/locales/pt.d.ts.map +1 -1
  1257. package/lib/locales/pt.js +110 -19
  1258. package/lib/locales/pt.js.map +1 -1
  1259. package/lib/locales/ru.d.ts.map +1 -1
  1260. package/lib/locales/ru.js +110 -19
  1261. package/lib/locales/ru.js.map +1 -1
  1262. package/lib/locales/tr.d.ts.map +1 -1
  1263. package/lib/locales/tr.js +110 -19
  1264. package/lib/locales/tr.js.map +1 -1
  1265. package/lib/locales/zh.d.ts.map +1 -1
  1266. package/lib/locales/zh.js +110 -19
  1267. package/lib/locales/zh.js.map +1 -1
  1268. package/lib/logging.d.ts +5 -0
  1269. package/lib/logging.d.ts.map +1 -1
  1270. package/lib/logging.js +13 -1
  1271. package/lib/logging.js.map +1 -1
  1272. package/lib/messageUtils.d.ts +19 -0
  1273. package/lib/messageUtils.d.ts.map +1 -0
  1274. package/lib/messageUtils.js +61 -0
  1275. package/lib/messageUtils.js.map +1 -0
  1276. package/lib/motion.d.ts +21 -0
  1277. package/lib/motion.d.ts.map +1 -0
  1278. package/lib/motion.js +30 -0
  1279. package/lib/motion.js.map +1 -0
  1280. package/lib/optional/index.d.ts +99 -0
  1281. package/lib/optional/index.d.ts.map +1 -0
  1282. package/lib/optional/index.js +284 -0
  1283. package/lib/optional/index.js.map +1 -0
  1284. package/lib/rtl.js +7 -5
  1285. package/lib/rtl.js.map +1 -1
  1286. package/lib/store.d.ts +40 -0
  1287. package/lib/store.d.ts.map +1 -0
  1288. package/lib/store.js +127 -0
  1289. package/lib/store.js.map +1 -0
  1290. package/lib/styles.d.ts +2 -2
  1291. package/lib/styles.d.ts.map +1 -1
  1292. package/lib/styles.js +15 -15
  1293. package/lib/styles.js.map +1 -1
  1294. package/lib/types.js +1 -0
  1295. package/lib/types.js.map +1 -1
  1296. package/lib/utils.d.ts +15 -0
  1297. package/lib/utils.d.ts.map +1 -1
  1298. package/lib/utils.js +199 -94
  1299. package/lib/utils.js.map +1 -1
  1300. package/llms.txt +133 -31
  1301. package/package.json +89 -46
  1302. package/lib/InputToolbar.d.ts +0 -49
  1303. package/lib/InputToolbar.d.ts.map +0 -1
  1304. package/lib/InputToolbar.js +0 -338
  1305. package/lib/InputToolbar.js.map +0 -1
  1306. package/lib/MessageVideo.d.ts.map +0 -1
  1307. package/lib/MessageVideo.js +0 -162
  1308. package/lib/MessageVideo.js.map +0 -1
  1309. package/lib/MessagesContainer/FlashList.d.ts +0 -9
  1310. package/lib/MessagesContainer/FlashList.d.ts.map +0 -1
  1311. package/lib/MessagesContainer/FlashList.js +0 -23
  1312. package/lib/MessagesContainer/FlashList.js.map +0 -1
  1313. package/lib/components/ContextMenu.d.ts +0 -25
  1314. package/lib/components/ContextMenu.d.ts.map +0 -1
  1315. package/lib/components/ContextMenu.js +0 -122
  1316. package/lib/components/ContextMenu.js.map +0 -1
  1317. package/lib/components/VideoNoteRecorder.d.ts.map +0 -1
  1318. package/lib/components/VideoNoteRecorder.js +0 -634
  1319. package/lib/components/VideoNoteRecorder.js.map +0 -1
  1320. package/lib/components/VoiceMessageInput.d.ts +0 -33
  1321. package/lib/components/VoiceMessageInput.d.ts.map +0 -1
  1322. package/lib/components/VoiceMessageInput.js +0 -403
  1323. package/lib/components/VoiceMessageInput.js.map +0 -1
  1324. package/lib/components/WaveformPlayer.d.ts +0 -19
  1325. package/lib/components/WaveformPlayer.d.ts.map +0 -1
  1326. package/lib/components/WaveformPlayer.js +0 -367
  1327. package/lib/components/WaveformPlayer.js.map +0 -1
@@ -0,0 +1,164 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import React from 'react';
3
+ import { StyleSheet, Text, View } from 'react-native';
4
+ import dayjs from 'dayjs';
5
+ import { Touchable } from 'react-native-gesture-handler';
6
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
7
+ import { useChatContext } from '../../ChatContext';
8
+ import { TIME_FORMAT } from '../../Constant';
9
+ import { useLabels } from '../../hooks/useLabels';
10
+ import { formatLabel } from '../../i18n';
11
+ import { Icon } from '../Icon';
12
+ import { CloseIcon } from '../MediaControls';
13
+ /**
14
+ * The viewer's bars, as in Telegram's: a close button and "3 of 12" on top; the caption, the
15
+ * sender and when it was sent at the bottom, over a shade so they read on any photo.
16
+ */
17
+ export function MediaViewerChrome(t0) {
18
+ const $ = _c(24);
19
+ const {
20
+ message,
21
+ index,
22
+ count,
23
+ onClose
24
+ } = t0;
25
+ const insets = useSafeAreaInsets();
26
+ const labels = useLabels();
27
+ const {
28
+ getLocale
29
+ } = useChatContext();
30
+ let t1;
31
+ if ($[0] !== getLocale || $[1] !== labels || $[2] !== message) {
32
+ const sentAt = message?.createdAt != null ? dayjs(message.createdAt).locale(getLocale()) : undefined;
33
+ t1 = sentAt ? formatLabel(labels.mediaViewerDate, {
34
+ date: sentAt.format(sentAt.isSame(dayjs(), "year") ? "D MMM" : "D MMM YYYY"),
35
+ time: sentAt.format(TIME_FORMAT)
36
+ }) : undefined;
37
+ $[0] = getLocale;
38
+ $[1] = labels;
39
+ $[2] = message;
40
+ $[3] = t1;
41
+ } else {
42
+ t1 = $[3];
43
+ }
44
+ const date = t1;
45
+ let t2;
46
+ if ($[4] !== insets.top) {
47
+ t2 = [styles.top, {
48
+ paddingTop: insets.top
49
+ }];
50
+ $[4] = insets.top;
51
+ $[5] = t2;
52
+ } else {
53
+ t2 = $[5];
54
+ }
55
+ let t3;
56
+ if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
57
+ t3 = <View style={styles.close}><Icon name="close" color="#FFFFFF" size={24} fallback={<CloseIcon color="#FFFFFF" size={24} />} /></View>;
58
+ $[6] = t3;
59
+ } else {
60
+ t3 = $[6];
61
+ }
62
+ let t4;
63
+ if ($[7] !== onClose) {
64
+ t4 = <Touchable onPress={onClose} accessibilityRole="button" accessibilityLabel="Close">{t3}</Touchable>;
65
+ $[7] = onClose;
66
+ $[8] = t4;
67
+ } else {
68
+ t4 = $[8];
69
+ }
70
+ let t5;
71
+ if ($[9] !== count || $[10] !== index || $[11] !== labels) {
72
+ t5 = count > 1 && <Text style={styles.counter} accessibilityRole="header">{formatLabel(labels.mediaViewerCounter, {
73
+ index: index + 1,
74
+ count
75
+ })}</Text>;
76
+ $[9] = count;
77
+ $[10] = index;
78
+ $[11] = labels;
79
+ $[12] = t5;
80
+ } else {
81
+ t5 = $[12];
82
+ }
83
+ let t6;
84
+ if ($[13] !== t2 || $[14] !== t4 || $[15] !== t5) {
85
+ t6 = <View style={t2} pointerEvents="box-none">{t4}{t5}</View>;
86
+ $[13] = t2;
87
+ $[14] = t4;
88
+ $[15] = t5;
89
+ $[16] = t6;
90
+ } else {
91
+ t6 = $[16];
92
+ }
93
+ let t7;
94
+ if ($[17] !== date || $[18] !== insets.bottom || $[19] !== message) {
95
+ t7 = !!message && <View style={[styles.bottom, {
96
+ paddingBottom: insets.bottom + 12
97
+ }]} pointerEvents="none">{!!message.text && <Text style={styles.caption} numberOfLines={4}>{message.text}</Text>}{!!message.user?.name && <Text style={styles.name} numberOfLines={1}>{message.user.name}</Text>}{!!date && <Text style={styles.date}>{date}</Text>}</View>;
98
+ $[17] = date;
99
+ $[18] = insets.bottom;
100
+ $[19] = message;
101
+ $[20] = t7;
102
+ } else {
103
+ t7 = $[20];
104
+ }
105
+ let t8;
106
+ if ($[21] !== t6 || $[22] !== t7) {
107
+ t8 = <>{t6}{t7}</>;
108
+ $[21] = t6;
109
+ $[22] = t7;
110
+ $[23] = t8;
111
+ } else {
112
+ t8 = $[23];
113
+ }
114
+ return t8;
115
+ }
116
+ const styles = StyleSheet.create({
117
+ top: {
118
+ position: 'absolute',
119
+ top: 0,
120
+ left: 0,
121
+ right: 0,
122
+ flexDirection: 'row',
123
+ alignItems: 'center',
124
+ backgroundColor: 'rgba(0, 0, 0, 0.3)'
125
+ },
126
+ close: {
127
+ width: 56,
128
+ height: 56,
129
+ alignItems: 'center',
130
+ justifyContent: 'center'
131
+ },
132
+ counter: {
133
+ color: '#FFFFFF',
134
+ fontSize: 18,
135
+ fontWeight: '500',
136
+ marginStart: 6
137
+ },
138
+ bottom: {
139
+ position: 'absolute',
140
+ left: 0,
141
+ right: 0,
142
+ bottom: 0,
143
+ paddingTop: 12,
144
+ paddingHorizontal: 16,
145
+ backgroundColor: 'rgba(0, 0, 0, 0.3)'
146
+ },
147
+ caption: {
148
+ color: '#FFFFFF',
149
+ fontSize: 16,
150
+ lineHeight: 21,
151
+ marginBottom: 10
152
+ },
153
+ name: {
154
+ color: '#FFFFFF',
155
+ fontSize: 15,
156
+ fontWeight: '500'
157
+ },
158
+ date: {
159
+ color: 'rgba(255, 255, 255, 0.7)',
160
+ fontSize: 13,
161
+ marginTop: 2
162
+ }
163
+ });
164
+ //# sourceMappingURL=MediaViewerChrome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaViewerChrome.js","names":["React","StyleSheet","Text","View","dayjs","Touchable","useSafeAreaInsets","useChatContext","TIME_FORMAT","useLabels","formatLabel","Icon","CloseIcon","MediaViewerChrome","t0","$","_c","message","index","count","onClose","insets","labels","getLocale","t1","sentAt","createdAt","locale","undefined","mediaViewerDate","date","format","isSame","time","t2","top","styles","paddingTop","t3","Symbol","for","close","t4","t5","counter","mediaViewerCounter","t6","t7","bottom","paddingBottom","text","caption","user","name","t8","create","position","left","right","flexDirection","alignItems","backgroundColor","width","height","justifyContent","color","fontSize","fontWeight","marginStart","paddingHorizontal","lineHeight","marginBottom","marginTop"],"sources":["../../../src/components/mediaViewer/MediaViewerChrome.tsx"],"sourcesContent":["import React from 'react'\nimport { StyleSheet, Text, View } from 'react-native'\nimport dayjs from 'dayjs'\nimport { Touchable } from 'react-native-gesture-handler'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\n\nimport { useChatContext } from '../../ChatContext'\nimport { TIME_FORMAT } from '../../Constant'\nimport { useLabels } from '../../hooks/useLabels'\nimport { formatLabel } from '../../i18n'\nimport { IMessage } from '../../Models'\nimport { Icon } from '../Icon'\nimport { CloseIcon } from '../MediaControls'\n\nexport interface MediaViewerChromeProps {\n message: IMessage | undefined\n index: number\n count: number\n onClose: () => void\n}\n\n/**\n * The viewer's bars, as in Telegram's: a close button and \"3 of 12\" on top; the caption, the\n * sender and when it was sent at the bottom, over a shade so they read on any photo.\n */\nexport function MediaViewerChrome ({ message, index, count, onClose }: MediaViewerChromeProps) {\n const insets = useSafeAreaInsets()\n const labels = useLabels()\n const { getLocale } = useChatContext()\n\n const sentAt = message?.createdAt != null ? dayjs(message.createdAt).locale(getLocale()) : undefined\n const date = sentAt\n ? formatLabel(labels.mediaViewerDate, {\n date: sentAt.format(sentAt.isSame(dayjs(), 'year') ? 'D MMM' : 'D MMM YYYY'),\n time: sentAt.format(TIME_FORMAT),\n })\n : undefined\n\n return (\n <>\n <View style={[styles.top, { paddingTop: insets.top }]} pointerEvents='box-none'>\n <Touchable onPress={onClose} accessibilityRole='button' accessibilityLabel='Close'>\n <View style={styles.close}>\n <Icon name='close' color='#FFFFFF' size={24} fallback={<CloseIcon color='#FFFFFF' size={24} />} />\n </View>\n </Touchable>\n {count > 1 && (\n <Text style={styles.counter} accessibilityRole='header'>\n {formatLabel(labels.mediaViewerCounter, { index: index + 1, count })}\n </Text>\n )}\n </View>\n {!!message && (\n <View style={[styles.bottom, { paddingBottom: insets.bottom + 12 }]} pointerEvents='none'>\n {!!message.text && <Text style={styles.caption} numberOfLines={4}>{message.text}</Text>}\n {!!message.user?.name && <Text style={styles.name} numberOfLines={1}>{message.user.name}</Text>}\n {!!date && <Text style={styles.date}>{date}</Text>}\n </View>\n )}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n top: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.3)',\n },\n close: {\n width: 56,\n height: 56,\n alignItems: 'center',\n justifyContent: 'center',\n },\n counter: {\n color: '#FFFFFF',\n fontSize: 18,\n fontWeight: '500',\n marginStart: 6,\n },\n bottom: {\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n paddingTop: 12,\n paddingHorizontal: 16,\n backgroundColor: 'rgba(0, 0, 0, 0.3)',\n },\n caption: {\n color: '#FFFFFF',\n fontSize: 16,\n lineHeight: 21,\n marginBottom: 10,\n },\n name: {\n color: '#FFFFFF',\n fontSize: 15,\n fontWeight: '500',\n },\n date: {\n color: 'rgba(255, 255, 255, 0.7)',\n fontSize: 13,\n marginTop: 2,\n },\n})\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { MediaGallery } from './gallery';
3
+ /**
4
+ * The chat's one media viewer. Nothing is mounted until a photo is opened; then the photos are
5
+ * read once, so messages arriving while it is open do not shift the page under the finger.
6
+ */
7
+ export declare function MediaViewerHost({ gallery }: {
8
+ gallery: MediaGallery;
9
+ }): React.JSX.Element | null;
10
+ //# sourceMappingURL=MediaViewerHost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaViewerHost.d.ts","sourceRoot":"","sources":["../../../src/components/mediaViewer/MediaViewerHost.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAkB,MAAM,WAAW,CAAA;AAGxD;;;GAGG;AACH,wBAAgB,eAAe,CAAE,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,4BAqBtE"}
@@ -0,0 +1,76 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import React, { useMemo } from 'react';
3
+ import { useOpenMediaId } from './gallery';
4
+ import { MediaViewer } from './MediaViewer';
5
+
6
+ /**
7
+ * The chat's one media viewer. Nothing is mounted until a photo is opened; then the photos are
8
+ * read once, so messages arriving while it is open do not shift the page under the finger.
9
+ */
10
+ export function MediaViewerHost(t0) {
11
+ const $ = _c(14);
12
+ const {
13
+ gallery
14
+ } = t0;
15
+ const openId = useOpenMediaId(gallery);
16
+ let t1;
17
+ bb0: {
18
+ if (openId == null) {
19
+ t1 = null;
20
+ break bb0;
21
+ }
22
+ let items;
23
+ let t2;
24
+ if ($[0] !== gallery || $[1] !== openId) {
25
+ items = gallery.getItems();
26
+ let t3;
27
+ if ($[4] !== openId) {
28
+ t3 = item => item._id === openId;
29
+ $[4] = openId;
30
+ $[5] = t3;
31
+ } else {
32
+ t3 = $[5];
33
+ }
34
+ t2 = items.findIndex(t3);
35
+ $[0] = gallery;
36
+ $[1] = openId;
37
+ $[2] = items;
38
+ $[3] = t2;
39
+ } else {
40
+ items = $[2];
41
+ t2 = $[3];
42
+ }
43
+ const index = t2;
44
+ let t3;
45
+ if ($[6] !== index || $[7] !== items) {
46
+ t3 = index < 0 ? null : {
47
+ items,
48
+ index
49
+ };
50
+ $[6] = index;
51
+ $[7] = items;
52
+ $[8] = t3;
53
+ } else {
54
+ t3 = $[8];
55
+ }
56
+ t1 = t3;
57
+ }
58
+ const gallerySnapshot = t1;
59
+ if (!gallerySnapshot) {
60
+ return null;
61
+ }
62
+ const t2 = String(openId);
63
+ let t3;
64
+ if ($[9] !== gallery.close || $[10] !== gallerySnapshot.index || $[11] !== gallerySnapshot.items || $[12] !== t2) {
65
+ t3 = <MediaViewer key={t2} items={gallerySnapshot.items} initialIndex={gallerySnapshot.index} onClose={gallery.close} />;
66
+ $[9] = gallery.close;
67
+ $[10] = gallerySnapshot.index;
68
+ $[11] = gallerySnapshot.items;
69
+ $[12] = t2;
70
+ $[13] = t3;
71
+ } else {
72
+ t3 = $[13];
73
+ }
74
+ return t3;
75
+ }
76
+ //# sourceMappingURL=MediaViewerHost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaViewerHost.js","names":["React","useMemo","useOpenMediaId","MediaViewer","MediaViewerHost","t0","$","_c","gallery","openId","t1","bb0","items","t2","getItems","t3","item","_id","findIndex","index","gallerySnapshot","String","close"],"sources":["../../../src/components/mediaViewer/MediaViewerHost.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\n\nimport { MediaGallery, useOpenMediaId } from './gallery'\nimport { MediaViewer } from './MediaViewer'\n\n/**\n * The chat's one media viewer. Nothing is mounted until a photo is opened; then the photos are\n * read once, so messages arriving while it is open do not shift the page under the finger.\n */\nexport function MediaViewerHost ({ gallery }: { gallery: MediaGallery }) {\n const openId = useOpenMediaId(gallery)\n const gallerySnapshot = useMemo(() => {\n if (openId == null)\n return null\n const items = gallery.getItems()\n const index = items.findIndex(item => item._id === openId)\n return index < 0 ? null : { items, index }\n }, [gallery, openId])\n\n if (!gallerySnapshot)\n return null\n\n return (\n <MediaViewer\n key={String(openId)}\n items={gallerySnapshot.items}\n initialIndex={gallerySnapshot.index}\n onClose={gallery.close}\n />\n )\n}\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AAEtC,SAAuBC,cAAc,QAAQ,WAAW;AACxD,SAASC,WAAW,QAAQ,eAAe;;AAE3C;AACA;AACA;AACA;AACA,OAAO,SAAAC,gBAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAA0B;IAAAC;EAAA,IAAAH,EAAsC;EACrE,MAAAI,MAAA,GAAeP,cAAc,CAACM,OAAO,CAAC;EAAA,IAAAE,EAAA;EAAAC,GAAA;IAEpC,IAAIF,MAAM,IAAI,IAAI;MAChBC,EAAA,GAAO,IAAI;MAAX,MAAAC,GAAA;IAAW;IAAA,IAAAC,KAAA;IAAA,IAAAC,EAAA;IAAA,IAAAP,CAAA,QAAAE,OAAA,IAAAF,CAAA,QAAAG,MAAA;MACbG,KAAA,GAAcJ,OAAO,CAAAM,QAAS,CAAC,CAAC;MAAA,IAAAC,EAAA;MAAA,IAAAT,CAAA,QAAAG,MAAA;QACFM,EAAA,GAAAC,IAAA,IAAQA,IAAI,CAAAC,GAAI,KAAKR,MAAM;QAAAH,CAAA,MAAAG,MAAA;QAAAH,CAAA,MAAAS,EAAA;MAAA;QAAAA,EAAA,GAAAT,CAAA;MAAA;MAA3CO,EAAA,GAAAD,KAAK,CAAAM,SAAU,CAACH,EAA2B,CAAC;MAAAT,CAAA,MAAAE,OAAA;MAAAF,CAAA,MAAAG,MAAA;MAAAH,CAAA,MAAAM,KAAA;MAAAN,CAAA,MAAAO,EAAA;IAAA;MAAAD,KAAA,GAAAN,CAAA;MAAAO,EAAA,GAAAP,CAAA;IAAA;IAA1D,MAAAa,KAAA,GAAcN,EAA4C;IAAA,IAAAE,EAAA;IAAA,IAAAT,CAAA,QAAAa,KAAA,IAAAb,CAAA,QAAAM,KAAA;MACnDG,EAAA,GAAAI,KAAK,GAAG,CAA2B,GAAnC,IAAmC,GAAnC;QAAAP,KAAA;QAAAO;MAAkC,CAAC;MAAAb,CAAA,MAAAa,KAAA;MAAAb,CAAA,MAAAM,KAAA;MAAAN,CAAA,MAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IAA1CI,EAAA,GAAOK,EAAmC;EAAA;EAL5C,MAAAK,eAAA,GAAwBV,EAMH;EAErB,IAAI,CAACU,eAAe;IAAA,OACX,IAAI;EAAA;EAIJ,MAAAP,EAAA,GAAAQ,MAAM,CAACZ,MAAM,CAAC;EAAA,IAAAM,EAAA;EAAA,IAAAT,CAAA,QAAAE,OAAA,CAAAc,KAAA,IAAAhB,CAAA,SAAAc,eAAA,CAAAD,KAAA,IAAAb,CAAA,SAAAc,eAAA,CAAAR,KAAA,IAAAN,CAAA,SAAAO,EAAA;IADrBE,EAAA,IAAC,WAAW,CACL,GAAc,CAAd,CAAAF,EAAa,CAAC,CACZ,KAAqB,CAArB,CAAAO,eAAe,CAAAR,KAAK,CAAC,CACd,YAAqB,CAArB,CAAAQ,eAAe,CAAAD,KAAK,CAAC,CAC1B,OAAa,CAAb,CAAAX,OAAO,CAAAc,KAAK,CAAC,GACtB;IAAAhB,CAAA,MAAAE,OAAA,CAAAc,KAAA;IAAAhB,CAAA,OAAAc,eAAA,CAAAD,KAAA;IAAAb,CAAA,OAAAc,eAAA,CAAAR,KAAA;IAAAN,CAAA,OAAAO,EAAA;IAAAP,CAAA,OAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,OALFS,EAKE;AAAA","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ import React, { RefObject } from 'react';
2
+ import { ImageProps } from 'react-native';
3
+ import { IMessage } from '../../Models';
4
+ export interface MediaViewerPageProps {
5
+ message: IMessage;
6
+ index: number;
7
+ width: number;
8
+ height: number;
9
+ /** The page's full width, gap included: what the pager scrolls by. */
10
+ pageWidth: number;
11
+ listRef: RefObject<{
12
+ scrollToOffset: (params: {
13
+ offset: number;
14
+ animated?: boolean;
15
+ }) => void;
16
+ } | null>;
17
+ imageProps?: Partial<ImageProps>;
18
+ onZoomStateChange: (index: number, isZoomed: boolean) => void;
19
+ }
20
+ /**
21
+ * One photo in the viewer, fitted to the screen and zoomable. Panned to its edge while zoomed,
22
+ * it hands the swipe on to the pager, as Telegram's viewer does.
23
+ */
24
+ export declare function MediaViewerPage({ message, index, width, height, pageWidth, listRef, imageProps, onZoomStateChange }: MediaViewerPageProps): React.JSX.Element;
25
+ //# sourceMappingURL=MediaViewerPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaViewerPage.d.ts","sourceRoot":"","sources":["../../../src/components/mediaViewer/MediaViewerPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAA;AAC7D,OAAO,EAAS,UAAU,EAAoB,MAAM,cAAc,CAAA;AAGlE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAwBvC,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,QAAQ,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,SAAS,CAAC;QAAE,cAAc,EAAE,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;SAAE,KAAK,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAA;IACvG,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;IAChC,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAA;CAC9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,EAAE,oBAAoB,qBAuB1I"}
@@ -0,0 +1,194 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import React, { useEffect, useState } from 'react';
3
+ import { Image, StyleSheet, View } from 'react-native';
4
+ import Zoom from 'react-native-zoom-reanimated';
5
+ // Sizes are read once per photo for the life of the app: paging back to a photo must not wait
6
+ // on another round trip before it can lay out.
7
+ const sizes = new Map();
8
+ function useImageSize(uri) {
9
+ const $ = _c(8);
10
+ let t0;
11
+ if ($[0] !== uri) {
12
+ t0 = () => uri ? sizes.get(uri) : undefined;
13
+ $[0] = uri;
14
+ $[1] = t0;
15
+ } else {
16
+ t0 = $[1];
17
+ }
18
+ const [size, setSize] = useState(t0);
19
+ let t1;
20
+ let t2;
21
+ if ($[2] !== uri) {
22
+ t1 = () => {
23
+ if (!uri || sizes.has(uri)) {
24
+ return;
25
+ }
26
+ let isCurrent = true;
27
+ Image.getSize(uri, (width, height) => {
28
+ sizes.set(uri, {
29
+ width,
30
+ height
31
+ });
32
+ if (isCurrent) {
33
+ setSize({
34
+ width,
35
+ height
36
+ });
37
+ }
38
+ }, _temp);
39
+ return () => {
40
+ isCurrent = false;
41
+ };
42
+ };
43
+ t2 = [uri];
44
+ $[2] = uri;
45
+ $[3] = t1;
46
+ $[4] = t2;
47
+ } else {
48
+ t1 = $[3];
49
+ t2 = $[4];
50
+ }
51
+ useEffect(t1, t2);
52
+ let t3;
53
+ if ($[5] !== size || $[6] !== uri) {
54
+ t3 = uri ? size ?? sizes.get(uri) : undefined;
55
+ $[5] = size;
56
+ $[6] = uri;
57
+ $[7] = t3;
58
+ } else {
59
+ t3 = $[7];
60
+ }
61
+ return t3;
62
+ }
63
+ function _temp() {}
64
+ /**
65
+ * One photo in the viewer, fitted to the screen and zoomable. Panned to its edge while zoomed,
66
+ * it hands the swipe on to the pager, as Telegram's viewer does.
67
+ */
68
+ export function MediaViewerPage(t0) {
69
+ const $ = _c(31);
70
+ const {
71
+ message,
72
+ index,
73
+ width,
74
+ height,
75
+ pageWidth,
76
+ listRef,
77
+ imageProps,
78
+ onZoomStateChange
79
+ } = t0;
80
+ const uri = message.image;
81
+ const size = useImageSize(uri);
82
+ const scale = size ? Math.min(width / size.width, height / size.height) : 1;
83
+ let t1;
84
+ if ($[0] !== height || $[1] !== scale || $[2] !== size || $[3] !== width) {
85
+ t1 = size ? {
86
+ width: size.width * scale,
87
+ height: size.height * scale
88
+ } : {
89
+ width,
90
+ height
91
+ };
92
+ $[0] = height;
93
+ $[1] = scale;
94
+ $[2] = size;
95
+ $[3] = width;
96
+ $[4] = t1;
97
+ } else {
98
+ t1 = $[4];
99
+ }
100
+ const imageStyle = t1;
101
+ let t2;
102
+ if ($[5] !== pageWidth) {
103
+ t2 = [styles.page, {
104
+ width: pageWidth
105
+ }];
106
+ $[5] = pageWidth;
107
+ $[6] = t2;
108
+ } else {
109
+ t2 = $[6];
110
+ }
111
+ let t3;
112
+ if ($[7] !== height || $[8] !== width) {
113
+ t3 = [styles.center, {
114
+ width,
115
+ height
116
+ }];
117
+ $[7] = height;
118
+ $[8] = width;
119
+ $[9] = t3;
120
+ } else {
121
+ t3 = $[9];
122
+ }
123
+ let t4;
124
+ if ($[10] !== index || $[11] !== onZoomStateChange) {
125
+ t4 = isZoomed => onZoomStateChange(index, isZoomed);
126
+ $[10] = index;
127
+ $[11] = onZoomStateChange;
128
+ $[12] = t4;
129
+ } else {
130
+ t4 = $[12];
131
+ }
132
+ let t5;
133
+ if ($[13] !== uri) {
134
+ t5 = {
135
+ uri
136
+ };
137
+ $[13] = uri;
138
+ $[14] = t5;
139
+ } else {
140
+ t5 = $[14];
141
+ }
142
+ let t6;
143
+ if ($[15] !== imageProps || $[16] !== imageStyle || $[17] !== t5) {
144
+ t6 = <Image source={t5} style={imageStyle} resizeMode="contain" {...imageProps} />;
145
+ $[15] = imageProps;
146
+ $[16] = imageStyle;
147
+ $[17] = t5;
148
+ $[18] = t6;
149
+ } else {
150
+ t6 = $[18];
151
+ }
152
+ let t7;
153
+ if ($[19] !== index || $[20] !== listRef || $[21] !== pageWidth || $[22] !== t4 || $[23] !== t6) {
154
+ t7 = <Zoom enableGallerySwipe={true} parentScrollRef={listRef} currentIndex={index} itemWidth={pageWidth} onZoomStateChange={t4}>{t6}</Zoom>;
155
+ $[19] = index;
156
+ $[20] = listRef;
157
+ $[21] = pageWidth;
158
+ $[22] = t4;
159
+ $[23] = t6;
160
+ $[24] = t7;
161
+ } else {
162
+ t7 = $[24];
163
+ }
164
+ let t8;
165
+ if ($[25] !== t3 || $[26] !== t7) {
166
+ t8 = <View style={t3}>{t7}</View>;
167
+ $[25] = t3;
168
+ $[26] = t7;
169
+ $[27] = t8;
170
+ } else {
171
+ t8 = $[27];
172
+ }
173
+ let t9;
174
+ if ($[28] !== t2 || $[29] !== t8) {
175
+ t9 = <View style={t2}>{t8}</View>;
176
+ $[28] = t2;
177
+ $[29] = t8;
178
+ $[30] = t9;
179
+ } else {
180
+ t9 = $[30];
181
+ }
182
+ return t9;
183
+ }
184
+ const styles = StyleSheet.create({
185
+ page: {
186
+ alignItems: 'flex-start',
187
+ justifyContent: 'center'
188
+ },
189
+ center: {
190
+ alignItems: 'center',
191
+ justifyContent: 'center'
192
+ }
193
+ });
194
+ //# sourceMappingURL=MediaViewerPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaViewerPage.js","names":["React","useEffect","useState","Image","StyleSheet","View","Zoom","sizes","Map","useImageSize","uri","$","_c","t0","get","undefined","size","setSize","t1","t2","has","isCurrent","getSize","width","height","set","_temp","t3","MediaViewerPage","message","index","pageWidth","listRef","imageProps","onZoomStateChange","image","scale","Math","min","imageStyle","styles","page","center","t4","isZoomed","t5","t6","t7","t8","t9","create","alignItems","justifyContent"],"sources":["../../../src/components/mediaViewer/MediaViewerPage.tsx"],"sourcesContent":["import React, { RefObject, useEffect, useState } from 'react'\nimport { Image, ImageProps, StyleSheet, View } from 'react-native'\nimport Zoom from 'react-native-zoom-reanimated'\n\nimport { IMessage } from '../../Models'\n\n// Sizes are read once per photo for the life of the app: paging back to a photo must not wait\n// on another round trip before it can lay out.\nconst sizes = new Map<string, { width: number, height: number }>()\n\nfunction useImageSize (uri: string | undefined) {\n const [size, setSize] = useState(() => (uri ? sizes.get(uri) : undefined))\n useEffect(() => {\n if (!uri || sizes.has(uri))\n return\n let isCurrent = true\n Image.getSize(uri, (width, height) => {\n sizes.set(uri, { width, height })\n if (isCurrent)\n setSize({ width, height })\n }, () => {})\n return () => {\n isCurrent = false\n }\n }, [uri])\n return uri ? size ?? sizes.get(uri) : undefined\n}\n\nexport interface MediaViewerPageProps {\n message: IMessage\n index: number\n width: number\n height: number\n /** The page's full width, gap included: what the pager scrolls by. */\n pageWidth: number\n listRef: RefObject<{ scrollToOffset: (params: { offset: number, animated?: boolean }) => void } | null>\n imageProps?: Partial<ImageProps>\n onZoomStateChange: (index: number, isZoomed: boolean) => void\n}\n\n/**\n * One photo in the viewer, fitted to the screen and zoomable. Panned to its edge while zoomed,\n * it hands the swipe on to the pager, as Telegram's viewer does.\n */\nexport function MediaViewerPage ({ message, index, width, height, pageWidth, listRef, imageProps, onZoomStateChange }: MediaViewerPageProps) {\n const uri = message.image\n const size = useImageSize(uri)\n const scale = size ? Math.min(width / size.width, height / size.height) : 1\n const imageStyle = size\n ? { width: size.width * scale, height: size.height * scale }\n : { width, height }\n\n return (\n <View style={[styles.page, { width: pageWidth }]}>\n <View style={[styles.center, { width, height }]}>\n <Zoom\n enableGallerySwipe\n parentScrollRef={listRef}\n currentIndex={index}\n itemWidth={pageWidth}\n onZoomStateChange={isZoomed => onZoomStateChange(index, isZoomed)}\n >\n <Image source={{ uri }} style={imageStyle} resizeMode='contain' {...imageProps} />\n </Zoom>\n </View>\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n page: {\n alignItems: 'flex-start',\n justifyContent: 'center',\n },\n center: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n})\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ import { IMessage } from '../../Models';
2
+ import { Store } from '../../store';
3
+ /**
4
+ * The chat's photos, for the media viewer: tapping a photo opens the viewer on it, and the
5
+ * viewer pages through every photo in the conversation, oldest first, as Telegram's does
6
+ * (swiping left reaches newer photos, the counter reads "3 of 12" from the oldest).
7
+ */
8
+ export interface MediaGallery {
9
+ /** The message whose photo is open, or null while the viewer is closed. */
10
+ openId: Store<IMessage['_id'] | null>;
11
+ open: (messageId: IMessage['_id']) => void;
12
+ close: () => void;
13
+ /** The photo messages, oldest first, read when the viewer opens. */
14
+ getItems: () => IMessage[];
15
+ /** The chat's messages as `Chat` holds them, newest first; set after each render. */
16
+ setMessages: (messages: readonly IMessage[]) => void;
17
+ }
18
+ /**
19
+ * The messages are only read when the viewer opens, so the gallery never re-renders anything
20
+ * as messages arrive.
21
+ */
22
+ export declare function createMediaGallery(): MediaGallery;
23
+ export declare const MediaGalleryContext: import("react").Context<MediaGallery | null>;
24
+ export declare const useMediaGallery: () => MediaGallery | null;
25
+ /** The message whose photo is open; re-renders only when the viewer opens or closes. */
26
+ export declare const useOpenMediaId: (gallery: MediaGallery | null) => string | number | null;
27
+ //# sourceMappingURL=gallery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gallery.d.ts","sourceRoot":"","sources":["../../../src/components/mediaViewer/gallery.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAe,KAAK,EAAY,MAAM,aAAa,CAAA;AAE1D;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,2EAA2E;IAC3E,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;IACrC,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI,CAAA;IAC1C,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,QAAQ,EAAE,CAAA;IAC1B,qFAAqF;IACrF,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,QAAQ,EAAE,KAAK,IAAI,CAAA;CACrD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAK,YAAY,CAkBlD;AAED,eAAO,MAAM,mBAAmB,8CAA2C,CAAA;AAE3E,eAAO,MAAM,eAAe,2BAAwC,CAAA;AAIpE,wFAAwF;AACxF,eAAO,MAAM,cAAc,GAAI,SAAS,YAAY,GAAG,IAAI,2BAA8C,CAAA"}
@@ -0,0 +1,41 @@
1
+ import { createContext, useContext } from 'react';
2
+ import { createStore, useStore } from '../../store';
3
+
4
+ /**
5
+ * The chat's photos, for the media viewer: tapping a photo opens the viewer on it, and the
6
+ * viewer pages through every photo in the conversation, oldest first, as Telegram's does
7
+ * (swiping left reaches newer photos, the counter reads "3 of 12" from the oldest).
8
+ */
9
+
10
+ /**
11
+ * The messages are only read when the viewer opens, so the gallery never re-renders anything
12
+ * as messages arrive.
13
+ */
14
+ export function createMediaGallery() {
15
+ const openId = createStore(null);
16
+ let messages = [];
17
+ return {
18
+ setMessages: next => {
19
+ messages = next;
20
+ },
21
+ openId,
22
+ open: messageId => openId.set(messageId),
23
+ close: () => openId.set(null),
24
+ getItems: () => {
25
+ const items = [];
26
+ for (let i = messages.length - 1; i >= 0; i--) if (messages[i].image) items.push(messages[i]);
27
+ return items;
28
+ }
29
+ };
30
+ }
31
+ export const MediaGalleryContext = createContext(null);
32
+ export const useMediaGallery = () => {
33
+ return useContext(MediaGalleryContext);
34
+ };
35
+ const openIdOf = id => id;
36
+
37
+ /** The message whose photo is open; re-renders only when the viewer opens or closes. */
38
+ export const useOpenMediaId = gallery => {
39
+ return useStore(gallery?.openId, openIdOf, null);
40
+ };
41
+ //# sourceMappingURL=gallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gallery.js","names":["createContext","useContext","createStore","useStore","createMediaGallery","openId","messages","setMessages","next","open","messageId","set","close","getItems","items","i","length","image","push","MediaGalleryContext","useMediaGallery","openIdOf","id","useOpenMediaId","gallery"],"sources":["../../../src/components/mediaViewer/gallery.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nimport { IMessage } from '../../Models'\nimport { createStore, Store, useStore } from '../../store'\n\n/**\n * The chat's photos, for the media viewer: tapping a photo opens the viewer on it, and the\n * viewer pages through every photo in the conversation, oldest first, as Telegram's does\n * (swiping left reaches newer photos, the counter reads \"3 of 12\" from the oldest).\n */\nexport interface MediaGallery {\n /** The message whose photo is open, or null while the viewer is closed. */\n openId: Store<IMessage['_id'] | null>\n open: (messageId: IMessage['_id']) => void\n close: () => void\n /** The photo messages, oldest first, read when the viewer opens. */\n getItems: () => IMessage[]\n /** The chat's messages as `Chat` holds them, newest first; set after each render. */\n setMessages: (messages: readonly IMessage[]) => void\n}\n\n/**\n * The messages are only read when the viewer opens, so the gallery never re-renders anything\n * as messages arrive.\n */\nexport function createMediaGallery (): MediaGallery {\n const openId = createStore<IMessage['_id'] | null>(null)\n let messages: readonly IMessage[] = []\n return {\n setMessages: next => {\n messages = next\n },\n openId,\n open: messageId => openId.set(messageId),\n close: () => openId.set(null),\n getItems: () => {\n const items: IMessage[] = []\n for (let i = messages.length - 1; i >= 0; i--)\n if (messages[i].image)\n items.push(messages[i])\n return items\n },\n }\n}\n\nexport const MediaGalleryContext = createContext<MediaGallery | null>(null)\n\nexport const useMediaGallery = () => useContext(MediaGalleryContext)\n\nconst openIdOf = (id: IMessage['_id'] | null) => id\n\n/** The message whose photo is open; re-renders only when the viewer opens or closes. */\nexport const useOpenMediaId = (gallery: MediaGallery | null) => useStore(gallery?.openId, openIdOf, null)\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD,SAASC,WAAW,EAASC,QAAQ,QAAQ,aAAa;;AAE1D;AACA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAkB;EAClD,MAAMC,MAAM,GAAGH,WAAW,CAAyB,IAAI,CAAC;EACxD,IAAII,QAA6B,GAAG,EAAE;EACtC,OAAO;IACLC,WAAW,EAAEC,IAAI,IAAI;MACnBF,QAAQ,GAAGE,IAAI;IACjB,CAAC;IACDH,MAAM;IACNI,IAAI,EAAEC,SAAS,IAAIL,MAAM,CAACM,GAAG,CAACD,SAAS,CAAC;IACxCE,KAAK,EAAEA,CAAA,KAAMP,MAAM,CAACM,GAAG,CAAC,IAAI,CAAC;IAC7BE,QAAQ,EAAEA,CAAA,KAAM;MACd,MAAMC,KAAiB,GAAG,EAAE;MAC5B,KAAK,IAAIC,CAAC,GAAGT,QAAQ,CAACU,MAAM,GAAG,CAAC,EAAED,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAC3C,IAAIT,QAAQ,CAACS,CAAC,CAAC,CAACE,KAAK,EACnBH,KAAK,CAACI,IAAI,CAACZ,QAAQ,CAACS,CAAC,CAAC,CAAC;MAC3B,OAAOD,KAAK;IACd;EACF,CAAC;AACH;AAEA,OAAO,MAAMK,mBAAmB,GAAGnB,aAAa,CAAsB,IAAI,CAAC;AAE3E,OAAO,MAAMoB,eAAe,GAAGA,CAAA;EAAA,OAAMnB,UAAU,CAACkB,mBAAmB,CAAC;AAAA;AAEpE,MAAME,QAAQ,GAAIC,EAA0B,IAAKA,EAAE;;AAEnD;AACA,OAAO,MAAMC,cAAc,GAAGC,OAAA;EAAA,OAAkCrB,QAAQ,CAACqB,OAAO,EAAAnB,MAAQ,EAAEgB,QAAQ,EAAE,IAAI,CAAC;AAAA","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import { StyleProp, ViewStyle } from 'react-native';
3
+ import { KeyedStore } from '../store';
4
+ /**
5
+ * Which message is flashing, the highlight after jumping to a quoted message. Each row reads
6
+ * its own token, so a flash wakes the row it lands on and the one it leaves.
7
+ */
8
+ export interface MessageHighlightStore {
9
+ subscribe: (listener: () => void) => () => void;
10
+ /** The flash count for this message, 0 when it is not flashing. */
11
+ getToken: (messageId: string | number) => number;
12
+ highlight: (messageId: string | number) => void;
13
+ dispose: () => void;
14
+ /** @internal The flash token by message id, read by each row. */
15
+ tokens: KeyedStore<string | number, number>;
16
+ }
17
+ export declare function createMessageHighlightStore(): MessageHighlightStore;
18
+ export declare const MessageHighlightContext: React.Context<MessageHighlightStore | null>;
19
+ /** The flash count for this message (0 when it is not flashing, or outside a `Chat`). */
20
+ export declare function useMessageHighlightToken(messageId: string | number | undefined): number;
21
+ /**
22
+ * The band across the whole row behind a highlighted message. It shows at once and
23
+ * fades out. Mounted only while its message is flashing, so the rest of the list carries no
24
+ * shared value for it. `Message` passes `colors.selectionBackground`, which carries its own
25
+ * alpha, at `opacity` 1; the default draws a plain accent at 0x28 alpha.
26
+ */
27
+ export declare const HighlightOverlay: ({ token, color, opacity }: {
28
+ token: number;
29
+ color: string;
30
+ opacity?: number;
31
+ }) => React.JSX.Element;
32
+ /**
33
+ * The bubble's own part of the flash: it swaps to its selected color for as long as
34
+ * the row band shows.
35
+ */
36
+ export declare const BubbleHighlightTint: ({ token, color, cornerStyle }: {
37
+ token: number;
38
+ color: string;
39
+ cornerStyle: StyleProp<ViewStyle>;
40
+ }) => React.JSX.Element;
41
+ //# sourceMappingURL=messageHighlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageHighlight.d.ts","sourceRoot":"","sources":["../../src/components/messageHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAA;AACnE,OAAO,EAAE,SAAS,EAAc,SAAS,EAAE,MAAM,cAAc,CAAA;AAS/D,OAAO,EAAoB,UAAU,EAAiB,MAAM,UAAU,CAAA;AAEtE;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;IAC/C,mEAAmE;IACnE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;IAChD,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC/C,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,iEAAiE;IACjE,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAA;CAC5C;AAKD,wBAAgB,2BAA2B,IAAK,qBAAqB,CAwBpE;AAED,eAAO,MAAM,uBAAuB,6CAAoD,CAAA;AAExF,yFAAyF;AACzF,wBAAgB,wBAAwB,CAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAGxF;AAuBD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,2BAA+C;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,sBAUjI,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,+BAA+B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAAE,sBAUrI,CAAA"}