@kesha-antonov/react-native-chat 5.0.1 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +486 -179
- package/lib/Actions.d.ts.map +1 -1
- package/lib/Actions.js +121 -42
- package/lib/Actions.js.map +1 -1
- package/lib/Avatar.d.ts.map +1 -1
- package/lib/Avatar.js +171 -86
- package/lib/Avatar.js.map +1 -1
- package/lib/Bubble/BubbleBody.d.ts +15 -0
- package/lib/Bubble/BubbleBody.d.ts.map +1 -0
- package/lib/Bubble/BubbleBody.js +218 -0
- package/lib/Bubble/BubbleBody.js.map +1 -0
- package/lib/Bubble/BubbleContent.d.ts +23 -0
- package/lib/Bubble/BubbleContent.d.ts.map +1 -0
- package/lib/Bubble/BubbleContent.js +446 -0
- package/lib/Bubble/BubbleContent.js.map +1 -0
- package/lib/Bubble/BubbleMenu.d.ts +45 -0
- package/lib/Bubble/BubbleMenu.d.ts.map +1 -0
- package/lib/Bubble/BubbleMenu.js +289 -0
- package/lib/Bubble/BubbleMenu.js.map +1 -0
- package/lib/Bubble/BubbleMeta.d.ts +17 -0
- package/lib/Bubble/BubbleMeta.d.ts.map +1 -0
- package/lib/Bubble/BubbleMeta.js +453 -0
- package/lib/Bubble/BubbleMeta.js.map +1 -0
- package/lib/Bubble/LiftedBubble.d.ts +18 -0
- package/lib/Bubble/LiftedBubble.d.ts.map +1 -0
- package/lib/Bubble/LiftedBubble.js +109 -0
- package/lib/Bubble/LiftedBubble.js.map +1 -0
- package/lib/Bubble/PressableBubbleRow.d.ts +33 -0
- package/lib/Bubble/PressableBubbleRow.d.ts.map +1 -0
- package/lib/Bubble/PressableBubbleRow.js +172 -0
- package/lib/Bubble/PressableBubbleRow.js.map +1 -0
- package/lib/Bubble/index.d.ts +6 -13
- package/lib/Bubble/index.d.ts.map +1 -1
- package/lib/Bubble/index.js +379 -509
- package/lib/Bubble/index.js.map +1 -1
- package/lib/Bubble/layout.d.ts +47 -0
- package/lib/Bubble/layout.d.ts.map +1 -0
- package/lib/Bubble/layout.js +258 -0
- package/lib/Bubble/layout.js.map +1 -0
- package/lib/Bubble/styles.d.ts +108 -16
- package/lib/Bubble/styles.d.ts.map +1 -1
- package/lib/Bubble/styles.js +227 -107
- package/lib/Bubble/styles.js.map +1 -1
- package/lib/Bubble/types.d.ts +19 -3
- package/lib/Bubble/types.d.ts.map +1 -1
- package/lib/Bubble/types.js.map +1 -1
- package/lib/Chat/Chat.d.ts +5 -0
- package/lib/Chat/Chat.d.ts.map +1 -0
- package/lib/Chat/Chat.js +464 -0
- package/lib/Chat/Chat.js.map +1 -0
- package/lib/Chat/ChatBackground.d.ts +16 -0
- package/lib/Chat/ChatBackground.d.ts.map +1 -0
- package/lib/Chat/ChatBackground.js +43 -0
- package/lib/Chat/ChatBackground.js.map +1 -0
- package/lib/Chat/ChatKeyboardAvoidingView.js +19 -4
- package/lib/Chat/ChatKeyboardAvoidingView.js.map +1 -1
- package/lib/Chat/ChatMessageList.d.ts +27 -0
- package/lib/Chat/ChatMessageList.d.ts.map +1 -0
- package/lib/Chat/ChatMessageList.js +220 -0
- package/lib/Chat/ChatMessageList.js.map +1 -0
- package/lib/Chat/ChatProviders.d.ts +18 -0
- package/lib/Chat/ChatProviders.d.ts.map +1 -0
- package/lib/Chat/ChatProviders.js +87 -0
- package/lib/Chat/ChatProviders.js.map +1 -0
- package/lib/Chat/ChatSafeAreaProvider.d.ts +35 -0
- package/lib/Chat/ChatSafeAreaProvider.d.ts.map +1 -0
- package/lib/Chat/ChatSafeAreaProvider.js +123 -0
- package/lib/Chat/ChatSafeAreaProvider.js.map +1 -0
- package/lib/Chat/ChatSelectionBar.d.ts +20 -0
- package/lib/Chat/ChatSelectionBar.d.ts.map +1 -0
- package/lib/Chat/ChatSelectionBar.js +141 -0
- package/lib/Chat/ChatSelectionBar.js.map +1 -0
- package/lib/Chat/ChatWrapper.d.ts +11 -0
- package/lib/Chat/ChatWrapper.d.ts.map +1 -0
- package/lib/Chat/ChatWrapper.js +98 -0
- package/lib/Chat/ChatWrapper.js.map +1 -0
- package/lib/Chat/ComposerHost.d.ts +20 -0
- package/lib/Chat/ComposerHost.d.ts.map +1 -0
- package/lib/Chat/ComposerHost.js +118 -0
- package/lib/Chat/ComposerHost.js.map +1 -0
- package/lib/Chat/index.d.ts +1 -8
- package/lib/Chat/index.d.ts.map +1 -1
- package/lib/Chat/index.js +1 -337
- package/lib/Chat/index.js.map +1 -1
- package/lib/Chat/styles.d.ts +14 -2
- package/lib/Chat/styles.d.ts.map +1 -1
- package/lib/Chat/styles.js +19 -9
- package/lib/Chat/styles.js.map +1 -1
- package/lib/Chat/types.d.ts +145 -11
- package/lib/Chat/types.d.ts.map +1 -1
- package/lib/Chat/types.js.map +1 -1
- package/lib/Chat/useChatContextValue.d.ts +19 -0
- package/lib/Chat/useChatContextValue.d.ts.map +1 -0
- package/lib/Chat/useChatContextValue.js +158 -0
- package/lib/Chat/useChatContextValue.js.map +1 -0
- package/lib/Chat/useChatMedia.d.ts +22 -0
- package/lib/Chat/useChatMedia.d.ts.map +1 -0
- package/lib/Chat/useChatMedia.js +127 -0
- package/lib/Chat/useChatMedia.js.map +1 -0
- package/lib/Chat/useChatSelection.d.ts +15 -0
- package/lib/Chat/useChatSelection.d.ts.map +1 -0
- package/lib/Chat/useChatSelection.js +106 -0
- package/lib/Chat/useChatSelection.js.map +1 -0
- package/lib/Chat/useComposerHandlers.d.ts +34 -0
- package/lib/Chat/useComposerHandlers.d.ts.map +1 -0
- package/lib/Chat/useComposerHandlers.js +330 -0
- package/lib/Chat/useComposerHandlers.js.map +1 -0
- package/lib/Chat/useComposerState.d.ts +27 -0
- package/lib/Chat/useComposerState.d.ts.map +1 -0
- package/lib/Chat/useComposerState.js +272 -0
- package/lib/Chat/useComposerState.js.map +1 -0
- package/lib/Chat/useInitialLayout.d.ts +19 -0
- package/lib/Chat/useInitialLayout.d.ts.map +1 -0
- package/lib/Chat/useInitialLayout.js +70 -0
- package/lib/Chat/useInitialLayout.js.map +1 -0
- package/lib/Chat/useMessageActions.d.ts +37 -0
- package/lib/Chat/useMessageActions.d.ts.map +1 -0
- package/lib/Chat/useMessageActions.js +323 -0
- package/lib/Chat/useMessageActions.js.map +1 -0
- package/lib/Chat/useMessageNavigation.d.ts +21 -0
- package/lib/Chat/useMessageNavigation.d.ts.map +1 -0
- package/lib/Chat/useMessageNavigation.js +149 -0
- package/lib/Chat/useMessageNavigation.js.map +1 -0
- package/lib/Chat/useOptionalPeerHints.d.ts +6 -0
- package/lib/Chat/useOptionalPeerHints.d.ts.map +1 -0
- package/lib/Chat/useOptionalPeerHints.js +63 -0
- package/lib/Chat/useOptionalPeerHints.js.map +1 -0
- package/lib/Chat/useResolvedReactions.d.ts +31 -0
- package/lib/Chat/useResolvedReactions.d.ts.map +1 -0
- package/lib/Chat/useResolvedReactions.js +95 -0
- package/lib/Chat/useResolvedReactions.js.map +1 -0
- package/lib/ChatAvatar.d.ts.map +1 -1
- package/lib/ChatAvatar.js +229 -84
- package/lib/ChatAvatar.js.map +1 -1
- package/lib/ChatContext.js +20 -10
- package/lib/ChatContext.js.map +1 -1
- package/lib/ChatList/ChatListAvatar.d.ts +21 -0
- package/lib/ChatList/ChatListAvatar.d.ts.map +1 -0
- package/lib/ChatList/ChatListAvatar.js +178 -0
- package/lib/ChatList/ChatListAvatar.js.map +1 -0
- package/lib/ChatList/ChatListCell.d.ts +16 -0
- package/lib/ChatList/ChatListCell.d.ts.map +1 -0
- package/lib/ChatList/ChatListCell.js +506 -0
- package/lib/ChatList/ChatListCell.js.map +1 -0
- package/lib/ChatList/ChatListShimmer.d.ts +3 -0
- package/lib/ChatList/ChatListShimmer.d.ts.map +1 -0
- package/lib/ChatList/ChatListShimmer.js +235 -0
- package/lib/ChatList/ChatListShimmer.js.map +1 -0
- package/lib/ChatList/index.d.ts +16 -0
- package/lib/ChatList/index.d.ts.map +1 -0
- package/lib/ChatList/index.js +1301 -0
- package/lib/ChatList/index.js.map +1 -0
- package/lib/ChatList/types.d.ts +128 -0
- package/lib/ChatList/types.d.ts.map +1 -0
- package/lib/ChatList/types.js +2 -0
- package/lib/ChatList/types.js.map +1 -0
- package/lib/ChatList/useChatList.d.ts +30 -0
- package/lib/ChatList/useChatList.d.ts.map +1 -0
- package/lib/ChatList/useChatList.js +211 -0
- package/lib/ChatList/useChatList.js.map +1 -0
- package/lib/ChatList/utils.d.ts +28 -0
- package/lib/ChatList/utils.d.ts.map +1 -0
- package/lib/ChatList/utils.js +60 -0
- package/lib/ChatList/utils.js.map +1 -0
- package/lib/Color.js +19 -19
- package/lib/Color.js.map +1 -1
- package/lib/Composer.d.ts.map +1 -1
- package/lib/Composer.js +148 -70
- package/lib/Composer.js.map +1 -1
- package/lib/Constant.js +4 -4
- package/lib/Constant.js.map +1 -1
- package/lib/Day/index.d.ts.map +1 -1
- package/lib/Day/index.js +115 -28
- package/lib/Day/index.js.map +1 -1
- package/lib/Day/styles.d.ts +3 -3
- package/lib/Day/styles.d.ts.map +1 -1
- package/lib/Day/styles.js +20 -17
- package/lib/Day/styles.js.map +1 -1
- package/lib/Day/types.js.map +1 -1
- package/lib/Icons.d.ts +1 -1
- package/lib/Icons.d.ts.map +1 -1
- package/lib/Icons.js.map +1 -1
- package/lib/InputToolbar/FieldGroup.d.ts +28 -0
- package/lib/InputToolbar/FieldGroup.d.ts.map +1 -0
- package/lib/InputToolbar/FieldGroup.js +143 -0
- package/lib/InputToolbar/FieldGroup.js.map +1 -0
- package/lib/InputToolbar/TakePreviewBar.d.ts +17 -0
- package/lib/InputToolbar/TakePreviewBar.d.ts.map +1 -0
- package/lib/InputToolbar/TakePreviewBar.js +126 -0
- package/lib/InputToolbar/TakePreviewBar.js.map +1 -0
- package/lib/InputToolbar/animations.d.ts +105 -0
- package/lib/InputToolbar/animations.d.ts.map +1 -0
- package/lib/InputToolbar/animations.js +238 -0
- package/lib/InputToolbar/animations.js.map +1 -0
- package/lib/InputToolbar/fragments.d.ts +13 -0
- package/lib/InputToolbar/fragments.d.ts.map +1 -0
- package/lib/InputToolbar/fragments.js +207 -0
- package/lib/InputToolbar/fragments.js.map +1 -0
- package/lib/InputToolbar/index.d.ts +7 -0
- package/lib/InputToolbar/index.d.ts.map +1 -0
- package/lib/InputToolbar/index.js +444 -0
- package/lib/InputToolbar/index.js.map +1 -0
- package/lib/InputToolbar/recordingOptions.d.ts +14 -0
- package/lib/InputToolbar/recordingOptions.d.ts.map +1 -0
- package/lib/InputToolbar/recordingOptions.js +38 -0
- package/lib/InputToolbar/recordingOptions.js.map +1 -0
- package/lib/InputToolbar/styles.d.ts +118 -0
- package/lib/InputToolbar/styles.d.ts.map +1 -0
- package/lib/InputToolbar/styles.js +139 -0
- package/lib/InputToolbar/styles.js.map +1 -0
- package/lib/InputToolbar/types.d.ts +77 -0
- package/lib/InputToolbar/types.d.ts.map +1 -0
- package/lib/InputToolbar/types.js +2 -0
- package/lib/InputToolbar/types.js.map +1 -0
- package/lib/InputToolbar/useActionsFragment.d.ts +6 -0
- package/lib/InputToolbar/useActionsFragment.d.ts.map +1 -0
- package/lib/InputToolbar/useActionsFragment.js +139 -0
- package/lib/InputToolbar/useActionsFragment.js.map +1 -0
- package/lib/InputToolbar/useComposerEditing.d.ts +11 -0
- package/lib/InputToolbar/useComposerEditing.d.ts.map +1 -0
- package/lib/InputToolbar/useComposerEditing.js +116 -0
- package/lib/InputToolbar/useComposerEditing.js.map +1 -0
- package/lib/InputToolbar/useEmojiButton.d.ts +14 -0
- package/lib/InputToolbar/useEmojiButton.d.ts.map +1 -0
- package/lib/InputToolbar/useEmojiButton.js +120 -0
- package/lib/InputToolbar/useEmojiButton.js.map +1 -0
- package/lib/InputToolbar/useKeyboardInset.d.ts +9 -0
- package/lib/InputToolbar/useKeyboardInset.d.ts.map +1 -0
- package/lib/InputToolbar/useKeyboardInset.js +25 -0
- package/lib/InputToolbar/useKeyboardInset.js.map +1 -0
- package/lib/InputToolbar/useRecordMode.d.ts +19 -0
- package/lib/InputToolbar/useRecordMode.d.ts.map +1 -0
- package/lib/InputToolbar/useRecordMode.js +124 -0
- package/lib/InputToolbar/useRecordMode.js.map +1 -0
- package/lib/InputToolbar/useRecordTake.d.ts +46 -0
- package/lib/InputToolbar/useRecordTake.d.ts.map +1 -0
- package/lib/InputToolbar/useRecordTake.js +315 -0
- package/lib/InputToolbar/useRecordTake.js.map +1 -0
- package/lib/InputToolbar/useReturnAnimations.d.ts +18 -0
- package/lib/InputToolbar/useReturnAnimations.d.ts.map +1 -0
- package/lib/InputToolbar/useReturnAnimations.js +30 -0
- package/lib/InputToolbar/useReturnAnimations.js.map +1 -0
- package/lib/InputToolbar/useRightControl.d.ts +40 -0
- package/lib/InputToolbar/useRightControl.d.ts.map +1 -0
- package/lib/InputToolbar/useRightControl.js +129 -0
- package/lib/InputToolbar/useRightControl.js.map +1 -0
- package/lib/LoadEarlierMessages.d.ts +2 -0
- package/lib/LoadEarlierMessages.d.ts.map +1 -1
- package/lib/LoadEarlierMessages.js +153 -40
- package/lib/LoadEarlierMessages.js.map +1 -1
- package/lib/Message/SwipeToReply.d.ts +23 -0
- package/lib/Message/SwipeToReply.d.ts.map +1 -0
- package/lib/Message/SwipeToReply.js +337 -0
- package/lib/Message/SwipeToReply.js.map +1 -0
- package/lib/Message/index.d.ts.map +1 -1
- package/lib/Message/index.js +415 -176
- package/lib/Message/index.js.map +1 -1
- package/lib/Message/styles.d.ts +2 -2
- package/lib/Message/styles.js +14 -14
- package/lib/Message/styles.js.map +1 -1
- package/lib/Message/types.d.ts +5 -0
- package/lib/Message/types.d.ts.map +1 -1
- package/lib/Message/types.js.map +1 -1
- package/lib/MessageAudio.d.ts.map +1 -1
- package/lib/MessageAudio.js +647 -107
- package/lib/MessageAudio.js.map +1 -1
- package/lib/MessageFile.d.ts +11 -0
- package/lib/MessageFile.d.ts.map +1 -0
- package/lib/MessageFile.js +315 -0
- package/lib/MessageFile.js.map +1 -0
- package/lib/MessageImage.d.ts +2 -0
- package/lib/MessageImage.d.ts.map +1 -1
- package/lib/MessageImage.js +430 -161
- package/lib/MessageImage.js.map +1 -1
- package/lib/MessageLocation.d.ts.map +1 -1
- package/lib/MessageLocation.js +180 -68
- package/lib/MessageLocation.js.map +1 -1
- package/lib/MessageText.d.ts +8 -1
- package/lib/MessageText.d.ts.map +1 -1
- package/lib/MessageText.js +261 -69
- package/lib/MessageText.js.map +1 -1
- package/lib/MessageVideo/ExpoVideoPlayer.d.ts +6 -0
- package/lib/MessageVideo/ExpoVideoPlayer.d.ts.map +1 -0
- package/lib/MessageVideo/ExpoVideoPlayer.js +68 -0
- package/lib/MessageVideo/ExpoVideoPlayer.js.map +1 -0
- package/lib/MessageVideo/MirroredVideo.d.ts +17 -0
- package/lib/MessageVideo/MirroredVideo.d.ts.map +1 -0
- package/lib/MessageVideo/MirroredVideo.js +223 -0
- package/lib/MessageVideo/MirroredVideo.js.map +1 -0
- package/lib/MessageVideo/RoundNotePlayer.d.ts +4 -0
- package/lib/MessageVideo/RoundNotePlayer.d.ts.map +1 -0
- package/lib/MessageVideo/RoundNotePlayer.js +560 -0
- package/lib/MessageVideo/RoundNotePlayer.js.map +1 -0
- package/lib/MessageVideo/RoundTranscription.d.ts +27 -0
- package/lib/MessageVideo/RoundTranscription.d.ts.map +1 -0
- package/lib/MessageVideo/RoundTranscription.js +151 -0
- package/lib/MessageVideo/RoundTranscription.js.map +1 -0
- package/lib/MessageVideo/VideoTransferOverlay.d.ts +11 -0
- package/lib/MessageVideo/VideoTransferOverlay.d.ts.map +1 -0
- package/lib/MessageVideo/VideoTransferOverlay.js +88 -0
- package/lib/MessageVideo/VideoTransferOverlay.js.map +1 -0
- package/lib/MessageVideo/constants.d.ts +13 -0
- package/lib/MessageVideo/constants.d.ts.map +1 -0
- package/lib/MessageVideo/constants.js +15 -0
- package/lib/MessageVideo/constants.js.map +1 -0
- package/lib/{MessageVideo.d.ts → MessageVideo/index.d.ts} +2 -2
- package/lib/MessageVideo/index.d.ts.map +1 -0
- package/lib/MessageVideo/index.js +92 -0
- package/lib/MessageVideo/index.js.map +1 -0
- package/lib/MessageVideo/liftedMedia.d.ts +13 -0
- package/lib/MessageVideo/liftedMedia.d.ts.map +1 -0
- package/lib/MessageVideo/liftedMedia.js +106 -0
- package/lib/MessageVideo/liftedMedia.js.map +1 -0
- package/lib/MessageVideo/styles.d.ts +71 -0
- package/lib/MessageVideo/styles.d.ts.map +1 -0
- package/lib/MessageVideo/styles.js +78 -0
- package/lib/MessageVideo/styles.js.map +1 -0
- package/lib/MessageVideo/types.d.ts +27 -0
- package/lib/MessageVideo/types.d.ts.map +1 -0
- package/lib/MessageVideo/types.js +2 -0
- package/lib/MessageVideo/types.js.map +1 -0
- package/lib/MessageVideo/useNoteGrow.d.ts +16 -0
- package/lib/MessageVideo/useNoteGrow.d.ts.map +1 -0
- package/lib/MessageVideo/useNoteGrow.js +122 -0
- package/lib/MessageVideo/useNoteGrow.js.map +1 -0
- package/lib/MessageVideo/useNotePlayer.d.ts +14 -0
- package/lib/MessageVideo/useNotePlayer.d.ts.map +1 -0
- package/lib/MessageVideo/useNotePlayer.js +142 -0
- package/lib/MessageVideo/useNotePlayer.js.map +1 -0
- package/lib/MessageVideo/useRingSeek.d.ts +16 -0
- package/lib/MessageVideo/useRingSeek.d.ts.map +1 -0
- package/lib/MessageVideo/useRingSeek.js +157 -0
- package/lib/MessageVideo/useRingSeek.js.map +1 -0
- package/lib/MessageVideo/useRoundNotePlayback.d.ts +46 -0
- package/lib/MessageVideo/useRoundNotePlayback.d.ts.map +1 -0
- package/lib/MessageVideo/useRoundNotePlayback.js +508 -0
- package/lib/MessageVideo/useRoundNotePlayback.js.map +1 -0
- package/lib/MessageVideo/useSendFlightReveal.d.ts +9 -0
- package/lib/MessageVideo/useSendFlightReveal.d.ts.map +1 -0
- package/lib/MessageVideo/useSendFlightReveal.js +85 -0
- package/lib/MessageVideo/useSendFlightReveal.js.map +1 -0
- package/lib/MessageVideo/videoPlayers.d.ts +8 -0
- package/lib/MessageVideo/videoPlayers.d.ts.map +1 -0
- package/lib/MessageVideo/videoPlayers.js +33 -0
- package/lib/MessageVideo/videoPlayers.js.map +1 -0
- package/lib/MessagesContainer/components/DayAnimated/debug.js +38 -24
- package/lib/MessagesContainer/components/DayAnimated/debug.js.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/index.d.ts +1 -1
- package/lib/MessagesContainer/components/DayAnimated/index.d.ts.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/index.js +244 -112
- package/lib/MessagesContainer/components/DayAnimated/index.js.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/styles.d.ts +3 -3
- package/lib/MessagesContainer/components/DayAnimated/styles.js +8 -8
- package/lib/MessagesContainer/components/DayAnimated/styles.js.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/types.d.ts +4 -2
- package/lib/MessagesContainer/components/DayAnimated/types.d.ts.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/types.js.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.d.ts.map +1 -1
- package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js +34 -25
- package/lib/MessagesContainer/components/DayAnimated/useScrollGatedOpacity.js.map +1 -1
- package/lib/MessagesContainer/components/Item/index.d.ts +3 -4
- package/lib/MessagesContainer/components/Item/index.d.ts.map +1 -1
- package/lib/MessagesContainer/components/Item/index.js +289 -119
- package/lib/MessagesContainer/components/Item/index.js.map +1 -1
- package/lib/MessagesContainer/components/Item/types.d.ts +5 -0
- package/lib/MessagesContainer/components/Item/types.d.ts.map +1 -1
- package/lib/MessagesContainer/components/Item/types.js.map +1 -1
- package/lib/MessagesContainer/components/PageDownCounter.d.ts +14 -0
- package/lib/MessagesContainer/components/PageDownCounter.d.ts.map +1 -0
- package/lib/MessagesContainer/components/PageDownCounter.js +209 -0
- package/lib/MessagesContainer/components/PageDownCounter.js.map +1 -0
- package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts +21 -0
- package/lib/MessagesContainer/components/ScrollToBottomButton.d.ts.map +1 -0
- package/lib/MessagesContainer/components/ScrollToBottomButton.js +195 -0
- package/lib/MessagesContainer/components/ScrollToBottomButton.js.map +1 -0
- package/lib/MessagesContainer/components/dayLayout.d.ts +2 -2
- package/lib/MessagesContainer/components/dayLayout.d.ts.map +1 -1
- package/lib/MessagesContainer/components/dayLayout.js +18 -13
- package/lib/MessagesContainer/components/dayLayout.js.map +1 -1
- package/lib/MessagesContainer/index.d.ts.map +1 -1
- package/lib/MessagesContainer/index.js +361 -420
- package/lib/MessagesContainer/index.js.map +1 -1
- package/lib/MessagesContainer/listState.d.ts +18 -0
- package/lib/MessagesContainer/listState.d.ts.map +1 -0
- package/lib/MessagesContainer/listState.js +25 -0
- package/lib/MessagesContainer/listState.js.map +1 -0
- package/lib/MessagesContainer/listTransitions.d.ts +10 -0
- package/lib/MessagesContainer/listTransitions.d.ts.map +1 -0
- package/lib/MessagesContainer/listTransitions.js +12 -0
- package/lib/MessagesContainer/listTransitions.js.map +1 -0
- package/lib/MessagesContainer/pageDownReturn.d.ts +11 -0
- package/lib/MessagesContainer/pageDownReturn.d.ts.map +1 -0
- package/lib/MessagesContainer/pageDownReturn.js +9 -0
- package/lib/MessagesContainer/pageDownReturn.js.map +1 -0
- package/lib/MessagesContainer/rowConfig.d.ts +39 -0
- package/lib/MessagesContainer/rowConfig.d.ts.map +1 -0
- package/lib/MessagesContainer/rowConfig.js +161 -0
- package/lib/MessagesContainer/rowConfig.js.map +1 -0
- package/lib/MessagesContainer/rowStore.d.ts +37 -0
- package/lib/MessagesContainer/rowStore.d.ts.map +1 -0
- package/lib/MessagesContainer/rowStore.js +140 -0
- package/lib/MessagesContainer/rowStore.js.map +1 -0
- package/lib/MessagesContainer/styles.d.ts +37 -31
- package/lib/MessagesContainer/styles.d.ts.map +1 -1
- package/lib/MessagesContainer/styles.js +75 -54
- package/lib/MessagesContainer/styles.js.map +1 -1
- package/lib/MessagesContainer/types.d.ts +33 -30
- package/lib/MessagesContainer/types.d.ts.map +1 -1
- package/lib/MessagesContainer/types.js +1 -9
- package/lib/MessagesContainer/types.js.map +1 -1
- package/lib/MessagesContainer/useCellLayouts.d.ts +17 -0
- package/lib/MessagesContainer/useCellLayouts.d.ts.map +1 -0
- package/lib/MessagesContainer/useCellLayouts.js +133 -0
- package/lib/MessagesContainer/useCellLayouts.js.map +1 -0
- package/lib/MessagesContainer/useDaysPositions.d.ts +18 -0
- package/lib/MessagesContainer/useDaysPositions.d.ts.map +1 -0
- package/lib/MessagesContainer/useDaysPositions.js +109 -0
- package/lib/MessagesContainer/useDaysPositions.js.map +1 -0
- package/lib/MessagesContainer/useListChrome.d.ts +14 -0
- package/lib/MessagesContainer/useListChrome.d.ts.map +1 -0
- package/lib/MessagesContainer/useListChrome.js +176 -0
- package/lib/MessagesContainer/useListChrome.js.map +1 -0
- package/lib/MessagesContainer/useListMetrics.d.ts +32 -0
- package/lib/MessagesContainer/useListMetrics.d.ts.map +1 -0
- package/lib/MessagesContainer/useListMetrics.js +176 -0
- package/lib/MessagesContainer/useListMetrics.js.map +1 -0
- package/lib/MessagesContainer/useMessageRows.d.ts +46 -0
- package/lib/MessagesContainer/useMessageRows.d.ts.map +1 -0
- package/lib/MessagesContainer/useMessageRows.js +228 -0
- package/lib/MessagesContainer/useMessageRows.js.map +1 -0
- package/lib/MessagesContainer/usePageDownUnread.d.ts +27 -0
- package/lib/MessagesContainer/usePageDownUnread.d.ts.map +1 -0
- package/lib/MessagesContainer/usePageDownUnread.js +152 -0
- package/lib/MessagesContainer/usePageDownUnread.js.map +1 -0
- package/lib/MessagesContainer/useScrollActivity.d.ts +13 -0
- package/lib/MessagesContainer/useScrollActivity.d.ts.map +1 -0
- package/lib/MessagesContainer/useScrollActivity.js +84 -0
- package/lib/MessagesContainer/useScrollActivity.js.map +1 -0
- package/lib/MessagesContainer/useScrollToBottom.d.ts +26 -0
- package/lib/MessagesContainer/useScrollToBottom.d.ts.map +1 -0
- package/lib/MessagesContainer/useScrollToBottom.js +164 -0
- package/lib/MessagesContainer/useScrollToBottom.js.map +1 -0
- package/lib/MessagesContainer/useTapToClosePanels.d.ts +7 -0
- package/lib/MessagesContainer/useTapToClosePanels.d.ts.map +1 -0
- package/lib/MessagesContainer/useTapToClosePanels.js +55 -0
- package/lib/MessagesContainer/useTapToClosePanels.js.map +1 -0
- package/lib/MessagesContainer/viewability.d.ts +9 -0
- package/lib/MessagesContainer/viewability.d.ts.map +1 -0
- package/lib/MessagesContainer/viewability.js +110 -0
- package/lib/MessagesContainer/viewability.js.map +1 -0
- package/lib/Models.d.ts +188 -3
- package/lib/Models.d.ts.map +1 -1
- package/lib/Models.js.map +1 -1
- package/lib/QuickReplies.js +234 -101
- package/lib/QuickReplies.js.map +1 -1
- package/lib/Reactions/MessageReactions.d.ts +5 -0
- package/lib/Reactions/MessageReactions.d.ts.map +1 -1
- package/lib/Reactions/MessageReactions.js +359 -80
- package/lib/Reactions/MessageReactions.js.map +1 -1
- package/lib/Reactions/ReactionPicker.d.ts +5 -3
- package/lib/Reactions/ReactionPicker.d.ts.map +1 -1
- package/lib/Reactions/ReactionPicker.js +68 -82
- package/lib/Reactions/ReactionPicker.js.map +1 -1
- package/lib/Reactions/index.js +1 -0
- package/lib/Reactions/index.js.map +1 -1
- package/lib/Reactions/types.d.ts +49 -5
- package/lib/Reactions/types.d.ts.map +1 -1
- package/lib/Reactions/types.js.map +1 -1
- package/lib/Reply/index.js.map +1 -1
- package/lib/Reply/types.d.ts +19 -3
- package/lib/Reply/types.d.ts.map +1 -1
- package/lib/Reply/types.js.map +1 -1
- package/lib/Send.d.ts +2 -2
- package/lib/Send.d.ts.map +1 -1
- package/lib/Send.js +218 -47
- package/lib/Send.js.map +1 -1
- package/lib/SystemMessage.d.ts.map +1 -1
- package/lib/SystemMessage.js +106 -37
- package/lib/SystemMessage.js.map +1 -1
- package/lib/Theme.d.ts +320 -23
- package/lib/Theme.d.ts.map +1 -1
- package/lib/Theme.js +548 -119
- package/lib/Theme.js.map +1 -1
- package/lib/Time.d.ts +7 -0
- package/lib/Time.d.ts.map +1 -1
- package/lib/Time.js +122 -30
- package/lib/Time.js.map +1 -1
- package/lib/TypingIndicator/index.d.ts +9 -1
- package/lib/TypingIndicator/index.d.ts.map +1 -1
- package/lib/TypingIndicator/index.js +318 -94
- package/lib/TypingIndicator/index.js.map +1 -1
- package/lib/TypingIndicator/styles.d.ts +6 -2
- package/lib/TypingIndicator/styles.d.ts.map +1 -1
- package/lib/TypingIndicator/styles.js +22 -18
- package/lib/TypingIndicator/styles.js.map +1 -1
- package/lib/TypingIndicator/types.js.map +1 -1
- package/lib/attachments/AttachmentButton.d.ts +18 -0
- package/lib/attachments/AttachmentButton.d.ts.map +1 -0
- package/lib/attachments/AttachmentButton.js +110 -0
- package/lib/attachments/AttachmentButton.js.map +1 -0
- package/lib/attachments/AttachmentMenu/CaptionBar.d.ts +15 -0
- package/lib/attachments/AttachmentMenu/CaptionBar.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/CaptionBar.js +165 -0
- package/lib/attachments/AttachmentMenu/CaptionBar.js.map +1 -0
- package/lib/attachments/AttachmentMenu/GalleryCell.d.ts +14 -0
- package/lib/attachments/AttachmentMenu/GalleryCell.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/GalleryCell.js +267 -0
- package/lib/attachments/AttachmentMenu/GalleryCell.js.map +1 -0
- package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts +18 -0
- package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/GalleryGrid.js +184 -0
- package/lib/attachments/AttachmentMenu/GalleryGrid.js.map +1 -0
- package/lib/attachments/AttachmentMenu/TabBar.d.ts +14 -0
- package/lib/attachments/AttachmentMenu/TabBar.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/TabBar.js +127 -0
- package/lib/attachments/AttachmentMenu/TabBar.js.map +1 -0
- package/lib/attachments/AttachmentMenu/TabButton.d.ts +15 -0
- package/lib/attachments/AttachmentMenu/TabButton.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/TabButton.js +219 -0
- package/lib/attachments/AttachmentMenu/TabButton.js.map +1 -0
- package/lib/attachments/AttachmentMenu/TabPanel.d.ts +17 -0
- package/lib/attachments/AttachmentMenu/TabPanel.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/TabPanel.js +170 -0
- package/lib/attachments/AttachmentMenu/TabPanel.js.map +1 -0
- package/lib/attachments/AttachmentMenu/constants.d.ts +54 -0
- package/lib/attachments/AttachmentMenu/constants.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/constants.js +79 -0
- package/lib/attachments/AttachmentMenu/constants.js.map +1 -0
- package/lib/attachments/AttachmentMenu/index.d.ts +16 -0
- package/lib/attachments/AttachmentMenu/index.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/index.js +498 -0
- package/lib/attachments/AttachmentMenu/index.js.map +1 -0
- package/lib/attachments/AttachmentMenu/styles.d.ts +259 -0
- package/lib/attachments/AttachmentMenu/styles.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/styles.js +262 -0
- package/lib/attachments/AttachmentMenu/styles.js.map +1 -0
- package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts +14 -0
- package/lib/attachments/AttachmentMenu/useSheetPresence.d.ts.map +1 -0
- package/lib/attachments/AttachmentMenu/useSheetPresence.js +74 -0
- package/lib/attachments/AttachmentMenu/useSheetPresence.js.map +1 -0
- package/lib/attachments/buildMessages.d.ts +36 -0
- package/lib/attachments/buildMessages.d.ts.map +1 -0
- package/lib/attachments/buildMessages.js +192 -0
- package/lib/attachments/buildMessages.js.map +1 -0
- package/lib/attachments/gallery.d.ts +28 -0
- package/lib/attachments/gallery.d.ts.map +1 -0
- package/lib/attachments/gallery.js +245 -0
- package/lib/attachments/gallery.js.map +1 -0
- package/lib/attachments/types.d.ts +69 -0
- package/lib/attachments/types.d.ts.map +1 -0
- package/lib/attachments/types.js +2 -0
- package/lib/attachments/types.js.map +1 -0
- package/lib/colorUtils.d.ts +24 -0
- package/lib/colorUtils.d.ts.map +1 -0
- package/lib/colorUtils.js +71 -0
- package/lib/colorUtils.js.map +1 -0
- package/lib/components/AttachmentSheet.d.ts +1 -1
- package/lib/components/AttachmentSheet.d.ts.map +1 -1
- package/lib/components/AttachmentSheet.js +515 -155
- package/lib/components/AttachmentSheet.js.map +1 -1
- package/lib/components/BasicMarkdown.d.ts +7 -1
- package/lib/components/BasicMarkdown.d.ts.map +1 -1
- package/lib/components/BasicMarkdown.js +234 -184
- package/lib/components/BasicMarkdown.js.map +1 -1
- package/lib/components/BubbleBackground.d.ts +55 -0
- package/lib/components/BubbleBackground.d.ts.map +1 -0
- package/lib/components/BubbleBackground.js +513 -0
- package/lib/components/BubbleBackground.js.map +1 -0
- package/lib/components/ChatEmpty.d.ts +18 -0
- package/lib/components/ChatEmpty.d.ts.map +1 -0
- package/lib/components/ChatEmpty.js +125 -0
- package/lib/components/ChatEmpty.js.map +1 -0
- package/lib/components/ChatLoadingOverlay.d.ts +10 -0
- package/lib/components/ChatLoadingOverlay.d.ts.map +1 -0
- package/lib/components/ChatLoadingOverlay.js +89 -0
- package/lib/components/ChatLoadingOverlay.js.map +1 -0
- package/lib/components/ChatOverlay.d.ts +9 -0
- package/lib/components/ChatOverlay.d.ts.map +1 -0
- package/lib/components/ChatOverlay.js +60 -0
- package/lib/components/ChatOverlay.js.map +1 -0
- package/lib/components/ChatWallpaper.d.ts +32 -0
- package/lib/components/ChatWallpaper.d.ts.map +1 -0
- package/lib/components/ChatWallpaper.js +277 -0
- package/lib/components/ChatWallpaper.js.map +1 -0
- package/lib/components/ContextMenu/MenuCard.d.ts +21 -0
- package/lib/components/ContextMenu/MenuCard.d.ts.map +1 -0
- package/lib/components/ContextMenu/MenuCard.js +265 -0
- package/lib/components/ContextMenu/MenuCard.js.map +1 -0
- package/lib/components/ContextMenu/ReactionButton.d.ts +15 -0
- package/lib/components/ContextMenu/ReactionButton.d.ts.map +1 -0
- package/lib/components/ContextMenu/ReactionButton.js +116 -0
- package/lib/components/ContextMenu/ReactionButton.js.map +1 -0
- package/lib/components/ContextMenu/ReactionFlight.d.ts +14 -0
- package/lib/components/ContextMenu/ReactionFlight.d.ts.map +1 -0
- package/lib/components/ContextMenu/ReactionFlight.js +111 -0
- package/lib/components/ContextMenu/ReactionFlight.js.map +1 -0
- package/lib/components/ContextMenu/ReactionsBar.d.ts +35 -0
- package/lib/components/ContextMenu/ReactionsBar.d.ts.map +1 -0
- package/lib/components/ContextMenu/ReactionsBar.js +354 -0
- package/lib/components/ContextMenu/ReactionsBar.js.map +1 -0
- package/lib/components/ContextMenu/constants.d.ts +68 -0
- package/lib/components/ContextMenu/constants.d.ts.map +1 -0
- package/lib/components/ContextMenu/constants.js +105 -0
- package/lib/components/ContextMenu/constants.js.map +1 -0
- package/lib/components/ContextMenu/index.d.ts +12 -0
- package/lib/components/ContextMenu/index.d.ts.map +1 -0
- package/lib/components/ContextMenu/index.js +476 -0
- package/lib/components/ContextMenu/index.js.map +1 -0
- package/lib/components/ContextMenu/placement.d.ts +50 -0
- package/lib/components/ContextMenu/placement.d.ts.map +1 -0
- package/lib/components/ContextMenu/placement.js +117 -0
- package/lib/components/ContextMenu/placement.js.map +1 -0
- package/lib/components/ContextMenu/styles.d.ts +199 -0
- package/lib/components/ContextMenu/styles.d.ts.map +1 -0
- package/lib/components/ContextMenu/styles.js +169 -0
- package/lib/components/ContextMenu/styles.js.map +1 -0
- package/lib/components/ContextMenu/types.d.ts +62 -0
- package/lib/components/ContextMenu/types.d.ts.map +1 -0
- package/lib/components/ContextMenu/types.js +2 -0
- package/lib/components/ContextMenu/types.js.map +1 -0
- package/lib/components/ContextMenu/useExpandPanel.d.ts +11 -0
- package/lib/components/ContextMenu/useExpandPanel.d.ts.map +1 -0
- package/lib/components/ContextMenu/useExpandPanel.js +81 -0
- package/lib/components/ContextMenu/useExpandPanel.js.map +1 -0
- package/lib/components/ContextMenu/useMenuPresence.d.ts +17 -0
- package/lib/components/ContextMenu/useMenuPresence.d.ts.map +1 -0
- package/lib/components/ContextMenu/useMenuPresence.js +125 -0
- package/lib/components/ContextMenu/useMenuPresence.js.map +1 -0
- package/lib/components/FloatingRoundNote.d.ts +13 -0
- package/lib/components/FloatingRoundNote.d.ts.map +1 -0
- package/lib/components/FloatingRoundNote.js +541 -0
- package/lib/components/FloatingRoundNote.js.map +1 -0
- package/lib/components/GlassSurface.d.ts +16 -0
- package/lib/components/GlassSurface.d.ts.map +1 -0
- package/lib/components/GlassSurface.js +114 -0
- package/lib/components/GlassSurface.js.map +1 -0
- package/lib/components/Icon.js +57 -8
- package/lib/components/Icon.js.map +1 -1
- package/lib/components/LinkPreviewCard.d.ts +36 -0
- package/lib/components/LinkPreviewCard.d.ts.map +1 -0
- package/lib/components/LinkPreviewCard.js +416 -0
- package/lib/components/LinkPreviewCard.js.map +1 -0
- package/lib/components/LucideIcon.d.ts.map +1 -1
- package/lib/components/LucideIcon.js +103 -106
- package/lib/components/LucideIcon.js.map +1 -1
- package/lib/components/MarkdownMessageText.d.ts +17 -2
- package/lib/components/MarkdownMessageText.d.ts.map +1 -1
- package/lib/components/MarkdownMessageText.js +270 -22
- package/lib/components/MarkdownMessageText.js.map +1 -1
- package/lib/components/MediaCard.d.ts.map +1 -1
- package/lib/components/MediaCard.js +223 -85
- package/lib/components/MediaCard.js.map +1 -1
- package/lib/components/MediaControls.js +1094 -450
- package/lib/components/MediaControls.js.map +1 -1
- package/lib/components/MediaLoader.d.ts +21 -0
- package/lib/components/MediaLoader.d.ts.map +1 -0
- package/lib/components/MediaLoader.js +61 -0
- package/lib/components/MediaLoader.js.map +1 -0
- package/lib/components/MessageReply.d.ts +2 -2
- package/lib/components/MessageReply.d.ts.map +1 -1
- package/lib/components/MessageReply.js +266 -83
- package/lib/components/MessageReply.js.map +1 -1
- package/lib/components/MessageStatus.d.ts +23 -0
- package/lib/components/MessageStatus.d.ts.map +1 -0
- package/lib/components/MessageStatus.js +499 -0
- package/lib/components/MessageStatus.js.map +1 -0
- package/lib/components/NoteIndicators.d.ts +25 -0
- package/lib/components/NoteIndicators.d.ts.map +1 -0
- package/lib/components/NoteIndicators.js +206 -0
- package/lib/components/NoteIndicators.js.map +1 -0
- package/lib/components/NowPlayingBar.d.ts +15 -0
- package/lib/components/NowPlayingBar.d.ts.map +1 -0
- package/lib/components/NowPlayingBar.js +261 -0
- package/lib/components/NowPlayingBar.js.map +1 -0
- package/lib/components/PlayPauseIcon.d.ts +13 -0
- package/lib/components/PlayPauseIcon.d.ts.map +1 -0
- package/lib/components/PlayPauseIcon.js +187 -0
- package/lib/components/PlayPauseIcon.js.map +1 -0
- package/lib/components/PlaybackSpeedPill.d.ts +11 -0
- package/lib/components/PlaybackSpeedPill.d.ts.map +1 -0
- package/lib/components/PlaybackSpeedPill.js +350 -0
- package/lib/components/PlaybackSpeedPill.js.map +1 -0
- package/lib/components/RadialProgress.d.ts +70 -0
- package/lib/components/RadialProgress.d.ts.map +1 -0
- package/lib/components/RadialProgress.js +864 -0
- package/lib/components/RadialProgress.js.map +1 -0
- package/lib/components/RecordButton/LockPill.d.ts +27 -0
- package/lib/components/RecordButton/LockPill.d.ts.map +1 -0
- package/lib/components/RecordButton/LockPill.js +182 -0
- package/lib/components/RecordButton/LockPill.js.map +1 -0
- package/lib/components/RecordButton/ModeButton.d.ts +18 -0
- package/lib/components/RecordButton/ModeButton.d.ts.map +1 -0
- package/lib/components/RecordButton/ModeButton.js +154 -0
- package/lib/components/RecordButton/ModeButton.js.map +1 -0
- package/lib/components/RecordButton/ResumeButton.d.ts +20 -0
- package/lib/components/RecordButton/ResumeButton.d.ts.map +1 -0
- package/lib/components/RecordButton/ResumeButton.js +63 -0
- package/lib/components/RecordButton/ResumeButton.js.map +1 -0
- package/lib/components/RecordButton/Tooltips.d.ts +20 -0
- package/lib/components/RecordButton/Tooltips.d.ts.map +1 -0
- package/lib/components/RecordButton/Tooltips.js +191 -0
- package/lib/components/RecordButton/Tooltips.js.map +1 -0
- package/lib/components/RecordButton/ViewOnceButton.d.ts +16 -0
- package/lib/components/RecordButton/ViewOnceButton.d.ts.map +1 -0
- package/lib/components/RecordButton/ViewOnceButton.js +96 -0
- package/lib/components/RecordButton/ViewOnceButton.js.map +1 -0
- package/lib/components/RecordButton/constants.d.ts +52 -0
- package/lib/components/RecordButton/constants.d.ts.map +1 -0
- package/lib/components/RecordButton/constants.js +58 -0
- package/lib/components/RecordButton/constants.js.map +1 -0
- package/lib/components/RecordButton/index.d.ts +14 -0
- package/lib/components/RecordButton/index.d.ts.map +1 -0
- package/lib/components/RecordButton/index.js +382 -0
- package/lib/components/RecordButton/index.js.map +1 -0
- package/lib/components/RecordButton/styles.d.ts +155 -0
- package/lib/components/RecordButton/styles.d.ts.map +1 -0
- package/lib/components/RecordButton/styles.js +161 -0
- package/lib/components/RecordButton/styles.js.map +1 -0
- package/lib/components/RecordButton/types.d.ts +63 -0
- package/lib/components/RecordButton/types.d.ts.map +1 -0
- package/lib/components/RecordButton/types.js +2 -0
- package/lib/components/RecordButton/types.js.map +1 -0
- package/lib/components/RecordButton/useRecordGesture.d.ts +28 -0
- package/lib/components/RecordButton/useRecordGesture.d.ts.map +1 -0
- package/lib/components/RecordButton/useRecordGesture.js +263 -0
- package/lib/components/RecordButton/useRecordGesture.js.map +1 -0
- package/lib/components/RecordButton/useRecordHints.d.ts +27 -0
- package/lib/components/RecordButton/useRecordHints.d.ts.map +1 -0
- package/lib/components/RecordButton/useRecordHints.js +210 -0
- package/lib/components/RecordButton/useRecordHints.js.map +1 -0
- package/lib/components/RecordButton/useRecordSlideDistance.d.ts +3 -0
- package/lib/components/RecordButton/useRecordSlideDistance.d.ts.map +1 -0
- package/lib/components/RecordButton/useRecordSlideDistance.js +15 -0
- package/lib/components/RecordButton/useRecordSlideDistance.js.map +1 -0
- package/lib/components/RecordButton/useRecordTake.d.ts +41 -0
- package/lib/components/RecordButton/useRecordTake.d.ts.map +1 -0
- package/lib/components/RecordButton/useRecordTake.js +349 -0
- package/lib/components/RecordButton/useRecordTake.js.map +1 -0
- package/lib/components/RecordButton/useSendFlight.d.ts +25 -0
- package/lib/components/RecordButton/useSendFlight.d.ts.map +1 -0
- package/lib/components/RecordButton/useSendFlight.js +162 -0
- package/lib/components/RecordButton/useSendFlight.js.map +1 -0
- package/lib/components/RecordCircle.d.ts +92 -0
- package/lib/components/RecordCircle.d.ts.map +1 -0
- package/lib/components/RecordCircle.js +629 -0
- package/lib/components/RecordCircle.js.map +1 -0
- package/lib/components/RecordingBar.d.ts +24 -0
- package/lib/components/RecordingBar.d.ts.map +1 -0
- package/lib/components/RecordingBar.js +766 -0
- package/lib/components/RecordingBar.js.map +1 -0
- package/lib/components/ReplyPreview.js +318 -135
- package/lib/components/ReplyPreview.js.map +1 -1
- package/lib/components/SelectionBar.d.ts +17 -0
- package/lib/components/SelectionBar.d.ts.map +1 -0
- package/lib/components/SelectionBar.js +214 -0
- package/lib/components/SelectionBar.js.map +1 -0
- package/lib/components/SelectionCheckbox.d.ts +12 -0
- package/lib/components/SelectionCheckbox.d.ts.map +1 -0
- package/lib/components/SelectionCheckbox.js +104 -0
- package/lib/components/SelectionCheckbox.js.map +1 -0
- package/lib/components/SendIcon.js +60 -26
- package/lib/components/SendIcon.js.map +1 -1
- package/lib/components/ServiceSpinner.d.ts +17 -0
- package/lib/components/ServiceSpinner.d.ts.map +1 -0
- package/lib/components/ServiceSpinner.js +77 -0
- package/lib/components/ServiceSpinner.js.map +1 -0
- package/lib/components/Spinner.d.ts +18 -0
- package/lib/components/Spinner.d.ts.map +1 -0
- package/lib/components/Spinner.js +169 -0
- package/lib/components/Spinner.js.map +1 -0
- package/lib/components/StreamingCursor.js +54 -9
- package/lib/components/StreamingCursor.js.map +1 -1
- package/lib/components/Ticks.d.ts +6 -5
- package/lib/components/Ticks.d.ts.map +1 -1
- package/lib/components/Ticks.js +272 -82
- package/lib/components/Ticks.js.map +1 -1
- package/lib/components/TouchableOpacity.d.ts.map +1 -1
- package/lib/components/TouchableOpacity.js +153 -51
- package/lib/components/TouchableOpacity.js.map +1 -1
- package/lib/components/TranscribeButton.d.ts +45 -0
- package/lib/components/TranscribeButton.d.ts.map +1 -0
- package/lib/components/TranscribeButton.js +549 -0
- package/lib/components/TranscribeButton.js.map +1 -0
- package/lib/components/TypingStatus.d.ts +29 -0
- package/lib/components/TypingStatus.d.ts.map +1 -0
- package/lib/components/TypingStatus.js +446 -0
- package/lib/components/TypingStatus.js.map +1 -0
- package/lib/components/UnreadSeparator.d.ts +8 -0
- package/lib/components/UnreadSeparator.d.ts.map +1 -0
- package/lib/components/UnreadSeparator.js +101 -0
- package/lib/components/UnreadSeparator.js.map +1 -0
- package/lib/components/VideoNoteCapture/ProgressRing.d.ts +16 -0
- package/lib/components/VideoNoteCapture/ProgressRing.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/ProgressRing.js +75 -0
- package/lib/components/VideoNoteCapture/ProgressRing.js.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts +31 -0
- package/lib/components/VideoNoteCapture/VideoNoteCaptureView.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js +500 -0
- package/lib/components/VideoNoteCapture/VideoNoteCaptureView.js.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts +12 -0
- package/lib/components/VideoNoteCapture/VideoNotePreviewView.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNotePreviewView.js +105 -0
- package/lib/components/VideoNoteCapture/VideoNotePreviewView.js.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts +12 -0
- package/lib/components/VideoNoteCapture/VideoNoteStage.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/VideoNoteStage.js +95 -0
- package/lib/components/VideoNoteCapture/VideoNoteStage.js.map +1 -0
- package/lib/components/VideoNoteCapture/constants.d.ts +50 -0
- package/lib/components/VideoNoteCapture/constants.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/constants.js +53 -0
- package/lib/components/VideoNoteCapture/constants.js.map +1 -0
- package/lib/components/VideoNoteCapture/index.d.ts +3 -0
- package/lib/components/VideoNoteCapture/index.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/index.js +2 -0
- package/lib/components/VideoNoteCapture/index.js.map +1 -0
- package/lib/components/VideoNoteCapture/optional.d.ts +6 -0
- package/lib/components/VideoNoteCapture/optional.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/optional.js +15 -0
- package/lib/components/VideoNoteCapture/optional.js.map +1 -0
- package/lib/components/VideoNoteCapture/sessionState.d.ts +10 -0
- package/lib/components/VideoNoteCapture/sessionState.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/sessionState.js +19 -0
- package/lib/components/VideoNoteCapture/sessionState.js.map +1 -0
- package/lib/components/VideoNoteCapture/styles.d.ts +84 -0
- package/lib/components/VideoNoteCapture/styles.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/styles.js +86 -0
- package/lib/components/VideoNoteCapture/styles.js.map +1 -0
- package/lib/components/VideoNoteCapture/types.d.ts +54 -0
- package/lib/components/VideoNoteCapture/types.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/types.js +2 -0
- package/lib/components/VideoNoteCapture/types.js.map +1 -0
- package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts +47 -0
- package/lib/components/VideoNoteCapture/useRoundAnimation.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/useRoundAnimation.js +216 -0
- package/lib/components/VideoNoteCapture/useRoundAnimation.js.map +1 -0
- package/lib/components/VideoNoteCapture/useRoundLayout.d.ts +14 -0
- package/lib/components/VideoNoteCapture/useRoundLayout.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/useRoundLayout.js +61 -0
- package/lib/components/VideoNoteCapture/useRoundLayout.js.map +1 -0
- package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts +25 -0
- package/lib/components/VideoNoteCapture/useVideoNoteSession.d.ts.map +1 -0
- package/lib/components/VideoNoteCapture/useVideoNoteSession.js +611 -0
- package/lib/components/VideoNoteCapture/useVideoNoteSession.js.map +1 -0
- package/lib/components/VideoNoteOverlay.d.ts +42 -11
- package/lib/components/VideoNoteOverlay.d.ts.map +1 -1
- package/lib/components/VideoNoteOverlay.js +722 -135
- package/lib/components/VideoNoteOverlay.js.map +1 -1
- package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts +6 -0
- package/lib/components/VideoNoteRecorder/LiveVideoNote.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/LiveVideoNote.js +205 -0
- package/lib/components/VideoNoteRecorder/LiveVideoNote.js.map +1 -0
- package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts +35 -0
- package/lib/components/VideoNoteRecorder/RecorderChrome.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/RecorderChrome.js +350 -0
- package/lib/components/VideoNoteRecorder/RecorderChrome.js.map +1 -0
- package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts +10 -0
- package/lib/components/VideoNoteRecorder/UnavailableVideoNote.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js +52 -0
- package/lib/components/VideoNoteRecorder/UnavailableVideoNote.js.map +1 -0
- package/lib/components/VideoNoteRecorder/constants.d.ts +16 -0
- package/lib/components/VideoNoteRecorder/constants.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/constants.js +30 -0
- package/lib/components/VideoNoteRecorder/constants.js.map +1 -0
- package/lib/components/{VideoNoteRecorder.d.ts → VideoNoteRecorder/index.d.ts} +5 -10
- package/lib/components/VideoNoteRecorder/index.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/index.js +26 -0
- package/lib/components/VideoNoteRecorder/index.js.map +1 -0
- package/lib/components/VideoNoteRecorder/styles.d.ts +159 -0
- package/lib/components/VideoNoteRecorder/styles.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/styles.js +170 -0
- package/lib/components/VideoNoteRecorder/styles.js.map +1 -0
- package/lib/components/VideoNoteRecorder/types.d.ts +7 -0
- package/lib/components/VideoNoteRecorder/types.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/types.js +2 -0
- package/lib/components/VideoNoteRecorder/types.js.map +1 -0
- package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts +10 -0
- package/lib/components/VideoNoteRecorder/useRecordingTimer.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/useRecordingTimer.js +134 -0
- package/lib/components/VideoNoteRecorder/useRecordingTimer.js.map +1 -0
- package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts +28 -0
- package/lib/components/VideoNoteRecorder/useVideoNoteRecording.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js +287 -0
- package/lib/components/VideoNoteRecorder/useVideoNoteRecording.js.map +1 -0
- package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts +6 -0
- package/lib/components/VideoNoteRecorder/visionCameraHooks.d.ts.map +1 -0
- package/lib/components/VideoNoteRecorder/visionCameraHooks.js +11 -0
- package/lib/components/VideoNoteRecorder/visionCameraHooks.js.map +1 -0
- package/lib/components/VideoRecordButton.d.ts +1 -1
- package/lib/components/VideoRecordButton.d.ts.map +1 -1
- package/lib/components/VideoRecordButton.js +221 -92
- package/lib/components/VideoRecordButton.js.map +1 -1
- package/lib/components/ViewOnceBadge.d.ts +23 -0
- package/lib/components/ViewOnceBadge.d.ts.map +1 -0
- package/lib/components/ViewOnceBadge.js +233 -0
- package/lib/components/ViewOnceBadge.js.map +1 -0
- package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts +16 -0
- package/lib/components/VoiceMessageInput/RecordedVoicePreview.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/RecordedVoicePreview.js +503 -0
- package/lib/components/VoiceMessageInput/RecordedVoicePreview.js.map +1 -0
- package/lib/components/VoiceMessageInput/constants.d.ts +16 -0
- package/lib/components/VoiceMessageInput/constants.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/constants.js +22 -0
- package/lib/components/VoiceMessageInput/constants.js.map +1 -0
- package/lib/components/VoiceMessageInput/formatElapsed.d.ts +2 -0
- package/lib/components/VoiceMessageInput/formatElapsed.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/formatElapsed.js +7 -0
- package/lib/components/VoiceMessageInput/formatElapsed.js.map +1 -0
- package/lib/components/VoiceMessageInput/index.d.ts +9 -0
- package/lib/components/VoiceMessageInput/index.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/index.js +148 -0
- package/lib/components/VoiceMessageInput/index.js.map +1 -0
- package/lib/components/VoiceMessageInput/previewStyles.d.ts +77 -0
- package/lib/components/VoiceMessageInput/previewStyles.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/previewStyles.js +80 -0
- package/lib/components/VoiceMessageInput/previewStyles.js.map +1 -0
- package/lib/components/VoiceMessageInput/previewWaveform.d.ts +15 -0
- package/lib/components/VoiceMessageInput/previewWaveform.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/previewWaveform.js +27 -0
- package/lib/components/VoiceMessageInput/previewWaveform.js.map +1 -0
- package/lib/components/VoiceMessageInput/recorder.d.ts +18 -0
- package/lib/components/VoiceMessageInput/recorder.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/recorder.js +80 -0
- package/lib/components/VoiceMessageInput/recorder.js.map +1 -0
- package/lib/components/VoiceMessageInput/types.d.ts +56 -0
- package/lib/components/VoiceMessageInput/types.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/types.js +2 -0
- package/lib/components/VoiceMessageInput/types.js.map +1 -0
- package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts +7 -0
- package/lib/components/VoiceMessageInput/useLazyRecorder.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/useLazyRecorder.js +61 -0
- package/lib/components/VoiceMessageInput/useLazyRecorder.js.map +1 -0
- package/lib/components/VoiceMessageInput/useStateReport.d.ts +16 -0
- package/lib/components/VoiceMessageInput/useStateReport.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/useStateReport.js +81 -0
- package/lib/components/VoiceMessageInput/useStateReport.js.map +1 -0
- package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts +34 -0
- package/lib/components/VoiceMessageInput/useTakePreviewActions.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/useTakePreviewActions.js +207 -0
- package/lib/components/VoiceMessageInput/useTakePreviewActions.js.map +1 -0
- package/lib/components/VoiceMessageInput/useVoiceTake.d.ts +25 -0
- package/lib/components/VoiceMessageInput/useVoiceTake.d.ts.map +1 -0
- package/lib/components/VoiceMessageInput/useVoiceTake.js +424 -0
- package/lib/components/VoiceMessageInput/useVoiceTake.js.map +1 -0
- package/lib/components/WaveformPlayer/Bars.d.ts +30 -0
- package/lib/components/WaveformPlayer/Bars.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/Bars.js +171 -0
- package/lib/components/WaveformPlayer/Bars.js.map +1 -0
- package/lib/components/WaveformPlayer/VoiceButton.d.ts +23 -0
- package/lib/components/WaveformPlayer/VoiceButton.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/VoiceButton.js +111 -0
- package/lib/components/WaveformPlayer/VoiceButton.js.map +1 -0
- package/lib/components/WaveformPlayer/WaveformTrack.d.ts +31 -0
- package/lib/components/WaveformPlayer/WaveformTrack.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/WaveformTrack.js +199 -0
- package/lib/components/WaveformPlayer/WaveformTrack.js.map +1 -0
- package/lib/components/WaveformPlayer/audio.d.ts +23 -0
- package/lib/components/WaveformPlayer/audio.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/audio.js +97 -0
- package/lib/components/WaveformPlayer/audio.js.map +1 -0
- package/lib/components/WaveformPlayer/index.d.ts +13 -0
- package/lib/components/WaveformPlayer/index.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/index.js +475 -0
- package/lib/components/WaveformPlayer/index.js.map +1 -0
- package/lib/components/WaveformPlayer/styles.d.ts +257 -0
- package/lib/components/WaveformPlayer/styles.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/styles.js +120 -0
- package/lib/components/WaveformPlayer/styles.js.map +1 -0
- package/lib/components/WaveformPlayer/types.d.ts +32 -0
- package/lib/components/WaveformPlayer/types.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/types.js +2 -0
- package/lib/components/WaveformPlayer/types.js.map +1 -0
- package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts +21 -0
- package/lib/components/WaveformPlayer/useSendFlightReveal.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/useSendFlightReveal.js +105 -0
- package/lib/components/WaveformPlayer/useSendFlightReveal.js.map +1 -0
- package/lib/components/WaveformPlayer/useVoicePlayback.d.ts +39 -0
- package/lib/components/WaveformPlayer/useVoicePlayback.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/useVoicePlayback.js +401 -0
- package/lib/components/WaveformPlayer/useVoicePlayback.js.map +1 -0
- package/lib/components/WaveformPlayer/useVoiceSource.d.ts +38 -0
- package/lib/components/WaveformPlayer/useVoiceSource.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/useVoiceSource.js +244 -0
- package/lib/components/WaveformPlayer/useVoiceSource.js.map +1 -0
- package/lib/components/WaveformPlayer/useWaveformMotion.d.ts +16 -0
- package/lib/components/WaveformPlayer/useWaveformMotion.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/useWaveformMotion.js +135 -0
- package/lib/components/WaveformPlayer/useWaveformMotion.js.map +1 -0
- package/lib/components/WaveformPlayer/useWaveformScrub.d.ts +16 -0
- package/lib/components/WaveformPlayer/useWaveformScrub.d.ts.map +1 -0
- package/lib/components/WaveformPlayer/useWaveformScrub.js +168 -0
- package/lib/components/WaveformPlayer/useWaveformScrub.js.map +1 -0
- package/lib/components/composerPanels.d.ts +13 -0
- package/lib/components/composerPanels.d.ts.map +1 -0
- package/lib/components/composerPanels.js +22 -0
- package/lib/components/composerPanels.js.map +1 -0
- package/lib/components/defaultMessageActions.d.ts +30 -0
- package/lib/components/defaultMessageActions.d.ts.map +1 -0
- package/lib/components/defaultMessageActions.js +124 -0
- package/lib/components/defaultMessageActions.js.map +1 -0
- package/lib/components/earpiece.d.ts +56 -0
- package/lib/components/earpiece.d.ts.map +1 -0
- package/lib/components/earpiece.js +218 -0
- package/lib/components/earpiece.js.map +1 -0
- package/lib/components/floatingNoteMath.d.ts +66 -0
- package/lib/components/floatingNoteMath.d.ts.map +1 -0
- package/lib/components/floatingNoteMath.js +143 -0
- package/lib/components/floatingNoteMath.js.map +1 -0
- package/lib/components/haptics.d.ts +5 -0
- package/lib/components/haptics.d.ts.map +1 -0
- package/lib/components/haptics.js +26 -0
- package/lib/components/haptics.js.map +1 -0
- package/lib/components/mediaDownload.d.ts +14 -0
- package/lib/components/mediaDownload.d.ts.map +1 -0
- package/lib/components/mediaDownload.js +43 -0
- package/lib/components/mediaDownload.js.map +1 -0
- package/lib/components/mediaPalette.d.ts +7 -2
- package/lib/components/mediaPalette.d.ts.map +1 -1
- package/lib/components/mediaPalette.js +27 -15
- package/lib/components/mediaPalette.js.map +1 -1
- package/lib/components/mediaPlayback.d.ts +204 -5
- package/lib/components/mediaPlayback.d.ts.map +1 -1
- package/lib/components/mediaPlayback.js +746 -17
- package/lib/components/mediaPlayback.js.map +1 -1
- package/lib/components/mediaTransfer.d.ts +29 -0
- package/lib/components/mediaTransfer.d.ts.map +1 -0
- package/lib/components/mediaTransfer.js +52 -0
- package/lib/components/mediaTransfer.js.map +1 -0
- package/lib/components/mediaViewer/MediaViewer.d.ts +17 -0
- package/lib/components/mediaViewer/MediaViewer.d.ts.map +1 -0
- package/lib/components/mediaViewer/MediaViewer.js +347 -0
- package/lib/components/mediaViewer/MediaViewer.js.map +1 -0
- package/lib/components/mediaViewer/MediaViewerChrome.d.ts +14 -0
- package/lib/components/mediaViewer/MediaViewerChrome.d.ts.map +1 -0
- package/lib/components/mediaViewer/MediaViewerChrome.js +164 -0
- package/lib/components/mediaViewer/MediaViewerChrome.js.map +1 -0
- package/lib/components/mediaViewer/MediaViewerHost.d.ts +10 -0
- package/lib/components/mediaViewer/MediaViewerHost.d.ts.map +1 -0
- package/lib/components/mediaViewer/MediaViewerHost.js +76 -0
- package/lib/components/mediaViewer/MediaViewerHost.js.map +1 -0
- package/lib/components/mediaViewer/MediaViewerPage.d.ts +25 -0
- package/lib/components/mediaViewer/MediaViewerPage.d.ts.map +1 -0
- package/lib/components/mediaViewer/MediaViewerPage.js +194 -0
- package/lib/components/mediaViewer/MediaViewerPage.js.map +1 -0
- package/lib/components/mediaViewer/gallery.d.ts +27 -0
- package/lib/components/mediaViewer/gallery.d.ts.map +1 -0
- package/lib/components/mediaViewer/gallery.js +41 -0
- package/lib/components/mediaViewer/gallery.js.map +1 -0
- package/lib/components/messageHighlight.d.ts +41 -0
- package/lib/components/messageHighlight.d.ts.map +1 -0
- package/lib/components/messageHighlight.js +157 -0
- package/lib/components/messageHighlight.js.map +1 -0
- package/lib/components/messagePress.d.ts +14 -0
- package/lib/components/messagePress.d.ts.map +1 -0
- package/lib/components/messagePress.js +18 -0
- package/lib/components/messagePress.js.map +1 -0
- package/lib/components/messageSelection.d.ts +39 -0
- package/lib/components/messageSelection.d.ts.map +1 -0
- package/lib/components/messageSelection.js +135 -0
- package/lib/components/messageSelection.js.map +1 -0
- package/lib/components/recordingFeedback.d.ts +22 -0
- package/lib/components/recordingFeedback.d.ts.map +1 -0
- package/lib/components/recordingFeedback.js +80 -0
- package/lib/components/recordingFeedback.js.map +1 -0
- package/lib/components/recordingMeter.d.ts +19 -0
- package/lib/components/recordingMeter.d.ts.map +1 -0
- package/lib/components/recordingMeter.js +21 -0
- package/lib/components/recordingMeter.js.map +1 -0
- package/lib/components/roundNoteChrome.d.ts +107 -0
- package/lib/components/roundNoteChrome.d.ts.map +1 -0
- package/lib/components/roundNoteChrome.js +249 -0
- package/lib/components/roundNoteChrome.js.map +1 -0
- package/lib/components/roundNotePlayers.d.ts +78 -0
- package/lib/components/roundNotePlayers.d.ts.map +1 -0
- package/lib/components/roundNotePlayers.js +230 -0
- package/lib/components/roundNotePlayers.js.map +1 -0
- package/lib/components/sendFlight.d.ts +88 -0
- package/lib/components/sendFlight.d.ts.map +1 -0
- package/lib/components/sendFlight.js +146 -0
- package/lib/components/sendFlight.js.map +1 -0
- package/lib/components/viewOnce.d.ts +27 -0
- package/lib/components/viewOnce.d.ts.map +1 -0
- package/lib/components/viewOnce.js +168 -0
- package/lib/components/viewOnce.js.map +1 -0
- package/lib/components/visionCamera.d.ts +45 -0
- package/lib/components/visionCamera.d.ts.map +1 -0
- package/lib/components/visionCamera.js +117 -0
- package/lib/components/visionCamera.js.map +1 -0
- package/lib/components/voiceEditing.d.ts +34 -0
- package/lib/components/voiceEditing.d.ts.map +1 -0
- package/lib/components/voiceEditing.js +159 -0
- package/lib/components/voiceEditing.js.map +1 -0
- package/lib/components/voiceWaveform.d.ts +108 -0
- package/lib/components/voiceWaveform.d.ts.map +1 -0
- package/lib/components/voiceWaveform.js +165 -0
- package/lib/components/voiceWaveform.js.map +1 -0
- package/lib/components/wallpaperGradient.d.ts +16 -0
- package/lib/components/wallpaperGradient.d.ts.map +1 -0
- package/lib/components/wallpaperGradient.js +186 -0
- package/lib/components/wallpaperGradient.js.map +1 -0
- package/lib/components/windowInsets.d.ts +11 -0
- package/lib/components/windowInsets.d.ts.map +1 -0
- package/lib/components/windowInsets.js +44 -0
- package/lib/components/windowInsets.js.map +1 -0
- package/lib/dayjsLocales.js +15 -2
- package/lib/dayjsLocales.js.map +1 -1
- package/lib/emoji/EmojiGrid/BackspaceButton.d.ts +11 -0
- package/lib/emoji/EmojiGrid/BackspaceButton.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/BackspaceButton.js +111 -0
- package/lib/emoji/EmojiGrid/BackspaceButton.js.map +1 -0
- package/lib/emoji/EmojiGrid/EmojiRow.d.ts +15 -0
- package/lib/emoji/EmojiGrid/EmojiRow.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/EmojiRow.js +71 -0
- package/lib/emoji/EmojiGrid/EmojiRow.js.map +1 -0
- package/lib/emoji/EmojiGrid/Search.d.ts +29 -0
- package/lib/emoji/EmojiGrid/Search.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/Search.js +234 -0
- package/lib/emoji/EmojiGrid/Search.js.map +1 -0
- package/lib/emoji/EmojiGrid/TabStrip.d.ts +16 -0
- package/lib/emoji/EmojiGrid/TabStrip.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/TabStrip.js +237 -0
- package/lib/emoji/EmojiGrid/TabStrip.js.map +1 -0
- package/lib/emoji/EmojiGrid/TonePopup.d.ts +12 -0
- package/lib/emoji/EmojiGrid/TonePopup.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/TonePopup.js +137 -0
- package/lib/emoji/EmojiGrid/TonePopup.js.map +1 -0
- package/lib/emoji/EmojiGrid/constants.d.ts +29 -0
- package/lib/emoji/EmojiGrid/constants.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/constants.js +65 -0
- package/lib/emoji/EmojiGrid/constants.js.map +1 -0
- package/lib/emoji/EmojiGrid/index.d.ts +10 -0
- package/lib/emoji/EmojiGrid/index.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/index.js +450 -0
- package/lib/emoji/EmojiGrid/index.js.map +1 -0
- package/lib/emoji/EmojiGrid/items.d.ts +25 -0
- package/lib/emoji/EmojiGrid/items.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/items.js +75 -0
- package/lib/emoji/EmojiGrid/items.js.map +1 -0
- package/lib/emoji/EmojiGrid/styles.d.ts +181 -0
- package/lib/emoji/EmojiGrid/styles.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/styles.js +184 -0
- package/lib/emoji/EmojiGrid/styles.js.map +1 -0
- package/lib/emoji/EmojiGrid/types.d.ts +53 -0
- package/lib/emoji/EmojiGrid/types.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/types.js +2 -0
- package/lib/emoji/EmojiGrid/types.js.map +1 -0
- package/lib/emoji/EmojiGrid/useTabScroll.d.ts +19 -0
- package/lib/emoji/EmojiGrid/useTabScroll.d.ts.map +1 -0
- package/lib/emoji/EmojiGrid/useTabScroll.js +124 -0
- package/lib/emoji/EmojiGrid/useTabScroll.js.map +1 -0
- package/lib/emoji/EmojiKeyboard.d.ts +79 -0
- package/lib/emoji/EmojiKeyboard.d.ts.map +1 -0
- package/lib/emoji/EmojiKeyboard.js +445 -0
- package/lib/emoji/EmojiKeyboard.js.map +1 -0
- package/lib/emoji/defaultExpandedPicker.d.ts +5 -0
- package/lib/emoji/defaultExpandedPicker.d.ts.map +1 -0
- package/lib/emoji/defaultExpandedPicker.js +11 -0
- package/lib/emoji/defaultExpandedPicker.js.map +1 -0
- package/lib/emoji/emojiData.d.ts +2 -0
- package/lib/emoji/emojiData.d.ts.map +1 -0
- package/lib/emoji/emojiData.js +5 -0
- package/lib/emoji/emojiData.js.map +1 -0
- package/lib/emoji/emojiStore.d.ts +70 -0
- package/lib/emoji/emojiStore.d.ts.map +1 -0
- package/lib/emoji/emojiStore.js +246 -0
- package/lib/emoji/emojiStore.js.map +1 -0
- package/lib/emoji/textEditing.d.ts +20 -0
- package/lib/emoji/textEditing.d.ts.map +1 -0
- package/lib/emoji/textEditing.js +97 -0
- package/lib/emoji/textEditing.js.map +1 -0
- package/lib/emojiOnly.d.ts +11 -0
- package/lib/emojiOnly.d.ts.map +1 -0
- package/lib/emojiOnly.js +79 -0
- package/lib/emojiOnly.js.map +1 -0
- package/lib/gestures/useRowSwipe.d.ts +43 -0
- package/lib/gestures/useRowSwipe.d.ts.map +1 -0
- package/lib/gestures/useRowSwipe.js +74 -0
- package/lib/gestures/useRowSwipe.js.map +1 -0
- package/lib/hooks/useAnimatedPresence.d.ts +22 -0
- package/lib/hooks/useAnimatedPresence.d.ts.map +1 -0
- package/lib/hooks/useAnimatedPresence.js +97 -0
- package/lib/hooks/useAnimatedPresence.js.map +1 -0
- package/lib/hooks/useChatMessages.d.ts +39 -0
- package/lib/hooks/useChatMessages.d.ts.map +1 -0
- package/lib/hooks/useChatMessages.js +125 -0
- package/lib/hooks/useChatMessages.js.map +1 -0
- package/lib/hooks/useColorScheme.d.ts +7 -1
- package/lib/hooks/useColorScheme.d.ts.map +1 -1
- package/lib/hooks/useColorScheme.js +46 -8
- package/lib/hooks/useColorScheme.js.map +1 -1
- package/lib/hooks/useHasKeyboardProvider.js +18 -7
- package/lib/hooks/useHasKeyboardProvider.js.map +1 -1
- package/lib/hooks/useIcons.js +15 -2
- package/lib/hooks/useIcons.js.map +1 -1
- package/lib/hooks/useIsKeyboardVisible.js +39 -17
- package/lib/hooks/useIsKeyboardVisible.js.map +1 -1
- package/lib/hooks/useIsRTL.js +15 -2
- package/lib/hooks/useIsRTL.js.map +1 -1
- package/lib/hooks/useKeyboardVerticalOffset.d.ts +5 -3
- package/lib/hooks/useKeyboardVerticalOffset.d.ts.map +1 -1
- package/lib/hooks/useKeyboardVerticalOffset.js +52 -18
- package/lib/hooks/useKeyboardVerticalOffset.js.map +1 -1
- package/lib/hooks/useLabels.js +15 -2
- package/lib/hooks/useLabels.js.map +1 -1
- package/lib/hooks/useStreamingMessages.js +200 -86
- package/lib/hooks/useStreamingMessages.js.map +1 -1
- package/lib/hooks/useTheme.js +56 -7
- package/lib/hooks/useTheme.js.map +1 -1
- package/lib/hooks/useUpdateLayoutEffect.d.ts.map +1 -1
- package/lib/hooks/useUpdateLayoutEffect.js +35 -11
- package/lib/hooks/useUpdateLayoutEffect.js.map +1 -1
- package/lib/i18n.d.ts +182 -0
- package/lib/i18n.d.ts.map +1 -1
- package/lib/i18n.js +121 -23
- package/lib/i18n.js.map +1 -1
- package/lib/index.d.ts +31 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +18 -1
- package/lib/index.js.map +1 -1
- package/lib/linkParser.js +318 -185
- package/lib/linkParser.js.map +1 -1
- package/lib/locales/ar.d.ts.map +1 -1
- package/lib/locales/ar.js +110 -19
- package/lib/locales/ar.js.map +1 -1
- package/lib/locales/de.d.ts.map +1 -1
- package/lib/locales/de.js +110 -19
- package/lib/locales/de.js.map +1 -1
- package/lib/locales/es.d.ts.map +1 -1
- package/lib/locales/es.js +110 -19
- package/lib/locales/es.js.map +1 -1
- package/lib/locales/fr.d.ts.map +1 -1
- package/lib/locales/fr.js +110 -19
- package/lib/locales/fr.js.map +1 -1
- package/lib/locales/hi.d.ts.map +1 -1
- package/lib/locales/hi.js +110 -19
- package/lib/locales/hi.js.map +1 -1
- package/lib/locales/id.d.ts.map +1 -1
- package/lib/locales/id.js +110 -19
- package/lib/locales/id.js.map +1 -1
- package/lib/locales/index.js +19 -5
- package/lib/locales/index.js.map +1 -1
- package/lib/locales/it.d.ts.map +1 -1
- package/lib/locales/it.js +110 -19
- package/lib/locales/it.js.map +1 -1
- package/lib/locales/ja.d.ts.map +1 -1
- package/lib/locales/ja.js +110 -19
- package/lib/locales/ja.js.map +1 -1
- package/lib/locales/ko.d.ts.map +1 -1
- package/lib/locales/ko.js +110 -19
- package/lib/locales/ko.js.map +1 -1
- package/lib/locales/nl.d.ts.map +1 -1
- package/lib/locales/nl.js +110 -19
- package/lib/locales/nl.js.map +1 -1
- package/lib/locales/pl.d.ts.map +1 -1
- package/lib/locales/pl.js +110 -19
- package/lib/locales/pl.js.map +1 -1
- package/lib/locales/pt.d.ts.map +1 -1
- package/lib/locales/pt.js +110 -19
- package/lib/locales/pt.js.map +1 -1
- package/lib/locales/ru.d.ts.map +1 -1
- package/lib/locales/ru.js +110 -19
- package/lib/locales/ru.js.map +1 -1
- package/lib/locales/tr.d.ts.map +1 -1
- package/lib/locales/tr.js +110 -19
- package/lib/locales/tr.js.map +1 -1
- package/lib/locales/zh.d.ts.map +1 -1
- package/lib/locales/zh.js +110 -19
- package/lib/locales/zh.js.map +1 -1
- package/lib/logging.d.ts +5 -0
- package/lib/logging.d.ts.map +1 -1
- package/lib/logging.js +13 -1
- package/lib/logging.js.map +1 -1
- package/lib/messageUtils.d.ts +19 -0
- package/lib/messageUtils.d.ts.map +1 -0
- package/lib/messageUtils.js +61 -0
- package/lib/messageUtils.js.map +1 -0
- package/lib/motion.d.ts +21 -0
- package/lib/motion.d.ts.map +1 -0
- package/lib/motion.js +30 -0
- package/lib/motion.js.map +1 -0
- package/lib/optional/index.d.ts +99 -0
- package/lib/optional/index.d.ts.map +1 -0
- package/lib/optional/index.js +284 -0
- package/lib/optional/index.js.map +1 -0
- package/lib/rtl.js +7 -5
- package/lib/rtl.js.map +1 -1
- package/lib/store.d.ts +40 -0
- package/lib/store.d.ts.map +1 -0
- package/lib/store.js +127 -0
- package/lib/store.js.map +1 -0
- package/lib/styles.d.ts +2 -2
- package/lib/styles.d.ts.map +1 -1
- package/lib/styles.js +15 -15
- package/lib/styles.js.map +1 -1
- package/lib/types.js +1 -0
- package/lib/types.js.map +1 -1
- package/lib/utils.d.ts +15 -0
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +199 -94
- package/lib/utils.js.map +1 -1
- package/llms.txt +133 -31
- package/package.json +89 -46
- package/lib/InputToolbar.d.ts +0 -49
- package/lib/InputToolbar.d.ts.map +0 -1
- package/lib/InputToolbar.js +0 -338
- package/lib/InputToolbar.js.map +0 -1
- package/lib/MessageVideo.d.ts.map +0 -1
- package/lib/MessageVideo.js +0 -162
- package/lib/MessageVideo.js.map +0 -1
- package/lib/MessagesContainer/FlashList.d.ts +0 -9
- package/lib/MessagesContainer/FlashList.d.ts.map +0 -1
- package/lib/MessagesContainer/FlashList.js +0 -23
- package/lib/MessagesContainer/FlashList.js.map +0 -1
- package/lib/components/ContextMenu.d.ts +0 -25
- package/lib/components/ContextMenu.d.ts.map +0 -1
- package/lib/components/ContextMenu.js +0 -122
- package/lib/components/ContextMenu.js.map +0 -1
- package/lib/components/VideoNoteRecorder.d.ts.map +0 -1
- package/lib/components/VideoNoteRecorder.js +0 -634
- package/lib/components/VideoNoteRecorder.js.map +0 -1
- package/lib/components/VoiceMessageInput.d.ts +0 -33
- package/lib/components/VoiceMessageInput.d.ts.map +0 -1
- package/lib/components/VoiceMessageInput.js +0 -403
- package/lib/components/VoiceMessageInput.js.map +0 -1
- package/lib/components/WaveformPlayer.d.ts +0 -19
- package/lib/components/WaveformPlayer.d.ts.map +0 -1
- package/lib/components/WaveformPlayer.js +0 -367
- package/lib/components/WaveformPlayer.js.map +0 -1
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { c as _c } from "react/compiler-runtime";
|
|
2
|
+
import React, { useEffect, useRef } from 'react';
|
|
3
|
+
import Animated, { Easing, useAnimatedProps, useSharedValue, withTiming } from 'react-native-reanimated';
|
|
4
|
+
import { useIcons } from '../hooks/useIcons';
|
|
5
|
+
import { getSvg } from '../optional';
|
|
6
|
+
import { Icon } from './Icon';
|
|
7
|
+
import { PauseIcon, PlayIcon } from './MediaControls';
|
|
8
|
+
|
|
9
|
+
// Optional SVG, as everywhere else: without it the button swaps static glyphs.
|
|
10
|
+
const svg = getSvg();
|
|
11
|
+
const Svg = svg ? svg.Svg ?? svg.default : null;
|
|
12
|
+
const AnimatedPath = svg?.Path ? Animated.createAnimatedComponent(svg.Path) : null;
|
|
13
|
+
|
|
14
|
+
/** The play <-> pause transition. */
|
|
15
|
+
const MORPH_MS = 300;
|
|
16
|
+
|
|
17
|
+
// The transition runs on a 500-step timeline (`ms = 500 * p`): the icon turns a
|
|
18
|
+
// quarter, overshooting by 5 degrees, while the shape changes in the middle.
|
|
19
|
+
const TIMELINE = 500;
|
|
20
|
+
const TURN_END = 384;
|
|
21
|
+
const SETTLE = 100;
|
|
22
|
+
const SHAPE_FROM = 166;
|
|
23
|
+
const SHAPE_TO = 383;
|
|
24
|
+
|
|
25
|
+
// Points of one half of the icon, in a 24-unit box centred on 0. The lower half
|
|
26
|
+
// is the mirror image. Play points right; pause is two bars lying flat, which
|
|
27
|
+
// the quarter turn stands upright.
|
|
28
|
+
|
|
29
|
+
const PLAY_HALF = [-6.5, -8, 0.5, -4, 7.5, 0, -6.5, 0];
|
|
30
|
+
const PAUSE_HALF = [-6.5, -7.5, 6.5, -7.5, 6.5, -2.5, -6.5, -2.5];
|
|
31
|
+
|
|
32
|
+
// An ease-in-out cubic bezier (0.42, 0, 0.58, 1). Reanimated's Jest mock
|
|
33
|
+
// returns a non-function here, hence the linear stand-in.
|
|
34
|
+
const bezier = Easing.bezierFn(0.42, 0, 0.58, 1);
|
|
35
|
+
const easeBoth = typeof bezier === 'function' ? bezier : x => {
|
|
36
|
+
'worklet';
|
|
37
|
+
|
|
38
|
+
return x;
|
|
39
|
+
};
|
|
40
|
+
const clamp01 = value => {
|
|
41
|
+
'worklet';
|
|
42
|
+
|
|
43
|
+
return Math.min(1, Math.max(0, value));
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/** Rotation in degrees and shape mix (0 play, 1 pause) at a point of the transition. */
|
|
47
|
+
const frame = (t, isToPause) => {
|
|
48
|
+
'worklet';
|
|
49
|
+
|
|
50
|
+
const p = isToPause ? t : 1 - t;
|
|
51
|
+
const ms = TIMELINE * p;
|
|
52
|
+
let rotation;
|
|
53
|
+
if (isToPause) {
|
|
54
|
+
if (ms < TURN_END) rotation = 95 * easeBoth(ms / TURN_END);else if (ms < TURN_END + SETTLE) rotation = 95 - 5 * easeBoth((ms - TURN_END) / SETTLE);else rotation = 90;
|
|
55
|
+
} else if (ms < SETTLE) rotation = -5 * easeBoth(ms / SETTLE);else if (ms < TURN_END + SETTLE) rotation = -5 + 95 * easeBoth((ms - SETTLE) / TURN_END);else rotation = 90;
|
|
56
|
+
const shapeAt = isToPause ? ms + SETTLE : ms;
|
|
57
|
+
const shape = easeBoth(clamp01((shapeAt - SHAPE_FROM) / (SHAPE_TO - SHAPE_FROM)));
|
|
58
|
+
return {
|
|
59
|
+
rotation,
|
|
60
|
+
shape,
|
|
61
|
+
p
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
const buildPath = (t, isToPause) => {
|
|
65
|
+
'worklet';
|
|
66
|
+
|
|
67
|
+
const {
|
|
68
|
+
rotation,
|
|
69
|
+
shape,
|
|
70
|
+
p
|
|
71
|
+
} = frame(t, isToPause);
|
|
72
|
+
const radians = rotation * Math.PI / 180;
|
|
73
|
+
const cos = Math.cos(radians);
|
|
74
|
+
const sin = Math.sin(radians);
|
|
75
|
+
// Play sits a touch right of centre so it looks centred (1dp).
|
|
76
|
+
const nudge = 1 - p;
|
|
77
|
+
let d = '';
|
|
78
|
+
for (const mirror of [1, -1]) {
|
|
79
|
+
for (let i = 0; i < 4; i++) {
|
|
80
|
+
const x = PLAY_HALF[i * 2] + (PAUSE_HALF[i * 2] - PLAY_HALF[i * 2]) * shape;
|
|
81
|
+
const y = mirror * (PLAY_HALF[i * 2 + 1] + (PAUSE_HALF[i * 2 + 1] - PLAY_HALF[i * 2 + 1]) * shape);
|
|
82
|
+
const rx = x * cos - y * sin + nudge;
|
|
83
|
+
const ry = x * sin + y * cos;
|
|
84
|
+
d += `${i === 0 ? 'M' : 'L'}${rx.toFixed(2)} ${ry.toFixed(2)} `;
|
|
85
|
+
}
|
|
86
|
+
d += 'Z ';
|
|
87
|
+
}
|
|
88
|
+
return d;
|
|
89
|
+
};
|
|
90
|
+
const MorphingIcon = t0 => {
|
|
91
|
+
const $ = _c(11);
|
|
92
|
+
const {
|
|
93
|
+
isPlaying,
|
|
94
|
+
color,
|
|
95
|
+
size
|
|
96
|
+
} = t0;
|
|
97
|
+
const progress = useSharedValue(1);
|
|
98
|
+
const isToPause = useSharedValue(isPlaying);
|
|
99
|
+
const isFirst = useRef(true);
|
|
100
|
+
let t1;
|
|
101
|
+
let t2;
|
|
102
|
+
if ($[0] !== isPlaying || $[1] !== isToPause || $[2] !== progress) {
|
|
103
|
+
t1 = () => {
|
|
104
|
+
if (isFirst.current) {
|
|
105
|
+
isFirst.current = false;
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
isToPause.value = isPlaying;
|
|
109
|
+
progress.value = 0;
|
|
110
|
+
progress.value = withTiming(1, {
|
|
111
|
+
duration: MORPH_MS,
|
|
112
|
+
easing: Easing.linear
|
|
113
|
+
});
|
|
114
|
+
};
|
|
115
|
+
t2 = [isPlaying, isToPause, progress];
|
|
116
|
+
$[0] = isPlaying;
|
|
117
|
+
$[1] = isToPause;
|
|
118
|
+
$[2] = progress;
|
|
119
|
+
$[3] = t1;
|
|
120
|
+
$[4] = t2;
|
|
121
|
+
} else {
|
|
122
|
+
t1 = $[3];
|
|
123
|
+
t2 = $[4];
|
|
124
|
+
}
|
|
125
|
+
useEffect(t1, t2);
|
|
126
|
+
const animatedProps = useAnimatedProps(() => ({
|
|
127
|
+
d: buildPath(progress.value, isToPause.value)
|
|
128
|
+
}));
|
|
129
|
+
let t3;
|
|
130
|
+
if ($[5] !== animatedProps || $[6] !== color) {
|
|
131
|
+
t3 = <AnimatedPath animatedProps={animatedProps} fill={color} stroke={color} strokeWidth={1.5} strokeLinejoin="round" />;
|
|
132
|
+
$[5] = animatedProps;
|
|
133
|
+
$[6] = color;
|
|
134
|
+
$[7] = t3;
|
|
135
|
+
} else {
|
|
136
|
+
t3 = $[7];
|
|
137
|
+
}
|
|
138
|
+
let t4;
|
|
139
|
+
if ($[8] !== size || $[9] !== t3) {
|
|
140
|
+
t4 = <Svg width={size} height={size} viewBox="-12 -12 24 24">{t3}</Svg>;
|
|
141
|
+
$[8] = size;
|
|
142
|
+
$[9] = t3;
|
|
143
|
+
$[10] = t4;
|
|
144
|
+
} else {
|
|
145
|
+
t4 = $[10];
|
|
146
|
+
}
|
|
147
|
+
return t4;
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* The play/pause glyph of a voice note. It morphs between the two,
|
|
151
|
+
* unless the app overrides the `play` or `pause` icon, which is
|
|
152
|
+
* then drawn as given.
|
|
153
|
+
*/
|
|
154
|
+
export function PlayPauseIcon(t0) {
|
|
155
|
+
const $ = _c(8);
|
|
156
|
+
const {
|
|
157
|
+
isPlaying,
|
|
158
|
+
color,
|
|
159
|
+
size
|
|
160
|
+
} = t0;
|
|
161
|
+
const icons = useIcons();
|
|
162
|
+
if (Svg && AnimatedPath && !icons.play && !icons.pause) {
|
|
163
|
+
let t1;
|
|
164
|
+
if ($[0] !== color || $[1] !== isPlaying || $[2] !== size) {
|
|
165
|
+
t1 = <MorphingIcon isPlaying={isPlaying} color={color} size={size} />;
|
|
166
|
+
$[0] = color;
|
|
167
|
+
$[1] = isPlaying;
|
|
168
|
+
$[2] = size;
|
|
169
|
+
$[3] = t1;
|
|
170
|
+
} else {
|
|
171
|
+
t1 = $[3];
|
|
172
|
+
}
|
|
173
|
+
return t1;
|
|
174
|
+
}
|
|
175
|
+
let t1;
|
|
176
|
+
if ($[4] !== color || $[5] !== isPlaying || $[6] !== size) {
|
|
177
|
+
t1 = isPlaying ? <Icon name="pause" color={color} size={size} fallback={<PauseIcon color={color} size={size} />} /> : <Icon name="play" color={color} size={size} fallback={<PlayIcon color={color} size={size} />} />;
|
|
178
|
+
$[4] = color;
|
|
179
|
+
$[5] = isPlaying;
|
|
180
|
+
$[6] = size;
|
|
181
|
+
$[7] = t1;
|
|
182
|
+
} else {
|
|
183
|
+
t1 = $[7];
|
|
184
|
+
}
|
|
185
|
+
return t1;
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=PlayPauseIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlayPauseIcon.js","names":["React","useEffect","useRef","Animated","Easing","useAnimatedProps","useSharedValue","withTiming","useIcons","getSvg","Icon","PauseIcon","PlayIcon","svg","Svg","default","AnimatedPath","Path","createAnimatedComponent","MORPH_MS","TIMELINE","TURN_END","SETTLE","SHAPE_FROM","SHAPE_TO","PLAY_HALF","PAUSE_HALF","bezier","bezierFn","easeBoth","x","clamp01","value","Math","min","max","frame","t","isToPause","p","ms","rotation","shapeAt","shape","buildPath","radians","PI","cos","sin","nudge","d","mirror","i","y","rx","ry","toFixed","MorphingIcon","t0","$","_c","isPlaying","color","size","progress","isFirst","t1","t2","current","duration","easing","linear","animatedProps","t3","t4","PlayPauseIcon","icons","play","pause"],"sources":["../../src/components/PlayPauseIcon.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react'\nimport Animated, { Easing, useAnimatedProps, useSharedValue, withTiming } from 'react-native-reanimated'\n\nimport { useIcons } from '../hooks/useIcons'\nimport { getSvg } from '../optional'\nimport { Icon } from './Icon'\nimport { PauseIcon, PlayIcon } from './MediaControls'\n\n// Optional SVG, as everywhere else: without it the button swaps static glyphs.\nconst svg = getSvg()\nconst Svg: any = svg ? svg.Svg ?? svg.default : null\nconst AnimatedPath: any = svg?.Path ? Animated.createAnimatedComponent(svg.Path) : null\n\n/** The play <-> pause transition. */\nconst MORPH_MS = 300\n\n// The transition runs on a 500-step timeline (`ms = 500 * p`): the icon turns a\n// quarter, overshooting by 5 degrees, while the shape changes in the middle.\nconst TIMELINE = 500\nconst TURN_END = 384\nconst SETTLE = 100\nconst SHAPE_FROM = 166\nconst SHAPE_TO = 383\n\n// Points of one half of the icon, in a 24-unit box centred on 0. The lower half\n// is the mirror image. Play points right; pause is two bars lying flat, which\n// the quarter turn stands upright.\ntype Quad = [number, number, number, number, number, number, number, number]\nconst PLAY_HALF: Quad = [-6.5, -8, 0.5, -4, 7.5, 0, -6.5, 0]\nconst PAUSE_HALF: Quad = [-6.5, -7.5, 6.5, -7.5, 6.5, -2.5, -6.5, -2.5]\n\n// An ease-in-out cubic bezier (0.42, 0, 0.58, 1). Reanimated's Jest mock\n// returns a non-function here, hence the linear stand-in.\nconst bezier = Easing.bezierFn(0.42, 0, 0.58, 1)\nconst easeBoth = typeof bezier === 'function'\n ? bezier\n : (x: number) => {\n 'worklet'\n return x\n }\n\nconst clamp01 = (value: number) => {\n 'worklet'\n return Math.min(1, Math.max(0, value))\n}\n\n/** Rotation in degrees and shape mix (0 play, 1 pause) at a point of the transition. */\nconst frame = (t: number, isToPause: boolean) => {\n 'worklet'\n const p = isToPause ? t : 1 - t\n const ms = TIMELINE * p\n let rotation: number\n if (isToPause)\n if (ms < TURN_END)\n rotation = 95 * easeBoth(ms / TURN_END)\n else if (ms < TURN_END + SETTLE)\n rotation = 95 - 5 * easeBoth((ms - TURN_END) / SETTLE)\n else\n rotation = 90\n else\n if (ms < SETTLE)\n rotation = -5 * easeBoth(ms / SETTLE)\n else if (ms < TURN_END + SETTLE)\n rotation = -5 + 95 * easeBoth((ms - SETTLE) / TURN_END)\n else\n rotation = 90\n\n const shapeAt = isToPause ? ms + SETTLE : ms\n const shape = easeBoth(clamp01((shapeAt - SHAPE_FROM) / (SHAPE_TO - SHAPE_FROM)))\n return { rotation, shape, p }\n}\n\nconst buildPath = (t: number, isToPause: boolean) => {\n 'worklet'\n const { rotation, shape, p } = frame(t, isToPause)\n const radians = (rotation * Math.PI) / 180\n const cos = Math.cos(radians)\n const sin = Math.sin(radians)\n // Play sits a touch right of centre so it looks centred (1dp).\n const nudge = 1 - p\n\n let d = ''\n for (const mirror of [1, -1]) {\n for (let i = 0; i < 4; i++) {\n const x = PLAY_HALF[i * 2] + (PAUSE_HALF[i * 2] - PLAY_HALF[i * 2]) * shape\n const y = mirror * (PLAY_HALF[i * 2 + 1] + (PAUSE_HALF[i * 2 + 1] - PLAY_HALF[i * 2 + 1]) * shape)\n const rx = x * cos - y * sin + nudge\n const ry = x * sin + y * cos\n d += `${i === 0 ? 'M' : 'L'}${rx.toFixed(2)} ${ry.toFixed(2)} `\n }\n d += 'Z '\n }\n return d\n}\n\ninterface MorphProps {\n isPlaying: boolean\n color: string\n size: number\n}\n\nconst MorphingIcon = ({ isPlaying, color, size }: MorphProps) => {\n // Mounted at rest, so a note does not animate as it scrolls into view.\n const progress = useSharedValue(1)\n const isToPause = useSharedValue(isPlaying)\n const isFirst = useRef(true)\n\n useEffect(() => {\n if (isFirst.current) {\n isFirst.current = false\n return\n }\n\n isToPause.value = isPlaying\n progress.value = 0\n progress.value = withTiming(1, { duration: MORPH_MS, easing: Easing.linear })\n }, [isPlaying, isToPause, progress])\n\n const animatedProps = useAnimatedProps(() => ({\n d: buildPath(progress.value, isToPause.value),\n }))\n\n return (\n <Svg width={size} height={size} viewBox='-12 -12 24 24'>\n {/* A round join softens the corners. */}\n <AnimatedPath\n animatedProps={animatedProps}\n fill={color}\n stroke={color}\n strokeWidth={1.5}\n strokeLinejoin='round'\n />\n </Svg>\n )\n}\n\nexport interface PlayPauseIconProps {\n isPlaying: boolean\n color: string\n size: number\n}\n\n/**\n * The play/pause glyph of a voice note. It morphs between the two,\n * unless the app overrides the `play` or `pause` icon, which is\n * then drawn as given.\n */\nexport function PlayPauseIcon ({ isPlaying, color, size }: PlayPauseIconProps) {\n const icons = useIcons()\n\n if (Svg && AnimatedPath && !icons.play && !icons.pause)\n return <MorphingIcon isPlaying={isPlaying} color={color} size={size} />\n\n return isPlaying\n ? <Icon name='pause' color={color} size={size} fallback={<PauseIcon color={color} size={size} />} />\n : <Icon name='play' color={color} size={size} fallback={<PlayIcon color={color} size={size} />} />\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface PlaybackSpeedPillProps {
|
|
3
|
+
rate: number;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* The speed pill on a voice note: a tap cycles 1x / 1.5x / 2x, a long press
|
|
7
|
+
* opens the speed presets. The speed is shared by
|
|
8
|
+
* every note.
|
|
9
|
+
*/
|
|
10
|
+
export declare function PlaybackSpeedPill({ rate }: PlaybackSpeedPillProps): React.JSX.Element;
|
|
11
|
+
//# sourceMappingURL=PlaybackSpeedPill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlaybackSpeedPill.d.ts","sourceRoot":"","sources":["../../src/components/PlaybackSpeedPill.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAA;AA0B5D,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;CACb;AAID;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAE,EAAE,IAAI,EAAE,EAAE,sBAAsB,qBAoGlE"}
|
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
import { c as _c } from "react/compiler-runtime";
|
|
2
|
+
import React, { useCallback, useRef, useState } from 'react';
|
|
3
|
+
import { Modal, Pressable, StyleSheet, Text, useWindowDimensions } from 'react-native';
|
|
4
|
+
import Animated, { Easing, Extrapolation, ReduceMotion, interpolate, runOnJS, useAnimatedStyle, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
|
|
5
|
+
import { useAnimatedPresence } from '../hooks/useAnimatedPresence';
|
|
6
|
+
import { useThemedStyles } from '../hooks/useTheme';
|
|
7
|
+
import { PLAYBACK_RATE_PRESETS, nextPlaybackRate, setPlaybackRate } from './mediaPlayback';
|
|
8
|
+
const MENU_WIDTH = 120;
|
|
9
|
+
const MENU_ROW_HEIGHT = 40;
|
|
10
|
+
|
|
11
|
+
// The presets pop out of the pill like the message context menu does.
|
|
12
|
+
const MENU_SPRING = {
|
|
13
|
+
damping: 20,
|
|
14
|
+
stiffness: 360,
|
|
15
|
+
mass: 0.8,
|
|
16
|
+
reduceMotion: ReduceMotion.System
|
|
17
|
+
};
|
|
18
|
+
const MENU_OUT = {
|
|
19
|
+
duration: 160,
|
|
20
|
+
easing: Easing.out(Easing.quad),
|
|
21
|
+
reduceMotion: ReduceMotion.System
|
|
22
|
+
};
|
|
23
|
+
const formatRate = rate => `${Number(rate.toFixed(2))}x`;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* The speed pill on a voice note: a tap cycles 1x / 1.5x / 2x, a long press
|
|
27
|
+
* opens the speed presets. The speed is shared by
|
|
28
|
+
* every note.
|
|
29
|
+
*/
|
|
30
|
+
export function PlaybackSpeedPill(t0) {
|
|
31
|
+
const $ = _c(61);
|
|
32
|
+
const {
|
|
33
|
+
rate
|
|
34
|
+
} = t0;
|
|
35
|
+
const styles = useThemedStyles(createStyles);
|
|
36
|
+
const {
|
|
37
|
+
width: windowWidth,
|
|
38
|
+
height: windowHeight
|
|
39
|
+
} = useWindowDimensions();
|
|
40
|
+
const pillRef = useRef(null);
|
|
41
|
+
const [anchor, setAnchor] = useState(null);
|
|
42
|
+
const [lastAnchor, setLastAnchor] = useState(null);
|
|
43
|
+
const shownAnchor = anchor ?? lastAnchor;
|
|
44
|
+
const appear = useSharedValue(0);
|
|
45
|
+
let t1;
|
|
46
|
+
if ($[0] !== appear) {
|
|
47
|
+
t1 = () => {
|
|
48
|
+
appear.set(withSpring(1, MENU_SPRING));
|
|
49
|
+
};
|
|
50
|
+
$[0] = appear;
|
|
51
|
+
$[1] = t1;
|
|
52
|
+
} else {
|
|
53
|
+
t1 = $[1];
|
|
54
|
+
}
|
|
55
|
+
const animateIn = t1;
|
|
56
|
+
let t2;
|
|
57
|
+
if ($[2] !== appear) {
|
|
58
|
+
t2 = onDone => {
|
|
59
|
+
appear.set(withTiming(0, MENU_OUT, finished => {
|
|
60
|
+
if (finished) {
|
|
61
|
+
runOnJS(onDone)();
|
|
62
|
+
}
|
|
63
|
+
}));
|
|
64
|
+
};
|
|
65
|
+
$[2] = appear;
|
|
66
|
+
$[3] = t2;
|
|
67
|
+
} else {
|
|
68
|
+
t2 = $[3];
|
|
69
|
+
}
|
|
70
|
+
const animateOut = t2;
|
|
71
|
+
const {
|
|
72
|
+
isMounted,
|
|
73
|
+
close
|
|
74
|
+
} = useAnimatedPresence(!!anchor, animateIn, animateOut);
|
|
75
|
+
let t3;
|
|
76
|
+
if ($[4] !== rate) {
|
|
77
|
+
t3 = () => {
|
|
78
|
+
setPlaybackRate(nextPlaybackRate(rate));
|
|
79
|
+
};
|
|
80
|
+
$[4] = rate;
|
|
81
|
+
$[5] = t3;
|
|
82
|
+
} else {
|
|
83
|
+
t3 = $[5];
|
|
84
|
+
}
|
|
85
|
+
const cycle = t3;
|
|
86
|
+
let t4;
|
|
87
|
+
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
|
|
88
|
+
t4 = () => {
|
|
89
|
+
pillRef.current?.measureInWindow((x, y, width, height) => {
|
|
90
|
+
const next = {
|
|
91
|
+
x: x + width / 2,
|
|
92
|
+
y: y + height
|
|
93
|
+
};
|
|
94
|
+
setAnchor(next);
|
|
95
|
+
setLastAnchor(next);
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
$[6] = t4;
|
|
99
|
+
} else {
|
|
100
|
+
t4 = $[6];
|
|
101
|
+
}
|
|
102
|
+
const openMenu = t4;
|
|
103
|
+
let t5;
|
|
104
|
+
if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
|
|
105
|
+
t5 = () => setAnchor(null);
|
|
106
|
+
$[7] = t5;
|
|
107
|
+
} else {
|
|
108
|
+
t5 = $[7];
|
|
109
|
+
}
|
|
110
|
+
const clearAnchor = t5;
|
|
111
|
+
let t6;
|
|
112
|
+
if ($[8] !== close) {
|
|
113
|
+
t6 = () => close(clearAnchor);
|
|
114
|
+
$[8] = close;
|
|
115
|
+
$[9] = t6;
|
|
116
|
+
} else {
|
|
117
|
+
t6 = $[9];
|
|
118
|
+
}
|
|
119
|
+
const closeMenu = t6;
|
|
120
|
+
let t7;
|
|
121
|
+
if ($[10] !== close) {
|
|
122
|
+
t7 = next_0 => {
|
|
123
|
+
setPlaybackRate(next_0);
|
|
124
|
+
close(clearAnchor);
|
|
125
|
+
};
|
|
126
|
+
$[10] = close;
|
|
127
|
+
$[11] = t7;
|
|
128
|
+
} else {
|
|
129
|
+
t7 = $[11];
|
|
130
|
+
}
|
|
131
|
+
const pick = t7;
|
|
132
|
+
const menuHeight = PLAYBACK_RATE_PRESETS.length * MENU_ROW_HEIGHT;
|
|
133
|
+
const isBelow = !!shownAnchor && shownAnchor.y + menuHeight + 8 < windowHeight;
|
|
134
|
+
const menuTop = shownAnchor ? isBelow ? shownAnchor.y + 4 : Math.max(8, shownAnchor.y - menuHeight - 24) : 0;
|
|
135
|
+
const menuLeft = shownAnchor ? Math.max(8, Math.min(windowWidth - MENU_WIDTH - 8, shownAnchor.x - MENU_WIDTH / 2)) : 0;
|
|
136
|
+
const originX = shownAnchor ? shownAnchor.x - menuLeft : MENU_WIDTH / 2;
|
|
137
|
+
const menuStyle = useAnimatedStyle(() => ({
|
|
138
|
+
opacity: interpolate(appear.value, [0, 0.5], [0, 1], Extrapolation.CLAMP),
|
|
139
|
+
transform: [{
|
|
140
|
+
scale: 0.6 + 0.4 * appear.value
|
|
141
|
+
}]
|
|
142
|
+
}));
|
|
143
|
+
let t8;
|
|
144
|
+
if ($[12] !== rate) {
|
|
145
|
+
t8 = formatRate(rate);
|
|
146
|
+
$[12] = rate;
|
|
147
|
+
$[13] = t8;
|
|
148
|
+
} else {
|
|
149
|
+
t8 = $[13];
|
|
150
|
+
}
|
|
151
|
+
const t9 = `playback speed ${t8}`;
|
|
152
|
+
let t10;
|
|
153
|
+
if ($[14] === Symbol.for("react.memo_cache_sentinel")) {
|
|
154
|
+
t10 = {
|
|
155
|
+
top: 6,
|
|
156
|
+
bottom: 6,
|
|
157
|
+
left: 6,
|
|
158
|
+
right: 6
|
|
159
|
+
};
|
|
160
|
+
$[14] = t10;
|
|
161
|
+
} else {
|
|
162
|
+
t10 = $[14];
|
|
163
|
+
}
|
|
164
|
+
const t11 = rate !== 1 && styles.pillActive;
|
|
165
|
+
let t12;
|
|
166
|
+
if ($[15] !== styles.pill || $[16] !== t11) {
|
|
167
|
+
t12 = [styles.pill, t11];
|
|
168
|
+
$[15] = styles.pill;
|
|
169
|
+
$[16] = t11;
|
|
170
|
+
$[17] = t12;
|
|
171
|
+
} else {
|
|
172
|
+
t12 = $[17];
|
|
173
|
+
}
|
|
174
|
+
const t13 = rate !== 1 && styles.pillTextActive;
|
|
175
|
+
let t14;
|
|
176
|
+
if ($[18] !== styles.pillText || $[19] !== t13) {
|
|
177
|
+
t14 = [styles.pillText, t13];
|
|
178
|
+
$[18] = styles.pillText;
|
|
179
|
+
$[19] = t13;
|
|
180
|
+
$[20] = t14;
|
|
181
|
+
} else {
|
|
182
|
+
t14 = $[20];
|
|
183
|
+
}
|
|
184
|
+
let t15;
|
|
185
|
+
if ($[21] !== rate) {
|
|
186
|
+
t15 = formatRate(rate);
|
|
187
|
+
$[21] = rate;
|
|
188
|
+
$[22] = t15;
|
|
189
|
+
} else {
|
|
190
|
+
t15 = $[22];
|
|
191
|
+
}
|
|
192
|
+
let t16;
|
|
193
|
+
if ($[23] !== t14 || $[24] !== t15) {
|
|
194
|
+
t16 = <Text style={t14}>{t15}</Text>;
|
|
195
|
+
$[23] = t14;
|
|
196
|
+
$[24] = t15;
|
|
197
|
+
$[25] = t16;
|
|
198
|
+
} else {
|
|
199
|
+
t16 = $[25];
|
|
200
|
+
}
|
|
201
|
+
let t17;
|
|
202
|
+
if ($[26] !== cycle || $[27] !== t12 || $[28] !== t16 || $[29] !== t9) {
|
|
203
|
+
t17 = <Pressable ref={pillRef} onPress={cycle} onLongPress={openMenu} accessibilityRole="button" accessibilityLabel={t9} accessibilityHint="long press for more speeds" hitSlop={t10} style={t12}>{t16}</Pressable>;
|
|
204
|
+
$[26] = cycle;
|
|
205
|
+
$[27] = t12;
|
|
206
|
+
$[28] = t16;
|
|
207
|
+
$[29] = t9;
|
|
208
|
+
$[30] = t17;
|
|
209
|
+
} else {
|
|
210
|
+
t17 = $[30];
|
|
211
|
+
}
|
|
212
|
+
const t18 = isBelow ? 0 : menuHeight + 8;
|
|
213
|
+
let t19;
|
|
214
|
+
if ($[31] !== originX || $[32] !== t18) {
|
|
215
|
+
t19 = [originX, t18, 0];
|
|
216
|
+
$[31] = originX;
|
|
217
|
+
$[32] = t18;
|
|
218
|
+
$[33] = t19;
|
|
219
|
+
} else {
|
|
220
|
+
t19 = $[33];
|
|
221
|
+
}
|
|
222
|
+
let t20;
|
|
223
|
+
if ($[34] !== menuLeft || $[35] !== menuTop || $[36] !== t19) {
|
|
224
|
+
t20 = {
|
|
225
|
+
top: menuTop,
|
|
226
|
+
left: menuLeft,
|
|
227
|
+
transformOrigin: t19
|
|
228
|
+
};
|
|
229
|
+
$[34] = menuLeft;
|
|
230
|
+
$[35] = menuTop;
|
|
231
|
+
$[36] = t19;
|
|
232
|
+
$[37] = t20;
|
|
233
|
+
} else {
|
|
234
|
+
t20 = $[37];
|
|
235
|
+
}
|
|
236
|
+
let t21;
|
|
237
|
+
if ($[38] !== menuStyle || $[39] !== styles.menu || $[40] !== t20) {
|
|
238
|
+
t21 = [styles.menu, t20, menuStyle];
|
|
239
|
+
$[38] = menuStyle;
|
|
240
|
+
$[39] = styles.menu;
|
|
241
|
+
$[40] = t20;
|
|
242
|
+
$[41] = t21;
|
|
243
|
+
} else {
|
|
244
|
+
t21 = $[41];
|
|
245
|
+
}
|
|
246
|
+
let t22;
|
|
247
|
+
if ($[42] !== pick || $[43] !== rate || $[44] !== styles.menuRow || $[45] !== styles.menuText || $[46] !== styles.menuTextSelected) {
|
|
248
|
+
t22 = PLAYBACK_RATE_PRESETS.map(preset => <Pressable key={preset} onPress={() => pick(preset)} accessibilityRole="button" accessibilityState={{
|
|
249
|
+
selected: preset === rate
|
|
250
|
+
}} style={styles.menuRow}><Text style={[styles.menuText, preset === rate && styles.menuTextSelected]}>{formatRate(preset)}</Text></Pressable>);
|
|
251
|
+
$[42] = pick;
|
|
252
|
+
$[43] = rate;
|
|
253
|
+
$[44] = styles.menuRow;
|
|
254
|
+
$[45] = styles.menuText;
|
|
255
|
+
$[46] = styles.menuTextSelected;
|
|
256
|
+
$[47] = t22;
|
|
257
|
+
} else {
|
|
258
|
+
t22 = $[47];
|
|
259
|
+
}
|
|
260
|
+
let t23;
|
|
261
|
+
if ($[48] !== t21 || $[49] !== t22) {
|
|
262
|
+
t23 = <Animated.View style={t21}>{t22}</Animated.View>;
|
|
263
|
+
$[48] = t21;
|
|
264
|
+
$[49] = t22;
|
|
265
|
+
$[50] = t23;
|
|
266
|
+
} else {
|
|
267
|
+
t23 = $[50];
|
|
268
|
+
}
|
|
269
|
+
let t24;
|
|
270
|
+
if ($[51] !== closeMenu || $[52] !== t23) {
|
|
271
|
+
t24 = <Pressable style={StyleSheet.absoluteFill} onPress={closeMenu} accessibilityLabel="close">{t23}</Pressable>;
|
|
272
|
+
$[51] = closeMenu;
|
|
273
|
+
$[52] = t23;
|
|
274
|
+
$[53] = t24;
|
|
275
|
+
} else {
|
|
276
|
+
t24 = $[53];
|
|
277
|
+
}
|
|
278
|
+
let t25;
|
|
279
|
+
if ($[54] !== closeMenu || $[55] !== isMounted || $[56] !== t24) {
|
|
280
|
+
t25 = <Modal visible={isMounted} transparent={true} animationType="none" onRequestClose={closeMenu}>{t24}</Modal>;
|
|
281
|
+
$[54] = closeMenu;
|
|
282
|
+
$[55] = isMounted;
|
|
283
|
+
$[56] = t24;
|
|
284
|
+
$[57] = t25;
|
|
285
|
+
} else {
|
|
286
|
+
t25 = $[57];
|
|
287
|
+
}
|
|
288
|
+
let t26;
|
|
289
|
+
if ($[58] !== t17 || $[59] !== t25) {
|
|
290
|
+
t26 = <>{t17}{t25}</>;
|
|
291
|
+
$[58] = t17;
|
|
292
|
+
$[59] = t25;
|
|
293
|
+
$[60] = t26;
|
|
294
|
+
} else {
|
|
295
|
+
t26 = $[60];
|
|
296
|
+
}
|
|
297
|
+
return t26;
|
|
298
|
+
}
|
|
299
|
+
const createStyles = theme => StyleSheet.create({
|
|
300
|
+
// The rate in 10dp bold inside a 1.6dp
|
|
301
|
+
// outline with 3dp corners and 3dp either side, drawn in the close
|
|
302
|
+
// button's gray at 1x and in the accent otherwise.
|
|
303
|
+
pill: {
|
|
304
|
+
paddingHorizontal: 3,
|
|
305
|
+
borderWidth: 1.6,
|
|
306
|
+
borderRadius: 3,
|
|
307
|
+
borderColor: theme.colors.placeholder
|
|
308
|
+
},
|
|
309
|
+
pillActive: {
|
|
310
|
+
borderColor: theme.colors.accent
|
|
311
|
+
},
|
|
312
|
+
pillText: {
|
|
313
|
+
fontSize: 10,
|
|
314
|
+
lineHeight: 13,
|
|
315
|
+
fontWeight: '700',
|
|
316
|
+
color: theme.colors.placeholder
|
|
317
|
+
},
|
|
318
|
+
pillTextActive: {
|
|
319
|
+
color: theme.colors.accent
|
|
320
|
+
},
|
|
321
|
+
menu: {
|
|
322
|
+
position: 'absolute',
|
|
323
|
+
width: MENU_WIDTH,
|
|
324
|
+
borderRadius: 12,
|
|
325
|
+
paddingVertical: 4,
|
|
326
|
+
backgroundColor: theme.colors.inputBackground,
|
|
327
|
+
shadowColor: '#000',
|
|
328
|
+
shadowOpacity: 0.2,
|
|
329
|
+
shadowRadius: 12,
|
|
330
|
+
shadowOffset: {
|
|
331
|
+
width: 0,
|
|
332
|
+
height: 4
|
|
333
|
+
},
|
|
334
|
+
elevation: 8
|
|
335
|
+
},
|
|
336
|
+
menuRow: {
|
|
337
|
+
height: MENU_ROW_HEIGHT,
|
|
338
|
+
justifyContent: 'center',
|
|
339
|
+
paddingHorizontal: 16
|
|
340
|
+
},
|
|
341
|
+
menuText: {
|
|
342
|
+
fontSize: 15,
|
|
343
|
+
color: theme.colors.inputText
|
|
344
|
+
},
|
|
345
|
+
menuTextSelected: {
|
|
346
|
+
color: theme.colors.accent,
|
|
347
|
+
fontWeight: '600'
|
|
348
|
+
}
|
|
349
|
+
});
|
|
350
|
+
//# sourceMappingURL=PlaybackSpeedPill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlaybackSpeedPill.js","names":["React","useCallback","useRef","useState","Modal","Pressable","StyleSheet","Text","useWindowDimensions","Animated","Easing","Extrapolation","ReduceMotion","interpolate","runOnJS","useAnimatedStyle","useSharedValue","withSpring","withTiming","useAnimatedPresence","useThemedStyles","PLAYBACK_RATE_PRESETS","nextPlaybackRate","setPlaybackRate","MENU_WIDTH","MENU_ROW_HEIGHT","MENU_SPRING","damping","stiffness","mass","reduceMotion","System","MENU_OUT","duration","easing","out","quad","formatRate","rate","Number","toFixed","PlaybackSpeedPill","t0","$","_c","styles","createStyles","width","windowWidth","height","windowHeight","pillRef","anchor","setAnchor","lastAnchor","setLastAnchor","shownAnchor","appear","t1","set","animateIn","t2","onDone","finished","animateOut","isMounted","close","t3","cycle","t4","Symbol","for","current","measureInWindow","x","y","next","openMenu","t5","clearAnchor","t6","closeMenu","t7","next_0","pick","menuHeight","length","isBelow","menuTop","Math","max","menuLeft","min","originX","menuStyle","opacity","value","CLAMP","transform","scale","t8","t9","t10","top","bottom","left","right","t11","pillActive","t12","pill","t13","pillTextActive","t14","pillText","t15","t16","t17","t18","t19","t20","transformOrigin","t21","menu","t22","menuRow","menuText","menuTextSelected","map","preset","selected","t23","t24","absoluteFill","t25","t26","theme","create","paddingHorizontal","borderWidth","borderRadius","borderColor","colors","placeholder","accent","fontSize","lineHeight","fontWeight","color","position","paddingVertical","backgroundColor","inputBackground","shadowColor","shadowOpacity","shadowRadius","shadowOffset","elevation","justifyContent","inputText"],"sources":["../../src/components/PlaybackSpeedPill.tsx"],"sourcesContent":["import React, { useCallback, useRef, useState } from 'react'\nimport { Modal, Pressable, StyleSheet, Text, View, useWindowDimensions } from 'react-native'\nimport Animated, {\n Easing,\n Extrapolation,\n ReduceMotion,\n interpolate,\n runOnJS,\n useAnimatedStyle,\n useSharedValue,\n withSpring,\n withTiming,\n} from 'react-native-reanimated'\n\nimport { useAnimatedPresence } from '../hooks/useAnimatedPresence'\nimport { useThemedStyles } from '../hooks/useTheme'\nimport { ChatTheme } from '../Theme'\nimport { PLAYBACK_RATE_PRESETS, nextPlaybackRate, setPlaybackRate } from './mediaPlayback'\n\nconst MENU_WIDTH = 120\nconst MENU_ROW_HEIGHT = 40\n\n// The presets pop out of the pill like the message context menu does.\nconst MENU_SPRING = { damping: 20, stiffness: 360, mass: 0.8, reduceMotion: ReduceMotion.System }\nconst MENU_OUT = { duration: 160, easing: Easing.out(Easing.quad), reduceMotion: ReduceMotion.System }\n\nexport interface PlaybackSpeedPillProps {\n rate: number\n}\n\nconst formatRate = (rate: number) => `${Number(rate.toFixed(2))}x`\n\n/**\n * The speed pill on a voice note: a tap cycles 1x / 1.5x / 2x, a long press\n * opens the speed presets. The speed is shared by\n * every note.\n */\nexport function PlaybackSpeedPill ({ rate }: PlaybackSpeedPillProps) {\n const styles = useThemedStyles(createStyles)\n const { width: windowWidth, height: windowHeight } = useWindowDimensions()\n const pillRef = useRef<React.ComponentRef<typeof View>>(null)\n const [anchor, setAnchor] = useState<{ x: number, y: number } | null>(null)\n // The menu keeps its spot while it animates out after `anchor` is cleared.\n const [lastAnchor, setLastAnchor] = useState<{ x: number, y: number } | null>(null)\n const shownAnchor = anchor ?? lastAnchor\n\n const appear = useSharedValue(0)\n const animateIn = useCallback(() => {\n appear.set(withSpring(1, MENU_SPRING))\n }, [appear])\n const animateOut = useCallback((onDone: () => void) => {\n appear.set(withTiming(0, MENU_OUT, finished => {\n if (finished)\n runOnJS(onDone)()\n }))\n }, [appear])\n const { isMounted, close } = useAnimatedPresence(!!anchor, animateIn, animateOut)\n\n const cycle = useCallback(() => {\n setPlaybackRate(nextPlaybackRate(rate))\n }, [rate])\n\n const openMenu = useCallback(() => {\n pillRef.current?.measureInWindow((x, y, width, height) => {\n const next = { x: x + width / 2, y: y + height }\n setAnchor(next)\n setLastAnchor(next)\n })\n }, [])\n\n const clearAnchor = useCallback(() => setAnchor(null), [])\n const closeMenu = useCallback(() => close(clearAnchor), [close, clearAnchor])\n\n const pick = useCallback((next: number) => {\n setPlaybackRate(next)\n close(clearAnchor)\n }, [close, clearAnchor])\n\n const menuHeight = PLAYBACK_RATE_PRESETS.length * MENU_ROW_HEIGHT\n // Below the pill when it fits, above it otherwise, always on screen.\n const isBelow = !!shownAnchor && shownAnchor.y + menuHeight + 8 < windowHeight\n const menuTop = shownAnchor\n ? (isBelow ? shownAnchor.y + 4 : Math.max(8, shownAnchor.y - menuHeight - 24))\n : 0\n const menuLeft = shownAnchor\n ? Math.max(8, Math.min(windowWidth - MENU_WIDTH - 8, shownAnchor.x - MENU_WIDTH / 2))\n : 0\n // Grow out of the edge that faces the pill, at the pill's x.\n const originX = shownAnchor ? shownAnchor.x - menuLeft : MENU_WIDTH / 2\n\n const menuStyle = useAnimatedStyle(() => ({\n opacity: interpolate(appear.value, [0, 0.5], [0, 1], Extrapolation.CLAMP),\n transform: [{ scale: 0.6 + 0.4 * appear.value }],\n }))\n\n return (\n <>\n <Pressable\n ref={pillRef}\n onPress={cycle}\n onLongPress={openMenu}\n accessibilityRole='button'\n accessibilityLabel={`playback speed ${formatRate(rate)}`}\n accessibilityHint='long press for more speeds'\n hitSlop={{ top: 6, bottom: 6, left: 6, right: 6 }}\n style={[styles.pill, rate !== 1 && styles.pillActive]}\n >\n <Text style={[styles.pillText, rate !== 1 && styles.pillTextActive]}>{formatRate(rate)}</Text>\n </Pressable>\n\n <Modal visible={isMounted} transparent animationType='none' onRequestClose={closeMenu}>\n <Pressable style={StyleSheet.absoluteFill} onPress={closeMenu} accessibilityLabel='close'>\n <Animated.View\n style={[\n styles.menu,\n { top: menuTop, left: menuLeft, transformOrigin: [originX, isBelow ? 0 : menuHeight + 8, 0] },\n menuStyle,\n ]}\n >\n {PLAYBACK_RATE_PRESETS.map(preset => (\n <Pressable\n key={preset}\n onPress={() => pick(preset)}\n accessibilityRole='button'\n accessibilityState={{ selected: preset === rate }}\n style={styles.menuRow}\n >\n <Text style={[styles.menuText, preset === rate && styles.menuTextSelected]}>\n {formatRate(preset)}\n </Text>\n </Pressable>\n ))}\n </Animated.View>\n </Pressable>\n </Modal>\n </>\n )\n}\n\nconst createStyles = (theme: ChatTheme) => StyleSheet.create({\n // The rate in 10dp bold inside a 1.6dp\n // outline with 3dp corners and 3dp either side, drawn in the close\n // button's gray at 1x and in the accent otherwise.\n pill: {\n paddingHorizontal: 3,\n borderWidth: 1.6,\n borderRadius: 3,\n borderColor: theme.colors.placeholder,\n },\n pillActive: {\n borderColor: theme.colors.accent,\n },\n pillText: {\n fontSize: 10,\n lineHeight: 13,\n fontWeight: '700',\n color: theme.colors.placeholder,\n },\n pillTextActive: {\n color: theme.colors.accent,\n },\n menu: {\n position: 'absolute',\n width: MENU_WIDTH,\n borderRadius: 12,\n paddingVertical: 4,\n backgroundColor: theme.colors.inputBackground,\n shadowColor: '#000',\n shadowOpacity: 0.2,\n shadowRadius: 12,\n shadowOffset: { width: 0, height: 4 },\n elevation: 8,\n },\n menuRow: {\n height: MENU_ROW_HEIGHT,\n justifyContent: 'center',\n paddingHorizontal: 16,\n },\n menuText: {\n fontSize: 15,\n color: theme.colors.inputText,\n },\n menuTextSelected: {\n color: theme.colors.accent,\n fontWeight: '600',\n },\n})\n"],"mappings":"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","ignoreList":[]}
|