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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1327) hide show
  1. package/README.md +486 -179
  2. package/lib/Actions.d.ts.map +1 -1
  3. package/lib/Actions.js +121 -42
  4. package/lib/Actions.js.map +1 -1
  5. package/lib/Avatar.d.ts.map +1 -1
  6. package/lib/Avatar.js +171 -86
  7. package/lib/Avatar.js.map +1 -1
  8. package/lib/Bubble/BubbleBody.d.ts +15 -0
  9. package/lib/Bubble/BubbleBody.d.ts.map +1 -0
  10. package/lib/Bubble/BubbleBody.js +218 -0
  11. package/lib/Bubble/BubbleBody.js.map +1 -0
  12. package/lib/Bubble/BubbleContent.d.ts +23 -0
  13. package/lib/Bubble/BubbleContent.d.ts.map +1 -0
  14. package/lib/Bubble/BubbleContent.js +446 -0
  15. package/lib/Bubble/BubbleContent.js.map +1 -0
  16. package/lib/Bubble/BubbleMenu.d.ts +45 -0
  17. package/lib/Bubble/BubbleMenu.d.ts.map +1 -0
  18. package/lib/Bubble/BubbleMenu.js +289 -0
  19. package/lib/Bubble/BubbleMenu.js.map +1 -0
  20. package/lib/Bubble/BubbleMeta.d.ts +17 -0
  21. package/lib/Bubble/BubbleMeta.d.ts.map +1 -0
  22. package/lib/Bubble/BubbleMeta.js +453 -0
  23. package/lib/Bubble/BubbleMeta.js.map +1 -0
  24. package/lib/Bubble/LiftedBubble.d.ts +18 -0
  25. package/lib/Bubble/LiftedBubble.d.ts.map +1 -0
  26. package/lib/Bubble/LiftedBubble.js +109 -0
  27. package/lib/Bubble/LiftedBubble.js.map +1 -0
  28. package/lib/Bubble/PressableBubbleRow.d.ts +33 -0
  29. package/lib/Bubble/PressableBubbleRow.d.ts.map +1 -0
  30. package/lib/Bubble/PressableBubbleRow.js +172 -0
  31. package/lib/Bubble/PressableBubbleRow.js.map +1 -0
  32. package/lib/Bubble/index.d.ts +6 -13
  33. package/lib/Bubble/index.d.ts.map +1 -1
  34. package/lib/Bubble/index.js +379 -509
  35. package/lib/Bubble/index.js.map +1 -1
  36. package/lib/Bubble/layout.d.ts +47 -0
  37. package/lib/Bubble/layout.d.ts.map +1 -0
  38. package/lib/Bubble/layout.js +258 -0
  39. package/lib/Bubble/layout.js.map +1 -0
  40. package/lib/Bubble/styles.d.ts +108 -16
  41. package/lib/Bubble/styles.d.ts.map +1 -1
  42. package/lib/Bubble/styles.js +227 -107
  43. package/lib/Bubble/styles.js.map +1 -1
  44. package/lib/Bubble/types.d.ts +19 -3
  45. package/lib/Bubble/types.d.ts.map +1 -1
  46. package/lib/Bubble/types.js.map +1 -1
  47. package/lib/Chat/Chat.d.ts +5 -0
  48. package/lib/Chat/Chat.d.ts.map +1 -0
  49. package/lib/Chat/Chat.js +464 -0
  50. package/lib/Chat/Chat.js.map +1 -0
  51. package/lib/Chat/ChatBackground.d.ts +16 -0
  52. package/lib/Chat/ChatBackground.d.ts.map +1 -0
  53. package/lib/Chat/ChatBackground.js +43 -0
  54. package/lib/Chat/ChatBackground.js.map +1 -0
  55. package/lib/Chat/ChatKeyboardAvoidingView.js +19 -4
  56. package/lib/Chat/ChatKeyboardAvoidingView.js.map +1 -1
  57. package/lib/Chat/ChatMessageList.d.ts +27 -0
  58. package/lib/Chat/ChatMessageList.d.ts.map +1 -0
  59. package/lib/Chat/ChatMessageList.js +220 -0
  60. package/lib/Chat/ChatMessageList.js.map +1 -0
  61. package/lib/Chat/ChatProviders.d.ts +18 -0
  62. package/lib/Chat/ChatProviders.d.ts.map +1 -0
  63. package/lib/Chat/ChatProviders.js +87 -0
  64. package/lib/Chat/ChatProviders.js.map +1 -0
  65. package/lib/Chat/ChatSafeAreaProvider.d.ts +35 -0
  66. package/lib/Chat/ChatSafeAreaProvider.d.ts.map +1 -0
  67. package/lib/Chat/ChatSafeAreaProvider.js +123 -0
  68. package/lib/Chat/ChatSafeAreaProvider.js.map +1 -0
  69. package/lib/Chat/ChatSelectionBar.d.ts +20 -0
  70. package/lib/Chat/ChatSelectionBar.d.ts.map +1 -0
  71. package/lib/Chat/ChatSelectionBar.js +141 -0
  72. package/lib/Chat/ChatSelectionBar.js.map +1 -0
  73. package/lib/Chat/ChatWrapper.d.ts +11 -0
  74. package/lib/Chat/ChatWrapper.d.ts.map +1 -0
  75. package/lib/Chat/ChatWrapper.js +98 -0
  76. package/lib/Chat/ChatWrapper.js.map +1 -0
  77. package/lib/Chat/ComposerHost.d.ts +20 -0
  78. package/lib/Chat/ComposerHost.d.ts.map +1 -0
  79. package/lib/Chat/ComposerHost.js +118 -0
  80. package/lib/Chat/ComposerHost.js.map +1 -0
  81. package/lib/Chat/index.d.ts +1 -8
  82. package/lib/Chat/index.d.ts.map +1 -1
  83. package/lib/Chat/index.js +1 -337
  84. package/lib/Chat/index.js.map +1 -1
  85. package/lib/Chat/styles.d.ts +14 -2
  86. package/lib/Chat/styles.d.ts.map +1 -1
  87. package/lib/Chat/styles.js +19 -9
  88. package/lib/Chat/styles.js.map +1 -1
  89. package/lib/Chat/types.d.ts +145 -11
  90. package/lib/Chat/types.d.ts.map +1 -1
  91. package/lib/Chat/types.js.map +1 -1
  92. package/lib/Chat/useChatContextValue.d.ts +19 -0
  93. package/lib/Chat/useChatContextValue.d.ts.map +1 -0
  94. package/lib/Chat/useChatContextValue.js +158 -0
  95. package/lib/Chat/useChatContextValue.js.map +1 -0
  96. package/lib/Chat/useChatMedia.d.ts +22 -0
  97. package/lib/Chat/useChatMedia.d.ts.map +1 -0
  98. package/lib/Chat/useChatMedia.js +127 -0
  99. package/lib/Chat/useChatMedia.js.map +1 -0
  100. package/lib/Chat/useChatSelection.d.ts +15 -0
  101. package/lib/Chat/useChatSelection.d.ts.map +1 -0
  102. package/lib/Chat/useChatSelection.js +106 -0
  103. package/lib/Chat/useChatSelection.js.map +1 -0
  104. package/lib/Chat/useComposerHandlers.d.ts +34 -0
  105. package/lib/Chat/useComposerHandlers.d.ts.map +1 -0
  106. package/lib/Chat/useComposerHandlers.js +330 -0
  107. package/lib/Chat/useComposerHandlers.js.map +1 -0
  108. package/lib/Chat/useComposerState.d.ts +27 -0
  109. package/lib/Chat/useComposerState.d.ts.map +1 -0
  110. package/lib/Chat/useComposerState.js +272 -0
  111. package/lib/Chat/useComposerState.js.map +1 -0
  112. package/lib/Chat/useInitialLayout.d.ts +19 -0
  113. package/lib/Chat/useInitialLayout.d.ts.map +1 -0
  114. package/lib/Chat/useInitialLayout.js +70 -0
  115. package/lib/Chat/useInitialLayout.js.map +1 -0
  116. package/lib/Chat/useMessageActions.d.ts +37 -0
  117. package/lib/Chat/useMessageActions.d.ts.map +1 -0
  118. package/lib/Chat/useMessageActions.js +323 -0
  119. package/lib/Chat/useMessageActions.js.map +1 -0
  120. package/lib/Chat/useMessageNavigation.d.ts +21 -0
  121. package/lib/Chat/useMessageNavigation.d.ts.map +1 -0
  122. package/lib/Chat/useMessageNavigation.js +149 -0
  123. package/lib/Chat/useMessageNavigation.js.map +1 -0
  124. package/lib/Chat/useOptionalPeerHints.d.ts +6 -0
  125. package/lib/Chat/useOptionalPeerHints.d.ts.map +1 -0
  126. package/lib/Chat/useOptionalPeerHints.js +63 -0
  127. package/lib/Chat/useOptionalPeerHints.js.map +1 -0
  128. package/lib/Chat/useResolvedReactions.d.ts +31 -0
  129. package/lib/Chat/useResolvedReactions.d.ts.map +1 -0
  130. package/lib/Chat/useResolvedReactions.js +95 -0
  131. package/lib/Chat/useResolvedReactions.js.map +1 -0
  132. package/lib/ChatAvatar.d.ts.map +1 -1
  133. package/lib/ChatAvatar.js +229 -84
  134. package/lib/ChatAvatar.js.map +1 -1
  135. package/lib/ChatContext.js +20 -10
  136. package/lib/ChatContext.js.map +1 -1
  137. package/lib/ChatList/ChatListAvatar.d.ts +21 -0
  138. package/lib/ChatList/ChatListAvatar.d.ts.map +1 -0
  139. package/lib/ChatList/ChatListAvatar.js +178 -0
  140. package/lib/ChatList/ChatListAvatar.js.map +1 -0
  141. package/lib/ChatList/ChatListCell.d.ts +16 -0
  142. package/lib/ChatList/ChatListCell.d.ts.map +1 -0
  143. package/lib/ChatList/ChatListCell.js +506 -0
  144. package/lib/ChatList/ChatListCell.js.map +1 -0
  145. package/lib/ChatList/ChatListShimmer.d.ts +3 -0
  146. package/lib/ChatList/ChatListShimmer.d.ts.map +1 -0
  147. package/lib/ChatList/ChatListShimmer.js +235 -0
  148. package/lib/ChatList/ChatListShimmer.js.map +1 -0
  149. package/lib/ChatList/index.d.ts +16 -0
  150. package/lib/ChatList/index.d.ts.map +1 -0
  151. package/lib/ChatList/index.js +1301 -0
  152. package/lib/ChatList/index.js.map +1 -0
  153. package/lib/ChatList/types.d.ts +128 -0
  154. package/lib/ChatList/types.d.ts.map +1 -0
  155. package/lib/ChatList/types.js +2 -0
  156. package/lib/ChatList/types.js.map +1 -0
  157. package/lib/ChatList/useChatList.d.ts +30 -0
  158. package/lib/ChatList/useChatList.d.ts.map +1 -0
  159. package/lib/ChatList/useChatList.js +211 -0
  160. package/lib/ChatList/useChatList.js.map +1 -0
  161. package/lib/ChatList/utils.d.ts +28 -0
  162. package/lib/ChatList/utils.d.ts.map +1 -0
  163. package/lib/ChatList/utils.js +60 -0
  164. package/lib/ChatList/utils.js.map +1 -0
  165. package/lib/Color.js +19 -19
  166. package/lib/Color.js.map +1 -1
  167. package/lib/Composer.d.ts.map +1 -1
  168. package/lib/Composer.js +148 -70
  169. package/lib/Composer.js.map +1 -1
  170. package/lib/Constant.js +4 -4
  171. package/lib/Constant.js.map +1 -1
  172. package/lib/Day/index.d.ts.map +1 -1
  173. package/lib/Day/index.js +115 -28
  174. package/lib/Day/index.js.map +1 -1
  175. package/lib/Day/styles.d.ts +3 -3
  176. package/lib/Day/styles.d.ts.map +1 -1
  177. package/lib/Day/styles.js +20 -17
  178. package/lib/Day/styles.js.map +1 -1
  179. package/lib/Day/types.js.map +1 -1
  180. package/lib/Icons.d.ts +1 -1
  181. package/lib/Icons.d.ts.map +1 -1
  182. package/lib/Icons.js.map +1 -1
  183. package/lib/InputToolbar/FieldGroup.d.ts +28 -0
  184. package/lib/InputToolbar/FieldGroup.d.ts.map +1 -0
  185. package/lib/InputToolbar/FieldGroup.js +143 -0
  186. package/lib/InputToolbar/FieldGroup.js.map +1 -0
  187. package/lib/InputToolbar/TakePreviewBar.d.ts +17 -0
  188. package/lib/InputToolbar/TakePreviewBar.d.ts.map +1 -0
  189. package/lib/InputToolbar/TakePreviewBar.js +126 -0
  190. package/lib/InputToolbar/TakePreviewBar.js.map +1 -0
  191. package/lib/InputToolbar/animations.d.ts +105 -0
  192. package/lib/InputToolbar/animations.d.ts.map +1 -0
  193. package/lib/InputToolbar/animations.js +238 -0
  194. package/lib/InputToolbar/animations.js.map +1 -0
  195. package/lib/InputToolbar/fragments.d.ts +13 -0
  196. package/lib/InputToolbar/fragments.d.ts.map +1 -0
  197. package/lib/InputToolbar/fragments.js +207 -0
  198. package/lib/InputToolbar/fragments.js.map +1 -0
  199. package/lib/InputToolbar/index.d.ts +7 -0
  200. package/lib/InputToolbar/index.d.ts.map +1 -0
  201. package/lib/InputToolbar/index.js +444 -0
  202. package/lib/InputToolbar/index.js.map +1 -0
  203. package/lib/InputToolbar/recordingOptions.d.ts +14 -0
  204. package/lib/InputToolbar/recordingOptions.d.ts.map +1 -0
  205. package/lib/InputToolbar/recordingOptions.js +38 -0
  206. package/lib/InputToolbar/recordingOptions.js.map +1 -0
  207. package/lib/InputToolbar/styles.d.ts +118 -0
  208. package/lib/InputToolbar/styles.d.ts.map +1 -0
  209. package/lib/InputToolbar/styles.js +139 -0
  210. package/lib/InputToolbar/styles.js.map +1 -0
  211. package/lib/InputToolbar/types.d.ts +77 -0
  212. package/lib/InputToolbar/types.d.ts.map +1 -0
  213. package/lib/InputToolbar/types.js +2 -0
  214. package/lib/InputToolbar/types.js.map +1 -0
  215. package/lib/InputToolbar/useActionsFragment.d.ts +6 -0
  216. package/lib/InputToolbar/useActionsFragment.d.ts.map +1 -0
  217. package/lib/InputToolbar/useActionsFragment.js +139 -0
  218. package/lib/InputToolbar/useActionsFragment.js.map +1 -0
  219. package/lib/InputToolbar/useComposerEditing.d.ts +11 -0
  220. package/lib/InputToolbar/useComposerEditing.d.ts.map +1 -0
  221. package/lib/InputToolbar/useComposerEditing.js +116 -0
  222. package/lib/InputToolbar/useComposerEditing.js.map +1 -0
  223. package/lib/InputToolbar/useEmojiButton.d.ts +14 -0
  224. package/lib/InputToolbar/useEmojiButton.d.ts.map +1 -0
  225. package/lib/InputToolbar/useEmojiButton.js +120 -0
  226. package/lib/InputToolbar/useEmojiButton.js.map +1 -0
  227. package/lib/InputToolbar/useKeyboardInset.d.ts +9 -0
  228. package/lib/InputToolbar/useKeyboardInset.d.ts.map +1 -0
  229. package/lib/InputToolbar/useKeyboardInset.js +25 -0
  230. package/lib/InputToolbar/useKeyboardInset.js.map +1 -0
  231. package/lib/InputToolbar/useRecordMode.d.ts +19 -0
  232. package/lib/InputToolbar/useRecordMode.d.ts.map +1 -0
  233. package/lib/InputToolbar/useRecordMode.js +124 -0
  234. package/lib/InputToolbar/useRecordMode.js.map +1 -0
  235. package/lib/InputToolbar/useRecordTake.d.ts +46 -0
  236. package/lib/InputToolbar/useRecordTake.d.ts.map +1 -0
  237. package/lib/InputToolbar/useRecordTake.js +315 -0
  238. package/lib/InputToolbar/useRecordTake.js.map +1 -0
  239. package/lib/InputToolbar/useReturnAnimations.d.ts +18 -0
  240. package/lib/InputToolbar/useReturnAnimations.d.ts.map +1 -0
  241. package/lib/InputToolbar/useReturnAnimations.js +30 -0
  242. package/lib/InputToolbar/useReturnAnimations.js.map +1 -0
  243. package/lib/InputToolbar/useRightControl.d.ts +40 -0
  244. package/lib/InputToolbar/useRightControl.d.ts.map +1 -0
  245. package/lib/InputToolbar/useRightControl.js +129 -0
  246. package/lib/InputToolbar/useRightControl.js.map +1 -0
  247. package/lib/LoadEarlierMessages.d.ts +2 -0
  248. package/lib/LoadEarlierMessages.d.ts.map +1 -1
  249. package/lib/LoadEarlierMessages.js +153 -40
  250. package/lib/LoadEarlierMessages.js.map +1 -1
  251. package/lib/Message/SwipeToReply.d.ts +23 -0
  252. package/lib/Message/SwipeToReply.d.ts.map +1 -0
  253. package/lib/Message/SwipeToReply.js +337 -0
  254. package/lib/Message/SwipeToReply.js.map +1 -0
  255. package/lib/Message/index.d.ts.map +1 -1
  256. package/lib/Message/index.js +415 -176
  257. package/lib/Message/index.js.map +1 -1
  258. package/lib/Message/styles.d.ts +2 -2
  259. package/lib/Message/styles.js +14 -14
  260. package/lib/Message/styles.js.map +1 -1
  261. package/lib/Message/types.d.ts +5 -0
  262. package/lib/Message/types.d.ts.map +1 -1
  263. package/lib/Message/types.js.map +1 -1
  264. package/lib/MessageAudio.d.ts.map +1 -1
  265. package/lib/MessageAudio.js +647 -107
  266. package/lib/MessageAudio.js.map +1 -1
  267. package/lib/MessageFile.d.ts +11 -0
  268. package/lib/MessageFile.d.ts.map +1 -0
  269. package/lib/MessageFile.js +315 -0
  270. package/lib/MessageFile.js.map +1 -0
  271. package/lib/MessageImage.d.ts +2 -0
  272. package/lib/MessageImage.d.ts.map +1 -1
  273. package/lib/MessageImage.js +430 -161
  274. package/lib/MessageImage.js.map +1 -1
  275. package/lib/MessageLocation.d.ts.map +1 -1
  276. package/lib/MessageLocation.js +180 -68
  277. package/lib/MessageLocation.js.map +1 -1
  278. package/lib/MessageText.d.ts +8 -1
  279. package/lib/MessageText.d.ts.map +1 -1
  280. package/lib/MessageText.js +261 -69
  281. package/lib/MessageText.js.map +1 -1
  282. package/lib/MessageVideo/ExpoVideoPlayer.d.ts +6 -0
  283. package/lib/MessageVideo/ExpoVideoPlayer.d.ts.map +1 -0
  284. package/lib/MessageVideo/ExpoVideoPlayer.js +68 -0
  285. package/lib/MessageVideo/ExpoVideoPlayer.js.map +1 -0
  286. package/lib/MessageVideo/MirroredVideo.d.ts +17 -0
  287. package/lib/MessageVideo/MirroredVideo.d.ts.map +1 -0
  288. package/lib/MessageVideo/MirroredVideo.js +223 -0
  289. package/lib/MessageVideo/MirroredVideo.js.map +1 -0
  290. package/lib/MessageVideo/RoundNotePlayer.d.ts +4 -0
  291. package/lib/MessageVideo/RoundNotePlayer.d.ts.map +1 -0
  292. package/lib/MessageVideo/RoundNotePlayer.js +560 -0
  293. package/lib/MessageVideo/RoundNotePlayer.js.map +1 -0
  294. package/lib/MessageVideo/RoundTranscription.d.ts +27 -0
  295. package/lib/MessageVideo/RoundTranscription.d.ts.map +1 -0
  296. package/lib/MessageVideo/RoundTranscription.js +151 -0
  297. package/lib/MessageVideo/RoundTranscription.js.map +1 -0
  298. package/lib/MessageVideo/VideoTransferOverlay.d.ts +11 -0
  299. package/lib/MessageVideo/VideoTransferOverlay.d.ts.map +1 -0
  300. package/lib/MessageVideo/VideoTransferOverlay.js +88 -0
  301. package/lib/MessageVideo/VideoTransferOverlay.js.map +1 -0
  302. package/lib/MessageVideo/constants.d.ts +13 -0
  303. package/lib/MessageVideo/constants.d.ts.map +1 -0
  304. package/lib/MessageVideo/constants.js +15 -0
  305. package/lib/MessageVideo/constants.js.map +1 -0
  306. package/lib/{MessageVideo.d.ts → MessageVideo/index.d.ts} +2 -2
  307. package/lib/MessageVideo/index.d.ts.map +1 -0
  308. package/lib/MessageVideo/index.js +92 -0
  309. package/lib/MessageVideo/index.js.map +1 -0
  310. package/lib/MessageVideo/liftedMedia.d.ts +13 -0
  311. package/lib/MessageVideo/liftedMedia.d.ts.map +1 -0
  312. package/lib/MessageVideo/liftedMedia.js +106 -0
  313. package/lib/MessageVideo/liftedMedia.js.map +1 -0
  314. package/lib/MessageVideo/styles.d.ts +71 -0
  315. package/lib/MessageVideo/styles.d.ts.map +1 -0
  316. package/lib/MessageVideo/styles.js +78 -0
  317. package/lib/MessageVideo/styles.js.map +1 -0
  318. package/lib/MessageVideo/types.d.ts +27 -0
  319. package/lib/MessageVideo/types.d.ts.map +1 -0
  320. package/lib/MessageVideo/types.js +2 -0
  321. package/lib/MessageVideo/types.js.map +1 -0
  322. package/lib/MessageVideo/useNoteGrow.d.ts +16 -0
  323. package/lib/MessageVideo/useNoteGrow.d.ts.map +1 -0
  324. package/lib/MessageVideo/useNoteGrow.js +122 -0
  325. package/lib/MessageVideo/useNoteGrow.js.map +1 -0
  326. package/lib/MessageVideo/useNotePlayer.d.ts +14 -0
  327. package/lib/MessageVideo/useNotePlayer.d.ts.map +1 -0
  328. package/lib/MessageVideo/useNotePlayer.js +142 -0
  329. package/lib/MessageVideo/useNotePlayer.js.map +1 -0
  330. package/lib/MessageVideo/useRingSeek.d.ts +16 -0
  331. package/lib/MessageVideo/useRingSeek.d.ts.map +1 -0
  332. package/lib/MessageVideo/useRingSeek.js +157 -0
  333. package/lib/MessageVideo/useRingSeek.js.map +1 -0
  334. package/lib/MessageVideo/useRoundNotePlayback.d.ts +46 -0
  335. package/lib/MessageVideo/useRoundNotePlayback.d.ts.map +1 -0
  336. package/lib/MessageVideo/useRoundNotePlayback.js +508 -0
  337. package/lib/MessageVideo/useRoundNotePlayback.js.map +1 -0
  338. package/lib/MessageVideo/useSendFlightReveal.d.ts +9 -0
  339. package/lib/MessageVideo/useSendFlightReveal.d.ts.map +1 -0
  340. package/lib/MessageVideo/useSendFlightReveal.js +85 -0
  341. package/lib/MessageVideo/useSendFlightReveal.js.map +1 -0
  342. package/lib/MessageVideo/videoPlayers.d.ts +8 -0
  343. package/lib/MessageVideo/videoPlayers.d.ts.map +1 -0
  344. package/lib/MessageVideo/videoPlayers.js +33 -0
  345. package/lib/MessageVideo/videoPlayers.js.map +1 -0
  346. package/lib/MessagesContainer/components/DayAnimated/debug.js +38 -24
  347. package/lib/MessagesContainer/components/DayAnimated/debug.js.map +1 -1
  348. package/lib/MessagesContainer/components/DayAnimated/index.d.ts +1 -1
  349. package/lib/MessagesContainer/components/DayAnimated/index.d.ts.map +1 -1
  350. package/lib/MessagesContainer/components/DayAnimated/index.js +244 -112
  351. package/lib/MessagesContainer/components/DayAnimated/index.js.map +1 -1
  352. package/lib/MessagesContainer/components/DayAnimated/styles.d.ts +3 -3
  353. package/lib/MessagesContainer/components/DayAnimated/styles.js +8 -8
  354. package/lib/MessagesContainer/components/DayAnimated/styles.js.map +1 -1
  355. package/lib/MessagesContainer/components/DayAnimated/types.d.ts +4 -2
  356. package/lib/MessagesContainer/components/DayAnimated/types.d.ts.map +1 -1
  357. package/lib/MessagesContainer/components/DayAnimated/types.js.map +1 -1
  358. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.d.ts.map +1 -1
  359. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js +34 -25
  360. package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js.map +1 -1
  361. package/lib/MessagesContainer/components/Item/index.d.ts +3 -4
  362. package/lib/MessagesContainer/components/Item/index.d.ts.map +1 -1
  363. package/lib/MessagesContainer/components/Item/index.js +289 -119
  364. package/lib/MessagesContainer/components/Item/index.js.map +1 -1
  365. package/lib/MessagesContainer/components/Item/types.d.ts +5 -0
  366. package/lib/MessagesContainer/components/Item/types.d.ts.map +1 -1
  367. package/lib/MessagesContainer/components/Item/types.js.map +1 -1
  368. package/lib/MessagesContainer/components/PageDownCounter.d.ts +14 -0
  369. package/lib/MessagesContainer/components/PageDownCounter.d.ts.map +1 -0
  370. package/lib/MessagesContainer/components/PageDownCounter.js +209 -0
  371. package/lib/MessagesContainer/components/PageDownCounter.js.map +1 -0
  372. package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts +21 -0
  373. package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts.map +1 -0
  374. package/lib/MessagesContainer/components/ScrollToBottomButton.js +195 -0
  375. package/lib/MessagesContainer/components/ScrollToBottomButton.js.map +1 -0
  376. package/lib/MessagesContainer/components/dayLayout.d.ts +2 -2
  377. package/lib/MessagesContainer/components/dayLayout.d.ts.map +1 -1
  378. package/lib/MessagesContainer/components/dayLayout.js +18 -13
  379. package/lib/MessagesContainer/components/dayLayout.js.map +1 -1
  380. package/lib/MessagesContainer/index.d.ts.map +1 -1
  381. package/lib/MessagesContainer/index.js +361 -420
  382. package/lib/MessagesContainer/index.js.map +1 -1
  383. package/lib/MessagesContainer/listState.d.ts +18 -0
  384. package/lib/MessagesContainer/listState.d.ts.map +1 -0
  385. package/lib/MessagesContainer/listState.js +25 -0
  386. package/lib/MessagesContainer/listState.js.map +1 -0
  387. package/lib/MessagesContainer/listTransitions.d.ts +10 -0
  388. package/lib/MessagesContainer/listTransitions.d.ts.map +1 -0
  389. package/lib/MessagesContainer/listTransitions.js +12 -0
  390. package/lib/MessagesContainer/listTransitions.js.map +1 -0
  391. package/lib/MessagesContainer/pageDownReturn.d.ts +11 -0
  392. package/lib/MessagesContainer/pageDownReturn.d.ts.map +1 -0
  393. package/lib/MessagesContainer/pageDownReturn.js +9 -0
  394. package/lib/MessagesContainer/pageDownReturn.js.map +1 -0
  395. package/lib/MessagesContainer/rowConfig.d.ts +39 -0
  396. package/lib/MessagesContainer/rowConfig.d.ts.map +1 -0
  397. package/lib/MessagesContainer/rowConfig.js +161 -0
  398. package/lib/MessagesContainer/rowConfig.js.map +1 -0
  399. package/lib/MessagesContainer/rowStore.d.ts +37 -0
  400. package/lib/MessagesContainer/rowStore.d.ts.map +1 -0
  401. package/lib/MessagesContainer/rowStore.js +140 -0
  402. package/lib/MessagesContainer/rowStore.js.map +1 -0
  403. package/lib/MessagesContainer/styles.d.ts +37 -31
  404. package/lib/MessagesContainer/styles.d.ts.map +1 -1
  405. package/lib/MessagesContainer/styles.js +75 -54
  406. package/lib/MessagesContainer/styles.js.map +1 -1
  407. package/lib/MessagesContainer/types.d.ts +33 -30
  408. package/lib/MessagesContainer/types.d.ts.map +1 -1
  409. package/lib/MessagesContainer/types.js +1 -9
  410. package/lib/MessagesContainer/types.js.map +1 -1
  411. package/lib/MessagesContainer/useCellLayouts.d.ts +17 -0
  412. package/lib/MessagesContainer/useCellLayouts.d.ts.map +1 -0
  413. package/lib/MessagesContainer/useCellLayouts.js +133 -0
  414. package/lib/MessagesContainer/useCellLayouts.js.map +1 -0
  415. package/lib/MessagesContainer/useDaysPositions.d.ts +18 -0
  416. package/lib/MessagesContainer/useDaysPositions.d.ts.map +1 -0
  417. package/lib/MessagesContainer/useDaysPositions.js +109 -0
  418. package/lib/MessagesContainer/useDaysPositions.js.map +1 -0
  419. package/lib/MessagesContainer/useListChrome.d.ts +14 -0
  420. package/lib/MessagesContainer/useListChrome.d.ts.map +1 -0
  421. package/lib/MessagesContainer/useListChrome.js +176 -0
  422. package/lib/MessagesContainer/useListChrome.js.map +1 -0
  423. package/lib/MessagesContainer/useListMetrics.d.ts +32 -0
  424. package/lib/MessagesContainer/useListMetrics.d.ts.map +1 -0
  425. package/lib/MessagesContainer/useListMetrics.js +176 -0
  426. package/lib/MessagesContainer/useListMetrics.js.map +1 -0
  427. package/lib/MessagesContainer/useMessageRows.d.ts +46 -0
  428. package/lib/MessagesContainer/useMessageRows.d.ts.map +1 -0
  429. package/lib/MessagesContainer/useMessageRows.js +228 -0
  430. package/lib/MessagesContainer/useMessageRows.js.map +1 -0
  431. package/lib/MessagesContainer/usePageDownUnread.d.ts +27 -0
  432. package/lib/MessagesContainer/usePageDownUnread.d.ts.map +1 -0
  433. package/lib/MessagesContainer/usePageDownUnread.js +152 -0
  434. package/lib/MessagesContainer/usePageDownUnread.js.map +1 -0
  435. package/lib/MessagesContainer/useScrollActivity.d.ts +13 -0
  436. package/lib/MessagesContainer/useScrollActivity.d.ts.map +1 -0
  437. package/lib/MessagesContainer/useScrollActivity.js +84 -0
  438. package/lib/MessagesContainer/useScrollActivity.js.map +1 -0
  439. package/lib/MessagesContainer/useScrollToBottom.d.ts +26 -0
  440. package/lib/MessagesContainer/useScrollToBottom.d.ts.map +1 -0
  441. package/lib/MessagesContainer/useScrollToBottom.js +164 -0
  442. package/lib/MessagesContainer/useScrollToBottom.js.map +1 -0
  443. package/lib/MessagesContainer/useTapToClosePanels.d.ts +7 -0
  444. package/lib/MessagesContainer/useTapToClosePanels.d.ts.map +1 -0
  445. package/lib/MessagesContainer/useTapToClosePanels.js +55 -0
  446. package/lib/MessagesContainer/useTapToClosePanels.js.map +1 -0
  447. package/lib/MessagesContainer/viewability.d.ts +9 -0
  448. package/lib/MessagesContainer/viewability.d.ts.map +1 -0
  449. package/lib/MessagesContainer/viewability.js +110 -0
  450. package/lib/MessagesContainer/viewability.js.map +1 -0
  451. package/lib/Models.d.ts +188 -3
  452. package/lib/Models.d.ts.map +1 -1
  453. package/lib/Models.js.map +1 -1
  454. package/lib/QuickReplies.js +234 -101
  455. package/lib/QuickReplies.js.map +1 -1
  456. package/lib/Reactions/MessageReactions.d.ts +5 -0
  457. package/lib/Reactions/MessageReactions.d.ts.map +1 -1
  458. package/lib/Reactions/MessageReactions.js +359 -80
  459. package/lib/Reactions/MessageReactions.js.map +1 -1
  460. package/lib/Reactions/ReactionPicker.d.ts +5 -3
  461. package/lib/Reactions/ReactionPicker.d.ts.map +1 -1
  462. package/lib/Reactions/ReactionPicker.js +68 -82
  463. package/lib/Reactions/ReactionPicker.js.map +1 -1
  464. package/lib/Reactions/index.js +1 -0
  465. package/lib/Reactions/index.js.map +1 -1
  466. package/lib/Reactions/types.d.ts +49 -5
  467. package/lib/Reactions/types.d.ts.map +1 -1
  468. package/lib/Reactions/types.js.map +1 -1
  469. package/lib/Reply/index.js.map +1 -1
  470. package/lib/Reply/types.d.ts +19 -3
  471. package/lib/Reply/types.d.ts.map +1 -1
  472. package/lib/Reply/types.js.map +1 -1
  473. package/lib/Send.d.ts +2 -2
  474. package/lib/Send.d.ts.map +1 -1
  475. package/lib/Send.js +218 -47
  476. package/lib/Send.js.map +1 -1
  477. package/lib/SystemMessage.d.ts.map +1 -1
  478. package/lib/SystemMessage.js +106 -37
  479. package/lib/SystemMessage.js.map +1 -1
  480. package/lib/Theme.d.ts +320 -23
  481. package/lib/Theme.d.ts.map +1 -1
  482. package/lib/Theme.js +548 -119
  483. package/lib/Theme.js.map +1 -1
  484. package/lib/Time.d.ts +7 -0
  485. package/lib/Time.d.ts.map +1 -1
  486. package/lib/Time.js +122 -30
  487. package/lib/Time.js.map +1 -1
  488. package/lib/TypingIndicator/index.d.ts +9 -1
  489. package/lib/TypingIndicator/index.d.ts.map +1 -1
  490. package/lib/TypingIndicator/index.js +318 -94
  491. package/lib/TypingIndicator/index.js.map +1 -1
  492. package/lib/TypingIndicator/styles.d.ts +6 -2
  493. package/lib/TypingIndicator/styles.d.ts.map +1 -1
  494. package/lib/TypingIndicator/styles.js +22 -18
  495. package/lib/TypingIndicator/styles.js.map +1 -1
  496. package/lib/TypingIndicator/types.js.map +1 -1
  497. package/lib/attachments/AttachmentButton.d.ts +18 -0
  498. package/lib/attachments/AttachmentButton.d.ts.map +1 -0
  499. package/lib/attachments/AttachmentButton.js +110 -0
  500. package/lib/attachments/AttachmentButton.js.map +1 -0
  501. package/lib/attachments/AttachmentMenu/CaptionBar.d.ts +15 -0
  502. package/lib/attachments/AttachmentMenu/CaptionBar.d.ts.map +1 -0
  503. package/lib/attachments/AttachmentMenu/CaptionBar.js +165 -0
  504. package/lib/attachments/AttachmentMenu/CaptionBar.js.map +1 -0
  505. package/lib/attachments/AttachmentMenu/GalleryCell.d.ts +14 -0
  506. package/lib/attachments/AttachmentMenu/GalleryCell.d.ts.map +1 -0
  507. package/lib/attachments/AttachmentMenu/GalleryCell.js +267 -0
  508. package/lib/attachments/AttachmentMenu/GalleryCell.js.map +1 -0
  509. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts +18 -0
  510. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts.map +1 -0
  511. package/lib/attachments/AttachmentMenu/GalleryGrid.js +184 -0
  512. package/lib/attachments/AttachmentMenu/GalleryGrid.js.map +1 -0
  513. package/lib/attachments/AttachmentMenu/TabBar.d.ts +14 -0
  514. package/lib/attachments/AttachmentMenu/TabBar.d.ts.map +1 -0
  515. package/lib/attachments/AttachmentMenu/TabBar.js +127 -0
  516. package/lib/attachments/AttachmentMenu/TabBar.js.map +1 -0
  517. package/lib/attachments/AttachmentMenu/TabButton.d.ts +15 -0
  518. package/lib/attachments/AttachmentMenu/TabButton.d.ts.map +1 -0
  519. package/lib/attachments/AttachmentMenu/TabButton.js +219 -0
  520. package/lib/attachments/AttachmentMenu/TabButton.js.map +1 -0
  521. package/lib/attachments/AttachmentMenu/TabPanel.d.ts +17 -0
  522. package/lib/attachments/AttachmentMenu/TabPanel.d.ts.map +1 -0
  523. package/lib/attachments/AttachmentMenu/TabPanel.js +170 -0
  524. package/lib/attachments/AttachmentMenu/TabPanel.js.map +1 -0
  525. package/lib/attachments/AttachmentMenu/constants.d.ts +54 -0
  526. package/lib/attachments/AttachmentMenu/constants.d.ts.map +1 -0
  527. package/lib/attachments/AttachmentMenu/constants.js +79 -0
  528. package/lib/attachments/AttachmentMenu/constants.js.map +1 -0
  529. package/lib/attachments/AttachmentMenu/index.d.ts +16 -0
  530. package/lib/attachments/AttachmentMenu/index.d.ts.map +1 -0
  531. package/lib/attachments/AttachmentMenu/index.js +498 -0
  532. package/lib/attachments/AttachmentMenu/index.js.map +1 -0
  533. package/lib/attachments/AttachmentMenu/styles.d.ts +259 -0
  534. package/lib/attachments/AttachmentMenu/styles.d.ts.map +1 -0
  535. package/lib/attachments/AttachmentMenu/styles.js +262 -0
  536. package/lib/attachments/AttachmentMenu/styles.js.map +1 -0
  537. package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts +14 -0
  538. package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts.map +1 -0
  539. package/lib/attachments/AttachmentMenu/useSheetPresence.js +74 -0
  540. package/lib/attachments/AttachmentMenu/useSheetPresence.js.map +1 -0
  541. package/lib/attachments/buildMessages.d.ts +36 -0
  542. package/lib/attachments/buildMessages.d.ts.map +1 -0
  543. package/lib/attachments/buildMessages.js +192 -0
  544. package/lib/attachments/buildMessages.js.map +1 -0
  545. package/lib/attachments/gallery.d.ts +28 -0
  546. package/lib/attachments/gallery.d.ts.map +1 -0
  547. package/lib/attachments/gallery.js +245 -0
  548. package/lib/attachments/gallery.js.map +1 -0
  549. package/lib/attachments/types.d.ts +69 -0
  550. package/lib/attachments/types.d.ts.map +1 -0
  551. package/lib/attachments/types.js +2 -0
  552. package/lib/attachments/types.js.map +1 -0
  553. package/lib/colorUtils.d.ts +24 -0
  554. package/lib/colorUtils.d.ts.map +1 -0
  555. package/lib/colorUtils.js +71 -0
  556. package/lib/colorUtils.js.map +1 -0
  557. package/lib/components/AttachmentSheet.d.ts +1 -1
  558. package/lib/components/AttachmentSheet.d.ts.map +1 -1
  559. package/lib/components/AttachmentSheet.js +515 -155
  560. package/lib/components/AttachmentSheet.js.map +1 -1
  561. package/lib/components/BasicMarkdown.d.ts +7 -1
  562. package/lib/components/BasicMarkdown.d.ts.map +1 -1
  563. package/lib/components/BasicMarkdown.js +234 -184
  564. package/lib/components/BasicMarkdown.js.map +1 -1
  565. package/lib/components/BubbleBackground.d.ts +55 -0
  566. package/lib/components/BubbleBackground.d.ts.map +1 -0
  567. package/lib/components/BubbleBackground.js +513 -0
  568. package/lib/components/BubbleBackground.js.map +1 -0
  569. package/lib/components/ChatEmpty.d.ts +18 -0
  570. package/lib/components/ChatEmpty.d.ts.map +1 -0
  571. package/lib/components/ChatEmpty.js +125 -0
  572. package/lib/components/ChatEmpty.js.map +1 -0
  573. package/lib/components/ChatLoadingOverlay.d.ts +10 -0
  574. package/lib/components/ChatLoadingOverlay.d.ts.map +1 -0
  575. package/lib/components/ChatLoadingOverlay.js +89 -0
  576. package/lib/components/ChatLoadingOverlay.js.map +1 -0
  577. package/lib/components/ChatOverlay.d.ts +9 -0
  578. package/lib/components/ChatOverlay.d.ts.map +1 -0
  579. package/lib/components/ChatOverlay.js +60 -0
  580. package/lib/components/ChatOverlay.js.map +1 -0
  581. package/lib/components/ChatWallpaper.d.ts +32 -0
  582. package/lib/components/ChatWallpaper.d.ts.map +1 -0
  583. package/lib/components/ChatWallpaper.js +277 -0
  584. package/lib/components/ChatWallpaper.js.map +1 -0
  585. package/lib/components/ContextMenu/MenuCard.d.ts +21 -0
  586. package/lib/components/ContextMenu/MenuCard.d.ts.map +1 -0
  587. package/lib/components/ContextMenu/MenuCard.js +265 -0
  588. package/lib/components/ContextMenu/MenuCard.js.map +1 -0
  589. package/lib/components/ContextMenu/ReactionButton.d.ts +15 -0
  590. package/lib/components/ContextMenu/ReactionButton.d.ts.map +1 -0
  591. package/lib/components/ContextMenu/ReactionButton.js +116 -0
  592. package/lib/components/ContextMenu/ReactionButton.js.map +1 -0
  593. package/lib/components/ContextMenu/ReactionFlight.d.ts +14 -0
  594. package/lib/components/ContextMenu/ReactionFlight.d.ts.map +1 -0
  595. package/lib/components/ContextMenu/ReactionFlight.js +111 -0
  596. package/lib/components/ContextMenu/ReactionFlight.js.map +1 -0
  597. package/lib/components/ContextMenu/ReactionsBar.d.ts +35 -0
  598. package/lib/components/ContextMenu/ReactionsBar.d.ts.map +1 -0
  599. package/lib/components/ContextMenu/ReactionsBar.js +354 -0
  600. package/lib/components/ContextMenu/ReactionsBar.js.map +1 -0
  601. package/lib/components/ContextMenu/constants.d.ts +68 -0
  602. package/lib/components/ContextMenu/constants.d.ts.map +1 -0
  603. package/lib/components/ContextMenu/constants.js +105 -0
  604. package/lib/components/ContextMenu/constants.js.map +1 -0
  605. package/lib/components/ContextMenu/index.d.ts +12 -0
  606. package/lib/components/ContextMenu/index.d.ts.map +1 -0
  607. package/lib/components/ContextMenu/index.js +476 -0
  608. package/lib/components/ContextMenu/index.js.map +1 -0
  609. package/lib/components/ContextMenu/placement.d.ts +50 -0
  610. package/lib/components/ContextMenu/placement.d.ts.map +1 -0
  611. package/lib/components/ContextMenu/placement.js +117 -0
  612. package/lib/components/ContextMenu/placement.js.map +1 -0
  613. package/lib/components/ContextMenu/styles.d.ts +199 -0
  614. package/lib/components/ContextMenu/styles.d.ts.map +1 -0
  615. package/lib/components/ContextMenu/styles.js +169 -0
  616. package/lib/components/ContextMenu/styles.js.map +1 -0
  617. package/lib/components/ContextMenu/types.d.ts +62 -0
  618. package/lib/components/ContextMenu/types.d.ts.map +1 -0
  619. package/lib/components/ContextMenu/types.js +2 -0
  620. package/lib/components/ContextMenu/types.js.map +1 -0
  621. package/lib/components/ContextMenu/useExpandPanel.d.ts +11 -0
  622. package/lib/components/ContextMenu/useExpandPanel.d.ts.map +1 -0
  623. package/lib/components/ContextMenu/useExpandPanel.js +81 -0
  624. package/lib/components/ContextMenu/useExpandPanel.js.map +1 -0
  625. package/lib/components/ContextMenu/useMenuPresence.d.ts +17 -0
  626. package/lib/components/ContextMenu/useMenuPresence.d.ts.map +1 -0
  627. package/lib/components/ContextMenu/useMenuPresence.js +125 -0
  628. package/lib/components/ContextMenu/useMenuPresence.js.map +1 -0
  629. package/lib/components/FloatingRoundNote.d.ts +13 -0
  630. package/lib/components/FloatingRoundNote.d.ts.map +1 -0
  631. package/lib/components/FloatingRoundNote.js +541 -0
  632. package/lib/components/FloatingRoundNote.js.map +1 -0
  633. package/lib/components/GlassSurface.d.ts +16 -0
  634. package/lib/components/GlassSurface.d.ts.map +1 -0
  635. package/lib/components/GlassSurface.js +114 -0
  636. package/lib/components/GlassSurface.js.map +1 -0
  637. package/lib/components/Icon.js +57 -8
  638. package/lib/components/Icon.js.map +1 -1
  639. package/lib/components/LinkPreviewCard.d.ts +36 -0
  640. package/lib/components/LinkPreviewCard.d.ts.map +1 -0
  641. package/lib/components/LinkPreviewCard.js +416 -0
  642. package/lib/components/LinkPreviewCard.js.map +1 -0
  643. package/lib/components/LucideIcon.d.ts.map +1 -1
  644. package/lib/components/LucideIcon.js +103 -106
  645. package/lib/components/LucideIcon.js.map +1 -1
  646. package/lib/components/MarkdownMessageText.d.ts +17 -2
  647. package/lib/components/MarkdownMessageText.d.ts.map +1 -1
  648. package/lib/components/MarkdownMessageText.js +270 -22
  649. package/lib/components/MarkdownMessageText.js.map +1 -1
  650. package/lib/components/MediaCard.d.ts.map +1 -1
  651. package/lib/components/MediaCard.js +223 -85
  652. package/lib/components/MediaCard.js.map +1 -1
  653. package/lib/components/MediaControls.js +1094 -450
  654. package/lib/components/MediaControls.js.map +1 -1
  655. package/lib/components/MediaLoader.d.ts +21 -0
  656. package/lib/components/MediaLoader.d.ts.map +1 -0
  657. package/lib/components/MediaLoader.js +61 -0
  658. package/lib/components/MediaLoader.js.map +1 -0
  659. package/lib/components/MessageReply.d.ts +2 -2
  660. package/lib/components/MessageReply.d.ts.map +1 -1
  661. package/lib/components/MessageReply.js +266 -83
  662. package/lib/components/MessageReply.js.map +1 -1
  663. package/lib/components/MessageStatus.d.ts +23 -0
  664. package/lib/components/MessageStatus.d.ts.map +1 -0
  665. package/lib/components/MessageStatus.js +499 -0
  666. package/lib/components/MessageStatus.js.map +1 -0
  667. package/lib/components/NoteIndicators.d.ts +25 -0
  668. package/lib/components/NoteIndicators.d.ts.map +1 -0
  669. package/lib/components/NoteIndicators.js +206 -0
  670. package/lib/components/NoteIndicators.js.map +1 -0
  671. package/lib/components/NowPlayingBar.d.ts +15 -0
  672. package/lib/components/NowPlayingBar.d.ts.map +1 -0
  673. package/lib/components/NowPlayingBar.js +261 -0
  674. package/lib/components/NowPlayingBar.js.map +1 -0
  675. package/lib/components/PlayPauseIcon.d.ts +13 -0
  676. package/lib/components/PlayPauseIcon.d.ts.map +1 -0
  677. package/lib/components/PlayPauseIcon.js +187 -0
  678. package/lib/components/PlayPauseIcon.js.map +1 -0
  679. package/lib/components/PlaybackSpeedPill.d.ts +11 -0
  680. package/lib/components/PlaybackSpeedPill.d.ts.map +1 -0
  681. package/lib/components/PlaybackSpeedPill.js +350 -0
  682. package/lib/components/PlaybackSpeedPill.js.map +1 -0
  683. package/lib/components/RadialProgress.d.ts +70 -0
  684. package/lib/components/RadialProgress.d.ts.map +1 -0
  685. package/lib/components/RadialProgress.js +864 -0
  686. package/lib/components/RadialProgress.js.map +1 -0
  687. package/lib/components/RecordButton/LockPill.d.ts +27 -0
  688. package/lib/components/RecordButton/LockPill.d.ts.map +1 -0
  689. package/lib/components/RecordButton/LockPill.js +182 -0
  690. package/lib/components/RecordButton/LockPill.js.map +1 -0
  691. package/lib/components/RecordButton/ModeButton.d.ts +18 -0
  692. package/lib/components/RecordButton/ModeButton.d.ts.map +1 -0
  693. package/lib/components/RecordButton/ModeButton.js +154 -0
  694. package/lib/components/RecordButton/ModeButton.js.map +1 -0
  695. package/lib/components/RecordButton/ResumeButton.d.ts +20 -0
  696. package/lib/components/RecordButton/ResumeButton.d.ts.map +1 -0
  697. package/lib/components/RecordButton/ResumeButton.js +63 -0
  698. package/lib/components/RecordButton/ResumeButton.js.map +1 -0
  699. package/lib/components/RecordButton/Tooltips.d.ts +20 -0
  700. package/lib/components/RecordButton/Tooltips.d.ts.map +1 -0
  701. package/lib/components/RecordButton/Tooltips.js +191 -0
  702. package/lib/components/RecordButton/Tooltips.js.map +1 -0
  703. package/lib/components/RecordButton/ViewOnceButton.d.ts +16 -0
  704. package/lib/components/RecordButton/ViewOnceButton.d.ts.map +1 -0
  705. package/lib/components/RecordButton/ViewOnceButton.js +96 -0
  706. package/lib/components/RecordButton/ViewOnceButton.js.map +1 -0
  707. package/lib/components/RecordButton/constants.d.ts +52 -0
  708. package/lib/components/RecordButton/constants.d.ts.map +1 -0
  709. package/lib/components/RecordButton/constants.js +58 -0
  710. package/lib/components/RecordButton/constants.js.map +1 -0
  711. package/lib/components/RecordButton/index.d.ts +14 -0
  712. package/lib/components/RecordButton/index.d.ts.map +1 -0
  713. package/lib/components/RecordButton/index.js +382 -0
  714. package/lib/components/RecordButton/index.js.map +1 -0
  715. package/lib/components/RecordButton/styles.d.ts +155 -0
  716. package/lib/components/RecordButton/styles.d.ts.map +1 -0
  717. package/lib/components/RecordButton/styles.js +161 -0
  718. package/lib/components/RecordButton/styles.js.map +1 -0
  719. package/lib/components/RecordButton/types.d.ts +63 -0
  720. package/lib/components/RecordButton/types.d.ts.map +1 -0
  721. package/lib/components/RecordButton/types.js +2 -0
  722. package/lib/components/RecordButton/types.js.map +1 -0
  723. package/lib/components/RecordButton/useRecordGesture.d.ts +28 -0
  724. package/lib/components/RecordButton/useRecordGesture.d.ts.map +1 -0
  725. package/lib/components/RecordButton/useRecordGesture.js +263 -0
  726. package/lib/components/RecordButton/useRecordGesture.js.map +1 -0
  727. package/lib/components/RecordButton/useRecordHints.d.ts +27 -0
  728. package/lib/components/RecordButton/useRecordHints.d.ts.map +1 -0
  729. package/lib/components/RecordButton/useRecordHints.js +210 -0
  730. package/lib/components/RecordButton/useRecordHints.js.map +1 -0
  731. package/lib/components/RecordButton/useRecordSlideDistance.d.ts +3 -0
  732. package/lib/components/RecordButton/useRecordSlideDistance.d.ts.map +1 -0
  733. package/lib/components/RecordButton/useRecordSlideDistance.js +15 -0
  734. package/lib/components/RecordButton/useRecordSlideDistance.js.map +1 -0
  735. package/lib/components/RecordButton/useRecordTake.d.ts +41 -0
  736. package/lib/components/RecordButton/useRecordTake.d.ts.map +1 -0
  737. package/lib/components/RecordButton/useRecordTake.js +349 -0
  738. package/lib/components/RecordButton/useRecordTake.js.map +1 -0
  739. package/lib/components/RecordButton/useSendFlight.d.ts +25 -0
  740. package/lib/components/RecordButton/useSendFlight.d.ts.map +1 -0
  741. package/lib/components/RecordButton/useSendFlight.js +162 -0
  742. package/lib/components/RecordButton/useSendFlight.js.map +1 -0
  743. package/lib/components/RecordCircle.d.ts +92 -0
  744. package/lib/components/RecordCircle.d.ts.map +1 -0
  745. package/lib/components/RecordCircle.js +629 -0
  746. package/lib/components/RecordCircle.js.map +1 -0
  747. package/lib/components/RecordingBar.d.ts +24 -0
  748. package/lib/components/RecordingBar.d.ts.map +1 -0
  749. package/lib/components/RecordingBar.js +766 -0
  750. package/lib/components/RecordingBar.js.map +1 -0
  751. package/lib/components/ReplyPreview.js +318 -135
  752. package/lib/components/ReplyPreview.js.map +1 -1
  753. package/lib/components/SelectionBar.d.ts +17 -0
  754. package/lib/components/SelectionBar.d.ts.map +1 -0
  755. package/lib/components/SelectionBar.js +214 -0
  756. package/lib/components/SelectionBar.js.map +1 -0
  757. package/lib/components/SelectionCheckbox.d.ts +12 -0
  758. package/lib/components/SelectionCheckbox.d.ts.map +1 -0
  759. package/lib/components/SelectionCheckbox.js +104 -0
  760. package/lib/components/SelectionCheckbox.js.map +1 -0
  761. package/lib/components/SendIcon.js +60 -26
  762. package/lib/components/SendIcon.js.map +1 -1
  763. package/lib/components/ServiceSpinner.d.ts +17 -0
  764. package/lib/components/ServiceSpinner.d.ts.map +1 -0
  765. package/lib/components/ServiceSpinner.js +77 -0
  766. package/lib/components/ServiceSpinner.js.map +1 -0
  767. package/lib/components/Spinner.d.ts +18 -0
  768. package/lib/components/Spinner.d.ts.map +1 -0
  769. package/lib/components/Spinner.js +169 -0
  770. package/lib/components/Spinner.js.map +1 -0
  771. package/lib/components/StreamingCursor.js +54 -9
  772. package/lib/components/StreamingCursor.js.map +1 -1
  773. package/lib/components/Ticks.d.ts +6 -5
  774. package/lib/components/Ticks.d.ts.map +1 -1
  775. package/lib/components/Ticks.js +272 -82
  776. package/lib/components/Ticks.js.map +1 -1
  777. package/lib/components/TouchableOpacity.d.ts.map +1 -1
  778. package/lib/components/TouchableOpacity.js +153 -51
  779. package/lib/components/TouchableOpacity.js.map +1 -1
  780. package/lib/components/TranscribeButton.d.ts +45 -0
  781. package/lib/components/TranscribeButton.d.ts.map +1 -0
  782. package/lib/components/TranscribeButton.js +549 -0
  783. package/lib/components/TranscribeButton.js.map +1 -0
  784. package/lib/components/TypingStatus.d.ts +29 -0
  785. package/lib/components/TypingStatus.d.ts.map +1 -0
  786. package/lib/components/TypingStatus.js +446 -0
  787. package/lib/components/TypingStatus.js.map +1 -0
  788. package/lib/components/UnreadSeparator.d.ts +8 -0
  789. package/lib/components/UnreadSeparator.d.ts.map +1 -0
  790. package/lib/components/UnreadSeparator.js +101 -0
  791. package/lib/components/UnreadSeparator.js.map +1 -0
  792. package/lib/components/VideoNoteCapture/ProgressRing.d.ts +16 -0
  793. package/lib/components/VideoNoteCapture/ProgressRing.d.ts.map +1 -0
  794. package/lib/components/VideoNoteCapture/ProgressRing.js +75 -0
  795. package/lib/components/VideoNoteCapture/ProgressRing.js.map +1 -0
  796. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts +31 -0
  797. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts.map +1 -0
  798. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js +500 -0
  799. package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js.map +1 -0
  800. package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts +12 -0
  801. package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts.map +1 -0
  802. package/lib/components/VideoNoteCapture/VideoNotePreviewView.js +105 -0
  803. package/lib/components/VideoNoteCapture/VideoNotePreviewView.js.map +1 -0
  804. package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts +12 -0
  805. package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts.map +1 -0
  806. package/lib/components/VideoNoteCapture/VideoNoteStage.js +95 -0
  807. package/lib/components/VideoNoteCapture/VideoNoteStage.js.map +1 -0
  808. package/lib/components/VideoNoteCapture/constants.d.ts +50 -0
  809. package/lib/components/VideoNoteCapture/constants.d.ts.map +1 -0
  810. package/lib/components/VideoNoteCapture/constants.js +53 -0
  811. package/lib/components/VideoNoteCapture/constants.js.map +1 -0
  812. package/lib/components/VideoNoteCapture/index.d.ts +3 -0
  813. package/lib/components/VideoNoteCapture/index.d.ts.map +1 -0
  814. package/lib/components/VideoNoteCapture/index.js +2 -0
  815. package/lib/components/VideoNoteCapture/index.js.map +1 -0
  816. package/lib/components/VideoNoteCapture/optional.d.ts +6 -0
  817. package/lib/components/VideoNoteCapture/optional.d.ts.map +1 -0
  818. package/lib/components/VideoNoteCapture/optional.js +15 -0
  819. package/lib/components/VideoNoteCapture/optional.js.map +1 -0
  820. package/lib/components/VideoNoteCapture/sessionState.d.ts +10 -0
  821. package/lib/components/VideoNoteCapture/sessionState.d.ts.map +1 -0
  822. package/lib/components/VideoNoteCapture/sessionState.js +19 -0
  823. package/lib/components/VideoNoteCapture/sessionState.js.map +1 -0
  824. package/lib/components/VideoNoteCapture/styles.d.ts +84 -0
  825. package/lib/components/VideoNoteCapture/styles.d.ts.map +1 -0
  826. package/lib/components/VideoNoteCapture/styles.js +86 -0
  827. package/lib/components/VideoNoteCapture/styles.js.map +1 -0
  828. package/lib/components/VideoNoteCapture/types.d.ts +54 -0
  829. package/lib/components/VideoNoteCapture/types.d.ts.map +1 -0
  830. package/lib/components/VideoNoteCapture/types.js +2 -0
  831. package/lib/components/VideoNoteCapture/types.js.map +1 -0
  832. package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts +47 -0
  833. package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts.map +1 -0
  834. package/lib/components/VideoNoteCapture/useRoundAnimation.js +216 -0
  835. package/lib/components/VideoNoteCapture/useRoundAnimation.js.map +1 -0
  836. package/lib/components/VideoNoteCapture/useRoundLayout.d.ts +14 -0
  837. package/lib/components/VideoNoteCapture/useRoundLayout.d.ts.map +1 -0
  838. package/lib/components/VideoNoteCapture/useRoundLayout.js +61 -0
  839. package/lib/components/VideoNoteCapture/useRoundLayout.js.map +1 -0
  840. package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts +25 -0
  841. package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts.map +1 -0
  842. package/lib/components/VideoNoteCapture/useVideoNoteSession.js +611 -0
  843. package/lib/components/VideoNoteCapture/useVideoNoteSession.js.map +1 -0
  844. package/lib/components/VideoNoteOverlay.d.ts +42 -11
  845. package/lib/components/VideoNoteOverlay.d.ts.map +1 -1
  846. package/lib/components/VideoNoteOverlay.js +722 -135
  847. package/lib/components/VideoNoteOverlay.js.map +1 -1
  848. package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts +6 -0
  849. package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts.map +1 -0
  850. package/lib/components/VideoNoteRecorder/LiveVideoNote.js +205 -0
  851. package/lib/components/VideoNoteRecorder/LiveVideoNote.js.map +1 -0
  852. package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts +35 -0
  853. package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts.map +1 -0
  854. package/lib/components/VideoNoteRecorder/RecorderChrome.js +350 -0
  855. package/lib/components/VideoNoteRecorder/RecorderChrome.js.map +1 -0
  856. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts +10 -0
  857. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts.map +1 -0
  858. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js +52 -0
  859. package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js.map +1 -0
  860. package/lib/components/VideoNoteRecorder/constants.d.ts +16 -0
  861. package/lib/components/VideoNoteRecorder/constants.d.ts.map +1 -0
  862. package/lib/components/VideoNoteRecorder/constants.js +30 -0
  863. package/lib/components/VideoNoteRecorder/constants.js.map +1 -0
  864. package/lib/components/{VideoNoteRecorder.d.ts → VideoNoteRecorder/index.d.ts} +5 -10
  865. package/lib/components/VideoNoteRecorder/index.d.ts.map +1 -0
  866. package/lib/components/VideoNoteRecorder/index.js +26 -0
  867. package/lib/components/VideoNoteRecorder/index.js.map +1 -0
  868. package/lib/components/VideoNoteRecorder/styles.d.ts +159 -0
  869. package/lib/components/VideoNoteRecorder/styles.d.ts.map +1 -0
  870. package/lib/components/VideoNoteRecorder/styles.js +170 -0
  871. package/lib/components/VideoNoteRecorder/styles.js.map +1 -0
  872. package/lib/components/VideoNoteRecorder/types.d.ts +7 -0
  873. package/lib/components/VideoNoteRecorder/types.d.ts.map +1 -0
  874. package/lib/components/VideoNoteRecorder/types.js +2 -0
  875. package/lib/components/VideoNoteRecorder/types.js.map +1 -0
  876. package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts +10 -0
  877. package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts.map +1 -0
  878. package/lib/components/VideoNoteRecorder/useRecordingTimer.js +134 -0
  879. package/lib/components/VideoNoteRecorder/useRecordingTimer.js.map +1 -0
  880. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts +28 -0
  881. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts.map +1 -0
  882. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js +287 -0
  883. package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js.map +1 -0
  884. package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts +6 -0
  885. package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts.map +1 -0
  886. package/lib/components/VideoNoteRecorder/visionCameraHooks.js +11 -0
  887. package/lib/components/VideoNoteRecorder/visionCameraHooks.js.map +1 -0
  888. package/lib/components/VideoRecordButton.d.ts +1 -1
  889. package/lib/components/VideoRecordButton.d.ts.map +1 -1
  890. package/lib/components/VideoRecordButton.js +221 -92
  891. package/lib/components/VideoRecordButton.js.map +1 -1
  892. package/lib/components/ViewOnceBadge.d.ts +23 -0
  893. package/lib/components/ViewOnceBadge.d.ts.map +1 -0
  894. package/lib/components/ViewOnceBadge.js +233 -0
  895. package/lib/components/ViewOnceBadge.js.map +1 -0
  896. package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts +16 -0
  897. package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts.map +1 -0
  898. package/lib/components/VoiceMessageInput/RecordedVoicePreview.js +503 -0
  899. package/lib/components/VoiceMessageInput/RecordedVoicePreview.js.map +1 -0
  900. package/lib/components/VoiceMessageInput/constants.d.ts +16 -0
  901. package/lib/components/VoiceMessageInput/constants.d.ts.map +1 -0
  902. package/lib/components/VoiceMessageInput/constants.js +22 -0
  903. package/lib/components/VoiceMessageInput/constants.js.map +1 -0
  904. package/lib/components/VoiceMessageInput/formatElapsed.d.ts +2 -0
  905. package/lib/components/VoiceMessageInput/formatElapsed.d.ts.map +1 -0
  906. package/lib/components/VoiceMessageInput/formatElapsed.js +7 -0
  907. package/lib/components/VoiceMessageInput/formatElapsed.js.map +1 -0
  908. package/lib/components/VoiceMessageInput/index.d.ts +9 -0
  909. package/lib/components/VoiceMessageInput/index.d.ts.map +1 -0
  910. package/lib/components/VoiceMessageInput/index.js +148 -0
  911. package/lib/components/VoiceMessageInput/index.js.map +1 -0
  912. package/lib/components/VoiceMessageInput/previewStyles.d.ts +77 -0
  913. package/lib/components/VoiceMessageInput/previewStyles.d.ts.map +1 -0
  914. package/lib/components/VoiceMessageInput/previewStyles.js +80 -0
  915. package/lib/components/VoiceMessageInput/previewStyles.js.map +1 -0
  916. package/lib/components/VoiceMessageInput/previewWaveform.d.ts +15 -0
  917. package/lib/components/VoiceMessageInput/previewWaveform.d.ts.map +1 -0
  918. package/lib/components/VoiceMessageInput/previewWaveform.js +27 -0
  919. package/lib/components/VoiceMessageInput/previewWaveform.js.map +1 -0
  920. package/lib/components/VoiceMessageInput/recorder.d.ts +18 -0
  921. package/lib/components/VoiceMessageInput/recorder.d.ts.map +1 -0
  922. package/lib/components/VoiceMessageInput/recorder.js +80 -0
  923. package/lib/components/VoiceMessageInput/recorder.js.map +1 -0
  924. package/lib/components/VoiceMessageInput/types.d.ts +56 -0
  925. package/lib/components/VoiceMessageInput/types.d.ts.map +1 -0
  926. package/lib/components/VoiceMessageInput/types.js +2 -0
  927. package/lib/components/VoiceMessageInput/types.js.map +1 -0
  928. package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts +7 -0
  929. package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts.map +1 -0
  930. package/lib/components/VoiceMessageInput/useLazyRecorder.js +61 -0
  931. package/lib/components/VoiceMessageInput/useLazyRecorder.js.map +1 -0
  932. package/lib/components/VoiceMessageInput/useStateReport.d.ts +16 -0
  933. package/lib/components/VoiceMessageInput/useStateReport.d.ts.map +1 -0
  934. package/lib/components/VoiceMessageInput/useStateReport.js +81 -0
  935. package/lib/components/VoiceMessageInput/useStateReport.js.map +1 -0
  936. package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts +34 -0
  937. package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts.map +1 -0
  938. package/lib/components/VoiceMessageInput/useTakePreviewActions.js +207 -0
  939. package/lib/components/VoiceMessageInput/useTakePreviewActions.js.map +1 -0
  940. package/lib/components/VoiceMessageInput/useVoiceTake.d.ts +25 -0
  941. package/lib/components/VoiceMessageInput/useVoiceTake.d.ts.map +1 -0
  942. package/lib/components/VoiceMessageInput/useVoiceTake.js +424 -0
  943. package/lib/components/VoiceMessageInput/useVoiceTake.js.map +1 -0
  944. package/lib/components/WaveformPlayer/Bars.d.ts +30 -0
  945. package/lib/components/WaveformPlayer/Bars.d.ts.map +1 -0
  946. package/lib/components/WaveformPlayer/Bars.js +171 -0
  947. package/lib/components/WaveformPlayer/Bars.js.map +1 -0
  948. package/lib/components/WaveformPlayer/VoiceButton.d.ts +23 -0
  949. package/lib/components/WaveformPlayer/VoiceButton.d.ts.map +1 -0
  950. package/lib/components/WaveformPlayer/VoiceButton.js +111 -0
  951. package/lib/components/WaveformPlayer/VoiceButton.js.map +1 -0
  952. package/lib/components/WaveformPlayer/WaveformTrack.d.ts +31 -0
  953. package/lib/components/WaveformPlayer/WaveformTrack.d.ts.map +1 -0
  954. package/lib/components/WaveformPlayer/WaveformTrack.js +199 -0
  955. package/lib/components/WaveformPlayer/WaveformTrack.js.map +1 -0
  956. package/lib/components/WaveformPlayer/audio.d.ts +23 -0
  957. package/lib/components/WaveformPlayer/audio.d.ts.map +1 -0
  958. package/lib/components/WaveformPlayer/audio.js +97 -0
  959. package/lib/components/WaveformPlayer/audio.js.map +1 -0
  960. package/lib/components/WaveformPlayer/index.d.ts +13 -0
  961. package/lib/components/WaveformPlayer/index.d.ts.map +1 -0
  962. package/lib/components/WaveformPlayer/index.js +475 -0
  963. package/lib/components/WaveformPlayer/index.js.map +1 -0
  964. package/lib/components/WaveformPlayer/styles.d.ts +257 -0
  965. package/lib/components/WaveformPlayer/styles.d.ts.map +1 -0
  966. package/lib/components/WaveformPlayer/styles.js +120 -0
  967. package/lib/components/WaveformPlayer/styles.js.map +1 -0
  968. package/lib/components/WaveformPlayer/types.d.ts +32 -0
  969. package/lib/components/WaveformPlayer/types.d.ts.map +1 -0
  970. package/lib/components/WaveformPlayer/types.js +2 -0
  971. package/lib/components/WaveformPlayer/types.js.map +1 -0
  972. package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts +21 -0
  973. package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts.map +1 -0
  974. package/lib/components/WaveformPlayer/useSendFlightReveal.js +105 -0
  975. package/lib/components/WaveformPlayer/useSendFlightReveal.js.map +1 -0
  976. package/lib/components/WaveformPlayer/useVoicePlayback.d.ts +39 -0
  977. package/lib/components/WaveformPlayer/useVoicePlayback.d.ts.map +1 -0
  978. package/lib/components/WaveformPlayer/useVoicePlayback.js +401 -0
  979. package/lib/components/WaveformPlayer/useVoicePlayback.js.map +1 -0
  980. package/lib/components/WaveformPlayer/useVoiceSource.d.ts +38 -0
  981. package/lib/components/WaveformPlayer/useVoiceSource.d.ts.map +1 -0
  982. package/lib/components/WaveformPlayer/useVoiceSource.js +244 -0
  983. package/lib/components/WaveformPlayer/useVoiceSource.js.map +1 -0
  984. package/lib/components/WaveformPlayer/useWaveformMotion.d.ts +16 -0
  985. package/lib/components/WaveformPlayer/useWaveformMotion.d.ts.map +1 -0
  986. package/lib/components/WaveformPlayer/useWaveformMotion.js +135 -0
  987. package/lib/components/WaveformPlayer/useWaveformMotion.js.map +1 -0
  988. package/lib/components/WaveformPlayer/useWaveformScrub.d.ts +16 -0
  989. package/lib/components/WaveformPlayer/useWaveformScrub.d.ts.map +1 -0
  990. package/lib/components/WaveformPlayer/useWaveformScrub.js +168 -0
  991. package/lib/components/WaveformPlayer/useWaveformScrub.js.map +1 -0
  992. package/lib/components/composerPanels.d.ts +13 -0
  993. package/lib/components/composerPanels.d.ts.map +1 -0
  994. package/lib/components/composerPanels.js +22 -0
  995. package/lib/components/composerPanels.js.map +1 -0
  996. package/lib/components/defaultMessageActions.d.ts +30 -0
  997. package/lib/components/defaultMessageActions.d.ts.map +1 -0
  998. package/lib/components/defaultMessageActions.js +124 -0
  999. package/lib/components/defaultMessageActions.js.map +1 -0
  1000. package/lib/components/earpiece.d.ts +56 -0
  1001. package/lib/components/earpiece.d.ts.map +1 -0
  1002. package/lib/components/earpiece.js +218 -0
  1003. package/lib/components/earpiece.js.map +1 -0
  1004. package/lib/components/floatingNoteMath.d.ts +66 -0
  1005. package/lib/components/floatingNoteMath.d.ts.map +1 -0
  1006. package/lib/components/floatingNoteMath.js +143 -0
  1007. package/lib/components/floatingNoteMath.js.map +1 -0
  1008. package/lib/components/haptics.d.ts +5 -0
  1009. package/lib/components/haptics.d.ts.map +1 -0
  1010. package/lib/components/haptics.js +26 -0
  1011. package/lib/components/haptics.js.map +1 -0
  1012. package/lib/components/mediaDownload.d.ts +14 -0
  1013. package/lib/components/mediaDownload.d.ts.map +1 -0
  1014. package/lib/components/mediaDownload.js +43 -0
  1015. package/lib/components/mediaDownload.js.map +1 -0
  1016. package/lib/components/mediaPalette.d.ts +7 -2
  1017. package/lib/components/mediaPalette.d.ts.map +1 -1
  1018. package/lib/components/mediaPalette.js +27 -15
  1019. package/lib/components/mediaPalette.js.map +1 -1
  1020. package/lib/components/mediaPlayback.d.ts +204 -5
  1021. package/lib/components/mediaPlayback.d.ts.map +1 -1
  1022. package/lib/components/mediaPlayback.js +746 -17
  1023. package/lib/components/mediaPlayback.js.map +1 -1
  1024. package/lib/components/mediaTransfer.d.ts +29 -0
  1025. package/lib/components/mediaTransfer.d.ts.map +1 -0
  1026. package/lib/components/mediaTransfer.js +52 -0
  1027. package/lib/components/mediaTransfer.js.map +1 -0
  1028. package/lib/components/mediaViewer/MediaViewer.d.ts +17 -0
  1029. package/lib/components/mediaViewer/MediaViewer.d.ts.map +1 -0
  1030. package/lib/components/mediaViewer/MediaViewer.js +347 -0
  1031. package/lib/components/mediaViewer/MediaViewer.js.map +1 -0
  1032. package/lib/components/mediaViewer/MediaViewerChrome.d.ts +14 -0
  1033. package/lib/components/mediaViewer/MediaViewerChrome.d.ts.map +1 -0
  1034. package/lib/components/mediaViewer/MediaViewerChrome.js +164 -0
  1035. package/lib/components/mediaViewer/MediaViewerChrome.js.map +1 -0
  1036. package/lib/components/mediaViewer/MediaViewerHost.d.ts +10 -0
  1037. package/lib/components/mediaViewer/MediaViewerHost.d.ts.map +1 -0
  1038. package/lib/components/mediaViewer/MediaViewerHost.js +76 -0
  1039. package/lib/components/mediaViewer/MediaViewerHost.js.map +1 -0
  1040. package/lib/components/mediaViewer/MediaViewerPage.d.ts +25 -0
  1041. package/lib/components/mediaViewer/MediaViewerPage.d.ts.map +1 -0
  1042. package/lib/components/mediaViewer/MediaViewerPage.js +194 -0
  1043. package/lib/components/mediaViewer/MediaViewerPage.js.map +1 -0
  1044. package/lib/components/mediaViewer/gallery.d.ts +27 -0
  1045. package/lib/components/mediaViewer/gallery.d.ts.map +1 -0
  1046. package/lib/components/mediaViewer/gallery.js +41 -0
  1047. package/lib/components/mediaViewer/gallery.js.map +1 -0
  1048. package/lib/components/messageHighlight.d.ts +41 -0
  1049. package/lib/components/messageHighlight.d.ts.map +1 -0
  1050. package/lib/components/messageHighlight.js +157 -0
  1051. package/lib/components/messageHighlight.js.map +1 -0
  1052. package/lib/components/messagePress.d.ts +14 -0
  1053. package/lib/components/messagePress.d.ts.map +1 -0
  1054. package/lib/components/messagePress.js +18 -0
  1055. package/lib/components/messagePress.js.map +1 -0
  1056. package/lib/components/messageSelection.d.ts +39 -0
  1057. package/lib/components/messageSelection.d.ts.map +1 -0
  1058. package/lib/components/messageSelection.js +135 -0
  1059. package/lib/components/messageSelection.js.map +1 -0
  1060. package/lib/components/recordingFeedback.d.ts +22 -0
  1061. package/lib/components/recordingFeedback.d.ts.map +1 -0
  1062. package/lib/components/recordingFeedback.js +80 -0
  1063. package/lib/components/recordingFeedback.js.map +1 -0
  1064. package/lib/components/recordingMeter.d.ts +19 -0
  1065. package/lib/components/recordingMeter.d.ts.map +1 -0
  1066. package/lib/components/recordingMeter.js +21 -0
  1067. package/lib/components/recordingMeter.js.map +1 -0
  1068. package/lib/components/roundNoteChrome.d.ts +107 -0
  1069. package/lib/components/roundNoteChrome.d.ts.map +1 -0
  1070. package/lib/components/roundNoteChrome.js +249 -0
  1071. package/lib/components/roundNoteChrome.js.map +1 -0
  1072. package/lib/components/roundNotePlayers.d.ts +78 -0
  1073. package/lib/components/roundNotePlayers.d.ts.map +1 -0
  1074. package/lib/components/roundNotePlayers.js +230 -0
  1075. package/lib/components/roundNotePlayers.js.map +1 -0
  1076. package/lib/components/sendFlight.d.ts +88 -0
  1077. package/lib/components/sendFlight.d.ts.map +1 -0
  1078. package/lib/components/sendFlight.js +146 -0
  1079. package/lib/components/sendFlight.js.map +1 -0
  1080. package/lib/components/viewOnce.d.ts +27 -0
  1081. package/lib/components/viewOnce.d.ts.map +1 -0
  1082. package/lib/components/viewOnce.js +168 -0
  1083. package/lib/components/viewOnce.js.map +1 -0
  1084. package/lib/components/visionCamera.d.ts +45 -0
  1085. package/lib/components/visionCamera.d.ts.map +1 -0
  1086. package/lib/components/visionCamera.js +117 -0
  1087. package/lib/components/visionCamera.js.map +1 -0
  1088. package/lib/components/voiceEditing.d.ts +34 -0
  1089. package/lib/components/voiceEditing.d.ts.map +1 -0
  1090. package/lib/components/voiceEditing.js +159 -0
  1091. package/lib/components/voiceEditing.js.map +1 -0
  1092. package/lib/components/voiceWaveform.d.ts +108 -0
  1093. package/lib/components/voiceWaveform.d.ts.map +1 -0
  1094. package/lib/components/voiceWaveform.js +165 -0
  1095. package/lib/components/voiceWaveform.js.map +1 -0
  1096. package/lib/components/wallpaperGradient.d.ts +16 -0
  1097. package/lib/components/wallpaperGradient.d.ts.map +1 -0
  1098. package/lib/components/wallpaperGradient.js +186 -0
  1099. package/lib/components/wallpaperGradient.js.map +1 -0
  1100. package/lib/components/windowInsets.d.ts +11 -0
  1101. package/lib/components/windowInsets.d.ts.map +1 -0
  1102. package/lib/components/windowInsets.js +44 -0
  1103. package/lib/components/windowInsets.js.map +1 -0
  1104. package/lib/dayjsLocales.js +15 -2
  1105. package/lib/dayjsLocales.js.map +1 -1
  1106. package/lib/emoji/EmojiGrid/BackspaceButton.d.ts +11 -0
  1107. package/lib/emoji/EmojiGrid/BackspaceButton.d.ts.map +1 -0
  1108. package/lib/emoji/EmojiGrid/BackspaceButton.js +111 -0
  1109. package/lib/emoji/EmojiGrid/BackspaceButton.js.map +1 -0
  1110. package/lib/emoji/EmojiGrid/EmojiRow.d.ts +15 -0
  1111. package/lib/emoji/EmojiGrid/EmojiRow.d.ts.map +1 -0
  1112. package/lib/emoji/EmojiGrid/EmojiRow.js +71 -0
  1113. package/lib/emoji/EmojiGrid/EmojiRow.js.map +1 -0
  1114. package/lib/emoji/EmojiGrid/Search.d.ts +29 -0
  1115. package/lib/emoji/EmojiGrid/Search.d.ts.map +1 -0
  1116. package/lib/emoji/EmojiGrid/Search.js +234 -0
  1117. package/lib/emoji/EmojiGrid/Search.js.map +1 -0
  1118. package/lib/emoji/EmojiGrid/TabStrip.d.ts +16 -0
  1119. package/lib/emoji/EmojiGrid/TabStrip.d.ts.map +1 -0
  1120. package/lib/emoji/EmojiGrid/TabStrip.js +237 -0
  1121. package/lib/emoji/EmojiGrid/TabStrip.js.map +1 -0
  1122. package/lib/emoji/EmojiGrid/TonePopup.d.ts +12 -0
  1123. package/lib/emoji/EmojiGrid/TonePopup.d.ts.map +1 -0
  1124. package/lib/emoji/EmojiGrid/TonePopup.js +137 -0
  1125. package/lib/emoji/EmojiGrid/TonePopup.js.map +1 -0
  1126. package/lib/emoji/EmojiGrid/constants.d.ts +29 -0
  1127. package/lib/emoji/EmojiGrid/constants.d.ts.map +1 -0
  1128. package/lib/emoji/EmojiGrid/constants.js +65 -0
  1129. package/lib/emoji/EmojiGrid/constants.js.map +1 -0
  1130. package/lib/emoji/EmojiGrid/index.d.ts +10 -0
  1131. package/lib/emoji/EmojiGrid/index.d.ts.map +1 -0
  1132. package/lib/emoji/EmojiGrid/index.js +450 -0
  1133. package/lib/emoji/EmojiGrid/index.js.map +1 -0
  1134. package/lib/emoji/EmojiGrid/items.d.ts +25 -0
  1135. package/lib/emoji/EmojiGrid/items.d.ts.map +1 -0
  1136. package/lib/emoji/EmojiGrid/items.js +75 -0
  1137. package/lib/emoji/EmojiGrid/items.js.map +1 -0
  1138. package/lib/emoji/EmojiGrid/styles.d.ts +181 -0
  1139. package/lib/emoji/EmojiGrid/styles.d.ts.map +1 -0
  1140. package/lib/emoji/EmojiGrid/styles.js +184 -0
  1141. package/lib/emoji/EmojiGrid/styles.js.map +1 -0
  1142. package/lib/emoji/EmojiGrid/types.d.ts +53 -0
  1143. package/lib/emoji/EmojiGrid/types.d.ts.map +1 -0
  1144. package/lib/emoji/EmojiGrid/types.js +2 -0
  1145. package/lib/emoji/EmojiGrid/types.js.map +1 -0
  1146. package/lib/emoji/EmojiGrid/useTabScroll.d.ts +19 -0
  1147. package/lib/emoji/EmojiGrid/useTabScroll.d.ts.map +1 -0
  1148. package/lib/emoji/EmojiGrid/useTabScroll.js +124 -0
  1149. package/lib/emoji/EmojiGrid/useTabScroll.js.map +1 -0
  1150. package/lib/emoji/EmojiKeyboard.d.ts +79 -0
  1151. package/lib/emoji/EmojiKeyboard.d.ts.map +1 -0
  1152. package/lib/emoji/EmojiKeyboard.js +445 -0
  1153. package/lib/emoji/EmojiKeyboard.js.map +1 -0
  1154. package/lib/emoji/defaultExpandedPicker.d.ts +5 -0
  1155. package/lib/emoji/defaultExpandedPicker.d.ts.map +1 -0
  1156. package/lib/emoji/defaultExpandedPicker.js +11 -0
  1157. package/lib/emoji/defaultExpandedPicker.js.map +1 -0
  1158. package/lib/emoji/emojiData.d.ts +2 -0
  1159. package/lib/emoji/emojiData.d.ts.map +1 -0
  1160. package/lib/emoji/emojiData.js +5 -0
  1161. package/lib/emoji/emojiData.js.map +1 -0
  1162. package/lib/emoji/emojiStore.d.ts +70 -0
  1163. package/lib/emoji/emojiStore.d.ts.map +1 -0
  1164. package/lib/emoji/emojiStore.js +246 -0
  1165. package/lib/emoji/emojiStore.js.map +1 -0
  1166. package/lib/emoji/textEditing.d.ts +20 -0
  1167. package/lib/emoji/textEditing.d.ts.map +1 -0
  1168. package/lib/emoji/textEditing.js +97 -0
  1169. package/lib/emoji/textEditing.js.map +1 -0
  1170. package/lib/emojiOnly.d.ts +11 -0
  1171. package/lib/emojiOnly.d.ts.map +1 -0
  1172. package/lib/emojiOnly.js +79 -0
  1173. package/lib/emojiOnly.js.map +1 -0
  1174. package/lib/gestures/useRowSwipe.d.ts +43 -0
  1175. package/lib/gestures/useRowSwipe.d.ts.map +1 -0
  1176. package/lib/gestures/useRowSwipe.js +74 -0
  1177. package/lib/gestures/useRowSwipe.js.map +1 -0
  1178. package/lib/hooks/useAnimatedPresence.d.ts +22 -0
  1179. package/lib/hooks/useAnimatedPresence.d.ts.map +1 -0
  1180. package/lib/hooks/useAnimatedPresence.js +97 -0
  1181. package/lib/hooks/useAnimatedPresence.js.map +1 -0
  1182. package/lib/hooks/useChatMessages.d.ts +39 -0
  1183. package/lib/hooks/useChatMessages.d.ts.map +1 -0
  1184. package/lib/hooks/useChatMessages.js +125 -0
  1185. package/lib/hooks/useChatMessages.js.map +1 -0
  1186. package/lib/hooks/useColorScheme.d.ts +7 -1
  1187. package/lib/hooks/useColorScheme.d.ts.map +1 -1
  1188. package/lib/hooks/useColorScheme.js +46 -8
  1189. package/lib/hooks/useColorScheme.js.map +1 -1
  1190. package/lib/hooks/useHasKeyboardProvider.js +18 -7
  1191. package/lib/hooks/useHasKeyboardProvider.js.map +1 -1
  1192. package/lib/hooks/useIcons.js +15 -2
  1193. package/lib/hooks/useIcons.js.map +1 -1
  1194. package/lib/hooks/useIsKeyboardVisible.js +39 -17
  1195. package/lib/hooks/useIsKeyboardVisible.js.map +1 -1
  1196. package/lib/hooks/useIsRTL.js +15 -2
  1197. package/lib/hooks/useIsRTL.js.map +1 -1
  1198. package/lib/hooks/useKeyboardVerticalOffset.d.ts +5 -3
  1199. package/lib/hooks/useKeyboardVerticalOffset.d.ts.map +1 -1
  1200. package/lib/hooks/useKeyboardVerticalOffset.js +52 -18
  1201. package/lib/hooks/useKeyboardVerticalOffset.js.map +1 -1
  1202. package/lib/hooks/useLabels.js +15 -2
  1203. package/lib/hooks/useLabels.js.map +1 -1
  1204. package/lib/hooks/useStreamingMessages.js +200 -86
  1205. package/lib/hooks/useStreamingMessages.js.map +1 -1
  1206. package/lib/hooks/useTheme.js +56 -7
  1207. package/lib/hooks/useTheme.js.map +1 -1
  1208. package/lib/hooks/useUpdateLayoutEffect.d.ts.map +1 -1
  1209. package/lib/hooks/useUpdateLayoutEffect.js +35 -11
  1210. package/lib/hooks/useUpdateLayoutEffect.js.map +1 -1
  1211. package/lib/i18n.d.ts +182 -0
  1212. package/lib/i18n.d.ts.map +1 -1
  1213. package/lib/i18n.js +121 -23
  1214. package/lib/i18n.js.map +1 -1
  1215. package/lib/index.d.ts +31 -1
  1216. package/lib/index.d.ts.map +1 -1
  1217. package/lib/index.js +18 -1
  1218. package/lib/index.js.map +1 -1
  1219. package/lib/linkParser.js +318 -185
  1220. package/lib/linkParser.js.map +1 -1
  1221. package/lib/locales/ar.d.ts.map +1 -1
  1222. package/lib/locales/ar.js +110 -19
  1223. package/lib/locales/ar.js.map +1 -1
  1224. package/lib/locales/de.d.ts.map +1 -1
  1225. package/lib/locales/de.js +110 -19
  1226. package/lib/locales/de.js.map +1 -1
  1227. package/lib/locales/es.d.ts.map +1 -1
  1228. package/lib/locales/es.js +110 -19
  1229. package/lib/locales/es.js.map +1 -1
  1230. package/lib/locales/fr.d.ts.map +1 -1
  1231. package/lib/locales/fr.js +110 -19
  1232. package/lib/locales/fr.js.map +1 -1
  1233. package/lib/locales/hi.d.ts.map +1 -1
  1234. package/lib/locales/hi.js +110 -19
  1235. package/lib/locales/hi.js.map +1 -1
  1236. package/lib/locales/id.d.ts.map +1 -1
  1237. package/lib/locales/id.js +110 -19
  1238. package/lib/locales/id.js.map +1 -1
  1239. package/lib/locales/index.js +19 -5
  1240. package/lib/locales/index.js.map +1 -1
  1241. package/lib/locales/it.d.ts.map +1 -1
  1242. package/lib/locales/it.js +110 -19
  1243. package/lib/locales/it.js.map +1 -1
  1244. package/lib/locales/ja.d.ts.map +1 -1
  1245. package/lib/locales/ja.js +110 -19
  1246. package/lib/locales/ja.js.map +1 -1
  1247. package/lib/locales/ko.d.ts.map +1 -1
  1248. package/lib/locales/ko.js +110 -19
  1249. package/lib/locales/ko.js.map +1 -1
  1250. package/lib/locales/nl.d.ts.map +1 -1
  1251. package/lib/locales/nl.js +110 -19
  1252. package/lib/locales/nl.js.map +1 -1
  1253. package/lib/locales/pl.d.ts.map +1 -1
  1254. package/lib/locales/pl.js +110 -19
  1255. package/lib/locales/pl.js.map +1 -1
  1256. package/lib/locales/pt.d.ts.map +1 -1
  1257. package/lib/locales/pt.js +110 -19
  1258. package/lib/locales/pt.js.map +1 -1
  1259. package/lib/locales/ru.d.ts.map +1 -1
  1260. package/lib/locales/ru.js +110 -19
  1261. package/lib/locales/ru.js.map +1 -1
  1262. package/lib/locales/tr.d.ts.map +1 -1
  1263. package/lib/locales/tr.js +110 -19
  1264. package/lib/locales/tr.js.map +1 -1
  1265. package/lib/locales/zh.d.ts.map +1 -1
  1266. package/lib/locales/zh.js +110 -19
  1267. package/lib/locales/zh.js.map +1 -1
  1268. package/lib/logging.d.ts +5 -0
  1269. package/lib/logging.d.ts.map +1 -1
  1270. package/lib/logging.js +13 -1
  1271. package/lib/logging.js.map +1 -1
  1272. package/lib/messageUtils.d.ts +19 -0
  1273. package/lib/messageUtils.d.ts.map +1 -0
  1274. package/lib/messageUtils.js +61 -0
  1275. package/lib/messageUtils.js.map +1 -0
  1276. package/lib/motion.d.ts +21 -0
  1277. package/lib/motion.d.ts.map +1 -0
  1278. package/lib/motion.js +30 -0
  1279. package/lib/motion.js.map +1 -0
  1280. package/lib/optional/index.d.ts +99 -0
  1281. package/lib/optional/index.d.ts.map +1 -0
  1282. package/lib/optional/index.js +284 -0
  1283. package/lib/optional/index.js.map +1 -0
  1284. package/lib/rtl.js +7 -5
  1285. package/lib/rtl.js.map +1 -1
  1286. package/lib/store.d.ts +40 -0
  1287. package/lib/store.d.ts.map +1 -0
  1288. package/lib/store.js +127 -0
  1289. package/lib/store.js.map +1 -0
  1290. package/lib/styles.d.ts +2 -2
  1291. package/lib/styles.d.ts.map +1 -1
  1292. package/lib/styles.js +15 -15
  1293. package/lib/styles.js.map +1 -1
  1294. package/lib/types.js +1 -0
  1295. package/lib/types.js.map +1 -1
  1296. package/lib/utils.d.ts +15 -0
  1297. package/lib/utils.d.ts.map +1 -1
  1298. package/lib/utils.js +199 -94
  1299. package/lib/utils.js.map +1 -1
  1300. package/llms.txt +133 -31
  1301. package/package.json +89 -46
  1302. package/lib/InputToolbar.d.ts +0 -49
  1303. package/lib/InputToolbar.d.ts.map +0 -1
  1304. package/lib/InputToolbar.js +0 -338
  1305. package/lib/InputToolbar.js.map +0 -1
  1306. package/lib/MessageVideo.d.ts.map +0 -1
  1307. package/lib/MessageVideo.js +0 -162
  1308. package/lib/MessageVideo.js.map +0 -1
  1309. package/lib/MessagesContainer/FlashList.d.ts +0 -9
  1310. package/lib/MessagesContainer/FlashList.d.ts.map +0 -1
  1311. package/lib/MessagesContainer/FlashList.js +0 -23
  1312. package/lib/MessagesContainer/FlashList.js.map +0 -1
  1313. package/lib/components/ContextMenu.d.ts +0 -25
  1314. package/lib/components/ContextMenu.d.ts.map +0 -1
  1315. package/lib/components/ContextMenu.js +0 -122
  1316. package/lib/components/ContextMenu.js.map +0 -1
  1317. package/lib/components/VideoNoteRecorder.d.ts.map +0 -1
  1318. package/lib/components/VideoNoteRecorder.js +0 -634
  1319. package/lib/components/VideoNoteRecorder.js.map +0 -1
  1320. package/lib/components/VoiceMessageInput.d.ts +0 -33
  1321. package/lib/components/VoiceMessageInput.d.ts.map +0 -1
  1322. package/lib/components/VoiceMessageInput.js +0 -403
  1323. package/lib/components/VoiceMessageInput.js.map +0 -1
  1324. package/lib/components/WaveformPlayer.d.ts +0 -19
  1325. package/lib/components/WaveformPlayer.d.ts.map +0 -1
  1326. package/lib/components/WaveformPlayer.js +0 -367
  1327. package/lib/components/WaveformPlayer.js.map +0 -1
