cnhis-design-vue 3.2.14-beta.21 → 3.2.14-beta.24

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 (110) hide show
  1. package/README.md +87 -87
  2. package/es/components/button-print/index.d.ts +4 -0
  3. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -0
  4. package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +4 -0
  5. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
  6. package/es/components/classification/src/components/table-modal/index.vue.d.ts +3 -0
  7. package/es/components/fabric-chart/index.d.ts +19 -2
  8. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +19 -2
  9. package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
  10. package/es/components/fabric-chart/src/components/PopupMenu.js +1 -1
  11. package/es/components/fabric-chart/src/components/PopupTip.vue.d.ts +13 -0
  12. package/es/components/fabric-chart/src/components/PopupTip.vue2.js +1 -1
  13. package/es/components/fabric-chart/src/components/useStyle.js +1 -1
  14. package/es/components/fabric-chart/src/constants/index.js +1 -1
  15. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.d.ts +1 -0
  16. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.d.ts +1 -0
  17. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  18. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.d.ts +1 -0
  19. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  20. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.d.ts +7 -1
  21. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
  22. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  23. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.d.ts +1 -0
  24. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  25. package/es/components/fabric-chart/src/interface.d.ts +2 -0
  26. package/es/components/field-set/src/FieldColor.vue.d.ts +2 -2
  27. package/es/components/field-set/src/FieldFilter.vue.d.ts +2 -2
  28. package/es/components/field-set/src/FieldSet.vue.d.ts +2 -2
  29. package/es/components/field-set/src/components/table-row.vue.d.ts +2 -2
  30. package/es/components/iho-chat/index.d.ts +20 -4
  31. package/es/components/iho-chat/src/Index.vue.d.ts +20 -4
  32. package/es/components/iho-chat/src/Index.vue2.js +1 -1
  33. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
  34. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  35. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +1 -0
  36. package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
  37. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +1 -1
  38. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  39. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  40. package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
  41. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  42. package/es/components/iho-chat/src/components/ContextMenu.js +1 -1
  43. package/es/components/iho-chat/src/components/MessageTemplate.vue.d.ts +1 -1
  44. package/es/components/iho-chat/src/components/MessageTemplate.vue2.js +1 -1
  45. package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -1
  46. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  47. package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
  48. package/es/components/iho-chat/src/components/Video.vue2.js +1 -1
  49. package/es/components/iho-chat/src/constants/index.d.ts +2 -1
  50. package/es/components/iho-chat/src/constants/index.js +1 -1
  51. package/es/components/iho-chat/src/hooks/useData.d.ts +3 -3
  52. package/es/components/iho-chat/src/hooks/useVideo.js +1 -1
  53. package/es/components/iho-chat/src/hooks/useWebSocket.js +1 -1
  54. package/es/components/index.css +1 -1
  55. package/es/components/scale-view/index.d.ts +31 -0
  56. package/es/components/scale-view/src/ScaleView.vue.d.ts +13 -0
  57. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  58. package/es/components/scale-view/src/components/composables/choose-common.js +1 -1
  59. package/es/components/scale-view/src/components/formitem/r-checkbox.d.ts +9 -0
  60. package/es/components/scale-view/src/components/formitem/r-checkbox.js +1 -1
  61. package/es/components/scale-view/src/components/formitem/r-input.d.ts +9 -0
  62. package/es/components/scale-view/src/components/formitem/r-input.js +1 -1
  63. package/es/components/scale-view/src/components/formitem/r-radio.d.ts +9 -0
  64. package/es/components/scale-view/src/components/formitem/r-radio.js +1 -1
  65. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  66. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +4 -0
  67. package/es/components/scale-view/src/hooks/scaleview-props.js +1 -1
  68. package/es/components/scale-view/src/hooks/use-component.d.ts +72 -0
  69. package/es/components/scale-view/style/index.css +1 -1
  70. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  71. package/es/components/template-render/src/components/index.d.ts +23 -23
  72. package/es/env.d.ts +25 -25
  73. package/es/shared/assets/img/ai__avatar.png.js +1 -1
  74. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  75. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  76. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  77. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  78. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  79. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  80. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  81. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  82. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  83. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  84. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  85. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  86. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  87. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  88. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  89. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  90. package/es/shared/assets/img/failure.png.js +1 -1
  91. package/es/shared/assets/img/logo.png.js +1 -1
  92. package/es/shared/assets/img/no-permission.png.js +1 -1
  93. package/es/shared/assets/img/nodata.png.js +1 -1
  94. package/es/shared/assets/img/notfound.png.js +1 -1
  95. package/es/shared/assets/img/qr.png.js +1 -1
  96. package/es/shared/assets/img/success.png.js +1 -1
  97. package/es/shared/assets/img/table_style_2.png.js +1 -1
  98. package/es/shared/assets/img/video.png.js +1 -1
  99. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  100. package/es/shared/assets/img/xb_big.png.js +1 -1
  101. package/es/shared/assets/img/xb_small.png.js +1 -1
  102. package/es/shared/package.json.js +1 -1
  103. package/package.json +2 -2
  104. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  105. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  106. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  107. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  108. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  109. package/es/shared/utils/fabricjs/index.d.ts +0 -6823
  110. package/es/shared/utils/tapable/index.d.ts +0 -139
