diff --git a/src/index.d.ts b/src/index.d.ts index aeebf1738..8b824e630 100644 --- a/src/index.d.ts +++ b/src/index.d.ts @@ -4,7 +4,7 @@ * git: https://github.com/sendbird/SendBird-UIKIT-JavaScript */ import React from 'react'; -import Sendbird from 'sendbird'; +import Sendbird, { FileMessage, UserMessage } from 'sendbird'; export type OpenChannelType = Sendbird.OpenChannel; export type GroupChannelType = Sendbird.GroupChannel; @@ -166,6 +166,7 @@ export interface RenderGroupChannelMessageInputProps { channel: Sendbird.GroupChannel; user: Sendbird.User; disabled: boolean; + quoteMessage?: UserMessage | FileMessage; } export interface ClientMessageSearchQuery extends SendBird.MessageSearchQuery { @@ -376,8 +377,8 @@ interface ChannelProps { onSearchClick?(): void; highlightedMessage?: string | number; startingPoint?: number; - onBeforeSendUserMessage?(text: string): Sendbird.UserMessageParams; - onBeforeSendFileMessage?(file: File): Sendbird.FileMessageParams; + onBeforeSendUserMessage?(text: string, quoteMessage?: UserMessage | FileMessage): Sendbird.UserMessageParams; + onBeforeSendFileMessage?(file: File, quoteMessage?: UserMessage | FileMessage): Sendbird.FileMessageParams; onBeforeUpdateUserMessage?(text: string): Sendbird.UserMessageParams; onChatHeaderActionClick?(event: React.MouseEvent): void; renderCustomMessage?: RenderCustomMessage; diff --git a/src/smart-components/Conversation/components/MessageInputWrapper.tsx b/src/smart-components/Conversation/components/MessageInputWrapper.tsx index 653c0ab79..c414719f8 100644 --- a/src/smart-components/Conversation/components/MessageInputWrapper.tsx +++ b/src/smart-components/Conversation/components/MessageInputWrapper.tsx @@ -46,7 +46,7 @@ const MessageInputWrapper = ({ // custom message if (renderMessageInput) { - return renderMessageInput({ channel, user, disabled }); + return renderMessageInput({ channel, user, disabled, quoteMessage }); } // broadcast channel + not operator diff --git a/src/smart-components/Conversation/hooks/useSendFileMessageCallback.js b/src/smart-components/Conversation/hooks/useSendFileMessageCallback.js index 7ee98524a..7370a96a9 100644 --- a/src/smart-components/Conversation/hooks/useSendFileMessageCallback.js +++ b/src/smart-components/Conversation/hooks/useSendFileMessageCallback.js @@ -72,7 +72,7 @@ export default function useSendFileMessageCallback({ logger.info('Channel: Creating params using onBeforeSendFileMessage', onBeforeSendFileMessage); } const params = createCustomParams - ? onBeforeSendFileMessage(compressedFile) + ? onBeforeSendFileMessage(compressedFile, quoteMessage) : createParamsDefault(compressedFile); logger.info('Channel: Uploading file message start!', params); const pendingMessage = currentGroupChannel.sendFileMessage( diff --git a/src/smart-components/Conversation/hooks/useSendMessageCallback.js b/src/smart-components/Conversation/hooks/useSendMessageCallback.js index 88eb232f2..0918040d2 100644 --- a/src/smart-components/Conversation/hooks/useSendMessageCallback.js +++ b/src/smart-components/Conversation/hooks/useSendMessageCallback.js @@ -34,7 +34,7 @@ export default function useSendMessageCallback({ currentGroupChannel, onBeforeSe } const params = onBeforeSendUserMessage - ? onBeforeSendUserMessage(text) + ? onBeforeSendUserMessage(text, quoteMessage) : createParamsDefault(text); logger.info('Channel: Sending message has started', params);