cnhis-design-vue 3.2.3-beta.16 → 3.2.3-beta.18

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.
Files changed (40) hide show
  1. package/es/components/biunique-chat/index.d.ts +24 -3
  2. package/es/components/biunique-chat/src/Index.vue.d.ts +24 -3
  3. package/es/components/biunique-chat/src/Index.vue2.js +1 -1
  4. package/es/components/biunique-chat/src/components/ChatFooter.vue2.js +1 -1
  5. package/es/components/biunique-chat/src/components/ChatMain.vue.d.ts +10 -3
  6. package/es/components/biunique-chat/src/components/ChatMain.vue2.js +1 -1
  7. package/es/components/biunique-chat/src/components/MessageTemplate.vue.d.ts +2 -1
  8. package/es/components/biunique-chat/src/components/MessageTemplate.vue2.js +1 -1
  9. package/es/components/biunique-chat/src/components/SiderList.vue2.js +1 -1
  10. package/es/components/biunique-chat/src/hooks/useScrollLoading.d.ts +2 -0
  11. package/es/components/biunique-chat/src/hooks/useScrollLoading.js +1 -0
  12. package/es/components/biunique-chat/src/hooks/useSession.d.ts +1 -0
  13. package/es/components/biunique-chat/src/hooks/useSession.js +1 -1
  14. package/es/components/biunique-chat/src/hooks/useState.js +1 -1
  15. package/es/components/biunique-chat/src/utils/index.d.ts +1 -1
  16. package/es/components/biunique-chat/src/utils/index.js +1 -1
  17. package/es/components/biunique-chat/style/index.css +1 -1
  18. package/es/components/button-print/index.d.ts +5 -2
  19. package/es/components/button-print/src/ButtonPrint.vue.d.ts +5 -2
  20. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  21. package/es/components/button-print/src/utils/print.d.ts +2 -2
  22. package/es/components/button-print/src/utils/print.js +1 -1
  23. package/es/components/calendar/index.d.ts +11 -2
  24. package/es/components/calendar/src/Calendar.vue.d.ts +11 -1
  25. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  26. package/es/components/classification/src/index.vue.d.ts +0 -3
  27. package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcess.js +1 -1
  28. package/es/components/fabric-chart/src/hooks/newBirthProcess/useNewBirthProcessChart.js +1 -1
  29. package/es/components/field-set/src/FieldColor.vue.d.ts +2 -2
  30. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  31. package/es/components/field-set/src/components/Row.vue.d.ts +1 -1
  32. package/es/components/field-set/src/components/edit-dialog.vue.d.ts +1 -1
  33. package/es/components/guide/src/renderer.d.ts +2 -2
  34. package/es/components/index.css +1 -1
  35. package/es/components/scale-view/src/components/formitem/standard-modal.d.ts +1 -1
  36. package/es/env.d.ts +25 -25
  37. package/es/shared/package.json.js +1 -1
  38. package/package.json +2 -2
  39. package/es/components/node_modules/naive-ui/node_modules/date-fns/docs/logo.svg +0 -26
  40. package/es/components/node_modules/naive-ui/node_modules/date-fns/docs/logotype.svg +0 -1
@@ -1,5 +1,9 @@
1
1
  import { SFCWithInstall } from '../../shared/types';
2
2
  declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
3
+ token: {
4
+ type: StringConstructor;
5
+ required: true;
6
+ };
3
7
  userId: {
4
8
  type: StringConstructor;
5
9
  required: true;
@@ -10,6 +14,10 @@ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
10
14
  };
