cnhis-design-vue 3.2.6-release.1 → 3.2.6

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 (69) hide show
  1. package/es/components/button-print/index.d.ts +4 -0
  2. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -0
  3. package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +4 -0
  4. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
  5. package/es/components/button-print/src/utils/print.d.ts +4 -2
  6. package/es/components/button-print/src/utils/print.js +1 -1
  7. package/es/components/fabric-chart/src/constants/index.js +1 -1
  8. package/es/components/fabric-chart/src/hooks/temperature/useCenter.d.ts +1 -0
  9. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  10. package/es/components/fabric-chart/src/hooks/temperature/useOther.d.ts +2 -2
  11. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  12. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  13. package/es/components/fabric-chart/src/hooks/useDraw.js +1 -1
  14. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  15. package/es/components/form-config/src/utils/index.d.ts +1 -0
  16. package/es/components/form-config/src/utils/index.js +1 -1
  17. package/es/components/form-render/index.js +1 -1
  18. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  19. package/es/components/form-render/src/utils/index.d.ts +1 -0
  20. package/es/components/form-render/src/utils/index.js +1 -1
  21. package/es/components/iho-chat/index.d.ts +497 -19
  22. package/es/components/iho-chat/src/Index.vue.d.ts +502 -24
  23. package/es/components/iho-chat/src/Index.vue2.js +1 -1
  24. package/es/components/iho-chat/src/api/index.d.ts +5 -0
  25. package/es/components/iho-chat/src/api/index.js +1 -1
  26. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +89 -0
  27. package/es/components/iho-chat/src/components/ChatAdd.vue.js +1 -0
  28. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -0
  29. package/es/components/iho-chat/src/components/ChatFile.vue2.js +1 -1
  30. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +94 -4
  31. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  32. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +129 -3
  33. package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
  34. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +24 -2
  35. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  36. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +0 -1
  37. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  38. package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
  39. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +16 -1
  40. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  41. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +133 -0
  42. package/es/components/iho-chat/src/components/MultipleVideo.vue.js +1 -0
  43. package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -0
  44. package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +15 -1
  45. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  46. package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
  47. package/es/components/iho-chat/src/components/Video.vue.d.ts +24 -13
  48. package/es/components/iho-chat/src/components/Video.vue2.js +1 -1
  49. package/es/components/iho-chat/src/constants/index.d.ts +10 -1
  50. package/es/components/iho-chat/src/constants/index.js +1 -1
  51. package/es/components/iho-chat/src/hooks/index.d.ts +1 -0
  52. package/es/components/iho-chat/src/hooks/index.js +1 -1
  53. package/es/components/iho-chat/src/hooks/useSession.d.ts +1 -0
  54. package/es/components/iho-chat/src/hooks/useSession.js +1 -1
  55. package/es/components/iho-chat/src/hooks/useState.d.ts +5 -0
  56. package/es/components/iho-chat/src/hooks/useState.js +1 -1
  57. package/es/components/iho-chat/src/hooks/useVideo.d.ts +24 -0
  58. package/es/components/iho-chat/src/hooks/useVideo.js +1 -0
  59. package/es/components/iho-chat/src/types/index.d.ts +3 -0
  60. package/es/components/iho-chat/src/utils/index.d.ts +2 -1
  61. package/es/components/iho-chat/src/utils/index.js +1 -1
  62. package/es/components/iho-chat/style/index.css +1 -1
  63. package/es/components/iho-table/src/plugins/keyboardEventPlugin.js +1 -1
  64. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/renderer.js +1 -1
  65. package/es/components/index.css +1 -1
  66. package/es/components/index.js +1 -1
  67. package/es/shared/package.json.js +1 -1
  68. package/es/shared/utils/business.js +1 -1
  69. package/package.json +2 -2
@@ -1,17 +1,22 @@
1
1
  import { AnyObject } from '../../../../shared/types';
2
- import { formatTime, downloadFile, simplifyMessage, isAudioOrVideoMessage } from '../utils';
2
+ import { formatTime, downloadFile, simplifyMessage, isAudioOrVideoMessage, getAVTime } from '../utils';
3
3
  import { MESSAGE_TYPE } from '../constants';
4
4
  declare const _default: import("vue").DefineComponent<{}, {
5
5
  chatMainRef: import("vue").Ref<HTMLElement | undefined>;
6
6
  state: import("../types").IState;
7
7
  setMsgList: (list?: AnyObject[]) => void;
8
8
  setCurrentSessionItem: (item: AnyObject) => void;
9
+ isGroupChat: import("vue").ComputedRef<boolean>;
9
10
  showMenu: import("vue").Ref<boolean>;
10
11
  pageInfo: {
11
12
  page: number;
12
13
  hasMore: boolean;
13
14
  lastSendTime: string;
14
15
  };
16
+ styleProps: import("vue").ComputedRef<{
17
+ '--c-tip-top': string;
18
+ '--c-tip-gap': string;
19
+ }>;
15
20
  getHistoryRecord: () => Promise<void>;
16
21
  showMessage: (item: AnyObject) => boolean;
17
22
  showTemplateMsg: (item: AnyObject, type: 'system' | 'template') => boolean | undefined;
@@ -31,12 +36,20 @@ declare const _default: import("vue").DefineComponent<{}, {
31
36
  type: StringConstructor;
32
37
  required: true;
33
38
  };
39
+ disabled: {
40
+ type: BooleanConstructor;
41
+ default: boolean;
42
+ };
34
43
  }, {
35
44
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
36
45
  userId: {
37
46
  type: StringConstructor;
38
47
  required: true;
39
48
  };
49
+ disabled: {
50
+ type: BooleanConstructor;
51
+ default: boolean;
52
+ };
40
53
  }>> & {
41
54
  onClose?: ((...args: any[]) => any) | undefined;
42
55
  }>>;
@@ -79,9 +92,15 @@ declare const _default: import("vue").DefineComponent<{}, {
79
92
  type: StringConstructor;
80
93
  required: true;
81
94
  };
