stream-chat-react-native-core 7.0.0-rc.9 → 7.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 +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +16 -3
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Attachment/ImageReloadIndicator.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js +8 -5
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useChannelDataState.js.map +1 -1
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +2 -0
- package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/commonjs/components/Chat/Chat.js.map +1 -1
- package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js +1 -1
- package/lib/commonjs/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +12 -6
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js +14 -6
- package/lib/commonjs/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +3 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +2 -1
- package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +9 -7
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js +18 -24
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js +1 -1
- package/lib/commonjs/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
- package/lib/commonjs/components/MessageList/utils/getReadState.js +20 -0
- package/lib/commonjs/components/MessageList/utils/getReadState.js.map +1 -0
- package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
- package/lib/commonjs/components/Poll/components/Button.js.map +1 -1
- package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js +2 -2
- package/lib/commonjs/components/Reply/Reply.js.map +1 -1
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js +1 -0
- package/lib/commonjs/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/commonjs/components/index.js +15 -4
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js +5 -1
- package/lib/commonjs/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/commonjs/contexts/debugContext/DebugContext.js.map +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/pollContext/pollContext.js.map +1 -1
- package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/commonjs/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
- package/lib/commonjs/hooks/index.js +11 -0
- package/lib/commonjs/hooks/index.js.map +1 -1
- package/lib/commonjs/i18n/en.json +3 -0
- package/lib/commonjs/i18n/es.json +3 -0
- package/lib/commonjs/i18n/fr.json +3 -0
- package/lib/commonjs/i18n/he.json +3 -0
- package/lib/commonjs/i18n/hi.json +2 -0
- package/lib/commonjs/i18n/it.json +3 -0
- package/lib/commonjs/i18n/ja.json +1 -0
- package/lib/commonjs/i18n/ko.json +1 -0
- package/lib/commonjs/i18n/nl.json +2 -0
- package/lib/commonjs/i18n/pt-br.json +3 -0
- package/lib/commonjs/i18n/ru.json +4 -0
- package/lib/commonjs/i18n/tr.json +2 -0
- package/lib/commonjs/utils/removeReservedFields.js.map +1 -1
- package/lib/commonjs/utils/utils.js +1 -3
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/Gallery.js +16 -3
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Attachment/ImageReloadIndicator.js.map +1 -1
- package/lib/module/components/Channel/Channel.js +8 -5
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Channel/hooks/useChannelDataState.js.map +1 -1
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +2 -0
- package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
- package/lib/module/components/Chat/Chat.js.map +1 -1
- package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js +1 -1
- package/lib/module/components/KeyboardCompatibleView/KeyboardCompatibleView.js.map +1 -1
- package/lib/module/components/Message/Message.js +12 -6
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageStatus.js +14 -6
- package/lib/module/components/Message/MessageSimple/MessageStatus.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js +3 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActionHandlers.js.map +1 -1
- package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +2 -1
- package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
- package/lib/module/components/MessageList/MessageList.js +9 -7
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js +18 -24
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js +1 -1
- package/lib/module/components/MessageList/utils/getGroupStyles.js.map +1 -1
- package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
- package/lib/module/components/MessageList/utils/getReadState.js +20 -0
- package/lib/module/components/MessageList/utils/getReadState.js.map +1 -0
- package/lib/module/components/MessageMenu/hooks/useFetchReactions.js.map +1 -1
- package/lib/module/components/Poll/components/Button.js.map +1 -1
- package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -1
- package/lib/module/components/Reply/Reply.js +2 -2
- package/lib/module/components/Reply/Reply.js.map +1 -1
- package/lib/module/components/Thread/components/ThreadFooterComponent.js +1 -0
- package/lib/module/components/Thread/components/ThreadFooterComponent.js.map +1 -1
- package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
- package/lib/module/components/index.js +15 -4
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/contexts/channelsStateContext/useChannelState.js +5 -1
- package/lib/module/contexts/channelsStateContext/useChannelState.js.map +1 -1
- package/lib/module/contexts/debugContext/DebugContext.js.map +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/pollContext/pollContext.js.map +1 -1
- package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
- package/lib/module/contexts/threadsContext/ThreadListItemContext.js.map +1 -1
- package/lib/module/hooks/index.js +11 -0
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/i18n/en.json +3 -0
- package/lib/module/i18n/es.json +3 -0
- package/lib/module/i18n/fr.json +3 -0
- package/lib/module/i18n/he.json +3 -0
- package/lib/module/i18n/hi.json +2 -0
- package/lib/module/i18n/it.json +3 -0
- package/lib/module/i18n/ja.json +1 -0
- package/lib/module/i18n/ko.json +1 -0
- package/lib/module/i18n/nl.json +2 -0
- package/lib/module/i18n/pt-br.json +3 -0
- package/lib/module/i18n/ru.json +4 -0
- package/lib/module/i18n/tr.json +2 -0
- package/lib/module/utils/removeReservedFields.js.map +1 -1
- package/lib/module/utils/utils.js +1 -3
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Gallery.d.ts +3 -3
- package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
- package/lib/typescript/components/Attachment/ImageReloadIndicator.d.ts +4 -3
- package/lib/typescript/components/Attachment/ImageReloadIndicator.d.ts.map +1 -1
- package/lib/typescript/components/Channel/Channel.d.ts +3 -4
- package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts +2 -3
- package/lib/typescript/components/Channel/hooks/useChannelDataState.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
- package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts +4 -4
- package/lib/typescript/components/ChannelPreview/hooks/useChannelPreviewData.d.ts +1 -1
- package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +1 -1
- package/lib/typescript/components/Chat/Chat.d.ts +0 -9
- package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
- package/lib/typescript/components/KeyboardCompatibleView/KeyboardCompatibleView.d.ts.map +1 -1
- package/lib/typescript/components/Message/Message.d.ts +4 -5
- package/lib/typescript/components/Message/Message.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts +2 -3
- package/lib/typescript/components/Message/MessageSimple/MessageFooter.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageStatus.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts.map +1 -1
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts +2 -2
- package/lib/typescript/components/Message/MessageSimple/utils/renderText.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts.map +1 -1
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +2 -2
- package/lib/typescript/components/Message/hooks/useMessageActions.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageList.d.ts +3 -3
- package/lib/typescript/components/MessageList/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/MessageSystem.d.ts +2 -2
- package/lib/typescript/components/MessageList/MessageSystem.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +11 -10
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/utils/getGroupStyles.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts +2 -2
- package/lib/typescript/components/MessageList/utils/getLastReceivedMessage.d.ts.map +1 -1
- package/lib/typescript/components/MessageList/utils/getReadState.d.ts +9 -0
- package/lib/typescript/components/MessageList/utils/getReadState.d.ts.map +1 -0
- package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts +2 -3
- package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/Button.d.ts +2 -3
- package/lib/typescript/components/Poll/components/Button.d.ts.map +1 -1
- package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts +2 -3
- package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -1
- package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
- package/lib/typescript/components/Thread/components/ThreadFooterComponent.d.ts.map +1 -1
- package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +2 -1
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/contexts/channelsStateContext/useChannelState.d.ts.map +1 -1
- package/lib/typescript/contexts/debugContext/DebugContext.d.ts +2 -3
- package/lib/typescript/contexts/debugContext/DebugContext.d.ts.map +1 -1
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +3 -3
- package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +6 -4
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +4 -5
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +24 -20
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
- package/lib/typescript/contexts/pollContext/pollContext.d.ts +2 -3
- package/lib/typescript/contexts/pollContext/pollContext.d.ts.map +1 -1
- package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +4 -5
- package/lib/typescript/contexts/threadContext/ThreadContext.d.ts.map +1 -1
- package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts +3 -4
- package/lib/typescript/contexts/threadsContext/ThreadListItemContext.d.ts.map +1 -1
- package/lib/typescript/hooks/index.d.ts +1 -0
- package/lib/typescript/hooks/index.d.ts.map +1 -1
- package/lib/typescript/hooks/useTranslatedMessage.d.ts +55 -55
- package/lib/typescript/hooks/useTranslatedMessage.d.ts.map +1 -1
- package/lib/typescript/i18n/en.json +3 -0
- package/lib/typescript/i18n/es.json +3 -0
- package/lib/typescript/i18n/fr.json +3 -0
- package/lib/typescript/i18n/he.json +3 -0
- package/lib/typescript/i18n/hi.json +2 -0
- package/lib/typescript/i18n/it.json +3 -0
- package/lib/typescript/i18n/ja.json +1 -0
- package/lib/typescript/i18n/ko.json +1 -0
- package/lib/typescript/i18n/nl.json +2 -0
- package/lib/typescript/i18n/pt-br.json +3 -0
- package/lib/typescript/i18n/ru.json +4 -0
- package/lib/typescript/i18n/tr.json +2 -0
- package/lib/typescript/utils/i18n/Streami18n.d.ts +3 -0
- package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
- package/lib/typescript/utils/removeReservedFields.d.ts +2 -3
- package/lib/typescript/utils/removeReservedFields.d.ts.map +1 -1
- package/lib/typescript/utils/utils.d.ts +5 -6
- package/lib/typescript/utils/utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/components/Attachment/Gallery.tsx +22 -7
- package/src/components/Attachment/ImageReloadIndicator.tsx +4 -5
- package/src/components/Channel/Channel.tsx +12 -9
- package/src/components/Channel/__tests__/Channel.test.js +2 -0
- package/src/components/Channel/hooks/useChannelDataState.ts +2 -4
- package/src/components/Channel/hooks/useCreateMessagesContext.ts +2 -0
- package/src/components/Chat/Chat.tsx +0 -9
- package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +8 -7
- package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +5 -4
- package/src/components/ImageGallery/__tests__/ImageGalleryHeader.test.tsx +5 -4
- package/src/components/ImageGallery/__tests__/ImageGalleryOverlay.test.tsx +3 -2
- package/src/components/KeyboardCompatibleView/KeyboardCompatibleView.tsx +6 -1
- package/src/components/Message/Message.tsx +10 -13
- package/src/components/Message/MessageSimple/MessageFooter.tsx +2 -3
- package/src/components/Message/MessageSimple/MessageStatus.tsx +19 -17
- package/src/components/Message/MessageSimple/MessageTextContainer.tsx +3 -3
- package/src/components/Message/MessageSimple/__tests__/MessageStatus.test.js +11 -5
- package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.tsx +5 -4
- package/src/components/Message/MessageSimple/utils/renderText.tsx +2 -3
- package/src/components/Message/hooks/useCreateMessageContext.ts +3 -0
- package/src/components/Message/hooks/useMessageActionHandlers.ts +1 -3
- package/src/components/Message/hooks/useMessageActions.tsx +4 -3
- package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +1 -0
- package/src/components/MessageList/MessageList.tsx +24 -25
- package/src/components/MessageList/MessageSystem.tsx +2 -2
- package/src/components/MessageList/hooks/useMessageList.ts +48 -59
- package/src/components/MessageList/utils/getGroupStyles.ts +7 -5
- package/src/components/MessageList/utils/getLastReceivedMessage.ts +3 -3
- package/src/components/MessageList/utils/getReadState.ts +27 -0
- package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +2 -3
- package/src/components/MessageMenu/hooks/useFetchReactions.ts +2 -3
- package/src/components/Poll/components/Button.tsx +2 -4
- package/src/components/Poll/components/PollResults/PollResultItem.tsx +2 -3
- package/src/components/Reply/Reply.tsx +1 -2
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +0 -15
- package/src/components/Thread/components/ThreadFooterComponent.tsx +1 -0
- package/src/components/ThreadList/ThreadListItem.tsx +6 -4
- package/src/components/index.ts +2 -1
- package/src/contexts/channelsStateContext/useChannelState.ts +5 -1
- package/src/contexts/debugContext/DebugContext.tsx +2 -4
- package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +5 -4
- package/src/contexts/messageContext/MessageContext.tsx +6 -4
- package/src/contexts/messageInputContext/MessageInputContext.tsx +5 -5
- package/src/contexts/messageInputContext/__tests__/sendMessage.test.tsx +6 -5
- package/src/contexts/messageInputContext/__tests__/updateMessage.test.tsx +3 -5
- package/src/contexts/messageInputContext/__tests__/useMessageDetailsForState.test.tsx +14 -9
- package/src/contexts/messagesContext/MessagesContext.tsx +25 -20
- package/src/contexts/pollContext/pollContext.tsx +2 -4
- package/src/contexts/threadContext/ThreadContext.tsx +4 -6
- package/src/contexts/threadsContext/ThreadListItemContext.tsx +3 -5
- package/src/hooks/index.ts +1 -0
- package/src/i18n/en.json +3 -0
- package/src/i18n/es.json +3 -0
- package/src/i18n/fr.json +3 -0
- package/src/i18n/he.json +3 -0
- package/src/i18n/hi.json +2 -0
- package/src/i18n/it.json +3 -0
- package/src/i18n/ja.json +1 -0
- package/src/i18n/ko.json +1 -0
- package/src/i18n/nl.json +2 -0
- package/src/i18n/pt-br.json +3 -0
- package/src/i18n/ru.json +4 -0
- package/src/i18n/tr.json +2 -0
- package/src/utils/removeReservedFields.ts +3 -5
- package/src/utils/utils.ts +5 -10
- package/src/version.json +1 -1
- package/lib/commonjs/components/MessageList/hooks/useLastReadData.js +0 -20
- package/lib/commonjs/components/MessageList/hooks/useLastReadData.js.map +0 -1
- package/lib/commonjs/components/MessageList/utils/getReadStates.js +0 -34
- package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +0 -1
- package/lib/module/components/MessageList/hooks/useLastReadData.js +0 -20
- package/lib/module/components/MessageList/hooks/useLastReadData.js.map +0 -1
- package/lib/module/components/MessageList/utils/getReadStates.js +0 -34
- package/lib/module/components/MessageList/utils/getReadStates.js.map +0 -1
- package/lib/typescript/components/MessageList/hooks/useLastReadData.d.ts +0 -12
- package/lib/typescript/components/MessageList/hooks/useLastReadData.d.ts.map +0 -1
- package/lib/typescript/components/MessageList/utils/getReadStates.d.ts +0 -5
- package/lib/typescript/components/MessageList/utils/getReadStates.d.ts.map +0 -1
- package/src/components/MessageList/hooks/useLastReadData.ts +0 -29
- package/src/components/MessageList/utils/getReadStates.ts +0 -55
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext, useRef } from 'react';
|
|
2
2
|
|
|
3
|
-
import type { Channel, ChannelState, StreamChat } from 'stream-chat';
|
|
4
|
-
|
|
5
|
-
import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
|
|
3
|
+
import type { Channel, ChannelState, LocalMessage, StreamChat } from 'stream-chat';
|
|
6
4
|
|
|
7
5
|
import { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';
|
|
8
6
|
|
|
@@ -12,7 +10,7 @@ export type DebugDataType =
|
|
|
12
10
|
data: Channel['data'];
|
|
13
11
|
members: ChannelState['members'];
|
|
14
12
|
}[]
|
|
15
|
-
|
|
|
13
|
+
| LocalMessage[];
|
|
16
14
|
|
|
17
15
|
export type DebugContextValue = {
|
|
18
16
|
eventType?: string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext, useState } from 'react';
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { LocalMessage } from 'stream-chat';
|
|
4
|
+
|
|
4
5
|
import type { UnknownType } from '../../types/types';
|
|
5
6
|
import { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';
|
|
6
7
|
|
|
@@ -12,8 +13,8 @@ type SelectedMessage = {
|
|
|
12
13
|
};
|
|
13
14
|
|
|
14
15
|
export type ImageGalleryContextValue = {
|
|
15
|
-
messages:
|
|
16
|
-
setMessages: React.Dispatch<React.SetStateAction<
|
|
16
|
+
messages: LocalMessage[];
|
|
17
|
+
setMessages: React.Dispatch<React.SetStateAction<LocalMessage[]>>;
|
|
17
18
|
setSelectedMessage: React.Dispatch<React.SetStateAction<SelectedMessage | undefined>>;
|
|
18
19
|
selectedMessage?: SelectedMessage;
|
|
19
20
|
};
|
|
@@ -23,7 +24,7 @@ export const ImageGalleryContext = React.createContext(
|
|
|
23
24
|
);
|
|
24
25
|
|
|
25
26
|
export const ImageGalleryProvider = ({ children }: PropsWithChildren<UnknownType>) => {
|
|
26
|
-
const [messages, setMessages] = useState<
|
|
27
|
+
const [messages, setMessages] = useState<LocalMessage[]>([]);
|
|
27
28
|
const [selectedMessage, setSelectedMessage] = useState<SelectedMessage>();
|
|
28
29
|
|
|
29
30
|
return (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext } from 'react';
|
|
2
2
|
|
|
3
|
-
import type { Attachment } from 'stream-chat';
|
|
3
|
+
import type { Attachment, LocalMessage } from 'stream-chat';
|
|
4
4
|
|
|
5
5
|
import type { ActionHandler } from '../../components/Attachment/Attachment';
|
|
6
6
|
import { ReactionSummary } from '../../components/Message/hooks/useProcessReactions';
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
MessagePressableHandlerPayload,
|
|
9
9
|
PressableHandlerPayload,
|
|
10
10
|
} from '../../components/Message/Message';
|
|
11
|
-
import type { GroupType
|
|
11
|
+
import type { GroupType } from '../../components/MessageList/hooks/useMessageList';
|
|
12
12
|
import type { ChannelContextValue } from '../../contexts/channelContext/ChannelContext';
|
|
13
13
|
import type { MessageContentType } from '../../contexts/messagesContext/MessagesContext';
|
|
14
14
|
import type { DeepPartial } from '../../contexts/themeContext/ThemeContext';
|
|
@@ -48,13 +48,13 @@ export type MessageContextValue = {
|
|
|
48
48
|
/**
|
|
49
49
|
* A factory function that determines whether a message is AI generated or not.
|
|
50
50
|
*/
|
|
51
|
-
isMessageAIGenerated: (message:
|
|
51
|
+
isMessageAIGenerated: (message: LocalMessage) => boolean;
|
|
52
52
|
/** Whether or not this is the active user's message */
|
|
53
53
|
isMyMessage: boolean;
|
|
54
54
|
/** Whether or not this is the last message in a group of messages */
|
|
55
55
|
lastGroupMessage: boolean;
|
|
56
56
|
/** Current [message object](https://getstream.io/chat/docs/#message_format) */
|
|
57
|
-
message:
|
|
57
|
+
message: LocalMessage;
|
|
58
58
|
/** Order to render the message content */
|
|
59
59
|
messageContentOrder: MessageContentType[];
|
|
60
60
|
/**
|
|
@@ -87,6 +87,8 @@ export type MessageContextValue = {
|
|
|
87
87
|
/** The images attached to a message */
|
|
88
88
|
otherAttachments: Attachment[];
|
|
89
89
|
reactions: ReactionSummary[];
|
|
90
|
+
/** Whether or not the message has been read by the current user */
|
|
91
|
+
readBy: number | boolean;
|
|
90
92
|
/** React set state function to set the state of `isEditedMessageOpen` */
|
|
91
93
|
setIsEditedMessageOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
92
94
|
/**
|
|
@@ -13,6 +13,7 @@ import { Alert, Keyboard, Linking, TextInput, TextInputProps } from 'react-nativ
|
|
|
13
13
|
import uniq from 'lodash/uniq';
|
|
14
14
|
import {
|
|
15
15
|
Attachment,
|
|
16
|
+
LocalMessage,
|
|
16
17
|
logChatPromiseExecution,
|
|
17
18
|
Message,
|
|
18
19
|
SendFileAPIResponse,
|
|
@@ -52,7 +53,6 @@ import type { MessageInputProps } from '../../components/MessageInput/MessageInp
|
|
|
52
53
|
import type { MoreOptionsButtonProps } from '../../components/MessageInput/MoreOptionsButton';
|
|
53
54
|
import type { SendButtonProps } from '../../components/MessageInput/SendButton';
|
|
54
55
|
import type { UploadProgressIndicatorProps } from '../../components/MessageInput/UploadProgressIndicator';
|
|
55
|
-
import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
|
|
56
56
|
import type { Emoji } from '../../emoji-data';
|
|
57
57
|
import {
|
|
58
58
|
isDocumentPickerAvailable,
|
|
@@ -360,7 +360,7 @@ export type InputMessageInputContextValue = {
|
|
|
360
360
|
SendButton: React.ComponentType<SendButtonProps>;
|
|
361
361
|
sendImageAsync: boolean;
|
|
362
362
|
sendMessage: (message: Partial<StreamMessage>) => Promise<void>;
|
|
363
|
-
setQuotedMessageState: (message:
|
|
363
|
+
setQuotedMessageState: (message: LocalMessage) => void;
|
|
364
364
|
/**
|
|
365
365
|
* Custom UI component to render checkbox with text ("Also send to channel") in Thread's input box.
|
|
366
366
|
* When ticked, message will also be sent in parent channel.
|
|
@@ -439,7 +439,7 @@ export type InputMessageInputContextValue = {
|
|
|
439
439
|
* Variable that tracks the editing state.
|
|
440
440
|
* It is defined with message type if the editing state is true, else its undefined.
|
|
441
441
|
*/
|
|
442
|
-
editing?:
|
|
442
|
+
editing?: LocalMessage;
|
|
443
443
|
/**
|
|
444
444
|
* Prop to override the default emoji search index in auto complete suggestion list.
|
|
445
445
|
*/
|
|
@@ -485,7 +485,7 @@ export type InputMessageInputContextValue = {
|
|
|
485
485
|
*/
|
|
486
486
|
onChangeText?: (newText: string) => void;
|
|
487
487
|
openPollCreationDialog?: ({ sendMessage }: Pick<LocalMessageInputContext, 'sendMessage'>) => void;
|
|
488
|
-
quotedMessage?:
|
|
488
|
+
quotedMessage?: LocalMessage;
|
|
489
489
|
SendMessageDisallowedIndicator?: React.ComponentType;
|
|
490
490
|
/**
|
|
491
491
|
* ref for input setter function
|
|
@@ -1036,7 +1036,7 @@ export const MessageInputProvider = ({
|
|
|
1036
1036
|
/**
|
|
1037
1037
|
* If the message is bounced by moderation, we firstly remove the message from message list and then send a new message.
|
|
1038
1038
|
*/
|
|
1039
|
-
if (message && isBouncedMessage(message
|
|
1039
|
+
if (message && isBouncedMessage(message)) {
|
|
1040
1040
|
await removeMessage(message);
|
|
1041
1041
|
}
|
|
1042
1042
|
value.sendMessage({
|
|
@@ -3,7 +3,8 @@ import { act } from 'react-test-renderer';
|
|
|
3
3
|
|
|
4
4
|
import { renderHook, waitFor } from '@testing-library/react-native';
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import { LocalMessage } from 'stream-chat';
|
|
7
|
+
|
|
7
8
|
import {
|
|
8
9
|
generateFileUploadPreview,
|
|
9
10
|
generateImageUploadPreview,
|
|
@@ -40,7 +41,7 @@ describe("MessageInputContext's sendMessage", () => {
|
|
|
40
41
|
setSelectedFiles: jest.fn(),
|
|
41
42
|
setSelectedImages: jest.fn(),
|
|
42
43
|
}));
|
|
43
|
-
const message:
|
|
44
|
+
const message: LocalMessage | undefined = generateMessage({
|
|
44
45
|
created_at: 'Sat Jul 02 2022 23:55:13 GMT+0530 (India Standard Time)',
|
|
45
46
|
id: '7a85f744-cc89-4f82-a1d4-5456432cc8bf',
|
|
46
47
|
updated_at: 'Sat Jul 02 2022 23:55:13 GMT+0530 (India Standard Time)',
|
|
@@ -49,7 +50,7 @@ describe("MessageInputContext's sendMessage", () => {
|
|
|
49
50
|
image: 'fc86ddcb-bac4-400c-9afd-b0c0a1c0cd33',
|
|
50
51
|
name: '50cbdd0e-ca7e-4478-9e2c-be0f1ac6a995',
|
|
51
52
|
}),
|
|
52
|
-
}) as unknown as
|
|
53
|
+
}) as unknown as LocalMessage;
|
|
53
54
|
|
|
54
55
|
it('exit sendMessage when file upload status failed', async () => {
|
|
55
56
|
const initialProps = {
|
|
@@ -223,7 +224,7 @@ describe("MessageInputContext's sendMessage", () => {
|
|
|
223
224
|
it('exit sendMessage when image upload has an error and catch block is executed', () => {
|
|
224
225
|
const setQuotedMessageStateMock = jest.fn();
|
|
225
226
|
const clearQuotedMessageStateMock = jest.fn();
|
|
226
|
-
const generatedQuotedMessage: boolean |
|
|
227
|
+
const generatedQuotedMessage: boolean | LocalMessage = message;
|
|
227
228
|
const images = [
|
|
228
229
|
generateImageUploadPreview({ state: FileState.UPLOADED }),
|
|
229
230
|
generateImageUploadPreview({ state: FileState.FINISHED }),
|
|
@@ -268,7 +269,7 @@ describe("MessageInputContext's sendMessage", () => {
|
|
|
268
269
|
const clearEditingStateMock = jest.fn();
|
|
269
270
|
const editMessageMock = jest.fn().mockResolvedValue({ data: {} });
|
|
270
271
|
const images = generateImageUploadPreview({ state: FileState.UPLOADED });
|
|
271
|
-
const generatedMessage: boolean |
|
|
272
|
+
const generatedMessage: boolean | LocalMessage = message;
|
|
272
273
|
const initialProps = {
|
|
273
274
|
clearEditingState: clearEditingStateMock,
|
|
274
275
|
clearQuotedMessageState: clearQuotedMessageStateMock,
|
|
@@ -3,9 +3,7 @@ import { act } from 'react-test-renderer';
|
|
|
3
3
|
|
|
4
4
|
import { renderHook } from '@testing-library/react-native';
|
|
5
5
|
|
|
6
|
-
import type { StreamChat } from 'stream-chat';
|
|
7
|
-
|
|
8
|
-
import type { MessageType } from '../../../components/MessageList/hooks/useMessageList';
|
|
6
|
+
import type { LocalMessage, StreamChat } from 'stream-chat';
|
|
9
7
|
|
|
10
8
|
import { ChatContextValue, ChatProvider } from '../../../contexts/chatContext/ChatContext';
|
|
11
9
|
import { generateMessage } from '../../../mock-builders/generator/message';
|
|
@@ -51,7 +49,7 @@ describe("MessageInputContext's updateMessage", () => {
|
|
|
51
49
|
setSelectedImages: jest.fn(),
|
|
52
50
|
}));
|
|
53
51
|
const clearEditingStateMock = jest.fn();
|
|
54
|
-
const generatedMessage: boolean |
|
|
52
|
+
const generatedMessage: boolean | LocalMessage = generateMessage({
|
|
55
53
|
created_at: 'Sat Jul 02 2022 23:55:13 GMT+0530 (India Standard Time)',
|
|
56
54
|
id: '7a85f744-cc89-4f82-a1d4-5456432cc8bf',
|
|
57
55
|
text: 'hey',
|
|
@@ -61,7 +59,7 @@ describe("MessageInputContext's updateMessage", () => {
|
|
|
61
59
|
image: 'fc86ddcb-bac4-400c-9afd-b0c0a1c0cd33',
|
|
62
60
|
name: '50cbdd0e-ca7e-4478-9e2c-be0f1ac6a995',
|
|
63
61
|
}),
|
|
64
|
-
}) as unknown as
|
|
62
|
+
}) as unknown as LocalMessage;
|
|
65
63
|
|
|
66
64
|
it('updateMessage throws error as clearEditingState is not available', async () => {
|
|
67
65
|
const initialProps = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { renderHook } from '@testing-library/react-native';
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { LocalMessage } from 'stream-chat';
|
|
4
4
|
|
|
5
5
|
import {
|
|
6
6
|
generateFileAttachment,
|
|
@@ -13,24 +13,29 @@ import { generateUser } from '../../../mock-builders/generator/user';
|
|
|
13
13
|
import { useMessageDetailsForState } from '../hooks/useMessageDetailsForState';
|
|
14
14
|
|
|
15
15
|
describe('useMessageDetailsForState', () => {
|
|
16
|
-
|
|
16
|
+
const message = generateMessage({ text: 'Dummy text' });
|
|
17
|
+
it.each([[{ message }, { initialValue: '', message }]])(
|
|
17
18
|
'test state of useMessageDetailsForState when initialProps differ',
|
|
18
19
|
() => {
|
|
19
|
-
const { result } = renderHook(
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
const { result } = renderHook(
|
|
21
|
+
({ message }) => useMessageDetailsForState(message as unknown as LocalMessage),
|
|
22
|
+
{
|
|
23
|
+
initialProps: { message },
|
|
24
|
+
},
|
|
25
|
+
);
|
|
22
26
|
|
|
23
|
-
expect(result.current.text).toBe(
|
|
27
|
+
expect(result.current.text).toBe(message.text);
|
|
24
28
|
},
|
|
25
29
|
);
|
|
26
30
|
|
|
27
31
|
it('showMoreOptions is true when initialValue and text is same', () => {
|
|
28
32
|
const { result } = renderHook(
|
|
29
|
-
({ initialValue, message }) =>
|
|
33
|
+
({ initialValue, message }) =>
|
|
34
|
+
useMessageDetailsForState(message as unknown as LocalMessage, initialValue),
|
|
30
35
|
{
|
|
31
36
|
initialProps: {
|
|
32
37
|
initialValue: 'Dummy text',
|
|
33
|
-
message: generateMessage({ text: 'Dummy text' })
|
|
38
|
+
message: generateMessage({ text: 'Dummy text' }),
|
|
34
39
|
},
|
|
35
40
|
},
|
|
36
41
|
);
|
|
@@ -41,7 +46,7 @@ describe('useMessageDetailsForState', () => {
|
|
|
41
46
|
it('fileUploads, imageUploads and mentionedUsers are not empty when attachments are present in message', () => {
|
|
42
47
|
const { result } = renderHook(
|
|
43
48
|
({ initialValue, message }) =>
|
|
44
|
-
useMessageDetailsForState(message as unknown as
|
|
49
|
+
useMessageDetailsForState(message as unknown as LocalMessage, initialValue),
|
|
45
50
|
{
|
|
46
51
|
initialProps: {
|
|
47
52
|
initialValue: '',
|
|
@@ -2,7 +2,7 @@ import React, { PropsWithChildren, useContext } from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { PressableProps, ViewProps } from 'react-native';
|
|
4
4
|
|
|
5
|
-
import type { Attachment, ChannelState, MessageResponse } from 'stream-chat';
|
|
5
|
+
import type { Attachment, ChannelState, LocalMessage, MessageResponse } from 'stream-chat';
|
|
6
6
|
|
|
7
7
|
import type { PollContentProps, StreamingMessageViewProps } from '../../components';
|
|
8
8
|
import type { AttachmentProps } from '../../components/Attachment/Attachment';
|
|
@@ -16,6 +16,7 @@ import type { GalleryProps } from '../../components/Attachment/Gallery';
|
|
|
16
16
|
import type { GiphyProps } from '../../components/Attachment/Giphy';
|
|
17
17
|
import type { ImageLoadingFailedIndicatorProps } from '../../components/Attachment/ImageLoadingFailedIndicator';
|
|
18
18
|
import type { ImageLoadingIndicatorProps } from '../../components/Attachment/ImageLoadingIndicator';
|
|
19
|
+
import { ImageReloadIndicatorProps } from '../../components/Attachment/ImageReloadIndicator';
|
|
19
20
|
import type { VideoThumbnailProps } from '../../components/Attachment/VideoThumbnail';
|
|
20
21
|
import type {
|
|
21
22
|
MessagePressableHandlerPayload,
|
|
@@ -40,7 +41,6 @@ import type { ReactionListTopProps } from '../../components/Message/MessageSimpl
|
|
|
40
41
|
import type { MarkdownRules } from '../../components/Message/MessageSimple/utils/renderText';
|
|
41
42
|
import type { MessageActionsParams } from '../../components/Message/utils/messageActions';
|
|
42
43
|
import type { DateHeaderProps } from '../../components/MessageList/DateHeader';
|
|
43
|
-
import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
|
|
44
44
|
import type { InlineDateSeparatorProps } from '../../components/MessageList/InlineDateSeparator';
|
|
45
45
|
import type { MessageListProps } from '../../components/MessageList/MessageList';
|
|
46
46
|
import type { MessageSystemProps } from '../../components/MessageList/MessageSystem';
|
|
@@ -107,7 +107,7 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
107
107
|
* Defaults to: [DateHeader](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/DateHeader.tsx)
|
|
108
108
|
**/
|
|
109
109
|
DateHeader: React.ComponentType<DateHeaderProps>;
|
|
110
|
-
deleteMessage: (message:
|
|
110
|
+
deleteMessage: (message: LocalMessage) => Promise<void>;
|
|
111
111
|
deleteReaction: (type: string, messageId: string) => Promise<void>;
|
|
112
112
|
|
|
113
113
|
/** Should keyboard be dismissed when messaged is touched */
|
|
@@ -151,6 +151,11 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
151
151
|
*/
|
|
152
152
|
ImageLoadingFailedIndicator: React.ComponentType<ImageLoadingFailedIndicatorProps>;
|
|
153
153
|
|
|
154
|
+
/**
|
|
155
|
+
* The indicator rendered at the center of an image whenever its loading fails, used to trigger retries.
|
|
156
|
+
*/
|
|
157
|
+
ImageReloadIndicator: React.ComponentType<ImageReloadIndicatorProps>;
|
|
158
|
+
|
|
154
159
|
/**
|
|
155
160
|
* The indicator rendered when image is loading. By default renders <ActivityIndicator/>
|
|
156
161
|
*/
|
|
@@ -289,15 +294,15 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
289
294
|
/**
|
|
290
295
|
* Override the api request for retry message functionality.
|
|
291
296
|
*/
|
|
292
|
-
retrySendMessage: (message:
|
|
297
|
+
retrySendMessage: (message: LocalMessage) => Promise<void>;
|
|
293
298
|
/**
|
|
294
299
|
* UI component for ScrollToBottomButton
|
|
295
300
|
* Defaults to: [ScrollToBottomButton](https://getstream.io/chat/docs/sdk/reactnative/ui-components/scroll-to-bottom-button/)
|
|
296
301
|
*/
|
|
297
302
|
ScrollToBottomButton: React.ComponentType<ScrollToBottomButtonProps>;
|
|
298
303
|
sendReaction: (type: string, messageId: string) => Promise<void>;
|
|
299
|
-
setEditingState: (message?:
|
|
300
|
-
setQuotedMessageState: (message?:
|
|
304
|
+
setEditingState: (message?: LocalMessage) => void;
|
|
305
|
+
setQuotedMessageState: (message?: LocalMessage) => void;
|
|
301
306
|
/**
|
|
302
307
|
* UI component for StreamingMessageView. Displays the text of a message with a typewriter animation.
|
|
303
308
|
*/
|
|
@@ -314,7 +319,7 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
314
319
|
TypingIndicatorContainer: React.ComponentType<TypingIndicatorContainerProps>;
|
|
315
320
|
UnreadMessagesNotification: React.ComponentType<UnreadMessagesNotificationProps>;
|
|
316
321
|
updateMessage: (
|
|
317
|
-
updatedMessage: MessageResponse,
|
|
322
|
+
updatedMessage: MessageResponse | LocalMessage,
|
|
318
323
|
extraState?: {
|
|
319
324
|
commands?: SuggestionCommand[];
|
|
320
325
|
messageInput?: string;
|
|
@@ -377,29 +382,29 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
377
382
|
* Handler to access when a ban user action is invoked.
|
|
378
383
|
* @param message
|
|
379
384
|
*/
|
|
380
|
-
handleBan?: (message:
|
|
385
|
+
handleBan?: (message: LocalMessage) => Promise<void>;
|
|
381
386
|
/** Handler to access when a copy message action is invoked */
|
|
382
|
-
handleCopy?: (message:
|
|
387
|
+
handleCopy?: (message: LocalMessage) => Promise<void>;
|
|
383
388
|
/** Handler to access when a delete message action is invoked */
|
|
384
|
-
handleDelete?: (message:
|
|
389
|
+
handleDelete?: (message: LocalMessage) => Promise<void>;
|
|
385
390
|
/** Handler to access when an edit message action is invoked */
|
|
386
|
-
handleEdit?: (message:
|
|
391
|
+
handleEdit?: (message: LocalMessage) => void;
|
|
387
392
|
/** Handler to access when a flag message action is invoked */
|
|
388
|
-
handleFlag?: (message:
|
|
393
|
+
handleFlag?: (message: LocalMessage) => Promise<void>;
|
|
389
394
|
/** Handler to access when a mark unread action is invoked */
|
|
390
|
-
handleMarkUnread?: (message:
|
|
395
|
+
handleMarkUnread?: (message: LocalMessage) => Promise<void>;
|
|
391
396
|
/** Handler to access when a mute user action is invoked */
|
|
392
|
-
handleMute?: (message:
|
|
397
|
+
handleMute?: (message: LocalMessage) => Promise<void>;
|
|
393
398
|
/** Handler to access when a pin/unpin user action is invoked*/
|
|
394
|
-
handlePinMessage?: ((message:
|
|
399
|
+
handlePinMessage?: ((message: LocalMessage) => MessageActionType) | null;
|
|
395
400
|
/** Handler to access when a quoted reply action is invoked */
|
|
396
|
-
handleQuotedReply?: (message:
|
|
401
|
+
handleQuotedReply?: (message: LocalMessage) => Promise<void>;
|
|
397
402
|
/** Handler to process a reaction */
|
|
398
|
-
handleReaction?: (message:
|
|
403
|
+
handleReaction?: (message: LocalMessage, reactionType: string) => Promise<void>;
|
|
399
404
|
/** Handler to access when a retry action is invoked */
|
|
400
|
-
handleRetry?: (message:
|
|
405
|
+
handleRetry?: (message: LocalMessage) => Promise<void>;
|
|
401
406
|
/** Handler to access when a thread reply action is invoked */
|
|
402
|
-
handleThreadReply?: (message:
|
|
407
|
+
handleThreadReply?: (message: LocalMessage) => Promise<void>;
|
|
403
408
|
/** A flag specifying whether the poll creation button is available or not. */
|
|
404
409
|
hasCreatePoll?: boolean;
|
|
405
410
|
/** Handler to deal with custom memoization logic of Attachment */
|
|
@@ -587,7 +592,7 @@ export type MessagesContextValue = Pick<MessageContextValue, 'isMessageAIGenerat
|
|
|
587
592
|
*
|
|
588
593
|
* Please check [cookbook](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#override-or-intercept-message-actions-edit-delete-reaction-reply-etc) for details.
|
|
589
594
|
* */
|
|
590
|
-
selectReaction?: (message:
|
|
595
|
+
selectReaction?: (message: LocalMessage) => (reactionType: string) => Promise<void>;
|
|
591
596
|
|
|
592
597
|
/**
|
|
593
598
|
* Boolean to enable/disable the message underlay background when there are unread messages in the Message List.
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext } from 'react';
|
|
2
2
|
|
|
3
|
-
import { Poll } from 'stream-chat';
|
|
4
|
-
|
|
5
|
-
import { MessageType } from '../../components';
|
|
3
|
+
import { LocalMessage, Poll } from 'stream-chat';
|
|
6
4
|
|
|
7
5
|
import { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';
|
|
8
6
|
|
|
9
7
|
import { isTestEnvironment } from '../utils/isTestEnvironment';
|
|
10
8
|
|
|
11
9
|
export type PollContextValue = {
|
|
12
|
-
message:
|
|
10
|
+
message: LocalMessage;
|
|
13
11
|
poll: Poll;
|
|
14
12
|
};
|
|
15
13
|
|
|
@@ -1,23 +1,21 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext } from 'react';
|
|
2
2
|
|
|
3
|
-
import { ChannelState, Thread } from 'stream-chat';
|
|
4
|
-
|
|
5
|
-
import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
|
|
3
|
+
import { ChannelState, LocalMessage, Thread } from 'stream-chat';
|
|
6
4
|
|
|
7
5
|
import { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';
|
|
8
6
|
|
|
9
7
|
import { isTestEnvironment } from '../utils/isTestEnvironment';
|
|
10
8
|
|
|
11
|
-
export type ThreadType = { thread:
|
|
9
|
+
export type ThreadType = { thread: LocalMessage; threadInstance: Thread };
|
|
12
10
|
|
|
13
11
|
export type ThreadContextValue = {
|
|
14
12
|
allowThreadMessagesInChannel: boolean;
|
|
15
13
|
closeThread: () => void;
|
|
16
14
|
loadMoreThread: () => Promise<void>;
|
|
17
|
-
openThread: (message:
|
|
15
|
+
openThread: (message: LocalMessage) => void;
|
|
18
16
|
reloadThread: () => void;
|
|
19
17
|
setThreadLoadingMore: React.Dispatch<React.SetStateAction<boolean>>;
|
|
20
|
-
thread:
|
|
18
|
+
thread: LocalMessage | null;
|
|
21
19
|
threadHasMore: boolean;
|
|
22
20
|
threadMessages: ChannelState['threads'][string];
|
|
23
21
|
loadMoreRecentThread?: (opts: { limit?: number }) => Promise<void>;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import React, { PropsWithChildren, useContext } from 'react';
|
|
2
2
|
|
|
3
|
-
import { Channel, Thread } from 'stream-chat';
|
|
4
|
-
|
|
5
|
-
import { MessageType } from '../../components';
|
|
3
|
+
import { Channel, LocalMessage, Thread } from 'stream-chat';
|
|
6
4
|
|
|
7
5
|
import { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';
|
|
8
6
|
|
|
@@ -10,9 +8,9 @@ export type ThreadListItemContextValue = {
|
|
|
10
8
|
channel: Channel;
|
|
11
9
|
dateString: string | number | undefined;
|
|
12
10
|
deletedAtDateString: string | number | undefined;
|
|
13
|
-
lastReply:
|
|
11
|
+
lastReply: LocalMessage | undefined;
|
|
14
12
|
ownUnreadMessageCount: number;
|
|
15
|
-
parentMessage:
|
|
13
|
+
parentMessage: LocalMessage | undefined;
|
|
16
14
|
thread: Thread;
|
|
17
15
|
};
|
|
18
16
|
|
package/src/hooks/index.ts
CHANGED
package/src/i18n/en.json
CHANGED
package/src/i18n/es.json
CHANGED
package/src/i18n/fr.json
CHANGED
package/src/i18n/he.json
CHANGED
package/src/i18n/hi.json
CHANGED
package/src/i18n/it.json
CHANGED
package/src/i18n/ja.json
CHANGED
package/src/i18n/ko.json
CHANGED
package/src/i18n/nl.json
CHANGED
package/src/i18n/pt-br.json
CHANGED
package/src/i18n/ru.json
CHANGED
package/src/i18n/tr.json
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import type { MessageResponse } from 'stream-chat';
|
|
2
|
-
|
|
3
|
-
import type { MessageType } from '../components/MessageList/hooks/useMessageList';
|
|
1
|
+
import type { LocalMessage, MessageResponse } from 'stream-chat';
|
|
4
2
|
|
|
5
3
|
export const removeReservedFields = (
|
|
6
|
-
message:
|
|
7
|
-
):
|
|
4
|
+
message: LocalMessage | MessageResponse,
|
|
5
|
+
): LocalMessage | MessageResponse => {
|
|
8
6
|
const retryMessage = { ...message };
|
|
9
7
|
const reserved = [
|
|
10
8
|
'cid',
|