@@ -29,7 +29,8 @@ export declare enum SUBSCRIBE_MESSAGE_TYPE {
29
29
  NEW_SESSION = "NEW_SESSION",
30
30
  MESSAGE = "MESSAGE",
31
31
  AV_STATUS = "AV_STATUS",
32
- RECALL_MESSAGE = "RECALL_MESSAGE"
32
+ RECALL_MESSAGE = "RECALL_MESSAGE",
33
+ DISABLE_SESSION = "DISABLE_SESSION"
33
34
  }
34
35
  /**
35
36
  * 音视频接通状态
@@ -1 +1 @@
1
- var E=(E=>(E.SINGLE="SINGLE",E.GROUP="GROUP",E))(E||{}),A=(E=>(E.TEXT="TEXT",E.FILE="FILE",E.EMOJI="EMOJI",E.IMAGE="IMAGE",E.TEMPLATE="TEMPLATE",E.BLEND="BLEND",E.FORWARD="FORWARD",E.QUICK_REPLY="QUICK_REPLY",E.AUDIO="AUDIO",E.VIDEO="VIDEO",E))(A||{}),L=(E=>(E.JOIN_GROUP="JOIN_GROUP",E.LEAVE_GROUP="LEAVE_GROUP",E.NEW_SESSION="NEW_SESSION",E.MESSAGE="MESSAGE",E.AV_STATUS="AV_STATUS",E.RECALL_MESSAGE="RECALL_MESSAGE",E))(L||{}),S=(E=>(E.IN_CALL="IN_CALL",E.CALL_BUSY="CALL_BUSY",E.NO_RESPONSE="NO_RESPONSE",E.FINISHED="FINISHED",E.REJECTED="REJECTED",E.CANCELED="CANCELED",E))(S||{}),I=(E=>(E.REMOVED="REMOVED",E.ENABLED="ENABLED",E.ENDED="ENDED",E.EXITED="EXITED",E))(I||{});export{S as AV_STATUS,E as CHAT_TYPE,A as MESSAGE_TYPE,I as STATUS,L as SUBSCRIBE_MESSAGE_TYPE};
1
+ var E=(E=>(E.SINGLE="SINGLE",E.GROUP="GROUP",E))(E||{}),S=(E=>(E.TEXT="TEXT",E.FILE="FILE",E.EMOJI="EMOJI",E.IMAGE="IMAGE",E.TEMPLATE="TEMPLATE",E.BLEND="BLEND",E.FORWARD="FORWARD",E.QUICK_REPLY="QUICK_REPLY",E.AUDIO="AUDIO",E.VIDEO="VIDEO",E))(S||{}),A=(E=>(E.JOIN_GROUP="JOIN_GROUP",E.LEAVE_GROUP="LEAVE_GROUP",E.NEW_SESSION="NEW_SESSION",E.MESSAGE="MESSAGE",E.AV_STATUS="AV_STATUS",E.RECALL_MESSAGE="RECALL_MESSAGE",E.DISABLE_SESSION="DISABLE_SESSION",E))(A||{}),I=(E=>(E.IN_CALL="IN_CALL",E.CALL_BUSY="CALL_BUSY",E.NO_RESPONSE="NO_RESPONSE",E.FINISHED="FINISHED",E.REJECTED="REJECTED",E.CANCELED="CANCELED",E))(I||{}),L=(E=>(E.REMOVED="REMOVED",E.ENABLED="ENABLED",E.ENDED="ENDED",E.EXITED="EXITED",E))(L||{});export{I as AV_STATUS,E as CHAT_TYPE,S as MESSAGE_TYPE,L as STATUS,A as SUBSCRIBE_MESSAGE_TYPE};
@@ -2,7 +2,7 @@ import { InjectionKey } from 'vue';
2
2
  import { ChatSock } from '../utils/chatSock';
3
3
  import { AnyObject } from '../../../../shared/types';
4
4
  export declare const InjectionIChatData: InjectionKey<ReturnType<typeof initData>>;
5
- export declare function initData(props: AnyObject, emit: (event: 'template-click' | 'unread-message-update' | 'session-change', ...args: any[]) => void): {
5
+ export declare function initData(props: AnyObject, emit: (event: 'template-click' | 'unread-message-update' | 'session-change' | 'session-close', ...args: any[]) => void): {
6
6
  cssVars: import("vue").ComputedRef<AnyObject>;
7
7
  stompClient: import("vue").Ref<ChatSock | undefined>;
8
8
  state: {
@@ -45,7 +45,7 @@ export declare function initData(props: AnyObject, emit: (event: 'template-click
45
45
  setCurrentSessionItem: (item: AnyObject) => void;
46
46
  setUpdateSessionItem: (item: AnyObject) => void;
47
47
  setSessionList: (list: AnyObject[]) => void;
48
- emit: (event: 'template-click' | 'unread-message-update' | 'session-change', ...args: any[]) => void;
48
+ emit: (event: 'template-click' | 'unread-message-update' | 'session-change' | 'session-close', ...args: any[]) => void;
49
49
  };
50
50
  export declare const useData: () => {
51
51
  cssVars: import("vue").ComputedRef<AnyObject>;
@@ -90,5 +90,5 @@ export declare const useData: () => {
90
90
  setCurrentSessionItem: (item: AnyObject) => void;
91
91
  setUpdateSessionItem: (item: AnyObject) => void;
92
92
  setSessionList: (list: AnyObject[]) => void;
93
- emit: (event: 'template-click' | 'unread-message-update' | 'session-change', ...args: any[]) => void;
93
+ emit: (event: 'template-click' | 'unread-message-update' | 'session-change' | 'session-close', ...args: any[]) => void;
94
94
  };
@@ -1 +1 @@
1
- import{ref as e,computed as t,onBeforeUnmount as o}from"vue";import{useData as n}from"./useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as a}from"../constants/index.js";import"../api/index.js";import{formatSeconds as i}from"../utils/index.js";import l from"trtc-sdk-v5";function E(){const E={timer:null,seconds:0},{state:s,sendMessage:r}=n(),d=e(""),u=e(!0),m=e(!0),c=t((()=>s.currentAVMsg.chatMessageType===a.AUDIO)),R=t((()=>"call"===s.currentAVMsg.callMode)),T=t((()=>{var e,t;return c.value?(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.130"))||"语音":(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.131"))||"视频"})),v=l.create();function A(){d.value="00:00:00",E.timer&&clearInterval(E.timer),E.timer=null,E.seconds=0}return o((()=>{A()})),{state:s,sendMessage:r,trtc:v,timing:d,voiceOpen:u,videocamOpen:m,isAudio:c,isCall:R,startTimer:function(){A(),E.timer=setInterval((()=>{E.seconds++,d.value=i(E.seconds)}),1e3)},resetTimer:A,toggleAudio:async function(){await v.updateLocalAudio({mute:!u.value}),u.value=!u.value},toggleVideo:async function(){await v.updateLocalVideo({mute:!m.value}),m.value=!m.value},messageTypeText:T,time:E,installEventHandlers:function({handleError:e,handleRemoteUserEnter:t,handleRemoteAudioAvailable:o,handleRemoteUserExit:n,handleRemoteVideoAvailable:a}){v.on(l.EVENT.ERROR,e),v.on(l.EVENT.REMOTE_USER_ENTER,t),v.on(l.EVENT.REMOTE_AUDIO_AVAILABLE,o),v.on(l.EVENT.REMOTE_USER_EXIT,n),c.value||v.on(l.EVENT.REMOTE_VIDEO_AVAILABLE,a)},uninstallEventHandlers:function({handleError:e,handleRemoteUserEnter:t,handleRemoteAudioAvailable:o,handleRemoteUserExit:n,handleRemoteVideoAvailable:a}){v.off(l.EVENT.ERROR,e),v.off(l.EVENT.REMOTE_USER_ENTER,t),v.off(l.EVENT.REMOTE_AUDIO_AVAILABLE,o),v.off(l.EVENT.REMOTE_USER_EXIT,n),c.value||v.off(l.EVENT.REMOTE_VIDEO_AVAILABLE,a)}}}export{E as useVideo};
1
+ import{ref as e,computed as t,onBeforeUnmount as o}from"vue";import{useData as n}from"./useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as a}from"../constants/index.js";import"../api/index.js";import{formatSeconds as i}from"../utils/index.js";import"lodash-es";import l from"trtc-sdk-v5";function E(){const E={timer:null,seconds:0},{state:s,sendMessage:r}=n(),d=e(""),u=e(!0),m=e(!0),c=t((()=>s.currentAVMsg.chatMessageType===a.AUDIO)),R=t((()=>"call"===s.currentAVMsg.callMode)),T=t((()=>{var e,t;return c.value?(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.130"))||"语音":(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.131"))||"视频"})),v=l.create();function A(){d.value="00:00:00",E.timer&&clearInterval(E.timer),E.timer=null,E.seconds=0}return o((()=>{A()})),{state:s,sendMessage:r,trtc:v,timing:d,voiceOpen:u,videocamOpen:m,isAudio:c,isCall:R,startTimer:function(){A(),E.timer=setInterval((()=>{E.seconds++,d.value=i(E.seconds)}),1e3)},resetTimer:A,toggleAudio:async function(){await v.updateLocalAudio({mute:!u.value}),u.value=!u.value},toggleVideo:async function(){await v.updateLocalVideo({mute:!m.value}),m.value=!m.value},messageTypeText:T,time:E,installEventHandlers:function({handleError:e,handleRemoteUserEnter:t,handleRemoteAudioAvailable:o,handleRemoteUserExit:n,handleRemoteVideoAvailable:a}){v.on(l.EVENT.ERROR,e),v.on(l.EVENT.REMOTE_USER_ENTER,t),v.on(l.EVENT.REMOTE_AUDIO_AVAILABLE,o),v.on(l.EVENT.REMOTE_USER_EXIT,n),c.value||v.on(l.EVENT.REMOTE_VIDEO_AVAILABLE,a)},uninstallEventHandlers:function({handleError:e,handleRemoteUserEnter:t,handleRemoteAudioAvailable:o,handleRemoteUserExit:n,handleRemoteVideoAvailable:a}){v.off(l.EVENT.ERROR,e),v.off(l.EVENT.REMOTE_USER_ENTER,t),v.off(l.EVENT.REMOTE_AUDIO_AVAILABLE,o),v.off(l.EVENT.REMOTE_USER_EXIT,n),c.value||v.off(l.EVENT.REMOTE_VIDEO_AVAILABLE,a)}}}export{E as useVideo};
@@ -1 +1 @@
1
- import{onBeforeUnmount as e}from"vue";import{ChatSock as s}from"../utils/chatSock.js";import{CHAT_TYPE as t,SUBSCRIBE_MESSAGE_TYPE as n,AV_STATUS as o}from"../constants/index.js";import{readMessageApi as i}from"../api/index.js";import{isAudioOrVideoMessage as c}from"../utils/index.js";function r(r,a){const{stompClient:d,state:u,openSession:l,closeSession:p,setSessionList:h,setUpdateSessionItem:y,setCurrentSessionItem:S}=a,g=[];async function m(e,s){if(u.currentMsg=e,e.sessionKey===u.currentSessionItem.sessionKey)return u.isAppendMsg=!0,e.sender!==u.userInfo.id&&await i({chatType:s,messageIdSet:[e.id],receiver:u.userInfo.id,sender:e.sender}),void S({lastMessageSendTime:e.sendTime,lastMessage:e.content,sortTime:e.sendTime,unreadNum:0,lastSenderName:e.senderName});const t={lastMessageSendTime:e.sendTime,sortTime:e.sendTime,lastMessage:e.content,sessionKey:e.sessionKey,lastSenderName:e.senderName,sender:e.sender};y(t)}async function b({body:e,chatType:s}){try{const i=JSON.parse(e),{messageVo:r,sessionVo:a,chatAvStatusVo:l}=i;switch(i.event){case n.MESSAGE:c(r.content)?!u.showVideo&&!u.showMultipleVideo||r.content.avStatus!==o.IN_CALL?(u.currentMsg=r,Object.assign(u.currentAVMsg,{strRoomId:r.sessionKey,chatMessageType:r.content.chatMessageType,callMode:r.sender===u.userInfo.id?"call":"invite",currentMsg:r}),u.showVideo||u.showMultipleVideo?m(r,s):u.showVideo=!0):(d.value.send("/app/chat/send",{},JSON.stringify({chatType:t.SINGLE,receiver:r.sender,content:{chatMessageType:r.content.chatMessageType,avStatus:o.CALL_BUSY}})),console.log("用户忙!")):m(r,s);break;case n.RECALL_MESSAGE:break;case n.AV_STATUS:Object.assign(u.currentAVMsg,l,{callMode:l.sender===u.userInfo.id?"call":"invite",checkedIds:[]}),u.showVideo||u.showMultipleVideo?console.log("用户忙!"):u.showMultipleVideo=!0;break;case n.NEW_SESSION:if(s===t.GROUP)return;y(a);break;case n.JOIN_GROUP:if(s===t.GROUP)return;y(a),d.value.subscribe(`/topic/group/${a.receiver}`,(({body:e})=>b({body:e,chatType:t.GROUP})));case n.LEAVE_GROUP:}}catch(e){console.log(e)}}!function e(){const n={headers:{AccessToken:r.token,UserId:r.userId},heartbeatFn(){try{d.value.send("test")}catch(s){d.value.disconnect(),e()}},connectCb(){console.log("连接成功"),d.value.subscribe("/user/topic/single",(({body:e})=>b({body:e,chatType:t.SINGLE}))),d.value.subscribe("/app/sessionList",(({body:e})=>{try{const s=JSON.parse(e),{authentication:n,currentUser:o,sessionVos:i}=s;if(Object.assign(u.userInfo,o,n),!(null==i?void 0:i.length))return;h(i),g.splice(0,g.length),g.push(...i.filter((e=>e.chatType===t.GROUP))),g.forEach((e=>{d.value.subscribe(`/topic/group/${e.receiver}`,(({body:e})=>b({body:e,chatType:t.GROUP})))})),function(){const e=u.sessionList.find((e=>e.sessionKey===r.defaultSessionKey));e&&l(e)}()}catch(e){console.log(e)}}))},errorCb(e,s){}};d.value=new s("/fdp-chat/websocket",n)}(),e((()=>{var e;null==(e=d.value)||e.disconnect()}))}export{r as useWebSocket};
1
+ import{onBeforeUnmount as e}from"vue";import{ChatSock as s}from"../utils/chatSock.js";import{CHAT_TYPE as t,SUBSCRIBE_MESSAGE_TYPE as n,AV_STATUS as o}from"../constants/index.js";import{readMessageApi as i}from"../api/index.js";import{isAudioOrVideoMessage as r}from"../utils/index.js";import{remove as a}from"lodash-es";function c(c,d){const{stompClient:l,state:u,openSession:p,closeSession:h,setSessionList:S,setUpdateSessionItem:y,setCurrentSessionItem:m}=d,g=[];async function b(e,s){if(u.currentMsg=e,e.sessionKey===u.currentSessionItem.sessionKey)return u.isAppendMsg=!0,e.sender!==u.userInfo.id&&await i({chatType:s,messageIdSet:[e.id],receiver:u.userInfo.id,sender:e.sender}),void m({lastMessageSendTime:e.sendTime,lastMessage:e.content,sortTime:e.sendTime,unreadNum:0,lastSenderName:e.senderName});const t={lastMessageSendTime:e.sendTime,sortTime:e.sendTime,lastMessage:e.content,sessionKey:e.sessionKey,lastSenderName:e.senderName,sender:e.sender};y(t)}async function f({body:e,chatType:s}){try{const i=JSON.parse(e),{messageVo:c,sessionVo:d,chatAvStatusVo:p}=i;switch(i.event){case n.MESSAGE:r(c.content)?!u.showVideo&&!u.showMultipleVideo||c.content.avStatus!==o.IN_CALL?(u.currentMsg=c,Object.assign(u.currentAVMsg,{strRoomId:c.sessionKey,chatMessageType:c.content.chatMessageType,callMode:c.sender===u.userInfo.id?"call":"invite",currentMsg:c}),u.showVideo||u.showMultipleVideo?b(c,s):u.showVideo=!0):(l.value.send("/app/chat/send",{},JSON.stringify({chatType:t.SINGLE,receiver:c.sender,content:{chatMessageType:c.content.chatMessageType,avStatus:o.CALL_BUSY}})),console.log("用户忙!")):b(c,s);break;case n.RECALL_MESSAGE:break;case n.AV_STATUS:Object.assign(u.currentAVMsg,p,{callMode:p.sender===u.userInfo.id?"call":"invite",checkedIds:[]}),u.showVideo||u.showMultipleVideo?console.log("用户忙!"):u.showMultipleVideo=!0;break;case n.NEW_SESSION:if(s===t.GROUP)return;y(d);break;case n.JOIN_GROUP:if(s===t.GROUP)return;y(d),l.value.subscribe(`/topic/group/${d.receiver}`,(({body:e})=>f({body:e,chatType:t.GROUP})));break;case n.LEAVE_GROUP:h(),a(u.sessionList,(e=>e.sessionKey===d.sessionKey));case n.DISABLE_SESSION:}}catch(e){console.log(e)}}!function e(){const n={headers:{AccessToken:c.token,UserId:c.userId},heartbeatFn(){try{l.value.send("test")}catch(s){l.value.disconnect(),e()}},connectCb(){console.log("连接成功"),l.value.subscribe("/user/topic/single",(({body:e})=>f({body:e,chatType:t.SINGLE}))),l.value.subscribe("/app/sessionList",(({body:e})=>{try{const s=JSON.parse(e),{authentication:n,currentUser:o,sessionVos:i}=s;if(Object.assign(u.userInfo,o,n),!(null==i?void 0:i.length))return;S(i),g.splice(0,g.length),g.push(...i.filter((e=>e.chatType===t.GROUP))),g.forEach((e=>{l.value.subscribe(`/topic/group/${e.receiver}`,(({body:e})=>f({body:e,chatType:t.GROUP})))})),function(){const e=u.sessionList.find((e=>e.sessionKey===c.defaultSessionKey));e&&p(e)}()}catch(e){console.log(e)}}),{extraConfig:JSON.stringify(c.extraParams)})},errorCb(e,s){}};l.value=new s("/fdp-chat/websocket",n)}(),e((()=>{var e;null==(e=l.value)||e.disconnect()}))}export{c as useWebSocket};