@tencentcloud/chat-uikit-react 2.1.2 → 2.1.3
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/.eslintrc.js +0 -1
- package/CHANGELOG.md +5 -0
- package/dist/cjs/components/Avatar/Avatar.js +1 -1
- package/dist/cjs/components/Checkbox/index.d.ts +2 -1
- package/dist/cjs/components/ConversationCreate/ConversationCreatGroupDetail.js +1 -1
- package/dist/cjs/components/ConversationCreate/ConversationCreate.js +1 -1
- package/dist/cjs/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
- package/dist/cjs/components/ConversationPreview/ConversationPreview.js +1 -1
- package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.d.ts +4 -1
- package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.js +1 -1
- package/dist/cjs/components/ConversationPreview/utils.js +1 -1
- package/dist/cjs/components/ConversationSearch/ConversationSearchInput.d.ts +2 -1
- package/dist/cjs/components/ConversationSearch/ConversationSearchResult.js +1 -1
- package/dist/cjs/components/DivWithEdit/DivWithEdit.d.ts +3 -2
- package/dist/cjs/components/DivWithEdit/DivWithEdit.js +1 -1
- package/dist/cjs/components/DivWithEdit/WithText.js +1 -1
- package/dist/cjs/components/EmptyStateIndicator/EmptyStateIndicator.d.ts +2 -1
- package/dist/cjs/components/Icon/Icon.d.ts +2 -1
- package/dist/cjs/components/Icon/Icon.js +1 -1
- package/dist/cjs/components/Input/Input.js +1 -1
- package/dist/cjs/components/Model/index.d.ts +1 -1
- package/dist/cjs/components/Model/index.js +1 -1
- package/dist/cjs/components/Plugins/index.js +1 -1
- package/dist/cjs/components/Popup/index.d.ts +1 -1
- package/dist/cjs/components/Popup/index.js +1 -1
- package/dist/cjs/components/Switch/Switch.d.ts +2 -6
- package/dist/cjs/components/Switch/Switch.js +1 -1
- package/dist/cjs/components/TUIChat/TUIChat.js +1 -1
- package/dist/cjs/components/TUIChat/TUIChatState.js +1 -1
- package/dist/cjs/components/TUIChat/hooks/useHandleMessage.js +1 -1
- package/dist/cjs/components/TUIChat/hooks/useHandleMessageList.js +1 -1
- package/dist/cjs/components/TUIChat/unitls.js +1 -1
- package/dist/cjs/components/TUIChatHeader/TUIChatHeaderDefault.js +1 -1
- package/dist/cjs/components/TUIContact/TUIContactInfo/addFriendInfo.js +1 -1
- package/dist/cjs/components/TUIContact/TUIContactInfo/friendInfo.js +1 -1
- package/dist/cjs/components/TUIContact/TUIContactList/TUIContactList.js +1 -1
- package/dist/cjs/components/TUIContactSearch/TUIContactSearch.js +1 -1
- package/dist/cjs/components/TUIContactSearch/hooks/useContactSearch.js +1 -1
- package/dist/cjs/components/TUIConversationList/hooks/useConversationUpdate.js +1 -1
- package/dist/cjs/components/TUIKit/TUIKit.d.ts +2 -2
- package/dist/cjs/components/TUIKit/hooks/useCreateTUIKitContext.d.ts +7 -7
- package/dist/cjs/components/TUIKit/hooks/useTUIKit.d.ts +2 -2
- package/dist/cjs/components/TUIKit/hooks/useTUIKit.js +1 -1
- package/dist/cjs/components/TUIManage/TUIManage.d.ts +4 -1
- package/dist/cjs/components/TUIManage/TUIManage.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageAudio.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageAvatar.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageBubble.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageContext.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageCustom.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageFace.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageFile.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageImage.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageLocation.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageMerger.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageName.js +1 -1
- package/dist/cjs/components/TUIMessage/MessagePlugins.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageProgress.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageRevoke.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageText.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageVideo.js +1 -1
- package/dist/cjs/components/TUIMessage/TUIMessage.js +1 -1
- package/dist/cjs/components/TUIMessage/TUIMessageDefault.js +1 -1
- package/dist/cjs/components/TUIMessage/hooks/useMessageHandler.js +1 -1
- package/dist/cjs/components/TUIMessage/hooks/useMessageReply.js +1 -1
- package/dist/cjs/components/TUIMessage/utils/index.js +1 -1
- package/dist/cjs/components/TUIMessageInput/EmojiPicker.js +1 -1
- package/dist/cjs/components/TUIMessageInput/InputPluginsDefalut.js +1 -1
- package/dist/cjs/components/TUIMessageInput/InputQuoteDefalut.js +1 -1
- package/dist/cjs/components/TUIMessageInput/TUIForward.js +1 -1
- package/dist/cjs/components/TUIMessageInput/TUIMessageInputDefault.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useEmojiPicker.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useHandleForwardMessage.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useHandleQuoteMessage.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useMessageInputState.d.ts +2 -2
- package/dist/cjs/components/TUIMessageInput/hooks/useMessageInputText.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useUploadElement.js +1 -1
- package/dist/cjs/components/TUIMessageList/TUIMessageList.js +1 -1
- package/dist/cjs/components/TUIMessageList/hooks/useMessageListElement.js +1 -1
- package/dist/cjs/components/TUIProfile/TUIProfile.js +1 -1
- package/dist/cjs/components/TUIProfile/TUIProfileDefault.js +1 -1
- package/dist/cjs/components/TUIProfile/hooks/useMyProfile.js +1 -1
- package/dist/cjs/components/Toast/index.js +1 -1
- package/dist/cjs/context/ComponentContext.d.ts +3 -2
- package/dist/cjs/context/TUIChatActionContext.d.ts +1 -1
- package/dist/cjs/context/TUIChatStateContext.d.ts +4 -4
- package/dist/cjs/context/TUIContactContext.js +1 -1
- package/dist/cjs/context/TUIConversationContext.js +1 -1
- package/dist/cjs/context/TUIKitContext.d.ts +1 -1
- package/dist/cjs/context/TUIMessageContext.js +1 -1
- package/dist/cjs/context/TUIMessageInputContext.js +1 -1
- package/dist/cjs/hooks/useProfile.d.ts +1 -1
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.d.css +3 -3
- package/dist/cjs/index.d.ts +1 -1
- package/dist/esm/components/Avatar/Avatar.js +1 -1
- package/dist/esm/components/Checkbox/index.d.ts +2 -1
- package/dist/esm/components/ConversationCreate/ConversationCreatGroupDetail.js +1 -1
- package/dist/esm/components/ConversationCreate/ConversationCreate.js +1 -1
- package/dist/esm/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
- package/dist/esm/components/ConversationPreview/ConversationPreview.js +1 -1
- package/dist/esm/components/ConversationPreview/ConversationPreviewContent.d.ts +4 -1
- package/dist/esm/components/ConversationPreview/ConversationPreviewContent.js +1 -1
- package/dist/esm/components/ConversationPreview/utils.js +1 -1
- package/dist/esm/components/ConversationSearch/ConversationSearchInput.d.ts +2 -1
- package/dist/esm/components/ConversationSearch/ConversationSearchResult.js +1 -1
- package/dist/esm/components/DivWithEdit/DivWithEdit.d.ts +3 -2
- package/dist/esm/components/DivWithEdit/DivWithEdit.js +1 -1
- package/dist/esm/components/DivWithEdit/WithText.js +1 -1
- package/dist/esm/components/EmptyStateIndicator/EmptyStateIndicator.d.ts +2 -1
- package/dist/esm/components/Icon/Icon.d.ts +2 -1
- package/dist/esm/components/Icon/Icon.js +1 -1
- package/dist/esm/components/Input/Input.js +1 -1
- package/dist/esm/components/Model/index.d.ts +1 -1
- package/dist/esm/components/Model/index.js +1 -1
- package/dist/esm/components/Plugins/index.js +1 -1
- package/dist/esm/components/Popup/index.d.ts +1 -1
- package/dist/esm/components/Popup/index.js +1 -1
- package/dist/esm/components/Switch/Switch.d.ts +2 -6
- package/dist/esm/components/Switch/Switch.js +1 -1
- package/dist/esm/components/TUIChat/TUIChat.js +1 -1
- package/dist/esm/components/TUIChat/TUIChatState.js +1 -1
- package/dist/esm/components/TUIChat/hooks/useHandleMessage.js +1 -1
- package/dist/esm/components/TUIChat/hooks/useHandleMessageList.js +1 -1
- package/dist/esm/components/TUIChat/unitls.js +1 -1
- package/dist/esm/components/TUIChatHeader/TUIChatHeaderDefault.js +1 -1
- package/dist/esm/components/TUIContact/TUIContactInfo/addFriendInfo.js +1 -1
- package/dist/esm/components/TUIContact/TUIContactInfo/friendInfo.js +1 -1
- package/dist/esm/components/TUIContact/TUIContactList/TUIContactList.js +1 -1
- package/dist/esm/components/TUIContactSearch/TUIContactSearch.js +1 -1
- package/dist/esm/components/TUIContactSearch/hooks/useContactSearch.js +1 -1
- package/dist/esm/components/TUIConversationList/hooks/useConversationUpdate.js +1 -1
- package/dist/esm/components/TUIKit/TUIKit.d.ts +2 -2
- package/dist/esm/components/TUIKit/hooks/useCreateTUIKitContext.d.ts +7 -7
- package/dist/esm/components/TUIKit/hooks/useTUIKit.d.ts +2 -2
- package/dist/esm/components/TUIKit/hooks/useTUIKit.js +1 -1
- package/dist/esm/components/TUIManage/TUIManage.d.ts +4 -1
- package/dist/esm/components/TUIManage/TUIManage.js +1 -1
- package/dist/esm/components/TUIMessage/MessageAudio.js +1 -1
- package/dist/esm/components/TUIMessage/MessageAvatar.js +1 -1
- package/dist/esm/components/TUIMessage/MessageBubble.js +1 -1
- package/dist/esm/components/TUIMessage/MessageContext.js +1 -1
- package/dist/esm/components/TUIMessage/MessageCustom.js +1 -1
- package/dist/esm/components/TUIMessage/MessageFace.js +1 -1
- package/dist/esm/components/TUIMessage/MessageFile.js +1 -1
- package/dist/esm/components/TUIMessage/MessageImage.js +1 -1
- package/dist/esm/components/TUIMessage/MessageLocation.js +1 -1
- package/dist/esm/components/TUIMessage/MessageMerger.js +1 -1
- package/dist/esm/components/TUIMessage/MessageName.js +1 -1
- package/dist/esm/components/TUIMessage/MessagePlugins.js +1 -1
- package/dist/esm/components/TUIMessage/MessageProgress.js +1 -1
- package/dist/esm/components/TUIMessage/MessageRevoke.js +1 -1
- package/dist/esm/components/TUIMessage/MessageText.js +1 -1
- package/dist/esm/components/TUIMessage/MessageVideo.js +1 -1
- package/dist/esm/components/TUIMessage/TUIMessage.js +1 -1
- package/dist/esm/components/TUIMessage/TUIMessageDefault.js +1 -1
- package/dist/esm/components/TUIMessage/hooks/useMessageHandler.js +1 -1
- package/dist/esm/components/TUIMessage/hooks/useMessageReply.js +1 -1
- package/dist/esm/components/TUIMessage/utils/index.js +1 -1
- package/dist/esm/components/TUIMessageInput/EmojiPicker.js +1 -1
- package/dist/esm/components/TUIMessageInput/InputPluginsDefalut.js +1 -1
- package/dist/esm/components/TUIMessageInput/InputQuoteDefalut.js +1 -1
- package/dist/esm/components/TUIMessageInput/TUIForward.js +1 -1
- package/dist/esm/components/TUIMessageInput/TUIMessageInputDefault.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useEmojiPicker.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useHandleForwardMessage.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useHandleQuoteMessage.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useMessageInputState.d.ts +2 -2
- package/dist/esm/components/TUIMessageInput/hooks/useMessageInputText.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useUploadElement.js +1 -1
- package/dist/esm/components/TUIMessageList/TUIMessageList.js +1 -1
- package/dist/esm/components/TUIMessageList/hooks/useMessageListElement.js +1 -1
- package/dist/esm/components/TUIProfile/TUIProfile.js +1 -1
- package/dist/esm/components/TUIProfile/TUIProfileDefault.js +1 -1
- package/dist/esm/components/TUIProfile/hooks/useMyProfile.js +1 -1
- package/dist/esm/components/Toast/index.js +1 -1
- package/dist/esm/context/ComponentContext.d.ts +3 -2
- package/dist/esm/context/TUIChatActionContext.d.ts +1 -1
- package/dist/esm/context/TUIChatStateContext.d.ts +4 -4
- package/dist/esm/context/TUIContactContext.js +1 -1
- package/dist/esm/context/TUIConversationContext.js +1 -1
- package/dist/esm/context/TUIKitContext.d.ts +1 -1
- package/dist/esm/context/TUIMessageContext.js +1 -1
- package/dist/esm/context/TUIMessageInputContext.js +1 -1
- package/dist/esm/hooks/useProfile.d.ts +1 -1
- package/dist/esm/index.css +1 -1
- package/dist/esm/index.d.css +3 -3
- package/dist/esm/index.d.ts +1 -1
- package/index.ts +1 -0
- package/package.json +7 -6
- package/rollup.config.js +2 -1
- package/src/components/Avatar/Avatar.tsx +7 -3
- package/src/components/Avatar/styles/index.scss +1 -1
- package/src/components/Checkbox/index.tsx +1 -1
- package/src/components/ConversationCreate/ConversationCreatGroupDetail.tsx +14 -7
- package/src/components/ConversationCreate/ConversationCreate.tsx +5 -1
- package/src/components/ConversationCreate/ConversationCreateSelectView.tsx +2 -2
- package/src/components/ConversationCreate/ConversationCreateUserSelectList.tsx +11 -10
- package/src/components/ConversationCreate/hooks/useConversationCreate.tsx +14 -12
- package/src/components/ConversationPreview/ConversationPreview.tsx +3 -3
- package/src/components/ConversationPreview/ConversationPreviewContent.tsx +9 -5
- package/src/components/ConversationPreview/utils.tsx +6 -3
- package/src/components/DivWithEdit/DivWithEdit.tsx +6 -5
- package/src/components/DivWithEdit/WithText.tsx +3 -1
- package/src/components/DivWithEdit/styles/index.scss +1 -1
- package/src/components/Icon/Icon.tsx +2 -2
- package/src/components/Input/Input.tsx +15 -12
- package/src/components/Model/index.tsx +2 -2
- package/src/components/Plugins/index.tsx +15 -12
- package/src/components/Popup/index.tsx +13 -9
- package/src/components/Switch/Switch.tsx +5 -7
- package/src/components/TUIChat/TUIChat.tsx +20 -5
- package/src/components/TUIChat/TUIChatState.tsx +3 -3
- package/src/components/TUIChat/hooks/useHandleMessage.tsx +5 -5
- package/src/components/TUIChat/hooks/useHandleMessageList.tsx +2 -2
- package/src/components/TUIChat/unitls.ts +2 -2
- package/src/components/TUIChatHeader/TUIChatHeaderDefault.tsx +1 -1
- package/src/components/TUIContact/TUIContactInfo/addFriendInfo.tsx +2 -2
- package/src/components/TUIContact/TUIContactInfo/friendInfo.tsx +1 -2
- package/src/components/TUIContact/TUIContactInfo/hooks/useContactInfo.tsx +0 -10
- package/src/components/TUIContact/TUIContactList/TUIContactList.tsx +5 -3
- package/src/components/TUIContact/hooks/useTUIContact.tsx +3 -4
- package/src/components/TUIContactSearch/TUIContactSearch.tsx +6 -7
- package/src/components/TUIContactSearch/hooks/useContactSearch.tsx +1 -3
- package/src/components/TUIConversationList/TUIConversationList.tsx +1 -1
- package/src/components/TUIConversationList/hooks/useConversationList.tsx +1 -1
- package/src/components/TUIConversationList/hooks/useConversationUpdate.tsx +2 -2
- package/src/components/TUIKit/TUIKit.tsx +1 -1
- package/src/components/TUIKit/hooks/useTUIKit.tsx +4 -4
- package/src/components/TUIManage/TUIManage.tsx +20 -13
- package/src/components/TUIMessage/MessageAudio.tsx +8 -6
- package/src/components/TUIMessage/MessageAvatar.tsx +2 -2
- package/src/components/TUIMessage/MessageBubble.tsx +7 -5
- package/src/components/TUIMessage/MessageContext.tsx +3 -3
- package/src/components/TUIMessage/MessageCustom.tsx +5 -3
- package/src/components/TUIMessage/MessageFace.tsx +2 -2
- package/src/components/TUIMessage/MessageFile.tsx +5 -5
- package/src/components/TUIMessage/MessageImage.tsx +4 -2
- package/src/components/TUIMessage/MessageLocation.tsx +3 -3
- package/src/components/TUIMessage/MessageMerger.tsx +3 -3
- package/src/components/TUIMessage/MessageName.tsx +1 -1
- package/src/components/TUIMessage/MessagePlugins.tsx +12 -10
- package/src/components/TUIMessage/MessageProgress.tsx +5 -4
- package/src/components/TUIMessage/MessageRevoke.tsx +1 -1
- package/src/components/TUIMessage/MessageText.tsx +4 -4
- package/src/components/TUIMessage/MessageVideo.tsx +3 -3
- package/src/components/TUIMessage/TUIMessage.tsx +1 -1
- package/src/components/TUIMessage/TUIMessageDefault.tsx +3 -1
- package/src/components/TUIMessage/hooks/useMessageHandler.ts +13 -13
- package/src/components/TUIMessage/hooks/useMessageReply.ts +6 -4
- package/src/components/TUIMessage/utils/decodeText.ts +2 -3
- package/src/components/TUIMessage/utils/index.ts +1 -2
- package/src/components/TUIMessageInput/EmojiPicker.tsx +4 -4
- package/src/components/TUIMessageInput/InputPluginsDefalut.tsx +8 -8
- package/src/components/TUIMessageInput/InputQuoteDefalut.tsx +4 -2
- package/src/components/TUIMessageInput/TUIForward.tsx +22 -15
- package/src/components/TUIMessageInput/TUIMessageInputDefault.tsx +15 -9
- package/src/components/TUIMessageInput/hooks/useEmojiPicker.tsx +2 -2
- package/src/components/TUIMessageInput/hooks/useHandleForwardMessage.tsx +4 -4
- package/src/components/TUIMessageInput/hooks/useHandleQuoteMessage.tsx +5 -5
- package/src/components/TUIMessageInput/hooks/useMessageInputState.tsx +3 -3
- package/src/components/TUIMessageInput/hooks/useMessageInputText.tsx +12 -9
- package/src/components/TUIMessageInput/hooks/useUploadElement.tsx +2 -2
- package/src/components/TUIMessageInput/hooks/useUploadPicker.tsx +1 -1
- package/src/components/TUIMessageList/TUIMessageList.tsx +5 -6
- package/src/components/TUIMessageList/hooks/useMessageListElement.tsx +5 -2
- package/src/components/TUIProfile/TUIProfile.tsx +3 -1
- package/src/components/TUIProfile/TUIProfileDefault.tsx +15 -15
- package/src/components/TUIProfile/hooks/useMyProfile.tsx +6 -6
- package/src/components/Toast/index.tsx +3 -3
- package/src/components/Toast/styles/layout.scss +1 -1
- package/src/components/untils.ts +1 -1
- package/src/context/TUIChatStateContext.tsx +4 -4
- package/src/context/TUIContactContext.tsx +1 -1
- package/src/context/TUIConversationContext.tsx +2 -2
- package/src/context/TUIMessageContext.tsx +1 -1
- package/src/context/TUIMessageInputContext.tsx +1 -1
- package/src/hooks/useConversation.tsx +1 -1
- package/src/hooks/useProfile.tsx +2 -2
- package/tsconfig.json +1 -0
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
} from '@tencentcloud/chat-uikit-engine';
|
|
6
6
|
import { MESSAGE_OPERATE } from '../../../constants';
|
|
7
7
|
import {
|
|
8
|
-
|
|
8
|
+
useTUIChatStateContext, useTUIKitContext,
|
|
9
9
|
} from '../../../context';
|
|
10
10
|
|
|
11
11
|
export function useHandleForwardMessage(msg?:Message) {
|
|
@@ -16,11 +16,11 @@ export function useHandleForwardMessage(msg?:Message) {
|
|
|
16
16
|
const [conversationList, setConversationList] = useState([]);
|
|
17
17
|
const { chat } = useTUIKitContext('TUIChat');
|
|
18
18
|
|
|
19
|
-
const message = msg || operateData[MESSAGE_OPERATE.FORWARD];
|
|
19
|
+
const message = msg || (operateData && operateData[MESSAGE_OPERATE.FORWARD]);
|
|
20
20
|
|
|
21
21
|
const sendForwardMessage = (list:Array<Conversation>) => {
|
|
22
22
|
list.map((item:Conversation) => {
|
|
23
|
-
TUIChatService.sendForwardMessage([item], [message]);
|
|
23
|
+
message && TUIChatService.sendForwardMessage([item], [message]);
|
|
24
24
|
return item;
|
|
25
25
|
});
|
|
26
26
|
};
|
|
@@ -29,7 +29,7 @@ export function useHandleForwardMessage(msg?:Message) {
|
|
|
29
29
|
(async () => {
|
|
30
30
|
const res = await chat.getConversationList();
|
|
31
31
|
setConversationList(res?.data?.conversationList.filter(
|
|
32
|
-
(item) => item.type !== TencentCloudChat.TYPES.CONV_SYSTEM,
|
|
32
|
+
(item: any) => item.type !== TencentCloudChat.TYPES.CONV_SYSTEM,
|
|
33
33
|
));
|
|
34
34
|
})();
|
|
35
35
|
}, [chat]);
|
|
@@ -3,7 +3,7 @@ import TencentCloudChat, { Message } from '@tencentcloud/chat';
|
|
|
3
3
|
import { MESSAGE_OPERATE } from '../../../constants';
|
|
4
4
|
import { useTUIChatStateContext } from '../../../context';
|
|
5
5
|
|
|
6
|
-
const quoteConfigType = {
|
|
6
|
+
const quoteConfigType: any = {
|
|
7
7
|
[TencentCloudChat.TYPES.MSG_TEXT]: 1,
|
|
8
8
|
[TencentCloudChat.TYPES.MSG_CUSTOM]: 2,
|
|
9
9
|
[TencentCloudChat.TYPES.MSG_IMAGE]: 3,
|
|
@@ -13,7 +13,7 @@ const quoteConfigType = {
|
|
|
13
13
|
[TencentCloudChat.TYPES.MSG_FACE]: 8,
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
const quoteConfigForShow = {
|
|
16
|
+
const quoteConfigForShow: any = {
|
|
17
17
|
[TencentCloudChat.TYPES.MSG_CUSTOM]: '[custom]',
|
|
18
18
|
[TencentCloudChat.TYPES.MSG_IMAGE]: '[image]',
|
|
19
19
|
[TencentCloudChat.TYPES.MSG_AUDIO]: '[audio]',
|
|
@@ -27,7 +27,7 @@ export function useHandleQuoteMessage(msg?:Message) {
|
|
|
27
27
|
operateData,
|
|
28
28
|
} = useTUIChatStateContext('TUIMessageInputDefault');
|
|
29
29
|
|
|
30
|
-
const [cloudCustomData, setCloudCustomData] = useState({ messageReply: null });
|
|
30
|
+
const [cloudCustomData, setCloudCustomData] = useState<any>({ messageReply: null });
|
|
31
31
|
|
|
32
32
|
const handleQuoteMessage = (message: Message) => {
|
|
33
33
|
const messageType = quoteConfigType[message?.type];
|
|
@@ -46,7 +46,7 @@ export function useHandleQuoteMessage(msg?:Message) {
|
|
|
46
46
|
|
|
47
47
|
useEffect(
|
|
48
48
|
() => {
|
|
49
|
-
const message = msg || operateData[MESSAGE_OPERATE.QUOTE];
|
|
49
|
+
const message = msg || (operateData &&operateData[MESSAGE_OPERATE.QUOTE]);
|
|
50
50
|
setCloudCustomData(
|
|
51
51
|
{
|
|
52
52
|
messageReply: message ? handleQuoteMessage(message) : null,
|
|
@@ -59,6 +59,6 @@ export function useHandleQuoteMessage(msg?:Message) {
|
|
|
59
59
|
return {
|
|
60
60
|
cloudCustomData,
|
|
61
61
|
handleQuoteMessage,
|
|
62
|
-
message: msg || operateData[MESSAGE_OPERATE.QUOTE],
|
|
62
|
+
message: msg || (operateData &&operateData[MESSAGE_OPERATE.QUOTE]),
|
|
63
63
|
};
|
|
64
64
|
}
|
|
@@ -16,8 +16,8 @@ export interface IinitState {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export interface ICursorPos {
|
|
19
|
-
start?: number,
|
|
20
|
-
end?: number,
|
|
19
|
+
start?: number | null,
|
|
20
|
+
end?: number | null,
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export type MessageInputReducerAction =
|
|
@@ -38,7 +38,7 @@ const initState:IinitState = {
|
|
|
38
38
|
},
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
-
const reducer = (state:IinitState, action) => {
|
|
41
|
+
const reducer = (state:IinitState, action: any) => {
|
|
42
42
|
switch (action.type) {
|
|
43
43
|
case CONSTANT_DISPATCH_TYPE.SET_TEXT:
|
|
44
44
|
return { ...state, text: action?.getNewText(state.text) };
|
|
@@ -16,6 +16,7 @@ import { formatEmojiString } from '../../TUIMessage/utils/emojiMap';
|
|
|
16
16
|
import { useHandleQuoteMessage } from './useHandleQuoteMessage';
|
|
17
17
|
import type { IbaseStateProps, ICursorPos } from './useMessageInputState';
|
|
18
18
|
import { filesData } from './useUploadPicker';
|
|
19
|
+
import { de } from 'date-fns/locale';
|
|
19
20
|
|
|
20
21
|
interface useMessageInputTextProps extends IbaseStateProps {
|
|
21
22
|
focus?: boolean,
|
|
@@ -70,21 +71,23 @@ export const useMessageInputText = (props:useMessageInputTextProps) => {
|
|
|
70
71
|
}
|
|
71
72
|
TUIChatService.sendTextMessage(options).then((res: any) => {
|
|
72
73
|
const { message } = res.data;
|
|
73
|
-
setFirstSendMessage(message);
|
|
74
|
+
setFirstSendMessage && setFirstSendMessage(message);
|
|
74
75
|
});
|
|
75
76
|
enableSampleTaskStatus('sendMessage');
|
|
76
77
|
dispatch({
|
|
77
78
|
getNewText: (text:string) => '',
|
|
78
79
|
type: CONSTANT_DISPATCH_TYPE.SET_TEXT,
|
|
79
80
|
});
|
|
80
|
-
operateMessage({
|
|
81
|
+
operateMessage && operateMessage({
|
|
82
|
+
// eslint-disable-next-line
|
|
83
|
+
// @ts-ignore
|
|
81
84
|
[MESSAGE_OPERATE.QUOTE]: null,
|
|
82
85
|
});
|
|
83
86
|
};
|
|
84
87
|
|
|
85
88
|
const handleKeyDown = useCallback(
|
|
86
89
|
(event?:React.KeyboardEvent<EventTarget>) => {
|
|
87
|
-
if (!event?.ctrlKey && enterCodeList.indexOf(event?.code) > -1 && event.keyCode === 13) {
|
|
90
|
+
if (!event?.ctrlKey && event?.code && enterCodeList.indexOf(event?.code) > -1 && event.keyCode === 13) {
|
|
88
91
|
event?.preventDefault();
|
|
89
92
|
handleSubmit(event);
|
|
90
93
|
}
|
|
@@ -105,11 +108,11 @@ export const useMessageInputText = (props:useMessageInputTextProps) => {
|
|
|
105
108
|
return;
|
|
106
109
|
}
|
|
107
110
|
const { types, items } = e.clipboardData;
|
|
108
|
-
types.find((type, index) => {
|
|
111
|
+
types.find((type: string, index: number) => {
|
|
109
112
|
const item = items[index];
|
|
110
113
|
switch (type) {
|
|
111
114
|
case 'text/plain':
|
|
112
|
-
item.getAsString((str) => {
|
|
115
|
+
item.getAsString((str: string) => {
|
|
113
116
|
dispatch({
|
|
114
117
|
type: CONSTANT_DISPATCH_TYPE.SET_TEXT,
|
|
115
118
|
getNewText: (text:string) => `${text}${str}`,
|
|
@@ -119,7 +122,7 @@ export const useMessageInputText = (props:useMessageInputTextProps) => {
|
|
|
119
122
|
case 'Files': {
|
|
120
123
|
const file = item.getAsFile();
|
|
121
124
|
if (item && item.kind === 'file' && item.type.match(/^image\//i)) {
|
|
122
|
-
sendUploadMessage({ file }, MESSAGE_TYPE_NAME.IMAGE);
|
|
125
|
+
sendUploadMessage && sendUploadMessage({ file }, MESSAGE_TYPE_NAME.IMAGE);
|
|
123
126
|
}
|
|
124
127
|
return true;
|
|
125
128
|
}
|
|
@@ -135,13 +138,13 @@ export const useMessageInputText = (props:useMessageInputTextProps) => {
|
|
|
135
138
|
(textToInsert: string) => {
|
|
136
139
|
dispatch({
|
|
137
140
|
type: CONSTANT_DISPATCH_TYPE.SET_TEXT,
|
|
138
|
-
getNewText: (text:string) => `${text.slice(0, state
|
|
141
|
+
getNewText: (text:string) => `${text.slice(0, state?.cursorPos?.start || 0)}${textToInsert}${text.slice(state?.cursorPos?.start || 0)}`,
|
|
139
142
|
});
|
|
140
143
|
dispatch({
|
|
141
144
|
type: CONSTANT_DISPATCH_TYPE.SET_CURSOR_POS,
|
|
142
145
|
value: {
|
|
143
|
-
start: state.cursorPos.start + textToInsert.length,
|
|
144
|
-
end: state.cursorPos.end + textToInsert.length,
|
|
146
|
+
start: state?.cursorPos?.start && state.cursorPos.start + textToInsert.length,
|
|
147
|
+
end: state?.cursorPos?.end && state.cursorPos.end + textToInsert.length,
|
|
145
148
|
},
|
|
146
149
|
});
|
|
147
150
|
textareaRef?.current?.focus();
|
|
@@ -16,13 +16,13 @@ export function useUploadElement<
|
|
|
16
16
|
onChange,
|
|
17
17
|
} = props;
|
|
18
18
|
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
19
|
-
if (e.target.files.length > 0) {
|
|
19
|
+
if (e.target.files && e.target.files.length > 0) {
|
|
20
20
|
const { files } = e.target;
|
|
21
21
|
const options = {
|
|
22
22
|
type: files[0].type,
|
|
23
23
|
};
|
|
24
24
|
const file = new File(files as any, files[0].name, options);
|
|
25
|
-
onChange(file);
|
|
25
|
+
onChange && onChange(file);
|
|
26
26
|
}
|
|
27
27
|
e.target.value = '';
|
|
28
28
|
};
|
|
@@ -19,7 +19,7 @@ export function useUploadPicker<T extends IbaseStateProps>(props:PropsWithChildr
|
|
|
19
19
|
updateUploadPendingMessageList,
|
|
20
20
|
} = useTUIChatActionContext('useUploadPicker');
|
|
21
21
|
|
|
22
|
-
const creatUploadMessage = {
|
|
22
|
+
const creatUploadMessage: any = {
|
|
23
23
|
[MESSAGE_TYPE_NAME.IMAGE]: TUIChatService.sendImageMessage,
|
|
24
24
|
[MESSAGE_TYPE_NAME.VIDEO]: TUIChatService.sendVideoMessage,
|
|
25
25
|
[MESSAGE_TYPE_NAME.FILE]: TUIChatService.sendFileMessage,
|
|
@@ -53,20 +53,19 @@ function TUIMessageListWithContext <T extends MessageListProps>(
|
|
|
53
53
|
|
|
54
54
|
const loadMore = propsLoadMore || TUIMessageListConfig?.loadMore || contextLoadMore;
|
|
55
55
|
|
|
56
|
-
const elements = useMessageListElement({
|
|
56
|
+
const elements = contextMessageList && useMessageListElement({
|
|
57
57
|
enrichedMessageList: contextMessageList,
|
|
58
58
|
TUIMessage,
|
|
59
59
|
intervalsTimer,
|
|
60
60
|
});
|
|
61
61
|
useEffect(() => {
|
|
62
|
-
// messageList 滑动到底部
|
|
63
62
|
(async () => {
|
|
64
63
|
const parentElement = ulElement?.parentElement?.parentElement;
|
|
65
64
|
if (
|
|
66
65
|
!isCompleted
|
|
67
|
-
&& parentElement?.clientHeight >= ulElement?.clientHeight
|
|
66
|
+
&& parentElement && parentElement?.clientHeight >= ulElement?.clientHeight
|
|
68
67
|
) {
|
|
69
|
-
await loadMore();
|
|
68
|
+
loadMore && await loadMore();
|
|
70
69
|
}
|
|
71
70
|
if (ulElement?.children) {
|
|
72
71
|
const HTMLCollection = ulElement?.children || [];
|
|
@@ -92,7 +91,7 @@ function TUIMessageListWithContext <T extends MessageListProps>(
|
|
|
92
91
|
const timer = setTimeout(() => {
|
|
93
92
|
children[children.length - 1].classList.remove('high-lighted');
|
|
94
93
|
clearTimeout(timer);
|
|
95
|
-
setHighlightedMessageId('');
|
|
94
|
+
setHighlightedMessageId && setHighlightedMessageId('');
|
|
96
95
|
}, 1000);
|
|
97
96
|
}
|
|
98
97
|
}, [highlightedMessageId]);
|
|
@@ -109,7 +108,7 @@ function TUIMessageListWithContext <T extends MessageListProps>(
|
|
|
109
108
|
>
|
|
110
109
|
<ul ref={setUlElement}>
|
|
111
110
|
{
|
|
112
|
-
elements?.length > 0 ? elements : <EmptyStateIndicator listType="message" />
|
|
111
|
+
elements?.length && elements.length > 0 ? elements : <EmptyStateIndicator listType="message" />
|
|
113
112
|
}
|
|
114
113
|
</ul>
|
|
115
114
|
</InfiniteScroll>
|
|
@@ -26,13 +26,16 @@ function useMessageListElement <T extends MessageListElementProps>(
|
|
|
26
26
|
const key = `${item.ID}-${index}`;
|
|
27
27
|
const preMessageTImer = index > 0 ? enrichedMessageList[index - 1]?.time : -1;
|
|
28
28
|
const currrentTimer = item?.time || 0;
|
|
29
|
-
const isShowIntervalsTimer = preMessageTImer !== -1
|
|
29
|
+
const isShowIntervalsTimer = intervalsTimer && preMessageTImer !== -1
|
|
30
30
|
? (currrentTimer - preMessageTImer) >= intervalsTimer : false;
|
|
31
31
|
return (
|
|
32
32
|
<li className="message-list-item" key={key}>
|
|
33
33
|
{
|
|
34
|
-
isShowIntervalsTimer && <div className="message-list-time" key={`${currrentTimer + index}`}>
|
|
34
|
+
isShowIntervalsTimer && <div className="message-list-time" key={`${currrentTimer + index}`}>
|
|
35
|
+
{currrentTimer ? getTimeStamp(currrentTimer * 1000, language) : 0}</div>
|
|
35
36
|
}
|
|
37
|
+
{/* // eslint-disable-next-line
|
|
38
|
+
// @ts-ignore */}
|
|
36
39
|
<TUIMessage message={item} />
|
|
37
40
|
</li>
|
|
38
41
|
);
|
|
@@ -27,10 +27,12 @@ function UnMemoizedTUIProfile<T extends TUIProfileProps>(
|
|
|
27
27
|
|
|
28
28
|
return (
|
|
29
29
|
<>
|
|
30
|
+
{/* //eslint-disable-next-line
|
|
31
|
+
@ts-ignore */}
|
|
30
32
|
<Profile
|
|
31
33
|
profile={myProfile}
|
|
32
34
|
handleAvatar={() => {
|
|
33
|
-
setTUIProfileShow(true);
|
|
35
|
+
setTUIProfileShow && setTUIProfileShow(true);
|
|
34
36
|
}}
|
|
35
37
|
/>
|
|
36
38
|
{TUIProfileShow && (
|
|
@@ -11,12 +11,12 @@ import { Icon, IconTypes } from '../Icon';
|
|
|
11
11
|
import { handleDisplayAvatar } from '../untils';
|
|
12
12
|
import { ProfileParams } from './hooks';
|
|
13
13
|
|
|
14
|
-
const gender = {
|
|
14
|
+
const gender: any = {
|
|
15
15
|
[TencentCloudChat.TYPES.GENDER_UNKNOWN]: 'unknow',
|
|
16
16
|
[TencentCloudChat.TYPES.GENDER_MALE]: 'male',
|
|
17
17
|
[TencentCloudChat.TYPES.GENDER_FEMALE]: 'female',
|
|
18
18
|
};
|
|
19
|
-
const allowType = {
|
|
19
|
+
const allowType: any = {
|
|
20
20
|
[TencentCloudChat.TYPES.ALLOW_TYPE_ALLOW_ANY]: 'allowAny',
|
|
21
21
|
[TencentCloudChat.TYPES.ALLOW_TYPE_NEED_CONFIRM]: 'needConfirm',
|
|
22
22
|
[TencentCloudChat.TYPES.ALLOW_TYPE_DENY_ANY]: 'denyAny',
|
|
@@ -108,7 +108,7 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
108
108
|
return `${year}${month}${day}`;
|
|
109
109
|
};
|
|
110
110
|
|
|
111
|
-
let editListMap = [
|
|
111
|
+
let editListMap: any = [
|
|
112
112
|
{
|
|
113
113
|
name: 'Signature',
|
|
114
114
|
value: userInfo?.selfSignature,
|
|
@@ -117,7 +117,7 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
name: 'Gender',
|
|
120
|
-
value: t(gender[userInfo?.gender]?.replace(
|
|
120
|
+
value: t( userInfo?.gender && gender[userInfo?.gender]?.replace(
|
|
121
121
|
gender[userInfo?.gender][0],
|
|
122
122
|
gender[userInfo?.gender][0]?.toLocaleUpperCase(),
|
|
123
123
|
) ? `TUIProfile.${gender[userInfo?.gender]?.replace(
|
|
@@ -148,9 +148,9 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
150
|
name: 'AllowType',
|
|
151
|
-
value: t(`TUIProfile.${allowType[userInfo?.allowType]?.replace(
|
|
152
|
-
allowType[userInfo?.allowType][0],
|
|
153
|
-
allowType[userInfo?.allowType][0]?.toLocaleUpperCase(),
|
|
151
|
+
value: t(`TUIProfile.${allowType[userInfo?.allowType || '']?.replace(
|
|
152
|
+
userInfo && allowType[userInfo?.allowType][0],
|
|
153
|
+
userInfo && allowType[userInfo?.allowType][0]?.toLocaleUpperCase(),
|
|
154
154
|
)}`),
|
|
155
155
|
type: 'select',
|
|
156
156
|
children: (
|
|
@@ -191,14 +191,14 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
191
191
|
},
|
|
192
192
|
];
|
|
193
193
|
if (isH5) {
|
|
194
|
-
editListMap = editListMap.filter((item) => item.name !== 'Birthday');
|
|
194
|
+
editListMap = editListMap.filter((item: any) => item.name !== 'Birthday');
|
|
195
195
|
}
|
|
196
196
|
const handleSetEditName = (name:string) => {
|
|
197
197
|
setIsEditName(name);
|
|
198
198
|
};
|
|
199
199
|
|
|
200
|
-
const confirm = (options) => {
|
|
201
|
-
update(options);
|
|
200
|
+
const confirm = (options: any) => {
|
|
201
|
+
update && update(options);
|
|
202
202
|
setIsEditName('');
|
|
203
203
|
};
|
|
204
204
|
|
|
@@ -228,12 +228,12 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
228
228
|
};
|
|
229
229
|
|
|
230
230
|
// edit gender
|
|
231
|
-
const editGender = (data) => {
|
|
231
|
+
const editGender = (data: any) => {
|
|
232
232
|
confirm({ gender: data.value });
|
|
233
233
|
};
|
|
234
234
|
|
|
235
235
|
// edit allowType
|
|
236
|
-
const editAllowType = (data) => {
|
|
236
|
+
const editAllowType = (data: any) => {
|
|
237
237
|
confirm({ allowType: data.value });
|
|
238
238
|
};
|
|
239
239
|
|
|
@@ -251,14 +251,14 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
251
251
|
width={9}
|
|
252
252
|
height={16}
|
|
253
253
|
type={IconTypes.BACK}
|
|
254
|
-
onClick={() => { setTUIProfileShow(false); }}
|
|
254
|
+
onClick={() => { setTUIProfileShow && setTUIProfileShow(false); }}
|
|
255
255
|
/>
|
|
256
256
|
<h1>{t('TUIProfile.Personal information')}</h1>
|
|
257
257
|
</header>
|
|
258
258
|
<main className="tui-profile-main">
|
|
259
259
|
<div className="tui-profile-avatar">
|
|
260
260
|
<Avatar
|
|
261
|
-
image={handleDisplayAvatar(userInfo?.avatar)}
|
|
261
|
+
image={userInfo && handleDisplayAvatar(userInfo?.avatar)}
|
|
262
262
|
size={94}
|
|
263
263
|
update={editAvatar}
|
|
264
264
|
list={avatarList}
|
|
@@ -281,7 +281,7 @@ function TUIProfileDefaultWithContext<T extends TUIProfileDefaultProps>(
|
|
|
281
281
|
</main>
|
|
282
282
|
<ul className="tui-profile-list">
|
|
283
283
|
{
|
|
284
|
-
editListMap.map((item) => {
|
|
284
|
+
editListMap.map((item: any) => {
|
|
285
285
|
const key = `${item.name}`;
|
|
286
286
|
return (
|
|
287
287
|
<li className="tui-profile-list-item" key={key}>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCallback, useEffect, useState } from 'react';
|
|
2
|
-
import TencentCloudChat from '@tencentcloud/chat';
|
|
2
|
+
import TencentCloudChat, { Profile } from '@tencentcloud/chat';
|
|
3
3
|
import { useTUIKitContext } from '../../../context';
|
|
4
4
|
|
|
5
5
|
export interface ProfileParams {
|
|
@@ -19,7 +19,7 @@ export interface ProfileParams {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export function useMyProfile() {
|
|
22
|
-
const [myProfile, setMyPofile] = useState(
|
|
22
|
+
const [myProfile, setMyPofile] = useState<Profile>();
|
|
23
23
|
const { chat, myProfile: contextProfile } = useTUIKitContext('useMyProfile');
|
|
24
24
|
|
|
25
25
|
const getMyProfile = useCallback(async () => {
|
|
@@ -31,9 +31,9 @@ export function useMyProfile() {
|
|
|
31
31
|
}
|
|
32
32
|
}, [chat]);
|
|
33
33
|
|
|
34
|
-
const updateMyProfile = useCallback(async (options) => {
|
|
34
|
+
const updateMyProfile = useCallback(async (options: any) => {
|
|
35
35
|
const res = await chat?.updateMyProfile(options);
|
|
36
|
-
const userInfo = { ...myProfile };
|
|
36
|
+
const userInfo: any = { ...myProfile };
|
|
37
37
|
const keys = Object.keys(res.data);
|
|
38
38
|
keys.map((name) => {
|
|
39
39
|
userInfo[name] = res.data[name];
|
|
@@ -43,8 +43,8 @@ export function useMyProfile() {
|
|
|
43
43
|
return res;
|
|
44
44
|
}, [chat]);
|
|
45
45
|
|
|
46
|
-
const onProfileUpdated = (event) => {
|
|
47
|
-
console.log('onProfileUpdated', event.data);
|
|
46
|
+
const onProfileUpdated = (event: any) => {
|
|
47
|
+
console.log('onProfileUpdated', event.data);
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
useEffect(() => {
|
|
@@ -24,9 +24,9 @@ T extends ToastProps
|
|
|
24
24
|
const root = document.body;
|
|
25
25
|
|
|
26
26
|
const elements = document.createElement('div');
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
if(text) {
|
|
28
|
+
elements.innerText = text ;
|
|
29
|
+
}
|
|
30
30
|
elements.className = `toast ${className} ${type}`;
|
|
31
31
|
|
|
32
32
|
root.appendChild(elements);
|
package/src/components/untils.ts
CHANGED
|
@@ -53,7 +53,7 @@ export const handleDisplayAvatar = (avatar: string, type:string = TencentCloudCh
|
|
|
53
53
|
};
|
|
54
54
|
|
|
55
55
|
export const getTimeStamp = (time: number, language?: string) => {
|
|
56
|
-
const locales = { enGB, zhCN };
|
|
56
|
+
const locales: any = { enGB, zhCN };
|
|
57
57
|
let lng = '';
|
|
58
58
|
if (language === 'zh') {
|
|
59
59
|
lng = 'zhCN';
|
|
@@ -21,15 +21,15 @@ export interface TUIChatStateContextValue {
|
|
|
21
21
|
messageConfig?: TUIMessageProps,
|
|
22
22
|
cloudCustomData?: string,
|
|
23
23
|
TUIMessageInputConfig?: TUIMessageInputBasicProps,
|
|
24
|
-
audioSource?: HTMLAudioElement,
|
|
25
|
-
vidoeSource?: HTMLVideoElement,
|
|
24
|
+
audioSource?: HTMLAudioElement | null,
|
|
25
|
+
vidoeSource?: HTMLVideoElement | null,
|
|
26
26
|
TUIMessageListConfig?: MessageListProps,
|
|
27
27
|
uploadPendingMessageList?: Array<Message>,
|
|
28
|
-
firstSendMessage?: Message;
|
|
28
|
+
firstSendMessage?: Message | null;
|
|
29
29
|
activeMessageID?: string,
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
export const TUIChatStateContext = React.createContext<TUIChatStateContextValue>(null);
|
|
32
|
+
export const TUIChatStateContext = React.createContext<TUIChatStateContextValue | null>(null);
|
|
33
33
|
export function TUIChatStateContextProvider({ children, value }:PropsWithChildren<{
|
|
34
34
|
value: TUIChatStateContextValue
|
|
35
35
|
}>):React.ReactElement {
|
|
@@ -11,7 +11,7 @@ export interface TUIContactContextValue {
|
|
|
11
11
|
isShowContactList?: boolean,
|
|
12
12
|
setShowContactList?: React.Dispatch<React.SetStateAction<boolean>>
|
|
13
13
|
}
|
|
14
|
-
export const TUIContactContext = React.createContext<TUIContactContextValue>(
|
|
14
|
+
export const TUIContactContext = React.createContext<TUIContactContextValue>({});
|
|
15
15
|
export function TUIContactContextProvider({ children, value }:PropsWithChildren<{
|
|
16
16
|
value: TUIContactContextValue
|
|
17
17
|
}>):React.ReactElement {
|
|
@@ -8,9 +8,9 @@ export interface TUIConversationContextValue {
|
|
|
8
8
|
filterConversation?:(conversationList: Array<Conversation>) => Array<Conversation>,
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
export const TUIConversationContext = React.createContext<TUIConversationContextValue>(
|
|
11
|
+
export const TUIConversationContext = React.createContext<TUIConversationContextValue>({});
|
|
12
12
|
export function TUIConversationProvider({ children, value }:React.PropsWithChildren<{
|
|
13
|
-
value
|
|
13
|
+
value: TUIConversationContextValue
|
|
14
14
|
}>) {
|
|
15
15
|
return (
|
|
16
16
|
<TUIConversationContext.Provider value={value}>
|
|
@@ -35,7 +35,7 @@ export interface TUIMessageContextValue {
|
|
|
35
35
|
Progress?: React.ComponentType<{message: Message}>,
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
export const TUIMessageContext = React.createContext<TUIMessageContextValue>(
|
|
38
|
+
export const TUIMessageContext = React.createContext<TUIMessageContextValue>({});
|
|
39
39
|
export function TUIMessageContextProvider({ children, value }:PropsWithChildren<{
|
|
40
40
|
value: TUIMessageContextValue
|
|
41
41
|
}>):React.ReactElement {
|
|
@@ -34,7 +34,7 @@ export interface TUIMessageInputContextValue {
|
|
|
34
34
|
pluginConfig?: PluginConfigProps,
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
export const TUIMessageInputContext = React.createContext<TUIMessageInputContextValue>(
|
|
37
|
+
export const TUIMessageInputContext = React.createContext<TUIMessageInputContextValue>({});
|
|
38
38
|
export function TUIMessageInputContextProvider({ children, value }:PropsWithChildren<{
|
|
39
39
|
value: TUIMessageInputContextValue
|
|
40
40
|
}>):React.ReactElement {
|
|
@@ -15,7 +15,7 @@ export interface CreateGroupConversationParams {
|
|
|
15
15
|
groupCustomField?: Array<object>;
|
|
16
16
|
isSupportTopic?: boolean;
|
|
17
17
|
}
|
|
18
|
-
export const useConversation = (chat) => {
|
|
18
|
+
export const useConversation = (chat: any) => {
|
|
19
19
|
const {
|
|
20
20
|
createConversation: contextCreateConversation,
|
|
21
21
|
deleteConversation: contextDeleteConversation,
|
package/src/hooks/useProfile.tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
|
-
export const useProfile = (chat) => {
|
|
4
|
-
const getUserProfile = (userIDList) => chat.getUserProfile({ userIDList });
|
|
3
|
+
export const useProfile = (chat: any) => {
|
|
4
|
+
const getUserProfile = (userIDList: Array<string>) => chat.getUserProfile({ userIDList });
|
|
5
5
|
return {
|
|
6
6
|
getUserProfile,
|
|
7
7
|
};
|