cnhis-design-vue 3.3.1-beta.14 → 3.3.1-beta.17

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 (153) hide show
  1. package/es/components/ai-chat/index.d.ts +17 -17
  2. package/es/components/ai-chat/src/Index.vue.d.ts +17 -17
  3. package/es/components/ai-chat/src/Index.vue2.js +1 -1
  4. package/es/components/ai-chat/src/api/index.d.ts +1 -2
  5. package/es/components/ai-chat/src/api/index.js +1 -1
  6. package/es/components/ai-chat/src/components/ChatAudio.vue.d.ts +0 -1
  7. package/es/components/ai-chat/src/components/ChatAudio.vue2.js +1 -1
  8. package/es/components/ai-chat/src/components/ChatCard.js +1 -1
  9. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +9 -11
  10. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
  11. package/es/components/ai-chat/src/components/ChatMain.js +1 -1
  12. package/es/components/ai-chat/src/components/ChatMainDefault.js +1 -0
  13. package/es/components/ai-chat/src/components/ChatRight.vue.d.ts +0 -2
  14. package/es/components/ai-chat/src/components/ChatRight.vue2.js +1 -1
  15. package/es/components/ai-chat/src/components/card/JsonCard.js +1 -1
  16. package/es/components/ai-chat/src/hooks/useWebsocket.js +1 -1
  17. package/es/components/ai-chat/style/index.css +1 -1
  18. package/es/components/audio-sdk/index.d.ts +304 -2
  19. package/es/components/audio-sdk/index.js +1 -1
  20. package/es/components/audio-sdk/src/Index.vue.d.ts +304 -0
  21. package/es/components/audio-sdk/src/Index.vue.js +1 -0
  22. package/es/components/audio-sdk/src/Index.vue2.js +1 -0
  23. package/es/components/audio-sdk/src/audioSDK.d.ts +5 -7
  24. package/es/components/audio-sdk/src/audioSDK.js +1 -1
  25. package/es/components/audio-sdk/src/components/form.vue.d.ts +51 -0
  26. package/es/components/audio-sdk/src/components/form.vue.js +1 -0
  27. package/es/components/audio-sdk/src/components/form.vue2.js +1 -0
  28. package/es/components/audio-sdk/src/components/recording-modal.vue.d.ts +91 -0
  29. package/es/components/audio-sdk/src/components/recording-modal.vue.js +1 -0
  30. package/es/components/audio-sdk/src/components/recording-modal.vue2.js +1 -0
  31. package/es/components/audio-sdk/src/components/recording.vue.d.ts +43 -4
  32. package/es/components/audio-sdk/src/components/recording.vue2.js +1 -1
  33. package/es/components/audio-sdk/src/utils/index.d.ts +4 -0
  34. package/es/components/audio-sdk/src/utils/index.js +1 -0
  35. package/es/components/audio-sdk/src/utils/recordingModal.d.ts +7 -4
  36. package/es/components/audio-sdk/src/utils/recordingModal.js +1 -1
  37. package/es/components/audio-sdk/style/index.css +1 -1
  38. package/es/components/callback/src/components/render/popupMaps.d.ts +7 -1
  39. package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
  40. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  41. package/es/components/field-editor/index.d.ts +7 -1
  42. package/es/components/field-editor/src/FieldEditor.vue.d.ts +7 -1
  43. package/es/components/form-config/index.d.ts +38 -3
  44. package/es/components/form-config/src/FormConfig.vue.d.ts +38 -3
  45. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +7 -1
  46. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +17 -1
  47. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +8 -1
  48. package/es/components/form-render/index.d.ts +7 -1
  49. package/es/components/form-render/index.js +1 -1
  50. package/es/components/form-render/src/FormRender.vue.d.ts +7 -1
  51. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  52. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +7 -1
  53. package/es/components/form-render/src/components/renderer/date.d.ts +2 -0
  54. package/es/components/form-render/src/components/renderer/date.js +1 -1
  55. package/es/components/form-render/src/components/renderer/formItem.d.ts +2 -0
  56. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  57. package/es/components/form-render/src/components/renderer/input.d.ts +5 -0
  58. package/es/components/form-render/src/components/renderer/input.js +1 -1
  59. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +14 -1
  60. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +14 -1
  61. package/es/components/form-render/src/components/renderer/select.d.ts +5 -0
  62. package/es/components/form-render/src/components/renderer/select.js +1 -1
  63. package/es/components/form-render/src/components/tooltipMessage.vue.d.ts +12 -1
  64. package/es/components/form-render/src/components/tooltipMessage.vue2.js +1 -1
  65. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  66. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +4 -0
  67. package/es/components/form-render/src/types/fieldItem.d.ts +1 -0
  68. package/es/components/form-render/src/types/index.d.ts +2 -0
  69. package/es/components/form-render/src/utils/index.d.ts +1 -0
  70. package/es/components/form-render/src/utils/index.js +1 -1
  71. package/es/components/form-render/style/index.css +1 -1
  72. package/es/components/iho-chat/index.d.ts +56 -0
  73. package/es/components/iho-chat/src/Index.vue.d.ts +56 -0
  74. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +7 -0
  75. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
  76. package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +7 -0
  77. package/es/components/iho-chat/src/components/ChatFile.vue2.js +1 -1
  78. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +6 -0
  79. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  80. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +27 -0
  81. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +7 -0
  82. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  83. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +7 -1
  84. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  85. package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
  86. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +9 -0
  87. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  88. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +6 -0
  89. package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +3 -0
  90. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  91. package/es/components/iho-chat/src/components/SiderList.vue.d.ts +3 -1
  92. package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
  93. package/es/components/iho-chat/src/constants/index.d.ts +7 -0
  94. package/es/components/iho-chat/src/constants/index.js +1 -1
  95. package/es/components/iho-chat/src/utils/index.d.ts +2 -0
  96. package/es/components/iho-chat/src/utils/index.js +1 -1
  97. package/es/components/iho-chat/style/index.css +1 -1
  98. package/es/components/iho-table/index.d.ts +3 -0
  99. package/es/components/iho-table/index.js +1 -1
  100. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  101. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +1 -1
  102. package/es/components/iho-table/src/hooks/tapHooks/index.js +1 -1
  103. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.d.ts +3 -3
  104. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.js +1 -1
  105. package/es/components/iho-table/src/hooks/useTablePlugin.js +1 -1
  106. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  107. package/es/components/iho-table/src/plugins/headerPlugin/index.d.ts +1 -1
  108. package/es/components/iho-table/src/plugins/headerPlugin/index.js +1 -1
  109. package/es/components/iho-table/src/plugins/highLightSetPlugin.js +1 -1
  110. package/es/components/iho-table/src/plugins/index.d.ts +79 -3
  111. package/es/components/iho-table/src/plugins/index.js +1 -1
  112. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.d.ts +7 -0
  113. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.js +1 -1
  114. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  115. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.d.ts +1 -2
  116. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js +1 -1
  117. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  118. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/checkRendererPlugin.js +1 -1
  119. package/es/components/iho-table/src/plugins/stickyFixedPlugin.js +1 -1
  120. package/es/components/iho-table/src/plugins/varialbleHeightPlugin.js +1 -1
  121. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/utils.js +1 -1
  122. package/es/components/iho-table/src/types/index.d.ts +1 -0
  123. package/es/components/iho-table/src/types/pluginType.d.ts +2 -2
  124. package/es/components/iho-table/src/utils/index.js +1 -1
  125. package/es/components/index.css +1 -1
  126. package/es/components/index.d.ts +2 -1
  127. package/es/components/index.js +1 -1
  128. package/es/components/info-header/index.d.ts +24 -2
  129. package/es/components/info-header/src/InfoHeader.vue.d.ts +24 -2
  130. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +2 -0
  131. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +2 -0
  132. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +9 -1
  133. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +7 -1
  134. package/es/components/scale-view/index.d.ts +3 -2
  135. package/es/components/scale-view/src/ScaleView.vue.d.ts +3 -2
  136. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  137. package/es/components/scale-view/src/hooks/scaleview-init.d.ts +3 -1
  138. package/es/components/scale-view/src/hooks/scaleview-init.js +1 -1
  139. package/es/components/scale-view/src/hooks/use-component.d.ts +1 -2189
  140. package/es/components/shortcut-setter/index.d.ts +8 -1
  141. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +8 -1
  142. package/es/shared/components/ArrowIcon/ArrowIcon.vue.js +1 -0
  143. package/es/shared/components/ArrowIcon/index.d.ts +2 -0
  144. package/es/shared/components/ArrowIcon/index.js +1 -0
  145. package/es/shared/components/DateIcon/DateIcon.vue.js +1 -0
  146. package/es/shared/components/DateIcon/index.d.ts +2 -0
  147. package/es/shared/components/DateIcon/index.js +1 -0
  148. package/es/shared/package.json.js +1 -1
  149. package/package.json +2 -2
  150. package/es/components/ai-chat/src/components/ChatMainInner.js +0 -1
  151. package/es/components/ai-chat/src/hooks/useProgram.d.ts +0 -6
  152. package/es/components/ai-chat/src/hooks/useProgram.js +0 -1
  153. /package/es/components/ai-chat/src/components/{ChatMainInner.d.ts → ChatMainDefault.d.ts} +0 -0