@@ -0,0 +1,161 @@
1
+ import { StyleSheet } from 'react-native';
2
+ import { LOCK_OFFSET, LOCK_WIDTH, ONCE_GAP, ONCE_SIZE } from './constants';
3
+ export const createStyles = theme => StyleSheet.create({
4
+ container: {
5
+ // Matches Send's wrapper so the mic and the send button share a baseline -
6
+ // otherwise the control jumps 4pt the moment the first character is typed.
7
+ minHeight: theme.composer.minHeight,
8
+ justifyContent: 'center',
9
+ alignItems: 'center'
10
+ },
11
+ button: {
12
+ width: theme.sendButton.size,
13
+ height: theme.sendButton.size,
14
+ borderRadius: theme.radii.sendButton,
15
+ backgroundColor: theme.colors.accent,
16
+ alignItems: 'center',
17
+ justifyContent: 'center',
18
+ zIndex: 2
19
+ },
20
+ modeIcon: {
21
+ position: 'absolute',
22
+ alignItems: 'center',
23
+ justifyContent: 'center'
24
+ },
25
+ lockPill: {
26
+ position: 'absolute',
27
+ left: '50%',
28
+ top: '50%',
29
+ marginLeft: -LOCK_WIDTH / 2,
30
+ marginTop: -LOCK_OFFSET,
31
+ width: LOCK_WIDTH,
32
+ borderRadius: LOCK_WIDTH / 2,
33
+ backgroundColor: theme.colors.inputBackground,
34
+ borderWidth: StyleSheet.hairlineWidth,
35
+ borderColor: theme.colors.inputFieldBorder,
36
+ alignItems: 'center',
37
+ overflow: 'hidden',
38
+ zIndex: 4
39
+ },
40
+ // The top 36pt of the pill: the padlock, later the pause bars.
41
+ lockSlot: {
42
+ width: LOCK_WIDTH,
43
+ height: LOCK_WIDTH,
44
+ alignItems: 'center',
45
+ justifyContent: 'center'
46
+ },
47
+ lockSlotOverlay: {
48
+ position: 'absolute',
49
+ top: 0,
50
+ left: 0,
51
+ right: 0,
52
+ bottom: 0,
53
+ alignItems: 'center',
54
+ justifyContent: 'center'
55
+ },
56
+ resumeButton: {
57
+ position: 'absolute',
58
+ bottom: theme.sendButton.size + 12,
59
+ width: 34,
60
+ height: 34,
61
+ borderRadius: 17,
62
+ backgroundColor: theme.colors.inputBackground,
63
+ borderWidth: StyleSheet.hairlineWidth,
64
+ borderColor: theme.colors.inputFieldBorder,
65
+ alignItems: 'center',
66
+ justifyContent: 'center',
67
+ zIndex: 3
68
+ },
69
+ lockColor: {
70
+ color: theme.colors.placeholder
71
+ },
72
+ onceButton: {
73
+ position: 'absolute',
74
+ width: ONCE_SIZE,
75
+ height: ONCE_SIZE,
76
+ borderRadius: ONCE_SIZE / 2,
77
+ backgroundColor: theme.colors.inputBackground,
78
+ borderWidth: StyleSheet.hairlineWidth,
79
+ borderColor: theme.colors.inputFieldBorder,
80
+ alignItems: 'center',
81
+ justifyContent: 'center',
82
+ zIndex: 4
83
+ },
84
+ // Above the lock pill, which is 36 tall once locked.
85
+ onceLocked: {
86
+ top: '50%',
87
+ marginTop: -LOCK_OFFSET - ONCE_GAP - ONCE_SIZE
88
+ },
89
+ // Previewing, above the resume button.
90
+ oncePreview: {
91
+ bottom: theme.sendButton.size + 12 + 34 + ONCE_GAP
92
+ },
93
+ onceBadge: {
94
+ width: 20,
95
+ height: 20,
96
+ borderRadius: 10,
97
+ borderWidth: 1.5,
98
+ borderColor: theme.colors.placeholder,
99
+ alignItems: 'center',
100
+ justifyContent: 'center'
101
+ },
102
+ onceBadgeOn: {
103
+ borderColor: theme.colors.accent,
104
+ backgroundColor: theme.colors.accent
105
+ },
106
+ onceText: {
107
+ color: theme.colors.placeholder,
108
+ fontSize: 11,
109
+ fontWeight: '700',
110
+ lineHeight: 13
111
+ },
112
+ onceTextOn: {
113
+ color: '#fff'
114
+ },
115
+ tooltip: {
116
+ position: 'absolute',
117
+ right: 0,
118
+ maxWidth: 240,
119
+ paddingHorizontal: 10,
120
+ paddingVertical: 6,
121
+ borderRadius: 8,
122
+ backgroundColor: 'rgba(0, 0, 0, 0.75)',
123
+ zIndex: 5
124
+ },
125
+ // Beside the lock, pointing at it.
126
+ lockTooltip: {
127
+ top: '50%',
128
+ marginTop: -LOCK_OFFSET + 6,
129
+ right: 44,
130
+ width: 160
131
+ },
132
+ pauseTooltip: {
133
+ top: '50%',
134
+ marginTop: -LOCK_OFFSET,
135
+ right: 44,
136
+ width: 160
137
+ },
138
+ onceTooltip: {
139
+ top: '50%',
140
+ marginTop: -LOCK_OFFSET - ONCE_GAP - ONCE_SIZE,
141
+ right: 44,
142
+ width: 180
143
+ },
144
+ onceTooltipPreview: {
145
+ bottom: theme.sendButton.size + 12 + 34 + ONCE_GAP,
146
+ right: 44,
147
+ width: 180
148
+ },
149
+ tooltipBold: {
150
+ fontWeight: '700'
151
+ },
152
+ hintTooltip: {
153
+ bottom: theme.sendButton.size + 10,
154
+ width: 240
155
+ },
156
+ tooltipText: {
157
+ color: '#fff',
158
+ fontSize: 13
159
+ }
160
+ });
161
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","names":["StyleSheet","LOCK_OFFSET","LOCK_WIDTH","ONCE_GAP","ONCE_SIZE","createStyles","theme","create","container","minHeight","composer","justifyContent","alignItems","button","width","sendButton","size","height","borderRadius","radii","backgroundColor","colors","accent","zIndex","modeIcon","position","lockPill","left","top","marginLeft","marginTop","inputBackground","borderWidth","hairlineWidth","borderColor","inputFieldBorder","overflow","lockSlot","lockSlotOverlay","right","bottom","resumeButton","lockColor","color","placeholder","onceButton","onceLocked","oncePreview","onceBadge","onceBadgeOn","onceText","fontSize","fontWeight","lineHeight","onceTextOn","tooltip","maxWidth","paddingHorizontal","paddingVertical","lockTooltip","pauseTooltip","onceTooltip","onceTooltipPreview","tooltipBold","hintTooltip","tooltipText"],"sources":["../../../src/components/RecordButton/styles.ts"],"sourcesContent":["import { StyleSheet } from 'react-native'\n\nimport { ChatTheme } from '../../Theme'\nimport { LOCK_OFFSET, LOCK_WIDTH, ONCE_GAP, ONCE_SIZE } from './constants'\n\nexport const createStyles = (theme: ChatTheme) => StyleSheet.create({\n container: {\n // Matches Send's wrapper so the mic and the send button share a baseline -\n // otherwise the control jumps 4pt the moment the first character is typed.\n minHeight: theme.composer.minHeight,\n justifyContent: 'center',\n alignItems: 'center',\n },\n button: {\n width: theme.sendButton.size,\n height: theme.sendButton.size,\n borderRadius: theme.radii.sendButton,\n backgroundColor: theme.colors.accent,\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 2,\n },\n modeIcon: {\n position: 'absolute',\n alignItems: 'center',\n justifyContent: 'center',\n },\n lockPill: {\n position: 'absolute',\n left: '50%',\n top: '50%',\n marginLeft: -LOCK_WIDTH / 2,\n marginTop: -LOCK_OFFSET,\n width: LOCK_WIDTH,\n borderRadius: LOCK_WIDTH / 2,\n backgroundColor: theme.colors.inputBackground,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: theme.colors.inputFieldBorder,\n alignItems: 'center',\n overflow: 'hidden',\n zIndex: 4,\n },\n // The top 36pt of the pill: the padlock, later the pause bars.\n lockSlot: {\n width: LOCK_WIDTH,\n height: LOCK_WIDTH,\n alignItems: 'center',\n justifyContent: 'center',\n },\n lockSlotOverlay: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n alignItems: 'center',\n justifyContent: 'center',\n },\n resumeButton: {\n position: 'absolute',\n bottom: theme.sendButton.size + 12,\n width: 34,\n height: 34,\n borderRadius: 17,\n backgroundColor: theme.colors.inputBackground,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: theme.colors.inputFieldBorder,\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 3,\n },\n lockColor: {\n color: theme.colors.placeholder,\n },\n onceButton: {\n position: 'absolute',\n width: ONCE_SIZE,\n height: ONCE_SIZE,\n borderRadius: ONCE_SIZE / 2,\n backgroundColor: theme.colors.inputBackground,\n borderWidth: StyleSheet.hairlineWidth,\n borderColor: theme.colors.inputFieldBorder,\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 4,\n },\n // Above the lock pill, which is 36 tall once locked.\n onceLocked: {\n top: '50%',\n marginTop: -LOCK_OFFSET - ONCE_GAP - ONCE_SIZE,\n },\n // Previewing, above the resume button.\n oncePreview: {\n bottom: theme.sendButton.size + 12 + 34 + ONCE_GAP,\n },\n onceBadge: {\n width: 20,\n height: 20,\n borderRadius: 10,\n borderWidth: 1.5,\n borderColor: theme.colors.placeholder,\n alignItems: 'center',\n justifyContent: 'center',\n },\n onceBadgeOn: {\n borderColor: theme.colors.accent,\n backgroundColor: theme.colors.accent,\n },\n onceText: {\n color: theme.colors.placeholder,\n fontSize: 11,\n fontWeight: '700',\n lineHeight: 13,\n },\n onceTextOn: {\n color: '#fff',\n },\n tooltip: {\n position: 'absolute',\n right: 0,\n maxWidth: 240,\n paddingHorizontal: 10,\n paddingVertical: 6,\n borderRadius: 8,\n backgroundColor: 'rgba(0, 0, 0, 0.75)',\n zIndex: 5,\n },\n // Beside the lock, pointing at it.\n lockTooltip: {\n top: '50%',\n marginTop: -LOCK_OFFSET + 6,\n right: 44,\n width: 160,\n },\n pauseTooltip: {\n top: '50%',\n marginTop: -LOCK_OFFSET,\n right: 44,\n width: 160,\n },\n onceTooltip: {\n top: '50%',\n marginTop: -LOCK_OFFSET - ONCE_GAP - ONCE_SIZE,\n right: 44,\n width: 180,\n },\n onceTooltipPreview: {\n bottom: theme.sendButton.size + 12 + 34 + ONCE_GAP,\n right: 44,\n width: 180,\n },\n tooltipBold: {\n fontWeight: '700',\n },\n hintTooltip: {\n bottom: theme.sendButton.size + 10,\n width: 240,\n },\n tooltipText: {\n color: '#fff',\n fontSize: 13,\n },\n})\n\nexport type RecordButtonStyles = ReturnType<typeof createStyles>\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ import { SharedValue } from 'react-native-reanimated';
2
+ import { Store } from '../../store';
3
+ /** Where a take is: what the button shows and which gestures it accepts. */
4
+ export type RecordButtonPhase = 'idle' | 'recording' | 'locked' | 'preview';
5
+ /** How a take left the button: drives the circle's exit and the bar's. */
6
+ export type RecordExitReason = 'send' | 'cancel' | 'preview';
7
+ /**
8
+ * How the take in progress ended, as far as the button saw it; anything else
9
+ * (the bar's CANCEL, a time limit) leaves it null.
10
+ */
11
+ export type TakeExitReason = 'send' | 'cancel' | 'gesture' | 'preview' | null;
12
+ export interface RecordButtonProps {
13
+ mode: 'voice' | 'video';
14
+ phase: RecordButtonPhase;
15
+ /** Microphone loudness, 0..1, for the circle and its blobs; read without a render. */
16
+ levelStore?: Store<number>;
17
+ /**
18
+ * Video only: the camera has actually started recording. The blobs wait for
19
+ * it.
20
+ */
21
+ isCapturing?: boolean;
22
+ /**
23
+ * A quick tap. Set when the button switches between voice and video: the
24
+ * press then has to be held for 150ms before it records.
25
+ */
26
+ onTap?: () => void;
27
+ /** The hold became a take. */
28
+ onStart: () => void;
29
+ /** Finger lifted, or slid all the way to cancel; `cancelled` says which. */
30
+ onFinish: (cancelled: boolean) => void;
31
+ /** Slid up past the lock distance. */
32
+ onLock: () => void;
33
+ /** Locked: the pause button above the send button. Hidden when omitted. */
34
+ onPause?: () => void;
35
+ /** Previewing: the button in the pause button's place that records on. Hidden when omitted. */
36
+ onResume?: () => void;
37
+ /** Tooltip by the pause button for the first few locked takes. */
38
+ pauseHint?: string | null;
39
+ /** Locked or previewing: the send button. */
40
+ onSend: () => void;
41
+ /** Live slide-to-cancel progress, 1 at rest down to 0 at the cancel point. */
42
+ onSlideProgress?: (progress: number) => void;
43
+ /** The same progress on the UI thread, for the bar's "slide to cancel". */
44
+ slideProgressValue?: SharedValue<number>;
45
+ /** The button ended a take this way, just before `onFinish` / `onSend` / `onPause`. */
46
+ onExit?: (reason: RecordExitReason) => void;
47
+ /** A tooltip to show above the button, e.g. after a mode switch. */
48
+ hint?: string | null;
49
+ /**
50
+ * Without `onTap` a take starts on touch-down, so a tap is a take released
51
+ * within 100ms. Called then, after `onFinish`, to show the hold hint.
52
+ */
53
+ onQuickRelease?: () => void;
54
+ /**
55
+ * Locked or previewing: the view-once toggle above the pause button. Hidden when omitted.
56
+ */
57
+ onToggleViewOnce?: () => void;
58
+ /** The take goes out as view-once; the toggle is drawn on. */
59
+ isViewOnce?: boolean;
60
+ }
61
+ /** The callers' callbacks the gesture and the controls read through a ref. */
62
+ export type RecordCallbacks = Pick<RecordButtonProps, 'onStart' | 'onFinish' | 'onLock' | 'onSlideProgress' | 'onQuickRelease' | 'onExit'>;
63
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/RecordButton/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEnC,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAA;AAE3E,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAA;AAE5D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAAA;AAE7E,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAA;IACvB,KAAK,EAAE,iBAAiB,CAAA;IACxB,sFAAsF;IACtF,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,4EAA4E;IAC5E,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,sCAAsC;IACtC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACxC,uFAAuF;IACvF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC3C,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IAC3B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,8DAA8D;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,QAAQ,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/RecordButton/types.ts"],"sourcesContent":["import { SharedValue } from 'react-native-reanimated'\n\nimport { Store } from '../../store'\n\n/** Where a take is: what the button shows and which gestures it accepts. */\nexport type RecordButtonPhase = 'idle' | 'recording' | 'locked' | 'preview'\n\n/** How a take left the button: drives the circle's exit and the bar's. */\nexport type RecordExitReason = 'send' | 'cancel' | 'preview'\n\n/**\n * How the take in progress ended, as far as the button saw it; anything else\n * (the bar's CANCEL, a time limit) leaves it null.\n */\nexport type TakeExitReason = 'send' | 'cancel' | 'gesture' | 'preview' | null\n\nexport interface RecordButtonProps {\n mode: 'voice' | 'video'\n phase: RecordButtonPhase\n /** Microphone loudness, 0..1, for the circle and its blobs; read without a render. */\n levelStore?: Store<number>\n /**\n * Video only: the camera has actually started recording. The blobs wait for\n * it.\n */\n isCapturing?: boolean\n /**\n * A quick tap. Set when the button switches between voice and video: the\n * press then has to be held for 150ms before it records.\n */\n onTap?: () => void\n /** The hold became a take. */\n onStart: () => void\n /** Finger lifted, or slid all the way to cancel; `cancelled` says which. */\n onFinish: (cancelled: boolean) => void\n /** Slid up past the lock distance. */\n onLock: () => void\n /** Locked: the pause button above the send button. Hidden when omitted. */\n onPause?: () => void\n /** Previewing: the button in the pause button's place that records on. Hidden when omitted. */\n onResume?: () => void\n /** Tooltip by the pause button for the first few locked takes. */\n pauseHint?: string | null\n /** Locked or previewing: the send button. */\n onSend: () => void\n /** Live slide-to-cancel progress, 1 at rest down to 0 at the cancel point. */\n onSlideProgress?: (progress: number) => void\n /** The same progress on the UI thread, for the bar's \"slide to cancel\". */\n slideProgressValue?: SharedValue<number>\n /** The button ended a take this way, just before `onFinish` / `onSend` / `onPause`. */\n onExit?: (reason: RecordExitReason) => void\n /** A tooltip to show above the button, e.g. after a mode switch. */\n hint?: string | null\n /**\n * Without `onTap` a take starts on touch-down, so a tap is a take released\n * within 100ms. Called then, after `onFinish`, to show the hold hint.\n */\n onQuickRelease?: () => void\n /**\n * Locked or previewing: the view-once toggle above the pause button. Hidden when omitted.\n */\n onToggleViewOnce?: () => void\n /** The take goes out as view-once; the toggle is drawn on. */\n isViewOnce?: boolean\n}\n\n/** The callers' callbacks the gesture and the controls read through a ref. */\nexport type RecordCallbacks = Pick<RecordButtonProps, 'onStart' | 'onFinish' | 'onLock' | 'onSlideProgress' | 'onQuickRelease' | 'onExit'>\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { SharedValue } from 'react-native-reanimated';
3
+ import { RecordCallbacks, TakeExitReason } from './types';
4
+ interface RecordGestureOptions {
5
+ onTap?: () => void;
6
+ isVoice: boolean;
7
+ cancelSign: number;
8
+ slideDistance: number;
9
+ lockDistance: number;
10
+ slideProgress: SharedValue<number>;
11
+ slideProgressValue?: SharedValue<number>;
12
+ fingerUp: SharedValue<number>;
13
+ lockedSV: SharedValue<number>;
14
+ isTakeSV: SharedValue<number>;
15
+ lockHide: SharedValue<number>;
16
+ lockHideTarget: SharedValue<number>;
17
+ lastReported: SharedValue<number>;
18
+ callbacksRef: React.RefObject<RecordCallbacks>;
19
+ exitReasonRef: React.RefObject<TakeExitReason>;
20
+ setIsLockHintVisible: (isVisible: boolean) => void;
21
+ }
22
+ /**
23
+ * The hold: a pan that becomes a take, slides to cancel and up to lock, raced
24
+ * against a tap that switches modes when the button has two.
25
+ */
26
+ export declare function useRecordGesture({ onTap, isVoice, cancelSign, slideDistance, lockDistance, slideProgress, slideProgressValue, fingerUp, lockedSV, isTakeSV, lockHide, lockHideTarget, lastReported, callbacksRef, exitReasonRef, setIsLockHintVisible, }: RecordGestureOptions): import("react-native-gesture-handler").ComposedGesture | import("react-native-gesture-handler").PanGesture;
27
+ export {};
28
+ //# sourceMappingURL=useRecordGesture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRecordGesture.d.ts","sourceRoot":"","sources":["../../../src/components/RecordButton/useRecordGesture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAA;AAEtD,OAAO,EAAE,WAAW,EAAuB,MAAM,yBAAyB,CAAA;AAW1E,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAEzD,UAAU,oBAAoB;IAC5B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAClC,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACxC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7B,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7B,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7B,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACnC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;IAC9C,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;IAC9C,oBAAoB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CACnD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAE,EAChC,KAAK,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,oBAAoB,GACrB,EAAE,oBAAoB,8GA4HtB"}
@@ -0,0 +1,263 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { useLayoutEffect, useRef } from 'react';
3
+ import { useCompetingGestures, usePanGesture, useTapGesture } from 'react-native-gesture-handler';
4
+ import { runOnJS, withTiming } from 'react-native-reanimated';
5
+ import { recordingHaptic, retireLockHint } from '../recordingFeedback';
6
+ import { expectSendFlight } from '../sendFlight';
7
+ import { HOLD_DELAY_MS, LOCK_BLOCK_PROGRESS, LOCK_HINT_HIDE_PROGRESS, QUICK_RELEASE_MS, RELEASE_CANCEL_PROGRESS } from './constants';
8
+ /**
9
+ * The hold: a pan that becomes a take, slides to cancel and up to lock, raced
10
+ * against a tap that switches modes when the button has two.
11
+ */
12
+ export function useRecordGesture(t0) {
13
+ const $ = _c(48);
14
+ const {
15
+ onTap,
16
+ isVoice,
17
+ cancelSign,
18
+ slideDistance,
19
+ lockDistance,
20
+ slideProgress,
21
+ slideProgressValue,
22
+ fingerUp,
23
+ lockedSV,
24
+ isTakeSV,
25
+ lockHide,
26
+ lockHideTarget,
27
+ lastReported,
28
+ callbacksRef,
29
+ exitReasonRef,
30
+ setIsLockHintVisible
31
+ } = t0;
32
+ const startedAtRef = useRef(0);
33
+ let t1;
34
+ if ($[0] !== callbacksRef || $[1] !== isVoice) {
35
+ t1 = () => {
36
+ startedAtRef.current = Date.now();
37
+ if (isVoice) {
38
+ recordingHaptic();
39
+ }
40
+ callbacksRef.current.onStart();
41
+ };
42
+ $[0] = callbacksRef;
43
+ $[1] = isVoice;
44
+ $[2] = t1;
45
+ } else {
46
+ t1 = $[2];
47
+ }
48
+ const jsStart = t1;
49
+ let t2;
50
+ if ($[3] !== callbacksRef || $[4] !== exitReasonRef || $[5] !== isVoice) {
51
+ t2 = (cancelled, isGesture) => {
52
+ exitReasonRef.current = isGesture ? "gesture" : cancelled ? "cancel" : "send";
53
+ if (isVoice && !cancelled) {
54
+ expectSendFlight("voice");
55
+ }
56
+ callbacksRef.current.onExit?.(cancelled ? "cancel" : "send");
57
+ if (isVoice) {
58
+ recordingHaptic();
59
+ }
60
+ callbacksRef.current.onFinish(cancelled);
61
+ if (!cancelled && Date.now() - startedAtRef.current < QUICK_RELEASE_MS) {
62
+ callbacksRef.current.onQuickRelease?.();
63
+ }
64
+ };
65
+ $[3] = callbacksRef;
66
+ $[4] = exitReasonRef;
67
+ $[5] = isVoice;
68
+ $[6] = t2;
69
+ } else {
70
+ t2 = $[6];
71
+ }
72
+ const jsFinish = t2;
73
+ let t3;
74
+ if ($[7] !== callbacksRef || $[8] !== setIsLockHintVisible) {
75
+ t3 = () => {
76
+ recordingHaptic();
77
+ retireLockHint();
78
+ setIsLockHintVisible(false);
79
+ callbacksRef.current.onLock();
80
+ };
81
+ $[7] = callbacksRef;
82
+ $[8] = setIsLockHintVisible;
83
+ $[9] = t3;
84
+ } else {
85
+ t3 = $[9];
86
+ }
87
+ const jsLock = t3;
88
+ let t4;
89
+ if ($[10] !== callbacksRef || $[11] !== setIsLockHintVisible) {
90
+ t4 = progress => {
91
+ callbacksRef.current.onSlideProgress?.(progress);
92
+ if (progress < LOCK_HINT_HIDE_PROGRESS) {
93
+ setIsLockHintVisible(false);
94
+ }
95
+ };
96
+ $[10] = callbacksRef;
97
+ $[11] = setIsLockHintVisible;
98
+ $[12] = t4;
99
+ } else {
100
+ t4 = $[12];
101
+ }
102
+ const jsSlideProgress = t4;
103
+ const t5 = onTap ? HOLD_DELAY_MS : 0;
104
+ let t6;
105
+ if ($[13] !== isTakeSV || $[14] !== jsStart) {
106
+ t6 = () => {
107
+ isTakeSV.set(1);
108
+ runOnJS(jsStart)();
109
+ };
110
+ $[13] = isTakeSV;
111
+ $[14] = jsStart;
112
+ $[15] = t6;
113
+ } else {
114
+ t6 = $[15];
115
+ }
116
+ let t7;
117
+ if ($[16] !== cancelSign || $[17] !== fingerUp || $[18] !== isTakeSV || $[19] !== jsFinish || $[20] !== jsLock || $[21] !== jsSlideProgress || $[22] !== lastReported || $[23] !== lockDistance || $[24] !== lockHide || $[25] !== lockHideTarget || $[26] !== lockedSV || $[27] !== slideDistance || $[28] !== slideProgress || $[29] !== slideProgressValue) {
118
+ t7 = event => {
119
+ if (isTakeSV.value === 0 || lockedSV.value > 0) {
120
+ return;
121
+ }
122
+ const dx = cancelSign === -1 ? Math.max(-slideDistance, Math.min(0, event.translationX)) : Math.min(slideDistance, Math.max(0, event.translationX));
123
+ const progress_0 = 1 - Math.abs(dx) / slideDistance;
124
+ const up = Math.max(0, Math.min(lockDistance, -event.translationY));
125
+ slideProgress.set(progress_0);
126
+ if (slideProgressValue) {
127
+ slideProgressValue.set(progress_0);
128
+ }
129
+ if (Math.abs(progress_0 - lastReported.value) > 0.01 || progress_0 === 0) {
130
+ lastReported.set(progress_0);
131
+ runOnJS(jsSlideProgress)(progress_0);
132
+ }
133
+ if (progress_0 <= 0) {
134
+ isTakeSV.set(0);
135
+ runOnJS(jsFinish)(true, true);
136
+ return;
137
+ }
138
+ const isBlocked = progress_0 < LOCK_BLOCK_PROGRESS ? 1 : 0;
139
+ if (isBlocked !== lockHideTarget.value) {
140
+ lockHideTarget.set(isBlocked);
141
+ lockHide.set(withTiming(isBlocked, {
142
+ duration: 140
143
+ }));
144
+ }
145
+ fingerUp.set(isBlocked ? 0 : up);
146
+ if (!isBlocked && up >= lockDistance) {
147
+ lockedSV.set(1);
148
+ isTakeSV.set(0);
149
+ runOnJS(jsLock)();
150
+ }
151
+ };
152
+ $[16] = cancelSign;
153
+ $[17] = fingerUp;
154
+ $[18] = isTakeSV;
155
+ $[19] = jsFinish;
156
+ $[20] = jsLock;
157
+ $[21] = jsSlideProgress;
158
+ $[22] = lastReported;
159
+ $[23] = lockDistance;
160
+ $[24] = lockHide;
161
+ $[25] = lockHideTarget;
162
+ $[26] = lockedSV;
163
+ $[27] = slideDistance;
164
+ $[28] = slideProgress;
165
+ $[29] = slideProgressValue;
166
+ $[30] = t7;
167
+ } else {
168
+ t7 = $[30];
169
+ }
170
+ let t8;
171
+ if ($[31] !== isTakeSV || $[32] !== jsFinish || $[33] !== jsLock || $[34] !== lockedSV || $[35] !== slideProgress) {
172
+ t8 = event_0 => {
173
+ if (isTakeSV.value === 0) {
174
+ return;
175
+ }
176
+ isTakeSV.set(0);
177
+ if (event_0.canceled) {
178
+ if (slideProgress.value < LOCK_BLOCK_PROGRESS) {
179
+ runOnJS(jsFinish)(true, false);
180
+ } else {
181
+ lockedSV.set(1);
182
+ runOnJS(jsLock)();
183
+ }
184
+ return;
185
+ }
186
+ runOnJS(jsFinish)(slideProgress.value < RELEASE_CANCEL_PROGRESS, false);
187
+ };
188
+ $[31] = isTakeSV;
189
+ $[32] = jsFinish;
190
+ $[33] = jsLock;
191
+ $[34] = lockedSV;
192
+ $[35] = slideProgress;
193
+ $[36] = t8;
194
+ } else {
195
+ t8 = $[36];
196
+ }
197
+ let t9;
198
+ if ($[37] !== t5 || $[38] !== t6 || $[39] !== t7 || $[40] !== t8) {
199
+ t9 = {
200
+ activateAfterLongPress: t5,
201
+ onActivate: t6,
202
+ onUpdate: t7,
203
+ onFinalize: t8
204
+ };
205
+ $[37] = t5;
206
+ $[38] = t6;
207
+ $[39] = t7;
208
+ $[40] = t8;
209
+ $[41] = t9;
210
+ } else {
211
+ t9 = $[41];
212
+ }
213
+ const panGesture = usePanGesture(t9);
214
+ const tapRef = useRef(onTap);
215
+ let t10;
216
+ if ($[42] !== onTap) {
217
+ t10 = () => {
218
+ tapRef.current = onTap;
219
+ };
220
+ $[42] = onTap;
221
+ $[43] = t10;
222
+ } else {
223
+ t10 = $[43];
224
+ }
225
+ useLayoutEffect(t10);
226
+ let t11;
227
+ if ($[44] === Symbol.for("react.memo_cache_sentinel")) {
228
+ t11 = () => {
229
+ recordingHaptic();
230
+ tapRef.current?.();
231
+ };
232
+ $[44] = t11;
233
+ } else {
234
+ t11 = $[44];
235
+ }
236
+ const jsTap = t11;
237
+ const hasTap = !!onTap;
238
+ let t12;
239
+ if ($[45] === Symbol.for("react.memo_cache_sentinel")) {
240
+ t12 = () => {
241
+ runOnJS(jsTap)();
242
+ };
243
+ $[45] = t12;
244
+ } else {
245
+ t12 = $[45];
246
+ }
247
+ let t13;
248
+ if ($[46] !== hasTap) {
249
+ t13 = {
250
+ enabled: hasTap,
251
+ maxDuration: HOLD_DELAY_MS,
252
+ onDeactivate: t12
253
+ };
254
+ $[46] = hasTap;
255
+ $[47] = t13;
256
+ } else {
257
+ t13 = $[47];
258
+ }
259
+ const tapGesture = useTapGesture(t13);
260
+ const raceGesture = useCompetingGestures(tapGesture, panGesture);
261
+ return hasTap ? raceGesture : panGesture;
262
+ }
263
+ //# sourceMappingURL=useRecordGesture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRecordGesture.js","names":["useLayoutEffect","useRef","useCompetingGestures","usePanGesture","useTapGesture","runOnJS","withTiming","recordingHaptic","retireLockHint","expectSendFlight","HOLD_DELAY_MS","LOCK_BLOCK_PROGRESS","LOCK_HINT_HIDE_PROGRESS","QUICK_RELEASE_MS","RELEASE_CANCEL_PROGRESS","useRecordGesture","t0","$","_c","onTap","isVoice","cancelSign","slideDistance","lockDistance","slideProgress","slideProgressValue","fingerUp","lockedSV","isTakeSV","lockHide","lockHideTarget","lastReported","callbacksRef","exitReasonRef","setIsLockHintVisible","startedAtRef","t1","current","Date","now","onStart","jsStart","t2","cancelled","isGesture","onExit","onFinish","onQuickRelease","jsFinish","t3","onLock","jsLock","t4","progress","onSlideProgress","jsSlideProgress","t5","t6","set","t7","event","value","dx","Math","max","min","translationX","progress_0","abs","up","translationY","isBlocked","duration","t8","event_0","canceled","t9","activateAfterLongPress","onActivate","onUpdate","onFinalize","panGesture","tapRef","t10","t11","Symbol","for","jsTap","hasTap","t12","t13","enabled","maxDuration","onDeactivate","tapGesture","raceGesture"],"sources":["../../../src/components/RecordButton/useRecordGesture.ts"],"sourcesContent":["import React, { useLayoutEffect, useRef } from 'react'\nimport { useCompetingGestures, usePanGesture, useTapGesture } from 'react-native-gesture-handler'\nimport { SharedValue, runOnJS, withTiming } from 'react-native-reanimated'\n\nimport { recordingHaptic, retireLockHint } from '../recordingFeedback'\nimport { expectSendFlight } from '../sendFlight'\nimport {\n HOLD_DELAY_MS,\n LOCK_BLOCK_PROGRESS,\n LOCK_HINT_HIDE_PROGRESS,\n QUICK_RELEASE_MS,\n RELEASE_CANCEL_PROGRESS,\n} from './constants'\nimport { RecordCallbacks, TakeExitReason } from './types'\n\ninterface RecordGestureOptions {\n onTap?: () => void\n isVoice: boolean\n cancelSign: number\n slideDistance: number\n lockDistance: number\n slideProgress: SharedValue<number>\n slideProgressValue?: SharedValue<number>\n fingerUp: SharedValue<number>\n lockedSV: SharedValue<number>\n isTakeSV: SharedValue<number>\n lockHide: SharedValue<number>\n lockHideTarget: SharedValue<number>\n lastReported: SharedValue<number>\n callbacksRef: React.RefObject<RecordCallbacks>\n exitReasonRef: React.RefObject<TakeExitReason>\n setIsLockHintVisible: (isVisible: boolean) => void\n}\n\n/**\n * The hold: a pan that becomes a take, slides to cancel and up to lock, raced\n * against a tap that switches modes when the button has two.\n */\nexport function useRecordGesture ({\n onTap,\n isVoice,\n cancelSign,\n slideDistance,\n lockDistance,\n slideProgress,\n slideProgressValue,\n fingerUp,\n lockedSV,\n isTakeSV,\n lockHide,\n lockHideTarget,\n lastReported,\n callbacksRef,\n exitReasonRef,\n setIsLockHintVisible,\n}: RecordGestureOptions) {\n const startedAtRef = useRef(0)\n\n // A tick when the voice recorder starts and stops; a round take ticks\n // when its camera actually starts recording, which the session handles.\n const jsStart = () => {\n startedAtRef.current = Date.now()\n if (isVoice)\n recordingHaptic()\n callbacksRef.current.onStart()\n }\n const jsFinish = (cancelled: boolean, isGesture: boolean) => {\n exitReasonRef.current = isGesture ? 'gesture' : cancelled ? 'cancel' : 'send'\n // Before `onFinish`, which is what adds the message the circle flies to.\n if (isVoice && !cancelled)\n expectSendFlight('voice')\n callbacksRef.current.onExit?.(cancelled ? 'cancel' : 'send')\n if (isVoice)\n recordingHaptic()\n callbacksRef.current.onFinish(cancelled)\n if (!cancelled && Date.now() - startedAtRef.current < QUICK_RELEASE_MS)\n callbacksRef.current.onQuickRelease?.()\n }\n const jsLock = () => {\n recordingHaptic()\n retireLockHint()\n setIsLockHintVisible(false)\n callbacksRef.current.onLock()\n }\n const jsSlideProgress = (progress: number) => {\n callbacksRef.current.onSlideProgress?.(progress)\n if (progress < LOCK_HINT_HIDE_PROGRESS)\n setIsLockHintVisible(false)\n }\n\n const panGesture = usePanGesture({\n activateAfterLongPress: onTap ? HOLD_DELAY_MS : 0,\n onActivate: () => {\n isTakeSV.set(1)\n runOnJS(jsStart)()\n },\n onUpdate: event => {\n if (isTakeSV.value === 0 || lockedSV.value > 0)\n return\n\n const dx = cancelSign === -1\n ? Math.max(-slideDistance, Math.min(0, event.translationX))\n : Math.min(slideDistance, Math.max(0, event.translationX))\n const progress = 1 - Math.abs(dx) / slideDistance\n const up = Math.max(0, Math.min(lockDistance, -event.translationY))\n\n // The circle tracks every frame; JS only hears about real changes.\n slideProgress.set(progress)\n if (slideProgressValue)\n slideProgressValue.set(progress)\n if (Math.abs(progress - lastReported.value) > 0.01 || progress === 0) {\n lastReported.set(progress)\n runOnJS(jsSlideProgress)(progress)\n }\n\n // All the way across: cancel now, before the finger lifts.\n if (progress <= 0) {\n isTakeSV.set(0)\n runOnJS(jsFinish)(true, true)\n return\n }\n\n // Lock and cancel exclude each other: no lock once the slide is past 30%.\n const isBlocked = progress < LOCK_BLOCK_PROGRESS ? 1 : 0\n if (isBlocked !== lockHideTarget.value) {\n lockHideTarget.set(isBlocked)\n lockHide.set(withTiming(isBlocked, { duration: 140 }))\n }\n fingerUp.set(isBlocked ? 0 : up)\n\n if (!isBlocked && up >= lockDistance) {\n lockedSV.set(1)\n isTakeSV.set(0)\n runOnJS(jsLock)()\n }\n },\n onFinalize: event => {\n if (isTakeSV.value === 0)\n return\n\n isTakeSV.set(0)\n\n // Interrupted by the system rather than released: lock the\n // take unless the cancel slide was already well under way.\n if (event.canceled) {\n if (slideProgress.value < LOCK_BLOCK_PROGRESS) {\n runOnJS(jsFinish)(true, false)\n } else {\n lockedSV.set(1)\n runOnJS(jsLock)()\n }\n return\n }\n\n runOnJS(jsFinish)(slideProgress.value < RELEASE_CANCEL_PROGRESS, false)\n },\n })\n\n const tapRef = useRef(onTap)\n useLayoutEffect(() => {\n tapRef.current = onTap\n })\n const jsTap = () => {\n recordingHaptic()\n tapRef.current?.()\n }\n\n // A tap switches voice <-> video; the hold records. Race so whichever\n // recognizes first wins. With a single mode the press records at once.\n const hasTap = !!onTap\n const tapGesture = useTapGesture({\n enabled: hasTap,\n maxDuration: HOLD_DELAY_MS,\n onDeactivate: () => {\n runOnJS(jsTap)()\n },\n })\n const raceGesture = useCompetingGestures(tapGesture, panGesture)\n return hasTap ? raceGesture : panGesture\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ import { SharedValue } from 'react-native-reanimated';
2
+ import { RecordButtonPhase } from './types';
3
+ interface RecordHintsOptions {
4
+ phase: RecordButtonPhase;
5
+ isVideo: boolean;
6
+ pauseHint?: string | null;
7
+ onPause?: () => void;
8
+ onToggleViewOnce?: () => void;
9
+ isViewOnce: boolean;
10
+ /** The slide progress JS last heard, to skip the lock hint mid-slide. */
11
+ lastReported: SharedValue<number>;
12
+ }
13
+ /**
14
+ * The button's tooltips: "Slide up to lock", "Pause to trim or replay" and the
15
+ * view-once hint, each shown for the first few takes and on its own timer.
16
+ */
17
+ export declare function useRecordHints({ phase, isVideo, pauseHint, onPause, onToggleViewOnce, isViewOnce, lastReported, }: RecordHintsOptions): {
18
+ isLockHintVisible: boolean;
19
+ setIsLockHintVisible: import("react").Dispatch<import("react").SetStateAction<boolean>>;
20
+ isPauseHintVisible: boolean;
21
+ setIsPauseHintVisible: import("react").Dispatch<import("react").SetStateAction<boolean>>;
22
+ hasOnce: boolean;
23
+ onceHint: string | null;
24
+ toggleOnce: () => void;
25
+ };
26
+ export {};
27
+ //# sourceMappingURL=useRecordHints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRecordHints.d.ts","sourceRoot":"","sources":["../../../src/components/RecordButton/useRecordHints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAiBrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAI3C,UAAU,kBAAkB;IAC1B,KAAK,EAAE,iBAAiB,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,UAAU,EAAE,OAAO,CAAA;IACnB,yEAAyE;IACzE,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAClC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAE,EAC9B,KAAK,EACL,OAAO,EACP,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,YAAY,GACb,EAAE,kBAAkB;;;;;;;;EA+FpB"}