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

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 +485 -178
  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
package/lib/linkParser.js CHANGED
@@ -1,48 +1,43 @@
1
+ import { c as _c } from "react/compiler-runtime";
1
2
  import React, { useMemo } from 'react';
2
3
  import { Text, Linking } from 'react-native';
3
- const DEFAULT_MATCHERS = [
4
- {
5
- type: 'url',
6
- // The bare-domain alternative is captured so `notPrecededBy` applies to it
7
- // alone, leaving scheme/www links matchable anywhere.
8
- pattern: /(?:https?:\/\/(?:www\.)?|www\.)[^\s]+|((?![A-Za-z0-9._%+-]*@)[a-zA-Z0-9][a-zA-Z0-9-]*\.(?!@)[a-zA-Z]{2,}(?![A-Za-z0-9._%+-]*@)(?:\/[^\s]*)?)/gi,
9
- notPrecededBy: /[A-Za-z0-9_.@]/,
10
- notPrecededByGroup: 1,
11
- getLinkUrl: (text) => {
12
- if (!/^https?:\/\//i.test(text))
13
- return `http://${text}`;
14
- return text;
15
- },
16
- },
17
- {
18
- type: 'email',
19
- pattern: /([a-zA-Z0-9][a-zA-Z0-9._%+-]*@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})/gi,
20
- notPrecededBy: /[A-Za-z0-9]/,
21
- getLinkUrl: (text) => `mailto:${text}`,
22
- },
23
- {
24
- type: 'phone',
25
- pattern: /(?:\+?\d{1,3}[\s.\-]?)?\(?\d{1,4}\)?[\s.\-]?\d{1,4}[\s.\-]?\d{1,9}(?![A-Za-z0-9_]|\.[a-z]{2,4})/gi,
26
- notPrecededBy: /[A-Za-z0-9_]/,
27
- getLinkUrl: (text) => {
28
- const cleaned = text.replace(/[\s.()\-]/g, '');
29
- return `tel:${cleaned}`;
30
- },
31
- },
32
- {
33
- type: 'hashtag',
34
- pattern: /#[\w]+/g,
35
- getLinkUrl: (text) => text,
36
- baseUrl: undefined,
37
- },
38
- {
39
- type: 'mention',
40
- pattern: /@[\w-]+/g,
41
- notPrecededBy: /[a-zA-Z0-9._%+-]/,
42
- getLinkUrl: (text) => text,
43
- baseUrl: undefined,
44
- },
45
- ];
4
+ const DEFAULT_MATCHERS = [{
5
+ type: 'url',
6
+ // The bare-domain alternative is captured so `notPrecededBy` applies to it
7
+ // alone, leaving scheme/www links matchable anywhere.
8
+ pattern: /(?:https?:\/\/(?:www\.)?|www\.)[^\s]+|((?![A-Za-z0-9._%+-]*@)[a-zA-Z0-9][a-zA-Z0-9-]*\.(?!@)[a-zA-Z]{2,}(?![A-Za-z0-9._%+-]*@)(?:\/[^\s]*)?)/gi,
9
+ notPrecededBy: /[A-Za-z0-9_.@]/,
10
+ notPrecededByGroup: 1,
11
+ getLinkUrl: text => {
12
+ if (!/^https?:\/\//i.test(text)) return `http://${text}`;
13
+ return text;
14
+ }
15
+ }, {
16
+ type: 'email',
17
+ pattern: /([a-zA-Z0-9][a-zA-Z0-9._%+-]*@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})/gi,
18
+ notPrecededBy: /[A-Za-z0-9]/,
19
+ getLinkUrl: text => `mailto:${text}`
20
+ }, {
21
+ type: 'phone',
22
+ pattern: /(?:\+?\d{1,3}[\s.\-]?)?\(?\d{1,4}\)?[\s.\-]?\d{1,4}[\s.\-]?\d{1,9}(?![A-Za-z0-9_]|\.[a-z]{2,4})/gi,
23
+ notPrecededBy: /[A-Za-z0-9_]/,
24
+ getLinkUrl: text => {
25
+ const cleaned = text.replace(/[\s.()\-]/g, '');
26
+ return `tel:${cleaned}`;
27
+ }
28
+ }, {
29
+ type: 'hashtag',
30
+ pattern: /#[\w]+/g,
31
+ getLinkUrl: text => text,
32
+ baseUrl: undefined
33
+ }, {
34
+ type: 'mention',
35
+ pattern: /@[\w-]+/g,
36
+ notPrecededBy: /[a-zA-Z0-9._%+-]/,
37
+ getLinkUrl: text => text,
38
+ baseUrl: undefined
39
+ }];
40
+
46
41
  /**
47
42
  * Runs `matcher.pattern` over `text`, honouring `matcher.notPrecededBy`.
48
43
  *
@@ -61,168 +56,306 @@ const DEFAULT_MATCHERS = [
61
56
  const globalPatternCache = new WeakMap();
62
57
  const boundaryPatternCache = new WeakMap();
63
58
  function globalPattern(pattern) {
64
- let compiled = globalPatternCache.get(pattern);
65
- if (!compiled) {
66
- const flags = pattern.flags.includes('g') ? pattern.flags : `${pattern.flags}g`;
67
- compiled = new RegExp(pattern.source, flags);
68
- globalPatternCache.set(pattern, compiled);
69
- }
70
- // Reused across calls, so the cursor has to be rewound rather than assumed at 0.
71
- compiled.lastIndex = 0;
72
- return compiled;
59
+ let compiled = globalPatternCache.get(pattern);
60
+ if (!compiled) {
61
+ const flags = pattern.flags.includes('g') ? pattern.flags : `${pattern.flags}g`;
62
+ compiled = new RegExp(pattern.source, flags);
63
+ globalPatternCache.set(pattern, compiled);
64
+ }
65
+
66
+ // Reused across calls, so the cursor has to be rewound rather than assumed at 0.
67
+ compiled.lastIndex = 0;
68
+ return compiled;
73
69
  }
74
70
  function boundaryPattern(notPrecededBy) {
75
- let compiled = boundaryPatternCache.get(notPrecededBy);
76
- if (!compiled) {
77
- // Dropped `g` here as well: `test` on a global regex advances lastIndex and
78
- // would skip every other rejection.
79
- compiled = new RegExp(notPrecededBy.source, notPrecededBy.flags.replace(/[gy]/g, ''));
80
- boundaryPatternCache.set(notPrecededBy, compiled);
81
- }
82
- return compiled;
71
+ let compiled = boundaryPatternCache.get(notPrecededBy);
72
+ if (!compiled) {
73
+ // Dropped `g` here as well: `test` on a global regex advances lastIndex and
74
+ // would skip every other rejection.
75
+ compiled = new RegExp(notPrecededBy.source, notPrecededBy.flags.replace(/[gy]/g, ''));
76
+ boundaryPatternCache.set(notPrecededBy, compiled);
77
+ }
78
+ return compiled;
83
79
  }
84
80
  function execMatches(text, matcher) {
85
- const { pattern, notPrecededBy, notPrecededByGroup } = matcher;
86
- const regex = globalPattern(pattern);
87
- const boundary = notPrecededBy ? boundaryPattern(notPrecededBy) : undefined;
88
- const matches = [];
89
- let match;
90
- while ((match = regex.exec(text)) !== null) {
91
- const guarded = notPrecededByGroup === undefined || match[notPrecededByGroup] !== undefined;
92
- if (boundary && guarded && match.index > 0 && boundary.test(text[match.index - 1])) {
93
- regex.lastIndex = match.index + 1;
94
- continue;
95
- }
96
- matches.push(match);
97
- // Zero-length matches would otherwise spin forever.
98
- if (match[0].length === 0)
99
- regex.lastIndex += 1;
81
+ const {
82
+ pattern,
83
+ notPrecededBy,
84
+ notPrecededByGroup
85
+ } = matcher;
86
+ const regex = globalPattern(pattern);
87
+ const boundary = notPrecededBy ? boundaryPattern(notPrecededBy) : undefined;
88
+ const matches = [];
89
+ let match;
90
+ while ((match = regex.exec(text)) !== null) {
91
+ const guarded = notPrecededByGroup === undefined || match[notPrecededByGroup] !== undefined;
92
+ if (boundary && guarded && match.index > 0 && boundary.test(text[match.index - 1])) {
93
+ regex.lastIndex = match.index + 1;
94
+ continue;
100
95
  }
101
- return matches;
96
+ matches.push(match);
97
+
98
+ // Zero-length matches would otherwise spin forever.
99
+ if (match[0].length === 0) regex.lastIndex += 1;
100
+ }
101
+ return matches;
102
102
  }
103
103
  function parseLinks(text, matchers) {
104
- const links = [];
105
- matchers.forEach(matcher => {
106
- const matches = execMatches(text, matcher);
107
- for (const match of matches)
108
- if (match.index !== undefined) {
109
- const matchText = match[0];
110
- const url = matcher.getLinkUrl
111
- ? matcher.getLinkUrl(matchText)
112
- : matchText;
113
- const linkText = matcher.getLinkText
114
- ? matcher.getLinkText(matchText)
115
- : matchText;
116
- links.push({
117
- type: matcher.type,
118
- text: linkText,
119
- url,
120
- index: match.index,
121
- length: matchText.length,
122
- });
123
- }
124
- });
125
- // Sort by index to maintain order
126
- return links.sort((a, b) => a.index - b.index);
104
+ const links = [];
105
+ matchers.forEach(matcher => {
106
+ const matches = execMatches(text, matcher);
107
+ for (const match of matches) if (match.index !== undefined) {
108
+ const matchText = match[0];
109
+ const url = matcher.getLinkUrl ? matcher.getLinkUrl(matchText) : matchText;
110
+ const linkText = matcher.getLinkText ? matcher.getLinkText(matchText) : matchText;
111
+ links.push({
112
+ type: matcher.type,
113
+ text: linkText,
114
+ url,
115
+ index: match.index,
116
+ length: matchText.length
117
+ });
118
+ }
119
+ });
120
+
121
+ // Sort by index to maintain order
122
+ return links.sort((a, b) => a.index - b.index);
127
123
  }
128
124
  function removeOverlaps(links) {
129
- const filtered = [];
130
- for (const link of links) {
131
- const hasOverlap = filtered.some(existing => {
132
- const existingEnd = existing.index + existing.length;
133
- const linkEnd = link.index + link.length;
134
- return ((link.index >= existing.index && link.index < existingEnd) ||
135
- (linkEnd > existing.index && linkEnd <= existingEnd) ||
136
- (link.index <= existing.index && linkEnd >= existingEnd));
137
- });
138
- if (!hasOverlap)
139
- filtered.push(link);
125
+ const filtered = [];
126
+ for (const link of links) {
127
+ const hasOverlap = filtered.some(existing => {
128
+ const existingEnd = existing.index + existing.length;
129
+ const linkEnd = link.index + link.length;
130
+ return link.index >= existing.index && link.index < existingEnd || linkEnd > existing.index && linkEnd <= existingEnd || link.index <= existing.index && linkEnd >= existingEnd;
131
+ });
132
+ if (!hasOverlap) filtered.push(link);
133
+ }
134
+ return filtered;
135
+ }
136
+ function LinkParserComponent(t0) {
137
+ const $ = _c(35);
138
+ const {
139
+ text,
140
+ matchers: customMatchers,
141
+ email: t1,
142
+ phone: t2,
143
+ url: t3,
144
+ hashtag: t4,
145
+ mention: t5,
146
+ hashtagUrl,
147
+ mentionUrl,
148
+ linkStyle,
149
+ onPress,
150
+ stripPrefix: t6,
151
+ textStyle,
152
+ TextComponent: t7
153
+ } = t0;
154
+ const email = t1 === undefined ? true : t1;
155
+ const phone = t2 === undefined ? true : t2;
156
+ const url = t3 === undefined ? true : t3;
157
+ const hashtag = t4 === undefined ? false : t4;
158
+ const mention = t5 === undefined ? false : t5;
159
+ const stripPrefix = t6 === undefined ? true : t6;
160
+ const TextComponent = t7 === undefined ? Text : t7;
161
+ let t8;
162
+ if ($[0] !== customMatchers || $[1] !== email || $[2] !== hashtag || $[3] !== hashtagUrl || $[4] !== mention || $[5] !== mentionUrl || $[6] !== phone || $[7] !== text || $[8] !== url) {
163
+ const activeMatchers = [];
164
+ if (customMatchers) {
165
+ activeMatchers.push(...customMatchers);
140
166
  }
141
- return filtered;
142
- }
143
- function LinkParserComponent({ text, matchers: customMatchers, email = true, phone = true, url = true, hashtag = false, mention = false, hashtagUrl, mentionUrl, linkStyle, onPress, stripPrefix = true, textStyle, TextComponent = Text, }) {
144
- // Parsing is the expensive part of rendering a message body - matcher assembly plus a
145
- // scan per matcher - and it depends only on the text and the matcher configuration.
146
- // Left in the render body it re-ran on every render of every message.
147
- const { links, activeMatchers } = useMemo(() => {
148
- const activeMatchers = [];
149
- // Add custom matchers first (they take precedence)
150
- if (customMatchers)
151
- activeMatchers.push(...customMatchers);
152
- // Add default matchers based on flags
153
- if (url && !customMatchers?.some(m => m.type === 'url'))
154
- activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'url'));
155
- if (email && !customMatchers?.some(m => m.type === 'email'))
156
- activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'email'));
157
- if (phone && !customMatchers?.some(m => m.type === 'phone'))
158
- activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'phone'));
159
- if (hashtag && !customMatchers?.some(m => m.type === 'hashtag')) {
160
- const hashtagMatcher = { ...DEFAULT_MATCHERS.find(m => m.type === 'hashtag') };
161
- if (hashtagUrl) {
162
- hashtagMatcher.baseUrl = hashtagUrl;
163
- const baseUrl = hashtagUrl.endsWith('/') ? hashtagUrl : `${hashtagUrl}/`;
164
- hashtagMatcher.getLinkUrl = (text) => `${baseUrl}${text.substring(1)}`;
165
- }
166
- activeMatchers.push(hashtagMatcher);
167
+ if (url && !customMatchers?.some(_temp)) {
168
+ activeMatchers.push(DEFAULT_MATCHERS.find(_temp2));
169
+ }
170
+ if (email && !customMatchers?.some(_temp3)) {
171
+ activeMatchers.push(DEFAULT_MATCHERS.find(_temp4));
172
+ }
173
+ if (phone && !customMatchers?.some(_temp5)) {
174
+ activeMatchers.push(DEFAULT_MATCHERS.find(_temp6));
175
+ }
176
+ if (hashtag && !customMatchers?.some(_temp7)) {
177
+ const hashtagMatcher = {
178
+ ...DEFAULT_MATCHERS.find(_temp8)
179
+ };
180
+ if (hashtagUrl) {
181
+ hashtagMatcher.baseUrl = hashtagUrl;
182
+ let t9;
183
+ if ($[10] !== hashtagUrl) {
184
+ t9 = hashtagUrl.endsWith("/") ? hashtagUrl : `${hashtagUrl}/`;
185
+ $[10] = hashtagUrl;
186
+ $[11] = t9;
187
+ } else {
188
+ t9 = $[11];
167
189
  }
168
- if (mention && !customMatchers?.some(m => m.type === 'mention')) {
169
- const mentionMatcher = { ...DEFAULT_MATCHERS.find(m => m.type === 'mention') };
170
- if (mentionUrl) {
171
- mentionMatcher.baseUrl = mentionUrl;
172
- const baseUrl = mentionUrl.endsWith('/') ? mentionUrl : `${mentionUrl}/`;
173
- mentionMatcher.getLinkUrl = (text) => `${baseUrl}${text.substring(1)}`;
174
- }
175
- activeMatchers.push(mentionMatcher);
190
+ const baseUrl = t9;
191
+ let t10;
192
+ if ($[12] !== baseUrl) {
193
+ t10 = text_0 => `${baseUrl}${text_0.substring(1)}`;
194
+ $[12] = baseUrl;
195
+ $[13] = t10;
196
+ } else {
197
+ t10 = $[13];
198
+ }
199
+ hashtagMatcher.getLinkUrl = t10;
200
+ }
201
+ activeMatchers.push(hashtagMatcher);
202
+ }
203
+ if (mention && !customMatchers?.some(_temp9)) {
204
+ const mentionMatcher = {
205
+ ...DEFAULT_MATCHERS.find(_temp0)
206
+ };
207
+ if (mentionUrl) {
208
+ mentionMatcher.baseUrl = mentionUrl;
209
+ let t9;
210
+ if ($[14] !== mentionUrl) {
211
+ t9 = mentionUrl.endsWith("/") ? mentionUrl : `${mentionUrl}/`;
212
+ $[14] = mentionUrl;
213
+ $[15] = t9;
214
+ } else {
215
+ t9 = $[15];
216
+ }
217
+ const baseUrl_0 = t9;
218
+ let t10;
219
+ if ($[16] !== baseUrl_0) {
220
+ t10 = text_1 => `${baseUrl_0}${text_1.substring(1)}`;
221
+ $[16] = baseUrl_0;
222
+ $[17] = t10;
223
+ } else {
224
+ t10 = $[17];
176
225
  }
177
- return { activeMatchers, links: removeOverlaps(parseLinks(text, activeMatchers)) };
178
- }, [text, customMatchers, url, email, phone, hashtag, mention, hashtagUrl, mentionUrl]);
179
- if (links.length === 0)
180
- return <TextComponent style={textStyle}>{text}</TextComponent>;
181
- const elements = [];
226
+ mentionMatcher.getLinkUrl = t10;
227
+ }
228
+ activeMatchers.push(mentionMatcher);
229
+ }
230
+ t8 = {
231
+ activeMatchers,
232
+ links: removeOverlaps(parseLinks(text, activeMatchers))
233
+ };
234
+ $[0] = customMatchers;
235
+ $[1] = email;
236
+ $[2] = hashtag;
237
+ $[3] = hashtagUrl;
238
+ $[4] = mention;
239
+ $[5] = mentionUrl;
240
+ $[6] = phone;
241
+ $[7] = text;
242
+ $[8] = url;
243
+ $[9] = t8;
244
+ } else {
245
+ t8 = $[9];
246
+ }
247
+ const {
248
+ links,
249
+ activeMatchers: activeMatchers_0
250
+ } = t8;
251
+ if (links.length === 0) {
252
+ let t9;
253
+ if ($[18] !== TextComponent || $[19] !== text || $[20] !== textStyle) {
254
+ t9 = <TextComponent style={textStyle}>{text}</TextComponent>;
255
+ $[18] = TextComponent;
256
+ $[19] = text;
257
+ $[20] = textStyle;
258
+ $[21] = t9;
259
+ } else {
260
+ t9 = $[21];
261
+ }
262
+ return t9;
263
+ }
264
+ let elements;
265
+ if ($[22] !== TextComponent || $[23] !== activeMatchers_0 || $[24] !== linkStyle || $[25] !== links || $[26] !== onPress || $[27] !== stripPrefix || $[28] !== text || $[29] !== textStyle) {
266
+ elements = [];
182
267
  let lastIndex = 0;
183
268
  links.forEach((link, index) => {
184
- // Add text before link
185
- if (link.index > lastIndex)
186
- elements.push(<TextComponent key={`text-${index}`} style={textStyle}>
187
- {text.substring(lastIndex, link.index)}
188
- </TextComponent>);
189
- // Find the matcher for this link
190
- const matcher = activeMatchers.find(m => m.type === link.type);
191
- // Handle link rendering
192
- if (matcher?.renderLink) {
193
- elements.push(matcher.renderLink(link.text, link.url, index, link.type));
194
- }
195
- else {
196
- const handlePress = () => {
197
- if (matcher?.onPress)
198
- matcher.onPress(link.url, link.type);
199
- else if (onPress)
200
- onPress(link.url, link.type);
201
- else
202
- // Default behavior
203
- Linking.openURL(link.url).catch(err => {
204
- console.warn('Failed to open URL:', err);
205
- });
206
- };
207
- let displayText = link.text;
208
- if (stripPrefix && link.type === 'url')
209
- displayText = displayText.replace(/^https?:\/\//i, '');
210
- elements.push(<TextComponent key={`link-${index}`} style={[linkStyle, matcher?.style]} onPress={handlePress}>
211
- {displayText}
212
- </TextComponent>);
269
+ if (link.index > lastIndex) {
270
+ elements.push(<TextComponent key={`text-${index}`} style={textStyle}>{text.substring(lastIndex, link.index)}</TextComponent>);
271
+ }
272
+ const matcher = activeMatchers_0.find(m_9 => m_9.type === link.type);
273
+ if (matcher?.renderLink) {
274
+ elements.push(matcher.renderLink(link.text, link.url, index, link.type));
275
+ } else {
276
+ const handlePress = () => {
277
+ if (matcher?.onPress) {
278
+ matcher.onPress(link.url, link.type);
279
+ } else {
280
+ if (onPress) {
281
+ onPress(link.url, link.type);
282
+ } else {
283
+ Linking.openURL(link.url).catch(_temp1);
284
+ }
285
+ }
286
+ };
287
+ let displayText = link.text;
288
+ if (stripPrefix && link.type === "url") {
289
+ displayText = displayText.replace(/^https?:\/\//i, "");
213
290
  }
214
- lastIndex = link.index + link.length;
291
+ elements.push(<TextComponent key={`link-${index}`} style={[linkStyle, matcher?.style]} onPress={handlePress}>{displayText}</TextComponent>);
292
+ }
293
+ lastIndex = link.index + link.length;
215
294
  });
216
- // Add remaining text
217
- if (lastIndex < text.length)
218
- elements.push(<TextComponent key='text-end' style={textStyle}>
219
- {text.substring(lastIndex)}
220
- </TextComponent>);
221
- return <TextComponent style={textStyle}>{elements}</TextComponent>;
295
+ if (lastIndex < text.length) {
296
+ elements.push(<TextComponent key="text-end" style={textStyle}>{text.substring(lastIndex)}</TextComponent>);
297
+ }
298
+ $[22] = TextComponent;
299
+ $[23] = activeMatchers_0;
300
+ $[24] = linkStyle;
301
+ $[25] = links;
302
+ $[26] = onPress;
303
+ $[27] = stripPrefix;
304
+ $[28] = text;
305
+ $[29] = textStyle;
306
+ $[30] = elements;
307
+ } else {
308
+ elements = $[30];
309
+ }
310
+ let t9;
311
+ if ($[31] !== TextComponent || $[32] !== elements || $[33] !== textStyle) {
312
+ t9 = <TextComponent style={textStyle}>{elements}</TextComponent>;
313
+ $[31] = TextComponent;
314
+ $[32] = elements;
315
+ $[33] = textStyle;
316
+ $[34] = t9;
317
+ } else {
318
+ t9 = $[34];
319
+ }
320
+ return t9;
222
321
  }
322
+
223
323
  // Rendered once per message body, and rebuilding its element list is the second most expensive
224
324
  // thing a message row does after the row itself. The parse is already memoised, but the component
225
325
  // still re-ran whenever its parent did - which, in a list, is on every commit that touches the
226
326
  // row. Memoising the component lets an unchanged body skip the work entirely.
327
+ function _temp1(err) {
328
+ console.warn("Failed to open URL:", err);
329
+ }
330
+ function _temp0(m_7) {
331
+ return m_7.type === "mention";
332
+ }
333
+ function _temp9(m_8) {
334
+ return m_8.type === "mention";
335
+ }
336
+ function _temp8(m_5) {
337
+ return m_5.type === "hashtag";
338
+ }
339
+ function _temp7(m_6) {
340
+ return m_6.type === "hashtag";
341
+ }
342
+ function _temp6(m_3) {
343
+ return m_3.type === "phone";
344
+ }
345
+ function _temp5(m_4) {
346
+ return m_4.type === "phone";
347
+ }
348
+ function _temp4(m_1) {
349
+ return m_1.type === "email";
350
+ }
351
+ function _temp3(m_2) {
352
+ return m_2.type === "email";
353
+ }
354
+ function _temp2(m) {
355
+ return m.type === "url";
356
+ }
357
+ function _temp(m_0) {
358
+ return m_0.type === "url";
359
+ }
227
360
  export const LinkParser = React.memo(LinkParserComponent);
228
361
  //# sourceMappingURL=linkParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"linkParser.js","sourceRoot":"","sources":["../src/linkParser.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linkParser.js","names":["React","useMemo","Text","Linking","DEFAULT_MATCHERS","type","pattern","notPrecededBy","notPrecededByGroup","getLinkUrl","text","test","cleaned","replace","baseUrl","undefined","globalPatternCache","WeakMap","boundaryPatternCache","globalPattern","compiled","get","flags","includes","RegExp","source","set","lastIndex","boundaryPattern","execMatches","matcher","regex","boundary","matches","match","exec","guarded","index","push","length","parseLinks","matchers","links","forEach","matchText","url","linkText","getLinkText","sort","a","b","removeOverlaps","filtered","link","hasOverlap","some","existing","existingEnd","linkEnd","LinkParserComponent","t0","$","_c","customMatchers","email","t1","phone","t2","t3","hashtag","t4","mention","t5","hashtagUrl","mentionUrl","linkStyle","onPress","stripPrefix","t6","textStyle","TextComponent","t7","t8","activeMatchers","_temp","find","_temp2","_temp3","_temp4","_temp5","_temp6","_temp7","hashtagMatcher","_temp8","t9","endsWith","t10","text_0","substring","_temp9","mentionMatcher","_temp0","baseUrl_0","text_1","activeMatchers_0","elements","m_9","m","renderLink","handlePress","openURL","catch","_temp1","displayText","style","err","console","warn","m_7","m_8","m_5","m_6","m_3","m_4","m_1","m_2","m_0","LinkParser","memo"],"sources":["../src/linkParser.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { Text, TextStyle, StyleProp, Linking } from 'react-native'\n\nexport type LinkType = 'url' | 'email' | 'phone' | 'mention' | 'hashtag'\n\nexport interface ParsedLink {\n type: LinkType\n text: string\n url: string\n index: number\n length: number\n}\n\nexport interface LinkMatcher {\n type: LinkType\n pattern: RegExp\n /**\n * Character class the match must NOT be preceded by. Portable stand-in for a\n * lookbehind assertion `(?<!...)`, which JavaScriptCore on iOS/Safari < 16.4\n * rejects while parsing the file, taking the whole app down with\n * \"SyntaxError: Invalid regular expression: invalid group specifier name\".\n * A rejected match does not end the scan: it resumes one character further\n * along, exactly as a lookbehind would.\n */\n notPrecededBy?: RegExp\n /**\n * Limits `notPrecededBy` to matches in which this capture group took part, so\n * a pattern can guard a single one of its alternatives.\n */\n notPrecededByGroup?: number\n getLinkUrl?: (text: string) => string\n getLinkText?: (text: string) => string\n baseUrl?: string\n style?: StyleProp<TextStyle>\n renderLink?: (text: string, url: string, index: number, type: LinkType) => React.ReactNode\n onPress?: (url: string, type: LinkType) => void\n}\n\ninterface LinkParserProps {\n text: string\n matchers?: LinkMatcher[]\n email?: boolean\n phone?: boolean\n url?: boolean\n hashtag?: boolean\n mention?: boolean\n hashtagUrl?: string\n mentionUrl?: string\n linkStyle?: StyleProp<TextStyle>\n onPress?: (url: string, type: LinkType) => void\n stripPrefix?: boolean\n textStyle?: StyleProp<TextStyle>\n TextComponent?: React.ComponentType<any>\n}\n\nconst DEFAULT_MATCHERS: LinkMatcher[] = [\n {\n type: 'url',\n // The bare-domain alternative is captured so `notPrecededBy` applies to it\n // alone, leaving scheme/www links matchable anywhere.\n pattern: /(?:https?:\\/\\/(?:www\\.)?|www\\.)[^\\s]+|((?![A-Za-z0-9._%+-]*@)[a-zA-Z0-9][a-zA-Z0-9-]*\\.(?!@)[a-zA-Z]{2,}(?![A-Za-z0-9._%+-]*@)(?:\\/[^\\s]*)?)/gi,\n notPrecededBy: /[A-Za-z0-9_.@]/,\n notPrecededByGroup: 1,\n getLinkUrl: (text: string) => {\n if (!/^https?:\\/\\//i.test(text))\n return `http://${text}`\n\n return text\n },\n },\n {\n type: 'email',\n pattern: /([a-zA-Z0-9][a-zA-Z0-9._%+-]*@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,})/gi,\n notPrecededBy: /[A-Za-z0-9]/,\n getLinkUrl: (text: string) => `mailto:${text}`,\n },\n {\n type: 'phone',\n pattern: /(?:\\+?\\d{1,3}[\\s.\\-]?)?\\(?\\d{1,4}\\)?[\\s.\\-]?\\d{1,4}[\\s.\\-]?\\d{1,9}(?![A-Za-z0-9_]|\\.[a-z]{2,4})/gi,\n notPrecededBy: /[A-Za-z0-9_]/,\n getLinkUrl: (text: string) => {\n const cleaned = text.replace(/[\\s.()\\-]/g, '')\n return `tel:${cleaned}`\n },\n },\n {\n type: 'hashtag',\n pattern: /#[\\w]+/g,\n getLinkUrl: (text: string) => text,\n baseUrl: undefined,\n },\n {\n type: 'mention',\n pattern: /@[\\w-]+/g,\n notPrecededBy: /[a-zA-Z0-9._%+-]/,\n getLinkUrl: (text: string) => text,\n baseUrl: undefined,\n },\n]\n\n/**\n * Runs `matcher.pattern` over `text`, honouring `matcher.notPrecededBy`.\n *\n * The pattern is cloned so a matcher shared between renders never carries\n * `lastIndex` state around, which is what `String.prototype.matchAll` does too.\n * When the preceding character is rejected the scan restarts at\n * `match.index + 1` rather than after the match, so a start position ruled out\n * here can still be part of a match found one character later - the same\n * behaviour a lookbehind assertion gives.\n */\n// Compiling a RegExp is the expensive half of parsing, and every pattern here is a\n// constant - only `lastIndex` varies per call, and that is reset on checkout. Without\n// this, each message re-compiled the whole matcher set on every render of its text.\n// Keyed on the source RegExp object so custom matchers benefit too, as long as the\n// consumer keeps their pattern stable.\nconst globalPatternCache = new WeakMap<RegExp, RegExp>()\nconst boundaryPatternCache = new WeakMap<RegExp, RegExp>()\n\nfunction globalPattern(pattern: RegExp): RegExp {\n let compiled = globalPatternCache.get(pattern)\n\n if (!compiled) {\n const flags = pattern.flags.includes('g') ? pattern.flags : `${pattern.flags}g`\n compiled = new RegExp(pattern.source, flags)\n globalPatternCache.set(pattern, compiled)\n }\n\n // Reused across calls, so the cursor has to be rewound rather than assumed at 0.\n compiled.lastIndex = 0\n return compiled\n}\n\nfunction boundaryPattern(notPrecededBy: RegExp): RegExp {\n let compiled = boundaryPatternCache.get(notPrecededBy)\n\n if (!compiled) {\n // Dropped `g` here as well: `test` on a global regex advances lastIndex and\n // would skip every other rejection.\n compiled = new RegExp(notPrecededBy.source, notPrecededBy.flags.replace(/[gy]/g, ''))\n boundaryPatternCache.set(notPrecededBy, compiled)\n }\n\n return compiled\n}\n\nfunction execMatches(text: string, matcher: LinkMatcher): RegExpExecArray[] {\n const { pattern, notPrecededBy, notPrecededByGroup } = matcher\n const regex = globalPattern(pattern)\n const boundary = notPrecededBy ? boundaryPattern(notPrecededBy) : undefined\n const matches: RegExpExecArray[] = []\n\n let match: RegExpExecArray | null\n while ((match = regex.exec(text)) !== null) {\n const guarded = notPrecededByGroup === undefined || match[notPrecededByGroup] !== undefined\n\n if (boundary && guarded && match.index > 0 && boundary.test(text[match.index - 1])) {\n regex.lastIndex = match.index + 1\n continue\n }\n\n matches.push(match)\n\n // Zero-length matches would otherwise spin forever.\n if (match[0].length === 0)\n regex.lastIndex += 1\n\n }\n\n return matches\n}\n\nfunction parseLinks(text: string, matchers: LinkMatcher[]): ParsedLink[] {\n const links: ParsedLink[] = []\n\n matchers.forEach(matcher => {\n const matches = execMatches(text, matcher)\n for (const match of matches)\n if (match.index !== undefined) {\n const matchText = match[0]\n const url = matcher.getLinkUrl\n ? matcher.getLinkUrl(matchText)\n : matchText\n const linkText = matcher.getLinkText\n ? matcher.getLinkText(matchText)\n : matchText\n\n links.push({\n type: matcher.type,\n text: linkText,\n url,\n index: match.index,\n length: matchText.length,\n })\n }\n\n })\n\n // Sort by index to maintain order\n return links.sort((a, b) => a.index - b.index)\n}\n\nfunction removeOverlaps(links: ParsedLink[]): ParsedLink[] {\n const filtered: ParsedLink[] = []\n\n for (const link of links) {\n const hasOverlap = filtered.some(existing => {\n const existingEnd = existing.index + existing.length\n const linkEnd = link.index + link.length\n\n return (\n (link.index >= existing.index && link.index < existingEnd) ||\n (linkEnd > existing.index && linkEnd <= existingEnd) ||\n (link.index <= existing.index && linkEnd >= existingEnd)\n )\n })\n\n if (!hasOverlap)\n filtered.push(link)\n\n }\n\n return filtered\n}\n\nfunction LinkParserComponent({\n text,\n matchers: customMatchers,\n email = true,\n phone = true,\n url = true,\n hashtag = false,\n mention = false,\n hashtagUrl,\n mentionUrl,\n linkStyle,\n onPress,\n stripPrefix = true,\n textStyle,\n TextComponent = Text,\n}: LinkParserProps): React.ReactElement {\n // Parsing is the expensive part of rendering a message body - matcher assembly plus a\n // scan per matcher - and it depends only on the text and the matcher configuration.\n // Left in the render body it re-ran on every render of every message.\n const { links, activeMatchers } = useMemo(() => {\n const activeMatchers: LinkMatcher[] = []\n\n // Add custom matchers first (they take precedence)\n if (customMatchers)\n activeMatchers.push(...customMatchers)\n\n\n // Add default matchers based on flags\n if (url && !customMatchers?.some(m => m.type === 'url'))\n activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'url')!)\n\n if (email && !customMatchers?.some(m => m.type === 'email'))\n activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'email')!)\n\n if (phone && !customMatchers?.some(m => m.type === 'phone'))\n activeMatchers.push(DEFAULT_MATCHERS.find(m => m.type === 'phone')!)\n\n if (hashtag && !customMatchers?.some(m => m.type === 'hashtag')) {\n const hashtagMatcher = { ...DEFAULT_MATCHERS.find(m => m.type === 'hashtag')! }\n if (hashtagUrl) {\n hashtagMatcher.baseUrl = hashtagUrl\n const baseUrl = hashtagUrl.endsWith('/') ? hashtagUrl : `${hashtagUrl}/`\n hashtagMatcher.getLinkUrl = (text: string) => `${baseUrl}${text.substring(1)}`\n }\n activeMatchers.push(hashtagMatcher)\n }\n\n if (mention && !customMatchers?.some(m => m.type === 'mention')) {\n const mentionMatcher = { ...DEFAULT_MATCHERS.find(m => m.type === 'mention')! }\n if (mentionUrl) {\n mentionMatcher.baseUrl = mentionUrl\n const baseUrl = mentionUrl.endsWith('/') ? mentionUrl : `${mentionUrl}/`\n mentionMatcher.getLinkUrl = (text: string) => `${baseUrl}${text.substring(1)}`\n }\n activeMatchers.push(mentionMatcher)\n }\n\n\n return { activeMatchers, links: removeOverlaps(parseLinks(text, activeMatchers)) }\n }, [text, customMatchers, url, email, phone, hashtag, mention, hashtagUrl, mentionUrl])\n\n if (links.length === 0)\n return <TextComponent style={textStyle}>{text}</TextComponent>\n\n\n const elements: React.ReactNode[] = []\n let lastIndex = 0\n\n links.forEach((link, index) => {\n // Add text before link\n if (link.index > lastIndex)\n elements.push(\n <TextComponent key={`text-${index}`} style={textStyle}>\n {text.substring(lastIndex, link.index)}\n </TextComponent>\n )\n\n\n // Find the matcher for this link\n const matcher = activeMatchers.find(m => m.type === link.type)\n\n // Handle link rendering\n if (matcher?.renderLink) {\n elements.push(matcher.renderLink(link.text, link.url, index, link.type))\n } else {\n const handlePress = () => {\n if (matcher?.onPress)\n matcher.onPress(link.url, link.type)\n else if (onPress)\n onPress(link.url, link.type)\n else\n // Default behavior\n Linking.openURL(link.url).catch(err => {\n console.warn('Failed to open URL:', err)\n })\n\n }\n\n let displayText = link.text\n if (stripPrefix && link.type === 'url')\n displayText = displayText.replace(/^https?:\\/\\//i, '')\n\n\n elements.push(\n <TextComponent\n key={`link-${index}`}\n style={[linkStyle, matcher?.style]}\n onPress={handlePress}\n >\n {displayText}\n </TextComponent>\n )\n }\n\n lastIndex = link.index + link.length\n })\n\n // Add remaining text\n if (lastIndex < text.length)\n elements.push(\n <TextComponent key='text-end' style={textStyle}>\n {text.substring(lastIndex)}\n </TextComponent>\n )\n\n\n return <TextComponent style={textStyle}>{elements}</TextComponent>\n}\n\n// Rendered once per message body, and rebuilding its element list is the second most expensive\n// thing a message row does after the row itself. The parse is already memoised, but the component\n// still re-ran whenever its parent did - which, in a list, is on every commit that touches the\n// row. Memoising the component lets an unchanged body skip the work entirely.\nexport const LinkParser = React.memo(LinkParserComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../src/locales/ar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,eAAO,MAAM,EAAE,EAAE,OAAO,CAAC,UAAU,CAoBlC,CAAA"}
1
+ {"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../src/locales/ar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,eAAO,MAAM,EAAE,EAAE,OAAO,CAAC,UAAU,CA+GlC,CAAA"}