@@ -181,6 +181,7 @@ declare const _default: import("vue").DefineComponent<{}, {
181
181
  remark: import("vue").Ref<string>;
182
182
  currentTab: import("vue").Ref<AnyObject[]>;
183
183
  breadcrumbList: import("vue").Ref<AnyObject[]>;
184
+ breadcrumbRef: import("vue").Ref<any>;
184
185
  userList: import("vue").Ref<AnyObject[]>;
185
186
  handleInput: () => void;
186
187
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -189,18 +190,21 @@ declare const _default: import("vue").DefineComponent<{}, {
189
190
  name: any;
190
191
  avatar: any;
191
192
  chatType: any;
193
+ roleInfo: any;
192
194
  }[]>;
193
195
  friends: import("vue").ComputedRef<{
194
196
  id: any;
195
197
  name: any;
196
198
  avatar: any;
197
199
  chatType: any;
200
+ roleInfo: any;
198
201
  }[]>;
199
202
  groups: import("vue").ComputedRef<{
200
203
  id: any;
201
204
  name: any;
202
205
  avatar: any;
203
206
  chatType: any;
207
+ roleInfo: any;
204
208
  }[]>;
205
209
  checkedIds: import("vue").ComputedRef<any[]>;
206
210
  btnDisabled: import("vue").ComputedRef<boolean>;
@@ -238,6 +242,8 @@ declare const _default: import("vue").DefineComponent<{}, {
238
242
  ChevronBackOutline: 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<{}>>, {}>;
239
243
  ChevronForwardOutline: 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<{}>>, {}>;
240
244
  last: <T>(array: import("lodash").List<T> | null | undefined) => T | undefined;
245
+ isDoctorRole: typeof import("../utils").isDoctorRole;
246
+ getRoleName: typeof import("../utils").getRoleName;
241
247
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "comfirm"[], "comfirm", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
242
248
  title: {
243
249
  type: StringConstructor;
@@ -1,5 +1,6 @@
1
1
  import { UploadFileInfo } from 'naive-ui';
2
2
  import { AnyObject } from '../../../../shared/types';
3
+ import { isDoctorRole, getRoleName } from '../utils';
3
4
  declare const _default: import("vue").DefineComponent<{}, {
4
5
  state: {
5
6
  orgId: string | number;
@@ -58,5 +59,7 @@ declare const _default: import("vue").DefineComponent<{}, {
58
59
  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<{}>>, {}>;
59
60
  EyeOutline: 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<{}>>, {}>;
60
61
  EyeOffOutline: 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<{}>>, {}>;
62
+ isDoctorRole: typeof isDoctorRole;
63
+ getRoleName: typeof getRoleName;
61
64
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
62
65
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as l,computed as o,watch as n,openBlock as a,createBlock as i,unref as s,withCtx as r,createElementBlock as u,Fragment as d,withDirectives as c,createElementVNode as p,createVNode as v,createCommentVNode as w,toDisplayString as g,createTextVNode as m,renderList as f,vShow as y}from"vue";import{NPopover as h,NAvatar as k,NButton as b,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as D,EyeOffOutline as j,EyeOutline as x,Close as L}from"@vicons/ionicons5";import{useData as _}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as B}from"../constants/index.js";import{openSessionApi as I,getUserDetailApi as z}from"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const N={class:"person-profile-main"},E={class:"left"},P={class:"profile"},S={class:"profile__text"},$={class:"right"},G={class:"right__content"},O={class:"label"},T={class:"content"};var q=t({__name:"PersonProfile",setup(t){var q,A,F,H,J,K,M,Q;const{state:R,openSession:U}=_(),V=e(!1),W=e(!1),X=l({}),Y=[{label:(null==(q=window.getLanguageByCode)?void 0:q.call(window,"10010.1.115"))||"机构",value:"",key:"orgName"},{label:(null==(A=window.getLanguageByCode)?void 0:A.call(window,"10010.1.116"))||"姓名",value:"",key:"name"},{label:(null==(F=window.getLanguageByCode)?void 0:F.call(window,"10010.1.117"))||"归属科室",value:"",key:"deptName"},{label:(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.118"))||"业务科室",value:"",key:"businessDeptNames"},{label:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.119"))||"手机号",value:"",key:"phone"},{label:(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.120"))||"岗位",value:"",key:"post"},{label:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.121"))||"工号",value:"",key:"jobId"},{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.122"))||"性别",value:"",key:"orgName"}],Z=o((()=>(X.id&&Y.forEach((t=>{const{key:e}=t;t.value=X[e]})),Y)));async function tt(){var t;R.userDetail.show=!1;const e=R.userDetail.userId||(null==(t=R.userDetail.info)?void 0:t.id);let l=R.sessionList.find((t=>t.receiver===e));if(!l)try{l=await I({chatType:B.SINGLE,receiver:e,sender:R.userInfo.id})}catch(t){console.log("error :>> ",t)}l&&U(l)}function et(t){const{key:e,value:l}=t;return"phone"!==e||W.value?l:(l||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return n((()=>R.userDetail.show),(t=>{if(!t)return R.userDetail.userId="",void(R.userDetail.info=null);!async function(){const{userId:t,info:e}=R.userDetail;if(!t&&!e)return;let l={};t?l=await z({userId:t}):e&&(l=e),(null==l?void 0:l.id)?Object.assign(X,l):X.id=""}()})),(t,e)=>(a(),i(s(h),{raw:"",class:"person-profile-wrapper",show:s(R).userDetail.show,x:s(R).userDetail.position.x,y:s(R).userDetail.position.y,trigger:"manual","show-arrow":!1,"display-directive":"show",to:"body",shift:"",onClickoutside:e[3]||(e[3]=()=>s(R).userDetail.show=!1)},{default:r((()=>[X.id?(a(),u(d,{key:0},[c(p("div",N,[p("div",E,[p("div",P,[v(s(k),{src:X.avatar,bordered:"",round:"",size:100,onClickCapture:e[0]||(e[0]=t=>V.value=!0)},null,8,["src"]),w(' <n-upload abstract accept="image/*" @change="onChange">\r\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\r\n\t\t\t\t\t\t\t\t<n-button\r\n\t\t\t\t\t\t\t\t\tcircle\r\n\t\t\t\t\t\t\t\t\tsecondary\r\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\r\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\r\n\t\t\t\t\t\t\t\t\t@click="handleClick"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t\t\t</n-upload-trigger>\r\n\t\t\t\t\t\t</n-upload> '),p("div",S,[p("h4",null,g(X.name),1),p("p",null,g(X.orgName),1)]),v(s(b),{strong:"",secondary:"",onClick:tt},{default:r((()=>[v(s(C),{size:"13",color:"#666666",component:s(D),style:{"margin-right":"6px"}},null,8,["component"]),m(" 发消息 ")])),_:1})])]),p("div",$,[p("div",G,[(a(!0),u(d,null,f(s(Z),((t,l)=>(a(),u("div",{class:"info-item",key:l},[p("span",O,g(t.label),1),p("div",T,[p("span",null,g(et(t)),1),"phone"===t.key&&et(t)?(a(),i(s(C),{key:0,size:"16",color:"#666666",component:W.value?s(j):s(x),style:{"margin-left":"10px"},onClick:e[1]||(e[1]=t=>W.value=!W.value)},null,8,["component"])):w("v-if",!0)])])))),128))])])],512),[[y,!V.value]]),c(p("div",{class:"large-avatar",onClick:e[2]||(e[2]=t=>V.value=!1)},[v(s(b),{circle:"",size:"small",secondary:""},{icon:r((()=>[v(s(C),{size:24,component:s(L),color:"#fff"},null,8,["component"])])),_:1}),v(s(k),{size:310,round:"",src:X.avatar},null,8,["src"])],512),[[y,V.value]])],64)):w("v-if",!0)])),_:1},8,["show","x","y"]))}});export{q as default};
1
+ import{defineComponent as t,ref as e,reactive as o,computed as l,watch as n,openBlock as a,createBlock as i,unref as s,withCtx as r,createElementBlock as c,Fragment as u,withDirectives as d,createElementVNode as p,createVNode as v,createCommentVNode as m,toDisplayString as w,normalizeClass as g,vShow as f,createTextVNode as y,renderList as h}from"vue";import{NPopover as k,NAvatar as b,NButton as C,NIcon as D}from"naive-ui";import{ChatbubbleEllipses as I,EyeOffOutline as _,EyeOutline as j,Close as x}from"@vicons/ionicons5";import{useData as L}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as B}from"../constants/index.js";import{openSessionApi as z,getUserDetailApi as N}from"../api/index.js";import{isDoctorRole as E,getRoleName as P}from"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const S={class:"person-profile-main"},$={class:"left"},G={class:"profile"},O={class:"profile__text"},R={class:"user__name"},T={class:"right"},q={class:"right__content"},A={class:"label"},F={class:"content"};var H=t({__name:"PersonProfile",setup(t){var H,J,K,M,Q,U,V,W;const{state:X,openSession:Y}=L(),Z=e(!1),tt=e(!1),et=o({}),ot=[{label:(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.115"))||"机构",value:"",key:"orgName"},{label:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.116"))||"姓名",value:"",key:"name"},{label:(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.117"))||"归属科室",value:"",key:"deptName"},{label:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.118"))||"业务科室",value:"",key:"businessDeptNames"},{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.119"))||"手机号",value:"",key:"phone"},{label:(null==(U=window.getLanguageByCode)?void 0:U.call(window,"10010.1.120"))||"岗位",value:"",key:"post"},{label:(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.121"))||"工号",value:"",key:"jobId"},{label:(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.122"))||"性别",value:"",key:"orgName"}],lt=l((()=>(et.id&&ot.forEach((t=>{const{key:e}=t;t.value=et[e]})),ot)));async function nt(){var t;X.userDetail.show=!1;const e=X.userDetail.userId||(null==(t=X.userDetail.info)?void 0:t.id);let o=X.sessionList.find((t=>t.receiver===e));if(!o)try{o=await z({chatType:B.SINGLE,receiver:e,sender:X.userInfo.id})}catch(t){console.log("error :>> ",t)}o&&Y(o)}function at(t){const{key:e,value:o}=t;return"phone"!==e||tt.value?o:(o||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return n((()=>X.userDetail.show),(t=>{if(!t)return X.userDetail.userId="",void(X.userDetail.info=null);!async function(){const{userId:t,info:e}=X.userDetail;if(!t&&!e)return;let o={};t?o=await N({userId:t}):e&&(o=e),(null==o?void 0:o.id)?Object.assign(et,o):et.id=""}()})),(t,e)=>(a(),i(s(k),{raw:"",class:"person-profile-wrapper",show:s(X).userDetail.show,x:s(X).userDetail.position.x,y:s(X).userDetail.position.y,trigger:"manual","show-arrow":!1,"display-directive":"show",to:"body",shift:"",onClickoutside:e[3]||(e[3]=()=>s(X).userDetail.show=!1)},{default:r((()=>[et.id?(a(),c(u,{key:0},[d(p("div",S,[p("div",$,[p("div",G,[v(s(b),{src:et.avatar,bordered:"",round:"",size:100,onClickCapture:e[0]||(e[0]=t=>Z.value=!0)},null,8,["src"]),m(' <n-upload abstract accept="image/*" @change="onChange">\r\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\r\n\t\t\t\t\t\t\t\t<n-button\r\n\t\t\t\t\t\t\t\t\tcircle\r\n\t\t\t\t\t\t\t\t\tsecondary\r\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\r\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\r\n\t\t\t\t\t\t\t\t\t@click="handleClick"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t\t\t</n-upload-trigger>\r\n\t\t\t\t\t\t</n-upload> '),p("div",O,[p("h4",null,[p("label",R,w(et.name),1),d(p("label",{class:g(["iho-chatRole",s(E)(et.roleInfo)?"isDoctor":""])},w(s(P)(et.roleInfo)),3),[[f,s(P)(et.roleInfo)]])]),p("p",null,w(et.orgName),1)]),v(s(C),{strong:"",secondary:"",onClick:nt},{default:r((()=>[v(s(D),{size:"13",color:"#666666",component:s(I),style:{"margin-right":"6px"}},null,8,["component"]),y(" 发消息 ")])),_:1})])]),p("div",T,[p("div",q,[(a(!0),c(u,null,h(s(lt),((t,o)=>(a(),c("div",{class:"info-item",key:o},[p("span",A,w(t.label),1),p("div",F,[p("span",null,w(at(t)),1),"phone"===t.key&&at(t)?(a(),i(s(D),{key:0,size:"16",color:"#666666",component:tt.value?s(_):s(j),style:{"margin-left":"10px"},onClick:e[1]||(e[1]=t=>tt.value=!tt.value)},null,8,["component"])):m("v-if",!0)])])))),128))])])],512),[[f,!Z.value]]),d(p("div",{class:"large-avatar",onClick:e[2]||(e[2]=t=>Z.value=!1)},[v(s(C),{circle:"",size:"small",secondary:""},{icon:r((()=>[v(s(D),{size:24,component:s(x),color:"#fff"},null,8,["component"])])),_:1}),v(s(b),{size:310,round:"",src:et.avatar},null,8,["src"])],512),[[f,Z.value]])],64)):m("v-if",!0)])),_:1},8,["show","x","y"]))}});export{H as default};
@@ -1,6 +1,6 @@
1
1
  import { CSSProperties } from 'vue';