11
15
  }, {
12
16
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
17
+ token: {
18
+ type: StringConstructor;
19
+ required: true;
20
+ };
13
21
  userId: {
14
22
  type: StringConstructor;
15
23
  required: true;
@@ -39,6 +47,8 @@ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
39
47
  isUpdateSession: boolean;
40
48
  };
41
49
  reConnention: number;
50
+ entrySession: (item: import("../../shared/types").AnyObject) => void;
51
+ setSessionList: (list: import("../../shared/types").AnyObject[]) => void;
42
52
  init: () => Promise<void>;
43
53
  initWebSocket: () => void;
44
54
  subscribeSessionList: () => void;
@@ -1131,13 +1141,19 @@ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
1131
1141
  chatMainRef: import("vue").Ref<HTMLElement | undefined>;
1132
1142
  state: import("./src/types").IState;
1133
1143
  setMsgList: (list?: import("../../shared/types").AnyObject[]) => void;
1134
- page: number;
1144
+ currentInfo: {
1145
+ page: number;
1146
+ hasMore: boolean;
1147
+ };
1135
1148
  getHistoryRecord: () => Promise<void>;
1136
1149
  accessSession: () => Promise<void>;
1137
- showSystemMsg: (item: import("../../shared/types").AnyObject) => boolean;
1150
+ showMessage: (item: import("../../shared/types").AnyObject) => boolean;
1151
+ showTemplateMsg: (item: import("../../shared/types").AnyObject, type: "template" | "system") => boolean | undefined;
1152
+ isTemplate3: (content: import("../../shared/types").AnyObject) => boolean;
1138
1153
  needShowTime: (item: import("../../shared/types").AnyObject, index: number) => boolean;
1139
1154
  setScrollToButtom: () => Promise<void>;
1140
1155
  getIntervalMsgTime: (time: string) => string;
1156
+ resetInfo: () => void;
1141
1157
  NAvatar: any;
1142
1158
  NImageGroup: import("vue").DefineComponent<{
1143
1159
  showToolbar: {
@@ -1413,7 +1429,8 @@ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
1413
1429
  contentList: import("vue").ComputedRef<any>;
1414
1430
  toolbarButton: import("vue").ComputedRef<any>;
1415
1431
  bottomButton: import("vue").ComputedRef<any>;
1416
- contentParams: import("vue").ComputedRef<any>;
1432
+ dbParamsList: import("vue").ComputedRef<any>;
1433
+ messageTemplateData: import("vue").ComputedRef<any>;
1417
1434
  getSystemMsgContent: () => any;
1418
1435
  handleTemplateClick: (data: import("../../shared/types").AnyObject) => void;
1419
1436
  NButton: any;
@@ -1504,6 +1521,10 @@ declare const BiuniqueChat: SFCWithInstall<import("vue").DefineComponent<{
1504
1521
  MESSAGE_TYPE: typeof import("./src/constants").MESSAGE_TYPE;
1505
1522
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
1506
1523
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("template-click" | "unread-message-update")[], "template-click" | "unread-message-update", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
1524
+ token: {
1525
+ type: StringConstructor;
1526
+ required: true;
1527
+ };
1507
1528
  userId: {
1508
1529
  type: StringConstructor;
1509
1530
  required: true;
@@ -3,6 +3,10 @@ import { ChatSock } from './utils/chatSock';
3
3
  import { AnyObject } from '../../../shared/types';
4
4
  import { IState } from './types';
5
5
  declare const _default: import("vue").DefineComponent<{
6
+ token: {
7
+ type: StringConstructor;
8
+ required: true;
9
+ };
6
10
  userId: {
7
11
  type: StringConstructor;
8
12
  required: true;
@@ -13,6 +17,10 @@ declare const _default: import("vue").DefineComponent<{
13
17
  };
14
18
  }, {
15
19
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
20
+ token: {
21
+ type: StringConstructor;
22
+ required: true;
23
+ };
16
24
  userId: {
17
25
  type: StringConstructor;
18
26
  required: true;
@@ -42,6 +50,8 @@ declare const _default: import("vue").DefineComponent<{
42
50
  isUpdateSession: boolean;
43
51
  };
44
52
  reConnention: number;
53
+ entrySession: (item: AnyObject) => void;
54
+ setSessionList: (list: AnyObject[]) => void;
45
55
  init: () => Promise<void>;
46
56
  initWebSocket: () => void;
47
57
  subscribeSessionList: () => void;
@@ -1134,13 +1144,19 @@ declare const _default: import("vue").DefineComponent<{
1134
1144
  chatMainRef: import("vue").Ref<HTMLElement | undefined>;
1135
1145
  state: IState;
1136
1146
  setMsgList: (list?: AnyObject[]) => void;
1137
- page: number;
1147
+ currentInfo: {
1148
+ page: number;
1149
+ hasMore: boolean;
1150
+ };
1138
1151
  getHistoryRecord: () => Promise<void>;
1139
1152
  accessSession: () => Promise<void>;
1140
- showSystemMsg: (item: AnyObject) => boolean;
1153
+ showMessage: (item: AnyObject) => boolean;
1154
+ showTemplateMsg: (item: AnyObject, type: "template" | "system") => boolean | undefined;
1155
+ isTemplate3: (content: AnyObject) => boolean;
1141
1156
  needShowTime: (item: AnyObject, index: number) => boolean;
1142
1157
  setScrollToButtom: () => Promise<void>;
1143
1158
  getIntervalMsgTime: (time: string) => string;
1159
+ resetInfo: () => void;
1144
1160
  NAvatar: any;
1145
1161
  NImageGroup: import("vue").DefineComponent<{
1146
1162
  showToolbar: {
@@ -1416,7 +1432,8 @@ declare const _default: import("vue").DefineComponent<{
1416
1432
  contentList: import("vue").ComputedRef<any>;
1417
1433
  toolbarButton: import("vue").ComputedRef<any>;
1418
1434
  bottomButton: import("vue").ComputedRef<any>;
1419
- contentParams: import("vue").ComputedRef<any>;
1435
+ dbParamsList: import("vue").ComputedRef<any>;
1436
+ messageTemplateData: import("vue").ComputedRef<any>;
1420
1437
  getSystemMsgContent: () => any;
1421
1438
  handleTemplateClick: (data: AnyObject) => void;
1422
1439
  NButton: any;
@@ -1507,6 +1524,10 @@ declare const _default: import("vue").DefineComponent<{
1507
1524
  MESSAGE_TYPE: typeof import("./constants").MESSAGE_TYPE;
1508
1525
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
1509
1526
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("template-click" | "unread-message-update")[], "template-click" | "unread-message-update", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
1527
+ token: {
1528
+ type: StringConstructor;
1529
+ required: true;
1530
+ };
1510
1531
  userId: {
1511
1532
  type: StringConstructor;
1512
1533
  required: true;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as s,reactive as t,provide as o,onBeforeUnmount as n,openBlock as r,createElementBlock as i,normalizeStyle as a,unref as c,createVNode as u,withCtx as d,createBlock as m,Fragment as p,createElementVNode as l,renderSlot as h}from"vue";import{NConfigProvider as f,NSpin as v,NLayout as S,NLayoutContent as g}from"naive-ui";import b from"./components/SiderList.vue.js";import y from"./components/ChatHeader.vue.js";import j from"./components/ChatMain.vue.js";import I from"./components/ChatFooter.vue.js";import{ChatSock as _}from"./utils/chatSock.js";import{instanceAxios as k}from"./api/index.js";import{useTheme as M}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as L}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{SUBSCRIBE_MESSAGE_TYPE as U}from"./constants/index.js";import{InjectionIChatState as x,InjectionIChatStompClient as C,InjectionIChatEmits as N}from"./types/index.js";import"./utils/emoji.js";import{useSession as T}from"./hooks/useSession.js";const q={class:"c-biunique-chat__header"},E={class:"toolbar"};var O=e({__name:"Index",props:{userId:{type:String,required:!0},baseURL:{type:String,default:"/fdp-chat"}},emits:["template-click","unread-message-update"],setup(e,{expose:O,emit:V}){const w=e;k.defaults.baseURL=w.baseURL+"/chat";const A=M(),J=s(!1),R=s(),F=t({currentSessionItem:{},id:"",userInfo:{},msgList:[],currentMsg:{},isAppendMsg:!1,sessionList:[],isChangeSession:!1,updateSessionItem:{},isUpdateSession:!1});function H(){const e={headers:{UserId:w.userId},heartbeatFn:()=>{try{R.value.send("test")}catch(e){R.value.disconnect(),H()}},connectCb:()=>{console.log("连接成功"),R.value.subscribe("/user/topic/single",(({body:e})=>{try{console.log(JSON.parse(e),"订阅新增消息");const s=JSON.parse(e),{messageVo:t,sessionVo:o}=s;switch(s.event){case U.MESSAGE:if(s.messageVo.sender===F.userInfo.id)return;t.sender===F.currentSessionItem.receiver&&(F.currentMsg=t,F.isAppendMsg=!0),F.updateSessionItem={receiver:t.sender,lastMessageSendTime:t.sendTime,sortTime:t.sendTime,lastMessage:t.content.msg,chatMessageType:t.content.chatMessageType},F.isUpdateSession=!0;break;case U.NEW_SESSION:F.updateSessionItem=o,F.isUpdateSession=!0}}catch(e){console.log(e)}})),R.value.subscribe("/app/sessionList",(({body:e})=>{try{const s=JSON.parse(e),{currentUser:t,sessionVos:o}=s;if(console.log("body",s),F.userInfo=t,!(null==o?void 0:o.length))return;F.sessionList=o}catch(e){console.log(e)}}))},errorCb:(e,s)=>{console.log("断线了,正在重连...")}};R.value=new _("/fdp-chat/websocket",e)}return o(x,F),o(C,R),o(N,V),async function(){H()}(),n((()=>{var e;null==(e=R.value)||e.disconnect()})),O({getUnreadData:function(){return F.sessionList.filter((e=>L(e.unreadNum)&&e.unreadNum>0))},entrySession:T(F).entrySession}),(e,s)=>(r(),i("div",{class:"c-biunique-chat",style:a(c(A))},[u(c(f),{abstract:"",namespace:"c-biunique-chat__popover"},{default:d((()=>[J.value?(r(),m(c(v),{key:0,stroke:"#5585f5"})):(r(),i(p,{key:1},[l("div",q,[l("div",E,[h(e.$slots,"toolbar")])]),u(c(S),{class:"c-biunique-chat__body","has-sider":""},{default:d((()=>[u(b),u(c(g),{class:"chat-content"},{default:d((()=>[u(y),u(j),u(I)])),_:1}),h(e.$slots,"external")])),_:3})],64))])),_:3})],4))}});export{O as default};
1
+ import{defineComponent as e,ref as s,reactive as t,provide as o,onBeforeUnmount as r,openBlock as n,createElementBlock as i,normalizeStyle as a,unref as c,createVNode as u,withCtx as d,createBlock as m,Fragment as p,createElementVNode as l,renderSlot as h}from"vue";import{NConfigProvider as f,NSpin as S,NLayout as v,NLayoutContent as b}from"naive-ui";import g from"./components/SiderList.vue.js";import y from"./components/ChatHeader.vue.js";import k from"./components/ChatMain.vue.js";import j from"./components/ChatFooter.vue.js";import{ChatSock as I}from"./utils/chatSock.js";import{instanceAxios as _}from"./api/index.js";import{useTheme as L}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as U}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{SUBSCRIBE_MESSAGE_TYPE as x}from"./constants/index.js";import{InjectionIChatState as M,InjectionIChatStompClient as C,InjectionIChatEmits as N}from"./types/index.js";import"./utils/emoji.js";import{useSession as q}from"./hooks/useSession.js";const T={class:"c-biunique-chat__header"},A={class:"toolbar"};var E=e({__name:"Index",props:{token:{type:String,required:!0},userId:{type:String,required:!0},baseURL:{type:String,default:"/fdp-chat"}},emits:["template-click","unread-message-update"],setup(e,{expose:E,emit:O}){const V=e;_.defaults.baseURL=V.baseURL+"/chat",_.defaults.headers.Authorization="bearer"+V.token;const w=L(),J=s(!1),R=s(),F=t({currentSessionItem:{},id:"",userInfo:{},msgList:[],currentMsg:{},isAppendMsg:!1,sessionList:[],isChangeSession:!1,updateSessionItem:{},isUpdateSession:!1});o(M,F),o(C,R),o(N,O);const{entrySession:H,setSessionList:$}=q(F);function z(){const e={headers:{AccessToken:V.token,UserId:V.userId},heartbeatFn:()=>{try{R.value.send("test")}catch(e){R.value.disconnect(),z()}},connectCb:()=>{console.log("连接成功"),R.value.subscribe("/user/topic/single",(({body:e})=>{try{console.log(JSON.parse(e),"订阅新增消息");const s=JSON.parse(e),{messageVo:t,sessionVo:o}=s;switch(s.event){case x.MESSAGE:if(s.messageVo.sender===F.userInfo.id)return;t.sender===F.currentSessionItem.receiver&&(F.currentMsg=t,F.isAppendMsg=!0),F.updateSessionItem={receiver:t.sender,lastMessageSendTime:t.sendTime,sortTime:t.sendTime,lastMessage:t.content},F.isUpdateSession=!0;break;case x.NEW_SESSION:F.updateSessionItem=o,F.isUpdateSession=!0}}catch(e){console.log(e)}})),R.value.subscribe("/app/sessionList",(({body:e})=>{try{const s=JSON.parse(e),{currentUser:t,sessionVos:o}=s;if(F.userInfo=t,!(null==o?void 0:o.length))return;$(o)}catch(e){console.log(e)}}))},errorCb:(e,s)=>{console.log("断线了,正在重连...")}};R.value=new I("/fdp-chat/websocket",e)}return async function(){z()}(),r((()=>{var e;null==(e=R.value)||e.disconnect()})),E({getUnreadData:function(){return F.sessionList.filter((e=>U(e.unreadNum)&&e.unreadNum>0))},entrySession:H}),(e,s)=>(n(),i("div",{class:"c-biunique-chat",style:a(c(w))},[u(c(f),{abstract:"",namespace:"c-biunique-chat__popover"},{default:d((()=>[J.value?(n(),m(c(S),{key:0,stroke:"#5585f5"})):(n(),i(p,{key:1},[l("div",T,[l("div",A,[h(e.$slots,"toolbar")])]),u(c(v),{class:"c-biunique-chat__body","has-sider":""},{default:d((()=>[u(g),u(c(b),{class:"chat-content"},{default:d((()=>[u(y),u(k),u(j)])),_:1}),h(e.$slots,"external")])),_:3})],64))])),_:3})],4))}});export{E as default};
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,withDirectives as n,openBlock as s,createElementBlock as i,normalizeStyle as a,unref as o,createElementVNode as l,createVNode as r,withCtx as c,createCommentVNode as u,Fragment as d,renderList as p,createBlock as f,createTextVNode as g,toDisplayString as m,vShow as h}from"vue";import{NPopover as v,NTooltip as y,NUpload as M,NUploadTrigger as k,NButton as T}from"naive-ui";import{format as x}from"date-fns";import{useState as C}from"../hooks/useState.js";import{useSession as b}from"../hooks/useSession.js";import{images as E,alt as I}from"../utils/emoji.js";import{MESSAGE_TYPE as w}from"../constants/index.js";import{uploadFileApi as _}from"../api/index.js";const S={class:"tool-box"},j=l("span",null,[l("i",{class:"chat--iconfont chat--icon-face"})],-1),L={class:"emoji-box"},F=l("span",null,"默认表情",-1),K={class:"list-box"},D=["onClick"],H=["src"],J=[l("i",{class:"chat--iconfont chat--icon-good"},null,-1)],N=["onClick"],O=[l("i",{class:"chat--iconfont chat--icon-image"},null,-1)],A=["onClick"],G=[l("i",{class:"chat--iconfont chat--icon-folder"},null,-1)],X={class:"btn-box"},z=l("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var B=t({__name:"ChatFooter",setup(t){const B=e(),R=e(""),{state:U,stompClient:q}=C(),{setCurrentSessionItem:P}=b(U);function Q(t){["Enter"].includes(t.key)&&(function(t){return t.altKey||t.ctrlKey||t.metaKey||t.shiftKey}(t)||(t.preventDefault(),Y()))}function V(){var t,e;R.value=(null==(e=null==(t=B.value)?void 0:t.innerText)?void 0:e.trim())||""}async function W(t,e){console.log(W,t);const{file:n,name:s}=t.file,i=new FormData;i.append("sender",U.userInfo.id),i.append("file",n);const a=await _(i);if(!a)return console.log("上传失败");Z({chatMessageType:e,msg:e===w.FILE?s:a,url:a})}function Y(){if(!(R.value.length>2e3))return R.value?void Z({msg:R.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function Z(t){const{chatMessageType:e=w.TEXT,msg:n,url:s}=t,i={msg:n,chatMessageType:e};e===w.FILE&&(i.fileUrl=s),[w.TEXT,w.BLEND].includes(e)&&(B.value.innerHTML="",R.value="");const a=x(new Date,"yyyy-MM-dd HH:mm:ss");U.currentMsg={content:i,sender:U.userInfo.id,id:"",sendTime:a,sending:!0,fail:!1},U.isAppendMsg=!0,P({lastMessageSendTime:a,lastMessage:i.msg,sortTime:a,chatMessageType:i.chatMessageType}),U.isChangeSession=!0;try{q.value.send("/app/chat/send",{},JSON.stringify({chatType:"SINGLE",content:i,receiver:U.currentSessionItem.receiver})),U.currentMsg={...U.currentMsg,fail:!1}}catch(t){U.currentMsg={...U.currentMsg,fail:!0}}finally{U.currentMsg={...U.currentMsg,sending:!1}}}return(t,e)=>n((s(),i("section",{class:"chat-footer",style:a({cursor:o(U).id?"default":"not-allowed"})},[l("div",S,[r(o(v),{placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show"},{trigger:c((()=>[j])),default:c((()=>[l("div",L,[u(' <span>最近使用</span>\r\n\t\t\t\t\t<div class="list-box">\r\n\t\t\t\t\t\t<template v-for="(img, index) in images" :key="index">\r\n\t\t\t\t\t\t\t<i>\r\n\t\t\t\t\t\t\t\t<img :src="img" />\r\n\t\t\t\t\t\t\t</i>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</div> '),F,l("div",K,[(s(!0),i(d,null,p(o(E),((t,e)=>(s(),i(d,{key:e},[e>0?(s(),f(o(y),{key:0,"show-arrow":!1,trigger:"hover"},{trigger:c((()=>[l("i",{onClick:()=>Z({chatMessageType:o(w).EMOJI,msg:e})},[l("img",{src:t},null,8,H)],8,D)])),default:c((()=>[g(" "+m(o(I)[e-1]||"微笑"),1)])),_:2},1024)):u("v-if",!0)],64)))),128))])])])),_:1}),l("span",{onClick:e[0]||(e[0]=()=>Z({chatMessageType:o(w).EMOJI,msg:0}))},J),r(o(M),{abstract:"",multiple:"",accept:"image/*",onChange:e[1]||(e[1]=t=>W(t,o(w).IMAGE))},{default:c((()=>[r(o(k),{abstract:""},{default:c((({handleClick:t})=>[l("span",{onClick:t},O,8,N)])),_:1})])),_:1}),r(o(M),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:e[2]||(e[2]=t=>W(t,o(w).FILE))},{default:c((()=>[r(o(k),{abstract:""},{default:c((({handleClick:t})=>[l("span",{onClick:t},G,8,A)])),_:1})])),_:1})]),n(l("div",{ref_key:"inputRef",ref:B,class:"input-box",contenteditable:"",onKeydown:Q,onInput:V},null,544),[[h,o(U).id]]),l("div",X,[z,r(o(T),{type:"primary",round:"",disabled:!R.value,onClick:Y},{default:c((()=>[g("发送")])),_:1},8,["disabled"])])],4)),[[h,o(U).id]])}});export{B as default};
1
+ import{defineComponent as t,ref as e,withDirectives as n,openBlock as s,createElementBlock as i,normalizeStyle as a,unref as o,createElementVNode as l,createVNode as c,withCtx as r,createCommentVNode as u,Fragment as d,renderList as f,createBlock as p,createTextVNode as m,toDisplayString as g,vShow as h}from"vue";import{NPopover as v,NTooltip as y,NUpload as M,NUploadTrigger as k,NButton as x}from"naive-ui";import{format as C}from"date-fns";import{useState as T}from"../hooks/useState.js";import{useSession as b}from"../hooks/useSession.js";import{images as E,alt as I}from"../utils/emoji.js";import{MESSAGE_TYPE as w}from"../constants/index.js";import{uploadFileApi as _}from"../api/index.js";const S={class:"tool-box"},j=l("span",null,[l("i",{class:"chat--iconfont chat--icon-face"})],-1),L={class:"emoji-box"},F=l("span",null,"默认表情",-1),K={class:"list-box"},D=["onClick"],H=["src"],J=[l("i",{class:"chat--iconfont chat--icon-good"},null,-1)],N=["onClick"],O=[l("i",{class:"chat--iconfont chat--icon-image"},null,-1)],A=["onClick"],G=[l("i",{class:"chat--iconfont chat--icon-folder"},null,-1)],X={class:"btn-box"},z=l("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var B=t({__name:"ChatFooter",setup(t){const B=e(),R=e(""),{state:U,stompClient:q}=T(),{setCurrentSessionItem:P}=b(U);function Q(t){["Enter"].includes(t.key)&&(function(t){return t.altKey||t.ctrlKey||t.metaKey||t.shiftKey}(t)||(t.preventDefault(),Y()))}function V(){var t,e;R.value=(null==(e=null==(t=B.value)?void 0:t.innerText)?void 0:e.trim())||""}async function W(t,e){console.log(W,t);const{file:n,name:s}=t.file,i=new FormData;i.append("sender",U.userInfo.id),i.append("file",n);const a=await _(i);if(!a)return console.log("上传失败");Z({chatMessageType:e,msg:e===w.FILE?s:a,url:a})}function Y(){if(!(R.value.length>2e3))return R.value?void Z({msg:R.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function Z(t){const{chatMessageType:e=w.TEXT,msg:n,url:s}=t,i={msg:n,chatMessageType:e};e===w.FILE&&(i.fileUrl=s),[w.TEXT,w.BLEND].includes(e)&&(B.value.innerHTML="",R.value="");const a=C(new Date,"yyyy-MM-dd HH:mm:ss");U.currentMsg={content:i,sender:U.userInfo.id,id:"",sendTime:a,sending:!0,fail:!1},U.isAppendMsg=!0,P({lastMessageSendTime:a,lastMessage:i,sortTime:a}),U.isChangeSession=!0;try{q.value.send("/app/chat/send",{},JSON.stringify({chatType:"SINGLE",content:i,receiver:U.currentSessionItem.receiver})),U.currentMsg={...U.currentMsg,fail:!1}}catch(t){U.currentMsg={...U.currentMsg,fail:!0}}finally{U.currentMsg={...U.currentMsg,sending:!1}}}return(t,e)=>n((s(),i("section",{class:"chat-footer",style:a({cursor:o(U).id?"default":"not-allowed"})},[l("div",S,[c(o(v),{placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show"},{trigger:r((()=>[j])),default:r((()=>[l("div",L,[u(' <span>最近使用</span>\n\t\t\t\t\t<div class="list-box">\n\t\t\t\t\t\t<template v-for="(img, index) in images" :key="index">\n\t\t\t\t\t\t\t<i>\n\t\t\t\t\t\t\t\t<img :src="img" />\n\t\t\t\t\t\t\t</i>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</div> '),F,l("div",K,[(s(!0),i(d,null,f(o(E),((t,e)=>(s(),i(d,{key:e},[e>0?(s(),p(o(y),{key:0,"show-arrow":!1,trigger:"hover"},{trigger:r((()=>[l("i",{onClick:()=>Z({chatMessageType:o(w).EMOJI,msg:e})},[l("img",{src:t},null,8,H)],8,D)])),default:r((()=>[m(" "+g(o(I)[e-1]||"微笑"),1)])),_:2},1024)):u("v-if",!0)],64)))),128))])])])),_:1}),l("span",{onClick:e[0]||(e[0]=()=>Z({chatMessageType:o(w).EMOJI,msg:0}))},J),c(o(M),{abstract:"",multiple:"",accept:"image/*",onChange:e[1]||(e[1]=t=>W(t,o(w).IMAGE))},{default:r((()=>[c(o(k),{abstract:""},{default:r((({handleClick:t})=>[l("span",{onClick:t},O,8,N)])),_:1})])),_:1}),c(o(M),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:e[2]||(e[2]=t=>W(t,o(w).FILE))},{default:r((()=>[c(o(k),{abstract:""},{default:r((({handleClick:t})=>[l("span",{onClick:t},G,8,A)])),_:1})])),_:1})]),n(l("div",{ref_key:"inputRef",ref:B,class:"input-box",contenteditable:"",onKeydown:Q,onInput:V},null,544),[[h,o(U).id]]),l("div",X,[z,c(o(x),{type:"primary",round:"",disabled:!R.value,onClick:Y},{default:r((()=>[m("发送")])),_:1},8,["disabled"])])],4)),[[h,o(U).id]])}});export{B as default};
@@ -4,13 +4,19 @@ declare const _default: import("vue").DefineComponent<{}, {
4
4
  chatMainRef: import("vue").Ref<HTMLElement | undefined>;
5
5
  state: import("../types").IState;
6
6
  setMsgList: (list?: AnyObject[]) => void;
7
- page: number;
7
+ currentInfo: {
8
+ page: number;
9
+ hasMore: boolean;
10
+ };
8
11
  getHistoryRecord: () => Promise<void>;
9
12
  accessSession: () => Promise<void>;
10
- showSystemMsg: (item: AnyObject) => boolean;
13
+ showMessage: (item: AnyObject) => boolean;
14
+ showTemplateMsg: (item: AnyObject, type: 'system' | 'template') => boolean | undefined;
15
+ isTemplate3: (content: AnyObject) => boolean;
11
16
  needShowTime: (item: AnyObject, index: number) => boolean;
12
17
  setScrollToButtom: () => Promise<void>;
13
18
  getIntervalMsgTime: (time: string) => string;
19
+ resetInfo: () => void;
14
20
  NAvatar: any;
15
21
  NImageGroup: import("vue").DefineComponent<{
16
22
  showToolbar: {
@@ -286,7 +292,8 @@ declare const _default: import("vue").DefineComponent<{}, {
286
292
  contentList: import("vue").ComputedRef<any>;
287
293
  toolbarButton: import("vue").ComputedRef<any>;
288
294
  bottomButton: import("vue").ComputedRef<any>;
289
- contentParams: import("vue").ComputedRef<any>;
295
+ dbParamsList: import("vue").ComputedRef<any>;
296
+ messageTemplateData: import("vue").ComputedRef<any>;
290
297
  getSystemMsgContent: () => any;
291
298
  handleTemplateClick: (data: AnyObject) => void;
292
299
  NButton: any;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,watch as s,openBlock as n,createElementBlock as i,createVNode as o,unref as r,withCtx as a,Fragment as c,renderList as m,normalizeClass as l,toDisplayString as u,createCommentVNode as f,createBlock as d,createElementVNode as p}from"vue";import{NImageGroup as g,NAvatar as y,NImage as v}from"naive-ui";import{useInfiniteScroll as T,promiseTimeout as M}from"@vueuse/core";import{isToday as h,format as _,isYesterday as H}from"date-fns";import{getHistoryRecordApi as k}from"../api/index.js";import{useState as E}from"../hooks/useState.js";import{isNumber as L}from"lodash-es";import A from"./PersonProfile.vue.js";import j from"./MessageTemplate.vue.js";import{images as I}from"../utils/emoji.js";import{MESSAGE_TYPE as w}from"../constants/index.js";const D={key:0,class:"time"},P={class:"message-box"},x=["data-time"],F=["innerHTML"],b=["src"],J=["href"];var K=e({__name:"ChatMain",setup(e){const K=t(),{state:O,setMsgList:R}=E();let S=1;async function Y(){try{const e=await k({sessionKey:O.currentSessionItem.sessionKey,page:S});if(console.log("getHistoryRecord",e,S),!Array.isArray(e))return;if(0===e.length)return console.log("没有更多消息了");R(S>1?[...e,...O.msgList]:e),1===S&&G()}catch(e){console.log(e)}}function z(e){var t;const{chatMessageType:s,msgTemplate:n}=e.content;return s===w.TEMPLATE&&2==(null==(t=null==n?void 0:n.setting)?void 0:t.style.id)}function C(e,t){var s;const n=L(e.sendTime)?e.sendTime:Date.parse(e.sendTime),i=null==(s=O.msgList[t-1])?void 0:s.sendTime;return n-(0===t?0:L(i)?i:Date.parse(i))>3e5}async function G(){var e,t,s;await M(50);const n=null!=(t=null==(e=K.value)?void 0:e.scrollHeight)?t:0;null==(s=K.value)||s.scrollTo({top:n})}function U(e){const t=new Date(e),s=Date.now()-t.getTime();if(s<6e4)return"刚刚";if(s<36e5)return Math.ceil(s/1e3/60)+"分钟前";if(h(t))return"今天 "+_(t,"HH:mm");if(H(t))return"昨天 "+_(t,"HH:mm");{const e=t.getFullYear(),s=(new Date).getFullYear();return _(t,e<s?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}}return T(K,(()=>{S++,Y()}),{distance:20,direction:"top"}),s((()=>O.id),(e=>{e&&(S=1,Y())}),{immediate:!0}),s((()=>O.isAppendMsg),(e=>{e&&(R([...O.msgList,O.currentMsg]),O.isAppendMsg=!1,G())}),{immediate:!0}),(e,t)=>(n(),i("div",{class:"chat-main",ref_key:"chatMainRef",ref:K},[o(r(g),{"show-toolbar-tooltip":""},{default:a((()=>[(n(!0),i(c,null,m(r(O).msgList,((e,t)=>(n(),i("div",{class:l(["message-item",{"message-item--mine":e.sender==r(O).userInfo.id}]),key:t},[C(e,t)?(n(),i("p",D,u(U(e.sendTime)),1)):f("v-if",!0),z(e)?(n(),d(j,{key:1,data:e},null,8,["data"])):f("v-if",!0),p("div",P,[o(A,{"user-info":e.sender==r(O).userInfo.id?r(O).userInfo:e},{trigger:a((()=>[o(r(y),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-info"]),e.content?(n(),i("div",{key:0,class:l(["content",{emoji:e.content.chatMessageType===r(w).EMOJI},{template:e.content.chatMessageType===r(w).TEMPLATE}]),"data-time":e.__time},[e.content.chatMessageType===r(w).TEXT?(n(),i("pre",{key:0,innerHTML:e.__content},null,8,F)):f("v-if",!0),e.content.chatMessageType===r(w).EMOJI?(n(),i("img",{key:1,src:r(I)[e.__content]},null,8,b)):f("v-if",!0),e.content.chatMessageType===r(w).TEMPLATE?(n(),d(j,{key:2,data:e},null,8,["data"])):f("v-if",!0),e.content.chatMessageType===r(w).IMAGE?(n(),d(r(v),{key:3,width:"240",src:e.__content},null,8,["src"])):f("v-if",!0),e.content.chatMessageType===r(w).FILE?(n(),i("a",{key:4,href:e.content.fileUrl},u(e.__content),9,J)):f("v-if",!0)],10,x)):f("v-if",!0)])],2)))),128))])),_:1})],512))}});export{K as default};
1
+ import{defineComponent as e,ref as t,watch as s,openBlock as n,createElementBlock as i,createVNode as a,unref as o,withCtx as r,Fragment as l,renderList as m,normalizeClass as c,toDisplayString as u,createCommentVNode as d,createBlock as f}from"vue";import{NImageGroup as p,NAvatar as g,NImage as y}from"naive-ui";import{isToday as v,format as M,isYesterday as T}from"date-fns";import{getHistoryRecordApi as h}from"../api/index.js";import{useState as _}from"../hooks/useState.js";import{isNumber as k}from"lodash-es";import E from"./PersonProfile.vue.js";import L from"./MessageTemplate.vue.js";import{images as H}from"../utils/emoji.js";import{MESSAGE_TYPE as j}from"../constants/index.js";import{useScrollLoading as A}from"../hooks/useScrollLoading.js";const I={key:0,class:"time"},w={key:2,class:"message-box"},P=["data-time"],D=["innerHTML"],b=["src"],x=["href"];var F=e({__name:"ChatMain",setup(e){const F=t(),{state:O,setMsgList:S}=_(),J={page:0,hasMore:!0};async function K(){try{if(!J.hasMore)return;J.page++;const e=await h({sessionKey:O.currentSessionItem.sessionKey,page:J.page});if(!Array.isArray(e)||0===e.length)return J.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");S(J.page>1?[...e,...O.msgList]:e)}catch(e){console.log(e)}}function Y(e){const{chatMessageType:t,messageTemplate:s}=e.content;return t!==j.TEMPLATE||!!s}function z(e,t){var s,n;const{chatMessageType:i,messageTemplate:a}=e.content;if(i===j.TEMPLATE)return"system"===t?2==(null==(s=null==a?void 0:a.setting)?void 0:s.style.id):2!=(null==(n=null==a?void 0:a.setting)?void 0:n.style.id)}function C(e){var t,s;const{chatMessageType:n,messageTemplate:i}=e;return n===j.TEMPLATE&&3==(null==(s=null==(t=null==i?void 0:i.setting)?void 0:t.style)?void 0:s.id)}function G(e,t){var s;const n=k(e.sendTime)?e.sendTime:Date.parse(e.sendTime),i=null==(s=O.msgList[t-1])?void 0:s.sendTime;return n-(0===t?0:k(i)?i:Date.parse(i))>3e5}function R(e){const t=new Date(e),s=Date.now()-t.getTime();if(s<6e4)return"刚刚";if(s<36e5)return Math.ceil(s/1e3/60)+"分钟前";if(v(t))return"今天 "+M(t,"HH:mm");if(T(t))return"昨天 "+M(t,"HH:mm");{const e=t.getFullYear(),s=(new Date).getFullYear();return M(t,e<s?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}}return A(F,(()=>{K()}),"top"),s((()=>O.id),(e=>{e&&(Object.assign(J,{page:0,hasMore:!0}),K())}),{immediate:!0}),s((()=>O.isAppendMsg),(e=>{e&&(S([...O.msgList,O.currentMsg]),O.isAppendMsg=!1,async function(){var e,t,s;const n=null!=(t=null==(e=F.value)?void 0:e.scrollHeight)?t:0;null==(s=F.value)||s.scrollTo({top:n,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(n(),i("div",{class:"chat-main",ref_key:"chatMainRef",ref:F},[a(o(p),{"show-toolbar-tooltip":""},{default:r((()=>[(n(!0),i(l,null,m(o(O).msgList,((e,t)=>(n(),i(l,{key:t},[Y(e)?(n(),i("div",{key:0,class:c(["message-item",{"message-item--mine":e.sender==o(O).userInfo.id}])},[G(e,t)?(n(),i("p",I,u(R(e.sendTime)),1)):d("v-if",!0),z(e,"system")?(n(),f(L,{key:1,data:e},null,8,["data"])):(n(),i("div",w,[a(E,{"user-info":e.sender==o(O).userInfo.id?o(O).userInfo:e},{trigger:r((()=>[a(o(g),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-info"]),e.content?(n(),i("div",{key:0,class:c(["content",{emoji:e.content.chatMessageType===o(j).EMOJI,template:e.content.chatMessageType===o(j).TEMPLATE,"template--3":C(e.content)}]),"data-time":e.__time},[e.content.chatMessageType===o(j).TEXT?(n(),i("pre",{key:0,innerHTML:e.__content},null,8,D)):d("v-if",!0),e.content.chatMessageType===o(j).EMOJI?(n(),i("img",{key:1,src:o(H)[e.__content]},null,8,b)):d("v-if",!0),z(e,"template")?(n(),f(L,{key:2,data:e},null,8,["data"])):d("v-if",!0),e.content.chatMessageType===o(j).IMAGE?(n(),f(o(y),{key:3,width:"240",src:e.__content},null,8,["src"])):d("v-if",!0),e.content.chatMessageType===o(j).FILE?(n(),i("a",{key:4,href:e.content.fileUrl},u(e.__content),9,x)):d("v-if",!0)],10,P)):d("v-if",!0)]))],2)):d("v-if",!0)],64)))),128))])),_:1})],512))}});export{F as default};
@@ -19,7 +19,8 @@ declare const _default: import("vue").DefineComponent<{
19
19
  contentList: import("vue").ComputedRef<any>;
20
20
  toolbarButton: import("vue").ComputedRef<any>;
21
21
  bottomButton: import("vue").ComputedRef<any>;
22
- contentParams: import("vue").ComputedRef<any>;
22
+ dbParamsList: import("vue").ComputedRef<any>;
23
+ messageTemplateData: import("vue").ComputedRef<any>;
23
24
  getSystemMsgContent: () => any;
24
25
  handleTemplateClick: (data: AnyObject) => void;
25
26
  NButton: any;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,openBlock as l,createElementBlock as s,Fragment as o,unref as a,createElementVNode as i,toDisplayString as n,withModifiers as c,createBlock as m,createCommentVNode as r,renderList as p,withCtx as d,createTextVNode as u,createVNode as v}from"vue";import{NIcon as f,NButton as y}from"naive-ui";import{ChevronForwardOutline as g,AlertCircleSharp as k}from"@vicons/ionicons5";import _ from"../../../../shared/components/SvgIcon/SvgIcon.vue.js";import{useState as b}from"../hooks/useState.js";const h={class:"default-msg-template__header"},C={class:"title"},j={class:"default-msg-template__body"},S=["src"],T={class:"template-content"},M={key:0,class:"default-msg-template__btn-group"},x=i("i",{class:"chat--iconfont chat--icon-more"},null,-1),B={key:1,class:"describe-msg-template"},H={class:"describe-msg-template__header"},I={class:"describe-msg-template__body"},L={class:"title"},q={class:"txt"},z=i("div",{class:"describe-msg-template__footer"},[u(" 展开全部 "),i("i",{class:"chat--iconfont chat--icon-more"})],-1),O={key:2,class:"system-msg-template"},P=["innerHTML"],R=["onClick"];var w=e({__name:"MessageTemplate",props:{data:{type:Object,required:!0}},setup(e){const w=e,{emit:A}=b(),D=t((()=>w.data.content.msgTemplate.setting)),E=t((()=>D.value.serverSetting)),F=t((()=>(E.value.topRightButton||[])[0])),G=t((()=>(D.value.content||"").split("##").filter((e=>e)))),J=t((()=>E.value.toolbar_button)),K=t((()=>(E.value.bottomButton||[])[0])),N=t((()=>D.value.contentParams));function Q(e){A("template-click",e,w.data)}return(e,t)=>(l(),s(o,null,[1==a(D).style.id?(l(),s("div",{key:0,class:"default-msg-template",onClick:t[2]||(t[2]=()=>Q(a(E)))},[i("div",h,[i("span",C,n(a(D).title),1),a(F)?(l(),s("span",{key:0,class:"btn",onClick:t[0]||(t[0]=c((()=>Q(a(F))),["stop"]))},n(a(F).title),1)):a(E).address?(l(),m(a(f),{key:1,component:a(g),color:"#969696"},null,8,["component"])):r("v-if",!0)]),i("div",j,[a(D).style.icon?(l(),m(a(_),{key:0,class:"logo","icon-class":a(D).style.icon},null,8,["icon-class"])):a(D).style.image?(l(),s("img",{key:1,class:"logo",src:a(D).style.image},null,8,S)):r("v-if",!0),i("div",T,[(l(!0),s(o,null,p(a(G),(e=>(l(),s("div",{key:e},n(e),1)))),128))])]),a(J)?(l(),s("div",M,[(l(!0),s(o,null,p(a(J),((e,t)=>(l(),m(a(y),{type:"primary",round:"",ghost:"",onClick:c((()=>Q(e)),["stop"]),key:t},{default:d((()=>[u(n(e.title),1)])),_:2},1032,["onClick"])))),128))])):r("v-if",!0),a(K)?(l(),s("div",{key:1,class:"default-msg-template__footer",onClick:t[1]||(t[1]=c((()=>Q(a(K))),["stop"]))},[u(n(a(K).title)+" ",1),x])):r("v-if",!0)])):r("v-if",!0),3==a(D).style.id?(l(),s("div",B,[i("div",H,n(a(D).title),1),i("div",I,[(l(!0),s(o,null,p(a(N),((e,t)=>(l(),s(o,{key:t},[i("div",L,n(e.p_name),1),i("div",q,n(e.p_value),1)],64)))),128))]),z])):r("v-if",!0),2==a(D).style.id?(l(),s("div",O,[v(a(f),{component:a(k),color:"#ffc200",size:18},null,8,["component"]),i("span",{innerHTML:G.value.join("<br>")},null,8,P),(l(!0),s(o,null,p(a(J),((e,t)=>(l(),s("span",{class:"btn",onClick:()=>Q(e),key:t},n(e.title),9,R)))),128))])):r("v-if",!0)],64))}});export{w as default};
1
+ import{defineComponent as e,computed as t,openBlock as s,createElementBlock as l,Fragment as a,unref as o,createElementVNode as i,toDisplayString as n,withModifiers as c,createBlock as m,createCommentVNode as r,renderList as d,withCtx as p,createTextVNode as u,createVNode as v}from"vue";import{NIcon as f,NButton as y}from"naive-ui";import{ChevronForwardOutline as g,AlertCircleSharp as k}from"@vicons/ionicons5";import _ from"../../../../shared/components/SvgIcon/SvgIcon.vue.js";import{useState as b}from"../hooks/useState.js";const h={class:"default-msg-template__header"},C={class:"title"},T={class:"default-msg-template__body"},j=["src"],S={class:"template-content"},L={key:0,class:"default-msg-template__btn-group"},M=i("i",{class:"chat--iconfont chat--icon-more"},null,-1),x={key:1,class:"describe-msg-template"},B={class:"describe-msg-template__header"},H={class:"describe-msg-template__body"},I={class:"title"},q={class:"txt"},z=i("div",{class:"describe-msg-template__footer"},[u(" 展开全部 "),i("i",{class:"chat--iconfont chat--icon-more"})],-1),D={key:2,class:"system-msg-template"},O=["innerHTML"],P=["onClick"];var R=e({__name:"MessageTemplate",props:{data:{type:Object,required:!0}},setup(e){const R=e,{emit:w}=b(),A=t((()=>R.data.content.messageTemplate.setting)),E=t((()=>A.value.serverSetting)),F=t((()=>(E.value.topRightButton||[])[0])),G=t((()=>(A.value.content||"").split("##").filter((e=>e)))),J=t((()=>E.value.toolbar_button)),K=t((()=>(E.value.bottomButton||[])[0])),N=t((()=>A.value.dbParamsList)),Q=t((()=>R.data.content.messageTemplateData));function U(e){w("template-click",e,R.data)}return(e,t)=>(s(),l(a,null,[1==o(A).style.id?(s(),l("div",{key:0,class:"default-msg-template",onClick:t[2]||(t[2]=()=>U(o(E)))},[i("div",h,[i("span",C,n(o(A).title),1),o(F)?(s(),l("span",{key:0,class:"btn",onClick:t[0]||(t[0]=c((()=>U(o(F))),["stop"]))},n(o(F).title),1)):o(E).address?(s(),m(o(f),{key:1,component:o(g),color:"#969696"},null,8,["component"])):r("v-if",!0)]),i("div",T,[o(A).style.icon?(s(),m(o(_),{key:0,class:"logo","icon-class":o(A).style.icon},null,8,["icon-class"])):o(A).style.image?(s(),l("img",{key:1,class:"logo",src:o(A).style.image},null,8,j)):r("v-if",!0),i("div",S,[(s(!0),l(a,null,d(o(G),(e=>(s(),l("div",{key:e},n(e),1)))),128))])]),o(J)?(s(),l("div",L,[(s(!0),l(a,null,d(o(J),((e,t)=>(s(),m(o(y),{type:"primary",round:"",ghost:"",onClick:c((()=>U(e)),["stop"]),key:t},{default:p((()=>[u(n(e.title),1)])),_:2},1032,["onClick"])))),128))])):r("v-if",!0),o(K)?(s(),l("div",{key:1,class:"default-msg-template__footer",onClick:t[1]||(t[1]=c((()=>U(o(K))),["stop"]))},[u(n(o(K).title)+" ",1),M])):r("v-if",!0)])):r("v-if",!0),3==o(A).style.id?(s(),l("div",x,[i("div",B,n(o(A).title),1),i("div",H,[(s(!0),l(a,null,d(o(N),((e,t)=>(s(),l(a,{key:t},[i("div",I,n(e.desc),1),i("div",q,n(o(Q)[e.p_name]),1)],64)))),128))]),z])):r("v-if",!0),2==o(A).style.id?(s(),l("div",D,[v(o(f),{component:o(k),color:"#ffc200",size:18},null,8,["component"]),i("span",{innerHTML:G.value.join("<br>")},null,8,O),(s(!0),l(a,null,d(o(J),((e,t)=>(s(),l("span",{class:"btn",onClick:()=>U(e),key:t},n(e.title),9,P)))),128))])):r("v-if",!0)],64))}});export{R as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as s,computed as i,watch as a,withDirectives as n,openBlock as t,createElementBlock as l,normalizeStyle as r,unref as o,createBlock as u,createCommentVNode as d,createElementVNode as v,Fragment as c,renderList as m,withCtx as p,createTextVNode as f,toDisplayString as k,normalizeClass as h,createVNode as y,vShow as _}from"vue";import{NSpin as S,NTag as g,NAvatar as b,NBadge as x}from"naive-ui";import{useState as M}from"../hooks/useState.js";import{useSession as L}from"../hooks/useSession.js";import{vFlexibleResize as C}from"../../../../shared/directive/flexibleResize.js";import{listSort as j,formatTime as T}from"../utils/index.js";const w={class:"sider-list__filter box-shadow"},I=["onClick"],N={class:"avatar-right"},R={class:"name"},z={class:"msg-tip"},H={class:"msg-tip__content"},U=["innerHTML"];var B=e({__name:"SiderList",setup(e){const B="all",E="unread",O=s(300),V=s();s("");const q=s(!1),A=s([{label:"全部",key:B},{label:"未读",key:E}]),D=s("all"),{state:F,emit:G}=M(),{entrySession:J,unreadTotal:K}=L(F),P=i((()=>Math.min(Math.max(O.value,240),360))),Q=i((()=>j(F.sessionList)));function W(e){!e.id||F.sessionList.map((e=>e.id)).includes(e.id)?F.sessionList.forEach((s=>{s.receiver===e.receiver&&(Object.assign(s,e),e.receiver!==F.currentSessionItem.receiver&&s.unreadNum++)})):F.sessionList.push(e)}function X({distance:e}){O.value=O.value+e}function Y(e,s=o(D)){var i;return s===B||(s===E?(null!=(i=e.unreadNum)?i:0)>0:void 0)}return a([()=>F.isChangeSession,()=>F.isUpdateSession],(([e,s])=>{e&&(W(F.currentSessionItem),F.isChangeSession=!1),s&&(W(F.updateSessionItem),F.isUpdateSession=!1)}),{immediate:!0}),a((()=>K.value),(e=>{const s=Q.value.filter((e=>Y(e,E)));G("unread-message-update",e,s)})),(e,s)=>n((t(),l("section",{class:"sider-list",style:r({width:o(P)+"px"})},[q.value?(t(),u(o(S),{key:0,stroke:"#5585f5"})):d("v-if",!0),d(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),v("div",w,[(t(!0),l(c,null,m(A.value,(e=>(t(),u(o(g),{type:D.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return s=e.key,void(D.value=s);var s}},{default:p((()=>[f(k(e.label)+"("+k(o(K))+") ",1)])),_:2},1032,["type","onClick"])))),128))]),v("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:V},[(t(!0),l(c,null,m(o(Q),((e,s)=>n((t(),l("div",{key:s,onClick:()=>o(J)(e),class:h(["sider-list__box__item",{active:e.id===o(F).id}])},[y(o(b),{round:"",size:"large",src:e.avatar},null,8,["src"]),v("div",N,[v("div",R,[v("h4",null,k(e.name),1),v("span",null,k(o(T)(e.lastMessageSendTime).siderMsgTime),1)]),v("div",z,[v("div",H,[v("div",{innerHTML:e.lastMessage},null,8,U)]),y(o(x),{value:e.unreadNum},null,8,["value"])])])],10,I)),[[_,Y(e)]]))),128))],512)],4)),[[o(C),{mode:"VR",onMove:X}]])}});export{B as default};
1
+ import{defineComponent as e,ref as s,computed as i,watch as n,withDirectives as a,openBlock as t,createElementBlock as l,normalizeStyle as r,unref as o,createBlock as u,createCommentVNode as d,createElementVNode as v,Fragment as c,renderList as m,withCtx as p,createTextVNode as f,toDisplayString as k,normalizeClass as h,createVNode as y,vShow as _}from"vue";import{NSpin as S,NTag as g,NAvatar as b,NBadge as x}from"naive-ui";import{useState as M}from"../hooks/useState.js";import{useSession as C}from"../hooks/useSession.js";import{vFlexibleResize as L}from"../../../../shared/directive/flexibleResize.js";import{listSort as j,formatTime as T}from"../utils/index.js";const w={class:"sider-list__filter box-shadow"},I=["onClick"],N={class:"avatar-right"},R={class:"name"},z={class:"msg-tip"},H={class:"msg-tip__content"},U=["innerHTML"];var B=e({__name:"SiderList",setup(e){const B="all",E="unread",O=s(300),V=s();s("");const q=s(!1),A=s([{label:"全部",key:B},{label:"未读",key:E}]),D=s("all"),{state:F,emit:G}=M(),{entrySession:J,unreadTotal:K}=C(F),P=i((()=>Math.min(Math.max(O.value,240),360))),Q=i((()=>j(F.sessionList)));function W(e){!e.id||F.sessionList.map((e=>e.id)).includes(e.id)?F.sessionList.forEach((s=>{s.receiver===e.receiver&&(Object.assign(s,e),e.receiver!==F.currentSessionItem.receiver&&s.unreadNum++)})):F.sessionList.push(e)}function X({distance:e}){O.value=O.value+e}function Y(e,s=o(D)){var i;return s===B||(s===E?(null!=(i=e.unreadNum)?i:0)>0:void 0)}return n([()=>F.isChangeSession,()=>F.isUpdateSession],(([e,s])=>{e&&(W(F.currentSessionItem),F.isChangeSession=!1),s&&(W(F.updateSessionItem),F.isUpdateSession=!1)}),{immediate:!0}),n((()=>K.value),(e=>{const s=Q.value.filter((e=>Y(e,E)));G("unread-message-update",e,s)})),(e,s)=>a((t(),l("section",{class:"sider-list",style:r({width:o(P)+"px"})},[q.value?(t(),u(o(S),{key:0,stroke:"#5585f5"})):d("v-if",!0),d(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),v("div",w,[(t(!0),l(c,null,m(A.value,(e=>(t(),u(o(g),{type:D.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return s=e.key,void(D.value=s);var s}},{default:p((()=>[f(k(e.label)+"("+k(o(K))+") ",1)])),_:2},1032,["type","onClick"])))),128))]),v("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:V},[(t(!0),l(c,null,m(o(Q),((e,s)=>a((t(),l("div",{key:s,onClick:()=>o(J)(e),class:h(["sider-list__box__item",{active:e.id===o(F).id}])},[y(o(b),{round:"",size:"large",src:e.avatar},null,8,["src"]),v("div",N,[v("div",R,[v("h4",null,k(e.name),1),v("span",null,k(o(T)(e.lastMessageSendTime).siderMsgTime),1)]),v("div",z,[v("div",H,[v("div",{innerHTML:e.lastMessageContent},null,8,U)]),y(o(x),{value:e.unreadNum},null,8,["value"])])])],10,I)),[[_,Y(e)]]))),128))],512)],4)),[[o(L),{mode:"VR",onMove:X}]])}});export{B as default};
@@ -0,0 +1,2 @@
1
+ import { Ref } from 'vue';
2
+ export declare function useScrollLoading(el: Ref<HTMLElement | undefined | null>, callback: () => void, direction?: 'top' | 'bottom' | undefined): void;
@@ -0,0 +1 @@
1
+ import{onMounted as e}from"vue";import{useThrottleFn as t}from"@vueuse/core";const o=t((({target:e},t,o)=>{const{clientHeight:r,scrollTop:l,scrollHeight:i}=e;if("top"===o){if(0===l)return;r-l>=i-5&&t()}else r+l>=i-10&&t()}),500);function r(t,r,l="bottom"){e((()=>{t.value&&t.value.addEventListener("scroll",(e=>o(e,r,l)))}))}export{r as useScrollLoading};
@@ -4,4 +4,5 @@ export declare function useSession(state: IState): {
4
4
  entrySession: (item: AnyObject) => void;
5
5
  setCurrentSessionItem: (item: AnyObject) => void;
6
6
  unreadTotal: import("vue").ComputedRef<number>;
7
+ setSessionList: (list: AnyObject[]) => void;
7
8
  };
@@ -1 +1 @@
1
- import{computed as e}from"vue";import{transformLastMessage as s}from"../utils/index.js";function n(n){function t(e){Object.assign(n.currentSessionItem,e,e.lastMessage?{lastMessage:s(e)}:{}),n.id!==n.currentSessionItem.id&&(n.id=n.currentSessionItem.id)}return{entrySession:function(e){e.unreadNum=0,t(e),n.isChangeSession=!0},setCurrentSessionItem:t,unreadTotal:e((()=>n.sessionList.reduce(((e,s)=>e+ +s.unreadNum),0)))}}export{n as useSession};
1
+ import{computed as s}from"vue";import{transformLastMessage as e}from"../utils/index.js";function t(t){function n(s){Object.assign(t.currentSessionItem,s,{lastMessageContent:s.lastMessage?e(s.lastMessage):""}),t.id!==t.currentSessionItem.id&&(t.msgList=[],t.id=t.currentSessionItem.id)}return{entrySession:function(s){s.unreadNum=0,n(s),t.isChangeSession=!0},setCurrentSessionItem:n,unreadTotal:s((()=>t.sessionList.reduce(((s,e)=>s+ +e.unreadNum),0))),setSessionList:function(s){t.sessionList=s.map((s=>{const{lastMessage:t}=s;return{...s,lastMessageContent:t?e(t):""}}))}}}export{t as useSession};
@@ -1 +1 @@
1
- import{inject as t}from"vue";import{formatTime as e,transformMessage as n}from"../utils/index.js";import{InjectionIChatState as s,InjectionIChatStompClient as i,InjectionIChatEmits as m}from"../types/index.js";import{MESSAGE_TYPE as o}from"../constants/index.js";function r(){const r=t(s),c=t(i),T=t(m);return{state:r,setMsgList:function(t=[]){r.msgList=t.map((t=>{var s,i,m;return Object.assign(t,{__time:e(t.sendTime).msgTime,__content:(m=t.content.chatMessageType,[o.TEXT,o.TEXT].includes(m)?n(null==(s=t.content)?void 0:s.msg):null==(i=t.content)?void 0:i.msg)}),t})).sort(((t,e)=>new Date(t.sendTime).getTime()-new Date(e.sendTime).getTime()))},stompClient:c,emit:T}}export{r as useState};
1
+ import{inject as t}from"vue";import{formatTime as e,transformMessage as n}from"../utils/index.js";import{InjectionIChatState as s,InjectionIChatStompClient as i,InjectionIChatEmits as m}from"../types/index.js";import{MESSAGE_TYPE as o}from"../constants/index.js";function r(){const r=t(s),c=t(i),T=t(m);return{state:r,setMsgList:function(t=[]){r.msgList=t.map((t=>{var s,i,m;return Object.assign(t,{__time:e(t.sendTime).msgTime,__content:(m=t.content.chatMessageType,[o.TEXT,o.TEXT].includes(m)?n(null==(s=t.content)?void 0:s.msg):null==(i=t.content)?void 0:i.msg)}),t})).sort(((t,e)=>new Date(e.sendTime).getTime()-new Date(t.sendTime).getTime()))},stompClient:c,emit:T}}export{r as useState};
@@ -5,4 +5,4 @@ export declare function formatTime(dateStr: string): {
5
5
  };
6
6
  export declare function listSort(list: AnyObject[]): AnyObject[];
7
7
  export declare function transformMessage(content: string): string;
8
- export declare function transformLastMessage(item: AnyObject): string;
8
+ export declare function transformLastMessage(lastMessage: AnyObject): any;
@@ -1 +1 @@
1
- import{isToday as e,format as t,isYesterday as r}from"date-fns";import{cloneDeep as a}from"lodash-es";import{MESSAGE_TYPE as s}from"../constants/index.js";import{images as n}from"./emoji.js";function i(a){const s=new Date(a);let n,i;if(e(s))n=i=t(s,"HH:mm");else{n=r(s)?"昨天":t(s,"MM-dd");const e=s.getFullYear(),a=(new Date).getFullYear();i=t(s,e<a?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}return{siderMsgTime:n,msgTime:i}}function o(e){return a(e).sort(((e,t)=>e.topping&&!t.topping?-1:!e.topping&&t.topping?1:new Date(t.sortTime).getTime()-new Date(e.sortTime).getTime()))}function l(e){if(!e)return"";const t=e=>new RegExp("\\n*\\["+(e||"")+"(code|pre|div|span|p|table|thead|th|tbody|tr|td|ul|li|ol|li|dl|dt|dd|h2|h3|h4|h5)([\\s\\S]*?)]\\n*","g");return e=e.toString().replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&#39;").replace(/"/g,"&quot;").replace(/@(\S+)(\s+?|$)/g,'@<a href="javascript:;">$1</a>$2').replace(t(),"<$1 $2>").replace(t("/"),"</$1>").replace(/\n/g,"<br>")}function p(e){if(!e.chatMessageType)return l(e.lastMessage);switch(e.chatMessageType){case s.TEXT:return l(e.lastMessage);case s.IMAGE:return"[图片]";case s.FILE:return"[文件]";case s.EMOJI:return`<img alt=${e.lastMessage} src=${n.value[e.lastMessage]}>`;default:return"其他消息"}}export{i as formatTime,o as listSort,p as transformLastMessage,l as transformMessage};
1
+ import{isToday as e,format as t,isYesterday as r}from"date-fns";import{cloneDeep as n}from"lodash-es";import{MESSAGE_TYPE as a}from"../constants/index.js";import{images as s}from"./emoji.js";function i(n){const a=new Date(n);let s,i;if(e(a))s=i=t(a,"HH:mm");else{s=r(a)?"昨天":t(a,"MM-dd");const e=a.getFullYear(),n=(new Date).getFullYear();i=t(a,e<n?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}return{siderMsgTime:s,msgTime:i}}function o(e){return n(e).sort(((e,t)=>e.topping&&!t.topping?-1:!e.topping&&t.topping?1:new Date(t.sortTime).getTime()-new Date(e.sortTime).getTime()))}function l(e){if(!e)return"";const t=e=>new RegExp("\\n*\\["+(e||"")+"(code|pre|div|span|p|table|thead|th|tbody|tr|td|ul|li|ol|li|dl|dt|dd|h2|h3|h4|h5)([\\s\\S]*?)]\\n*","g");return e=e.toString().replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&#39;").replace(/"/g,"&quot;").replace(/@(\S+)(\s+?|$)/g,'@<a href="javascript:;">$1</a>$2').replace(t(),"<$1 $2>").replace(t("/"),"</$1>").replace(/\n/g,"<br>")}function p(e){var t;const{chatMessageType:r,msg:n,messageTemplate:i}=e;switch(r){case a.TEXT:return l(n);case a.IMAGE:return"[图片]";case a.FILE:return"[文件]";case a.EMOJI:return`<img alt=${n} src=${s.value[n]}>`;case a.TEMPLATE:return null==(t=null==i?void 0:i.setting)?void 0:t.title;default:return"其他消息"}}export{i as formatTime,o as listSort,p as transformLastMessage,l as transformMessage};
@@ -1 +1 @@
1
- .c-chat-dialog{box-sizing:border-box;padding:15px;width:640px!important}.c-chat-dialog__content{height:600px}.c-chat-dialog__content.c-chat-image-wrapper{background:#f2f2f2;box-sizing:border-box;overflow-y:auto;padding:0 15px;width:100%}.c-chat-dialog__content.c-chat-image-wrapper .image-item .label{display:block;padding:8px 0}.c-chat-dialog__content.c-chat-image-wrapper .image-item .image-box{background:#fff;display:flex;flex-flow:row wrap;gap:8px 8px;padding:8px}.c-chat-dialog__content.c-chat-file-wrapper{display:flex;flex-flow:column nowrap}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box{flex:1;margin-top:10px;overflow-y:auto}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item{align-items:center;display:flex;padding:10px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text{flex:1;margin-left:8px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text span{display:block}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text span.detail{color:#666;font-size:12px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .opt-box{display:none}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .opt-box .n-icon{margin-left:8px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item:hover{background-color:#f5f5f5}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item:hover .opt-box{display:block}.c-chat-dialog__content.c-chat-record-wrapper{display:flex;flex-flow:column nowrap}.c-chat-dialog__content.c-chat-record-wrapper .n-input{background-color:#f2f2f2}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box{display:flex;flex:1;margin-top:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content{background-color:#f2f2f2;box-sizing:border-box;flex:1;height:100%;overflow-y:auto;padding:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item{background-color:#fff;display:flex;margin-bottom:10px;padding:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box{flex:1;margin-left:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box .name-and-time{display:flex;justify-content:space-between}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box .name-and-time span{color:#666;font-size:12px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter{box-sizing:border-box;padding:0 10px;width:200px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-title{display:block}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item{margin-top:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .label{display:block}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target{background-color:#f2f2f2;padding:0 10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item{align-items:center;border-bottom:1px solid #c6c6c6;display:flex;min-height:42px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item .n-date-picker{display:none}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item:last-child{border-bottom:none}.c-biunique-chat__popover .n-popover{border-radius:14px;overflow:hidden;padding:unset!important}.c-biunique-chat__popover .n-popover.n-tooltip{border-radius:4px;padding:5px 8px!important}.c-biunique-chat__popover .n-popover .n-popover__content{padding:unset!important}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person{background-color:#f5f5f5;box-sizing:border-box;column-gap:8px;display:flex;height:400px;width:538px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person>div{flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left{background-image:url("data:image/png;base64,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");display:flex;flex-flow:column nowrap}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile{background-color:#fff;display:flex;flex:1;flex-flow:column nowrap;margin-top:107px;padding:26px 15px;position:relative}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile .n-avatar{left:30px;position:absolute;top:-50px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile .edit-avatar{background-color:#eee;height:30px;left:98px;position:absolute;top:22px;width:30px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile__text{flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile__text h4{font-size:20px;line-height:28px;margin:40px 0 0;word-break:break-all}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right{background-color:#fff;padding:26px 15px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item{align-items:center;display:flex;margin-bottom:15px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item:last-child{margin-bottom:0}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .label{color:rgba(0,0,0,.6);flex:0 0 77px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .content{align-items:center;display:flex;flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .content .n-icon{cursor:pointer}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar{align-items:center;background-color:#e4eefe;display:flex;height:380px;justify-content:center;position:relative;width:380px}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar .n-button{background-color:rgba(0,0,0,.3);position:absolute;right:10px;top:10px}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar .n-button:hover{background-color:rgba(0,0,0,.5)}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box{box-sizing:border-box;height:330px;overflow-y:auto;padding:10px;width:500px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box::-webkit-scrollbar{width:5px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box span{display:block;font-size:12px;margin-bottom:10px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box{display:flex;flex-flow:row wrap;gap:10px 10px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box i{cursor:pointer;flex-grow:0;padding:3px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box i:hover{background-color:#f2f2f2}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box img{height:auto;width:24px}.c-biunique-chat{height:100%;position:relative;width:100%}@font-face{font-family:iconfont;src:url(iconfont.ttf) format("truetype")}.c-biunique-chat .chat--iconfont{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iconfont!important;font-size:16px;font-style:normal}.c-biunique-chat .chat--icon-list-search:before{content:"\e637"}.c-biunique-chat .chat--icon-image:before{content:"\e92e"}.c-biunique-chat .chat--icon-set:before{content:"\e62b"}.c-biunique-chat .chat--icon-folder:before{content:"\e701"}.c-biunique-chat .chat--icon-face:before{content:"\e615"}.c-biunique-chat .chat--icon-good:before{content:"\e62a"}.c-biunique-chat .chat--icon-more:before{content:"\e6aa"}.c-biunique-chat .box-shadow{position:relative}.c-biunique-chat .box-shadow:after{bottom:0;box-shadow:0 1px 3px 0 rgba(0,0,0,.3);content:"";height:1px;left:0;position:absolute;width:100%;z-index:1}.c-biunique-chat *{box-sizing:border-box}.c-biunique-chat .n-avatar{background-color:#5585f5}.c-biunique-chat .n-spin-body{margin:auto}.c-biunique-chat__header{background-color:var(--c-primary-color);height:40px;position:relative}.c-biunique-chat__header .toolbar{height:100%;position:absolute;right:0}.c-biunique-chat__body{height:calc(100% - 40px)}.c-biunique-chat__body .sider-list{border:1px solid #d5d5d5;box-sizing:border-box}.c-biunique-chat__body .sider-list__filter{align-items:center;column-gap:8px;display:flex;height:48px;padding:0 8px}.c-biunique-chat__body .sider-list__filter .n-tag{height:26px}.c-biunique-chat__body .sider-list__filter .n-tag__content{font-size:12px}.c-biunique-chat__body .sider-list__box__item{background-color:#fff;border-bottom:1px solid #ebebeb;display:flex;padding:12px 5px}.c-biunique-chat__body .sider-list__box__item.active,.c-biunique-chat__body .sider-list__box__item:active,.c-biunique-chat__body .sider-list__box__item:focus,.c-biunique-chat__body .sider-list__box__item:hover{background-color:#ebebeb}.c-biunique-chat__body .sider-list__box__item .avatar-right{flex:1;margin-left:10px}.c-biunique-chat__body .sider-list__box__item .avatar-right .name{display:flex}.c-biunique-chat__body .sider-list__box__item .avatar-right .name h4{flex:1}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip{display:flex}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content{flex:1;width:0}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content>div img{height:auto;width:18px}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip p,.c-biunique-chat__body .sider-list__box__item .avatar-right .name span{color:#999}.c-biunique-chat__body .chat-content{flex:1 0 0%}.c-biunique-chat__body .chat-content .n-layout-scroll-container{border:1px solid #d5d5d5;border-left:none;display:flex;flex-flow:column nowrap;overflow:hidden}.c-biunique-chat__body .chat-content .chat-header{align-items:center;display:flex;height:48px;justify-content:space-between;padding:0 10px}.c-biunique-chat__body .chat-content .chat-header__left{align-items:center;display:flex}.c-biunique-chat__body .chat-content .chat-header__left .name{margin-left:10px}.c-biunique-chat__body .chat-content .chat-header__right .chat--iconfont{margin-left:18px}.c-biunique-chat__body .chat-content .chat-main{background:#f5f5f5;border-bottom:1px solid #d5d5d5;flex:1;overflow-y:auto;padding:0 10px}.c-biunique-chat__body .chat-content .chat-main::-webkit-scrollbar{width:5px}.c-biunique-chat__body .chat-content .chat-main::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__body .chat-content .chat-main .message-item{margin-bottom:40px}.c-biunique-chat__body .chat-content .chat-main .message-item .time{color:#666;font-size:12px;margin-bottom:16px!important;text-align:center}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template{word-wrap:break-word;align-items:center;display:flex;justify-content:center;line-height:20px;margin:10px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template .n-icon{margin-right:10px}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template .btn{color:var(--c-primary-color);cursor:pointer;margin-left:8px;text-decoration:underline}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box{display:flex}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .n-avatar{flex-shrink:0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content{background:#fff;border-radius:8px;border-top-left-radius:0;color:#000;font-size:14px;line-height:20px;margin:0 48px 0 10px;max-width:500px;padding:10px;position:relative;text-align:left;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content pre{font-family:"微软雅黑, Avenir, Helvetica, Arial, sans-serif";margin:0;white-space:pre-wrap;width:100%;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content:before{color:#666;content:"";font-size:12px;position:absolute;top:-20px;white-space:nowrap}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.emoji{background:transparent;padding:unset}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.emoji img{height:auto;width:50px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template{background:#fff}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template{width:230px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header{align-items:center;border-bottom:1px solid #ebebeb;display:flex;padding:8px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header>span{height:22px;line-height:22px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header .title{color:#000;flex:1;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header .btn{color:var(--c-primary-color);cursor:pointer;max-width:50%;overflow:hidden}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body{display:flex;padding:10px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body .logo{height:40px;margin-right:12px;width:40px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body .template-content{color:#666;flex:1;overflow:hidden;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__btn-group{box-sizing:border-box;display:flex;flex-flow:row wrap;gap:8px;justify-content:center;padding:8px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__footer{cursor:pointer}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template{width:235px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__header{background-color:var(--c-primary-color);color:#fff;font-size:16px;font-weight:600;line-height:22px;padding:10px 16px;word-break:break-word}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body{padding:18px 18px 8px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body.overflow-hidden{max-height:128px;overflow:hidden}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body .title{color:#7a7a7a;font-size:14px;line-height:20px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body .txt{color:#212121;font-size:16px;font-weight:600;line-height:26px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template .default-msg-template__footer,.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template .describe-msg-template__footer{color:rgba(0,0,0,.45);line-height:20px;padding:2px 0 10px;text-align:center}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template .default-msg-template__footer .chat--icon-more,.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template .describe-msg-template__footer .chat--icon-more{font-size:12px;margin-left:4px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box:hover .content:before{content:attr(data-time);left:0}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box{justify-content:flex-end}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box .n-avatar{order:2}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box .content{background:#d4e2fc;border-top-left-radius:8px;border-top-right-radius:0;margin:0 10px 0 48px;order:1}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box:hover .content:before{left:auto;right:0}.c-biunique-chat__body .chat-content .chat-footer{display:flex;flex-flow:column nowrap;height:170px}.c-biunique-chat__body .chat-content .chat-footer .tool-box{box-sizing:border-box;padding:10px}.c-biunique-chat__body .chat-content .chat-footer .tool-box span{align-items:center;display:inline-flex;height:24px;justify-content:center;margin-right:5px;width:24px}.c-biunique-chat__body .chat-content .chat-footer .tool-box span:hover{background:#f2f2f2}.c-biunique-chat__body .chat-content .chat-footer .input-box{cursor:text;flex:1;outline:none;overflow-x:hidden;overflow-y:auto;padding:10px 16px;word-break:break-word}.c-biunique-chat__body .chat-content .chat-footer .input-box img{height:auto;width:120px}.c-biunique-chat__body .chat-content .chat-footer .input-box::-webkit-scrollbar{width:5px}.c-biunique-chat__body .chat-content .chat-footer .input-box::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__body .chat-content .chat-footer .btn-box{align-items:center;display:flex;height:56px;justify-content:flex-end;padding-right:20px}.c-biunique-chat__body .chat-content .chat-footer .btn-box .tip{color:#a6a6a6;margin-right:20px}.c-biunique-chat .chat-set-wrapper .item{align-items:center;border-bottom:1px solid #efefef;display:flex;min-height:64px;padding:10px 0;width:100%}.c-biunique-chat .chat-set-wrapper .item.user-info{background-color:#f5f5f5;padding:10px 12px}.c-biunique-chat .chat-set-wrapper .item__right{margin-left:auto}
1
+ .c-chat-dialog{box-sizing:border-box;padding:15px;width:640px!important}.c-chat-dialog__content{height:600px}.c-chat-dialog__content.c-chat-image-wrapper{background:#f2f2f2;box-sizing:border-box;overflow-y:auto;padding:0 15px;width:100%}.c-chat-dialog__content.c-chat-image-wrapper .image-item .label{display:block;padding:8px 0}.c-chat-dialog__content.c-chat-image-wrapper .image-item .image-box{background:#fff;display:flex;flex-flow:row wrap;gap:8px 8px;padding:8px}.c-chat-dialog__content.c-chat-file-wrapper{display:flex;flex-flow:column nowrap}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box{flex:1;margin-top:10px;overflow-y:auto}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item{align-items:center;display:flex;padding:10px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text{flex:1;margin-left:8px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text span{display:block}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .text span.detail{color:#666;font-size:12px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .opt-box{display:none}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item .opt-box .n-icon{margin-left:8px}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item:hover{background-color:#f5f5f5}.c-chat-dialog__content.c-chat-file-wrapper .file-list-box .file-item:hover .opt-box{display:block}.c-chat-dialog__content.c-chat-record-wrapper{display:flex;flex-flow:column nowrap}.c-chat-dialog__content.c-chat-record-wrapper .n-input{background-color:#f2f2f2}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box{display:flex;flex:1;margin-top:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content{background-color:#f2f2f2;box-sizing:border-box;flex:1;height:100%;overflow-y:auto;padding:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item{background-color:#fff;display:flex;margin-bottom:10px;padding:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box{flex:1;margin-left:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box .name-and-time{display:flex;justify-content:space-between}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__content .content-item .msg-box .name-and-time span{color:#666;font-size:12px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter{box-sizing:border-box;padding:0 10px;width:200px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-title{display:block}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item{margin-top:10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .label{display:block}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target{background-color:#f2f2f2;padding:0 10px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item{align-items:center;border-bottom:1px solid #c6c6c6;display:flex;min-height:42px}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item .n-date-picker{display:none}.c-chat-dialog__content.c-chat-record-wrapper .chat-record-box__filter .filter-item .time-target__item:last-child{border-bottom:none}.c-biunique-chat__popover .n-popover{border-radius:14px;overflow:hidden;padding:unset!important}.c-biunique-chat__popover .n-popover.n-tooltip{border-radius:4px;padding:5px 8px!important}.c-biunique-chat__popover .n-popover .n-popover__content{padding:unset!important}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person{background-color:#f5f5f5;box-sizing:border-box;column-gap:8px;display:flex;height:400px;width:538px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person>div{flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left{background-image:url("data:image/png;base64,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");display:flex;flex-flow:column nowrap}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile{background-color:#fff;display:flex;flex:1;flex-flow:column nowrap;margin-top:107px;padding:26px 15px;position:relative}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile .n-avatar{left:30px;position:absolute;top:-50px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile .edit-avatar{background-color:#eee;height:30px;left:98px;position:absolute;top:22px;width:30px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile__text{flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__left .profile__text h4{font-size:20px;line-height:28px;margin:40px 0 0;word-break:break-all}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right{background-color:#fff;padding:26px 15px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item{align-items:center;display:flex;margin-bottom:15px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item:last-child{margin-bottom:0}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .label{color:rgba(0,0,0,.6);flex:0 0 77px}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .content{align-items:center;display:flex;flex:1}.c-biunique-chat__popover .n-popover .n-popover__content .popover-person__right .info-item .content .n-icon{cursor:pointer}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar{align-items:center;background-color:#e4eefe;display:flex;height:380px;justify-content:center;position:relative;width:380px}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar .n-button{background-color:rgba(0,0,0,.3);position:absolute;right:10px;top:10px}.c-biunique-chat__popover .n-popover .n-popover__content .large-avatar .n-button:hover{background-color:rgba(0,0,0,.5)}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box{box-sizing:border-box;height:330px;overflow-y:auto;padding:10px;width:500px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box::-webkit-scrollbar{width:5px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box span{display:block;font-size:12px;margin-bottom:10px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box{display:flex;flex-flow:row wrap;gap:10px 10px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box i{cursor:pointer;flex-grow:0;padding:3px}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box i:hover{background-color:#f2f2f2}.c-biunique-chat__popover .n-popover .n-popover__content .emoji-box .list-box img{height:auto;width:24px}.c-biunique-chat{height:100%;position:relative;width:100%}@font-face{font-family:iconfont;src:url(iconfont.ttf) format("truetype")}.c-biunique-chat .chat--iconfont{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iconfont!important;font-size:16px;font-style:normal}.c-biunique-chat .chat--icon-list-search:before{content:"\e637"}.c-biunique-chat .chat--icon-image:before{content:"\e92e"}.c-biunique-chat .chat--icon-set:before{content:"\e62b"}.c-biunique-chat .chat--icon-folder:before{content:"\e701"}.c-biunique-chat .chat--icon-face:before{content:"\e615"}.c-biunique-chat .chat--icon-good:before{content:"\e62a"}.c-biunique-chat .chat--icon-more:before{content:"\e6aa"}.c-biunique-chat .box-shadow{position:relative}.c-biunique-chat .box-shadow:after{bottom:0;box-shadow:0 1px 3px 0 rgba(0,0,0,.3);content:"";height:1px;left:0;position:absolute;width:100%;z-index:1}.c-biunique-chat *{box-sizing:border-box}.c-biunique-chat .n-avatar{background-color:#5585f5}.c-biunique-chat .n-spin-body{margin:auto}.c-biunique-chat__header{background-color:var(--c-primary-color);height:40px;position:relative}.c-biunique-chat__header .toolbar{height:100%;position:absolute;right:0}.c-biunique-chat__body{height:calc(100% - 40px)}.c-biunique-chat__body .sider-list{border:1px solid #d5d5d5;box-sizing:border-box}.c-biunique-chat__body .sider-list__filter{align-items:center;column-gap:8px;display:flex;height:48px;padding:0 8px}.c-biunique-chat__body .sider-list__filter .n-tag{height:26px}.c-biunique-chat__body .sider-list__filter .n-tag__content{font-size:12px}.c-biunique-chat__body .sider-list__box__item{background-color:#fff;border-bottom:1px solid #ebebeb;display:flex;padding:12px 5px}.c-biunique-chat__body .sider-list__box__item.active,.c-biunique-chat__body .sider-list__box__item:active,.c-biunique-chat__body .sider-list__box__item:focus,.c-biunique-chat__body .sider-list__box__item:hover{background-color:#ebebeb}.c-biunique-chat__body .sider-list__box__item .avatar-right{flex:1;margin-left:10px}.c-biunique-chat__body .sider-list__box__item .avatar-right .name{display:flex}.c-biunique-chat__body .sider-list__box__item .avatar-right .name h4{flex:1}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip{display:flex}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content{flex:1;width:0}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip__content>div img{height:auto;width:18px}.c-biunique-chat__body .sider-list__box__item .avatar-right .msg-tip p,.c-biunique-chat__body .sider-list__box__item .avatar-right .name span{color:#999}.c-biunique-chat__body .chat-content{flex:1 0 0%}.c-biunique-chat__body .chat-content .n-layout-scroll-container{border:1px solid #d5d5d5;border-left:none;display:flex;flex-flow:column nowrap;overflow:hidden}.c-biunique-chat__body .chat-content .chat-header{align-items:center;display:flex;height:48px;justify-content:space-between;padding:0 10px}.c-biunique-chat__body .chat-content .chat-header__left{align-items:center;display:flex}.c-biunique-chat__body .chat-content .chat-header__left .name{margin-left:10px}.c-biunique-chat__body .chat-content .chat-header__right .chat--iconfont{margin-left:18px}.c-biunique-chat__body .chat-content .chat-main{background:#f5f5f5;border-bottom:1px solid #d5d5d5;box-sizing:border-box;display:flex;flex:1;flex-flow:column-reverse nowrap;overflow-y:scroll;padding:30px 10px 0}.c-biunique-chat__body .chat-content .chat-main::-webkit-scrollbar{width:5px}.c-biunique-chat__body .chat-content .chat-main::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__body .chat-content .chat-main .message-item{margin-bottom:40px}.c-biunique-chat__body .chat-content .chat-main .message-item .time{color:#666;font-size:12px;margin-bottom:16px!important;text-align:center}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template{word-wrap:break-word;align-items:center;display:flex;justify-content:center;line-height:20px;margin:10px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template .n-icon{margin-right:10px}.c-biunique-chat__body .chat-content .chat-main .message-item .system-msg-template .btn{color:var(--c-primary-color);cursor:pointer;margin-left:8px;text-decoration:underline}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box{display:flex}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .n-avatar{flex-shrink:0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content{background:#fff;border-radius:8px;border-top-left-radius:0;color:#000;font-size:14px;line-height:20px;margin:0 48px 0 10px;max-width:500px;padding:10px;position:relative;text-align:left;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content pre{font-family:"微软雅黑, Avenir, Helvetica, Arial, sans-serif";margin:0;white-space:pre-wrap;width:100%;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content:before{color:#666;content:"";font-size:12px;position:absolute;top:-20px;white-space:nowrap}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.emoji{background:transparent;padding:unset}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.emoji img{height:auto;width:50px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template{background:#fff}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template{width:230px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header{align-items:center;border-bottom:1px solid #ebebeb;display:flex;padding:8px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header>span{height:22px;line-height:22px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header .title{color:#000;flex:1;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__header .btn{color:var(--c-primary-color);cursor:pointer;max-width:50%;overflow:hidden}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body{display:flex;padding:10px 0}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body .logo{height:40px;margin-right:12px;width:40px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__body .template-content{color:#666;flex:1;overflow:hidden;word-break:break-all}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__btn-group{box-sizing:border-box;display:flex;flex-flow:row wrap;gap:8px;justify-content:center;padding:8px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template__footer{cursor:pointer}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template{width:235px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__header{background-color:var(--c-primary-color);color:#fff;font-size:16px;font-weight:500;line-height:22px;padding:10px 16px;word-break:break-word}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body{padding:18px 18px 8px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body.overflow-hidden{max-height:128px;overflow:hidden}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body .title{color:#7a7a7a;font-size:14px;line-height:20px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template__body .txt{color:#212121;font-size:16px;font-weight:500;line-height:26px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template .default-msg-template__footer,.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template .describe-msg-template__footer{color:rgba(0,0,0,.45);line-height:20px;padding:2px 0 10px;text-align:center}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .default-msg-template .default-msg-template__footer .chat--icon-more,.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template .describe-msg-template .describe-msg-template__footer .chat--icon-more{font-size:12px;margin-left:4px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template--3{padding:unset}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box .content.template--3 .describe-msg-template__header{border-top-right-radius:8px}.c-biunique-chat__body .chat-content .chat-main .message-item .message-box:hover .content:before{content:attr(data-time);left:0}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box{flex-direction:row-reverse}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box .content{background:#d4e2fc;border-top-left-radius:8px;border-top-right-radius:0;margin:0 10px 0 48px}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box .content.template--3 .describe-msg-template__header{border-top-left-radius:8px;border-top-right-radius:0}.c-biunique-chat__body .chat-content .chat-main .message-item--mine .message-box:hover .content:before{left:auto;right:0}.c-biunique-chat__body .chat-content .chat-footer{display:flex;flex-flow:column nowrap;height:170px}.c-biunique-chat__body .chat-content .chat-footer .tool-box{box-sizing:border-box;padding:10px}.c-biunique-chat__body .chat-content .chat-footer .tool-box span{align-items:center;display:inline-flex;height:24px;justify-content:center;margin-right:5px;width:24px}.c-biunique-chat__body .chat-content .chat-footer .tool-box span:hover{background:#f2f2f2}.c-biunique-chat__body .chat-content .chat-footer .input-box{cursor:text;flex:1;outline:none;overflow-x:hidden;overflow-y:auto;padding:10px 16px;word-break:break-word}.c-biunique-chat__body .chat-content .chat-footer .input-box img{height:auto;width:120px}.c-biunique-chat__body .chat-content .chat-footer .input-box::-webkit-scrollbar{width:5px}.c-biunique-chat__body .chat-content .chat-footer .input-box::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:5px}.c-biunique-chat__body .chat-content .chat-footer .btn-box{align-items:center;display:flex;height:56px;justify-content:flex-end;padding-right:20px}.c-biunique-chat__body .chat-content .chat-footer .btn-box .tip{color:#a6a6a6;margin-right:20px}.c-biunique-chat .chat-set-wrapper .item{align-items:center;border-bottom:1px solid #efefef;display:flex;min-height:64px;padding:10px 0;width:100%}.c-biunique-chat .chat-set-wrapper .item.user-info{background-color:#f5f5f5;padding:10px 12px}.c-biunique-chat .chat-set-wrapper .item__right{margin-left:auto}