@kesha-antonov/react-native-chat 5.0.1 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +485 -178
- 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,140 @@
|
|
|
1
|
+
import { c as _c } from "react/compiler-runtime";
|
|
2
|
+
import { createContext, useCallback, useContext, useSyncExternalStore } from 'react';
|
|
3
|
+
import isEqual from 'lodash.isequal';
|
|
4
|
+
import { warning } from '../logging';
|
|
5
|
+
import { isSameDay, isSameGroup } from '../utils';
|
|
6
|
+
|
|
7
|
+
/** What a row renders: its message, and the neighbours its grouping is decided against. */
|
|
8
|
+
|
|
9
|
+
// Stable stand-in for the missing neighbour at either end of the list.
|
|
10
|
+
const EMPTY_MESSAGE = Object.freeze({});
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Everything about a neighbour that changes how a row draws: whether there is one (quick
|
|
14
|
+
* replies hide once answered), whether they group (the tail, the avatar, the gap below) and
|
|
15
|
+
* whether they share a day (the date separator). A neighbour's own text, status or reactions
|
|
16
|
+
* do not matter to this row, so they never re-render it.
|
|
17
|
+
*/
|
|
18
|
+
const neighbourSignature = (message, neighbour) => {
|
|
19
|
+
if (!neighbour) return 0;
|
|
20
|
+
return 1 + (neighbour._id != null ? 2 : 0) + (isSameGroup(message, neighbour) ? 4 : 0) + (isSameDay(message, neighbour) ? 8 : 0);
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* The messages, by id, for the rows to subscribe to one by one. A send, a status change, a
|
|
24
|
+
* reaction or a streamed token re-renders the row it belongs to - plus a neighbour only when
|
|
25
|
+
* its grouping actually changed - instead of every row the list has mounted.
|
|
26
|
+
*
|
|
27
|
+
* `sync` runs while the list renders, so rows mounting in that same render read the new
|
|
28
|
+
* messages; `flush` notifies the rows already on screen once it has committed.
|
|
29
|
+
*/
|
|
30
|
+
export class MessageRowStore {
|
|
31
|
+
entries = new Map();
|
|
32
|
+
listeners = new Map();
|
|
33
|
+
changed = new Set();
|
|
34
|
+
sync(messages, isInverted) {
|
|
35
|
+
if (messages === this.lastMessages && isInverted === this.lastIsInverted) return;
|
|
36
|
+
this.lastMessages = messages;
|
|
37
|
+
this.lastIsInverted = isInverted;
|
|
38
|
+
const seen = new Set();
|
|
39
|
+
for (let i = 0; i < messages.length; i++) {
|
|
40
|
+
const message = messages[i];
|
|
41
|
+
if (message._id == null) warning('Chat: `_id` is missing for message', JSON.stringify(message));
|
|
42
|
+
if (!message.user) {
|
|
43
|
+
if (!message.system) warning('Chat: `user` is missing for message', JSON.stringify(message));
|
|
44
|
+
message.user = {
|
|
45
|
+
_id: 0
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
const id = String(message._id);
|
|
49
|
+
seen.add(id);
|
|
50
|
+
const previousMessage = isInverted ? messages[i + 1] : messages[i - 1];
|
|
51
|
+
const nextMessage = isInverted ? messages[i - 1] : messages[i + 1];
|
|
52
|
+
const previousSignature = neighbourSignature(message, previousMessage);
|
|
53
|
+
const nextSignature = neighbourSignature(message, nextMessage);
|
|
54
|
+
const stored = this.entries.get(id);
|
|
55
|
+
if (stored && stored.previousSignature === previousSignature && stored.nextSignature === nextSignature && (
|
|
56
|
+
// A store that rebuilds every message object on each update (a server snapshot)
|
|
57
|
+
// still only re-renders what changed.
|
|
58
|
+
stored.entry.message === message || isEqual(stored.entry.message, message))) continue;
|
|
59
|
+
this.entries.set(id, {
|
|
60
|
+
entry: {
|
|
61
|
+
message,
|
|
62
|
+
previousMessage: previousMessage ?? EMPTY_MESSAGE,
|
|
63
|
+
nextMessage: nextMessage ?? EMPTY_MESSAGE
|
|
64
|
+
},
|
|
65
|
+
previousSignature,
|
|
66
|
+
nextSignature
|
|
67
|
+
});
|
|
68
|
+
this.changed.add(id);
|
|
69
|
+
}
|
|
70
|
+
if (seen.size !== this.entries.size) for (const id of this.entries.keys()) if (!seen.has(id)) {
|
|
71
|
+
this.entries.delete(id);
|
|
72
|
+
this.changed.add(id);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
flush() {
|
|
76
|
+
if (this.changed.size === 0) return;
|
|
77
|
+
const ids = [...this.changed];
|
|
78
|
+
this.changed.clear();
|
|
79
|
+
for (const id of ids) this.listeners.get(id)?.forEach(listener => listener());
|
|
80
|
+
}
|
|
81
|
+
get(id) {
|
|
82
|
+
return this.entries.get(id)?.entry;
|
|
83
|
+
}
|
|
84
|
+
getMessage(id) {
|
|
85
|
+
return this.entries.get(String(id))?.entry.message;
|
|
86
|
+
}
|
|
87
|
+
subscribe(id, listener) {
|
|
88
|
+
let set = this.listeners.get(id);
|
|
89
|
+
if (!set) {
|
|
90
|
+
set = new Set();
|
|
91
|
+
this.listeners.set(id, set);
|
|
92
|
+
}
|
|
93
|
+
set.add(listener);
|
|
94
|
+
return () => {
|
|
95
|
+
set.delete(listener);
|
|
96
|
+
if (set.size === 0) this.listeners.delete(id);
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
export const MessageRowStoreContext = createContext(null);
|
|
101
|
+
|
|
102
|
+
/** The entry for one row, re-rendering it only when that entry changes. */
|
|
103
|
+
export function useRowEntry(id) {
|
|
104
|
+
const $ = _c(6);
|
|
105
|
+
const store = useContext(MessageRowStoreContext);
|
|
106
|
+
let t0;
|
|
107
|
+
if ($[0] !== id || $[1] !== store) {
|
|
108
|
+
t0 = listener => store ? store.subscribe(id, listener) : _temp;
|
|
109
|
+
$[0] = id;
|
|
110
|
+
$[1] = store;
|
|
111
|
+
$[2] = t0;
|
|
112
|
+
} else {
|
|
113
|
+
t0 = $[2];
|
|
114
|
+
}
|
|
115
|
+
const subscribe = t0;
|
|
116
|
+
let t1;
|
|
117
|
+
if ($[3] !== id || $[4] !== store) {
|
|
118
|
+
t1 = () => store?.get(id);
|
|
119
|
+
$[3] = id;
|
|
120
|
+
$[4] = store;
|
|
121
|
+
$[5] = t1;
|
|
122
|
+
} else {
|
|
123
|
+
t1 = $[5];
|
|
124
|
+
}
|
|
125
|
+
const getSnapshot = t1;
|
|
126
|
+
return useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* `messages`, or the previous array when it holds the same ids in the same order. The list is
|
|
131
|
+
* then handed the same data when only a message's content changed, and does not touch its
|
|
132
|
+
* cells at all - the store re-renders that one row.
|
|
133
|
+
*/
|
|
134
|
+
function _temp() {}
|
|
135
|
+
export function sameOrder(previous, messages) {
|
|
136
|
+
if (!previous || previous.length !== messages.length) return messages;
|
|
137
|
+
for (let i = 0; i < messages.length; i++) if (previous[i]._id !== messages[i]._id) return messages;
|
|
138
|
+
return previous;
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=rowStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rowStore.js","names":["createContext","useCallback","useContext","useSyncExternalStore","isEqual","warning","isSameDay","isSameGroup","EMPTY_MESSAGE","Object","freeze","neighbourSignature","message","neighbour","_id","MessageRowStore","entries","Map","listeners","changed","Set","sync","messages","isInverted","lastMessages","lastIsInverted","seen","i","length","JSON","stringify","user","system","id","String","add","previousMessage","nextMessage","previousSignature","nextSignature","stored","get","entry","set","size","keys","has","delete","flush","ids","clear","forEach","listener","getMessage","subscribe","MessageRowStoreContext","useRowEntry","$","_c","store","t0","_temp","t1","getSnapshot","sameOrder","previous"],"sources":["../../src/MessagesContainer/rowStore.ts"],"sourcesContent":["import { createContext, useCallback, useContext, useSyncExternalStore } from 'react'\nimport isEqual from 'lodash.isequal'\n\nimport { warning } from '../logging'\nimport { IMessage } from '../Models'\nimport { isSameDay, isSameGroup } from '../utils'\n\n/** What a row renders: its message, and the neighbours its grouping is decided against. */\nexport interface RowEntry<TMessage extends IMessage = IMessage> {\n message: TMessage\n previousMessage: TMessage\n nextMessage: TMessage\n}\n\n// Stable stand-in for the missing neighbour at either end of the list.\nconst EMPTY_MESSAGE = Object.freeze({}) as IMessage\n\n/**\n * Everything about a neighbour that changes how a row draws: whether there is one (quick\n * replies hide once answered), whether they group (the tail, the avatar, the gap below) and\n * whether they share a day (the date separator). A neighbour's own text, status or reactions\n * do not matter to this row, so they never re-render it.\n */\nconst neighbourSignature = (message: IMessage, neighbour: IMessage | undefined) => {\n if (!neighbour)\n return 0\n return 1 +\n (neighbour._id != null ? 2 : 0) +\n (isSameGroup(message, neighbour) ? 4 : 0) +\n (isSameDay(message, neighbour) ? 8 : 0)\n}\n\ninterface StoredEntry<TMessage extends IMessage> {\n entry: RowEntry<TMessage>\n previousSignature: number\n nextSignature: number\n}\n\n/**\n * The messages, by id, for the rows to subscribe to one by one. A send, a status change, a\n * reaction or a streamed token re-renders the row it belongs to - plus a neighbour only when\n * its grouping actually changed - instead of every row the list has mounted.\n *\n * `sync` runs while the list renders, so rows mounting in that same render read the new\n * messages; `flush` notifies the rows already on screen once it has committed.\n */\nexport class MessageRowStore<TMessage extends IMessage = IMessage> {\n private entries = new Map<string, StoredEntry<TMessage>>()\n private listeners = new Map<string, Set<() => void>>()\n private changed = new Set<string>()\n private lastMessages: TMessage[] | undefined\n private lastIsInverted: boolean | undefined\n\n sync (messages: TMessage[], isInverted: boolean) {\n if (messages === this.lastMessages && isInverted === this.lastIsInverted)\n return\n this.lastMessages = messages\n this.lastIsInverted = isInverted\n\n const seen = new Set<string>()\n for (let i = 0; i < messages.length; i++) {\n const message = messages[i]\n if (message._id == null)\n warning('Chat: `_id` is missing for message', JSON.stringify(message))\n if (!message.user) {\n if (!message.system)\n warning('Chat: `user` is missing for message', JSON.stringify(message))\n message.user = { _id: 0 }\n }\n\n const id = String(message._id)\n seen.add(id)\n const previousMessage = isInverted ? messages[i + 1] : messages[i - 1]\n const nextMessage = isInverted ? messages[i - 1] : messages[i + 1]\n const previousSignature = neighbourSignature(message, previousMessage)\n const nextSignature = neighbourSignature(message, nextMessage)\n\n const stored = this.entries.get(id)\n if (\n stored &&\n stored.previousSignature === previousSignature &&\n stored.nextSignature === nextSignature &&\n // A store that rebuilds every message object on each update (a server snapshot)\n // still only re-renders what changed.\n (stored.entry.message === message || isEqual(stored.entry.message, message))\n )\n continue\n\n this.entries.set(id, {\n entry: {\n message,\n previousMessage: previousMessage ?? EMPTY_MESSAGE as TMessage,\n nextMessage: nextMessage ?? EMPTY_MESSAGE as TMessage,\n },\n previousSignature,\n nextSignature,\n })\n this.changed.add(id)\n }\n\n if (seen.size !== this.entries.size)\n for (const id of this.entries.keys())\n if (!seen.has(id)) {\n this.entries.delete(id)\n this.changed.add(id)\n }\n }\n\n flush () {\n if (this.changed.size === 0)\n return\n const ids = [...this.changed]\n this.changed.clear()\n for (const id of ids)\n this.listeners.get(id)?.forEach(listener => listener())\n }\n\n get (id: string): RowEntry<TMessage> | undefined {\n return this.entries.get(id)?.entry\n }\n\n getMessage (id: string | number): TMessage | undefined {\n return this.entries.get(String(id))?.entry.message\n }\n\n subscribe (id: string, listener: () => void) {\n let set = this.listeners.get(id)\n if (!set) {\n set = new Set()\n this.listeners.set(id, set)\n }\n set.add(listener)\n return () => {\n set!.delete(listener)\n if (set!.size === 0)\n this.listeners.delete(id)\n }\n }\n}\n\nexport const MessageRowStoreContext = createContext<MessageRowStore | null>(null)\n\n/** The entry for one row, re-rendering it only when that entry changes. */\nexport function useRowEntry<TMessage extends IMessage> (id: string): RowEntry<TMessage> | undefined {\n const store = useContext(MessageRowStoreContext) as MessageRowStore<TMessage> | null\n const subscribe = useCallback((listener: () => void) => store ? store.subscribe(id, listener) : () => {}, [store, id])\n const getSnapshot = useCallback(() => store?.get(id), [store, id])\n return useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n}\n\n/**\n * `messages`, or the previous array when it holds the same ids in the same order. The list is\n * then handed the same data when only a message's content changed, and does not touch its\n * cells at all - the store re-renders that one row.\n */\nexport function sameOrder<TMessage extends IMessage> (previous: TMessage[] | undefined, messages: TMessage[]) {\n if (!previous || previous.length !== messages.length)\n return messages\n for (let i = 0; i < messages.length; i++)\n if (previous[i]._id !== messages[i]._id)\n return messages\n return previous\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { ChatTheme } from '../Theme';
|
|
2
|
-
export declare const createThemedStyles: (theme: ChatTheme) => {
|
|
2
|
+
export declare const createThemedStyles: (theme: ChatTheme) => Readonly<{
|
|
3
3
|
root: {
|
|
4
4
|
backgroundColor: string;
|
|
5
5
|
};
|
|
6
|
-
scrollSurface: {
|
|
7
|
-
backgroundColor: string;
|
|
8
|
-
};
|
|
9
6
|
scrollChevron: {
|
|
10
7
|
width: number;
|
|
11
8
|
height: number;
|
|
@@ -17,11 +14,24 @@ export declare const createThemedStyles: (theme: ChatTheme) => {
|
|
|
17
14
|
rotate: string;
|
|
18
15
|
}[];
|
|
19
16
|
};
|
|
17
|
+
scrollToBottomBadge: {
|
|
18
|
+
backgroundColor: string;
|
|
19
|
+
};
|
|
20
|
+
scrollToBottomPressed: {
|
|
21
|
+
backgroundColor: string;
|
|
22
|
+
};
|
|
23
|
+
scrollToBottomBadgeText: {
|
|
24
|
+
color: string;
|
|
25
|
+
fontSize: number;
|
|
26
|
+
lineHeight: number;
|
|
27
|
+
fontWeight: "500";
|
|
28
|
+
fontVariant: "tabular-nums"[];
|
|
29
|
+
};
|
|
20
30
|
chevronColor: {
|
|
21
31
|
color: string;
|
|
22
32
|
};
|
|
23
|
-
}
|
|
24
|
-
declare const _default: {
|
|
33
|
+
}>;
|
|
34
|
+
declare const _default: Readonly<{
|
|
25
35
|
contentContainerStyle: {
|
|
26
36
|
flexGrow: number;
|
|
27
37
|
justifyContent: "flex-start";
|
|
@@ -29,43 +39,39 @@ declare const _default: {
|
|
|
29
39
|
messagesContainer: {
|
|
30
40
|
paddingBottom: number;
|
|
31
41
|
};
|
|
32
|
-
emptyChatContainer: {
|
|
33
|
-
transform: {
|
|
34
|
-
scaleY: number;
|
|
35
|
-
}[];
|
|
36
|
-
};
|
|
37
42
|
scrollToBottom: {
|
|
38
43
|
position: "absolute";
|
|
39
44
|
right: number;
|
|
40
45
|
bottom: number;
|
|
41
46
|
zIndex: number;
|
|
42
47
|
};
|
|
43
|
-
|
|
48
|
+
scrollToBottomBadge: {
|
|
49
|
+
position: "absolute";
|
|
50
|
+
top: number;
|
|
51
|
+
alignSelf: "center";
|
|
52
|
+
minWidth: number;
|
|
44
53
|
height: number;
|
|
45
|
-
width: number;
|
|
46
54
|
borderRadius: number;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
height: number;
|
|
53
|
-
};
|
|
54
|
-
shadowRadius: number;
|
|
55
|
-
elevation?: undefined;
|
|
55
|
+
paddingHorizontal: number;
|
|
56
|
+
alignItems: "center";
|
|
57
|
+
justifyContent: "center";
|
|
58
|
+
};
|
|
59
|
+
scrollToBottomContent: {
|
|
56
60
|
height: number;
|
|
57
61
|
width: number;
|
|
58
62
|
borderRadius: number;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
shadowColor?: undefined;
|
|
62
|
-
shadowOpacity?: undefined;
|
|
63
|
-
shadowOffset?: undefined;
|
|
64
|
-
shadowRadius?: undefined;
|
|
65
|
-
height: number;
|
|
66
|
-
width: number;
|
|
63
|
+
};
|
|
64
|
+
scrollToBottomSurface: {
|
|
67
65
|
borderRadius: number;
|
|
68
66
|
};
|
|
69
|
-
|
|
67
|
+
scrollToBottomPressed: {
|
|
68
|
+
borderRadius: number;
|
|
69
|
+
position: "absolute";
|
|
70
|
+
left: 0;
|
|
71
|
+
right: 0;
|
|
72
|
+
top: 0;
|
|
73
|
+
bottom: 0;
|
|
74
|
+
};
|
|
75
|
+
}>;
|
|
70
76
|
export default _default;
|
|
71
77
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/MessagesContainer/styles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,eAAO,MAAM,kBAAkB,GAAI,OAAO,SAAS
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/MessagesContainer/styles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,eAAO,MAAM,kBAAkB,GAAI,OAAO,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCjD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAwCE"}
|
|
@@ -1,58 +1,79 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export const createThemedStyles =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
import { StyleSheet } from 'react-native';
|
|
2
|
+
import { multiplyAlpha } from '../colorUtils';
|
|
3
|
+
export const createThemedStyles = theme => StyleSheet.create({
|
|
4
|
+
// The chat's wallpaper (or `colors.background`) is painted behind the list by `Chat`.
|
|
5
|
+
root: {
|
|
6
|
+
backgroundColor: 'transparent'
|
|
7
|
+
},
|
|
8
|
+
scrollChevron: {
|
|
9
|
+
width: 10,
|
|
10
|
+
height: 10,
|
|
11
|
+
marginTop: -3,
|
|
12
|
+
borderColor: theme.colors.scrollToBottomIcon,
|
|
13
|
+
borderRightWidth: 2,
|
|
14
|
+
borderBottomWidth: 2,
|
|
15
|
+
transform: [{
|
|
16
|
+
rotate: '45deg'
|
|
17
|
+
}]
|
|
18
|
+
},
|
|
19
|
+
scrollToBottomBadge: {
|
|
20
|
+
backgroundColor: theme.colors.scrollToBottomBadge
|
|
21
|
+
},
|
|
22
|
+
scrollToBottomPressed: {
|
|
23
|
+
backgroundColor: multiplyAlpha(theme.colors.scrollToBottomIcon, 0.15)
|
|
24
|
+
},
|
|
25
|
+
// The unread counter: 13 bold white.
|
|
26
|
+
scrollToBottomBadgeText: {
|
|
27
|
+
color: theme.colors.scrollToBottomBadgeText,
|
|
28
|
+
fontSize: 13,
|
|
29
|
+
lineHeight: 16,
|
|
30
|
+
fontWeight: '500',
|
|
31
|
+
fontVariant: ['tabular-nums']
|
|
32
|
+
},
|
|
33
|
+
// Carries the icon color for an overridden chevron icon.
|
|
34
|
+
chevronColor: {
|
|
35
|
+
color: theme.colors.scrollToBottomIcon
|
|
36
|
+
}
|
|
23
37
|
});
|
|
24
38
|
export default StyleSheet.create({
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
39
|
+
contentContainerStyle: {
|
|
40
|
+
flexGrow: 1,
|
|
41
|
+
justifyContent: 'flex-start'
|
|
42
|
+
},
|
|
43
|
+
messagesContainer: {
|
|
44
|
+
paddingBottom: 10
|
|
45
|
+
},
|
|
46
|
+
// The scroll-to-bottom button: a 44pt glass circle about 7 from the screen edge and 10
|
|
47
|
+
// above the composer island.
|
|
48
|
+
scrollToBottom: {
|
|
49
|
+
position: 'absolute',
|
|
50
|
+
right: 7,
|
|
51
|
+
bottom: 6,
|
|
52
|
+
zIndex: 999
|
|
53
|
+
},
|
|
54
|
+
// The counter is a 23pt pill centred on the circle's top edge.
|
|
55
|
+
scrollToBottomBadge: {
|
|
56
|
+
position: 'absolute',
|
|
57
|
+
top: -11.5,
|
|
58
|
+
alignSelf: 'center',
|
|
59
|
+
minWidth: 23,
|
|
60
|
+
height: 23,
|
|
61
|
+
borderRadius: 11.5,
|
|
62
|
+
paddingHorizontal: 6,
|
|
63
|
+
alignItems: 'center',
|
|
64
|
+
justifyContent: 'center'
|
|
65
|
+
},
|
|
66
|
+
scrollToBottomContent: {
|
|
67
|
+
height: 44,
|
|
68
|
+
width: 44,
|
|
69
|
+
borderRadius: 22
|
|
70
|
+
},
|
|
71
|
+
scrollToBottomSurface: {
|
|
72
|
+
borderRadius: 22
|
|
73
|
+
},
|
|
74
|
+
scrollToBottomPressed: {
|
|
75
|
+
...StyleSheet.absoluteFill,
|
|
76
|
+
borderRadius: 22
|
|
77
|
+
}
|
|
57
78
|
});
|
|
58
79
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","
|
|
1
|
+
{"version":3,"file":"styles.js","names":["StyleSheet","multiplyAlpha","createThemedStyles","theme","create","root","backgroundColor","scrollChevron","width","height","marginTop","borderColor","colors","scrollToBottomIcon","borderRightWidth","borderBottomWidth","transform","rotate","scrollToBottomBadge","scrollToBottomPressed","scrollToBottomBadgeText","color","fontSize","lineHeight","fontWeight","fontVariant","chevronColor","contentContainerStyle","flexGrow","justifyContent","messagesContainer","paddingBottom","scrollToBottom","position","right","bottom","zIndex","top","alignSelf","minWidth","borderRadius","paddingHorizontal","alignItems","scrollToBottomContent","scrollToBottomSurface","absoluteFill"],"sources":["../../src/MessagesContainer/styles.ts"],"sourcesContent":["import { StyleSheet } from 'react-native'\nimport { multiplyAlpha } from '../colorUtils'\nimport { ChatTheme } from '../Theme'\n\nexport const createThemedStyles = (theme: ChatTheme) => StyleSheet.create({\n // The chat's wallpaper (or `colors.background`) is painted behind the list by `Chat`.\n root: {\n backgroundColor: 'transparent',\n },\n scrollChevron: {\n width: 10,\n height: 10,\n marginTop: -3,\n borderColor: theme.colors.scrollToBottomIcon,\n borderRightWidth: 2,\n borderBottomWidth: 2,\n transform: [{ rotate: '45deg' }],\n },\n scrollToBottomBadge: {\n backgroundColor: theme.colors.scrollToBottomBadge,\n },\n scrollToBottomPressed: {\n backgroundColor: multiplyAlpha(theme.colors.scrollToBottomIcon, 0.15),\n },\n // The unread counter: 13 bold white.\n scrollToBottomBadgeText: {\n color: theme.colors.scrollToBottomBadgeText,\n fontSize: 13,\n lineHeight: 16,\n fontWeight: '500',\n fontVariant: ['tabular-nums'],\n },\n // Carries the icon color for an overridden chevron icon.\n chevronColor: {\n color: theme.colors.scrollToBottomIcon,\n },\n})\n\nexport default StyleSheet.create({\n contentContainerStyle: {\n flexGrow: 1,\n justifyContent: 'flex-start',\n },\n messagesContainer: {\n paddingBottom: 10,\n },\n // The scroll-to-bottom button: a 44pt glass circle about 7 from the screen edge and 10\n // above the composer island.\n scrollToBottom: {\n position: 'absolute',\n right: 7,\n bottom: 6,\n zIndex: 999,\n },\n // The counter is a 23pt pill centred on the circle's top edge.\n scrollToBottomBadge: {\n position: 'absolute',\n top: -11.5,\n alignSelf: 'center',\n minWidth: 23,\n height: 23,\n borderRadius: 11.5,\n paddingHorizontal: 6,\n alignItems: 'center',\n justifyContent: 'center',\n },\n scrollToBottomContent: {\n height: 44,\n width: 44,\n borderRadius: 22,\n },\n scrollToBottomSurface: {\n borderRadius: 22,\n },\n scrollToBottomPressed: {\n ...StyleSheet.absoluteFill,\n borderRadius: 22,\n },\n})\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,aAAa,QAAQ,eAAe;AAG7C,OAAO,MAAMC,kBAAkB,GAAIC,KAAgB,IAAKH,UAAU,CAACI,MAAM,CAAC;EACxE;EACAC,IAAI,EAAE;IACJC,eAAe,EAAE;EACnB,CAAC;EACDC,aAAa,EAAE;IACbC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,SAAS,EAAE,CAAC,CAAC;IACbC,WAAW,EAAER,KAAK,CAACS,MAAM,CAACC,kBAAkB;IAC5CC,gBAAgB,EAAE,CAAC;IACnBC,iBAAiB,EAAE,CAAC;IACpBC,SAAS,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAQ,CAAC;EACjC,CAAC;EACDC,mBAAmB,EAAE;IACnBZ,eAAe,EAAEH,KAAK,CAACS,MAAM,CAACM;EAChC,CAAC;EACDC,qBAAqB,EAAE;IACrBb,eAAe,EAAEL,aAAa,CAACE,KAAK,CAACS,MAAM,CAACC,kBAAkB,EAAE,IAAI;EACtE,CAAC;EACD;EACAO,uBAAuB,EAAE;IACvBC,KAAK,EAAElB,KAAK,CAACS,MAAM,CAACQ,uBAAuB;IAC3CE,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,EAAE;IACdC,UAAU,EAAE,KAAK;IACjBC,WAAW,EAAE,CAAC,cAAc;EAC9B,CAAC;EACD;EACAC,YAAY,EAAE;IACZL,KAAK,EAAElB,KAAK,CAACS,MAAM,CAACC;EACtB;AACF,CAAC,CAAC;AAEF,eAAeb,UAAU,CAACI,MAAM,CAAC;EAC/BuB,qBAAqB,EAAE;IACrBC,QAAQ,EAAE,CAAC;IACXC,cAAc,EAAE;EAClB,CAAC;EACDC,iBAAiB,EAAE;IACjBC,aAAa,EAAE;EACjB,CAAC;EACD;EACA;EACAC,cAAc,EAAE;IACdC,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,MAAM,EAAE;EACV,CAAC;EACD;EACAlB,mBAAmB,EAAE;IACnBe,QAAQ,EAAE,UAAU;IACpBI,GAAG,EAAE,CAAC,IAAI;IACVC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE,EAAE;IACZ9B,MAAM,EAAE,EAAE;IACV+B,YAAY,EAAE,IAAI;IAClBC,iBAAiB,EAAE,CAAC;IACpBC,UAAU,EAAE,QAAQ;IACpBb,cAAc,EAAE;EAClB,CAAC;EACDc,qBAAqB,EAAE;IACrBlC,MAAM,EAAE,EAAE;IACVD,KAAK,EAAE,EAAE;IACTgC,YAAY,EAAE;EAChB,CAAC;EACDI,qBAAqB,EAAE;IACrBJ,YAAY,EAAE;EAChB,CAAC;EACDrB,qBAAqB,EAAE;IACrB,GAAGnB,UAAU,CAAC6C,YAAY;IAC1BL,YAAY,EAAE;EAChB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
import type { LegendListRef } from '@legendapp/list/react-native';
|
|
4
|
+
import type { AnimatedLegendListProps } from '@legendapp/list/reanimated';
|
|
5
5
|
import { DayProps } from '../Day';
|
|
6
6
|
import { LoadEarlierMessagesProps } from '../LoadEarlierMessages';
|
|
7
7
|
import { MessageProps } from '../Message';
|
|
@@ -9,20 +9,13 @@ import { User, IMessage, Reply } from '../Models';
|
|
|
9
9
|
import { ReactionsProps } from '../Reactions';
|
|
10
10
|
import { ReplyProps } from '../Reply';
|
|
11
11
|
import { TypingIndicatorProps } from '../TypingIndicator/types';
|
|
12
|
-
/**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
export declare const AnimatedFlatList: <TMessage>(props: FlatListProps<TMessage> & {
|
|
17
|
-
ref?: RefObject<FlatList<TMessage>>;
|
|
18
|
-
}) => React.ReactElement;
|
|
19
|
-
export type AnimatedListProps<TMessage extends IMessage = IMessage> = Partial<Omit<FlatListProps<TMessage>, 'onScroll'> & {
|
|
20
|
-
onScroll?: (event: ScrollEvent) => void;
|
|
21
|
-
}>;
|
|
22
|
-
export type AnimatedList<TMessage> = FlatList<TMessage>;
|
|
12
|
+
/** Extra props for the message list, a Legend List (`@legendapp/list`). */
|
|
13
|
+
export type AnimatedListProps<TMessage extends IMessage = IMessage> = Partial<AnimatedLegendListProps<TMessage>>;
|
|
14
|
+
/** The message list's ref: Legend List's (`scrollToEnd`, `scrollToKey`, `scrollToOffset`, `getState`...). */
|
|
15
|
+
export type AnimatedList = LegendListRef;
|
|
23
16
|
export interface MessagesContainerProps<TMessage extends IMessage = IMessage> extends Omit<TypingIndicatorProps, 'style'> {
|
|
24
|
-
/** Ref for the
|
|
25
|
-
forwardRef?: RefObject<AnimatedList
|
|
17
|
+
/** Ref for the message list (a Legend List) */
|
|
18
|
+
forwardRef?: RefObject<AnimatedList | null>;
|
|
26
19
|
/** Messages to display */
|
|
27
20
|
messages?: TMessage[];
|
|
28
21
|
/** Format to use for rendering dates; default is 'll' */
|
|
@@ -31,17 +24,8 @@ export interface MessagesContainerProps<TMessage extends IMessage = IMessage> ex
|
|
|
31
24
|
dateFormatCalendar?: object;
|
|
32
25
|
/** User sending the messages: { _id, name, avatar } */
|
|
33
26
|
user?: User;
|
|
34
|
-
/** Additional props for
|
|
27
|
+
/** Additional props for the message list, a [Legend List](https://legendapp.com/open-source/list/) */
|
|
35
28
|
listProps?: AnimatedListProps<TMessage>;
|
|
36
|
-
/**
|
|
37
|
-
* Render messages with `@shopify/flash-list` (v2) instead of `FlatList`.
|
|
38
|
-
* Requires the optional `@shopify/flash-list` peer dependency and the New
|
|
39
|
-
* Architecture; falls back to `FlatList` with a warning when it is missing.
|
|
40
|
-
* FlashList recycles rows, which removes the `VirtualizedList: You have a
|
|
41
|
-
* large list that is slow to update` warning on long histories.
|
|
42
|
-
* @default false
|
|
43
|
-
*/
|
|
44
|
-
isFlashListEnabled?: boolean;
|
|
45
29
|
/** Reverses display order of messages; default is true */
|
|
46
30
|
isInverted?: boolean;
|
|
47
31
|
/**
|
|
@@ -54,19 +38,36 @@ export interface MessagesContainerProps<TMessage extends IMessage = IMessage> ex
|
|
|
54
38
|
* conversation starts under the header and re-anchors above the keyboard when the
|
|
55
39
|
* composer is focused.
|
|
56
40
|
*
|
|
57
|
-
* Works with both `isInverted` settings.
|
|
41
|
+
* Works with both `isInverted` settings.
|
|
58
42
|
*/
|
|
59
43
|
isAlignedTop?: boolean | 'auto';
|
|
60
|
-
/**
|
|
44
|
+
/** Show the scroll-to-bottom button once scrolled away from the newest message; default is true */
|
|
61
45
|
isScrollToBottomEnabled?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Count incoming messages that arrive while scrolled up, in a badge on the scroll-to-bottom
|
|
48
|
+
* button; default is true
|
|
49
|
+
*/
|
|
50
|
+
isScrollToBottomBadgeEnabled?: boolean;
|
|
62
51
|
/** Scroll to bottom wrapper style */
|
|
63
52
|
scrollToBottomStyle?: StyleProp<ViewStyle>;
|
|
64
53
|
/** Scroll to bottom content style */
|
|
65
54
|
scrollToBottomContentStyle?: StyleProp<ViewStyle>;
|
|
66
55
|
/** Distance from bottom before showing scroll to bottom button */
|
|
67
56
|
scrollToBottomOffset?: number;
|
|
68
|
-
/**
|
|
69
|
-
|
|
57
|
+
/**
|
|
58
|
+
* What to show while there are no messages. `Chat` shows a greeting card by default
|
|
59
|
+
* ("No messages here yet..." and a 👋 that sends itself); pass your own render function to
|
|
60
|
+
* replace it, or `null` for nothing.
|
|
61
|
+
*/
|
|
62
|
+
renderChatEmpty?: (() => React.ReactNode) | null;
|
|
63
|
+
/**
|
|
64
|
+
* The first message the user has not read yet. An "Unread Messages" bar is drawn above
|
|
65
|
+
* it, and the chat opens scrolled so the bar is at the top. Keep it fixed while the chat is
|
|
66
|
+
* open (the bar stays until you leave), e.g. from the unread count when it opened.
|
|
67
|
+
*/
|
|
68
|
+
firstUnreadMessageId?: string | number | null;
|
|
69
|
+
/** Custom "Unread Messages" bar, or `null` to only scroll to the first unread message. */
|
|
70
|
+
renderUnreadSeparator?: (() => React.ReactNode) | null;
|
|
70
71
|
/** Custom footer component on the ListView, e.g. 'User is typing...' */
|
|
71
72
|
renderFooter?: (props: MessagesContainerProps<TMessage>) => React.ReactNode;
|
|
72
73
|
/** Custom message container */
|
|
@@ -85,6 +86,8 @@ export interface MessagesContainerProps<TMessage extends IMessage = IMessage> ex
|
|
|
85
86
|
loadEarlierMessagesProps?: LoadEarlierMessagesProps;
|
|
86
87
|
/** Style for TypingIndicator component */
|
|
87
88
|
typingIndicatorStyle?: StyleProp<ViewStyle>;
|
|
89
|
+
/** Whether incoming messages leave room for an avatar; the typing bubble lines up with them */
|
|
90
|
+
isAvatarVisible?: boolean;
|
|
88
91
|
/** Enable animated day label that appears on scroll; default is true */
|
|
89
92
|
isDayAnimationEnabled?: boolean;
|
|
90
93
|
/** Reply functionality configuration */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/MessagesContainer/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/MessagesContainer/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAE/D,2EAA2E;AAC3E,MAAM,MAAM,iBAAiB,CAAC,QAAQ,SAAS,QAAQ,GAAG,QAAQ,IAAI,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEhH,6GAA6G;AAC7G,MAAM,MAAM,YAAY,GAAG,aAAa,CAAA;AAExC,MAAM,WAAW,sBAAsB,CAAC,QAAQ,SAAS,QAAQ,GAAG,QAAQ,CAC1E,SAAQ,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAC3C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAC3C,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAA;IACrB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,uDAAuD;IACvD,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,sGAAsG;IACtG,SAAS,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACvC,0DAA0D;IAC1D,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC/B,mGAAmG;IACnG,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;OAGG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,qCAAqC;IACrC,mBAAmB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC1C,qCAAqC;IACrC,0BAA0B,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IACjD,kEAAkE;IAClE,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;IAChD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC7C,0FAA0F;IAC1F,qBAAqB,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;IACtD,wEAAwE;IACxE,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC3E,+BAA+B;IAC/B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,YAAY,CAAA;IACrE,iCAAiC;IACjC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAA;IAChD,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,KAAK,CAAC,SAAS,CAAA;IACxE,8BAA8B;IAC9B,qBAAqB,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAA;IAC7C,wCAAwC;IACxC,uBAAuB,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAA;IAC/C,wCAAwC;IACxC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,CAAA;IACzC,wmBAAwmB;IACxmB,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD,0CAA0C;IAC1C,oBAAoB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC3C,+FAA+F;IAC/F,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,wEAAwE;IACxE,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,wCAAwC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC5B,oCAAoC;IACpC,SAAS,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;CACrC;AAED,MAAM,WAAW,KAAK;IACpB,gBAAgB,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,UAAU,UAAU;IAClB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAMD,MAAM,MAAM,aAAa,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAA"}
|
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import Animated from 'react-native-reanimated';
|
|
3
|
-
/** Animated FlatList created from react-native-gesture-handler's FlatList */
|
|
4
|
-
const RNGHAnimatedFlatList = Animated.createAnimatedComponent(FlatList);
|
|
5
|
-
/**
|
|
6
|
-
* Typed AnimatedFlatList component that preserves generic type parameter.
|
|
7
|
-
* Uses react-native-gesture-handler's FlatList which respects keyboardShouldPersistTaps.
|
|
8
|
-
*/
|
|
9
|
-
export const AnimatedFlatList = RNGHAnimatedFlatList;
|
|
1
|
+
export {};
|
|
10
2
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../src/MessagesContainer/types.ts"],"sourcesContent":["import { RefObject } from 'react'\nimport { StyleProp, ViewStyle } from 'react-native'\nimport type { LegendListRef } from '@legendapp/list/react-native'\nimport type { AnimatedLegendListProps } from '@legendapp/list/reanimated'\n\nimport { DayProps } from '../Day'\nimport { LoadEarlierMessagesProps } from '../LoadEarlierMessages'\nimport { MessageProps } from '../Message'\nimport { User, IMessage, Reply } from '../Models'\nimport { ReactionsProps } from '../Reactions'\nimport { ReplyProps } from '../Reply'\nimport { TypingIndicatorProps } from '../TypingIndicator/types'\n\n/** Extra props for the message list, a Legend List (`@legendapp/list`). */\nexport type AnimatedListProps<TMessage extends IMessage = IMessage> = Partial<AnimatedLegendListProps<TMessage>>\n\n/** The message list's ref: Legend List's (`scrollToEnd`, `scrollToKey`, `scrollToOffset`, `getState`...). */\nexport type AnimatedList = LegendListRef\n\nexport interface MessagesContainerProps<TMessage extends IMessage = IMessage>\n extends Omit<TypingIndicatorProps, 'style'> {\n /** Ref for the message list (a Legend List) */\n forwardRef?: RefObject<AnimatedList | null>\n /** Messages to display */\n messages?: TMessage[]\n /** Format to use for rendering dates; default is 'll' */\n dateFormat?: string\n /** Format to use for rendering relative times */\n dateFormatCalendar?: object\n /** User sending the messages: { _id, name, avatar } */\n user?: User\n /** Additional props for the message list, a [Legend List](https://legendapp.com/open-source/list/) */\n listProps?: AnimatedListProps<TMessage>\n /** Reverses display order of messages; default is true */\n isInverted?: boolean\n /**\n * Where the bubbles sit while the whole conversation fits on screen. Once it is taller\n * than the list this has no effect - the messages fill it either way.\n *\n * - `false` (default) - bottom, the usual chat look.\n * - `true` - top.\n * - `'auto'` - top while the keyboard is closed, bottom while it is open, so a short\n * conversation starts under the header and re-anchors above the keyboard when the\n * composer is focused.\n *\n * Works with both `isInverted` settings.\n */\n isAlignedTop?: boolean | 'auto'\n /** Show the scroll-to-bottom button once scrolled away from the newest message; default is true */\n isScrollToBottomEnabled?: boolean\n /**\n * Count incoming messages that arrive while scrolled up, in a badge on the scroll-to-bottom\n * button; default is true\n */\n isScrollToBottomBadgeEnabled?: boolean\n /** Scroll to bottom wrapper style */\n scrollToBottomStyle?: StyleProp<ViewStyle>\n /** Scroll to bottom content style */\n scrollToBottomContentStyle?: StyleProp<ViewStyle>\n /** Distance from bottom before showing scroll to bottom button */\n scrollToBottomOffset?: number\n /**\n * What to show while there are no messages. `Chat` shows a greeting card by default\n * (\"No messages here yet...\" and a 👋 that sends itself); pass your own render function to\n * replace it, or `null` for nothing.\n */\n renderChatEmpty?: (() => React.ReactNode) | null\n /**\n * The first message the user has not read yet. An \"Unread Messages\" bar is drawn above\n * it, and the chat opens scrolled so the bar is at the top. Keep it fixed while the chat is\n * open (the bar stays until you leave), e.g. from the unread count when it opened.\n */\n firstUnreadMessageId?: string | number | null\n /** Custom \"Unread Messages\" bar, or `null` to only scroll to the first unread message. */\n renderUnreadSeparator?: (() => React.ReactNode) | null\n /** Custom footer component on the ListView, e.g. 'User is typing...' */\n renderFooter?: (props: MessagesContainerProps<TMessage>) => React.ReactNode\n /** Custom message container */\n renderMessage?: (props: MessageProps<TMessage>) => React.ReactElement\n /** Custom day above a message */\n renderDay?: (props: DayProps) => React.ReactNode\n /** Custom \"Load earlier messages\" button */\n renderLoadEarlier?: (props: LoadEarlierMessagesProps) => React.ReactNode\n /** Custom typing indicator */\n renderTypingIndicator?: () => React.ReactNode\n /** Scroll to bottom custom component */\n scrollToBottomComponent?: () => React.ReactNode\n /** Callback when quick reply is sent */\n onQuickReply?: (replies: Reply[]) => void\n /** Props to pass to the LoadEarlierMessages component. The LoadEarlierMessages button is only visible when isAvailable is true. Includes isAvailable (controls button visibility), isInfiniteScrollEnabled (infinite scroll up when reach the top of messages container, automatically call onPress function if it exists - not yet supported for web), onPress (callback when button is pressed), isLoading (display loading indicator), label (override default \"Load earlier messages\" text), and styling props (containerStyle, wrapperStyle, textStyle, activityIndicatorStyle, activityIndicatorColor, activityIndicatorSize). */\n loadEarlierMessagesProps?: LoadEarlierMessagesProps\n /** Style for TypingIndicator component */\n typingIndicatorStyle?: StyleProp<ViewStyle>\n /** Whether incoming messages leave room for an avatar; the typing bubble lines up with them */\n isAvatarVisible?: boolean\n /** Enable animated day label that appears on scroll; default is true */\n isDayAnimationEnabled?: boolean\n /** Reply functionality configuration */\n reply?: ReplyProps<TMessage>\n /** Emoji reactions configuration */\n reactions?: ReactionsProps<TMessage>\n}\n\nexport interface State {\n showScrollBottom: boolean\n hasScrolled: boolean\n}\n\ninterface ViewLayout {\n x: number\n y: number\n width: number\n height: number\n}\n\n// `dayKey` is the local calendar day as a sortable integer (YYYYMMDD-ish). It is\n// computed once, on the JS side, where a Date is already in hand - the worklet that\n// compares entries runs on every cell layout, and constructing Dates there to compare\n// them allocated two objects per entry per layout.\nexport type DaysPositions = { [key: string]: ViewLayout & { createdAt: number, dayKey: number } }\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SharedValue } from 'react-native-reanimated';
|
|
2
|
+
import { ListState } from './listState';
|
|
3
|
+
/**
|
|
4
|
+
* Where each screen-gradient bubble's row sits, for `BubbleGradientContext`, fed by the list's
|
|
5
|
+
* position listeners.
|
|
6
|
+
*/
|
|
7
|
+
export declare function useCellLayouts(listState: () => ListState | undefined, isListLaidOut: boolean): {
|
|
8
|
+
cellLayout: (id: string) => SharedValue<{
|
|
9
|
+
y: number;
|
|
10
|
+
height: number;
|
|
11
|
+
} | undefined>;
|
|
12
|
+
onItemSizeChanged: ({ itemKey, size }: {
|
|
13
|
+
itemKey: string;
|
|
14
|
+
size: number;
|
|
15
|
+
}) => void;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useCellLayouts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCellLayouts.d.ts","sourceRoot":"","sources":["../../src/MessagesContainer/useCellLayouts.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAElE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC;;;GAGG;AACH,wBAAgB,cAAc,CAAE,SAAS,EAAE,MAAM,SAAS,GAAG,SAAS,EAAE,aAAa,EAAE,OAAO;qBAqBxD,MAAM;WAd6B,MAAM;gBAAU,MAAM;;2CAoCnC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;EAQ5F"}
|