2
2
  import { AnyObject } from '../../../../shared/types';
3
- import { formatTime } from '../utils';
3
+ import { formatTime, isDoctorRole, getRoleName } from '../utils';
4
4
  import { STATUS } from '../constants';
5
5
  declare const _default: import("vue").DefineComponent<{}, {
6
6
  filterKey: {
@@ -121,6 +121,8 @@ declare const _default: import("vue").DefineComponent<{}, {
121
121
  beforeUnmount(el: any): void;
122
122
  };
123
123
  formatTime: typeof formatTime;
124
+ isDoctorRole: typeof isDoctorRole;
125
+ getRoleName: typeof getRoleName;
124
126
  STATUS: typeof STATUS;
125
127
  CDatePicker: import("../../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
126
128
  updateUnchangedValue: {
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as l,withDirectives as n,openBlock as i,createElementBlock as a,normalizeStyle as o,unref as s,createVNode as u,withCtx as r,createElementVNode as d,Fragment as v,renderList as c,createBlock as p,vShow as m,createCommentVNode as f,createTextVNode as g,toDisplayString as w,withModifiers as y,normalizeClass as k,nextTick as h}from"vue";import{NPopover as _,NInput as x,NIcon as C,NTag as M,NAvatar as R,NBadge as b}from"naive-ui";import j from"./ContextMenu.js";import{useData as D}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{STATUS as E}from"../constants/index.js";import{toppingSessionApi as L,updateStatusApi as B}from"../api/index.js";import{listSort as I,formatTime as T}from"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";import{vFlexibleResize as N}from"../../../../shared/directive/flexibleResize.js";import S from"../../../date-picker/index.js";import{SearchOutline as V}from"@vicons/ionicons5";import $ from"./userItemRender.js";import O from"../../../default-page/index.js";import{useDebounceFn as U}from"@vueuse/core";import{isBefore as H,isAfter as z}from"date-fns";const K={key:0,class:"sider-list__filter"},P={class:"user-list-wrapper"},W={class:"sider-list__tags box-shadow"},A=["onClick","onContextmenu"],X={class:"avatar-right"},Y={class:"name"},q={class:"msg-tip"},F={class:"msg-tip__content"},G={key:0},J=["innerHTML"];var Q=e({__name:"SiderList",setup(e){var Q,Z,ee;const te="all",le="unread",ne="ended";let ie=[];const ae=t(300),oe=t(),se=t([{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.123"))||"全部",key:te},{label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.124"))||"未读",key:le},{label:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.77"))||"结束",key:ne}]),ue=t(),re=t(!1),de=t({left:0,top:0}),ve=t(),ce=t("all"),pe=t(),me=t(),fe=t(),ge=t(""),we=t(!1),ye=t([]),ke=U(Ne,500),{state:he,unreadTotal:_e,filterable:xe,openSession:Ce,setUpdateSessionItem:Me,setCurrentSessionItem:Re}=D(),be=l((()=>Math.min(Math.max(ae.value,240),360))),je=l((()=>I(he.sessionList)));function De({distance:e}){ae.value=ae.value+e}function Ee(e,t=s(ce)){var l;return t===te||(t===le?ie.includes(e.sessionKey)||(null!=(l=e.unreadNum)?l:0)>0:t===ne?e.status===E.ENDED:void 0)}async function Le(e,t){try{if("topping"===e)return await L({id:t.id,topping:!(null==t?void 0:t.topping)}),void(he.id===t.id?Re({topping:!(null==t?void 0:t.topping)}):Me({...t,topping:!(null==t?void 0:t.topping)}));"remove"===e&&(await B({id:t.id,status:E.REMOVED}),he.id===t.id?Re({status:E.REMOVED}):Me({...t,status:E.REMOVED}))}catch(e){}}function Be(e){we.value=e,e||(ge.value="",fe.value=null,ye.value=[])}function Ie(e){var t,l,n,i,a;const o=null==(n=null==(l=null==(t=pe.value)?void 0:t.$datePicker)?void 0:l.panelInstRef)?void 0:n.$el;Be(!(!e.target||!(o&&o.contains(e.target)||(null==(i=me.value)?void 0:i.$el)&&(null==(a=me.value)?void 0:a.$el.contains(e.target)))))}function Te(e){fe.value=e,Ne()}function Ne(){ge.value||fe.value?ye.value=je.value.filter((e=>{const t=e.name.includes(ge.value);if(!fe.value)return t;const[l,n]=fe.value,i=new Date(e.createdTime);return t&&H(i,new Date(n+" 23:59:59"))&&z(i,new Date(l+" 00:00:00"))})):ye.value=[]}return(e,t)=>n((i(),a("section",{class:"sider-list",style:o({width:s(be)+"px"})},[s(xe)?(i(),a("div",K,[u(s(_),{raw:"","content-class":"search-content__sider",class:"search-wrapper",show:we.value,placement:"bottom-start","display-directive":"show","show-arrow":!1,onClickoutside:Ie},{trigger:r((()=>[u(s(x),{ref_key:"inputRef",ref:me,placeholder:"请输入名称模糊搜索",value:ge.value,"onUpdate:value":t[0]||(t[0]=e=>ge.value=e),onInput:s(ke),onClick:t[1]||(t[1]=()=>Be(!0))},{prefix:r((()=>[u(s(C),{component:s(V)},null,8,["component"])])),_:1},8,["value","onInput"])])),default:r((()=>{var e;return[u(s(S),{ref_key:"datePickerRef",ref:pe,"formatted-value":fe.value,type:"daterange",clearable:"","onUpdate:formattedValue":Te},null,8,["formatted-value"]),d("div",P,[(i(!0),a(v,null,c(ye.value,(e=>(i(),p(s($),{key:e.id,item:e,onItemClick:t[2]||(t[2]=()=>Be(!1))},null,8,["item"])))),128)),n(u(s(O),{config:{title:" ",content:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[m,ye.value.length<1]])])]})),_:1},8,["show"])])):f("v-if",!0),d("div",W,[(i(!0),a(v,null,c(se.value,(e=>(i(),p(s(M),{type:ce.value===e.key?"primary":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return t=e.key,ce.value=t,void(t===le&&(ie=(je.value.filter((e=>{var t;return(null!=(t=e.unreadNum)?t:0)>0}))||[]).map((e=>e.sessionKey))));var t}},{default:r((()=>{return[g(w(e.label)+"("+w((t=e,t.key===ne?je.value.filter((e=>e.status===E.ENDED)).length:_e.value))+") ",1)];var t})),_:2},1032,["type","onClick"])))),128))]),d("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:oe},[(i(!0),a(v,null,c(s(je),(e=>{var t;return i(),a(v,{key:e.id},[e.status!==s(E).REMOVED?n((i(),a("div",{key:0,onClick:()=>s(Ce)(e),onContextmenu:y((t=>async function(e,t){var l,n,i,a,o;ve.value=t,re.value=!0,await h();const{clientX:s,clientY:u}=e,{width:r=0,height:d=0,left:v=0,top:c=0}=(null==(l=oe.value)?void 0:l.getBoundingClientRect())||{},{width:p=100,height:m=80}=(null==(i=null==(n=ue.value)?void 0:n.$el)?void 0:i.getBoundingClientRect())||{},f=null!=(o=null==(a=oe.value)?void 0:a.scrollTop)?o:0,g={};s<v+r-(p+2)-5?g.left=s-v+5+"px":g.right=v+r-s+5+"px",c+d-u<=m+5?g.bottom=5-f+"px":g.top=u-c+f+5+"px",de.value=g}(t,e.id)),["prevent"]),class:k(["sider-list__box__item",{active:e.id===s(he).id},e.topping?"sider-list__box__item--top":""])},[u(s(R),{round:"",size:"large",src:e.avatar},null,8,["src"]),d("div",X,[d("div",Y,[d("h4",null,w(e.name),1),d("span",null,w(e.lastMessage?s(T)(e.lastMessageSendTime).siderMsgTime:""),1)]),d("div",q,[d("div",F,["WITHDRAWN"===e.lastMessageStatus?(i(),a("div",G,(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.68"))||"撤回了一条消息")):(i(),a("div",{key:1,innerHTML:e.lastMessageContent},null,8,J))]),u(s(b),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],42,A)),[[m,Ee(e)]]):f("v-if",!0)],64)})),128)),u(s(j),{ref_key:"contextmenuRef",ref:ue,show:re.value,"onUpdate:show":t[3]||(t[3]=e=>re.value=e),type:"session",position:de.value,id:ve.value,onSelect:Le},null,8,["show","position","id"])],512)],4)),[[s(N),{mode:"VR",onMove:De}]])}});export{Q as default};
1
+ import{defineComponent as e,ref as t,computed as l,withDirectives as n,openBlock as i,createElementBlock as a,normalizeStyle as o,unref as s,createVNode as u,withCtx as r,createElementVNode as d,Fragment as v,renderList as c,createBlock as p,vShow as m,createCommentVNode as f,createTextVNode as g,toDisplayString as w,withModifiers as y,normalizeClass as h,nextTick as k}from"vue";import{NPopover as _,NInput as x,NIcon as C,NTag as b,NAvatar as R,NBadge as M}from"naive-ui";import D from"./ContextMenu.js";import{useData as j}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{STATUS as E}from"../constants/index.js";import{toppingSessionApi as I,updateStatusApi as L}from"../api/index.js";import{listSort as B,isDoctorRole as T,getRoleName as N,formatTime as S}from"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";import{vFlexibleResize as V}from"../../../../shared/directive/flexibleResize.js";import $ from"../../../date-picker/index.js";import{SearchOutline as O}from"@vicons/ionicons5";import U from"./userItemRender.js";import H from"../../../default-page/index.js";import{useDebounceFn as z}from"@vueuse/core";import{isBefore as K,isAfter as P}from"date-fns";const W={key:0,class:"sider-list__filter"},A={class:"user-list-wrapper"},X={class:"sider-list__tags box-shadow"},Y=["onClick","onContextmenu"],q={class:"avatar-right"},F={class:"name"},G={class:"chat-name"},J={class:"msg-tip"},Q={class:"msg-tip__content"},Z={key:0},ee=["innerHTML"];var te=e({__name:"SiderList",setup(e){var te,le,ne;const ie="all",ae="unread",oe="ended";let se=[];const ue=t(300),re=t(),de=t([{label:(null==(te=window.getLanguageByCode)?void 0:te.call(window,"10010.1.123"))||"全部",key:ie},{label:(null==(le=window.getLanguageByCode)?void 0:le.call(window,"10010.1.124"))||"未读",key:ae},{label:(null==(ne=window.getLanguageByCode)?void 0:ne.call(window,"10010.1.77"))||"结束",key:oe}]),ve=t(),ce=t(!1),pe=t({left:0,top:0}),me=t(),fe=t("all"),ge=t(),we=t(),ye=t(),he=t(""),ke=t(!1),_e=t([]),xe=z($e,500),{state:Ce,unreadTotal:be,filterable:Re,openSession:Me,setUpdateSessionItem:De,setCurrentSessionItem:je}=j(),Ee=l((()=>Math.min(Math.max(ue.value,240),360))),Ie=l((()=>B(Ce.sessionList)));function Le({distance:e}){ue.value=ue.value+e}function Be(e,t=s(fe)){var l;return t===ie||(t===ae?se.includes(e.sessionKey)||(null!=(l=e.unreadNum)?l:0)>0:t===oe?e.status===E.ENDED:void 0)}async function Te(e,t){try{if("topping"===e)return await I({id:t.id,topping:!(null==t?void 0:t.topping)}),void(Ce.id===t.id?je({topping:!(null==t?void 0:t.topping)}):De({...t,topping:!(null==t?void 0:t.topping)}));"remove"===e&&(await L({id:t.id,status:E.REMOVED}),Ce.id===t.id?je({status:E.REMOVED}):De({...t,status:E.REMOVED}))}catch(e){}}function Ne(e){ke.value=e,e||(he.value="",ye.value=null,_e.value=[])}function Se(e){var t,l,n,i,a;const o=null==(n=null==(l=null==(t=ge.value)?void 0:t.$datePicker)?void 0:l.panelInstRef)?void 0:n.$el;Ne(!(!e.target||!(o&&o.contains(e.target)||(null==(i=we.value)?void 0:i.$el)&&(null==(a=we.value)?void 0:a.$el.contains(e.target)))))}function Ve(e){ye.value=e,$e()}function $e(){he.value||ye.value?_e.value=Ie.value.filter((e=>{const t=e.name.includes(he.value);if(!ye.value)return t;const[l,n]=ye.value,i=new Date(e.createdTime);return t&&K(i,new Date(n+" 23:59:59"))&&P(i,new Date(l+" 00:00:00"))})):_e.value=[]}return(e,t)=>n((i(),a("section",{class:"sider-list",style:o({width:s(Ee)+"px"})},[s(Re)?(i(),a("div",W,[u(s(_),{raw:"","content-class":"search-content__sider",class:"search-wrapper",show:ke.value,placement:"bottom-start","display-directive":"show","show-arrow":!1,onClickoutside:Se},{trigger:r((()=>[u(s(x),{ref_key:"inputRef",ref:we,placeholder:"请输入名称模糊搜索",value:he.value,"onUpdate:value":t[0]||(t[0]=e=>he.value=e),onInput:s(xe),onClick:t[1]||(t[1]=()=>Ne(!0))},{prefix:r((()=>[u(s(C),{component:s(O)},null,8,["component"])])),_:1},8,["value","onInput"])])),default:r((()=>{var e;return[u(s($),{ref_key:"datePickerRef",ref:ge,"formatted-value":ye.value,type:"daterange",clearable:"","onUpdate:formattedValue":Ve},null,8,["formatted-value"]),d("div",A,[(i(!0),a(v,null,c(_e.value,(e=>(i(),p(s(U),{key:e.id,item:e,onItemClick:t[2]||(t[2]=()=>Ne(!1))},null,8,["item"])))),128)),n(u(s(H),{config:{title:" ",content:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[m,_e.value.length<1]])])]})),_:1},8,["show"])])):f("v-if",!0),d("div",X,[(i(!0),a(v,null,c(de.value,(e=>(i(),p(s(b),{type:fe.value===e.key?"primary":"default",round:"",bordered:!1,key:e.key,onClick:()=>{return t=e.key,fe.value=t,void(t===ae&&(se=(Ie.value.filter((e=>{var t;return(null!=(t=e.unreadNum)?t:0)>0}))||[]).map((e=>e.sessionKey))));var t}},{default:r((()=>{return[g(w(e.label)+"("+w((t=e,t.key===oe?Ie.value.filter((e=>e.status===E.ENDED)).length:be.value))+") ",1)];var t})),_:2},1032,["type","onClick"])))),128))]),d("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:re},[(i(!0),a(v,null,c(s(Ie),(e=>{var t;return i(),a(v,{key:e.id},[e.status!==s(E).REMOVED?n((i(),a("div",{key:0,onClick:()=>s(Me)(e),onContextmenu:y((t=>async function(e,t){var l,n,i,a,o;me.value=t,ce.value=!0,await k();const{clientX:s,clientY:u}=e,{width:r=0,height:d=0,left:v=0,top:c=0}=(null==(l=re.value)?void 0:l.getBoundingClientRect())||{},{width:p=100,height:m=80}=(null==(i=null==(n=ve.value)?void 0:n.$el)?void 0:i.getBoundingClientRect())||{},f=null!=(o=null==(a=re.value)?void 0:a.scrollTop)?o:0,g={};s<v+r-(p+2)-5?g.left=s-v+5+"px":g.right=v+r-s+5+"px",c+d-u<=m+5?g.bottom=5-f+"px":g.top=u-c+f+5+"px",pe.value=g}(t,e.id)),["prevent"]),class:h(["sider-list__box__item",{active:e.id===s(Ce).id},e.topping?"sider-list__box__item--top":""])},[u(s(R),{round:"",size:"large",src:e.avatar},null,8,["src"]),d("div",q,[d("div",F,[d("h4",null,[d("label",G,w(e.name),1),n(d("label",{class:h(["iho-chatRole",s(T)(e.roleInfo)?"isDoctor":""])},w(s(N)(e.roleInfo)),3),[[m,s(N)(e.roleInfo)]])]),d("span",null,w(e.lastMessage?s(S)(e.lastMessageSendTime).siderMsgTime:""),1)]),d("div",J,[d("div",Q,["WITHDRAWN"===e.lastMessageStatus?(i(),a("div",Z,(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.68"))||"撤回了一条消息")):(i(),a("div",{key:1,innerHTML:e.lastMessageContent},null,8,ee))]),u(s(M),{value:e.unreadNum>99?"99+":e.unreadNum},null,8,["value"])])])],42,Y)),[[m,Be(e)]]):f("v-if",!0)],64)})),128)),u(s(D),{ref_key:"contextmenuRef",ref:ve,show:ce.value,"onUpdate:show":t[3]||(t[3]=e=>ce.value=e),type:"session",position:pe.value,id:me.value,onSelect:Te},null,8,["show","position","id"])],512)],4)),[[s(V),{mode:"VR",onMove:Le}]])}});export{te as default};
@@ -52,3 +52,10 @@ export declare enum STATUS {
52
52
  ENABLED = "ENABLED",
53
53
  ENDED = "ENDED"
54
54
  }
55
+ /**
56
+ * 角色枚举
57
+ */
58
+ export declare enum ROLE_TYPE {
59
+ DOCTOR = "DOCTOR",
60
+ PATIENT = "PATIENT"
61
+ }
@@ -1 +1 @@
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.EVENT="EVENT",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||{}),L=(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))(L||{}),I=(E=>(E.REMOVED="REMOVED",E.ENABLED="ENABLED",E.ENDED="ENDED",E))(I||{});export{L as AV_STATUS,E as CHAT_TYPE,S as MESSAGE_TYPE,I as STATUS,A 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.EVENT="EVENT",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))(L||{}),N=(E=>(E.DOCTOR="DOCTOR",E.PATIENT="PATIENT",E))(N||{});export{I as AV_STATUS,E as CHAT_TYPE,S as MESSAGE_TYPE,N as ROLE_TYPE,L as STATUS,A as SUBSCRIBE_MESSAGE_TYPE};
@@ -16,3 +16,5 @@ export declare function isAudioOrVideoMessage(message: AnyObject): boolean;
16
16
  export declare function formatSeconds(seconds: number): string;
17
17
  export declare function isGroup(session: AnyObject): boolean;
18
18
  export declare function getForwardTitle(content: AnyObject): string | undefined;
19
+ export declare function isDoctorRole(type: string): boolean;
20
+ export declare function getRoleName(type: string): string;
@@ -1 +1 @@
1
- import{isToday as e,format as t,isYesterday as n,startOfDay as r}from"date-fns";import{cloneDeep as o,isNumber as a,isNaN as i,isArray as s,uniqBy as l}from"lodash-es";import{MESSAGE_TYPE as c,CHAT_TYPE as u}from"../constants/index.js";import{emojis as d}from"./emoji.js";import{uuidGenerator as g}from"../../../../shared/utils/index.js";import{createDiscreteApi as m}from"naive-ui";const{message:p}=m(["message"]);function w(r){var o;const a=new Date(r);let i,s;if(e(a))i=s=t(a,"HH:mm");else{i=n(a)?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.132"))||"昨天":t(a,"MM-dd");const e=a.getFullYear(),r=(new Date).getFullYear();s=t(a,e<r?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}return{siderMsgTime:i,msgTime:s,recordTime:function(r){var o,a,i,s;const l=new Date(r),c=Date.now()-l.getTime();if(c<6e4)return(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.133"))||"刚刚";if(c<36e5)return Math.ceil(c/1e3/60)+((null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.136"))||"分钟前");if(e(l))return((null==(i=window.getLanguageByCode)?void 0:i.call(window,"10010.1.134"))||"今天")+t(l,"HH:mm");if(n(l))return((null==(s=window.getLanguageByCode)?void 0:s.call(window,"10010.1.132"))||"昨天")+t(l,"HH:mm");{const e=l.getFullYear(),n=(new Date).getFullYear();return t(l,e<n?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}}(r)}}function f(e){return o(e||[]).sort(((e,t)=>e.topping&&!t.topping?-1:!e.topping&&t.topping?1:new Date(t.sortTime).getTime()-new Date(e.sortTime).getTime()))}function y(e){if(!(null==e?void 0:e.msg))return"";const{chatMessageType:t="",msg:n=""}=e;let r=n.toString();if(t===c.BLEND){const e=r.match(/\[([^\]]+)\]/g);return null==e||e.forEach((e=>{const n=e.match(/\[([^\]]+)\]/);if(n&&n.length>1){const o=d.findEmoji(n[1]);o&&(r=r.replace(e,`<img data-msg=${n[1]} data-type=${t} class="emoji--min" src=${o} />`))}})),r}if(t===c.TEXT){const e=e=>new RegExp("\\n*\\["+(e||"")+"(code|pre|div|span|p|table|thead|th|tbody|tr|td|ul|li|ol|li|dl|dt|dd|h2|h3|h4|h5)([\\s\\S]*?)]\\n*","g");return r=r.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&#39;").replace(/"/g,"&quot;").replace(/@(\S+)(\s+?|$)/g,'@<a href="javascript:;">$1</a>$2').replace(e(),"<$1 $2>").replace(e("/"),"</$1>").replace(/\n/g,"<br>"),r}return n}function h(e){var t,n;if(e&&a(+e)&&!i(+e)){const n=L(+e),r=n.split(":");let o=n;return 3===r.length&&"00"===r[0]&&(o=`${r[1]}:${r[2]}`),((null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.137"))||"通话时长")+o}return(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.138"))||"已取消"}function v(e){var t;if(!e)return"";const{chatMessageType:n,msg:r,messageTemplate:o}=e,a=E(e)?h(r):"";switch(n){case c.TEXT:return y(e);case c.IMAGE:return"[图片]";case c.FILE:return"[文件]";case c.EMOJI:return`<img class="emoji--min" alt=${r} src=${d.findEmoji(r)}>`;case c.TEMPLATE:return null==(t=null==o?void 0:o.setting)?void 0:t.title;case c.VIDEO:return`[视频通话]${a}`;case c.AUDIO:return`[语音通话]${a}`;default:return"[消息]"}}function T(e,t){const n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="blob",n.onload=function(e){if(200===n.status){const e=window.URL.createObjectURL(n.response),r=document.createElement("a");r.href=e,r.download=t,r.dispatchEvent(new MouseEvent("click")),window.URL.revokeObjectURL(e)}},n.send()}function H(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("HEAD",e,!0),r.onreadystatechange=()=>{var e;if(4===r.readyState&&200===r.status){let n=null!=(e=r.getResponseHeader("Content-Length"))?e:0;const o=+n;o>1048576?n=(o/1048576).toFixed(2)+"M":o>1024?n=(o/1024).toFixed(2)+"K":n+="B",t(n)}},r.send()}))}async function M(e){try{const t=await fetch(e),n=await t.blob();return new File([n],`${g()}.${n.type.split("/")[1]}`,{type:n.type})}catch(e){return}}function E(e){return e&&[c.AUDIO,c.VIDEO].includes(e.chatMessageType)}function L(e){const n=r(new Date);return n.setSeconds(e),t(n,"HH:mm:ss")}function $(e){return e.chatType===u.GROUP}function D(e){if(!s(null==e?void 0:e.forwardMessageList))return;const t=l(e.forwardMessageList,"sender").map((e=>e.senderName)),n="的聊天记录";return t.length>2?"群聊的聊天记录":1===t.length?t[0]+n:t[0]+"和"+t[1]+n}export{p as $message,M as base64ToFile,T as downloadFile,L as formatSeconds,w as formatTime,h as getAVTime,H as getFileSize,D as getForwardTitle,E as isAudioOrVideoMessage,$ as isGroup,f as listSort,v as simplifyMessage,y as transformMessage};
1
+ import{isToday as e,format as t,isYesterday as n,startOfDay as r}from"date-fns";import{cloneDeep as o,isNumber as a,isNaN as i,isArray as s,uniqBy as l}from"lodash-es";import{MESSAGE_TYPE as c,CHAT_TYPE as u,ROLE_TYPE as d}from"../constants/index.js";import{emojis as g}from"./emoji.js";import{uuidGenerator as m}from"../../../../shared/utils/index.js";import{createDiscreteApi as w}from"naive-ui";const{message:p}=w(["message"]);function f(r){var o;const a=new Date(r);let i,s;if(e(a))i=s=t(a,"HH:mm");else{i=n(a)?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.132"))||"昨天":t(a,"MM-dd");const e=a.getFullYear(),r=(new Date).getFullYear();s=t(a,e<r?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}return{siderMsgTime:i,msgTime:s,recordTime:function(r){var o,a,i,s;const l=new Date(r),c=Date.now()-l.getTime();if(c<6e4)return(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.133"))||"刚刚";if(c<36e5)return Math.ceil(c/1e3/60)+((null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.136"))||"分钟前");if(e(l))return((null==(i=window.getLanguageByCode)?void 0:i.call(window,"10010.1.134"))||"今天")+t(l,"HH:mm");if(n(l))return((null==(s=window.getLanguageByCode)?void 0:s.call(window,"10010.1.132"))||"昨天")+t(l,"HH:mm");{const e=l.getFullYear(),n=(new Date).getFullYear();return t(l,e<n?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}}(r)}}function y(e){return o(e||[]).sort(((e,t)=>e.topping&&!t.topping?-1:!e.topping&&t.topping?1:new Date(t.sortTime).getTime()-new Date(e.sortTime).getTime()))}function h(e){if(!(null==e?void 0:e.msg))return"";const{chatMessageType:t="",msg:n=""}=e;let r=n.toString();if(t===c.BLEND){const e=r.match(/\[([^\]]+)\]/g);return null==e||e.forEach((e=>{const n=e.match(/\[([^\]]+)\]/);if(n&&n.length>1){const o=g.findEmoji(n[1]);o&&(r=r.replace(e,`<img data-msg=${n[1]} data-type=${t} class="emoji--min" src=${o} />`))}})),r}if(t===c.TEXT){const e=e=>new RegExp("\\n*\\["+(e||"")+"(code|pre|div|span|p|table|thead|th|tbody|tr|td|ul|li|ol|li|dl|dt|dd|h2|h3|h4|h5)([\\s\\S]*?)]\\n*","g");return r=r.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&#39;").replace(/"/g,"&quot;").replace(/@(\S+)(\s+?|$)/g,'@<a href="javascript:;">$1</a>$2').replace(e(),"<$1 $2>").replace(e("/"),"</$1>").replace(/\n/g,"<br>"),r}return n}function T(e){var t,n;if(e&&a(+e)&&!i(+e)){const n=$(+e),r=n.split(":");let o=n;return 3===r.length&&"00"===r[0]&&(o=`${r[1]}:${r[2]}`),((null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.137"))||"通话时长")+o}return(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.138"))||"已取消"}function v(e){var t;if(!e)return"";const{chatMessageType:n,msg:r,messageTemplate:o}=e,a=M(e)?T(r):"";switch(n){case c.TEXT:return h(e);case c.IMAGE:return"[图片]";case c.FILE:return"[文件]";case c.EMOJI:return`<img class="emoji--min" alt=${r} src=${g.findEmoji(r)}>`;case c.TEMPLATE:return null==(t=null==o?void 0:o.setting)?void 0:t.title;case c.VIDEO:return`[视频通话]${a}`;case c.AUDIO:return`[语音通话]${a}`;default:return"[消息]"}}function E(e,t){const n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="blob",n.onload=function(e){if(200===n.status){const e=window.URL.createObjectURL(n.response),r=document.createElement("a");r.href=e,r.download=t,r.dispatchEvent(new MouseEvent("click")),window.URL.revokeObjectURL(e)}},n.send()}function H(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("HEAD",e,!0),r.onreadystatechange=()=>{var e;if(4===r.readyState&&200===r.status){let n=null!=(e=r.getResponseHeader("Content-Length"))?e:0;const o=+n;o>1048576?n=(o/1048576).toFixed(2)+"M":o>1024?n=(o/1024).toFixed(2)+"K":n+="B",t(n)}},r.send()}))}async function L(e){try{const t=await fetch(e),n=await t.blob();return new File([n],`${m()}.${n.type.split("/")[1]}`,{type:n.type})}catch(e){return}}function M(e){return e&&[c.AUDIO,c.VIDEO].includes(e.chatMessageType)}function $(e){const n=r(new Date);return n.setSeconds(e),t(n,"HH:mm:ss")}function D(e){return e.chatType===u.GROUP}function O(e){if(!s(null==e?void 0:e.forwardMessageList))return;const t=l(e.forwardMessageList,"sender").map((e=>e.senderName)),n="的聊天记录";return t.length>2?"群聊的聊天记录":1===t.length?t[0]+n:t[0]+"和"+t[1]+n}function j(e){return e===d.DOCTOR}function C(e){var t;let n="";switch(e){case d.DOCTOR:n="医护";break;case d.PATIENT:n=(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.200"))||"患者"}return n}export{p as $message,L as base64ToFile,E as downloadFile,$ as formatSeconds,f as formatTime,T as getAVTime,H as getFileSize,O as getForwardTitle,C as getRoleName,M as isAudioOrVideoMessage,j as isDoctorRole,D as isGroup,y as listSort,v as simplifyMessage,h as transformMessage};