@tencentcloud/chat-uikit-react 1.0.3 → 1.1.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/CHANGELOG.md +10 -0
- package/README.md +69 -83
- package/dist/cjs/components/ConversationCreate/ConversationCreatGroupDetail.js +1 -1
- package/dist/cjs/components/ConversationCreate/ConversationCreate.js +1 -1
- package/dist/cjs/components/ConversationCreate/ConversationCreateUserSelectList.js +1 -1
- package/dist/cjs/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
- package/dist/cjs/components/ConversationPreview/ConversationListContainer.d.ts +1 -1
- package/dist/cjs/components/ConversationPreview/ConversationPreview.d.ts +1 -1
- package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.js +1 -1
- package/dist/cjs/components/ConversationPreview/utils.js +1 -1
- package/dist/cjs/components/ConversationSearch/ConversationSearchResult.d.ts +1 -1
- package/dist/cjs/components/ConversationSearch/ConversationSearchResult.js +1 -1
- package/dist/cjs/components/TUIChat/TUIChat.d.ts +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/useCreateMessage.d.ts +2 -2
- package/dist/cjs/components/TUIChat/hooks/useCreateMessage.js +1 -1
- package/dist/cjs/components/TUIChat/hooks/useCreateTUIChatStateContext.js +1 -1
- package/dist/cjs/components/TUIChat/hooks/useHandleMessage.d.ts +1 -1
- package/dist/cjs/components/TUIChat/hooks/useHandleMessageList.js +1 -1
- package/dist/cjs/components/TUIChat/hooks/useMessageReceviedListener.js +1 -1
- package/dist/cjs/components/TUIChat/unitls.js +1 -1
- package/dist/cjs/components/TUIChatHeader/TUIChatHeader.d.ts +1 -1
- package/dist/cjs/components/TUIChatHeader/TUIChatHeaderDefault.d.ts +1 -1
- package/dist/cjs/components/TUIChatHeader/TUIChatHeaderDefault.js +1 -1
- package/dist/cjs/components/TUIConversation/TUIConversation.d.ts +1 -1
- package/dist/cjs/components/TUIConversation/TUIConversation.js +1 -1
- package/dist/cjs/components/TUIConversationList/TUIConversationList.d.ts +1 -1
- package/dist/cjs/components/TUIConversationList/TUIConversationList.js +1 -1
- package/dist/cjs/components/TUIConversationList/hooks/useConversationList.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/TUIKit.js +1 -1
- package/dist/cjs/components/TUIKit/hooks/useCreateTUIKitContext.d.ts +5 -5
- package/dist/cjs/components/TUIKit/hooks/useCreateTUIKitContext.js +1 -1
- package/dist/cjs/components/TUIKit/hooks/useTUIKit.d.ts +3 -3
- package/dist/cjs/components/TUIKit/hooks/useTUIKit.js +1 -1
- package/dist/cjs/components/TUIManage/TUIManage.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageBubble.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageContext.d.ts +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/MessageFile.js +1 -1
- package/dist/cjs/components/TUIMessage/MessageImage.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.d.ts +2 -2
- 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/TUIMessage.d.ts +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/useMessageContextHandler.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/TUIMessageInput.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/useMessageInputText.js +1 -1
- package/dist/cjs/components/TUIMessageInput/hooks/useUploadPicker.js +1 -1
- package/dist/cjs/components/TUIMessageList/TUIMessageList.d.ts +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/TUIProfileDefault.d.ts +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/untils.js +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/context/TUIChatActionContext.d.ts +3 -3
- package/dist/cjs/context/TUIChatStateContext.d.ts +2 -2
- package/dist/cjs/context/TUIConversationContext.js +1 -1
- package/dist/cjs/context/TUIKitContext.d.ts +2 -2
- package/dist/cjs/context/TUIMessageContext.d.ts +1 -1
- package/dist/cjs/hooks/useConversation.d.ts +3 -3
- package/dist/cjs/hooks/useConversation.js +1 -1
- package/dist/cjs/hooks/useProfile.d.ts +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/esm/components/ConversationCreate/ConversationCreatGroupDetail.js +1 -1
- package/dist/esm/components/ConversationCreate/ConversationCreate.js +1 -1
- package/dist/esm/components/ConversationCreate/ConversationCreateUserSelectList.js +1 -1
- package/dist/esm/components/ConversationCreate/hooks/useConversationCreate.js +1 -1
- package/dist/esm/components/ConversationPreview/ConversationListContainer.d.ts +1 -1
- package/dist/esm/components/ConversationPreview/ConversationPreview.d.ts +1 -1
- package/dist/esm/components/ConversationPreview/ConversationPreviewContent.js +1 -1
- package/dist/esm/components/ConversationPreview/utils.js +1 -1
- package/dist/esm/components/ConversationSearch/ConversationSearchResult.d.ts +1 -1
- package/dist/esm/components/ConversationSearch/ConversationSearchResult.js +1 -1
- package/dist/esm/components/TUIChat/TUIChat.d.ts +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/useCreateMessage.d.ts +2 -2
- package/dist/esm/components/TUIChat/hooks/useCreateMessage.js +1 -1
- package/dist/esm/components/TUIChat/hooks/useCreateTUIChatStateContext.js +1 -1
- package/dist/esm/components/TUIChat/hooks/useHandleMessage.d.ts +1 -1
- package/dist/esm/components/TUIChat/hooks/useHandleMessageList.js +1 -1
- package/dist/esm/components/TUIChat/hooks/useMessageReceviedListener.js +1 -1
- package/dist/esm/components/TUIChat/unitls.js +1 -1
- package/dist/esm/components/TUIChatHeader/TUIChatHeader.d.ts +1 -1
- package/dist/esm/components/TUIChatHeader/TUIChatHeaderDefault.d.ts +1 -1
- package/dist/esm/components/TUIChatHeader/TUIChatHeaderDefault.js +1 -1
- package/dist/esm/components/TUIConversation/TUIConversation.d.ts +1 -1
- package/dist/esm/components/TUIConversation/TUIConversation.js +1 -1
- package/dist/esm/components/TUIConversationList/TUIConversationList.d.ts +1 -1
- package/dist/esm/components/TUIConversationList/TUIConversationList.js +1 -1
- package/dist/esm/components/TUIConversationList/hooks/useConversationList.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/TUIKit.js +1 -1
- package/dist/esm/components/TUIKit/hooks/useCreateTUIKitContext.d.ts +5 -5
- package/dist/esm/components/TUIKit/hooks/useCreateTUIKitContext.js +1 -1
- package/dist/esm/components/TUIKit/hooks/useTUIKit.d.ts +3 -3
- package/dist/esm/components/TUIKit/hooks/useTUIKit.js +1 -1
- package/dist/esm/components/TUIManage/TUIManage.js +1 -1
- package/dist/esm/components/TUIMessage/MessageBubble.js +1 -1
- package/dist/esm/components/TUIMessage/MessageContext.d.ts +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/MessageFile.js +1 -1
- package/dist/esm/components/TUIMessage/MessageImage.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.d.ts +2 -2
- 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/TUIMessage.d.ts +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/useMessageContextHandler.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/TUIMessageInput.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/useMessageInputText.js +1 -1
- package/dist/esm/components/TUIMessageInput/hooks/useUploadPicker.js +1 -1
- package/dist/esm/components/TUIMessageList/TUIMessageList.d.ts +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/TUIProfileDefault.d.ts +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/untils.js +1 -1
- package/dist/esm/constants.js +1 -1
- package/dist/esm/context/TUIChatActionContext.d.ts +3 -3
- package/dist/esm/context/TUIChatStateContext.d.ts +2 -2
- package/dist/esm/context/TUIConversationContext.js +1 -1
- package/dist/esm/context/TUIKitContext.d.ts +2 -2
- package/dist/esm/context/TUIMessageContext.d.ts +1 -1
- package/dist/esm/hooks/useConversation.d.ts +3 -3
- package/dist/esm/hooks/useConversation.js +1 -1
- package/dist/esm/hooks/useProfile.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/package.json +2 -3
- package/src/components/ConversationCreate/ConversationCreatGroupDetail.tsx +5 -2
- package/src/components/ConversationCreate/ConversationCreate.tsx +3 -3
- package/src/components/ConversationCreate/ConversationCreateSelectView.tsx +1 -1
- package/src/components/ConversationCreate/ConversationCreateUserSelectList.tsx +4 -4
- package/src/components/ConversationCreate/ConversationGroupTypeInfo.tsx +5 -5
- package/src/components/ConversationCreate/hooks/useConversationCreate.tsx +6 -6
- package/src/components/ConversationPreview/ConversationListContainer.tsx +1 -1
- package/src/components/ConversationPreview/ConversationPreview.tsx +1 -1
- package/src/components/ConversationPreview/ConversationPreviewContent.tsx +2 -2
- package/src/components/ConversationPreview/utils.tsx +10 -10
- package/src/components/ConversationSearch/ConversationSearchResult.tsx +1 -1
- package/src/components/Profile/Profile.tsx +1 -1
- package/src/components/Profile/hooks/useProfile.tsx +5 -5
- package/src/components/TUIChat/TUIChat.tsx +23 -17
- package/src/components/TUIChat/TUIChatState.tsx +7 -7
- package/src/components/TUIChat/hooks/useCreateMessage.tsx +29 -29
- package/src/components/TUIChat/hooks/useCreateTUIChatStateContext.tsx +5 -5
- package/src/components/TUIChat/hooks/useHandleMessage.tsx +2 -2
- package/src/components/TUIChat/hooks/useHandleMessageList.tsx +28 -15
- package/src/components/TUIChat/hooks/useMessageReceviedListener.tsx +5 -5
- package/src/components/TUIChat/unitls.ts +3 -3
- package/src/components/TUIChatHeader/TUIChatHeader.tsx +1 -1
- package/src/components/TUIChatHeader/TUIChatHeaderDefault.tsx +7 -7
- package/src/components/TUIConversation/TUIConversation.tsx +1 -1
- package/src/components/TUIConversationList/TUIConversationList.tsx +3 -3
- package/src/components/TUIConversationList/hooks/useConversationList.tsx +5 -5
- package/src/components/TUIConversationList/hooks/useConversationUpdate.tsx +6 -6
- package/src/components/TUIKit/TUIKit.tsx +5 -5
- package/src/components/TUIKit/hooks/useCreateTUIKitContext.tsx +3 -3
- package/src/components/TUIKit/hooks/useTUIKit.tsx +8 -8
- package/src/components/TUIManage/TUIManage.tsx +2 -2
- package/src/components/TUIMessage/MessageAvatar.tsx +1 -1
- package/src/components/TUIMessage/MessageBubble.tsx +4 -4
- package/src/components/TUIMessage/MessageContext.tsx +19 -19
- package/src/components/TUIMessage/MessageCustom.tsx +2 -2
- package/src/components/TUIMessage/MessageFile.tsx +2 -2
- package/src/components/TUIMessage/MessageImage.tsx +2 -2
- package/src/components/TUIMessage/MessageMerger.tsx +2 -2
- package/src/components/TUIMessage/MessageName.tsx +2 -2
- package/src/components/TUIMessage/MessagePlugins.tsx +3 -3
- package/src/components/TUIMessage/MessageProgress.tsx +8 -8
- package/src/components/TUIMessage/MessageRevoke.tsx +2 -2
- package/src/components/TUIMessage/MessageStatus.tsx +1 -1
- package/src/components/TUIMessage/MessageText.tsx +2 -2
- package/src/components/TUIMessage/TUIMessage.tsx +1 -1
- package/src/components/TUIMessage/TUIMessageDefault.tsx +7 -8
- package/src/components/TUIMessage/hooks/useMessageContextHandler.ts +12 -12
- package/src/components/TUIMessage/hooks/useMessageHandler.ts +12 -12
- package/src/components/TUIMessage/hooks/useMessagePluginElement.tsx +2 -2
- package/src/components/TUIMessage/hooks/useMessageReply.ts +11 -11
- package/src/components/TUIMessage/utils/index.ts +16 -16
- package/src/components/TUIMessageInput/InputQuoteDefalut.tsx +1 -1
- package/src/components/TUIMessageInput/TUIForward.tsx +1 -1
- package/src/components/TUIMessageInput/TUIMessageInput.tsx +2 -2
- package/src/components/TUIMessageInput/hooks/useHandleForwardMessage.tsx +5 -5
- package/src/components/TUIMessageInput/hooks/useHandleQuoteMessage.tsx +15 -15
- package/src/components/TUIMessageInput/hooks/useMessageInputText.tsx +2 -2
- package/src/components/TUIMessageInput/hooks/useUploadPicker.tsx +2 -2
- package/src/components/TUIMessageList/TUIMessageList.tsx +2 -2
- package/src/components/TUIMessageList/hooks/useEnrichedMessageList.tsx +1 -1
- package/src/components/TUIMessageList/hooks/useMessageListElement.tsx +8 -11
- package/src/components/TUIProfile/TUIProfileDefault.tsx +6 -6
- package/src/components/TUIProfile/hooks/useMyProfile.tsx +9 -9
- package/src/components/untils.ts +4 -4
- package/src/constants.ts +1 -1
- package/src/context/TUIChatActionContext.tsx +3 -3
- package/src/context/TUIChatStateContext.tsx +2 -2
- package/src/context/TUIConversationContext.tsx +1 -1
- package/src/context/TUIKitContext.tsx +2 -2
- package/src/context/TUIMessageContext.tsx +1 -1
- package/src/hooks/useConversation.tsx +11 -11
- package/src/hooks/useProfile.tsx +2 -2
- package/readme.zh_cn.md +0 -60
- package/src/@types/index.d.ts +0 -1
- package/src/@types/index.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as t,__generator as o}from"tslib";import e from"
|
|
1
|
+
import{__awaiter as t,__generator as o}from"tslib";import e from"@tencentcloud/chat";import{useTUIConversationContext as n}from"../context/TUIConversationContext.js";var r=function(r){var i=n("useConversation");return{createConversation:i.createConversation||function(n){return t(void 0,void 0,void 0,(function(){var t,i,a,s,u,c,p,v,m,d,C,f,l,g,b;return o(this,(function(o){switch(o.label){case 0:return"string"!=typeof n?[3,2]:[4,r.getConversationProfile(n)];case 1:return[2,o.sent().data.conversation];case 2:return t=n.name,i=n.type,a=n.groupID,s=n.introduction,u=n.notification,c=n.avatar,p=n.maxMemberNum,v=n.joinOption,m=n.memberList,d=void 0===m?[]:m,C=n.groupCustomField,f=void 0===C?[]:C,l=n.isSupportTopic,[4,r.createGroup({name:t,type:i,groupID:a,introduction:s,notification:u,avatar:c,maxMemberNum:p,joinOption:v,memberList:d,groupCustomField:f,isSupportTopic:l})];case 3:return g=o.sent(),b=g.data.group.groupID,i!==e.TYPES.GRP_AVCHATROOM?[3,5]:[4,r.joinGroup({groupID:b,type:e.TYPES.GRP_AVCHATROOM})];case 4:o.sent(),o.label=5;case 5:return[4,r.getConversationProfile("GROUP".concat(b))];case 6:return[2,o.sent().data.conversation]}}))}))},pinConversation:function(t){return r.pinConversation(t)},deleteConversation:i.deleteConversation||function(t){return r.deleteConversation(t)}}};export{r as useConversation};
|
package/dist/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{TUIKit}from"./components/TUIKit/TUIKit.js";export{useTUIKit}from"./components/TUIKit/hooks/useTUIKit.js";export{useCreateTUIKitContext}from"./components/TUIKit/hooks/useCreateTUIKitContext.js";export{TUIConversation,UnMemoizedTUIConversation}from"./components/TUIConversation/TUIConversation.js";export{TUIConversationList,UnMemoTUIConversationList}from"./components/TUIConversationList/TUIConversationList.js";import"tslib";import"react";import"
|
|
1
|
+
export{TUIKit}from"./components/TUIKit/TUIKit.js";export{useTUIKit}from"./components/TUIKit/hooks/useTUIKit.js";export{useCreateTUIKitContext}from"./components/TUIKit/hooks/useCreateTUIKitContext.js";export{TUIConversation,UnMemoizedTUIConversation}from"./components/TUIConversation/TUIConversation.js";export{TUIConversationList,UnMemoTUIConversationList}from"./components/TUIConversationList/TUIConversationList.js";import"tslib";import"react";import"@tencentcloud/chat";export{TUIChat}from"./components/TUIChat/TUIChat.js";export{ConversationPreview}from"./components/ConversationPreview/ConversationPreview.js";export{ConversationPreviewContent,unMemoConversationPreviewContent}from"./components/ConversationPreview/ConversationPreviewContent.js";export{TUIChatHeader}from"./components/TUIChatHeader/TUIChatHeader.js";export{TUIChatHeaderDefault}from"./components/TUIChatHeader/TUIChatHeaderDefault.js";export{TUIMessageList}from"./components/TUIMessageList/TUIMessageList.js";export{TUIMessage}from"./components/TUIMessage/TUIMessage.js";export{MessagePlugins}from"./components/TUIMessage/MessagePlugins.js";export{MessageContext}from"./components/TUIMessage/MessageContext.js";export{TUIMessageInput}from"./components/TUIMessageInput/TUIMessageInput.js";export{TUIMessageInputDefault}from"./components/TUIMessageInput/TUIMessageInputDefault.js";export{InputPluginsDefalut}from"./components/TUIMessageInput/InputPluginsDefalut.js";export{TUIProfile}from"./components/TUIProfile/TUIProfile.js";export{TUIProfileDefault}from"./components/TUIProfile/TUIProfileDefault.js";export{Avatar}from"./components/Avatar/Avatar.js";export{defaultGroupAvatarAVChatRoom,defaultGroupAvatarMeeting,defaultGroupAvatarPublic,defaultGroupAvatarWork,defaultUserAvatar}from"./components/Avatar/default.js";export{ConversationSearchInput}from"./components/ConversationSearch/ConversationSearchInput.js";export{ConversationSearchResult}from"./components/ConversationSearch/ConversationSearchResult.js";export{TUIManage}from"./components/TUIManage/TUIManage.js";export{Popup}from"./components/Popup/index.js";export{Checkbox}from"./components/Checkbox/index.js";export{DivWithEdit}from"./components/DivWithEdit/DivWithEdit.js";export{Icon,changeTypeToIconClassName}from"./components/Icon/Icon.js";export{IconTypes}from"./components/Icon/type.js";export{EmptyStateIndicator}from"./components/EmptyStateIndicator/EmptyStateIndicator.js";export{Input}from"./components/Input/Input.js";export{Model}from"./components/Model/index.js";export{Plugins}from"./components/Plugins/index.js";export{Switch}from"./components/Switch/Switch.js";export{Toast}from"./components/Toast/index.js";export{TUIKitContext,TUIKitProvider,useTUIKitContext}from"./context/TUIKitContext.js";export{TUIChatStateContext,TUIChatStateContextProvider,useTUIChatStateContext}from"./context/TUIChatStateContext.js";export{TUIChatActionContext,TUIChatActionProvider,useTUIChatActionContext}from"./context/TUIChatActionContext.js";export{TUIMessageContext,TUIMessageContextProvider,messageShowType,useTUIMessageContext}from"./context/TUIMessageContext.js";export{ComponentContext,ComponentProvider,useComponentContext}from"./context/ComponentContext.js";export{TUIMessageInputContext,TUIMessageInputContextProvider,useTUIMessageInputContext}from"./context/TUIMessageInputContext.js";export{useConversation}from"./hooks/useConversation.js";export{useProfile}from"./hooks/useProfile.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tencentcloud/chat-uikit-react",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"license": "MIT",
|
|
@@ -60,14 +60,13 @@
|
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"date-fns": "^2.29.3",
|
|
62
62
|
"react-date-picker": "^9.0.0",
|
|
63
|
-
"tim-js-sdk": "^2.26.1",
|
|
64
63
|
"tim-upload-plugin": "^1.0.5"
|
|
65
64
|
},
|
|
66
65
|
"peerDependencies": {
|
|
66
|
+
"@tencentcloud/chat": "^3.2.0",
|
|
67
67
|
"date-fns": "^2.29.3",
|
|
68
68
|
"react": "^18.2.0",
|
|
69
69
|
"react-date-picker": "^9.0.0",
|
|
70
|
-
"tim-js-sdk": "^2.24.2",
|
|
71
70
|
"tim-upload-plugin": "^1.0.5",
|
|
72
71
|
"tslib": "^2.4.1"
|
|
73
72
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
-
import { Conversation, Profile } from '
|
|
2
|
+
import { Conversation, Profile } from '@tencentcloud/chat';
|
|
3
3
|
import { Input } from '../Input';
|
|
4
4
|
import './styles/ConversationCreatGroupDetail.scss';
|
|
5
5
|
import { Icon, IconTypes } from '../Icon';
|
|
@@ -71,9 +71,12 @@ export function ConversationCreatGroupDetail(props: ConversationCreatGroupDetail
|
|
|
71
71
|
const getDes = () => typeInfoList.find((item) => item.type === groupType).des;
|
|
72
72
|
|
|
73
73
|
const next = async () => {
|
|
74
|
+
const memberList = profileList.map((item) => ({
|
|
75
|
+
userID: item.userID,
|
|
76
|
+
}));
|
|
74
77
|
const avatar = getDefaultAvatar(groupType);
|
|
75
78
|
const conversation = await createConversation({
|
|
76
|
-
name: groupName, type: GroupType[groupType], groupID, avatar,
|
|
79
|
+
name: groupName, type: GroupType[groupType], groupID, avatar, memberList,
|
|
77
80
|
});
|
|
78
81
|
setActiveConversation(conversation);
|
|
79
82
|
setConversationCreated(false);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useMemo, useState } from 'react';
|
|
2
2
|
import './styles/index.scss';
|
|
3
|
-
import { Conversation } from '
|
|
3
|
+
import { Conversation } from '@tencentcloud/chat';
|
|
4
4
|
import { Icon, IconTypes } from '../Icon';
|
|
5
5
|
import { ConversationCreateUserSelectList } from './ConversationCreateUserSelectList';
|
|
6
6
|
import { ConversationCreatGroupDetail } from './ConversationCreatGroupDetail';
|
|
@@ -22,8 +22,8 @@ export function ConversationCreate<T extends ConversationCreateProps>(props:T) {
|
|
|
22
22
|
const [isCreateGroup, setIsCreateGroup] = useState(false);
|
|
23
23
|
const [pageState, setPageState] = useState<PageStateTypes>(PageStateTypes.USER_SELECT);
|
|
24
24
|
const [selectList, setSelectList] = useState([]);
|
|
25
|
-
const {
|
|
26
|
-
const { createConversation } = useConversation(
|
|
25
|
+
const { chat } = useTUIKitContext();
|
|
26
|
+
const { createConversation } = useConversation(chat);
|
|
27
27
|
const back = () => {
|
|
28
28
|
if (isCreateGroup) {
|
|
29
29
|
switch (pageState) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { Profile } from '
|
|
2
|
+
import { Profile } from '@tencentcloud/chat';
|
|
3
3
|
import { Avatar, defaultUserAvatar } from '../Avatar';
|
|
4
4
|
import './styles/conversationCreateSelectView.scss';
|
|
5
5
|
import { Icon, IconTypes } from '../Icon';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useRef, useState } from 'react';
|
|
2
|
-
import { Conversation } from '
|
|
2
|
+
import { Conversation } from '@tencentcloud/chat';
|
|
3
3
|
import { Input } from '../Input';
|
|
4
4
|
import { Icon, IconTypes } from '../Icon';
|
|
5
5
|
import { ConversationCreateSelectView, ConversationCreateSelectViewProps } from './ConversationCreateSelectView';
|
|
@@ -30,14 +30,14 @@ export function ConversationCreateUserSelectList(props: ConversationCreateUserSe
|
|
|
30
30
|
setPageState,
|
|
31
31
|
} = props;
|
|
32
32
|
const [searchValue, setSearchValue] = useState('');
|
|
33
|
-
const {
|
|
33
|
+
const { chat, setActiveConversation } = useTUIKitContext();
|
|
34
34
|
const [friendList, setFriendList] = useState({});
|
|
35
35
|
const {
|
|
36
36
|
getFriendListSortSearchResult,
|
|
37
|
-
} = useConversationCreate(
|
|
37
|
+
} = useConversationCreate(chat, conversationList, (newFriendListResult) => {
|
|
38
38
|
setFriendList(newFriendListResult);
|
|
39
39
|
});
|
|
40
|
-
const { createConversation } = useConversation(
|
|
40
|
+
const { createConversation } = useConversation(chat);
|
|
41
41
|
const userCheckedList = useRef(new Map());
|
|
42
42
|
const searchValueChange = async (e) => {
|
|
43
43
|
const { value } = e.target;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import './styles/conversationGroupTypeInfo.scss';
|
|
3
|
-
import
|
|
3
|
+
import TencentCloudChat from '@tencentcloud/chat';
|
|
4
4
|
import { PageStateTypes } from './ConversationCreate';
|
|
5
5
|
import { Icon, IconTypes } from '../Icon';
|
|
6
6
|
|
|
7
7
|
export enum GroupType {
|
|
8
|
-
Work=
|
|
9
|
-
Public=
|
|
10
|
-
Meeting=
|
|
11
|
-
AVChatRoom=
|
|
8
|
+
Work= TencentCloudChat.TYPES.GRP_WORK,
|
|
9
|
+
Public= TencentCloudChat.TYPES.GRP_PUBLIC,
|
|
10
|
+
Meeting= TencentCloudChat.TYPES.GRP_MEETING,
|
|
11
|
+
AVChatRoom= TencentCloudChat.TYPES.GRP_AVCHATROOM,
|
|
12
12
|
}
|
|
13
13
|
export interface ConversationGroupTypeInfoProps {
|
|
14
14
|
groupType: string,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
|
-
import
|
|
2
|
+
import TencentCloudChat from '@tencentcloud/chat';
|
|
3
3
|
import { strChineseFirstPy } from '../static/word';
|
|
4
4
|
import { useProfile } from '../../../hooks';
|
|
5
5
|
|
|
6
6
|
export const useConversationCreate = (
|
|
7
|
-
|
|
7
|
+
chat,
|
|
8
8
|
conversationList,
|
|
9
9
|
setFriendListResultHandler?:(
|
|
10
10
|
newFriendListResult: object,
|
|
@@ -22,9 +22,9 @@ export const useConversationCreate = (
|
|
|
22
22
|
};
|
|
23
23
|
const queryFriendList = async () => {
|
|
24
24
|
const frequentlyConversationProfile = conversationList.filter(
|
|
25
|
-
(item) => item.type ===
|
|
25
|
+
(item) => item.type === TencentCloudChat.TYPES.CONV_C2C,
|
|
26
26
|
).slice(0, 5).map((item) => item.userProfile);
|
|
27
|
-
const { code, data } = await
|
|
27
|
+
const { code, data } = await chat.getFriendList();
|
|
28
28
|
if (code === 0) {
|
|
29
29
|
const sortResult = handleData(
|
|
30
30
|
data.map((item) => item.profile),
|
|
@@ -69,7 +69,7 @@ export const useConversationCreate = (
|
|
|
69
69
|
});
|
|
70
70
|
return sortResult;
|
|
71
71
|
};
|
|
72
|
-
const { getUserProfile } = useProfile(
|
|
72
|
+
const { getUserProfile } = useProfile(chat);
|
|
73
73
|
const getFriendListSortSearchResult = async (searchValue: string) => {
|
|
74
74
|
if (!searchValue) return friendListSortResult;
|
|
75
75
|
const { data: profileList } = await getUserProfile([searchValue]);
|
|
@@ -95,7 +95,7 @@ export const useConversationCreate = (
|
|
|
95
95
|
};
|
|
96
96
|
useEffect(() => {
|
|
97
97
|
queryFriendList();
|
|
98
|
-
}, [
|
|
98
|
+
}, [chat]);
|
|
99
99
|
return {
|
|
100
100
|
getFirstLetter,
|
|
101
101
|
queryFriendList,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
|
-
import { Conversation } from '
|
|
2
|
+
import { Conversation } from '@tencentcloud/chat';
|
|
3
3
|
import { TUIKitContextValue, useTUIKitContext } from '../../context';
|
|
4
4
|
import { ConversationPreviewContent } from './ConversationPreviewContent';
|
|
5
5
|
import { AvatarProps } from '../Avatar';
|
|
@@ -41,8 +41,8 @@ export function unMemoConversationPreviewContent<T extends ConversationPreviewUI
|
|
|
41
41
|
const handleMouseLeave = () => {
|
|
42
42
|
setIsHover(false);
|
|
43
43
|
};
|
|
44
|
-
const {
|
|
45
|
-
const { pinConversation, deleteConversation } = useConversation(
|
|
44
|
+
const { chat, conversation: activeConversation } = useTUIKitContext('ConversationPreviewContent');
|
|
45
|
+
const { pinConversation, deleteConversation } = useConversation(chat);
|
|
46
46
|
const moreHandle = (type: string) => {
|
|
47
47
|
const { conversationID, isPinned } = conversation;
|
|
48
48
|
switch (type) {
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
format, isToday, isYesterday, formatDistance, isThisYear, isThisWeek,
|
|
3
3
|
} from 'date-fns';
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import
|
|
5
|
+
import TencentCloudChat, { Conversation, Group, Profile } from '@tencentcloud/chat';
|
|
6
6
|
import { defaultGroupAvatarWork, defaultUserAvatar } from '../Avatar';
|
|
7
7
|
import { formatEmojiString } from '../TUIMessage/utils/emojiMap';
|
|
8
8
|
|
|
@@ -17,10 +17,10 @@ export const getDisplayTitle = (
|
|
|
17
17
|
const { type } = conversation;
|
|
18
18
|
let title = '';
|
|
19
19
|
switch (type) {
|
|
20
|
-
case
|
|
20
|
+
case TencentCloudChat.TYPES.CONV_C2C:
|
|
21
21
|
title = nick || userID;
|
|
22
22
|
break;
|
|
23
|
-
case
|
|
23
|
+
case TencentCloudChat.TYPES.CONV_GROUP:
|
|
24
24
|
title = name || groupID;
|
|
25
25
|
break;
|
|
26
26
|
default:
|
|
@@ -45,10 +45,10 @@ export const getDisplayImage = (conversation: Conversation) => {
|
|
|
45
45
|
let displayImage = avatar;
|
|
46
46
|
if (!avatar) {
|
|
47
47
|
switch (type) {
|
|
48
|
-
case
|
|
48
|
+
case TencentCloudChat.TYPES.CONV_C2C:
|
|
49
49
|
displayImage = defaultUserAvatar;
|
|
50
50
|
break;
|
|
51
|
-
case
|
|
51
|
+
case TencentCloudChat.TYPES.CONV_GROUP:
|
|
52
52
|
displayImage = defaultGroupAvatarWork;
|
|
53
53
|
break;
|
|
54
54
|
default:
|
|
@@ -64,11 +64,11 @@ export const getDisplayMessage = (conversation:Conversation, myProfile:Profile)
|
|
|
64
64
|
} = lastMessage;
|
|
65
65
|
let from = '';
|
|
66
66
|
switch (type) {
|
|
67
|
-
case
|
|
67
|
+
case TencentCloudChat.TYPES.CONV_GROUP:
|
|
68
68
|
from = lastMessage?.fromAccount === myProfile?.userID ? 'You' : `${nameCard || nick || fromAccount || ''}`;
|
|
69
69
|
from = `${from ? `${from}:` : ''}`;
|
|
70
70
|
break;
|
|
71
|
-
case
|
|
71
|
+
case TencentCloudChat.TYPES.CONV_C2C:
|
|
72
72
|
from = isRevoked ? 'you ' : '';
|
|
73
73
|
break;
|
|
74
74
|
default:
|
|
@@ -91,13 +91,13 @@ export const getMessageProfile = (conversation: Conversation):TProfile => {
|
|
|
91
91
|
let result = {};
|
|
92
92
|
const { type, groupProfile, userProfile } = conversation;
|
|
93
93
|
switch (type) {
|
|
94
|
-
case
|
|
94
|
+
case TencentCloudChat.TYPES.CONV_C2C:
|
|
95
95
|
result = userProfile;
|
|
96
96
|
break;
|
|
97
|
-
case
|
|
97
|
+
case TencentCloudChat.TYPES.CONV_GROUP:
|
|
98
98
|
result = groupProfile;
|
|
99
99
|
break;
|
|
100
|
-
case
|
|
100
|
+
case TencentCloudChat.TYPES.CONV_SYSTEM:
|
|
101
101
|
default:
|
|
102
102
|
}
|
|
103
103
|
return result as TProfile;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import './styles/index.scss';
|
|
3
|
-
import { Profile as TProfile } from '
|
|
3
|
+
import { Profile as TProfile } from '@tencentcloud/chat';
|
|
4
4
|
import { Avatar, defaultUserAvatar } from '../Avatar';
|
|
5
5
|
import { Icon, IconTypes } from '../Icon';
|
|
6
6
|
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
|
-
import { ChatSDK, Profile } from '
|
|
2
|
+
import { ChatSDK, Profile } from '@tencentcloud/chat';
|
|
3
3
|
|
|
4
|
-
export function useProfile(
|
|
4
|
+
export function useProfile(chat: ChatSDK, profileHandler?: (
|
|
5
5
|
profile: Profile,
|
|
6
6
|
setProfile?: React.Dispatch<React.SetStateAction<Profile>>,
|
|
7
7
|
) => void) {
|
|
8
8
|
const [myProfile, setMyProfile] = useState<Profile>();
|
|
9
9
|
|
|
10
10
|
const getProfile = async (userIDList: Array<string>) => {
|
|
11
|
-
const res = await
|
|
11
|
+
const res = await chat?.getUserProfile({
|
|
12
12
|
userIDList,
|
|
13
13
|
});
|
|
14
14
|
return res.data;
|
|
15
15
|
};
|
|
16
16
|
const getMyProfile = async () => {
|
|
17
|
-
const res = await
|
|
17
|
+
const res = await chat?.getMyProfile();
|
|
18
18
|
setMyProfile(res?.data);
|
|
19
19
|
};
|
|
20
20
|
useEffect(() => {
|
|
21
21
|
getMyProfile();
|
|
22
|
-
}, [
|
|
22
|
+
}, [chat]);
|
|
23
23
|
return {
|
|
24
24
|
myProfile,
|
|
25
25
|
setMyProfile,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, {
|
|
2
2
|
PropsWithChildren, useEffect, useMemo, useReducer, useRef, useState,
|
|
3
3
|
} from 'react';
|
|
4
|
-
import { ChatSDK, Conversation, Message } from '
|
|
4
|
+
import { ChatSDK, Conversation, Message } from '@tencentcloud/chat';
|
|
5
5
|
import { useTUIKitContext } from '../../context/TUIKitContext';
|
|
6
6
|
import { TUIChatStateContextProvider } from '../../context/TUIChatStateContext';
|
|
7
7
|
import { TUIChatActionProvider } from '../../context/TUIChatActionContext';
|
|
@@ -58,7 +58,7 @@ interface TUIChatProps {
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
interface TUIChatInnerProps extends TUIChatProps {
|
|
61
|
-
|
|
61
|
+
chat?: ChatSDK,
|
|
62
62
|
key?: string;
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -70,7 +70,7 @@ function UnMemoizedTUIChat <T extends TUIChatProps>(
|
|
|
70
70
|
EmptyPlaceholder = <EmptyStateIndicator listType="chat" />,
|
|
71
71
|
} = props;
|
|
72
72
|
|
|
73
|
-
const { conversation: contextConversation,
|
|
73
|
+
const { conversation: contextConversation, chat } = useTUIKitContext('TUIChat');
|
|
74
74
|
|
|
75
75
|
const conversation = propsConversation || contextConversation;
|
|
76
76
|
|
|
@@ -78,7 +78,7 @@ function UnMemoizedTUIChat <T extends TUIChatProps>(
|
|
|
78
78
|
|
|
79
79
|
return (
|
|
80
80
|
<TUIChatInner
|
|
81
|
-
|
|
81
|
+
chat={chat}
|
|
82
82
|
{...props}
|
|
83
83
|
conversation={conversation}
|
|
84
84
|
key={conversation.conversationID}
|
|
@@ -90,7 +90,7 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
90
90
|
props: PropsWithChildren<T>,
|
|
91
91
|
):React.ReactElement {
|
|
92
92
|
const {
|
|
93
|
-
|
|
93
|
+
chat,
|
|
94
94
|
conversation,
|
|
95
95
|
className,
|
|
96
96
|
children,
|
|
@@ -118,7 +118,7 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
118
118
|
const messageListRef = useRef(null);
|
|
119
119
|
const textareaRef = useRef<HTMLTextAreaElement>();
|
|
120
120
|
const chatStateContextValue = useCreateTUIChatStateContext({
|
|
121
|
-
|
|
121
|
+
chat,
|
|
122
122
|
conversation,
|
|
123
123
|
messageListRef,
|
|
124
124
|
textareaRef,
|
|
@@ -141,16 +141,16 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
141
141
|
createTextAtMessage,
|
|
142
142
|
createLocationMessage,
|
|
143
143
|
createMergerMessage,
|
|
144
|
-
} = useCreateMessage({
|
|
144
|
+
} = useCreateMessage({ chat, conversation, cloudCustomData });
|
|
145
145
|
|
|
146
146
|
const {
|
|
147
147
|
getMessageList,
|
|
148
148
|
updateMessage,
|
|
149
|
-
|
|
149
|
+
editLocalMessage,
|
|
150
150
|
removeMessage,
|
|
151
|
-
|
|
151
|
+
updateUploadPendingMessageList,
|
|
152
152
|
} = useHandleMessageList({
|
|
153
|
-
|
|
153
|
+
chat, conversation, state, dispatch,
|
|
154
154
|
});
|
|
155
155
|
|
|
156
156
|
const {
|
|
@@ -168,12 +168,12 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
168
168
|
if (propsSendMessage) {
|
|
169
169
|
await propsSendMessage(message, options);
|
|
170
170
|
} else {
|
|
171
|
-
await
|
|
171
|
+
await chat.sendMessage(message, options);
|
|
172
172
|
}
|
|
173
|
-
|
|
173
|
+
editLocalMessage(message);
|
|
174
174
|
} catch (error) {
|
|
175
175
|
Toast({ text: error, type: 'error' });
|
|
176
|
-
|
|
176
|
+
editLocalMessage(message);
|
|
177
177
|
throw new Error(error);
|
|
178
178
|
}
|
|
179
179
|
};
|
|
@@ -189,6 +189,9 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
189
189
|
const historyMessageData = await getMessageList({
|
|
190
190
|
nextReqMessageID: state.nextReqMessageID,
|
|
191
191
|
});
|
|
192
|
+
if (!historyMessageData) {
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
192
195
|
dispatch({
|
|
193
196
|
type: CONSTANT_DISPATCH_TYPE.SET_HISTORY_MESSAGELIST,
|
|
194
197
|
value: historyMessageData.data.messageList,
|
|
@@ -208,6 +211,9 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
208
211
|
useEffect(() => {
|
|
209
212
|
(async () => {
|
|
210
213
|
const res = await getMessageList();
|
|
214
|
+
if (!res) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
211
217
|
if (res.data.messageList.length > 0) {
|
|
212
218
|
dispatch({
|
|
213
219
|
type: CONSTANT_DISPATCH_TYPE.SET_MESSAGELIST,
|
|
@@ -245,14 +251,14 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
245
251
|
createTextAtMessage,
|
|
246
252
|
createLocationMessage,
|
|
247
253
|
createMergerMessage,
|
|
248
|
-
|
|
254
|
+
editLocalMessage,
|
|
249
255
|
operateMessage,
|
|
250
256
|
loadMore,
|
|
251
257
|
revokeMessage,
|
|
252
258
|
setAudioSource,
|
|
253
259
|
setVideoSource,
|
|
254
260
|
setHighlightedMessageId,
|
|
255
|
-
|
|
261
|
+
updateUploadPendingMessageList,
|
|
256
262
|
}),
|
|
257
263
|
[
|
|
258
264
|
sendMessage,
|
|
@@ -269,14 +275,14 @@ function TUIChatInner <T extends TUIChatInnerProps>(
|
|
|
269
275
|
createTextAtMessage,
|
|
270
276
|
createLocationMessage,
|
|
271
277
|
createMergerMessage,
|
|
272
|
-
|
|
278
|
+
editLocalMessage,
|
|
273
279
|
operateMessage,
|
|
274
280
|
loadMore,
|
|
275
281
|
revokeMessage,
|
|
276
282
|
setAudioSource,
|
|
277
283
|
setVideoSource,
|
|
278
284
|
setHighlightedMessageId,
|
|
279
|
-
|
|
285
|
+
updateUploadPendingMessageList,
|
|
280
286
|
],
|
|
281
287
|
);
|
|
282
288
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Reducer } from 'react';
|
|
2
|
-
import { Conversation, Message } from '
|
|
2
|
+
import { Conversation, Message } from '@tencentcloud/chat';
|
|
3
3
|
import { CONSTANT_DISPATCH_TYPE } from '../../constants';
|
|
4
4
|
import type { TUIChatStateContextValue } from '../../context';
|
|
5
5
|
import { OperateMessageParams } from './hooks/useHandleMessage';
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
handleMessageList,
|
|
9
9
|
handleEditMessage,
|
|
10
10
|
handleRemoveMessage,
|
|
11
|
-
|
|
11
|
+
handleUploadPendingMessage,
|
|
12
12
|
} from './unitls';
|
|
13
13
|
|
|
14
14
|
export type ChatStateReducerAction =
|
|
@@ -70,7 +70,7 @@ export type ChatStateReducerAction =
|
|
|
70
70
|
value?: HTMLVideoElement | null,
|
|
71
71
|
}
|
|
72
72
|
| {
|
|
73
|
-
type: CONSTANT_DISPATCH_TYPE.
|
|
73
|
+
type: CONSTANT_DISPATCH_TYPE.UPDATE_UPLOAD_PENDING_MESSAGE_LIST,
|
|
74
74
|
value?: Message,
|
|
75
75
|
}
|
|
76
76
|
export type ChatStateReducer = Reducer<TUIChatStateContextValue, ChatStateReducerAction>;
|
|
@@ -128,11 +128,11 @@ export const chatReducer = (
|
|
|
128
128
|
return { ...state, audioSource: action.value };
|
|
129
129
|
case CONSTANT_DISPATCH_TYPE.SET_VIDEO_SOURCE:
|
|
130
130
|
return { ...state, vidoeSource: action.value };
|
|
131
|
-
case CONSTANT_DISPATCH_TYPE.
|
|
131
|
+
case CONSTANT_DISPATCH_TYPE.UPDATE_UPLOAD_PENDING_MESSAGE_LIST:
|
|
132
132
|
return {
|
|
133
133
|
...state,
|
|
134
|
-
|
|
135
|
-
...
|
|
134
|
+
uploadPendingMessageList: [
|
|
135
|
+
...handleUploadPendingMessage(state.uploadPendingMessageList, action.value),
|
|
136
136
|
],
|
|
137
137
|
};
|
|
138
138
|
default: return state;
|
|
@@ -152,5 +152,5 @@ export const initialState:TUIChatStateContextValue = {
|
|
|
152
152
|
noMore: false,
|
|
153
153
|
audioSource: null,
|
|
154
154
|
vidoeSource: null,
|
|
155
|
-
|
|
155
|
+
uploadPendingMessageList: [],
|
|
156
156
|
};
|