@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
@@ -1,49 +1,162 @@
1
+ import { c as _c } from "react/compiler-runtime";
1
2
  import React from 'react';
2
- import { ActivityIndicator, StyleSheet, View, Text } from 'react-native';
3
+ import { StyleSheet, View, Text } from 'react-native';
3
4
  import { Color } from './Color';
5
+ import { ServiceSpinner } from './components/ServiceSpinner';
4
6
  import { TouchableOpacity } from './components/TouchableOpacity';
5
7
  import { useLabels } from './hooks/useLabels';
6
8
  import { useThemedStyles } from './hooks/useTheme';
7
9
  import stylesCommon from './styles';
8
- export const LoadEarlierMessages = ({ isLoading = false, onPress, label, containerStyle, wrapperStyle, textStyle, activityIndicatorColor = 'white', activityIndicatorSize = 'small', activityIndicatorStyle, }) => {
9
- const styles = useThemedStyles(createStyles);
10
- const labels = useLabels();
11
- const resolvedLabel = label ?? labels.loadEarlier;
12
- return (<TouchableOpacity style={[styles.container, containerStyle]} onPress={onPress} enabled={!isLoading} accessibilityRole='button'>
13
- <View style={[stylesCommon.centerItems, styles.wrapper, wrapperStyle]}>
14
- {isLoading
15
- ? (<ActivityIndicator color={activityIndicatorColor} size={activityIndicatorSize} style={[styles.activityIndicator, activityIndicatorStyle]}/>)
16
- : (<View style={styles.textContainer}>
17
- <Text style={[styles.text, textStyle]}>
18
- {resolvedLabel}
19
- </Text>
20
- </View>)}
21
- </View>
22
- </TouchableOpacity>);
10
+ /** The loading row is 44 tall around the 36 circle. */
11
+ const LOADING_ROW_HEIGHT = 44;
12
+ export const LoadEarlierMessages = t0 => {
13
+ const $ = _c(34);
14
+ const {
15
+ isLoading: t1,
16
+ isInfiniteScrollEnabled: t2,
17
+ onPress,
18
+ label,
19
+ containerStyle,
20
+ wrapperStyle,
21
+ textStyle,
22
+ activityIndicatorColor,
23
+ activityIndicatorStyle
24
+ } = t0;
25
+ const isLoading = t1 === undefined ? false : t1;
26
+ const isInfiniteScrollEnabled = t2 === undefined ? false : t2;
27
+ const styles = useThemedStyles(createStyles);
28
+ const labels = useLabels();
29
+ const resolvedLabel = label ?? labels.loadEarlier;
30
+ if (isLoading || isInfiniteScrollEnabled) {
31
+ let t3;
32
+ if ($[0] !== containerStyle || $[1] !== styles.loadingRow) {
33
+ t3 = [styles.loadingRow, containerStyle];
34
+ $[0] = containerStyle;
35
+ $[1] = styles.loadingRow;
36
+ $[2] = t3;
37
+ } else {
38
+ t3 = $[2];
39
+ }
40
+ let t4;
41
+ if ($[3] !== activityIndicatorStyle || $[4] !== wrapperStyle) {
42
+ t4 = [wrapperStyle, activityIndicatorStyle];
43
+ $[3] = activityIndicatorStyle;
44
+ $[4] = wrapperStyle;
45
+ $[5] = t4;
46
+ } else {
47
+ t4 = $[5];
48
+ }
49
+ let t5;
50
+ if ($[6] !== activityIndicatorColor || $[7] !== t4) {
51
+ t5 = <ServiceSpinner color={activityIndicatorColor} style={t4} />;
52
+ $[6] = activityIndicatorColor;
53
+ $[7] = t4;
54
+ $[8] = t5;
55
+ } else {
56
+ t5 = $[8];
57
+ }
58
+ let t6;
59
+ if ($[9] !== t3 || $[10] !== t5) {
60
+ t6 = <View style={t3}>{t5}</View>;
61
+ $[9] = t3;
62
+ $[10] = t5;
63
+ $[11] = t6;
64
+ } else {
65
+ t6 = $[11];
66
+ }
67
+ return t6;
68
+ }
69
+ let t3;
70
+ if ($[12] !== containerStyle || $[13] !== styles.container) {
71
+ t3 = [styles.container, containerStyle];
72
+ $[12] = containerStyle;
73
+ $[13] = styles.container;
74
+ $[14] = t3;
75
+ } else {
76
+ t3 = $[14];
77
+ }
78
+ let t4;
79
+ if ($[15] !== styles.wrapper || $[16] !== wrapperStyle) {
80
+ t4 = [stylesCommon.centerItems, styles.wrapper, wrapperStyle];
81
+ $[15] = styles.wrapper;
82
+ $[16] = wrapperStyle;
83
+ $[17] = t4;
84
+ } else {
85
+ t4 = $[17];
86
+ }
87
+ let t5;
88
+ if ($[18] !== styles.text || $[19] !== textStyle) {
89
+ t5 = [styles.text, textStyle];
90
+ $[18] = styles.text;
91
+ $[19] = textStyle;
92
+ $[20] = t5;
93
+ } else {
94
+ t5 = $[20];
95
+ }
96
+ let t6;
97
+ if ($[21] !== resolvedLabel || $[22] !== t5) {
98
+ t6 = <Text style={t5}>{resolvedLabel}</Text>;
99
+ $[21] = resolvedLabel;
100
+ $[22] = t5;
101
+ $[23] = t6;
102
+ } else {
103
+ t6 = $[23];
104
+ }
105
+ let t7;
106
+ if ($[24] !== styles.textContainer || $[25] !== t6) {
107
+ t7 = <View style={styles.textContainer}>{t6}</View>;
108
+ $[24] = styles.textContainer;
109
+ $[25] = t6;
110
+ $[26] = t7;
111
+ } else {
112
+ t7 = $[26];
113
+ }
114
+ let t8;
115
+ if ($[27] !== t4 || $[28] !== t7) {
116
+ t8 = <View style={t4}>{t7}</View>;
117
+ $[27] = t4;
118
+ $[28] = t7;
119
+ $[29] = t8;
120
+ } else {
121
+ t8 = $[29];
122
+ }
123
+ let t9;
124
+ if ($[30] !== onPress || $[31] !== t3 || $[32] !== t8) {
125
+ t9 = <TouchableOpacity style={t3} onPress={onPress} accessibilityRole="button">{t8}</TouchableOpacity>;
126
+ $[30] = onPress;
127
+ $[31] = t3;
128
+ $[32] = t8;
129
+ $[33] = t9;
130
+ } else {
131
+ t9 = $[33];
132
+ }
133
+ return t9;
23
134
  };
24
- const createStyles = (theme) => StyleSheet.create({
25
- container: {
26
- alignItems: 'center',
27
- marginVertical: 10,
28
- },
29
- wrapper: {
30
- backgroundColor: theme.colors.dayPillBackground,
31
- borderRadius: theme.radii.dayPill,
32
- paddingHorizontal: 12,
33
- paddingVertical: 5,
34
- },
35
- textContainer: {
36
- paddingTop: 3,
37
- paddingBottom: 4,
38
- },
39
- text: {
40
- backgroundColor: Color.backgroundTransparent,
41
- color: theme.colors.dayPillText,
42
- fontSize: 12,
43
- lineHeight: 13,
44
- },
45
- activityIndicator: {
46
- paddingHorizontal: 20,
47
- },
135
+ const createStyles = theme => StyleSheet.create({
136
+ container: {
137
+ alignItems: 'center',
138
+ marginVertical: 10
139
+ },
140
+ wrapper: {
141
+ backgroundColor: theme.colors.dayPillBackground,
142
+ borderRadius: theme.radii.dayPill,
143
+ paddingHorizontal: 12,
144
+ paddingVertical: 5
145
+ },
146
+ textContainer: {
147
+ paddingTop: 3,
148
+ paddingBottom: 4
149
+ },
150
+ text: {
151
+ backgroundColor: Color.backgroundTransparent,
152
+ color: theme.colors.dayPillText,
153
+ fontSize: 12,
154
+ lineHeight: 13
155
+ },
156
+ loadingRow: {
157
+ height: LOADING_ROW_HEIGHT,
158
+ alignItems: 'center',
159
+ justifyContent: 'center'
160
+ }
48
161
  });
49
162
  //# sourceMappingURL=LoadEarlierMessages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadEarlierMessages.js","sourceRoot":"","sources":["../src/LoadEarlierMessages.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,IAAI,EAIJ,IAAI,EAAE,MAAM,cAAc,CAAA;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,YAAY,MAAM,UAAU,CAAA;AAiBnC,MAAM,CAAC,MAAM,mBAAmB,GAAuC,CAAC,EACtE,SAAS,GAAG,KAAK,EACjB,OAAO,EACP,KAAK,EACL,cAAc,EACd,YAAY,EACZ,SAAS,EACT,sBAAsB,GAAG,OAAO,EAChC,qBAAqB,GAAG,OAAO,EAC/B,sBAAsB,GACvB,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;IAC5C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,aAAa,GAAG,KAAK,IAAI,MAAM,CAAC,WAAW,CAAA;IAEjD,OAAO,CACL,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC1C,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CACpB,iBAAiB,CAAC,QAAQ,CAE1B;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CACpE;QAAA,CACE,SAAS;YACP,CAAC,CAAC,CACA,CAAC,iBAAiB,CAChB,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAC9B,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAC5B,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,EAC1D,CACH;YACD,CAAC,CAAC,CACA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAChC;gBAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CACpC;kBAAA,CAAC,aAAa,CAChB;gBAAA,EAAE,IAAI,CACR;cAAA,EAAE,IAAI,CAAC,CAEb,CACF;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IAC3D,SAAS,EAAE;QACT,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,EAAE;KACnB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,iBAAiB;QAC/C,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;QACjC,iBAAiB,EAAE,EAAE;QACrB,eAAe,EAAE,CAAC;KACnB;IACD,aAAa,EAAE;QACb,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,CAAC;KACjB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,KAAK,CAAC,qBAAqB;QAC5C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;KACf;IACD,iBAAiB,EAAE;QACjB,iBAAiB,EAAE,EAAE;KACtB;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"LoadEarlierMessages.js","names":["React","StyleSheet","View","Text","Color","ServiceSpinner","TouchableOpacity","useLabels","useThemedStyles","stylesCommon","LOADING_ROW_HEIGHT","LoadEarlierMessages","t0","$","_c","isLoading","t1","isInfiniteScrollEnabled","t2","onPress","label","containerStyle","wrapperStyle","textStyle","activityIndicatorColor","activityIndicatorStyle","undefined","styles","createStyles","labels","resolvedLabel","loadEarlier","t3","loadingRow","t4","t5","t6","container","wrapper","centerItems","text","t7","textContainer","t8","t9","theme","create","alignItems","marginVertical","backgroundColor","colors","dayPillBackground","borderRadius","radii","dayPill","paddingHorizontal","paddingVertical","paddingTop","paddingBottom","backgroundTransparent","color","dayPillText","fontSize","lineHeight","height","justifyContent"],"sources":["../src/LoadEarlierMessages.tsx"],"sourcesContent":["import React from 'react'\nimport {\n StyleSheet,\n View,\n StyleProp,\n ViewStyle,\n TextStyle,\n Text } from 'react-native'\nimport { Color } from './Color'\nimport { ServiceSpinner } from './components/ServiceSpinner'\nimport { TouchableOpacity } from './components/TouchableOpacity'\nimport { useLabels } from './hooks/useLabels'\nimport { useThemedStyles } from './hooks/useTheme'\nimport stylesCommon from './styles'\nimport { ChatTheme } from './Theme'\n\nexport interface LoadEarlierMessagesProps {\n isAvailable: boolean\n isLoading: boolean\n onPress: () => void\n isInfiniteScrollEnabled?: boolean\n label?: string\n containerStyle?: StyleProp<ViewStyle>\n wrapperStyle?: StyleProp<ViewStyle>\n textStyle?: StyleProp<TextStyle>\n activityIndicatorStyle?: StyleProp<ViewStyle>\n /** Color of the spinner's arc; defaults to the date pill's text color. */\n activityIndicatorColor?: string\n /** @deprecated The spinner is a fixed 28-wide arc in a 36 circle; this is ignored. */\n activityIndicatorSize?: number | 'small' | 'large'\n}\n\n/** The loading row is 44 tall around the 36 circle. */\nconst LOADING_ROW_HEIGHT = 44\n\nexport const LoadEarlierMessages: React.FC<LoadEarlierMessagesProps> = ({\n isLoading = false,\n isInfiniteScrollEnabled = false,\n onPress,\n label,\n containerStyle,\n wrapperStyle,\n textStyle,\n activityIndicatorColor,\n activityIndicatorStyle,\n}) => {\n const styles = useThemedStyles(createStyles)\n const labels = useLabels()\n const resolvedLabel = label ?? labels.loadEarlier\n\n // No button by default: while more history exists the list ends in a loading cell, a\n // spinner in a service circle, and reaching it loads the next page. The labelled button\n // stays for chats that load on tap.\n if (isLoading || isInfiniteScrollEnabled)\n return (\n <View style={[styles.loadingRow, containerStyle]}>\n <ServiceSpinner\n color={activityIndicatorColor}\n style={[wrapperStyle, activityIndicatorStyle]}\n />\n </View>\n )\n\n return (\n <TouchableOpacity\n style={[styles.container, containerStyle]}\n onPress={onPress}\n accessibilityRole='button'\n >\n <View style={[stylesCommon.centerItems, styles.wrapper, wrapperStyle]}>\n <View style={styles.textContainer}>\n <Text style={[styles.text, textStyle]}>\n {resolvedLabel}\n </Text>\n </View>\n </View>\n </TouchableOpacity>\n )\n}\n\nconst createStyles = (theme: ChatTheme) => StyleSheet.create({\n container: {\n alignItems: 'center',\n marginVertical: 10,\n },\n wrapper: {\n backgroundColor: theme.colors.dayPillBackground,\n borderRadius: theme.radii.dayPill,\n paddingHorizontal: 12,\n paddingVertical: 5,\n },\n textContainer: {\n paddingTop: 3,\n paddingBottom: 4,\n },\n text: {\n backgroundColor: Color.backgroundTransparent,\n color: theme.colors.dayPillText,\n fontSize: 12,\n lineHeight: 13,\n },\n loadingRow: {\n height: LOADING_ROW_HEIGHT,\n alignItems: 'center',\n justifyContent: 'center',\n },\n})\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import { StyleProp, ViewStyle } from 'react-native';
3
+ import { SharedValue } from 'react-native-reanimated';
4
+ /** Past 50pt a release replies, and crossing it ticks. */
5
+ export declare const SWIPE_REPLY_THRESHOLD = 50;
6
+ export interface SwipeToReplyRowProps {
7
+ direction: 'left' | 'right';
8
+ /** Whose message it is: the arrow moves half as far beside an outgoing one. */
9
+ position: 'left' | 'right';
10
+ onReply: () => void;
11
+ renderAction?: (progress: SharedValue<number>, translation: SharedValue<number>, position: 'left' | 'right') => React.ReactNode;
12
+ actionContainerStyle?: StyleProp<ViewStyle>;
13
+ /** `false` pauses the swipe without changing the row's tree (selection mode). */
14
+ isEnabled?: boolean;
15
+ children: React.ReactNode;
16
+ }
17
+ /**
18
+ * Swipe-to-reply: drag a message sideways, the arrow fills as you go, a tick
19
+ * marks the point of no return, and letting go past it starts a reply while the row slides back.
20
+ * The row never "opens".
21
+ */
22
+ export declare const SwipeToReplyRow: ({ direction, position, onReply, renderAction, actionContainerStyle, isEnabled, children, }: SwipeToReplyRowProps) => React.JSX.Element;
23
+ //# sourceMappingURL=SwipeToReply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwipeToReply.d.ts","sourceRoot":"","sources":["../../src/Message/SwipeToReply.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,SAAS,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAA;AAErE,OAAiB,EAGf,WAAW,EAOZ,MAAM,yBAAyB,CAAA;AAqBhC,0DAA0D;AAC1D,eAAO,MAAM,qBAAqB,KAAK,CAAA;AA8BvC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAA;IAC3B,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,YAAY,CAAC,EAAE,CACb,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,EAC7B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,QAAQ,EAAE,MAAM,GAAG,OAAO,KACvB,KAAK,CAAC,SAAS,CAAA;IACpB,oBAAoB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC3C,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,4FAQ7B,oBAAoB,sBAuGtB,CAAA"}
@@ -0,0 +1,337 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import React, { useState } from 'react';
3
+ import { StyleSheet, View } from 'react-native';
4
+ import { GestureDetector } from 'react-native-gesture-handler';
5
+ import Animated, { Easing, runOnJS, useAnimatedProps, useAnimatedStyle, useDerivedValue, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
6
+ import { impactHaptic } from '../components/haptics';
7
+ import { Icon } from '../components/Icon';
8
+ import { ReplyArrowIcon } from '../components/MediaControls';
9
+ import { useRowSwipe } from '../gestures/useRowSwipe';
10
+ import { useThemedStyles } from '../hooks/useTheme';
11
+ import { getSvg } from '../optional';
12
+ const svg = getSvg();
13
+ const Svg = svg ? svg.default ?? svg.Svg : null;
14
+ const SvgCircle = svg?.Circle;
15
+ const AnimatedSvgCircle = SvgCircle ? Animated.createAnimatedComponent(SvgCircle) : null;
16
+
17
+ /** The drag starts once the finger has moved 0.4cm sideways, about 25pt. */
18
+ const SWIPE_START = 25;
19
+ /** A mostly-sideways drag: `|dx| / 3 > dy` is required to take over from the list. */
20
+ const SWIPE_FAIL_Y = 9;
21
+ /** The row follows the finger 1:1, up to 80pt. */
22
+ const SWIPE_MAX = 80;
23
+ /** Past 50pt a release replies, and crossing it ticks. */
24
+ export const SWIPE_REPLY_THRESHOLD = 50;
25
+ /** The arrow appears once the row has moved 20pt, and fills over the next 30pt. */
26
+ const ICON_APPEAR = 20;
27
+ const ICON_FILL = 30;
28
+ /** The circle behind the arrow: 16pt radius. */
29
+ const ICON_SIZE = 32;
30
+ /** The row slides back over 180ms on a decelerate curve. */
31
+ const RETURN = {
32
+ duration: 180,
33
+ easing: Easing.out(Easing.quad)
34
+ };
35
+ // AndroidX springs are stiffness + damping ratio on unit mass; Reanimated takes the damping
36
+ // coefficient, `2 * ratio * sqrt(stiffness)`.
37
+ const androidSpring = (stiffness, dampingRatio) => ({
38
+ mass: 1,
39
+ stiffness,
40
+ damping: 2 * dampingRatio * Math.sqrt(stiffness)
41
+ });
42
+ /** The arrow's appearance: stiffness 1500, no bounce. */
43
+ const APPEAR_SPRING = androidSpring(1500, 1);
44
+ /** The arrow's fill: stiffness 400, damping ratio 0.5 (medium bounce). */
45
+ const FILL_SPRING = androidSpring(400, 0.5);
46
+ /** The outer ring: stiffness 200, no bounce. */
47
+ const OUTER_RING_SPRING = androidSpring(200, 1);
48
+ /** Before the threshold the circle shows the service color at 60% of the fill. */
49
+ const PRE_FILL_ALPHA = 0.6;
50
+ /** The 2pt ring that draws itself round the circle as the row moves. */
51
+ const RING_WIDTH = 2;
52
+ const RING_RADIUS = (ICON_SIZE - RING_WIDTH) / 2;
53
+ const RING_LENGTH = 2 * Math.PI * RING_RADIUS;
54
+ /** How far the outer ring grows as it fades, at the threshold. */
55
+ const OUTER_RING_GROWTH = 0.6;
56
+ /**
57
+ * Swipe-to-reply: drag a message sideways, the arrow fills as you go, a tick
58
+ * marks the point of no return, and letting go past it starts a reply while the row slides back.
59
+ * The row never "opens".
60
+ */
61
+ export const SwipeToReplyRow = ({
62
+ direction,
63
+ position,
64
+ onReply,
65
+ renderAction,
66
+ actionContainerStyle,
67
+ isEnabled = true,
68
+ children
69
+ }) => {
70
+ // React Compiler would memoize the gesture config on `offset.value`, which its callbacks read,
71
+ // and so read a shared value during render (Reanimated warns once per row per render).
72
+ 'use no memo';
73
+
74
+ const styles = useThemedStyles(createStyles);
75
+ const iconScale = useSharedValue(0);
76
+ const isIconShown = useSharedValue(false);
77
+ // 1 once past the threshold: the circle fills, and an outer ring grows away and fades.
78
+ const filled = useSharedValue(0);
79
+ const outerRing = useSharedValue(0);
80
+ // The arrow is only mounted while a swipe is on: every row mounting its circle, rings and two
81
+ // SVGs made a chat noticeably slower to open.
82
+ const [isActionMounted, setIsActionMounted] = useState(false);
83
+ const {
84
+ gesture: pan,
85
+ offset
86
+ } = useRowSwipe({
87
+ testID: 'swipe-to-reply',
88
+ isEnabled,
89
+ sign: direction === 'left' ? -1 : 1,
90
+ activeOffsetX: SWIPE_START,
91
+ failOffsetY: SWIPE_FAIL_Y,
92
+ threshold: SWIPE_REPLY_THRESHOLD,
93
+ // Counted from where the drag took over, so the row does not jump when it starts.
94
+ isMeasuredFromStart: true,
95
+ maxDistance: SWIPE_MAX,
96
+ onActivate: () => {
97
+ 'worklet';
98
+
99
+ runOnJS(setIsActionMounted)(true);
100
+ },
101
+ onMove: distance => {
102
+ 'worklet';
103
+
104
+ // Only on a change: reassigning every frame would cancel a running spring.
105
+ const shouldShowIcon = distance >= ICON_APPEAR;
106
+ if (shouldShowIcon !== isIconShown.value) {
107
+ isIconShown.value = shouldShowIcon;
108
+ iconScale.value = withSpring(shouldShowIcon ? 1 : 0, APPEAR_SPRING);
109
+ }
110
+ },
111
+ onThresholdChange: isPast => {
112
+ 'worklet';
113
+
114
+ if (isPast) {
115
+ // The full circle pops, bouncing back to size.
116
+ iconScale.value = 1.25;
117
+ iconScale.value = withSpring(1, FILL_SPRING);
118
+ filled.value = withSpring(1, FILL_SPRING);
119
+ outerRing.value = 0;
120
+ outerRing.value = withSpring(1, OUTER_RING_SPRING);
121
+ runOnJS(impactHaptic)('Light');
122
+ } else {
123
+ filled.value = withTiming(0, RETURN);
124
+ }
125
+ },
126
+ onRelease: isPast_0 => {
127
+ 'worklet';
128
+
129
+ if (isPast_0) runOnJS(onReply)();
130
+ },
131
+ onFinalize: rowOffset => {
132
+ 'worklet';
133
+
134
+ isIconShown.value = false;
135
+ rowOffset.value = withTiming(0, RETURN, isFinished => {
136
+ if (isFinished) runOnJS(setIsActionMounted)(false);
137
+ });
138
+ iconScale.value = withTiming(0, RETURN);
139
+ filled.value = withTiming(0, RETURN);
140
+ }
141
+ });
142
+ const rowStyle = useAnimatedStyle(() => ({
143
+ transform: [{
144
+ translateX: offset.value
145
+ }]
146
+ }));
147
+ return <GestureDetector gesture={pan}>
148
+ <View>
149
+ {renderAction ? <View pointerEvents='none' style={[direction === 'left' ? styles.customActionRight : styles.customActionLeft, actionContainerStyle]}>
150
+ <CustomReplyAction renderAction={renderAction} offset={offset} position={position} />
151
+ </View> : isActionMounted && <ReplyActionIcon offset={offset} iconScale={iconScale} filled={filled} outerRing={outerRing} travel={position === 'right' ? 0.5 : 1} direction={direction} actionContainerStyle={actionContainerStyle} />}
152
+ <Animated.View style={rowStyle}>
153
+ {children}
154
+ </Animated.View>
155
+ </View>
156
+ </GestureDetector>;
157
+ };
158
+
159
+ /**
160
+ * A custom `renderAction`, handed the swipe's progress. Only rows with one mount the derived
161
+ * value it needs; every other row skips that UI-thread mapper.
162
+ */
163
+ function CustomReplyAction(t0) {
164
+ const $ = _c(2);
165
+ const {
166
+ renderAction,
167
+ offset,
168
+ position
169
+ } = t0;
170
+ const progress = useDerivedValue(() => Math.abs(offset.value) / SWIPE_REPLY_THRESHOLD);
171
+ const t1 = renderAction(progress, offset, position);
172
+ let t2;
173
+ if ($[0] !== t1) {
174
+ t2 = <>{t1}</>;
175
+ $[0] = t1;
176
+ $[1] = t2;
177
+ } else {
178
+ t2 = $[1];
179
+ }
180
+ return t2;
181
+ }
182
+
183
+ /** The arrow beside a row being swiped: a circle that fills, a ring that draws itself round it. */
184
+ function ReplyActionIcon(t0) {
185
+ const $ = _c(26);
186
+ const {
187
+ offset,
188
+ iconScale,
189
+ filled,
190
+ outerRing,
191
+ travel,
192
+ direction,
193
+ actionContainerStyle
194
+ } = t0;
195
+ const styles = useThemedStyles(createStyles);
196
+ const fillProgress = useDerivedValue(() => Math.min(1, Math.max(0, (Math.abs(offset.value) - ICON_APPEAR) / ICON_FILL)));
197
+ const iconStyle = useAnimatedStyle(() => ({
198
+ transform: [{
199
+ translateX: offset.value * travel
200
+ }, {
201
+ scale: iconScale.value
202
+ }]
203
+ }));
204
+ const circleStyle = useAnimatedStyle(() => ({
205
+ opacity: Math.min(1, PRE_FILL_ALPHA * fillProgress.value + (1 - PRE_FILL_ALPHA) * filled.value)
206
+ }));
207
+ const outerRingStyle = useAnimatedStyle(() => ({
208
+ opacity: outerRing.value > 0 && outerRing.value < 1 ? 1 - outerRing.value : 0,
209
+ transform: [{
210
+ scale: 1 + OUTER_RING_GROWTH * outerRing.value
211
+ }]
212
+ }));
213
+ const ringProps = useAnimatedProps(() => ({
214
+ strokeDashoffset: RING_LENGTH * (1 - fillProgress.value)
215
+ }));
216
+ const t1 = direction === "left" ? styles.iconRight : styles.iconLeft;
217
+ let t2;
218
+ if ($[0] !== actionContainerStyle || $[1] !== iconStyle || $[2] !== styles.icon || $[3] !== t1) {
219
+ t2 = [styles.icon, t1, iconStyle, actionContainerStyle];
220
+ $[0] = actionContainerStyle;
221
+ $[1] = iconStyle;
222
+ $[2] = styles.icon;
223
+ $[3] = t1;
224
+ $[4] = t2;
225
+ } else {
226
+ t2 = $[4];
227
+ }
228
+ let t3;
229
+ if ($[5] !== circleStyle || $[6] !== styles.circle) {
230
+ t3 = <Animated.View style={[styles.circle, circleStyle]} />;
231
+ $[5] = circleStyle;
232
+ $[6] = styles.circle;
233
+ $[7] = t3;
234
+ } else {
235
+ t3 = $[7];
236
+ }
237
+ let t4;
238
+ if ($[8] !== outerRingStyle || $[9] !== styles.outerRing) {
239
+ t4 = <Animated.View style={[styles.outerRing, outerRingStyle]} />;
240
+ $[8] = outerRingStyle;
241
+ $[9] = styles.outerRing;
242
+ $[10] = t4;
243
+ } else {
244
+ t4 = $[10];
245
+ }
246
+ let t5;
247
+ if ($[11] !== ringProps || $[12] !== styles.iconGlyph.color || $[13] !== styles.ring) {
248
+ t5 = AnimatedSvgCircle && <Svg width={ICON_SIZE} height={ICON_SIZE} style={styles.ring}><AnimatedSvgCircle cx={ICON_SIZE / 2} cy={ICON_SIZE / 2} r={RING_RADIUS} fill="none" stroke={styles.iconGlyph.color} strokeWidth={RING_WIDTH} strokeDasharray={`${RING_LENGTH} ${RING_LENGTH}`} strokeLinecap="round" animatedProps={ringProps} /></Svg>;
249
+ $[11] = ringProps;
250
+ $[12] = styles.iconGlyph.color;
251
+ $[13] = styles.ring;
252
+ $[14] = t5;
253
+ } else {
254
+ t5 = $[14];
255
+ }
256
+ let t6;
257
+ if ($[15] !== styles.iconGlyph.color) {
258
+ t6 = <ReplyArrowIcon color={styles.iconGlyph.color} size={18} />;
259
+ $[15] = styles.iconGlyph.color;
260
+ $[16] = t6;
261
+ } else {
262
+ t6 = $[16];
263
+ }
264
+ let t7;
265
+ if ($[17] !== styles.iconGlyph.color || $[18] !== t6) {
266
+ t7 = <Icon name="reply" color={styles.iconGlyph.color} size={18} fallback={t6} />;
267
+ $[17] = styles.iconGlyph.color;
268
+ $[18] = t6;
269
+ $[19] = t7;
270
+ } else {
271
+ t7 = $[19];
272
+ }
273
+ let t8;
274
+ if ($[20] !== t2 || $[21] !== t3 || $[22] !== t4 || $[23] !== t5 || $[24] !== t7) {
275
+ t8 = <Animated.View pointerEvents="none" style={t2}>{t3}{t4}{t5}{t7}</Animated.View>;
276
+ $[20] = t2;
277
+ $[21] = t3;
278
+ $[22] = t4;
279
+ $[23] = t5;
280
+ $[24] = t7;
281
+ $[25] = t8;
282
+ } else {
283
+ t8 = $[25];
284
+ }
285
+ return t8;
286
+ }
287
+ const createStyles = theme => StyleSheet.create({
288
+ // The arrow sits on the service background, the date pill's colour.
289
+ icon: {
290
+ position: 'absolute',
291
+ top: '50%',
292
+ width: ICON_SIZE,
293
+ height: ICON_SIZE,
294
+ marginTop: -ICON_SIZE / 2,
295
+ alignItems: 'center',
296
+ justifyContent: 'center'
297
+ },
298
+ circle: {
299
+ ...StyleSheet.absoluteFill,
300
+ borderRadius: ICON_SIZE / 2,
301
+ backgroundColor: theme.colors.dayPillBackground
302
+ },
303
+ outerRing: {
304
+ ...StyleSheet.absoluteFill,
305
+ borderRadius: ICON_SIZE / 2,
306
+ borderWidth: RING_WIDTH,
307
+ borderColor: theme.colors.dayPillText
308
+ },
309
+ // Drawn from the top, clockwise.
310
+ ring: {
311
+ position: 'absolute',
312
+ transform: [{
313
+ rotate: '-90deg'
314
+ }]
315
+ },
316
+ // Centred on the row's trailing edge, so it comes in with the row.
317
+ iconRight: {
318
+ right: -ICON_SIZE / 2
319
+ },
320
+ iconLeft: {
321
+ left: -ICON_SIZE / 2
322
+ },
323
+ iconGlyph: {
324
+ color: theme.colors.dayPillText
325
+ },
326
+ customActionRight: {
327
+ ...StyleSheet.absoluteFill,
328
+ alignItems: 'flex-end',
329
+ justifyContent: 'center'
330
+ },
331
+ customActionLeft: {
332
+ ...StyleSheet.absoluteFill,
333
+ alignItems: 'flex-start',
334
+ justifyContent: 'center'
335
+ }
336
+ });
337
+ //# sourceMappingURL=SwipeToReply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwipeToReply.js","names":["React","useState","StyleSheet","View","GestureDetector","Animated","Easing","runOnJS","useAnimatedProps","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","withTiming","impactHaptic","Icon","ReplyArrowIcon","useRowSwipe","useThemedStyles","getSvg","svg","Svg","default","SvgCircle","Circle","AnimatedSvgCircle","createAnimatedComponent","SWIPE_START","SWIPE_FAIL_Y","SWIPE_MAX","SWIPE_REPLY_THRESHOLD","ICON_APPEAR","ICON_FILL","ICON_SIZE","RETURN","duration","easing","out","quad","androidSpring","stiffness","dampingRatio","mass","damping","Math","sqrt","APPEAR_SPRING","FILL_SPRING","OUTER_RING_SPRING","PRE_FILL_ALPHA","RING_WIDTH","RING_RADIUS","RING_LENGTH","PI","OUTER_RING_GROWTH","SwipeToReplyRow","direction","position","onReply","renderAction","actionContainerStyle","isEnabled","children","styles","createStyles","iconScale","isIconShown","filled","outerRing","isActionMounted","setIsActionMounted","gesture","pan","offset","testID","sign","activeOffsetX","failOffsetY","threshold","isMeasuredFromStart","maxDistance","onActivate","onMove","distance","shouldShowIcon","value","onThresholdChange","isPast","onRelease","onFinalize","rowOffset","isFinished","rowStyle","transform","translateX","customActionRight","customActionLeft","CustomReplyAction","t0","$","_c","progress","abs","t1","t2","ReplyActionIcon","travel","fillProgress","min","max","iconStyle","scale","circleStyle","opacity","outerRingStyle","ringProps","strokeDashoffset","iconRight","iconLeft","icon","t3","circle","t4","t5","iconGlyph","color","ring","t6","t7","t8","theme","create","top","width","height","marginTop","alignItems","justifyContent","absoluteFill","borderRadius","backgroundColor","colors","dayPillBackground","borderWidth","borderColor","dayPillText","rotate","right","left"],"sources":["../../src/Message/SwipeToReply.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { StyleProp, StyleSheet, View, ViewStyle } from 'react-native'\nimport { GestureDetector } from 'react-native-gesture-handler'\nimport Animated, {\n Easing,\n runOnJS,\n SharedValue,\n useAnimatedProps,\n useAnimatedStyle,\n useDerivedValue,\n useSharedValue,\n withSpring,\n withTiming,\n} from 'react-native-reanimated'\n\nimport { impactHaptic } from '../components/haptics'\nimport { Icon } from '../components/Icon'\nimport { ReplyArrowIcon } from '../components/MediaControls'\nimport { useRowSwipe } from '../gestures/useRowSwipe'\nimport { useThemedStyles } from '../hooks/useTheme'\nimport { getSvg } from '../optional'\nimport { ChatTheme } from '../Theme'\n\nconst svg = getSvg()\nconst Svg: any = svg ? svg.default ?? svg.Svg : null\nconst SvgCircle: any = svg?.Circle\nconst AnimatedSvgCircle: any = SvgCircle ? Animated.createAnimatedComponent(SvgCircle) : null\n\n/** The drag starts once the finger has moved 0.4cm sideways, about 25pt. */\nconst SWIPE_START = 25\n/** A mostly-sideways drag: `|dx| / 3 > dy` is required to take over from the list. */\nconst SWIPE_FAIL_Y = 9\n/** The row follows the finger 1:1, up to 80pt. */\nconst SWIPE_MAX = 80\n/** Past 50pt a release replies, and crossing it ticks. */\nexport const SWIPE_REPLY_THRESHOLD = 50\n/** The arrow appears once the row has moved 20pt, and fills over the next 30pt. */\nconst ICON_APPEAR = 20\nconst ICON_FILL = 30\n/** The circle behind the arrow: 16pt radius. */\nconst ICON_SIZE = 32\n/** The row slides back over 180ms on a decelerate curve. */\nconst RETURN = { duration: 180, easing: Easing.out(Easing.quad) }\n// AndroidX springs are stiffness + damping ratio on unit mass; Reanimated takes the damping\n// coefficient, `2 * ratio * sqrt(stiffness)`.\nconst androidSpring = (stiffness: number, dampingRatio: number) => ({\n mass: 1,\n stiffness,\n damping: 2 * dampingRatio * Math.sqrt(stiffness),\n})\n/** The arrow's appearance: stiffness 1500, no bounce. */\nconst APPEAR_SPRING = androidSpring(1500, 1)\n/** The arrow's fill: stiffness 400, damping ratio 0.5 (medium bounce). */\nconst FILL_SPRING = androidSpring(400, 0.5)\n/** The outer ring: stiffness 200, no bounce. */\nconst OUTER_RING_SPRING = androidSpring(200, 1)\n/** Before the threshold the circle shows the service color at 60% of the fill. */\nconst PRE_FILL_ALPHA = 0.6\n/** The 2pt ring that draws itself round the circle as the row moves. */\nconst RING_WIDTH = 2\nconst RING_RADIUS = (ICON_SIZE - RING_WIDTH) / 2\nconst RING_LENGTH = 2 * Math.PI * RING_RADIUS\n/** How far the outer ring grows as it fades, at the threshold. */\nconst OUTER_RING_GROWTH = 0.6\n\nexport interface SwipeToReplyRowProps {\n direction: 'left' | 'right'\n /** Whose message it is: the arrow moves half as far beside an outgoing one. */\n position: 'left' | 'right'\n onReply: () => void\n renderAction?: (\n progress: SharedValue<number>,\n translation: SharedValue<number>,\n position: 'left' | 'right'\n ) => React.ReactNode\n actionContainerStyle?: StyleProp<ViewStyle>\n /** `false` pauses the swipe without changing the row's tree (selection mode). */\n isEnabled?: boolean\n children: React.ReactNode\n}\n\n/**\n * Swipe-to-reply: drag a message sideways, the arrow fills as you go, a tick\n * marks the point of no return, and letting go past it starts a reply while the row slides back.\n * The row never \"opens\".\n */\nexport const SwipeToReplyRow = ({\n direction,\n position,\n onReply,\n renderAction,\n actionContainerStyle,\n isEnabled = true,\n children,\n}: SwipeToReplyRowProps) => {\n // React Compiler would memoize the gesture config on `offset.value`, which its callbacks read,\n // and so read a shared value during render (Reanimated warns once per row per render).\n 'use no memo'\n const styles = useThemedStyles(createStyles)\n const iconScale = useSharedValue(0)\n const isIconShown = useSharedValue(false)\n // 1 once past the threshold: the circle fills, and an outer ring grows away and fades.\n const filled = useSharedValue(0)\n const outerRing = useSharedValue(0)\n // The arrow is only mounted while a swipe is on: every row mounting its circle, rings and two\n // SVGs made a chat noticeably slower to open.\n const [isActionMounted, setIsActionMounted] = useState(false)\n\n const { gesture: pan, offset } = useRowSwipe({\n testID: 'swipe-to-reply',\n isEnabled,\n sign: direction === 'left' ? -1 : 1,\n activeOffsetX: SWIPE_START,\n failOffsetY: SWIPE_FAIL_Y,\n threshold: SWIPE_REPLY_THRESHOLD,\n // Counted from where the drag took over, so the row does not jump when it starts.\n isMeasuredFromStart: true,\n maxDistance: SWIPE_MAX,\n onActivate: () => {\n 'worklet'\n runOnJS(setIsActionMounted)(true)\n },\n onMove: distance => {\n 'worklet'\n // Only on a change: reassigning every frame would cancel a running spring.\n const shouldShowIcon = distance >= ICON_APPEAR\n if (shouldShowIcon !== isIconShown.value) {\n isIconShown.value = shouldShowIcon\n iconScale.value = withSpring(shouldShowIcon ? 1 : 0, APPEAR_SPRING)\n }\n },\n onThresholdChange: isPast => {\n 'worklet'\n if (isPast) {\n // The full circle pops, bouncing back to size.\n iconScale.value = 1.25\n iconScale.value = withSpring(1, FILL_SPRING)\n filled.value = withSpring(1, FILL_SPRING)\n outerRing.value = 0\n outerRing.value = withSpring(1, OUTER_RING_SPRING)\n runOnJS(impactHaptic)('Light')\n } else {\n filled.value = withTiming(0, RETURN)\n }\n },\n onRelease: isPast => {\n 'worklet'\n if (isPast)\n runOnJS(onReply)()\n },\n onFinalize: rowOffset => {\n 'worklet'\n isIconShown.value = false\n rowOffset.value = withTiming(0, RETURN, isFinished => {\n if (isFinished)\n runOnJS(setIsActionMounted)(false)\n })\n iconScale.value = withTiming(0, RETURN)\n filled.value = withTiming(0, RETURN)\n },\n })\n\n const rowStyle = useAnimatedStyle(() => ({\n transform: [{ translateX: offset.value }],\n }))\n\n return (\n <GestureDetector gesture={pan}>\n <View>\n {renderAction\n ? (\n <View\n pointerEvents='none'\n style={[direction === 'left' ? styles.customActionRight : styles.customActionLeft, actionContainerStyle]}\n >\n <CustomReplyAction renderAction={renderAction} offset={offset} position={position} />\n </View>\n )\n : (\n isActionMounted && (\n <ReplyActionIcon\n offset={offset}\n iconScale={iconScale}\n filled={filled}\n outerRing={outerRing}\n travel={position === 'right' ? 0.5 : 1}\n direction={direction}\n actionContainerStyle={actionContainerStyle}\n />\n )\n )}\n <Animated.View style={rowStyle}>\n {children}\n </Animated.View>\n </View>\n </GestureDetector>\n )\n}\n\n/**\n * A custom `renderAction`, handed the swipe's progress. Only rows with one mount the derived\n * value it needs; every other row skips that UI-thread mapper.\n */\nfunction CustomReplyAction ({ renderAction, offset, position }: {\n renderAction: NonNullable<SwipeToReplyRowProps['renderAction']>\n offset: SharedValue<number>\n position: SwipeToReplyRowProps['position']\n}) {\n const progress = useDerivedValue(() => Math.abs(offset.value) / SWIPE_REPLY_THRESHOLD)\n return <>{renderAction(progress, offset, position)}</>\n}\n\n/** The arrow beside a row being swiped: a circle that fills, a ring that draws itself round it. */\nfunction ReplyActionIcon ({ offset, iconScale, filled, outerRing, travel, direction, actionContainerStyle }: {\n offset: SharedValue<number>\n iconScale: SharedValue<number>\n filled: SharedValue<number>\n outerRing: SharedValue<number>\n /** Beside an outgoing message the arrow travels half as far. */\n travel: number\n direction: 'left' | 'right'\n actionContainerStyle?: StyleProp<ViewStyle>\n}) {\n const styles = useThemedStyles(createStyles)\n const fillProgress = useDerivedValue(() =>\n Math.min(1, Math.max(0, (Math.abs(offset.value) - ICON_APPEAR) / ICON_FILL)))\n const iconStyle = useAnimatedStyle(() => ({\n transform: [{ translateX: offset.value * travel }, { scale: iconScale.value }],\n }))\n const circleStyle = useAnimatedStyle(() => ({\n opacity: Math.min(1, PRE_FILL_ALPHA * fillProgress.value + (1 - PRE_FILL_ALPHA) * filled.value),\n }))\n const outerRingStyle = useAnimatedStyle(() => ({\n opacity: outerRing.value > 0 && outerRing.value < 1 ? 1 - outerRing.value : 0,\n transform: [{ scale: 1 + OUTER_RING_GROWTH * outerRing.value }],\n }))\n const ringProps = useAnimatedProps(() => ({\n strokeDashoffset: RING_LENGTH * (1 - fillProgress.value),\n }))\n\n return (\n <Animated.View\n pointerEvents='none'\n style={[\n styles.icon,\n direction === 'left' ? styles.iconRight : styles.iconLeft,\n iconStyle,\n actionContainerStyle,\n ]}\n >\n <Animated.View style={[styles.circle, circleStyle]} />\n <Animated.View style={[styles.outerRing, outerRingStyle]} />\n {AnimatedSvgCircle && (\n <Svg width={ICON_SIZE} height={ICON_SIZE} style={styles.ring}>\n <AnimatedSvgCircle\n cx={ICON_SIZE / 2}\n cy={ICON_SIZE / 2}\n r={RING_RADIUS}\n fill='none'\n stroke={styles.iconGlyph.color}\n strokeWidth={RING_WIDTH}\n strokeDasharray={`${RING_LENGTH} ${RING_LENGTH}`}\n strokeLinecap='round'\n animatedProps={ringProps}\n />\n </Svg>\n )}\n <Icon\n name='reply'\n color={styles.iconGlyph.color}\n size={18}\n fallback={<ReplyArrowIcon color={styles.iconGlyph.color} size={18} />}\n />\n </Animated.View>\n )\n}\n\nconst createStyles = (theme: ChatTheme) => StyleSheet.create({\n // The arrow sits on the service background, the date pill's colour.\n icon: {\n position: 'absolute',\n top: '50%',\n width: ICON_SIZE,\n height: ICON_SIZE,\n marginTop: -ICON_SIZE / 2,\n alignItems: 'center',\n justifyContent: 'center',\n },\n circle: {\n ...StyleSheet.absoluteFill,\n borderRadius: ICON_SIZE / 2,\n backgroundColor: theme.colors.dayPillBackground,\n },\n outerRing: {\n ...StyleSheet.absoluteFill,\n borderRadius: ICON_SIZE / 2,\n borderWidth: RING_WIDTH,\n borderColor: theme.colors.dayPillText,\n },\n // Drawn from the top, clockwise.\n ring: {\n position: 'absolute',\n transform: [{ rotate: '-90deg' }],\n },\n // Centred on the row's trailing edge, so it comes in with the row.\n iconRight: {\n right: -ICON_SIZE / 2,\n },\n iconLeft: {\n left: -ICON_SIZE / 2,\n },\n iconGlyph: {\n color: theme.colors.dayPillText,\n },\n customActionRight: {\n ...StyleSheet.absoluteFill,\n alignItems: 'flex-end',\n justifyContent: 'center',\n },\n customActionLeft: {\n ...StyleSheet.absoluteFill,\n alignItems: 'flex-start',\n justifyContent: 'center',\n },\n})\n"],"mappings":"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","ignoreList":[]}