@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,22 @@
|
|
|
1
|
+
import { createContext, useContext } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Lets the message list close a panel the composer has open in the keyboard's place (the emoji
|
|
5
|
+
* keyboard), so a tap on the chat hides it. The composer registers its closer; the
|
|
6
|
+
* list calls `close` on a tap. A plain mutable store, so neither side re-renders for it.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export const createComposerPanelsStore = () => {
|
|
10
|
+
let closer = null;
|
|
11
|
+
return {
|
|
12
|
+
close: () => closer?.(),
|
|
13
|
+
setCloser: next => {
|
|
14
|
+
closer = next;
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export const ComposerPanelsContext = createContext(null);
|
|
19
|
+
export const useComposerPanels = () => {
|
|
20
|
+
return useContext(ComposerPanelsContext);
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=composerPanels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composerPanels.js","names":["createContext","useContext","createComposerPanelsStore","closer","close","setCloser","next","ComposerPanelsContext","useComposerPanels"],"sources":["../../src/components/composerPanels.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\n/**\n * Lets the message list close a panel the composer has open in the keyboard's place (the emoji\n * keyboard), so a tap on the chat hides it. The composer registers its closer; the\n * list calls `close` on a tap. A plain mutable store, so neither side re-renders for it.\n */\nexport interface ComposerPanelsStore {\n close: () => void\n setCloser: (closer: (() => void) | null) => void\n}\n\nexport const createComposerPanelsStore = (): ComposerPanelsStore => {\n let closer: (() => void) | null = null\n return {\n close: () => closer?.(),\n setCloser: next => {\n closer = next\n },\n }\n}\n\nexport const ComposerPanelsContext = createContext<ComposerPanelsStore | null>(null)\n\nexport const useComposerPanels = () => useContext(ComposerPanelsContext)\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;;AAEjD;AACA;AACA;AACA;AACA;;AAMA,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAA2B;EAClE,IAAIC,MAA2B,GAAG,IAAI;EACtC,OAAO;IACLC,KAAK,EAAEA,CAAA,KAAMD,MAAM,GAAG,CAAC;IACvBE,SAAS,EAAEC,IAAI,IAAI;MACjBH,MAAM,GAAGG,IAAI;IACf;EACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGP,aAAa,CAA6B,IAAI,CAAC;AAEpF,OAAO,MAAMQ,iBAAiB,GAAGA,CAAA;EAAA,OAAMP,UAAU,CAACM,qBAAqB,CAAC;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ChatLabels } from '../i18n';
|
|
2
|
+
import { IMessage, MessageActionKey, MessageMenuItem, User } from '../Models';
|
|
3
|
+
import { ClipboardAdapter } from '../optional';
|
|
4
|
+
/**
|
|
5
|
+
* The order of the actions the library can offer by itself, as a messenger lists them for a
|
|
6
|
+
* regular message: Reply, Copy, Forward, Pin / Unpin, Edit, Delete - with Select before
|
|
7
|
+
* Delete.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_MESSAGE_ACTION_KEYS: MessageActionKey[];
|
|
10
|
+
export interface DefaultMessageActionsOptions<TMessage extends IMessage> {
|
|
11
|
+
message: TMessage;
|
|
12
|
+
user?: User;
|
|
13
|
+
labels: ChatLabels;
|
|
14
|
+
/** Which actions to build, in this order. */
|
|
15
|
+
keys: MessageActionKey[];
|
|
16
|
+
clipboard: ClipboardAdapter | null;
|
|
17
|
+
onReply?: (message: TMessage) => void;
|
|
18
|
+
onEdit?: (message: TMessage) => void;
|
|
19
|
+
onForward?: (message: TMessage) => void;
|
|
20
|
+
onPin?: (message: TMessage) => void;
|
|
21
|
+
onSelect?: (message: TMessage) => void;
|
|
22
|
+
onDelete?: (message: TMessage) => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The actions that can work for this message: Reply when replying is on, Copy for text when a
|
|
26
|
+
* clipboard resolves, Edit for your own text when the app handles edits, and Forward, Pin and
|
|
27
|
+
* Delete when the app handles them.
|
|
28
|
+
*/
|
|
29
|
+
export declare function buildDefaultMessageActions<TMessage extends IMessage>({ message, user, labels, keys, clipboard, onReply, onEdit, onForward, onPin, onSelect, onDelete, }: DefaultMessageActionsOptions<TMessage>): MessageMenuItem[];
|
|
30
|
+
//# sourceMappingURL=defaultMessageActions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaultMessageActions.d.ts","sourceRoot":"","sources":["../../src/components/defaultMessageActions.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGpC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAI9C;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBAAgB,EAAoE,CAAA;AA4B9H,MAAM,WAAW,4BAA4B,CAAC,QAAQ,SAAS,QAAQ;IACrE,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,MAAM,EAAE,UAAU,CAAA;IAClB,6CAA6C;IAC7C,IAAI,EAAE,gBAAgB,EAAE,CAAA;IACxB,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAClC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;IACrC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;IACpC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;IACvC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;IACnC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAA;CACvC;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,SAAS,QAAQ,EAAG,EACrE,OAAO,EACP,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EACT,OAAO,EACP,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,GACT,EAAE,4BAA4B,CAAC,QAAQ,CAAC,GAAG,eAAe,EAAE,CAyD5D"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { devHint } from '../logging';
|
|
3
|
+
import { Icon } from './Icon';
|
|
4
|
+
import { PencilIcon, ReplyArrowIcon, TrashIcon } from './MediaControls';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The order of the actions the library can offer by itself, as a messenger lists them for a
|
|
8
|
+
* regular message: Reply, Copy, Forward, Pin / Unpin, Edit, Delete - with Select before
|
|
9
|
+
* Delete.
|
|
10
|
+
*/
|
|
11
|
+
export const DEFAULT_MESSAGE_ACTION_KEYS = ['reply', 'copy', 'forward', 'pin', 'edit', 'select', 'delete'];
|
|
12
|
+
const iconRenderer = (name, Fallback) => {
|
|
13
|
+
const render = ({
|
|
14
|
+
color,
|
|
15
|
+
size
|
|
16
|
+
}) => <Icon name={name} color={color} size={size} fallback={Fallback ? <Fallback color={color} size={size} /> : null} />;
|
|
17
|
+
return render;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
// Built once: a fresh renderer per menu would be a fresh prop per row.
|
|
21
|
+
const ICONS = {
|
|
22
|
+
reply: iconRenderer('reply', ReplyArrowIcon),
|
|
23
|
+
copy: iconRenderer('copy'),
|
|
24
|
+
forward: iconRenderer('forward'),
|
|
25
|
+
pin: iconRenderer('pushpin'),
|
|
26
|
+
unpin: iconRenderer('pinOff'),
|
|
27
|
+
edit: iconRenderer('pencil', PencilIcon),
|
|
28
|
+
select: iconRenderer('checkCircle'),
|
|
29
|
+
delete: iconRenderer('trash', TrashIcon)
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* The actions that can work for this message: Reply when replying is on, Copy for text when a
|
|
33
|
+
* clipboard resolves, Edit for your own text when the app handles edits, and Forward, Pin and
|
|
34
|
+
* Delete when the app handles them.
|
|
35
|
+
*/
|
|
36
|
+
export function buildDefaultMessageActions({
|
|
37
|
+
message,
|
|
38
|
+
user,
|
|
39
|
+
labels,
|
|
40
|
+
keys,
|
|
41
|
+
clipboard,
|
|
42
|
+
onReply,
|
|
43
|
+
onEdit,
|
|
44
|
+
onForward,
|
|
45
|
+
onPin,
|
|
46
|
+
onSelect,
|
|
47
|
+
onDelete
|
|
48
|
+
}) {
|
|
49
|
+
if (message.system) return [];
|
|
50
|
+
const isOwn = user?._id != null && message.user?._id === user._id;
|
|
51
|
+
const text = message.text;
|
|
52
|
+
const items = [];
|
|
53
|
+
for (const key of keys) switch (key) {
|
|
54
|
+
case 'reply':
|
|
55
|
+
if (onReply) items.push({
|
|
56
|
+
key,
|
|
57
|
+
label: labels.actionReply,
|
|
58
|
+
icon: ICONS.reply,
|
|
59
|
+
onPress: () => onReply(message)
|
|
60
|
+
});
|
|
61
|
+
break;
|
|
62
|
+
case 'copy':
|
|
63
|
+
if (!text) break;
|
|
64
|
+
if (!clipboard) {
|
|
65
|
+
devHint('copy-no-clipboard', 'Chat: the "Copy" message action is hidden - install `expo-clipboard` or `@react-native-clipboard/clipboard` to show it');
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
items.push({
|
|
69
|
+
key,
|
|
70
|
+
label: labels.actionCopy,
|
|
71
|
+
icon: ICONS.copy,
|
|
72
|
+
onPress: () => clipboard.setString(text)
|
|
73
|
+
});
|
|
74
|
+
break;
|
|
75
|
+
case 'edit':
|
|
76
|
+
if (onEdit && isOwn && !!text) items.push({
|
|
77
|
+
key,
|
|
78
|
+
label: labels.actionEdit,
|
|
79
|
+
icon: ICONS.edit,
|
|
80
|
+
onPress: () => onEdit(message)
|
|
81
|
+
});
|
|
82
|
+
break;
|
|
83
|
+
case 'forward':
|
|
84
|
+
if (onForward) items.push({
|
|
85
|
+
key,
|
|
86
|
+
label: labels.actionForward,
|
|
87
|
+
icon: ICONS.forward,
|
|
88
|
+
onPress: () => onForward(message)
|
|
89
|
+
});
|
|
90
|
+
break;
|
|
91
|
+
case 'pin':
|
|
92
|
+
if (onPin) items.push(message.isPinned ? {
|
|
93
|
+
key,
|
|
94
|
+
label: labels.actionUnpin,
|
|
95
|
+
icon: ICONS.unpin,
|
|
96
|
+
onPress: () => onPin(message)
|
|
97
|
+
} : {
|
|
98
|
+
key,
|
|
99
|
+
label: labels.actionPin,
|
|
100
|
+
icon: ICONS.pin,
|
|
101
|
+
onPress: () => onPin(message)
|
|
102
|
+
});
|
|
103
|
+
break;
|
|
104
|
+
case 'select':
|
|
105
|
+
if (onSelect) items.push({
|
|
106
|
+
key,
|
|
107
|
+
label: labels.actionSelect,
|
|
108
|
+
icon: ICONS.select,
|
|
109
|
+
onPress: () => onSelect(message)
|
|
110
|
+
});
|
|
111
|
+
break;
|
|
112
|
+
case 'delete':
|
|
113
|
+
if (onDelete) items.push({
|
|
114
|
+
key,
|
|
115
|
+
label: labels.actionDelete,
|
|
116
|
+
icon: ICONS.delete,
|
|
117
|
+
// Not red: the message menu draws Delete like any other row.
|
|
118
|
+
onPress: () => onDelete(message)
|
|
119
|
+
});
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
return items;
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=defaultMessageActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaultMessageActions.js","names":["React","devHint","Icon","PencilIcon","ReplyArrowIcon","TrashIcon","DEFAULT_MESSAGE_ACTION_KEYS","iconRenderer","name","Fallback","render","color","size","ICONS","reply","copy","forward","pin","unpin","edit","select","delete","buildDefaultMessageActions","message","user","labels","keys","clipboard","onReply","onEdit","onForward","onPin","onSelect","onDelete","system","isOwn","_id","text","items","key","push","label","actionReply","icon","onPress","actionCopy","setString","actionEdit","actionForward","isPinned","actionUnpin","actionPin","actionSelect","actionDelete"],"sources":["../../src/components/defaultMessageActions.tsx"],"sourcesContent":["import React from 'react'\n\nimport { ChatLabels } from '../i18n'\nimport { IconName, IconRenderer } from '../Icons'\nimport { devHint } from '../logging'\nimport { IMessage, MessageActionKey, MessageMenuItem, User } from '../Models'\nimport { ClipboardAdapter } from '../optional'\nimport { Icon } from './Icon'\nimport { PencilIcon, ReplyArrowIcon, TrashIcon } from './MediaControls'\n\n/**\n * The order of the actions the library can offer by itself, as a messenger lists them for a\n * regular message: Reply, Copy, Forward, Pin / Unpin, Edit, Delete - with Select before\n * Delete.\n */\nexport const DEFAULT_MESSAGE_ACTION_KEYS: MessageActionKey[] = ['reply', 'copy', 'forward', 'pin', 'edit', 'select', 'delete']\n\ntype DrawnIcon = (props: { color?: string, size?: number }) => React.ReactNode\n\nconst iconRenderer = (name: IconName, Fallback?: DrawnIcon): IconRenderer => {\n const render: IconRenderer = ({ color, size }) => (\n <Icon\n name={name}\n color={color}\n size={size}\n fallback={Fallback ? <Fallback color={color} size={size} /> : null}\n />\n )\n return render\n}\n\n// Built once: a fresh renderer per menu would be a fresh prop per row.\nconst ICONS: Record<MessageActionKey | 'unpin', IconRenderer> = {\n reply: iconRenderer('reply', ReplyArrowIcon),\n copy: iconRenderer('copy'),\n forward: iconRenderer('forward'),\n pin: iconRenderer('pushpin'),\n unpin: iconRenderer('pinOff'),\n edit: iconRenderer('pencil', PencilIcon),\n select: iconRenderer('checkCircle'),\n delete: iconRenderer('trash', TrashIcon),\n}\n\nexport interface DefaultMessageActionsOptions<TMessage extends IMessage> {\n message: TMessage\n user?: User\n labels: ChatLabels\n /** Which actions to build, in this order. */\n keys: MessageActionKey[]\n clipboard: ClipboardAdapter | null\n onReply?: (message: TMessage) => void\n onEdit?: (message: TMessage) => void\n onForward?: (message: TMessage) => void\n onPin?: (message: TMessage) => void\n onSelect?: (message: TMessage) => void\n onDelete?: (message: TMessage) => void\n}\n\n/**\n * The actions that can work for this message: Reply when replying is on, Copy for text when a\n * clipboard resolves, Edit for your own text when the app handles edits, and Forward, Pin and\n * Delete when the app handles them.\n */\nexport function buildDefaultMessageActions<TMessage extends IMessage> ({\n message,\n user,\n labels,\n keys,\n clipboard,\n onReply,\n onEdit,\n onForward,\n onPin,\n onSelect,\n onDelete,\n}: DefaultMessageActionsOptions<TMessage>): MessageMenuItem[] {\n if (message.system)\n return []\n\n const isOwn = user?._id != null && message.user?._id === user._id\n const text = message.text\n\n const items: MessageMenuItem[] = []\n for (const key of keys)\n switch (key) {\n case 'reply':\n if (onReply)\n items.push({ key, label: labels.actionReply, icon: ICONS.reply, onPress: () => onReply(message) })\n break\n case 'copy':\n if (!text)\n break\n if (!clipboard) {\n devHint(\n 'copy-no-clipboard',\n 'Chat: the \"Copy\" message action is hidden - install `expo-clipboard` or `@react-native-clipboard/clipboard` to show it'\n )\n break\n }\n items.push({ key, label: labels.actionCopy, icon: ICONS.copy, onPress: () => clipboard.setString(text) })\n break\n case 'edit':\n if (onEdit && isOwn && !!text)\n items.push({ key, label: labels.actionEdit, icon: ICONS.edit, onPress: () => onEdit(message) })\n break\n case 'forward':\n if (onForward)\n items.push({ key, label: labels.actionForward, icon: ICONS.forward, onPress: () => onForward(message) })\n break\n case 'pin':\n if (onPin)\n items.push(message.isPinned\n ? { key, label: labels.actionUnpin, icon: ICONS.unpin, onPress: () => onPin(message) }\n : { key, label: labels.actionPin, icon: ICONS.pin, onPress: () => onPin(message) })\n break\n case 'select':\n if (onSelect)\n items.push({ key, label: labels.actionSelect, icon: ICONS.select, onPress: () => onSelect(message) })\n break\n case 'delete':\n if (onDelete)\n items.push({\n key,\n label: labels.actionDelete,\n icon: ICONS.delete,\n // Not red: the message menu draws Delete like any other row.\n onPress: () => onDelete(message),\n })\n break\n }\n\n return items\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAIzB,SAASC,OAAO,QAAQ,YAAY;AAGpC,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,UAAU,EAAEC,cAAc,EAAEC,SAAS,QAAQ,iBAAiB;;AAEvE;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA+C,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;AAI9H,MAAMC,YAAY,GAAGA,CAACC,IAAc,EAAEC,QAAoB,KAAmB;EAC3E,MAAMC,MAAoB,GAAGA,CAAC;IAAEC,KAAK;IAAEC;EAAK,CAAC,KAC3C,CAAC,IAAI,CACH,IAAI,CAAC,CAACJ,IAAI,CAAC,CACX,KAAK,CAAC,CAACG,KAAK,CAAC,CACb,IAAI,CAAC,CAACC,IAAI,CAAC,CACX,QAAQ,CAAC,CAACH,QAAQ,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAACE,KAAK,CAAC,CAAC,IAAI,CAAC,CAACC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAEtE;EACD,OAAOF,MAAM;AACf,CAAC;;AAED;AACA,MAAMG,KAAuD,GAAG;EAC9DC,KAAK,EAAEP,YAAY,CAAC,OAAO,EAAEH,cAAc,CAAC;EAC5CW,IAAI,EAAER,YAAY,CAAC,MAAM,CAAC;EAC1BS,OAAO,EAAET,YAAY,CAAC,SAAS,CAAC;EAChCU,GAAG,EAAEV,YAAY,CAAC,SAAS,CAAC;EAC5BW,KAAK,EAAEX,YAAY,CAAC,QAAQ,CAAC;EAC7BY,IAAI,EAAEZ,YAAY,CAAC,QAAQ,EAAEJ,UAAU,CAAC;EACxCiB,MAAM,EAAEb,YAAY,CAAC,aAAa,CAAC;EACnCc,MAAM,EAAEd,YAAY,CAAC,OAAO,EAAEF,SAAS;AACzC,CAAC;AAiBD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASiB,0BAA0BA,CAA6B;EACrEC,OAAO;EACPC,IAAI;EACJC,MAAM;EACNC,IAAI;EACJC,SAAS;EACTC,OAAO;EACPC,MAAM;EACNC,SAAS;EACTC,KAAK;EACLC,QAAQ;EACRC;AACsC,CAAC,EAAqB;EAC5D,IAAIV,OAAO,CAACW,MAAM,EAChB,OAAO,EAAE;EAEX,MAAMC,KAAK,GAAGX,IAAI,EAAEY,GAAG,IAAI,IAAI,IAAIb,OAAO,CAACC,IAAI,EAAEY,GAAG,KAAKZ,IAAI,CAACY,GAAG;EACjE,MAAMC,IAAI,GAAGd,OAAO,CAACc,IAAI;EAEzB,MAAMC,KAAwB,GAAG,EAAE;EACnC,KAAK,MAAMC,GAAG,IAAIb,IAAI,EACpB,QAAQa,GAAG;IACT,KAAK,OAAO;MACV,IAAIX,OAAO,EACTU,KAAK,CAACE,IAAI,CAAC;QAAED,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAACiB,WAAW;QAAEC,IAAI,EAAE9B,KAAK,CAACC,KAAK;QAAE8B,OAAO,EAAEA,CAAA,KAAMhB,OAAO,CAACL,OAAO;MAAE,CAAC,CAAC;MACpG;IACF,KAAK,MAAM;MACT,IAAI,CAACc,IAAI,EACP;MACF,IAAI,CAACV,SAAS,EAAE;QACd1B,OAAO,CACL,mBAAmB,EACnB,wHACF,CAAC;QACD;MACF;MACAqC,KAAK,CAACE,IAAI,CAAC;QAAED,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAACoB,UAAU;QAAEF,IAAI,EAAE9B,KAAK,CAACE,IAAI;QAAE6B,OAAO,EAAEA,CAAA,KAAMjB,SAAS,CAACmB,SAAS,CAACT,IAAI;MAAE,CAAC,CAAC;MACzG;IACF,KAAK,MAAM;MACT,IAAIR,MAAM,IAAIM,KAAK,IAAI,CAAC,CAACE,IAAI,EAC3BC,KAAK,CAACE,IAAI,CAAC;QAAED,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAACsB,UAAU;QAAEJ,IAAI,EAAE9B,KAAK,CAACM,IAAI;QAAEyB,OAAO,EAAEA,CAAA,KAAMf,MAAM,CAACN,OAAO;MAAE,CAAC,CAAC;MACjG;IACF,KAAK,SAAS;MACZ,IAAIO,SAAS,EACXQ,KAAK,CAACE,IAAI,CAAC;QAAED,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAACuB,aAAa;QAAEL,IAAI,EAAE9B,KAAK,CAACG,OAAO;QAAE4B,OAAO,EAAEA,CAAA,KAAMd,SAAS,CAACP,OAAO;MAAE,CAAC,CAAC;MAC1G;IACF,KAAK,KAAK;MACR,IAAIQ,KAAK,EACPO,KAAK,CAACE,IAAI,CAACjB,OAAO,CAAC0B,QAAQ,GACvB;QAAEV,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAACyB,WAAW;QAAEP,IAAI,EAAE9B,KAAK,CAACK,KAAK;QAAE0B,OAAO,EAAEA,CAAA,KAAMb,KAAK,CAACR,OAAO;MAAE,CAAC,GACpF;QAAEgB,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAAC0B,SAAS;QAAER,IAAI,EAAE9B,KAAK,CAACI,GAAG;QAAE2B,OAAO,EAAEA,CAAA,KAAMb,KAAK,CAACR,OAAO;MAAE,CAAC,CAAC;MACvF;IACF,KAAK,QAAQ;MACX,IAAIS,QAAQ,EACVM,KAAK,CAACE,IAAI,CAAC;QAAED,GAAG;QAAEE,KAAK,EAAEhB,MAAM,CAAC2B,YAAY;QAAET,IAAI,EAAE9B,KAAK,CAACO,MAAM;QAAEwB,OAAO,EAAEA,CAAA,KAAMZ,QAAQ,CAACT,OAAO;MAAE,CAAC,CAAC;MACvG;IACF,KAAK,QAAQ;MACX,IAAIU,QAAQ,EACVK,KAAK,CAACE,IAAI,CAAC;QACTD,GAAG;QACHE,KAAK,EAAEhB,MAAM,CAAC4B,YAAY;QAC1BV,IAAI,EAAE9B,KAAK,CAACQ,MAAM;QAClB;QACAuB,OAAO,EAAEA,CAAA,KAAMX,QAAQ,CAACV,OAAO;MACjC,CAAC,CAAC;MACJ;EACJ;EAEF,OAAOe,KAAK;AACd","ignoreList":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `startAudioAgain` seeks to 0 when `audioProgress * duration` is under a
|
|
3
|
+
* second: a note just started is heard from its beginning at the ear.
|
|
4
|
+
*/
|
|
5
|
+
export declare const RAISE_RESTART_SECONDS = 1;
|
|
6
|
+
/**
|
|
7
|
+
* Points both engines at the earpiece or back at the speaker.
|
|
8
|
+
*
|
|
9
|
+
* iOS has one shared AVAudioSession: the `playAndRecord` category without
|
|
10
|
+
* `defaultToSpeaker` plays through the receiver, like the voice-call
|
|
11
|
+
* stream on Android. `playback` is the plain speaker route
|
|
12
|
+
* the players start in. On Android, expo-audio's `shouldRouteThroughEarpiece`
|
|
13
|
+
* switches the system to communication mode with the speakerphone off;
|
|
14
|
+
* react-native-audio-api has no Android routing of its own.
|
|
15
|
+
*/
|
|
16
|
+
export declare const applyEarpieceRoute: (isEarpiece: boolean) => void;
|
|
17
|
+
/** Holds the earpiece route until the returned release is called. */
|
|
18
|
+
export declare const acquireEarpiece: () => () => void;
|
|
19
|
+
/** Whether audio is currently routed to the earpiece. */
|
|
20
|
+
export declare const isEarpieceRouted: () => boolean;
|
|
21
|
+
export type RaiseToListenAction = {
|
|
22
|
+
type: 'listen';
|
|
23
|
+
fromStart: boolean;
|
|
24
|
+
} | {
|
|
25
|
+
type: 'pause';
|
|
26
|
+
} | {
|
|
27
|
+
type: 'release';
|
|
28
|
+
} | null;
|
|
29
|
+
/**
|
|
30
|
+
* One step of raise to listen. `isListening`: this player holds the earpiece.
|
|
31
|
+
* Raised with the note current: listen (from the start if under a second in).
|
|
32
|
+
* Lowered while listening: back to the speaker and pause. No longer current
|
|
33
|
+
* while listening (it ended or another note took over): drop the claim without
|
|
34
|
+
* pausing, so the next note can keep the earpiece.
|
|
35
|
+
*/
|
|
36
|
+
export declare const raiseToListenStep: ({ isListening, isNearEar, isCurrent, positionSeconds, }: {
|
|
37
|
+
isListening: boolean;
|
|
38
|
+
isNearEar: boolean;
|
|
39
|
+
isCurrent: boolean;
|
|
40
|
+
positionSeconds: number;
|
|
41
|
+
}) => RaiseToListenAction;
|
|
42
|
+
export interface RaiseToListenOptions {
|
|
43
|
+
/** The note is current: playing, or paused part-way. */
|
|
44
|
+
isCurrent: boolean;
|
|
45
|
+
/** Seconds played so far. */
|
|
46
|
+
getPositionSeconds: () => number;
|
|
47
|
+
/** Play at the ear; `fromStart` rewinds first. */
|
|
48
|
+
listen: (fromStart: boolean) => void;
|
|
49
|
+
pause: () => void;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Raise to listen for one player, driven by `mediaPlayback.isNearEar`. Voice
|
|
53
|
+
* and round notes use it. A no-op outside a `Chat`.
|
|
54
|
+
*/
|
|
55
|
+
export declare const useRaiseToListen: ({ isCurrent, getPositionSeconds, listen, pause }: RaiseToListenOptions) => void;
|
|
56
|
+
//# sourceMappingURL=earpiece.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"earpiece.d.ts","sourceRoot":"","sources":["../../src/components/earpiece.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,GAAI,YAAY,OAAO,SAqBrD,CAAA;AAYD,qEAAqE;AACrE,eAAO,MAAM,eAAe,kBA4B3B,CAAA;AAED,yDAAyD;AACzD,eAAO,MAAM,gBAAgB,eAAiB,CAAA;AAE9C,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB,IAAI,CAAA;AAER;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,yDAK/B;IACD,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,SAAS,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB,KAAG,mBAWH,CAAA;AAED,MAAM,WAAW,oBAAoB;IACnC,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAA;IAClB,6BAA6B;IAC7B,kBAAkB,EAAE,MAAM,MAAM,CAAA;IAChC,kDAAkD;IAClD,MAAM,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;IACpC,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,kDAAkD,oBAAoB,SAmCtG,CAAA"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { c as _c } from "react/compiler-runtime";
|
|
2
|
+
import { useEffect, useLayoutEffect, useRef } from 'react';
|
|
3
|
+
import { getAudioApi, getExpoAudio } from '../optional';
|
|
4
|
+
import { useIsNearEar } from './mediaPlayback';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Raise to listen: with a voice or round note current, holding the phone to
|
|
8
|
+
* the ear moves playback to the earpiece and plays it, restarting a note that
|
|
9
|
+
* had played for under a second; lowering it goes back to the speaker and
|
|
10
|
+
* pauses.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
// Both audio engines are optional peers, resolved like everywhere else.
|
|
14
|
+
const audioApi = getAudioApi();
|
|
15
|
+
const expoAudio = getExpoAudio();
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* `startAudioAgain` seeks to 0 when `audioProgress * duration` is under a
|
|
19
|
+
* second: a note just started is heard from its beginning at the ear.
|
|
20
|
+
*/
|
|
21
|
+
export const RAISE_RESTART_SECONDS = 1;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Points both engines at the earpiece or back at the speaker.
|
|
25
|
+
*
|
|
26
|
+
* iOS has one shared AVAudioSession: the `playAndRecord` category without
|
|
27
|
+
* `defaultToSpeaker` plays through the receiver, like the voice-call
|
|
28
|
+
* stream on Android. `playback` is the plain speaker route
|
|
29
|
+
* the players start in. On Android, expo-audio's `shouldRouteThroughEarpiece`
|
|
30
|
+
* switches the system to communication mode with the speakerphone off;
|
|
31
|
+
* react-native-audio-api has no Android routing of its own.
|
|
32
|
+
*/
|
|
33
|
+
export const applyEarpieceRoute = isEarpiece => {
|
|
34
|
+
try {
|
|
35
|
+
audioApi?.AudioManager?.setAudioSessionOptions?.(isEarpiece ? {
|
|
36
|
+
iosCategory: 'playAndRecord',
|
|
37
|
+
iosMode: 'default',
|
|
38
|
+
iosOptions: []
|
|
39
|
+
} : {
|
|
40
|
+
iosCategory: 'playback',
|
|
41
|
+
iosMode: 'default',
|
|
42
|
+
iosOptions: []
|
|
43
|
+
});
|
|
44
|
+
} catch {
|
|
45
|
+
// an engine that cannot route must not stop playback
|
|
46
|
+
}
|
|
47
|
+
try {
|
|
48
|
+
const pending = expoAudio?.setAudioModeAsync?.({
|
|
49
|
+
playsInSilentMode: true,
|
|
50
|
+
allowsRecording: isEarpiece,
|
|
51
|
+
shouldRouteThroughEarpiece: isEarpiece
|
|
52
|
+
});
|
|
53
|
+
pending?.catch?.(() => {});
|
|
54
|
+
} catch {
|
|
55
|
+
// an engine that cannot route must not stop playback
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
/*
|
|
60
|
+
* Several players can want the earpiece across a hand-over (a note ends at the
|
|
61
|
+
* ear and auto-play starts the next one), so the route is reference counted,
|
|
62
|
+
* and going back to the speaker waits a tick: the next note's claim, made in
|
|
63
|
+
* the same commit, cancels it instead of flipping the route twice.
|
|
64
|
+
*/
|
|
65
|
+
let holders = 0;
|
|
66
|
+
let isRouted = false;
|
|
67
|
+
let restoreTimer = null;
|
|
68
|
+
|
|
69
|
+
/** Holds the earpiece route until the returned release is called. */
|
|
70
|
+
export const acquireEarpiece = () => {
|
|
71
|
+
holders++;
|
|
72
|
+
if (restoreTimer != null) {
|
|
73
|
+
clearTimeout(restoreTimer);
|
|
74
|
+
restoreTimer = null;
|
|
75
|
+
}
|
|
76
|
+
if (!isRouted) {
|
|
77
|
+
isRouted = true;
|
|
78
|
+
applyEarpieceRoute(true);
|
|
79
|
+
}
|
|
80
|
+
let isReleased = false;
|
|
81
|
+
return () => {
|
|
82
|
+
if (isReleased) return;
|
|
83
|
+
isReleased = true;
|
|
84
|
+
holders--;
|
|
85
|
+
if (holders > 0 || restoreTimer != null) return;
|
|
86
|
+
restoreTimer = setTimeout(() => {
|
|
87
|
+
restoreTimer = null;
|
|
88
|
+
if (holders > 0 || !isRouted) return;
|
|
89
|
+
isRouted = false;
|
|
90
|
+
applyEarpieceRoute(false);
|
|
91
|
+
}, 0);
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
/** Whether audio is currently routed to the earpiece. */
|
|
96
|
+
export const isEarpieceRouted = () => isRouted;
|
|
97
|
+
/**
|
|
98
|
+
* One step of raise to listen. `isListening`: this player holds the earpiece.
|
|
99
|
+
* Raised with the note current: listen (from the start if under a second in).
|
|
100
|
+
* Lowered while listening: back to the speaker and pause. No longer current
|
|
101
|
+
* while listening (it ended or another note took over): drop the claim without
|
|
102
|
+
* pausing, so the next note can keep the earpiece.
|
|
103
|
+
*/
|
|
104
|
+
export const raiseToListenStep = ({
|
|
105
|
+
isListening,
|
|
106
|
+
isNearEar,
|
|
107
|
+
isCurrent,
|
|
108
|
+
positionSeconds
|
|
109
|
+
}) => {
|
|
110
|
+
if (!isListening) return isNearEar && isCurrent ? {
|
|
111
|
+
type: 'listen',
|
|
112
|
+
fromStart: !(positionSeconds >= RAISE_RESTART_SECONDS)
|
|
113
|
+
} : null;
|
|
114
|
+
if (!isNearEar) return {
|
|
115
|
+
type: 'pause'
|
|
116
|
+
};
|
|
117
|
+
if (!isCurrent) return {
|
|
118
|
+
type: 'release'
|
|
119
|
+
};
|
|
120
|
+
return null;
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* Raise to listen for one player, driven by `mediaPlayback.isNearEar`. Voice
|
|
124
|
+
* and round notes use it. A no-op outside a `Chat`.
|
|
125
|
+
*/
|
|
126
|
+
export const useRaiseToListen = t0 => {
|
|
127
|
+
const $ = _c(14);
|
|
128
|
+
const {
|
|
129
|
+
isCurrent,
|
|
130
|
+
getPositionSeconds,
|
|
131
|
+
listen,
|
|
132
|
+
pause
|
|
133
|
+
} = t0;
|
|
134
|
+
const isNearEar = useIsNearEar();
|
|
135
|
+
const releaseRef = useRef(null);
|
|
136
|
+
let t1;
|
|
137
|
+
if ($[0] !== getPositionSeconds || $[1] !== listen || $[2] !== pause) {
|
|
138
|
+
t1 = {
|
|
139
|
+
getPositionSeconds,
|
|
140
|
+
listen,
|
|
141
|
+
pause
|
|
142
|
+
};
|
|
143
|
+
$[0] = getPositionSeconds;
|
|
144
|
+
$[1] = listen;
|
|
145
|
+
$[2] = pause;
|
|
146
|
+
$[3] = t1;
|
|
147
|
+
} else {
|
|
148
|
+
t1 = $[3];
|
|
149
|
+
}
|
|
150
|
+
const actionsRef = useRef(t1);
|
|
151
|
+
let t2;
|
|
152
|
+
if ($[4] !== getPositionSeconds || $[5] !== listen || $[6] !== pause) {
|
|
153
|
+
t2 = () => {
|
|
154
|
+
actionsRef.current = {
|
|
155
|
+
getPositionSeconds,
|
|
156
|
+
listen,
|
|
157
|
+
pause
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
$[4] = getPositionSeconds;
|
|
161
|
+
$[5] = listen;
|
|
162
|
+
$[6] = pause;
|
|
163
|
+
$[7] = t2;
|
|
164
|
+
} else {
|
|
165
|
+
t2 = $[7];
|
|
166
|
+
}
|
|
167
|
+
useLayoutEffect(t2);
|
|
168
|
+
let t3;
|
|
169
|
+
let t4;
|
|
170
|
+
if ($[8] !== isCurrent || $[9] !== isNearEar) {
|
|
171
|
+
t3 = () => {
|
|
172
|
+
const action = raiseToListenStep({
|
|
173
|
+
isListening: releaseRef.current != null,
|
|
174
|
+
isNearEar,
|
|
175
|
+
isCurrent,
|
|
176
|
+
positionSeconds: actionsRef.current.getPositionSeconds()
|
|
177
|
+
});
|
|
178
|
+
if (!action) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (action.type === "listen") {
|
|
182
|
+
releaseRef.current = acquireEarpiece();
|
|
183
|
+
actionsRef.current.listen(action.fromStart);
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
releaseRef.current?.();
|
|
187
|
+
releaseRef.current = null;
|
|
188
|
+
if (action.type === "pause") {
|
|
189
|
+
actionsRef.current.pause();
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
t4 = [isNearEar, isCurrent];
|
|
193
|
+
$[8] = isCurrent;
|
|
194
|
+
$[9] = isNearEar;
|
|
195
|
+
$[10] = t3;
|
|
196
|
+
$[11] = t4;
|
|
197
|
+
} else {
|
|
198
|
+
t3 = $[10];
|
|
199
|
+
t4 = $[11];
|
|
200
|
+
}
|
|
201
|
+
useEffect(t3, t4);
|
|
202
|
+
let t5;
|
|
203
|
+
let t6;
|
|
204
|
+
if ($[12] === Symbol.for("react.memo_cache_sentinel")) {
|
|
205
|
+
t5 = () => () => {
|
|
206
|
+
releaseRef.current?.();
|
|
207
|
+
releaseRef.current = null;
|
|
208
|
+
};
|
|
209
|
+
t6 = [];
|
|
210
|
+
$[12] = t5;
|
|
211
|
+
$[13] = t6;
|
|
212
|
+
} else {
|
|
213
|
+
t5 = $[12];
|
|
214
|
+
t6 = $[13];
|
|
215
|
+
}
|
|
216
|
+
useEffect(t5, t6);
|
|
217
|
+
};
|
|
218
|
+
//# sourceMappingURL=earpiece.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"earpiece.js","names":["useEffect","useLayoutEffect","useRef","getAudioApi","getExpoAudio","useIsNearEar","audioApi","expoAudio","RAISE_RESTART_SECONDS","applyEarpieceRoute","isEarpiece","AudioManager","setAudioSessionOptions","iosCategory","iosMode","iosOptions","pending","setAudioModeAsync","playsInSilentMode","allowsRecording","shouldRouteThroughEarpiece","catch","holders","isRouted","restoreTimer","acquireEarpiece","clearTimeout","isReleased","setTimeout","isEarpieceRouted","raiseToListenStep","isListening","isNearEar","isCurrent","positionSeconds","type","fromStart","useRaiseToListen","t0","$","_c","getPositionSeconds","listen","pause","releaseRef","t1","actionsRef","t2","current","t3","t4","action","t5","t6","Symbol","for"],"sources":["../../src/components/earpiece.ts"],"sourcesContent":["import { useEffect, useLayoutEffect, useRef } from 'react'\n\nimport { getAudioApi, getExpoAudio } from '../optional'\nimport { useIsNearEar } from './mediaPlayback'\n\n/**\n * Raise to listen: with a voice or round note current, holding the phone to\n * the ear moves playback to the earpiece and plays it, restarting a note that\n * had played for under a second; lowering it goes back to the speaker and\n * pauses.\n */\n\n// Both audio engines are optional peers, resolved like everywhere else.\nconst audioApi = getAudioApi()\nconst expoAudio = getExpoAudio()\n\n/**\n * `startAudioAgain` seeks to 0 when `audioProgress * duration` is under a\n * second: a note just started is heard from its beginning at the ear.\n */\nexport const RAISE_RESTART_SECONDS = 1\n\n/**\n * Points both engines at the earpiece or back at the speaker.\n *\n * iOS has one shared AVAudioSession: the `playAndRecord` category without\n * `defaultToSpeaker` plays through the receiver, like the voice-call\n * stream on Android. `playback` is the plain speaker route\n * the players start in. On Android, expo-audio's `shouldRouteThroughEarpiece`\n * switches the system to communication mode with the speakerphone off;\n * react-native-audio-api has no Android routing of its own.\n */\nexport const applyEarpieceRoute = (isEarpiece: boolean) => {\n try {\n audioApi?.AudioManager?.setAudioSessionOptions?.(\n isEarpiece\n ? { iosCategory: 'playAndRecord', iosMode: 'default', iosOptions: [] }\n : { iosCategory: 'playback', iosMode: 'default', iosOptions: [] }\n )\n } catch {\n // an engine that cannot route must not stop playback\n }\n\n try {\n const pending = expoAudio?.setAudioModeAsync?.({\n playsInSilentMode: true,\n allowsRecording: isEarpiece,\n shouldRouteThroughEarpiece: isEarpiece,\n })\n pending?.catch?.(() => {})\n } catch {\n // an engine that cannot route must not stop playback\n }\n}\n\n/*\n * Several players can want the earpiece across a hand-over (a note ends at the\n * ear and auto-play starts the next one), so the route is reference counted,\n * and going back to the speaker waits a tick: the next note's claim, made in\n * the same commit, cancels it instead of flipping the route twice.\n */\nlet holders = 0\nlet isRouted = false\nlet restoreTimer: ReturnType<typeof setTimeout> | null = null\n\n/** Holds the earpiece route until the returned release is called. */\nexport const acquireEarpiece = () => {\n holders++\n if (restoreTimer != null) {\n clearTimeout(restoreTimer)\n restoreTimer = null\n }\n if (!isRouted) {\n isRouted = true\n applyEarpieceRoute(true)\n }\n\n let isReleased = false\n return () => {\n if (isReleased)\n return\n isReleased = true\n holders--\n if (holders > 0 || restoreTimer != null)\n return\n\n restoreTimer = setTimeout(() => {\n restoreTimer = null\n if (holders > 0 || !isRouted)\n return\n isRouted = false\n applyEarpieceRoute(false)\n }, 0)\n }\n}\n\n/** Whether audio is currently routed to the earpiece. */\nexport const isEarpieceRouted = () => isRouted\n\nexport type RaiseToListenAction =\n | { type: 'listen', fromStart: boolean }\n | { type: 'pause' }\n | { type: 'release' }\n | null\n\n/**\n * One step of raise to listen. `isListening`: this player holds the earpiece.\n * Raised with the note current: listen (from the start if under a second in).\n * Lowered while listening: back to the speaker and pause. No longer current\n * while listening (it ended or another note took over): drop the claim without\n * pausing, so the next note can keep the earpiece.\n */\nexport const raiseToListenStep = ({\n isListening,\n isNearEar,\n isCurrent,\n positionSeconds,\n}: {\n isListening: boolean\n isNearEar: boolean\n isCurrent: boolean\n positionSeconds: number\n}): RaiseToListenAction => {\n if (!isListening)\n return isNearEar && isCurrent\n ? { type: 'listen', fromStart: !(positionSeconds >= RAISE_RESTART_SECONDS) }\n : null\n\n if (!isNearEar)\n return { type: 'pause' }\n if (!isCurrent)\n return { type: 'release' }\n return null\n}\n\nexport interface RaiseToListenOptions {\n /** The note is current: playing, or paused part-way. */\n isCurrent: boolean\n /** Seconds played so far. */\n getPositionSeconds: () => number\n /** Play at the ear; `fromStart` rewinds first. */\n listen: (fromStart: boolean) => void\n pause: () => void\n}\n\n/**\n * Raise to listen for one player, driven by `mediaPlayback.isNearEar`. Voice\n * and round notes use it. A no-op outside a `Chat`.\n */\nexport const useRaiseToListen = ({ isCurrent, getPositionSeconds, listen, pause }: RaiseToListenOptions) => {\n const isNearEar = useIsNearEar()\n const releaseRef = useRef<(() => void) | null>(null)\n const actionsRef = useRef({ getPositionSeconds, listen, pause })\n useLayoutEffect(() => {\n actionsRef.current = { getPositionSeconds, listen, pause }\n })\n\n useEffect(() => {\n const action = raiseToListenStep({\n isListening: releaseRef.current != null,\n isNearEar,\n isCurrent,\n positionSeconds: actionsRef.current.getPositionSeconds(),\n })\n if (!action)\n return\n\n if (action.type === 'listen') {\n // Route first, so the first syllable is not heard on the speaker.\n releaseRef.current = acquireEarpiece()\n actionsRef.current.listen(action.fromStart)\n return\n }\n\n releaseRef.current?.()\n releaseRef.current = null\n if (action.type === 'pause')\n actionsRef.current.pause()\n }, [isNearEar, isCurrent])\n\n useEffect(() => () => {\n releaseRef.current?.()\n releaseRef.current = null\n }, [])\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/** The floating circle is 120dp. */
|
|
2
|
+
export declare const FLOATING_NOTE_SIZE = 120;
|
|
3
|
+
/** Distance kept from the edges it docks to (`getSideCoord`). */
|
|
4
|
+
export declare const FLOATING_NOTE_MARGIN = 10;
|
|
5
|
+
/** Released this close to an edge, it snaps onto it (`animateToBoundsMaybe`). */
|
|
6
|
+
export declare const FLOATING_NOTE_SNAP = 20;
|
|
7
|
+
/** Show, hide and settle all run 150ms with a decelerate curve. */
|
|
8
|
+
export declare const FLOATING_NOTE_MS = 150;
|
|
9
|
+
/** It appears from, and shrinks back to, 80% of its size. */
|
|
10
|
+
export declare const FLOATING_NOTE_HIDDEN_SCALE = 0.8;
|
|
11
|
+
/**
|
|
12
|
+
* How far ahead a release's velocity carries it, in seconds. Deciding on
|
|
13
|
+
* the lift position alone feels stuck; projecting a little lets a flick reach an edge
|
|
14
|
+
* (or fly off it) the way a flick does everywhere else on the platform.
|
|
15
|
+
*/
|
|
16
|
+
export declare const FLOATING_NOTE_FLING_S = 0.1;
|
|
17
|
+
/** Which edge it is docked to on one axis, or `free` in between. */
|
|
18
|
+
export type DockSide = 'start' | 'end' | 'free';
|
|
19
|
+
/**
|
|
20
|
+
* A remembered position that survives the area resizing: the side per axis,
|
|
21
|
+
* or the fraction across it.
|
|
22
|
+
*/
|
|
23
|
+
export interface FloatingDock {
|
|
24
|
+
sideX: DockSide;
|
|
25
|
+
px: number;
|
|
26
|
+
sideY: DockSide;
|
|
27
|
+
py: number;
|
|
28
|
+
}
|
|
29
|
+
/** The first position: the top right corner. */
|
|
30
|
+
export declare const DEFAULT_FLOATING_DOCK: FloatingDock;
|
|
31
|
+
export interface FloatingArea {
|
|
32
|
+
width: number;
|
|
33
|
+
height: number;
|
|
34
|
+
}
|
|
35
|
+
/** One axis of `getSideCoord`: `room` is the area's length less the note's. */
|
|
36
|
+
export declare const sideCoord: (side: DockSide, fraction: number, room: number) => number;
|
|
37
|
+
export declare const dockPoint: (dock: FloatingDock, area: FloatingArea, size?: number) => {
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Where a drag may take it: up to half its width past either side, which is
|
|
43
|
+
* how it gets thrown away, but never past the top or bottom.
|
|
44
|
+
*/
|
|
45
|
+
export declare const clampDrag: (x: number, y: number, area: FloatingArea, size?: number) => {
|
|
46
|
+
x: number;
|
|
47
|
+
y: number;
|
|
48
|
+
};
|
|
49
|
+
/** Past a side it fades, down to half at the furthest it may go. */
|
|
50
|
+
export declare const dragAlpha: (x: number, width: number, size?: number) => number;
|
|
51
|
+
export interface FloatingSettle {
|
|
52
|
+
x: number;
|
|
53
|
+
y: number;
|
|
54
|
+
/** It slides out past a side; playback stops once it is gone. */
|
|
55
|
+
isClosing: boolean;
|
|
56
|
+
/** The position to remember, unchanged when closing. */
|
|
57
|
+
dock: FloatingDock;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Where it goes when the finger lifts (`animateToBoundsMaybe`): onto a side
|
|
61
|
+
* when within 20dp of its docked spot or less than a quarter past the edge;
|
|
62
|
+
* out and closed when dragged further past it; otherwise it stays where it was
|
|
63
|
+
* put. Vertically it snaps to the top or bottom spot within 20dp, or stays.
|
|
64
|
+
*/
|
|
65
|
+
export declare const settleFloatingNote: (x: number, y: number, velocityX: number, area: FloatingArea, dock: FloatingDock, size?: number) => FloatingSettle;
|
|
66
|
+
//# sourceMappingURL=floatingNoteMath.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"floatingNoteMath.d.ts","sourceRoot":"","sources":["../../src/components/floatingNoteMath.ts"],"names":[],"mappings":"AAOA,oCAAoC;AACpC,eAAO,MAAM,kBAAkB,MAAM,CAAA;AACrC,iEAAiE;AACjE,eAAO,MAAM,oBAAoB,KAAK,CAAA;AACtC,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,KAAK,CAAA;AACpC,mEAAmE;AACnE,eAAO,MAAM,gBAAgB,MAAM,CAAA;AACnC,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAC7C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAA;AAExC,oEAAoE;AACpE,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAA;AAE/C;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,QAAQ,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,QAAQ,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;CACX;AAED,gDAAgD;AAChD,eAAO,MAAM,qBAAqB,EAAE,YAA6D,CAAA;AAEjG,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,+EAA+E;AAC/E,eAAO,MAAM,SAAS,GAAI,MAAM,QAAQ,EAAE,UAAU,MAAM,EAAE,MAAM,MAAM,WAOvE,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,MAAM,YAAY,EAAE,MAAM,YAAY,EAAE,aAAyB;;;CAM1F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,YAAY,EAAE,aAAyB;;;CAO5F,CAAA;AAED,oEAAoE;AACpE,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,EAAE,OAAO,MAAM,EAAE,aAAyB,WAQ5E,CAAA;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,iEAAiE;IACjE,SAAS,EAAE,OAAO,CAAA;IAClB,wDAAwD;IACxD,IAAI,EAAE,YAAY,CAAA;CACnB;AAOD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,GAAG,MAAM,EACT,GAAG,MAAM,EACT,WAAW,MAAM,EACjB,MAAM,YAAY,EAClB,MAAM,YAAY,EAClB,aAAyB,KACxB,cAyCF,CAAA"}
|