95
+ disabled: {
96
+ type: BooleanConstructor;
97
+ default: boolean;
98
+ };
82
99
  }>> & {
83
100
  onClose?: ((...args: any[]) => any) | undefined;
84
- }, {}>;
101
+ }, {
102
+ disabled: boolean;
103
+ }>;
85
104
  MessageTemplate: import("vue").DefineComponent<{
86
105
  data: {
87
106
  type: import("vue").PropType<AnyObject>;
@@ -184,8 +203,11 @@ declare const _default: import("vue").DefineComponent<{}, {
184
203
  downloadFile: typeof downloadFile;
185
204
  simplifyMessage: typeof simplifyMessage;
186
205
  isAudioOrVideoMessage: typeof isAudioOrVideoMessage;
206
+ getAVTime: typeof getAVTime;
187
207
  MESSAGE_TYPE: typeof MESSAGE_TYPE;
188
208
  ChatbubbleEllipsesOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
189
209
  EllipsisHorizontal: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
210
+ CallOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
211
+ VideocamOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
190
212
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
191
213
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,watch as n,openBlock as s,createElementBlock as i,normalizeClass as o,unref as r,createVNode as a,withCtx as c,Fragment as l,renderList as m,toDisplayString as u,createCommentVNode as d,createBlock as p,withModifiers as f,createElementVNode as v}from"vue";import{NImageGroup as y,NAvatar as g,NImage as T,NButtonGroup as M,NButton as h,NIcon as k}from"naive-ui";import{format as _}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as S}from"../api/index.js";import{useState as L}from"../hooks/useState.js";import{useSession as I}from"../hooks/useSession.js";import{first as j,last as C,isNumber as A}from"lodash-es";import H from"./PersonProfile.vue.js";import b from"./MessageTemplate.vue.js";import{emojis as w}from"../utils/emoji.js";import x from"./ContextMenu.js";import{formatTime as z,simplifyMessage as N,isAudioOrVideoMessage as O,downloadFile as P}from"../utils/index.js";import{MESSAGE_TYPE as q}from"../constants/index.js";import{useScrollLoading as D}from"../hooks/useScrollLoading.js";import{ChatbubbleEllipsesOutline as R,EllipsisHorizontal as G}from"@vicons/ionicons5";const U={key:0,class:"time"},J={key:2,class:"message-box"},K=["data-time"],F={key:0,class:"reference-content"},X=["innerHTML"],B=["innerHTML"],Q=["src"],V={key:4},W=["href","onClick"],Y=v("i",{class:"chat--iconfont chat--icon-face"},null,-1);var Z=e({__name:"ChatMain",setup(e){const Z=t(),{state:$,setMsgList:ee}=L(),{setCurrentSessionItem:te}=I($),ne=t(!1),se={page:0,hasMore:!0,lastSendTime:_(new Date,"yyyy-MM-dd HH:mm:ss")};async function ie(){try{if(!se.hasMore)return;se.page++;const e=await E({sessionKey:$.currentSessionItem.sessionKey,page:se.page,lastSendTime:se.lastSendTime});if(!Array.isArray(e)||0===e.length)return se.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=j(e).id;se.lastSendTime=C(e).sendTime,ee(se.page>1?[...e,...$.msgList]:e),1===se.page&&$.currentSessionItem.unreadNum&&(await S({chatType:"SINGLE",messageIdSet:[t],receiver:$.userInfo.id,sender:$.currentSessionItem.receiver}),te({unreadNum:0}))}catch(e){console.log(e)}}function oe(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==q.TEMPLATE||!!n}function re(e,t){var n,s;const{chatMessageType:i,messageTemplate:o}=e.content;if(i===q.TEMPLATE)return"system"===t?2==(null==(n=null==o?void 0:o.setting)?void 0:n.style.id):2!=(null==(s=null==o?void 0:o.setting)?void 0:s.style.id)}function ae(e){var t,n;const{chatMessageType:s,messageTemplate:i}=e;return s===q.TEMPLATE&&3==(null==(n=null==(t=null==i?void 0:i.setting)?void 0:t.style)?void 0:n.id)}function ce(e,t){var n;const s=A(e.sendTime)?e.sendTime:Date.parse(e.sendTime),i=null==(n=$.msgList[t-1])?void 0:n.sendTime;return s-(0===t?0:A(i)?i:Date.parse(i))>3e5}return D(Z,(()=>{ie()}),"top"),n((()=>$.id),(e=>{e&&(Object.assign(se,{page:0,hasMore:!0,lastSendTime:_(new Date,"yyyy-MM-dd HH:mm:ss")}),ie())}),{immediate:!0}),n((()=>$.isAppendMsg),(e=>{e&&(ee([...$.msgList,$.currentMsg]),$.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=Z.value)?void 0:e.scrollHeight)?t:0;null==(n=Z.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(s(),i("div",{class:o(["chat-main",{"home-bg":!r($).id}]),ref_key:"chatMainRef",ref:Z},[a(r(y),{"show-toolbar-tooltip":""},{default:c((()=>[(s(!0),i(l,null,m(r($).msgList,((e,n)=>(s(),i(l,{key:n},[oe(e)?(s(),i("div",{key:0,class:o(["message-item",{"message-item--mine":e.sender==r($).userInfo.id}])},[ce(e,n)?(s(),i("p",U,u(r(z)(e.sendTime).recordTime),1)):d("v-if",!0),re(e,"system")?(s(),p(b,{key:1,data:e},null,8,["data"])):(s(),i("div",J,[a(H,{"user-id":e.sender},{trigger:c((()=>[a(r(g),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id"]),e.content?(s(),i("div",{key:0,class:o(["content",{emoji:e.content.chatMessageType===r(q).EMOJI,template:e.content.chatMessageType===r(q).TEMPLATE,"template--3":ae(e.content)}]),"data-time":e.__time,onContextmenu:t[0]||(t[0]=f((e=>ne.value=!0),["prevent"]))},[e.content.chatMessageType===r(q).TEXT?(s(),i(l,{key:0},[e.content.referenceContent?(s(),i("div",F,[v("span",null,u(e.content.referenceContent.senderName)+":",1),v("pre",{innerHTML:r(N)(e.content.referenceContent.content)},null,8,X)])):d("v-if",!0),v("pre",{innerHTML:e.__content},null,8,B)],64)):d("v-if",!0),e.content.chatMessageType===r(q).EMOJI?(s(),i("img",{key:1,src:r(w).findEmoji(e.__content)},null,8,Q)):d("v-if",!0),re(e,"template")?(s(),p(b,{key:2,data:e},null,8,["data"])):d("v-if",!0),e.content.chatMessageType===r(q).IMAGE?(s(),p(r(T),{key:3,width:"240",src:e.__content},null,8,["src"])):d("v-if",!0),r(O)(e.content)?(s(),i("span",V,"音视频通话")):d("v-if",!0),e.content.chatMessageType===r(q).FILE?(s(),i("a",{key:5,href:e.content.fileUrl,onClick:f((()=>r(P)(e.content.fileUrl,e.__content)),["prevent"])},u(e.__content),9,W)):d("v-if",!0),d(' <div class="quick-menu">\n\t\t\t\t\t\t\t\t\t<n-icon :component="AddCircleOutline" />\n\t\t\t\t\t\t\t\t\t<n-icon :component="ChatbubbleEllipsesOutline" @click="() => setReferenceMsg(item)" />\n\t\t\t\t\t\t\t\t\t<n-icon :component="EllipsisHorizontal" />\n\t\t\t\t\t\t\t\t</div> '),a(r(M),{class:"quick-menu"},{default:c((()=>[a(r(h),{quaternary:"",size:"tiny"},{icon:c((()=>[Y])),_:1}),a(r(h),{quaternary:"",size:"tiny",onClick:()=>{return t=e,$.currentReferenceMsg=t,void Object.assign($.currentReferenceMsg,{chatType:"SINGLE",receiver:$.currentSessionItem.receiver,receiverAvatar:$.currentSessionItem.avatar,receiverName:$.currentSessionItem.name});var t}},{icon:c((()=>[a(r(k),{size:"17",component:r(R)},null,8,["component"])])),_:2},1032,["onClick"]),a(r(h),{quaternary:"",size:"tiny"},{icon:c((()=>[a(r(k),{component:r(G)},null,8,["component"])])),_:1})])),_:2},1024)],42,K)):d("v-if",!0)]))],2)):d("v-if",!0)],64)))),128))])),_:1}),a(r(x),{show:ne.value,"onUpdate:show":t[1]||(t[1]=e=>ne.value=e)},null,8,["show"])],2))}});export{Z as default};
1
+ import{defineComponent as e,ref as t,computed as n,watch as s,openBlock as o,createElementBlock as i,normalizeClass as a,unref as r,normalizeStyle as c,createVNode as l,withCtx as m,Fragment as u,renderList as p,toDisplayString as d,createCommentVNode as v,createBlock as f,createElementVNode as y,withModifiers as g}from"vue";import{NImageGroup as T,NAvatar as h,NImage as M,NIcon as k,NButtonGroup as _,NButton as I}from"naive-ui";import{format as S}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as j}from"../api/index.js";import{useState as L}from"../hooks/useState.js";import{useSession as x}from"../hooks/useSession.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import"trtc-sdk-v5";import{formatTime as C,isAudioOrVideoMessage as b,simplifyMessage as H,getAVTime as w,downloadFile as O}from"../utils/index.js";import{first as z,last as D,isNumber as P}from"lodash-es";import q from"./PersonProfile.vue.js";import N from"./MessageTemplate.vue.js";import{emojis as U}from"../utils/emoji.js";import R from"./ContextMenu.js";import{useScrollLoading as G}from"../hooks/useScrollLoading.js";import{CallOutline as J,VideocamOutline as K,ChatbubbleEllipsesOutline as F,EllipsisHorizontal as X}from"@vicons/ionicons5";const B={key:0,class:"time"},Q={key:2,class:"message-box"},V={key:0,class:"content-box"},W={class:"name-box"},Y=["data-time"],Z={key:0,class:"reference-content"},$=["innerHTML"],ee=["innerHTML"],te=["src"],ne={style:{"margin-left":"8px"}},se=["href","onClick"],oe=y("i",{class:"chat--iconfont chat--icon-face"},null,-1);var ie=e({__name:"ChatMain",setup(e){const ie=t(),{state:ae,setMsgList:re}=L(),{setCurrentSessionItem:ce,isGroupChat:le}=x(ae),me=t(!1),ue={page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")},pe=n((()=>({"--c-tip-top":le.value?"1px":"-20px","--c-tip-gap":le.value?"10px":"0px"})));async function de(){try{if(!ue.hasMore)return;ue.page++;const e=await E({sessionKey:ae.currentSessionItem.sessionKey,page:ue.page,lastSendTime:ue.lastSendTime});if(!Array.isArray(e)||0===e.length)return ue.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=z(e).id;ue.lastSendTime=D(e).sendTime,re(ue.page>1?[...e,...ae.msgList]:e),1===ue.page&&ae.currentSessionItem.unreadNum&&(await j({chatType:ae.currentSessionItem.chatType,messageIdSet:[t],receiver:ae.userInfo.id,sender:ae.currentSessionItem.receiver}),ce({unreadNum:0}))}catch(e){console.log(e)}}function ve(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function fe(e,t){var n,s;const{chatMessageType:o,messageTemplate:i}=e.content;if(o===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(s=null==i?void 0:i.setting)?void 0:s.style.id)}function ye(e){var t,n;const{chatMessageType:s,messageTemplate:o}=e;return s===A.TEMPLATE&&3==(null==(n=null==(t=null==o?void 0:o.setting)?void 0:t.style)?void 0:n.id)}function ge(e,t){var n;const s=P(e.sendTime)?e.sendTime:Date.parse(e.sendTime),o=null==(n=ae.msgList[t-1])?void 0:n.sendTime;return s-(0===t?0:P(o)?o:Date.parse(o))>3e5}return G(ie,(()=>{de()}),"top"),s((()=>ae.id),(e=>{e&&(Object.assign(ue,{page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")}),de())}),{immediate:!0}),s((()=>ae.isAppendMsg),(e=>{e&&(re([...ae.msgList,ae.currentMsg]),ae.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=ie.value)?void 0:e.scrollHeight)?t:0;null==(n=ie.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(o(),i("div",{class:a(["chat-main",{"home-bg":!r(ae).id}]),ref_key:"chatMainRef",ref:ie,style:c(r(pe))},[l(r(T),{"show-toolbar-tooltip":""},{default:m((()=>[(o(!0),i(u,null,p(r(ae).msgList,((e,n)=>(o(),i(u,{key:n},[ve(e)?(o(),i("div",{key:0,class:a(["message-item",{"message-item--mine":e.sender==r(ae).userInfo.id}])},[ge(e,n)?(o(),i("p",B,d(r(C)(e.sendTime).recordTime),1)):v("v-if",!0),fe(e,"system")?(o(),f(N,{key:1,data:e},null,8,["data"])):(o(),i("div",Q,[l(q,{"user-id":e.sender},{trigger:m((()=>[l(r(h),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id"]),e.content?(o(),i("div",V,[y("div",W,[y("span",{class:"name","data-time":e.__time},d(r(le)?e.senderName:""),9,Y)]),y("div",{class:a(["content",{emoji:e.content.chatMessageType===r(A).EMOJI,template:e.content.chatMessageType===r(A).TEMPLATE,"template--3":ye(e.content),"audio-video":r(b)(e.content)}]),onContextmenu:t[0]||(t[0]=g((e=>me.value=!0),["prevent"]))},[e.content.chatMessageType===r(A).TEXT?(o(),i(u,{key:0},[e.content.referenceContent?(o(),i("div",Z,[y("span",null,d(e.content.referenceContent.senderName)+":",1),y("pre",{innerHTML:r(H)(e.content.referenceContent.content)},null,8,$)])):v("v-if",!0),y("pre",{innerHTML:e.__content},null,8,ee)],64)):v("v-if",!0),e.content.chatMessageType===r(A).EMOJI?(o(),i("img",{key:1,src:r(U).findEmoji(e.__content)},null,8,te)):v("v-if",!0),fe(e,"template")?(o(),f(N,{key:2,data:e},null,8,["data"])):v("v-if",!0),e.content.chatMessageType===r(A).IMAGE?(o(),f(r(M),{key:3,width:"240",src:e.__content},null,8,["src"])):v("v-if",!0),r(b)(e.content)?(o(),i(u,{key:4},[l(r(k),{class:a({"is-audio":e.content.chatMessageType===r(A).AUDIO}),component:e.content.chatMessageType===r(A).AUDIO?r(J):r(K)},null,8,["class","component"]),y("span",ne,d(r(w)(e.__content)),1)],64)):v("v-if",!0),e.content.chatMessageType===r(A).FILE?(o(),i("a",{key:5,href:e.content.fileUrl,onClick:g((()=>r(O)(e.content.fileUrl,e.__content)),["prevent"])},d(e.__content),9,se)):v("v-if",!0),v(' <div class="quick-menu">\n\t\t\t\t\t\t\t\t\t<n-icon :component="AddCircleOutline" />\n\t\t\t\t\t\t\t\t\t<n-icon :component="ChatbubbleEllipsesOutline" @click="() => setReferenceMsg(item)" />\n\t\t\t\t\t\t\t\t\t<n-icon :component="EllipsisHorizontal" />\n\t\t\t\t\t\t\t\t</div> '),l(r(_),{class:"quick-menu"},{default:m((()=>[l(r(I),{quaternary:"",size:"tiny"},{icon:m((()=>[oe])),_:1}),l(r(I),{quaternary:"",size:"tiny",onClick:()=>{return t=e,ae.currentReferenceMsg=t,void Object.assign(ae.currentReferenceMsg,{chatType:ae.currentSessionItem.chatType,receiver:ae.currentSessionItem.receiver,receiverAvatar:ae.currentSessionItem.avatar,receiverName:ae.currentSessionItem.name});var t}},{icon:m((()=>[l(r(k),{size:"17",component:r(F)},null,8,["component"])])),_:2},1032,["onClick"]),l(r(I),{quaternary:"",size:"tiny"},{icon:m((()=>[l(r(k),{component:r(X)},null,8,["component"])])),_:1})])),_:2},1024)],34)])):v("v-if",!0)]))],2)):v("v-if",!0)],64)))),128))])),_:1}),l(r(R),{show:me.value,"onUpdate:show":t[1]||(t[1]=e=>me.value=e)},null,8,["show"])],6))}});export{ie as default};
@@ -30,7 +30,6 @@ declare const _default: import("vue").DefineComponent<{
30
30
  lastSendTime: string;
31
31
  };
32
32
  handleSearch: () => Promise<void>;
33
- options: import("vue").ComputedRef<AnyObject[]>;
34
33
  resetAndSearch: () => void;
35
34
  startDateDisabled: (ts: number) => boolean;
36
35
  endDateDisabled: (ts: number) => boolean;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as a,computed as l,watch as t,openBlock as s,createBlock as r,unref as o,withCtx as n,createElementVNode as i,createVNode as u,toDisplayString as c,resolveDynamicComponent as d,createElementBlock as v,Fragment as m,renderList as p,withDirectives as f,createTextVNode as g,vShow as h}from"vue";import{NModal as y,NAvatar as b,NInputGroup as _,NInput as T,NSelect as k,NPopover as M,NTag as x,NIcon as I}from"naive-ui";import{SearchOutline as w}from"@vicons/ionicons5";import{useState as S}from"../hooks/useState.js";import{transformMessage as j,formatTime as A}from"../utils/index.js";import{last as L}from"lodash-es";import C from"../../../date-picker/index.js";import{searchChatRecordApi as E}from"../api/index.js";import{useDebounceFn as H}from"@vueuse/core";import{format as z}from"date-fns";import{useScrollLoading as D}from"../hooks/useScrollLoading.js";import{MESSAGE_TYPE as U}from"../constants/index.js";import{emojis as K}from"../utils/emoji.js";const O={class:"iho-chat-dialog__header"},R=i("span",{class:"left"},"聊天记录",-1),B={class:"center"},G={class:"iho-chat-dialog__content iho-chat-record-wrapper"},J={class:"chat-record-box"},N={class:"msg-box"},P={class:"name-and-time"},X={class:"content"},$=["src"],q=["src"],F=["innerHTML"],Q={key:1,class:"no-data"},V={class:"chat-record-box__filter"},W=i("span",{class:"filter-title"},"添加筛选条件",-1),Y={class:"filter-item"},Z=i("span",{class:"label"},"成员:",-1),ee={class:"filter-item"},ae=i("span",{class:"label"},"日期:",-1),le={class:"time-target"},te={class:"time-target__item"},se=i("span",null,"开始:",-1),re={class:"no-data"},oe={class:"time-target__item"},ne=i("span",null,"结束:",-1),ie={class:"no-data"};var ue=e({__name:"ChatRecord",props:{visible:{type:Boolean}},setup(e){const ue=e,ce={color:"#fff",textColor:"#666"},{state:de}=S(),ve=a(),me=a([]),pe=a(),fe=a([]),ge=a(),he=a(),ye=H(ke,500),be={page:0,hasMore:!0,lastSendTime:z(new Date,"yyyy-MM-dd HH:mm:ss")};async function _e(){var e;try{if(!be.hasMore)return;be.page++;const a=await E({orgId:de.orgId,keyword:pe.value,endTime:he.value?he.value+" 23:59:59":"",startTime:ge.value?ge.value+" 00:00:00":"",lastSendTime:be.lastSendTime,memberIdSet:fe.value,page:be.page,recordType:"ALL",sessionKey:de.currentSessionItem.sessionKey,userId:de.userInfo.id});Array.isArray(a)&&0!==a.length&&Array.isArray(a[0].recordList)||(be.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了"));let l=a||[];Array.isArray(a)&&a.length>0&&(l=a[0].recordList),be.lastSendTime=null==(e=L(l))?void 0:e.sendTime,l.forEach((e=>{var a,l,t,s,r;let o="";switch(e.content.chatMessageType){case U.TEXT:o=j(null==(a=e.content)?void 0:a.msg);break;case U.TEMPLATE:o=null==(s=null==(t=null==(l=e.content)?void 0:l.messageTemplate)?void 0:t.setting)?void 0:s.title;break;default:o=null==(r=e.content)?void 0:r.msg}e.__content=o})),me.value=be.page>1?me.value.concat(l):l}catch(e){console.log(e)}}D(ve,(()=>{_e()}));const Te=l((()=>[de.currentSessionItem]));function ke(){Object.assign(be,{page:0,hasMore:!0,lastSendTime:z(new Date,"yyyy-MM-dd HH:mm:ss")}),_e()}function Me(e){return!!he.value&&e>Date.parse(`${he.value} 23:59:59`)}function xe(e){return!!ge.value&&e<Date.parse(ge.value)}function Ie(e){switch(e){case"member":fe.value=[];break;case"start":ge.value=null;break;case"end":he.value=null}}function we(e){return u(m,null,[u("div",{style:"display: flex;align-items: center"},[u(b,{src:e.avatar,round:!0,size:"small"},null),u("span",{style:"margin-left: 10px"},[e.name])])])}return t([()=>fe.value,()=>ge.value,()=>he.value],(()=>{ue.visible&&ke()}),{deep:!0}),t((()=>ue.visible),(e=>{e?ke():(pe.value="",he.value=null,ge.value=null,fe.value=[],me.value=[])})),(e,a)=>(s(),r(o(y),{preset:"dialog",title:"","show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog"},{header:n((()=>[i("div",O,[R,i("div",B,[u(o(b),{round:"",size:30,src:o(de).currentSessionItem.avatar},null,8,["src"]),i("span",null,c(o(de).currentSessionItem.name),1)])])])),default:n((()=>[i("div",G,[u(o(_),null,{default:n((()=>[(s(),r(d((()=>[u(I,{component:w,size:18,color:"#6666"},null),fe.value.length>0?u(x,{closable:!0,bordered:!1,color:ce,onClose:()=>Ie("member")},{default:()=>{var e;return[g("成员:")," ",fe.value.length>1?fe.value.length+"人":null==(e=Te.value.find((e=>e.receiver===fe.value[0])))?void 0:e.name]}}):null,ge.value?u(x,{closable:!0,bordered:!1,color:ce,onClose:()=>Ie("start")},{default:()=>[g("起始时间: "),ge.value]}):null,he.value?u(x,{closable:!0,bordered:!1,color:ce,onClose:()=>Ie("end")},{default:()=>[g("结束时间: "),he.value]}):null])))),u(o(T),{placeholder:"搜索",value:pe.value,"onUpdate:value":a[0]||(a[0]=e=>pe.value=e),valueModifiers:{trim:!0},onInput:o(ye)},null,8,["value","onInput"])])),_:1}),i("div",J,[i("div",{class:"chat-record-box__content",ref_key:"recordRef",ref:ve},[me.value.length>0?(s(!0),v(m,{key:0},p(me.value,(e=>(s(),v("div",{class:"content-item",key:e.id},[u(o(b),{round:"",size:38,src:e.senderAvatar},null,8,["src"]),i("div",N,[i("div",P,[i("span",null,c(e.senderName),1),i("span",null,c(o(A)(e.sendTime).recordTime),1)]),i("div",X,[e.content.chatMessageType===o(U).IMAGE?(s(),v("img",{key:0,class:"img",src:e.__content},null,8,$)):e.content.chatMessageType===o(U).EMOJI?(s(),v("img",{key:1,class:"emoji",src:o(K).findEmoji(e.__content)},null,8,q)):(s(),v("p",{key:2,innerHTML:e.__content},null,8,F))])])])))),128)):(s(),v("div",Q,"没有找到相关记录"))],512),i("div",V,[W,i("div",Y,[Z,u(o(k),{value:fe.value,"onUpdate:value":a[1]||(a[1]=e=>fe.value=e),multiple:"","max-tag-count":1,"render-label":we,options:o(Te),"value-field":"receiver"},null,8,["value","options"])]),i("div",ee,[ae,i("div",le,[u(o(M),{trigger:"click","show-arrow":!1},{trigger:n((()=>[i("div",te,[se,f(u(o(x),{bordered:!1,color:ce,closable:"",onClose:a[2]||(a[2]=()=>Ie("start"))},{default:n((()=>[g(c(ge.value),1)])),_:1},512),[[h,ge.value]]),f(i("span",re,"点击选择",512),[[h,!ge.value]])])])),default:n((()=>[u(o(C),{"formatted-value":ge.value,"onUpdate:formatted-value":a[3]||(a[3]=e=>ge.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Me},null,8,["formatted-value"])])),_:1}),u(o(M),{trigger:"click","show-arrow":!1},{trigger:n((()=>[i("div",oe,[ne,f(u(o(x),{bordered:!1,color:ce,closable:"",onClose:a[4]||(a[4]=()=>Ie("end"))},{default:n((()=>[g(c(he.value),1)])),_:1},512),[[h,he.value]]),f(i("span",ie,"点击选择",512),[[h,!he.value]])])])),default:n((()=>[u(o(C),{"formatted-value":he.value,"onUpdate:formatted-value":a[5]||(a[5]=e=>he.value=e),type:"date",panel:"",clearable:"","is-date-disabled":xe},null,8,["formatted-value"])])),_:1})])])])])])])),_:1}))}});export{ue as default};
1
+ import{defineComponent as e,ref as a,watch as l,openBlock as t,createBlock as s,unref as r,withCtx as o,createElementVNode as n,createVNode as i,toDisplayString as u,resolveDynamicComponent as c,createElementBlock as d,Fragment as v,renderList as m,withDirectives as p,createTextVNode as f,vShow as g}from"vue";import{NModal as h,NAvatar as y,NInputGroup as b,NInput as _,NSelect as T,NPopover as k,NTag as M,NIcon as x}from"naive-ui";import{SearchOutline as w}from"@vicons/ionicons5";import{useState as I}from"../hooks/useState.js";import{transformMessage as j,formatTime as S}from"../utils/index.js";import{last as A}from"lodash-es";import{MESSAGE_TYPE as L}from"../constants/index.js";import{searchChatRecordApi as C}from"../api/index.js";import"trtc-sdk-v5";import E from"../../../date-picker/index.js";import{useDebounceFn as H}from"@vueuse/core";import{format as U}from"date-fns";import{useScrollLoading as z}from"../hooks/useScrollLoading.js";import{emojis as D}from"../utils/emoji.js";const G={class:"iho-chat-dialog__header"},K=n("span",{class:"left"},"聊天记录",-1),O={class:"center"},R={class:"iho-chat-dialog__content iho-chat-record-wrapper"},B={class:"chat-record-box"},J={class:"msg-box"},N={class:"name-and-time"},P={class:"content"},X=["src"],$=["src"],q=["innerHTML"],F={key:1,class:"no-data"},Q={class:"chat-record-box__filter"},V=n("span",{class:"filter-title"},"添加筛选条件",-1),W={class:"filter-item"},Y=n("span",{class:"label"},"成员:",-1),Z={class:"filter-item"},ee=n("span",{class:"label"},"日期:",-1),ae={class:"time-target"},le={class:"time-target__item"},te=n("span",null,"开始:",-1),se={class:"no-data"},re={class:"time-target__item"},oe=n("span",null,"结束:",-1),ne={class:"no-data"};var ie=e({__name:"ChatRecord",props:{visible:{type:Boolean}},setup(e){const ie=e,ue={color:"#fff",textColor:"#666"},{state:ce}=I(),de=a(),ve=a([]),me=a(),pe=a([]),fe=a(),ge=a(),he=H(_e,500),ye={page:0,hasMore:!0,lastSendTime:U(new Date,"yyyy-MM-dd HH:mm:ss")};async function be(){var e;try{if(!ye.hasMore)return;ye.page++;const a=await C({orgId:ce.orgId,keyword:me.value,endTime:ge.value?ge.value+" 23:59:59":"",startTime:fe.value?fe.value+" 00:00:00":"",lastSendTime:ye.lastSendTime,memberIdSet:pe.value,page:ye.page,recordType:"ALL",sessionKey:ce.currentSessionItem.sessionKey,userId:ce.userInfo.id});Array.isArray(a)&&0!==a.length&&Array.isArray(a[0].recordList)||(ye.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了"));let l=a||[];Array.isArray(a)&&a.length>0&&(l=a[0].recordList),ye.lastSendTime=null==(e=A(l))?void 0:e.sendTime,l.forEach((e=>{var a,l,t,s,r;let o="";switch(e.content.chatMessageType){case L.TEXT:o=j(null==(a=e.content)?void 0:a.msg);break;case L.TEMPLATE:o=null==(s=null==(t=null==(l=e.content)?void 0:l.messageTemplate)?void 0:t.setting)?void 0:s.title;break;default:o=null==(r=e.content)?void 0:r.msg}e.__content=o})),ve.value=ye.page>1?ve.value.concat(l):l}catch(e){console.log(e)}}function _e(){Object.assign(ye,{page:0,hasMore:!0,lastSendTime:U(new Date,"yyyy-MM-dd HH:mm:ss")}),be()}function Te(e){return!!ge.value&&e>Date.parse(`${ge.value} 23:59:59`)}function ke(e){return!!fe.value&&e<Date.parse(fe.value)}function Me(e){switch(e){case"member":pe.value=[];break;case"start":fe.value=null;break;case"end":ge.value=null}}function xe(e){return i(v,null,[i("div",{style:"display: flex;align-items: center"},[i(y,{src:e.avatar,round:!0,size:"small"},null),i("span",{style:"margin-left: 10px"},[e.name])])])}return z(de,(()=>{be()})),l([()=>pe.value,()=>fe.value,()=>ge.value],(()=>{ie.visible&&_e()}),{deep:!0}),l((()=>ie.visible),(e=>{e?_e():(me.value="",ge.value=null,fe.value=null,pe.value=[],ve.value=[])})),(e,a)=>(t(),s(r(h),{preset:"dialog",title:"","show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog"},{header:o((()=>[n("div",G,[K,n("div",O,[i(r(y),{round:"",size:30,src:r(ce).currentSessionItem.avatar},null,8,["src"]),n("span",null,u(r(ce).currentSessionItem.name),1)])])])),default:o((()=>[n("div",R,[i(r(b),null,{default:o((()=>[(t(),s(c((()=>[i(x,{component:w,size:18,color:"#6666"},null),pe.value.length>0?i(M,{closable:!0,bordered:!1,color:ue,onClose:()=>Me("member")},{default:()=>{var e;return[f("成员:")," ",pe.value.length>1?pe.value.length+"人":null==(e=ce.currentGroupUser.find((e=>e.id===pe.value[0])))?void 0:e.name]}}):null,fe.value?i(M,{closable:!0,bordered:!1,color:ue,onClose:()=>Me("start")},{default:()=>[f("起始时间: "),fe.value]}):null,ge.value?i(M,{closable:!0,bordered:!1,color:ue,onClose:()=>Me("end")},{default:()=>[f("结束时间: "),ge.value]}):null])))),i(r(_),{placeholder:"搜索",value:me.value,"onUpdate:value":a[0]||(a[0]=e=>me.value=e),valueModifiers:{trim:!0},onInput:r(he)},null,8,["value","onInput"])])),_:1}),n("div",B,[n("div",{class:"chat-record-box__content",ref_key:"recordRef",ref:de},[ve.value.length>0?(t(!0),d(v,{key:0},m(ve.value,(e=>(t(),d("div",{class:"content-item",key:e.id},[i(r(y),{round:"",size:38,src:e.senderAvatar},null,8,["src"]),n("div",J,[n("div",N,[n("span",null,u(e.senderName),1),n("span",null,u(r(S)(e.sendTime).recordTime),1)]),n("div",P,[e.content.chatMessageType===r(L).IMAGE?(t(),d("img",{key:0,class:"img",src:e.__content},null,8,X)):e.content.chatMessageType===r(L).EMOJI?(t(),d("img",{key:1,class:"emoji",src:r(D).findEmoji(e.__content)},null,8,$)):(t(),d("p",{key:2,innerHTML:e.__content},null,8,q))])])])))),128)):(t(),d("div",F,"没有找到相关记录"))],512),n("div",Q,[V,n("div",W,[Y,i(r(T),{value:pe.value,"onUpdate:value":a[1]||(a[1]=e=>pe.value=e),multiple:"","max-tag-count":1,"render-label":xe,options:r(ce).currentGroupUser,"value-field":"id"},null,8,["value","options"])]),n("div",Z,[ee,n("div",ae,[i(r(k),{trigger:"click","show-arrow":!1},{trigger:o((()=>[n("div",le,[te,p(i(r(M),{bordered:!1,color:ue,closable:"",onClose:a[2]||(a[2]=()=>Me("start"))},{default:o((()=>[f(u(fe.value),1)])),_:1},512),[[g,fe.value]]),p(n("span",se,"点击选择",512),[[g,!fe.value]])])])),default:o((()=>[i(r(E),{"formatted-value":fe.value,"onUpdate:formatted-value":a[3]||(a[3]=e=>fe.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Te},null,8,["formatted-value"])])),_:1}),i(r(k),{trigger:"click","show-arrow":!1},{trigger:o((()=>[n("div",re,[oe,p(i(r(M),{bordered:!1,color:ue,closable:"",onClose:a[4]||(a[4]=()=>Me("end"))},{default:o((()=>[f(u(ge.value),1)])),_:1},512),[[g,ge.value]]),p(n("span",ne,"点击选择",512),[[g,!ge.value]])])])),default:o((()=>[i(r(E),{"formatted-value":ge.value,"onUpdate:formatted-value":a[5]||(a[5]=e=>ge.value=e),type:"date",panel:"",clearable:"","is-date-disabled":ke},null,8,["formatted-value"])])),_:1})])])])])])])),_:1}))}});export{ie as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,watch as s,nextTick as a,openBlock as r,createBlock as t,unref as n,withCtx as i,createVNode as l,createTextVNode as u,createElementVNode as c,normalizeStyle as p,createElementBlock as f,Fragment as m,renderList as d,toDisplayString as v}from"vue";import{NPopover as h,NButton as g,NIcon as k,NInput as w,NAvatar as y}from"naive-ui";import{SearchOutline as j}from"@vicons/ionicons5";import{useState as S}from"../hooks/useState.js";import{useSession as _}from"../hooks/useSession.js";import{listUserApi as I,openSessionApi as M}from"../api/index.js";import{isArray as x}from"lodash-es";import{useDebounceFn as C}from"@vueuse/core";import{useTheme as b}from"../../../../shared/hooks/useTheme.js";import"date-fns";import"@vue/shared";import"../../../../shared/utils/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{useScrollLoading as z}from"../hooks/useScrollLoading.js";const L=["onClick"],N={class:"user-info"};var R=e({__name:"ChatSearch",setup(e){const R=b(),T=o(),U=o(),D=o(!1),E=o(),G=o(),{state:H}=S(),{openSession:O}=_(H),q={page:0,hasMore:!0},A=C((function(){Object.assign(q,{page:0,hasMore:!0}),B()}),300);async function B(){if(!E.value)return void(G.value=[]);if(!q.hasMore)return;q.page++;const e=await I({orgId:H.orgId,keyword:E.value,page:q.page,pageSize:10});x(e.records)&&q.page<=+e.total&&(G.value=q.page>1?G.value.concat(e.records):e.records,q.page==e.total&&(q.hasMore=!1,console.log("没有更多消息了")))}return z(T,(()=>{B()})),s((()=>D.value),(async e=>{var o;e&&(await a(),null==(o=U.value)||o.focus())})),(e,o)=>(r(),t(n(h),{show:D.value,"onUpdate:show":o[1]||(o[1]=e=>D.value=e),placement:"top",trigger:"click","display-directive":"show","show-arrow":!1,delay:0,overlap:""},{trigger:i((()=>[l(n(g),{color:"#ffffff4D",class:"search-trigger-btn"},{icon:i((()=>[l(n(k),{component:n(j),color:"#ffffff80"},null,8,["component"])])),default:i((()=>[u(" 搜索联系人 ")])),_:1})])),default:i((()=>[c("div",{class:"popover-search",style:p(n(R))},[l(n(w),{ref_key:"inputRef",ref:U,size:"small",clearable:"",autofocus:"",value:E.value,"onUpdate:value":o[0]||(o[0]=e=>E.value=e),valueModifiers:{trim:!0},onInput:n(A)},{prefix:i((()=>[l(n(k),{color:"#ffffff80",component:n(j)},null,8,["component"])])),_:1},8,["value","onInput"]),c("div",{class:"user-list-wrapper",ref_key:"listRef",ref:T},[(r(!0),f(m,null,d(G.value,(e=>(r(),f("div",{class:"user-item",key:e.id,onClick:()=>async function(e){D.value=!1;const o=await M({chatType:"SINGLE",receiver:e,sender:H.userInfo.id});O(o)}(e.id)},[l(n(y),{round:"",size:32,src:e.avatar},null,8,["src"]),c("div",N,[c("span",null,v(e.name),1),c("span",null,v(e.deptName),1),c("span",null,v(e.post),1)])],8,L)))),128))],512)],4)])),_:1},8,["show"]))}});export{R as default};
1
+ import{defineComponent as e,ref as o,watch as s,nextTick as r,openBlock as a,createBlock as t,unref as i,withCtx as n,createVNode as l,createTextVNode as u,createElementVNode as p,normalizeStyle as c,createElementBlock as f,Fragment as m,renderList as d,toDisplayString as v}from"vue";import{NPopover as h,NButton as g,NIcon as k,NInput as w,NAvatar as y}from"naive-ui";import{SearchOutline as j}from"@vicons/ionicons5";import{useState as S}from"../hooks/useState.js";import{useSession as _}from"../hooks/useSession.js";import"trtc-sdk-v5";import"date-fns";import{isArray as I}from"lodash-es";import"../utils/emoji.js";import{listUserApi as M,openSessionApi as x}from"../api/index.js";import{useDebounceFn as C}from"@vueuse/core";import{useTheme as b}from"../../../../shared/hooks/useTheme.js";import"@vue/shared";import"../../../../shared/utils/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{useScrollLoading as z}from"../hooks/useScrollLoading.js";const L=["onClick"],N={class:"user-info"};var R=e({__name:"ChatSearch",setup(e){const R=b(),T=o(),U=o(),D=o(!1),E=o(),G=o(),{state:H}=S(),{openSession:O}=_(H),q={page:0,hasMore:!0},A=C((function(){Object.assign(q,{page:0,hasMore:!0}),B()}),300);async function B(){if(!E.value)return void(G.value=[]);if(!q.hasMore)return;q.page++;const e=await M({orgId:H.orgId,keyword:E.value,page:q.page,pageSize:10});I(e.records)&&q.page<=+e.total&&(G.value=q.page>1?G.value.concat(e.records):e.records,q.page==e.total&&(q.hasMore=!1,console.log("没有更多消息了")))}return z(T,(()=>{B()})),s((()=>D.value),(async e=>{var o;e&&(await r(),null==(o=U.value)||o.focus())})),(e,o)=>(a(),t(i(h),{show:D.value,"onUpdate:show":o[1]||(o[1]=e=>D.value=e),placement:"top",trigger:"click","display-directive":"show","show-arrow":!1,delay:0,overlap:""},{trigger:n((()=>[l(i(g),{color:"#ffffff4D",class:"search-trigger-btn"},{icon:n((()=>[l(i(k),{component:i(j),color:"#ffffff80"},null,8,["component"])])),default:n((()=>[u(" 搜索联系人 ")])),_:1})])),default:n((()=>[p("div",{class:"popover-search",style:c(i(R))},[l(i(w),{ref_key:"inputRef",ref:U,size:"small",clearable:"",autofocus:"",value:E.value,"onUpdate:value":o[0]||(o[0]=e=>E.value=e),valueModifiers:{trim:!0},onInput:i(A)},{prefix:n((()=>[l(i(k),{color:"#ffffff80",component:i(j)},null,8,["component"])])),_:1},8,["value","onInput"]),p("div",{class:"user-list-wrapper",ref_key:"listRef",ref:T},[(a(!0),f(m,null,d(G.value,(e=>(a(),f("div",{class:"user-item",key:e.id,onClick:()=>async function(e){D.value=!1;const o=await x({chatType:"SINGLE",receiver:e,sender:H.userInfo.id});O(o)}(e.id)},[l(i(y),{round:"",size:32,src:e.avatar},null,8,["src"]),p("div",N,[p("span",null,v(e.name),1),p("span",null,v(e.deptName),1),p("span",null,v(e.post),1)])],8,L)))),128))],512)],4)])),_:1},8,["show"]))}});export{R as default};
@@ -5,6 +5,7 @@ declare const _default: import("vue").DefineComponent<{}, {
5
5
  };
6
6
  state: import("../types").IState;
7
7
  setCurrentSessionItem: (item: AnyObject) => void;
8
+ isGroupChat: import("vue").ComputedRef<boolean>;
8
9
  handleTopping: (value: boolean) => Promise<void>;
9
10
  closeUserDetail: () => void;
10
11
  NDrawer: any;
@@ -18,12 +19,20 @@ declare const _default: import("vue").DefineComponent<{}, {
18
19
  type: StringConstructor;
19
20
  required: true;
20
21
  };
22
+ disabled: {
23
+ type: BooleanConstructor;
24
+ default: boolean;
25
+ };
21
26
  }, {
22
27
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
23
28
  userId: {
24
29
  type: StringConstructor;
25
30
  required: true;
26
31
  };
32
+ disabled: {
33
+ type: BooleanConstructor;
34
+ default: boolean;
35
+ };
27
36
  }>> & {
28
37
  onClose?: ((...args: any[]) => any) | undefined;
29
38
  }>>;
@@ -66,8 +75,14 @@ declare const _default: import("vue").DefineComponent<{}, {
66
75
  type: StringConstructor;
67
76
  required: true;
68
77
  };
78
+ disabled: {
79
+ type: BooleanConstructor;
80
+ default: boolean;
81
+ };
69
82
  }>> & {
70
83
  onClose?: ((...args: any[]) => any) | undefined;
71
- }, {}>;
84
+ }, {
85
+ disabled: boolean;
86
+ }>;
72
87
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
73
88
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as s,openBlock as t,createBlock as o,unref as n,withCtx as r,createVNode as i,createElementVNode as a,toDisplayString as c}from"vue";import{NDrawer as m,NDrawerContent as u,NAvatar as l,NIcon as p,NSwitch as d}from"naive-ui";import{ChevronForwardOutline as f}from"@vicons/ionicons5";import{useState as h}from"../hooks/useState.js";import{useSession as v}from"../hooks/useSession.js";import S from"./PersonProfile.vue.js";import{toppingSessionApi as g}from"../api/index.js";import{isFunction as _}from"lodash-es";const I={class:"chat-set-wrapper"},w={class:"item user-info"},j={class:"item"},y=a("span",{class:"label"},"置顶聊天",-1);var k=e({__name:"ChatSet",setup(e){const k=s(),{state:C}=h(),{setCurrentSessionItem:U}=v(C);async function b(e){try{await g({sessionKey:C.currentSessionItem.sessionKey,id:C.currentSessionItem.id,topping:e}),U({topping:e})}catch(e){console.log(e)}}function x(){_(k["onUpdate:show"])&&k["onUpdate:show"](!1)}return(e,s)=>(t(),o(n(m),{width:320,"trap-focus":!1,"block-scroll":!1,to:".iho-chat"},{default:r((()=>[i(n(u),{title:"聊天设置"},{default:r((()=>[a("div",I,[i(S,{"user-id":n(C).currentSessionItem.receiver,onClose:x},{trigger:r((()=>[a("div",w,[i(n(l),{round:"",size:40,src:n(C).currentSessionItem.avatar},null,8,["src"]),a("span",null,c(n(C).currentSessionItem.name),1),i(n(p),{size:24,component:n(f),class:"item__right"},null,8,["component"])])])),_:1},8,["user-id"]),a("div",j,[y,i(n(d),{value:n(C).currentSessionItem.topping,"onUpdate:value":[s[0]||(s[0]=e=>n(C).currentSessionItem.topping=e),b],class:"item__right"},null,8,["value"])])])])),_:1})])),_:1}))}});export{k as default};
1
+ import{defineComponent as e,useAttrs as s,openBlock as t,createBlock as o,unref as i,withCtx as r,createVNode as n,createElementVNode as a,toDisplayString as m}from"vue";import{NDrawer as c,NDrawerContent as l,NAvatar as u,NIcon as p,NSwitch as d}from"naive-ui";import{ChevronForwardOutline as f}from"@vicons/ionicons5";import{useState as h}from"../hooks/useState.js";import{useSession as v}from"../hooks/useSession.js";import"trtc-sdk-v5";import"date-fns";import{isFunction as S}from"lodash-es";import"../utils/emoji.js";import g from"./PersonProfile.vue.js";import{toppingSessionApi as _}from"../api/index.js";const I={class:"chat-set-wrapper"},j={class:"item user-info"},w={class:"item"},b=a("span",{class:"label"},"置顶聊天",-1);var k=e({__name:"ChatSet",setup(e){const k=s(),{state:y}=h(),{setCurrentSessionItem:C,isGroupChat:U}=v(y);async function x(e){try{await _({sessionKey:y.currentSessionItem.sessionKey,id:y.currentSessionItem.id,topping:e}),C({topping:e})}catch(e){console.log(e)}}function z(){S(k["onUpdate:show"])&&k["onUpdate:show"](!1)}return(e,s)=>(t(),o(i(c),{width:320,"trap-focus":!1,"block-scroll":!1,to:".iho-chat"},{default:r((()=>[n(i(l),{title:"聊天设置"},{default:r((()=>[a("div",I,[n(g,{"user-id":i(y).currentSessionItem.receiver,onClose:z,disabled:!!i(U)},{trigger:r((()=>[a("div",j,[n(i(u),{round:"",size:40,src:i(y).currentSessionItem.avatar},null,8,["src"]),a("span",null,m(i(y).currentSessionItem.name),1),n(i(p),{size:24,component:i(f),class:"item__right"},null,8,["component"])])])),_:1},8,["user-id","disabled"]),a("div",w,[b,n(i(d),{value:i(y).currentSessionItem.topping,"onUpdate:value":[s[0]||(s[0]=e=>i(y).currentSessionItem.topping=e),x],class:"item__right"},null,8,["value"])])])])),_:1})])),_:1}))}});export{k as default};
@@ -0,0 +1,133 @@
1
+ import TRTC from 'trtc-sdk-v5';
2
+ declare const _default: import("vue").DefineComponent<{}, {
3
+ selfVideoRef: import("vue").Ref<any>;
4
+ remoteUsers: import("vue").Ref<string[]>;
5
+ state: import("../types").IState;
6
+ sendMessage: (message: {
7
+ chatType?: string | undefined;
8
+ content: import("../../../../shared/types").AnyObject;
9
+ receiver?: string | undefined;
10
+ }) => Promise<void>;
11
+ trtc: TRTC;
12
+ voiceOpen: import("vue").Ref<boolean>;
13
+ isAudio: import("vue").ComputedRef<boolean>;
14
+ isCall: import("vue").ComputedRef<boolean>;
15
+ startTimer: () => void;
16
+ resetTimer: () => void;
17
+ toggleAudio: () => Promise<void>;
18
+ messageTypeText: import("vue").ComputedRef<"语音" | "视频">;
19
+ timing: import("vue").Ref<string>;
20
+ toggleVideo: () => Promise<void>;
21
+ videocamOpen: import("vue").Ref<boolean>;
22
+ isConnect: import("vue").Ref<boolean>;
23
+ callUser: import("vue").ComputedRef<any>;
24
+ title: import("vue").ComputedRef<string>;
25
+ handleAddPerson: (checkedIds: string[]) => void;
26
+ handleCall: () => void;
27
+ handleEnter: () => Promise<void>;
28
+ handleExit: () => Promise<void>;
29
+ installEventHandlers: () => void;
30
+ uninstallEventHandlers: () => void;
31
+ handleRemoteVideoAvailable: (event: any) => Promise<void>;
32
+ handleRemoteAudioAvailable: (event: any) => void;
33
+ handleRemoteUserEnter: (event: any) => void;
34
+ handleRemoteUserExit: (event: any) => void;
35
+ handleError: (error: any) => void;
36
+ getName: (id: string) => any;
37
+ NButton: any;
38
+ NIcon: any;
39
+ ChatAdd: import("vue").DefineComponent<{
40
+ title: {
41
+ type: StringConstructor;
42
+ default: string;
43
+ };
44
+ mode: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ };
48
+ options: {
49
+ type: import("vue").PropType<import("../../../../shared/types").AnyObject[]>;
50
+ };
51
+ disabledIds: {
52
+ type: import("vue").PropType<string[]>;
53
+ };
54
+ defaultValue: {
55
+ type: import("vue").PropType<string[]>;
56
+ };
57
+ }, {
58
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
59
+ title: {
60
+ type: StringConstructor;
61
+ default: string;
62
+ };
63
+ mode: {
64
+ type: StringConstructor;
65
+ default: string;
66
+ };
67
+ options: {
68
+ type: import("vue").PropType<import("../../../../shared/types").AnyObject[]>;
69
+ };
70
+ disabledIds: {
71
+ type: import("vue").PropType<string[]>;
72
+ };
73
+ defaultValue: {
74
+ type: import("vue").PropType<string[]>;
75
+ };
76
+ }>> & {
77
+ onComfirm?: ((...args: any[]) => any) | undefined;
78
+ }>>;
79
+ emit: (event: "comfirm", ...args: any[]) => void;
80
+ state: import("../types").IState;
81
+ showModal: import("vue").Ref<boolean>;
82
+ checkedIds: import("vue").Ref<(string | number)[]>;
83
+ options: import("vue").Ref<import("../../../../shared/types").AnyObject[]>;
84
+ groupName: import("vue").Ref<string>;
85
+ btnDisabled: import("vue").ComputedRef<boolean>;
86
+ handlePositiveClick: () => Promise<void>;
87
+ renderSourceLabel: ({ option }: {
88
+ option: import("../../../../shared/types").AnyObject;
89
+ }) => JSX.Element;
90
+ renderTargetList: (props: {
91
+ onCheck: (checkedValueList: (string | number)[]) => void;
92
+ checkedOptions: import("../../../../shared/types").AnyObject[];
93
+ pattern: string;
94
+ }) => JSX.Element | null;
95
+ NModal: any;
96
+ NButton: any;
97
+ NTransfer: any;
98
+ NIcon: any;
99
+ NInput: any;
100
+ AddOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
101
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "comfirm"[], "comfirm", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
102
+ title: {
103
+ type: StringConstructor;
104
+ default: string;
105
+ };
106
+ mode: {
107
+ type: StringConstructor;
108
+ default: string;
109
+ };
110
+ options: {
111
+ type: import("vue").PropType<import("../../../../shared/types").AnyObject[]>;
112
+ };
113
+ disabledIds: {
114
+ type: import("vue").PropType<string[]>;
115
+ };
116
+ defaultValue: {
117
+ type: import("vue").PropType<string[]>;
118
+ };
119
+ }>> & {
120
+ onComfirm?: ((...args: any[]) => any) | undefined;
121
+ }, {
122
+ mode: string;
123
+ title: string;
124
+ }>;
125
+ Call: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
126
+ Videocam: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
127
+ VideocamOff: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
128
+ Mic: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
129
+ PersonAdd: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
130
+ MicOff: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
131
+ Close: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
132
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
133
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"./MultipleVideo.vue2.js";import i from"../../../../_virtual/_plugin-vue_export-helper.js";var l=i(e,[["__file","MultipleVideo.vue"]]);export{l as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as o,computed as n,openBlock as t,createElementBlock as s,createElementVNode as i,withDirectives as c,toDisplayString as l,unref as r,vShow as a,createVNode as u,withCtx as d,Fragment as p,renderList as m,createCommentVNode as f,createTextVNode as v,nextTick as E}from"vue";import{NButton as g,NIcon as _}from"naive-ui";import V from"./ChatAdd.vue.js";import{Close as T,Mic as I,MicOff as A,Videocam as h,VideocamOff as R,Call as M,PersonAdd as k}from"@vicons/ionicons5";import"date-fns";import{xor as y}from"lodash-es";import{CHAT_TYPE as w,SUBSCRIBE_MESSAGE_TYPE as b}from"../constants/index.js";import"../utils/emoji.js";import"../api/index.js";import{useVideo as O}from"../hooks/useVideo.js";import N from"trtc-sdk-v5";const x={class:"video-wrapper video-wrapper--multiple"},L={class:"video-header"},C={key:0,class:"video-main"},S={class:"video-main__left"},U=["data-name"],j={class:"video-bottom"},D={class:"btn-group"},$={class:"btn"},z=i("span",{class:"text"},"静音",-1),B={class:"btn"},H=i("span",{class:"text"},"摄像头",-1),P=i("span",{class:"text"},"结束会诊",-1),X={class:"btn"},Y=i("span",{class:"text"},"添加参会人",-1),q={class:"video-main__right"},G=["id","data-name"],F={class:"user"},J={class:"name"},K={key:0,class:"tip"},Q={key:0,class:"calling-box"},W={class:"btn-box"},Z={key:1,class:"opt-btn"},ee={class:"btn"},oe=i("span",null,"拒接",-1),ne={class:"btn"},te=i("span",null,"接听",-1);var se=e({__name:"MultipleVideo",setup(e){const se=o(),ie=o([]),{state:ce,sendMessage:le,trtc:re,voiceOpen:ae,isAudio:ue,isCall:de,startTimer:pe,resetTimer:me,toggleAudio:fe,messageTypeText:ve,timing:Ee,toggleVideo:ge,videocamOpen:_e}=O(),Ve=o(!1),Te=n((()=>de.value?ce.userInfo.name:ce.currentAVMsg.sendName)),Ie=n((()=>{if(!Ve.value)return"";const e=de.value?`(${ie.value.length+1}/${ce.currentAVMsg.checkedIds.length+1})`:"";return`${Te.value}发起的${ve.value}会诊${e} ${Ee.value}`}));function Ae(e){console.log("checkedIds :>> ",e),ce.currentAVMsg.checkedIds.push(...e),he()}function he(){var e;(null==(e=ce.currentAVMsg.checkedIds)?void 0:e.length)&&ce.currentAVMsg.checkedIds.forEach((e=>{le({chatType:w.SINGLE,content:{msg:ce.currentAVMsg.chatMessageType+","+ce.currentAVMsg.strRoomId,chatMessageType:b.AV_STATUS},receiver:e})})),Ve.value||Re()}async function Re(){const e=await N.isSupported();if(!e.result||!e.detail.isH264EncodeSupported||!e.detail.isH264DecodeSupported)return console.log("checkResult :>> ",e),void(ce.showMultipleVideo=!1);try{if(await re.enterRoom({strRoomId:ce.currentAVMsg.strRoomId,sdkAppId:parseInt(ce.userInfo.sdkAppID),userId:ce.userInfo.id,userSig:ce.userInfo.userSig}),Ve.value=!0,pe(),function(){if(re.on(N.EVENT.ERROR,Oe),re.on(N.EVENT.REMOTE_USER_ENTER,we),re.on(N.EVENT.REMOTE_AUDIO_AVAILABLE,ye),re.on(N.EVENT.REMOTE_USER_EXIT,be),ue.value)return;re.on(N.EVENT.REMOTE_VIDEO_AVAILABLE,ke)}(),await re.startLocalAudio(),ue.value)return;await re.startLocalVideo({view:se.value})}catch(e){console.log("error :>> ",e),ce.showMultipleVideo=!1}}async function Me(){try{if(ce.showMultipleVideo=!1,function(){if(re.off(N.EVENT.ERROR,Oe),re.off(N.EVENT.REMOTE_USER_ENTER,we),re.off(N.EVENT.REMOTE_AUDIO_AVAILABLE,ye),re.off(N.EVENT.REMOTE_USER_EXIT,be),ue.value)return;re.off(N.EVENT.REMOTE_VIDEO_AVAILABLE,ke)}(),await re.exitRoom(),await re.stopLocalAudio(),ue.value)return;await re.stopLocalVideo()}catch(e){console.log("error :>> ",e)}}async function ke(e){const{userId:o,streamType:n}=e;try{n===N.TYPE.STREAM_TYPE_MAIN&&(await E(),await re.startRemoteVideo({userId:o,streamType:n,view:o}))}catch(e){console.log("error :>> ",e)}}function ye(e){const{userId:o}=e;ie.value.includes(o)||ie.value.push(o)}function we(e){const{userId:o}=e;ie.value.push(o),pe()}function be(e){console.log("event :>> 退房",e);const{userId:o}=e;ie.value=y(ie.value,[o])}function Oe(e){console.log("error :>> ",e),ce.showMultipleVideo=!1}return(e,o)=>(t(),s("div",x,[i("div",L,[c(i("span",{class:"title"},l(r(Ie)),513),[[a,Ve.value]]),u(r(g),{quaternary:"",circle:"",color:"#ffffffcc",onClick:Me},{icon:d((()=>[u(r(_),{component:r(T)},null,8,["component"])])),_:1})]),Ve.value?(t(),s("div",C,[i("div",S,[i("div",{ref_key:"selfVideoRef",ref:se,class:"video-view","data-name":r(ce).userInfo.name},null,8,U),i("div",j,[i("div",D,[i("div",$,[u(r(g),{text:"",color:r(ae)?"#fff":"#000",onClick:r(fe)},{icon:d((()=>[u(r(_),{component:r(ae)?r(I):r(A)},null,8,["component"])])),_:1},8,["color","onClick"]),z]),i("div",B,[u(r(g),{text:"",color:r(_e)?"#fff":"#000",disabled:r(ue),onClick:r(ge)},{icon:d((()=>[u(r(_),{component:r(_e)?r(h):r(R)},null,8,["component"])])),_:1},8,["color","disabled","onClick"]),H]),i("div",{class:"btn",onClick:Me},[u(r(g),{circle:"",color:"#f17568",class:"btn--rotate"},{icon:d((()=>[u(r(_),{component:r(M)},null,8,["component"])])),_:1}),P]),u(V,{onComfirm:Ae},{trigger:d((()=>[i("div",X,[u(r(g),{text:"",color:"#fff"},{icon:d((()=>[u(r(_),{component:r(k)},null,8,["component"])])),_:1}),Y])])),_:1})])])]),i("div",q,[(t(!0),s(p,null,m(ie.value,(e=>{return t(),s("div",{key:e,id:e,class:"video-view","data-name":(o=e,(null==(n=ce.userList.find((e=>e.id===o)))?void 0:n.name)||"二狗子")},null,8,G);var o,n})),128))])])):(t(),s(p,{key:1},[i("div",F,[i("span",J,l(r(Te))+"发起的"+l(r(ve))+"会议",1),r(de)?f("v-if",!0):(t(),s("span",K,"邀请你加入"+l(r(ve))+"会议",1))]),r(de)?(t(),s("div",Q,[u(V,{onComfirm:Ae},{trigger:d((()=>[u(r(g),{size:"large",circle:"",color:"#000"},{icon:d((()=>[u(r(_),{component:r(k)},null,8,["component"])])),_:1})])),_:1}),i("p",null,"已邀请共"+l(r(ce).currentAVMsg.checkedIds.length)+"人",1),u(r(g),{size:"large",strong:"",round:"",type:"primary",onClick:he},{default:d((()=>[v("开始会诊")])),_:1}),i("div",W,[u(r(g),{color:"#000",round:""},{icon:d((()=>[u(r(_),{component:r(I)},null,8,["component"])])),_:1}),u(r(g),{color:"#000",round:""},{icon:d((()=>[u(r(_),{component:r(h)},null,8,["component"])])),_:1})])])):(t(),s("div",Z,[i("div",ee,[u(r(g),{circle:"",color:"#f17568",class:"btn--rotate",onClick:o[0]||(o[0]=()=>r(ce).showMultipleVideo=!1)},{icon:d((()=>[u(r(_),{size:"30",component:r(M)},null,8,["component"])])),_:1}),oe]),i("div",ne,[u(r(g),{circle:"",color:"#2ac98b",onClick:Re},{icon:d((()=>[u(r(_),{size:"30",component:r(M)},null,8,["component"])])),_:1}),te])]))],64))]))}});export{se as default};
@@ -5,12 +5,20 @@ declare const _default: import("vue").DefineComponent<{
5
5
  type: StringConstructor;
6
6
  required: true;
7
7
  };
8
+ disabled: {
9
+ type: BooleanConstructor;
10
+ default: boolean;
11
+ };
8
12
  }, {
9
13
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
10
14
  userId: {
11
15
  type: StringConstructor;
12
16
  required: true;
13
17
  };
18
+ disabled: {
19
+ type: BooleanConstructor;
20
+ default: boolean;
21
+ };
14
22
  }>> & {
15
23
  onClose?: ((...args: any[]) => any) | undefined;
16
24
  }>>;
@@ -53,7 +61,13 @@ declare const _default: import("vue").DefineComponent<{
53
61
  type: StringConstructor;
54
62
  required: true;
55
63
  };
64
+ disabled: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
56
68
  }>> & {
57
69
  onClose?: ((...args: any[]) => any) | undefined;
58
- }, {}>;
70
+ }, {
71
+ disabled: boolean;
72
+ }>;
59
73
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,reactive as l,computed as a,openBlock as n,createBlock as s,unref as r,createSlots as i,withCtx as t,createElementBlock as c,Fragment as u,withDirectives as p,createElementVNode as d,createVNode as v,vShow as m,toDisplayString as f,createTextVNode as y,renderList as k,createCommentVNode as b,renderSlot as h}from"vue";import{NPopover as g,NAvatar as _,NUpload as w,NUploadTrigger as C,NButton as I,NIcon as z}from"naive-ui";import{Camera as N,ChatbubbleEllipses as j,EyeOffOutline as x,EyeOutline as S,Close as $}from"@vicons/ionicons5";import{useState as D}from"../hooks/useState.js";import{useSession as E}from"../hooks/useSession.js";import{openSessionApi as P,getUserDetailApi as q,uploadFileApi as F}from"../api/index.js";const G={class:"popover-person"},L={class:"popover-person__left"},O={class:"profile"},T={class:"profile__text"},U={class:"popover-person__right"},A={class:"label"},B={class:"content"};var H=e({__name:"PersonProfile",props:{userId:{type:String,required:!0}},emits:["close"],setup(e,{emit:H}){const J=e,{state:K}=D(),{openSession:M}=E(K),Q=o(!1),R=o(!1),V=o(!1),W=l({}),X=[{label:"机构",value:"",key:"orgName"},{label:"姓名",value:"",key:"name"},{label:"归属科室",value:"",key:"deptName"},{label:"业务科室",value:"",key:"businessDeptNames"},{label:"手机号",value:"",key:"phone"},{label:"岗位",value:"",key:"post"},{label:"工号",value:"",key:"jobId"},{label:"性别",value:"",key:"orgName"}],Y=a((()=>(W.id&&X.forEach((e=>{const{key:o}=e;e.value=W[o]})),X)));async function Z(){Q.value=!1;const e=await P({chatType:"SINGLE",receiver:J.userId,sender:K.userInfo.id});M(e),H("close")}async function ee(e){if(!e)return;const o=await q({userId:J.userId});(null==o?void 0:o.id)?Object.assign(W,o):W.id=""}function oe(e){const{key:o,value:l}=e;return"phone"!==o||V.value?l:(l||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}async function le(e){const{file:o,name:l}=e.file,a=new FormData;a.append("sender",K.userInfo.id),a.append("file",o);const n=await F(a);if(W.avatar=n,!n)return console.log("上传失败")}return(e,o)=>(n(),s(r(g),{show:Q.value,"onUpdate:show":[o[3]||(o[3]=e=>Q.value=e),ee],trigger:"click","show-arrow":!1,scrollable:"","display-directive":"show",delay:0},i({default:t((()=>[W.id?(n(),c(u,{key:0},[p(d("div",G,[d("div",L,[d("div",O,[v(r(_),{src:W.avatar,bordered:"",round:"",size:100,onClickCapture:o[0]||(o[0]=e=>R.value=!0)},null,8,["src"]),v(r(w),{abstract:"",accept:"image/*",onChange:le},{default:t((()=>[v(r(C),{abstract:""},{default:t((({handleClick:e})=>[p(v(r(I),{circle:"",secondary:"",class:"edit-avatar",onClick:e},{icon:t((()=>[v(r(z),{size:"16",color:"#666666",component:r(N)},null,8,["component"])])),_:2},1032,["onClick"]),[[m,W.id===r(K).userInfo.id]])])),_:1})])),_:1}),d("div",T,[d("h4",null,f(W.name),1),d("p",null,f(W.orgName),1)]),v(r(I),{strong:"",secondary:"",onClick:Z},{default:t((()=>[v(r(z),{size:"13",color:"#666666",component:r(j),style:{"margin-right":"6px"}},null,8,["component"]),y(" 发消息 ")])),_:1})])]),d("div",U,[(n(!0),c(u,null,k(r(Y),((e,l)=>(n(),c("div",{class:"info-item",key:l},[d("span",A,f(e.label),1),d("div",B,[d("span",null,f(oe(e)),1),"phone"===e.key&&oe(e)?(n(),s(r(z),{key:0,size:"16",color:"#666666",component:V.value?r(x):r(S),style:{"margin-left":"10px"},onClick:o[1]||(o[1]=e=>V.value=!V.value)},null,8,["component"])):b("v-if",!0)])])))),128))])],512),[[m,!R.value]]),p(d("div",{class:"large-avatar",onClick:o[2]||(o[2]=e=>R.value=!1)},[v(r(I),{circle:"",size:"small",secondary:""},{icon:t((()=>[v(r(z),{size:24,component:r($),color:"#fff"},null,8,["component"])])),_:1}),v(r(_),{size:310,round:"",src:W.avatar},null,8,["src"])],512),[[m,R.value]])],64)):b("v-if",!0)])),_:2},[k(e.$slots,((o,l)=>({name:l,fn:t((()=>[h(e.$slots,l)]))})))]),1032,["show"]))}});export{H as default};
1
+ import{defineComponent as e,ref as o,reactive as a,computed as l,openBlock as n,createBlock as s,unref as r,createSlots as t,withCtx as i,createElementBlock as c,Fragment as u,withDirectives as p,createElementVNode as d,createVNode as v,vShow as m,toDisplayString as f,createTextVNode as y,renderList as k,createCommentVNode as b,renderSlot as g}from"vue";import{NPopover as h,NAvatar as _,NUpload as w,NUploadTrigger as C,NButton as I,NIcon as j}from"naive-ui";import{Camera as z,ChatbubbleEllipses as x,EyeOffOutline as N,EyeOutline as S,Close as $}from"@vicons/ionicons5";import{useState as D}from"../hooks/useState.js";import{useSession as P}from"../hooks/useSession.js";import"trtc-sdk-v5";import"date-fns";import"lodash-es";import"../utils/emoji.js";import{openSessionApi as T,getUserDetailApi as q,uploadFileApi as B}from"../api/index.js";const E={class:"popover-person"},F={class:"popover-person__left"},O={class:"profile"},U={class:"profile__text"},A={class:"popover-person__right"},G={class:"label"},H={class:"content"};var J=e({__name:"PersonProfile",props:{userId:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["close"],setup(e,{emit:J}){const K=e,{state:L}=D(),{openSession:M}=P(L),Q=o(!1),R=o(!1),V=o(!1),W=a({}),X=[{label:"机构",value:"",key:"orgName"},{label:"姓名",value:"",key:"name"},{label:"归属科室",value:"",key:"deptName"},{label:"业务科室",value:"",key:"businessDeptNames"},{label:"手机号",value:"",key:"phone"},{label:"岗位",value:"",key:"post"},{label:"工号",value:"",key:"jobId"},{label:"性别",value:"",key:"orgName"}],Y=l((()=>(W.id&&X.forEach((e=>{const{key:o}=e;e.value=W[o]})),X)));async function Z(){Q.value=!1;const e=await T({chatType:L.currentSessionItem.chatType,receiver:K.userId,sender:L.userInfo.id});M(e),J("close")}async function ee(e){if(!e)return;const o=await q({userId:K.userId});(null==o?void 0:o.id)?Object.assign(W,o):W.id=""}function oe(e){const{key:o,value:a}=e;return"phone"!==o||V.value?a:(a||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}async function ae(e){const{file:o,name:a}=e.file,l=new FormData;l.append("sender",L.userInfo.id),l.append("file",o);const n=await B(l);if(W.avatar=n,!n)return console.log("上传失败")}return(o,a)=>(n(),s(r(h),{show:Q.value,"onUpdate:show":[a[3]||(a[3]=e=>Q.value=e),ee],trigger:e.disabled?"manual":"click","show-arrow":!1,scrollable:"",delay:0},t({default:i((()=>[W.id?(n(),c(u,{key:0},[p(d("div",E,[d("div",F,[d("div",O,[v(r(_),{src:W.avatar,bordered:"",round:"",size:100,onClickCapture:a[0]||(a[0]=e=>R.value=!0)},null,8,["src"]),v(r(w),{abstract:"",accept:"image/*",onChange:ae},{default:i((()=>[v(r(C),{abstract:""},{default:i((({handleClick:e})=>[p(v(r(I),{circle:"",secondary:"",class:"edit-avatar",onClick:e},{icon:i((()=>[v(r(j),{size:"16",color:"#666666",component:r(z)},null,8,["component"])])),_:2},1032,["onClick"]),[[m,W.id===r(L).userInfo.id]])])),_:1})])),_:1}),d("div",U,[d("h4",null,f(W.name),1),d("p",null,f(W.orgName),1)]),v(r(I),{strong:"",secondary:"",onClick:Z},{default:i((()=>[v(r(j),{size:"13",color:"#666666",component:r(x),style:{"margin-right":"6px"}},null,8,["component"]),y(" 发消息 ")])),_:1})])]),d("div",A,[(n(!0),c(u,null,k(r(Y),((e,o)=>(n(),c("div",{class:"info-item",key:o},[d("span",G,f(e.label),1),d("div",H,[d("span",null,f(oe(e)),1),"phone"===e.key&&oe(e)?(n(),s(r(j),{key:0,size:"16",color:"#666666",component:V.value?r(N):r(S),style:{"margin-left":"10px"},onClick:a[1]||(a[1]=e=>V.value=!V.value)},null,8,["component"])):b("v-if",!0)])])))),128))])],512),[[m,!R.value]]),p(d("div",{class:"large-avatar",onClick:a[2]||(a[2]=e=>R.value=!1)},[v(r(I),{circle:"",size:"small",secondary:""},{icon:i((()=>[v(r(j),{size:24,component:r($),color:"#fff"},null,8,["component"])])),_:1}),v(r(_),{size:310,round:"",src:W.avatar},null,8,["src"])],512),[[m,R.value]])],64)):b("v-if",!0)])),_:2},[k(o.$slots,((e,a)=>({name:a,fn:i((()=>[g(o.$slots,a)]))})))]),1032,["show","trigger"]))}});export{J as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as s,computed as i,watch as n,withDirectives as t,openBlock as a,createElementBlock as l,normalizeStyle as o,unref as r,createBlock as u,createCommentVNode as d,createElementVNode as m,Fragment as v,renderList as c,withCtx as p,createTextVNode as f,toDisplayString as k,normalizeClass as _,createVNode as y,vShow as h}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 N}from"../utils/index.js";const T={class:"sider-list__filter box-shadow"},w=["onClick"],I={class:"avatar-right"},R={class:"name"},z={class:"msg-tip"},H={class:"msg-tip__content"},K=["innerHTML"];var U=e({__name:"SiderList",setup(e){const U="all",B="unread",E=s(300),O=s(),V=s(!1),q=s([{label:"全部",key:U},{label:"未读",key:B}]),A=s("all"),{state:D,emit:F}=M(),{openSession:G,unreadTotal:J,setSessionList:P}=L(D),Q=i((()=>Math.min(Math.max(E.value,240),360))),W=i((()=>j(D.sessionList)));function X(e){!e.id||D.sessionList.map((e=>e.id)).includes(e.id)?D.sessionList.forEach((s=>{if(s.receiver===e.receiver){let{unreadNum:i=0}=s;Object.assign(s,e),e.sessionKey!==D.currentSessionItem.sessionKey&&(s.unreadNum=++i)}})):P([...D.sessionList,e])}function Y({distance:e}){E.value=E.value+e}function Z(e,s=r(A)){var i;return s===U||(s===B?(null!=(i=e.unreadNum)?i:0)>0:void 0)}return n([()=>D.isChangeSession,()=>D.isUpdateSession],(([e,s])=>{e&&(X(D.currentSessionItem),D.isChangeSession=!1),s&&(X(D.updateSessionItem),D.isUpdateSession=!1)}),{immediate:!0}),n((()=>J.value),(e=>{const s=W.value.filter((e=>Z(e,B)));F("unread-message-update",e,s)})),(e,s)=>t((a(),l("section",{class:"sider-list",style:o({width:r(Q)+"px"})},[V.value?(a(),u(r(S),{key:0,stroke:"#5585f5"})):d("v-if",!0),d(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),m("div",T,[(a(!0),l(v,null,c(q.value,(e=>(a(),u(r(g),{type:A.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return s=e.key,void(A.value=s);var s}},{default:p((()=>[f(k(e.label)+"("+k(r(J))+") ",1)])),_:2},1032,["type","onClick"])))),128))]),m("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:O},[(a(!0),l(v,null,c(r(W),(e=>t((a(),l("div",{key:e.id,onClick:()=>r(G)(e),class:_(["sider-list__box__item",{active:e.id===r(D).id},e.topping?"sider-list__box__item--top":""])},[y(r(b),{round:"",size:"large",src:e.avatar},null,8,["src"]),m("div",I,[m("div",R,[m("h4",null,k(e.name),1),m("span",null,k(e.lastMessage?r(N)(e.lastMessageSendTime).siderMsgTime:""),1)]),m("div",z,[m("div",H,[m("div",{innerHTML:e.lastMessageContent},null,8,K)]),y(r(x),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],10,w)),[[h,Z(e)]]))),128))],512)],4)),[[r(C),{mode:"VR",onMove:Y}]])}});export{U as default};
1
+ import{defineComponent as e,ref as s,computed as i,watch as t,withDirectives as n,openBlock as a,createElementBlock as l,normalizeStyle as o,unref as r,createBlock as u,createCommentVNode as d,createElementVNode as m,Fragment as v,renderList as c,withCtx as p,createTextVNode as f,toDisplayString as k,normalizeClass as y,createVNode as _,vShow as h}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"trtc-sdk-v5";import{listSort as C,formatTime as j}from"../utils/index.js";import{vFlexibleResize as N}from"../../../../shared/directive/flexibleResize.js";const T={class:"sider-list__filter box-shadow"},K=["onClick"],w={class:"avatar-right"},I={class:"name"},R={class:"msg-tip"},z={class:"msg-tip__content"},H=["innerHTML"];var U=e({__name:"SiderList",setup(e){const U="all",B="unread",E=s(300),O=s(),V=s(!1),q=s([{label:"全部",key:U},{label:"未读",key:B}]),A=s("all"),{state:D,emit:F}=M(),{openSession:G,unreadTotal:J,setSessionList:P}=L(D),Q=i((()=>Math.min(Math.max(E.value,240),360))),W=i((()=>C(D.sessionList)));function X(e){!e.id||D.sessionList.map((e=>e.id)).includes(e.id)?D.sessionList.forEach((s=>{if(s.sessionKey===e.sessionKey){let{unreadNum:i=0}=s;Object.assign(s,e),e.sessionKey!==D.currentSessionItem.sessionKey&&(s.unreadNum=++i)}})):P([...D.sessionList,e])}function Y({distance:e}){E.value=E.value+e}function Z(e,s=r(A)){var i;return s===U||(s===B?(null!=(i=e.unreadNum)?i:0)>0:void 0)}return t([()=>D.isChangeSession,()=>D.isUpdateSession],(([e,s])=>{e&&(X(D.currentSessionItem),D.isChangeSession=!1),s&&(X(D.updateSessionItem),D.isUpdateSession=!1)}),{immediate:!0}),t((()=>J.value),(e=>{const s=W.value.filter((e=>Z(e,B)));F("unread-message-update",e,s)})),(e,s)=>n((a(),l("section",{class:"sider-list",style:o({width:r(Q)+"px"})},[V.value?(a(),u(r(S),{key:0,stroke:"#5585f5"})):d("v-if",!0),d(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),m("div",T,[(a(!0),l(v,null,c(q.value,(e=>(a(),u(r(g),{type:A.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return s=e.key,void(A.value=s);var s}},{default:p((()=>[f(k(e.label)+"("+k(r(J))+") ",1)])),_:2},1032,["type","onClick"])))),128))]),m("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:O},[(a(!0),l(v,null,c(r(W),(e=>n((a(),l("div",{key:e.id,onClick:()=>r(G)(e),class:y(["sider-list__box__item",{active:e.id===r(D).id},e.topping?"sider-list__box__item--top":""])},[_(r(b),{round:"",size:"large",src:e.avatar},null,8,["src"]),m("div",w,[m("div",I,[m("h4",null,k(e.name),1),m("span",null,k(e.lastMessage?r(j)(e.lastMessageSendTime).siderMsgTime:""),1)]),m("div",R,[m("div",z,[m("div",{innerHTML:e.lastMessageContent},null,8,H)]),_(r(x),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],10,K)),[[h,Z(e)]]))),128))],512)],4)),[[r(N),{mode:"VR",onMove:Y}]])}});export{U as default};
@@ -1,26 +1,40 @@
1
1
  import TRTC from 'trtc-sdk-v5';
2
- import { MESSAGE_TYPE } from '../constants';
2
+ import { AV_STATUS } from '../constants';
3
3
  declare const _default: import("vue").DefineComponent<{}, {
4
+ sendMessage: (message: {
5
+ chatType?: string | undefined;
6
+ content: import("../../../../shared/types").AnyObject;
7
+ receiver?: string | undefined;
8
+ }) => Promise<void>;
9
+ state: import("../types").IState;
10
+ trtc: TRTC;
11
+ timing: import("vue").Ref<string>;
12
+ voiceOpen: import("vue").Ref<boolean>;
13
+ isAudio: import("vue").ComputedRef<boolean>;
14
+ isCall: import("vue").ComputedRef<boolean>;
15
+ startTimer: () => void;
16
+ resetTimer: () => void;
17
+ toggleAudio: () => Promise<void>;
18
+ messageTypeText: import("vue").ComputedRef<"语音" | "视频">;
4
19
  time: {
5
20
  timer: any;
6
21
  seconds: number;
7
22
  };
8
- state: import("../types").IState;
9
23
  videoRef: import("vue").Ref<any>;
10
24
  selfVideoRef: import("vue").Ref<any>;
11
- tipContent: import("vue").Ref<any>;
12
25
  isConnect: import("vue").Ref<boolean>;
13
- voiceOpen: import("vue").Ref<boolean>;
14
- messageType: import("vue").ComputedRef<any>;
15
- callMode: import("vue").ComputedRef<any>;
26
+ timeout: any;
16
27
  info: import("vue").ComputedRef<{
17
- sessionKey: any;
18
28
  avatar: any;
19
29
  name: any;
20
30
  userId: any;
21
31
  }>;
22
- trtc: TRTC;
32
+ tipContent: import("vue").ComputedRef<string>;
33
+ status: import("vue").ComputedRef<any>;
34
+ handleStatus: (status?: AV_STATUS) => Promise<void>;
35
+ init: () => Promise<void>;
23
36
  handleEnter: () => Promise<void>;
37
+ handleFinish: () => void;
24
38
  handleExit: () => Promise<void>;
25
39
  installEventHandlers: () => void;
26
40
  uninstallEventHandlers: () => void;
@@ -28,16 +42,13 @@ declare const _default: import("vue").DefineComponent<{}, {
28
42
  handleRemoteAudioAvailable: (event: any) => void;
29
43
  handleRemoteUserEnter: () => void;
30
44
  handleRemoteUserExit: (event: any) => void;
31
- startTimer: () => void;
32
- resetTimer: () => void;
33
- formatSeconds: (seconds: number) => string;
34
- toggleAudio: () => Promise<void>;
45
+ handleError: (error: any) => void;
35
46
  NButton: any;
36
47
  NAvatar: any;
37
48
  NIcon: any;
38
49
  Call: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
39
50
  MicOffCircle: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
40
51
  Mic: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
41
- MESSAGE_TYPE: typeof MESSAGE_TYPE;
52
+ AV_STATUS: typeof AV_STATUS;
42
53
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
43
54
  export default _default;