cnhis-design-vue 3.2.2-beta.1 → 3.2.2-beta.14

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 (149) hide show
  1. package/README.md +87 -87
  2. package/es/components/biunique-chat/index.d.ts +752 -562
  3. package/es/components/biunique-chat/index.js +1 -1
  4. package/es/components/biunique-chat/src/Index.vue.d.ts +1216 -0
  5. package/es/components/biunique-chat/src/Index.vue.js +1 -0
  6. package/es/components/biunique-chat/src/Index.vue2.js +1 -0
  7. package/es/components/biunique-chat/src/api/index.d.ts +2 -5
  8. package/es/components/biunique-chat/src/api/index.js +1 -1
  9. package/es/components/biunique-chat/src/components/ChatFile.vue.d.ts +241 -0
  10. package/es/components/biunique-chat/src/components/ChatFile.vue.js +1 -0
  11. package/es/components/biunique-chat/src/components/ChatFile.vue2.js +1 -0
  12. package/es/components/biunique-chat/src/components/ChatFooter.vue.d.ts +3 -5
  13. package/es/components/biunique-chat/src/components/ChatFooter.vue2.js +1 -1
  14. package/es/components/biunique-chat/src/components/ChatHeader.vue.d.ts +639 -0
  15. package/es/components/biunique-chat/src/components/ChatHeader.vue2.js +1 -1
  16. package/es/components/biunique-chat/src/components/ChatMain.vue.d.ts +63 -5
  17. package/es/components/biunique-chat/src/components/ChatMain.vue2.js +1 -1
  18. package/es/components/biunique-chat/src/components/ChatRecord.vue.d.ts +101 -0
  19. package/es/components/biunique-chat/src/components/ChatRecord.vue.js +1 -0
  20. package/es/components/biunique-chat/src/components/ChatRecord.vue2.js +1 -0
  21. package/es/components/biunique-chat/src/components/ChatSet.vue.d.ts +246 -0
  22. package/es/components/biunique-chat/src/components/ChatSet.vue.js +1 -0
  23. package/es/components/biunique-chat/src/components/ChatSet.vue2.js +1 -0
  24. package/es/components/biunique-chat/src/components/PersonProfile.vue.d.ts +59 -0
  25. package/es/components/biunique-chat/src/components/PersonProfile.vue.js +1 -0
  26. package/es/components/biunique-chat/src/components/PersonProfile.vue2.js +1 -0
  27. package/es/components/biunique-chat/src/components/SiderList.vue.d.ts +20 -28
  28. package/es/components/biunique-chat/src/components/SiderList.vue2.js +1 -1
  29. package/es/components/biunique-chat/src/constants/index.d.ts +20 -0
  30. package/es/components/biunique-chat/src/constants/index.js +1 -0
  31. package/es/components/biunique-chat/src/hooks/useState.d.ts +7 -0
  32. package/es/components/biunique-chat/src/hooks/useState.js +1 -0
  33. package/es/components/biunique-chat/src/types/index.d.ts +10 -0
  34. package/es/components/biunique-chat/src/types/index.js +1 -0
  35. package/es/components/biunique-chat/src/utils/index.d.ts +8 -0
  36. package/es/components/biunique-chat/src/utils/index.js +1 -0
  37. package/es/components/biunique-chat/style/iconfont.ttf +0 -0
  38. package/es/components/biunique-chat/style/index.css +1 -1
  39. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  40. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  41. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  42. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  43. package/es/components/button-print/src/utils/print.d.ts +1 -0
  44. package/es/components/button-print/src/utils/print.js +1 -1
  45. package/es/components/calendar/index.d.ts +11 -1
  46. package/es/components/calendar/src/Calendar.vue.d.ts +11 -1
  47. package/es/components/callback/src/components/dialog/drawer.vue2.js +1 -1
  48. package/es/components/callback/src/components/dialog/modal.vue2.js +1 -1
  49. package/es/components/callback/src/components/render/popupMaps.d.ts +7 -0
  50. package/es/components/card-reader-sdk/src/cardReaderSDK.d.ts +26 -7
  51. package/es/components/card-reader-sdk/src/cardReaderSDK.js +1 -1
  52. package/es/components/card-reader-sdk/src/types/index.d.ts +4 -1
  53. package/es/components/card-reader-sdk/src/utils/ensureUID2IdCard.d.ts +17 -0
  54. package/es/components/card-reader-sdk/src/utils/ensureUID2IdCard.js +1 -0
  55. package/es/components/classification/src/index.vue.d.ts +3 -0
  56. package/es/components/expand-field/src/components/FormBatchOptionsModal.vue2.js +1 -1
  57. package/es/components/expand-field/src/components/PersonModal.vue2.js +1 -1
  58. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  59. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  60. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
  61. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  62. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
  63. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  64. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  65. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  66. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  67. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  68. package/es/components/fabric-chart/src/hooks/useCommon.d.ts +1 -0
  69. package/es/components/fabric-chart/src/hooks/useCommon.js +1 -1
  70. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -1
  71. package/es/components/form-config/index.d.ts +16 -0
  72. package/es/components/form-config/src/FormConfig.vue.d.ts +16 -0
  73. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +5 -0
  74. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +8 -0
  75. package/es/components/form-config/src/hooks/useSortalbeConfig.js +1 -1
  76. package/es/components/form-render/index.d.ts +5 -0
  77. package/es/components/form-render/src/FormRender.vue.d.ts +5 -0
  78. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  79. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +5 -0
  80. package/es/components/form-render/src/components/renderer/inputNumber.js +1 -1
  81. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -0
  82. package/es/components/form-render/src/hooks/useFormEvent.d.ts +2 -1
  83. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  84. package/es/components/form-render/src/hooks/useSelectedSetting.d.ts +3 -4
  85. package/es/components/form-render/src/hooks/useSelectedSetting.js +1 -1
  86. package/es/components/form-render/src/types/index.d.ts +1 -0
  87. package/es/components/iho-table/index.d.ts +2 -0
  88. package/es/components/iho-table/src/IhoTable.vue.d.ts +2 -0
  89. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  90. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +1 -0
  91. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue2.js +1 -1
  92. package/es/components/iho-table/src/plugins/headerPlugin.js +1 -1
  93. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/checkRendererPlugin.js +1 -1
  94. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/index.d.ts +5 -0
  95. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useHeaderCSS.js +1 -1
  96. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useHoverColumn.js +1 -1
  97. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/renderer.js +1 -1
  98. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/types.d.ts +1 -0
  99. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/utils.d.ts +1 -0
  100. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/utils.js +1 -1
  101. package/es/components/iho-table/src/types/index.d.ts +1 -0
  102. package/es/components/iho-table/src/utils/index.d.ts +1 -1
  103. package/es/components/iho-table/src/utils/index.js +1 -1
  104. package/es/components/iho-table/style/index.css +1 -1
  105. package/es/components/index.css +1 -1
  106. package/es/components/index.js +1 -1
  107. package/es/components/info-header/index.d.ts +15 -0
  108. package/es/components/info-header/src/InfoHeader.vue.d.ts +15 -0
  109. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +1 -0
  110. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +1 -0
  111. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +6 -0
  112. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +5 -0
  113. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  114. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  115. package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
  116. package/es/components/shortcut-setter/index.d.ts +5 -0
  117. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +5 -0
  118. package/es/components/step-notice/index.d.ts +9 -0
  119. package/es/components/step-notice/src/StepNotice.vue.d.ts +9 -0
  120. package/es/components/step-notice/src/StepNotice.vue2.js +1 -1
  121. package/es/components/step-notice/src/components/NoticeItem.vue.d.ts +3 -0
  122. package/es/components/step-notice/src/components/NoticeItem.vue2.js +1 -1
  123. package/es/components/step-notice/src/types.d.ts +1 -0
  124. package/es/components/step-notice/style/index.css +1 -1
  125. package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -1
  126. package/es/components/table-export-field/src/components/SaveProjectModal.vue2.js +1 -1
  127. package/es/shared/assets/img/failure.png.js +1 -1
  128. package/es/shared/assets/img/no-permission.png.js +1 -1
  129. package/es/shared/assets/img/nodata.png.js +1 -1
  130. package/es/shared/assets/img/notfound.png.js +1 -1
  131. package/es/shared/assets/img/qr.png.js +1 -1
  132. package/es/shared/assets/img/success.png.js +1 -1
  133. package/es/shared/assets/img/table_style_2.png.js +1 -1
  134. package/es/shared/assets/img/video.png.js +1 -1
  135. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  136. package/es/shared/assets/img/xb_big.png.js +1 -1
  137. package/es/shared/assets/img/xb_small.png.js +1 -1
  138. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  139. package/es/shared/hooks/index.js +1 -1
  140. package/es/shared/hooks/useTheme.d.ts +1 -0
  141. package/es/shared/hooks/useTheme.js +1 -1
  142. package/es/shared/package.json.js +1 -1
  143. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  144. package/es/shared/utils/index.js +1 -1
  145. package/es/shared/utils/tapable/index.d.ts +139 -0
  146. package/package.json +2 -2
  147. package/es/components/biunique-chat/src/BiuniqueChat.vue.d.ts +0 -1005
  148. package/es/components/biunique-chat/src/BiuniqueChat.vue.js +0 -1
  149. package/es/components/biunique-chat/src/BiuniqueChat.vue2.js +0 -1
@@ -1,13 +1,71 @@
1
1
  import { AnyObject } from '../../../../shared/types';
2
+ import { MESSAGE_TYPE } from '../constants';
2
3
  declare const _default: import("vue").DefineComponent<{}, {
3
- state: AnyObject;
4
- setMsgList: Function;
5
- setIsAppendMsg: Function;
6
4
  chatMainRef: import("vue").Ref<HTMLElement | undefined>;
5
+ state: AnyObject;
6
+ setMsgList: (list?: AnyObject[]) => void;
7
+ page: number;
7
8
  getHistoryRecord: () => Promise<void>;
8
- accessSession: (lastSessionId: string) => Promise<void>;
9
- isNeedShowTime: (item: AnyObject, index: number) => boolean;
9
+ accessSession: () => Promise<void>;
10
+ needShowTime: (item: AnyObject, index: number) => boolean;
10
11
  setScrollToButtom: () => Promise<void>;
12
+ getIntervalMsgTime: (time: string) => string;
11
13
  NAvatar: any;
14
+ PersonProfile: import("vue").DefineComponent<{
15
+ userInfo: {
16
+ type: import("vue").PropType<AnyObject>;
17
+ required: true;
18
+ };
19
+ }, {
20
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
21
+ userInfo: {
22
+ type: import("vue").PropType<AnyObject>;
23
+ required: true;
24
+ };
25
+ }>> & {}>>;
26
+ showLargeAvatar: import("vue").Ref<boolean>;
27
+ showPhone: import("vue").Ref<boolean>;
28
+ personInfo: import("vue").ComputedRef<({
29
+ label: string;
30
+ content: string;
31
+ key?: undefined;
32
+ } | {
33
+ label: string;
34
+ content: string;
35
+ key: string;
36
+ })[]>;
37
+ getContent: (info: AnyObject) => any;
38
+ onFinish: (options: {
39
+ file: import("naive-ui").UploadFileInfo;
40
+ }) => void;
41
+ onChange: (options: {
42
+ file: import("naive-ui").UploadFileInfo;
43
+ }) => void;
44
+ NAvatar: any;
45
+ NPopover: any;
46
+ NButton: any;
47
+ NIcon: any;
48
+ NUpload: any;
49
+ NUploadTrigger: import("vue").DefineComponent<{
50
+ abstract: BooleanConstructor;
51
+ }, () => JSX.Element | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
52
+ [key: string]: any;
53
+ }>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
54
+ abstract: BooleanConstructor;
55
+ }>>, {
56
+ abstract: boolean;
57
+ }>;
58
+ ChatbubbleEllipses: 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
+ 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<{}>>, {}>;
60
+ Camera: 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<{}>>, {}>;
61
+ 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<{}>>, {}>;
62
+ 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<{}>>, {}>;
63
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
64
+ userInfo: {
65
+ type: import("vue").PropType<AnyObject>;
66
+ required: true;
67
+ };
68
+ }>>, {}>;
69
+ MESSAGE_TYPE: typeof MESSAGE_TYPE;
12
70
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
13
71
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as s,ref as n,nextTick as t,watch as i,openBlock as r,createElementBlock as o,Fragment as a,renderList as l,unref as c,toDisplayString as u,createCommentVNode as m,createVNode as d,withCtx as f,createTextVNode as g,createElementVNode as v}from"vue";import{NAvatar as p}from"naive-ui";import{useInfiniteScroll as _}from"@vueuse/core";import{getHistoryRecordApi as y,accessSessionApi as L}from"../api/index.js";const M={key:0,class:"time"},I={key:1,class:"message-box left"},T={class:"content"},h=["innerHTML"],k={key:2,class:"message-box right"},H={class:"content"},w=["innerHTML"];var x=e({__name:"ChatMain",setup(e){const x=s("state"),A=s("setMsgList"),S=s("setIsAppendMsg"),b=n();async function z(){var e,s;try{const n=null==(s=null==(e=x.msgList)?void 0:e[0])?void 0:s.id,t=await y({mergeType:1,sessionId:x.currentSessionId,from:x.userInfo.username,source:2,id:n});if(!Array.isArray(t))return;if(n&&0===t.length)return console.log("没有更多消息了");A(n?[...t,...x.msgList]:t),n||j()}catch(e){console.log(e)}}function N(e,s){return+(e.createdTime||Date.now())-+(0==s?0:x.msgList[s-1].createdTime)>18e4}async function j(){var e,s,n;await t();const i=null!=(s=null==(e=b.value)?void 0:e.scrollHeight)?s:0;null==(n=b.value)||n.scrollTo({top:i})}return _(b,(()=>{z()}),{distance:20,direction:"top"}),i((()=>x.currentSessionId),((e,s)=>{e&&(!async function(e){await L({sessionId:x.currentSessionId,lastSessionId:e,from:x.userInfo.username})}(s),z())}),{immediate:!0}),i((()=>x.isAppendMsg),(e=>{e&&(A([...x.msgList,x.currentMsg]),S(!1),j())}),{immediate:!0}),(e,s)=>(r(),o("div",{class:"chat-main",ref_key:"chatMainRef",ref:b},[(r(!0),o(a,null,l(c(x).msgList,((e,s)=>(r(),o("div",{class:"message-item",key:s},[N(e,s)?(r(),o("p",M,u(e.__time),1)):m("v-if",!0),e.__left?(r(),o("div",I,[d(c(p),{round:"",size:"large"},{default:f((()=>[g(u(e.fromName.slice(-2)),1)])),_:2},1024),v("div",T,[v("p",{innerHTML:e.__content},null,8,h)])])):(r(),o("div",k,[v("div",H,[v("p",{innerHTML:e.__content},null,8,w)]),d(c(p),{round:"",size:"large"},{default:f((()=>[g(u(e.fromName.slice(-2)),1)])),_:2},1024)]))])))),128))],512))}});export{x as default};
1
+ import{defineComponent as e,ref as s,nextTick as t,watch as n,openBlock as i,createElementBlock as r,Fragment as o,renderList as a,unref as m,normalizeClass as c,toDisplayString as l,createCommentVNode as u,createElementVNode as d,createVNode as f,withCtx as g}from"vue";import{NAvatar as p}from"naive-ui";import{useInfiniteScroll as v}from"@vueuse/core";import{isToday as y,format as H,isYesterday as M}from"date-fns";import{getHistoryRecordApi as T}from"../api/index.js";import{useState as h}from"../hooks/useState.js";import{isNumber as _}from"lodash-es";import L from"./PersonProfile.vue.js";import{MESSAGE_TYPE as k}from"../constants/index.js";const w={key:0,class:"time"},A={class:"message-box"},D=["data-time"],j=["innerHTML"];var x=e({__name:"ChatMain",setup(e){const x=s(),{state:I,setMsgList:K}=h();let F=1;async function P(){try{const e=await T({sessionKey:I.sessionKey,page:F});if(console.log("getHistoryRecord",e),!Array.isArray(e))return;if(0===e.length)return console.log("没有更多消息了");K(F>1?[...e,...I.msgList]:e),1===F&&Y()}catch(e){console.log(e)}}function R(e,s){var t;const n=_(e.sendTime)?e.sendTime:Date.parse(e.sendTime),i=null==(t=I.msgList[s-1])?void 0:t.sendTime;return n-(0===s?0:_(i)?i:Date.parse(i))>3e5}async function Y(){var e,s,n;await t();const i=null!=(s=null==(e=x.value)?void 0:e.scrollHeight)?s:0;null==(n=x.value)||n.scrollTo({top:i})}function b(e){const s=new Date(e),t=Date.now()-s.getTime();if(t<6e4)return"刚刚";if(t<36e5)return Math.ceil(t/1e4/60)+"分钟前";if(y(s))return"今天 "+H(s,"HH:mm");if(M(s))return"昨天 "+H(s,"HH:mm");{const e=s.getFullYear(),t=(new Date).getFullYear();return H(s,e<t?"yyyy年M月d日 HH:mm":"M月d日 HH:mm")}}return v(x,(()=>{F++,P()}),{distance:20,direction:"top"}),n((()=>I.sessionKey),(e=>{e&&(F=1,P())}),{immediate:!0}),n((()=>I.isAppendMsg),(e=>{e&&(K([...I.msgList,I.currentMsg]),I.isAppendMsg=!1,Y())}),{immediate:!0}),(e,s)=>(i(),r("div",{class:"chat-main",ref_key:"chatMainRef",ref:x},[(i(!0),r(o,null,a(m(I).msgList,((e,s)=>(i(),r("div",{class:c(["message-item",{"message-item--mine":e.sender==m(I).userInfo.id}]),key:s},[R(e,s)?(i(),r("p",w,l(b(e.sendTime)),1)):u("v-if",!0),d("div",A,[f(L,{"user-info":e.sender==m(I).userInfo.id?m(I).userInfo:e},{trigger:g((()=>[f(m(p),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-info"]),e.content?(i(),r(o,{key:0},[e.content.chatMessageType===m(k).TEXT?(i(),r("div",{key:0,class:"content","data-time":e.__time},[d("pre",{innerHTML:e.__content},null,8,j)],8,D)):u("v-if",!0)],64)):u("v-if",!0)])],2)))),128))],512))}});export{x as default};
@@ -0,0 +1,101 @@
1
+ import { PropType } from 'vue';
2
+ import { AnyObject } from '../../../../shared/types';
3
+ declare const _default: import("vue").DefineComponent<{}, {
4
+ tagColor: {
5
+ color: string;
6
+ textColor: string;
7
+ };
8
+ state: AnyObject;
9
+ options: {
10
+ label: any;
11
+ value: any;
12
+ avatar: any;
13
+ }[];
14
+ user: import("vue").Ref<never[]>;
15
+ startTime: import("vue").Ref<any>;
16
+ endTime: import("vue").Ref<any>;
17
+ getPrefixCondition: () => (JSX.Element | null)[];
18
+ renderLabel: (option: AnyObject) => JSX.Element;
19
+ NModal: any;
20
+ NTag: any;
21
+ NInput: any;
22
+ NSelect: any;
23
+ NAvatar: any;
24
+ NPopover: any;
25
+ DatePicker: import("../../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
26
+ updateUnchangedValue: {
27
+ type: BooleanConstructor;
28
+ };
29
+ onConfirm: {
30
+ type: FunctionConstructor;
31
+ };
32
+ formattedValue: {
33
+ type: PropType<(string | [string, string]) | null | undefined>;
34
+ };
35
+ placeholder: {
36
+ type: StringConstructor;
37
+ };
38
+ allowedInvalidValue: {
39
+ type: StringConstructor;
40
+ };
41
+ }, {
42
+ attrs: {
43
+ [x: string]: unknown;
44
+ };
45
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
46
+ updateUnchangedValue: {
47
+ type: BooleanConstructor;
48
+ };
49
+ onConfirm: {
50
+ type: FunctionConstructor;
51
+ };
52
+ formattedValue: {
53
+ type: PropType<(string | [string, string]) | null | undefined>;
54
+ };
55
+ placeholder: {
56
+ type: StringConstructor;
57
+ };
58
+ allowedInvalidValue: {
59
+ type: StringConstructor;
60
+ };
61
+ }>> & {
62
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
63
+ }>>;
64
+ emit: (event: "update:formatted-value", ...args: any[]) => void;
65
+ datePickerRef: import("vue").Ref<AnyObject | null>;
66
+ panelInstRef: import("vue").Ref<null>;
67
+ placeholderRef: import("vue").Ref<any>;
68
+ currentFormattedValue: import("vue").WritableComputedRef<(string | [string, string]) | null | undefined>;
69
+ isDateTime: import("vue").ComputedRef<boolean>;
70
+ formatRef: import("vue").ComputedRef<string>;
71
+ panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
72
+ focus: () => any;
73
+ blur: () => any;
74
+ handleConfirm: (target: HTMLInputElement) => void;
75
+ onUpdateShow: (show: boolean) => Promise<void>;
76
+ onConfirm: (...args: any[]) => Promise<void>;
77
+ isAllowedInvalidValue: (value: (string | [string, string]) | null | undefined) => boolean | "" | undefined;
78
+ NDatePicker: any;
79
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:formatted-value"[], "update:formatted-value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
80
+ updateUnchangedValue: {
81
+ type: BooleanConstructor;
82
+ };
83
+ onConfirm: {
84
+ type: FunctionConstructor;
85
+ };
86
+ formattedValue: {
87
+ type: PropType<(string | [string, string]) | null | undefined>;
88
+ };
89
+ placeholder: {
90
+ type: StringConstructor;
91
+ };
92
+ allowedInvalidValue: {
93
+ type: StringConstructor;
94
+ };
95
+ }>> & {
96
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
97
+ }, {
98
+ updateUnchangedValue: boolean;
99
+ }>>;
100
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
101
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"./ChatRecord.vue2.js";import r from"../../../../_virtual/_plugin-vue_export-helper.js";var o=r(e,[["__file","ChatRecord.vue"]]);export{o as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as l,openBlock as a,createBlock as t,unref as r,withCtx as s,createElementVNode as o,createVNode as n,resolveDynamicComponent as i,withDirectives as c,createTextVNode as u,toDisplayString as d,vShow as v,Fragment as m}from"vue";import{NModal as p,NInput as f,NAvatar as g,NSelect as b,NPopover as _,NTag as h,NIcon as x}from"naive-ui";import{SearchOutline as y}from"@vicons/ionicons5";import{useState as w}from"../hooks/useState.js";import I from"../../../date-picker/index.js";const k={class:"c-chat-dialog__content c-chat-record-wrapper"},S={class:"chat-record-box"},z={class:"chat-record-box__content"},U={class:"content-item"},j=o("div",{class:"msg-box"},[o("div",{class:"name-and-time"},[o("span",null,"大傻子(质控部)"),o("span",null,"今天14:30")]),o("div",{class:"content"},[o("p",{innerHTML:"内容内容"})])],-1),C={class:"content-item"},H=o("div",{class:"msg-box"},[o("div",{class:"name-and-time"},[o("span",null,"大傻子2号(质控部)"),o("span",null,"今天14:30")]),o("div",{class:"content"},[o("p",{innerHTML:"内容内容叭叭叭"})])],-1),L={class:"chat-record-box__filter"},M=o("span",{class:"filter-title"},"添加筛选条件",-1),T={class:"filter-item"},R=o("span",{class:"label"},"成员:",-1),q={class:"filter-item"},A=o("span",{class:"label"},"日期:",-1),B={class:"time-target"},D={class:"time-target__item"},E=o("span",null,"开始:",-1),F={class:"time-target__item"},G=o("span",null,"结束:",-1);var J=e({__name:"ChatRecord",setup(e){const J={color:"#fff",textColor:"#666"},{state:K}=w(),N=[{label:K.userInfo.name,value:K.userInfo.id,avatar:K.userInfo.avatar},{label:K.currentSessionItem.name,value:K.currentSessionItem.receiver,avatar:K.currentSessionItem.avatar}],O=l([]),P=l(),Q=l();function V(e){return n(m,null,[n("div",{style:"display: flex;align-items: center"},[n(g,{src:e.avatar,round:!0,size:"small"},null),n("span",{style:"margin-left: 10px"},[e.label])])])}return(e,l)=>(a(),t(r(p),{preset:"dialog",title:"聊天记录","show-icon":!1,class:"c-chat-dialog"},{default:s((()=>[o("div",k,[n(r(f),{placeholder:"搜索文件"},{prefix:s((()=>[(a(),t(i((()=>[n(x,{component:y,color:"#6666"},null),O.value.length>0?n(h,{closable:!0,bordered:!1,color:J,style:"margin-left: 10px"},{default:()=>[u("成员: "),O.value.length>1?O.value.length+"人":O.value[0]]}):null,P.value?n(h,{closable:!0,bordered:!1,color:J,style:"margin-left: 10px"},{default:()=>[u("起始时间: "),P.value]}):null,Q.value?n(h,{closable:!0,bordered:!1,color:J,style:"margin-left: 10px"},{default:()=>[u("结束时间: "),Q.value]}):null]))))])),_:1}),o("div",S,[o("div",z,[o("div",U,[n(r(g),{round:"",size:38}),j]),o("div",C,[n(r(g),{round:"",size:38}),H])]),o("div",L,[M,o("div",T,[R,n(r(b),{value:O.value,"onUpdate:value":l[0]||(l[0]=e=>O.value=e),multiple:"","max-tag-count":1,"render-label":V,options:N},null,8,["value"])]),o("div",q,[A,o("div",B,[n(r(_),{trigger:"click","show-arrow":!1},{trigger:s((()=>[o("div",D,[E,c(n(r(h),{bordered:!1,color:J,closable:""},{default:s((()=>[u(d(P.value),1)])),_:1},512),[[v,P.value]])])])),default:s((()=>[n(r(I),{"formatted-value":P.value,"onUpdate:formatted-value":l[1]||(l[1]=e=>P.value=e),type:"date",panel:"",clearable:""},null,8,["formatted-value"])])),_:1}),n(r(_),{trigger:"click","show-arrow":!1},{trigger:s((()=>[o("div",F,[G,c(n(r(h),{bordered:!1,color:J,closable:""},{default:s((()=>[u(d(Q.value),1)])),_:1},512),[[v,Q.value]])])])),default:s((()=>[n(r(I),{"formatted-value":Q.value,"onUpdate:formatted-value":l[2]||(l[2]=e=>Q.value=e),type:"date",panel:"",clearable:""},null,8,["formatted-value"])])),_:1})])])])])])])),_:1}))}});export{J as default};
@@ -0,0 +1,246 @@
1
+ import { PropType } from 'vue';
2
+ import { AnyObject } from '../../../../shared/types';
3
+ declare const _default: import("vue").DefineComponent<{}, {
4
+ state: AnyObject;
5
+ setCurrentSessionItem: (item: AnyObject) => void;
6
+ handleTopping: (value: boolean) => Promise<void>;
7
+ NDrawer: any;
8
+ NDrawerContent: import("vue").DefineComponent<{
9
+ title: {
10
+ type: StringConstructor;
11
+ };
12
+ headerStyle: PropType<string | import("vue").CSSProperties>;
13
+ footerStyle: PropType<string | import("vue").CSSProperties>;
14
+ bodyStyle: PropType<string | import("vue").CSSProperties>;
15
+ bodyContentStyle: PropType<string | import("vue").CSSProperties>;
16
+ nativeScrollbar: {
17
+ type: BooleanConstructor;
18
+ default: boolean;
19
+ };
20
+ scrollbarProps: PropType<import("naive-ui/es/_internal").ScrollbarProps>;
21
+ closable: BooleanConstructor;
22
+ }, {
23
+ handleCloseClick: () => void;
24
+ mergedTheme: import("vue").Ref<{
25
+ common: {
26
+ baseColor: string;
27
+ primaryColor: string;
28
+ primaryColorHover: string;
29
+ primaryColorPressed: string;
30
+ primaryColorSuppl: string;
31
+ infoColor: string;
32
+ infoColorHover: string;
33
+ infoColorPressed: string;
34
+ infoColorSuppl: string;
35
+ successColor: string;
36
+ successColorHover: string;
37
+ successColorPressed: string;
38
+ successColorSuppl: string;
39
+ warningColor: string;
40
+ warningColorHover: string;
41
+ warningColorPressed: string;
42
+ warningColorSuppl: string;
43
+ errorColor: string;
44
+ errorColorHover: string;
45
+ errorColorPressed: string;
46
+ errorColorSuppl: string;
47
+ textColorBase: string;
48
+ textColor1: string;
49
+ textColor2: string;
50
+ textColor3: string;
51
+ textColorDisabled: string;
52
+ placeholderColor: string;
53
+ placeholderColorDisabled: string;
54
+ iconColor: string;
55
+ iconColorHover: string;
56
+ iconColorPressed: string;
57
+ iconColorDisabled: string;
58
+ opacity1: string;
59
+ opacity2: string;
60
+ opacity3: string;
61
+ opacity4: string;
62
+ opacity5: string;
63
+ dividerColor: string;
64
+ borderColor: string;
65
+ closeIconColor: string;
66
+ closeIconColorHover: string;
67
+ closeIconColorPressed: string;
68
+ closeColorHover: string;
69
+ closeColorPressed: string;
70
+ clearColor: string;
71
+ clearColorHover: string;
72
+ clearColorPressed: string;
73
+ scrollbarColor: string;
74
+ scrollbarColorHover: string;
75
+ scrollbarWidth: string;
76
+ scrollbarHeight: string;
77
+ scrollbarBorderRadius: string;
78
+ progressRailColor: string;
79
+ railColor: string;
80
+ popoverColor: string;
81
+ tableColor: string;
82
+ cardColor: string;
83
+ modalColor: string;
84
+ bodyColor: string;
85
+ tagColor: string;
86
+ avatarColor: string;
87
+ invertedColor: string;
88
+ inputColor: string;
89
+ codeColor: string;
90
+ tabColor: string;
91
+ actionColor: string;
92
+ tableHeaderColor: string;
93
+ hoverColor: string;
94
+ tableColorHover: string;
95
+ tableColorStriped: string;
96
+ pressedColor: string;
97
+ opacityDisabled: string;
98
+ inputColorDisabled: string;
99
+ buttonColor2: string;
100
+ buttonColor2Hover: string;
101
+ buttonColor2Pressed: string;
102
+ boxShadow1: string;
103
+ boxShadow2: string;
104
+ boxShadow3: string;
105
+ fontFamily: string;
106
+ fontFamilyMono: string;
107
+ fontWeight: string;
108
+ fontWeightStrong: string;
109
+ cubicBezierEaseInOut: string;
110
+ cubicBezierEaseOut: string;
111
+ cubicBezierEaseIn: string;
112
+ borderRadius: string;
113
+ borderRadiusSmall: string;
114
+ fontSize: string;
115
+ fontSizeMini: string;
116
+ fontSizeTiny: string;
117
+ fontSizeSmall: string;
118
+ fontSizeMedium: string;
119
+ fontSizeLarge: string;
120
+ fontSizeHuge: string;
121
+ lineHeight: string;
122
+ heightMini: string;
123
+ heightTiny: string;
124
+ heightSmall: string;
125
+ heightMedium: string;
126
+ heightLarge: string;
127
+ heightHuge: string;
128
+ name: "common";
129
+ };
130
+ self: {
131
+ bodyPadding: string;
132
+ headerPadding: string;
133
+ footerPadding: string;
134
+ color: string;
135
+ textColor: string;
136
+ titleTextColor: string;
137
+ titleFontSize: string;
138
+ titleFontWeight: string;
139
+ boxShadow: string;
140
+ lineHeight: string;
141
+ headerBorderBottom: string;
142
+ footerBorderTop: string;
143
+ closeIconColor: string;
144
+ closeIconColorHover: string;
145
+ closeIconColorPressed: string;
146
+ closeSize: string;
147
+ closeIconSize: string;
148
+ closeColorHover: string;
149
+ closeColorPressed: string;
150
+ closeBorderRadius: string;
151
+ resizableTriggerColorHover: string;
152
+ };
153
+ peers: {
154
+ Scrollbar: import("naive-ui/es/_mixins").Theme<"Scrollbar", {
155
+ color: string;
156
+ colorHover: string;
157
+ }, any>;
158
+ };
159
+ peerOverrides: {
160
+ Scrollbar?: {
161
+ peers?: {
162
+ [x: string]: any;
163
+ } | undefined;
164
+ } | undefined;
165
+ };
166
+ }>;
167
+ mergedClsPrefix: import("vue").Ref<string>;
168
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
169
+ title: {
170
+ type: StringConstructor;
171
+ };
172
+ headerStyle: PropType<string | import("vue").CSSProperties>;
173
+ footerStyle: PropType<string | import("vue").CSSProperties>;
174
+ bodyStyle: PropType<string | import("vue").CSSProperties>;
175
+ bodyContentStyle: PropType<string | import("vue").CSSProperties>;
176
+ nativeScrollbar: {
177
+ type: BooleanConstructor;
178
+ default: boolean;
179
+ };
180
+ scrollbarProps: PropType<import("naive-ui/es/_internal").ScrollbarProps>;
181
+ closable: BooleanConstructor;
182
+ }>>, {
183
+ closable: boolean;
184
+ nativeScrollbar: boolean;
185
+ }>;
186
+ NAvatar: any;
187
+ NIcon: any;
188
+ NSwitch: any;
189
+ 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<{}>>, {}>;
190
+ PersonProfile: import("vue").DefineComponent<{
191
+ userInfo: {
192
+ type: PropType<AnyObject>;
193
+ required: true;
194
+ };
195
+ }, {
196
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
197
+ userInfo: {
198
+ type: PropType<AnyObject>;
199
+ required: true;
200
+ };
201
+ }>> & {}>>;
202
+ showLargeAvatar: import("vue").Ref<boolean>;
203
+ showPhone: import("vue").Ref<boolean>;
204
+ personInfo: import("vue").ComputedRef<({
205
+ label: string;
206
+ content: string;
207
+ key?: undefined;
208
+ } | {
209
+ label: string;
210
+ content: string;
211
+ key: string;
212
+ })[]>;
213
+ getContent: (info: AnyObject) => any;
214
+ onFinish: (options: {
215
+ file: import("naive-ui").UploadFileInfo;
216
+ }) => void;
217
+ onChange: (options: {
218
+ file: import("naive-ui").UploadFileInfo;
219
+ }) => void;
220
+ NAvatar: any;
221
+ NPopover: any;
222
+ NButton: any;
223
+ NIcon: any;
224
+ NUpload: any;
225
+ NUploadTrigger: import("vue").DefineComponent<{
226
+ abstract: BooleanConstructor;
227
+ }, () => JSX.Element | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
228
+ [key: string]: any;
229
+ }>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
230
+ abstract: BooleanConstructor;
231
+ }>>, {
232
+ abstract: boolean;
233
+ }>;
234
+ ChatbubbleEllipses: 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<{}>>, {}>;
235
+ 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<{}>>, {}>;
236
+ Camera: 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<{}>>, {}>;
237
+ 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<{}>>, {}>;
238
+ 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<{}>>, {}>;
239
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
240
+ userInfo: {
241
+ type: PropType<AnyObject>;
242
+ required: true;
243
+ };
244
+ }>>, {}>;
245
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
246
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"./ChatSet.vue2.js";import t from"../../../../_virtual/_plugin-vue_export-helper.js";var r=t(e,[["__file","ChatSet.vue"]]);export{r as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,openBlock as s,createBlock as t,unref as o,withCtx as n,createVNode as i,createElementVNode as r,toDisplayString as a}from"vue";import{NDrawer as u,NDrawerContent as l,NAvatar as c,NIcon as p,NSwitch as m}from"naive-ui";import{ChevronForwardOutline as f}from"@vicons/ionicons5";import{useState as d}from"../hooks/useState.js";import v from"./PersonProfile.vue.js";import{toppingSessionApi as g}from"../api/index.js";const h={class:"chat-set-wrapper"},_={class:"item user-info"},I={class:"item"},S=r("span",{class:"label"},"置顶聊天",-1);var y=e({__name:"ChatSet",setup(e){const{state:y,setCurrentSessionItem:b}=d();async function j(e){try{await g({sessionKey:y.currentSessionItem.sessionKey,id:y.currentSessionItem.id,topping:e}),b({topping:e}),y.isChangeSession=!0}catch(e){console.log(e)}}return(e,d)=>(s(),t(o(u),{width:320,"trap-focus":!1,"block-scroll":!1,to:".c-biunique-chat"},{default:n((()=>[i(o(l),{title:"聊天设置"},{default:n((()=>[r("div",h,[i(v,{"user-info":o(y).userInfo},{trigger:n((()=>[r("div",_,[i(o(c),{round:"",size:40,src:o(y).currentSessionItem.avatar},null,8,["src"]),r("span",null,a(o(y).userInfo.name),1),i(o(p),{size:24,component:o(f),class:"item__right"},null,8,["component"])])])),_:1},8,["user-info"]),r("div",I,[S,i(o(m),{value:o(y).userInfo.topping,"onUpdate:value":[d[0]||(d[0]=e=>o(y).userInfo.topping=e),j],class:"item__right"},null,8,["value"])])])])),_:1})])),_:1}))}});export{y as default};
@@ -0,0 +1,59 @@
1
+ import { PropType } from 'vue';
2
+ import { UploadFileInfo } from 'naive-ui';
3
+ import { AnyObject } from '../../../../shared/types';
4
+ declare const _default: import("vue").DefineComponent<{
5
+ userInfo: {
6
+ type: PropType<AnyObject>;
7
+ required: true;
8
+ };
9
+ }, {
10
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
11
+ userInfo: {
12
+ type: PropType<AnyObject>;
13
+ required: true;
14
+ };
15
+ }>> & {}>>;
16
+ showLargeAvatar: import("vue").Ref<boolean>;
17
+ showPhone: import("vue").Ref<boolean>;
18
+ personInfo: import("vue").ComputedRef<({
19
+ label: string;
20
+ content: string;
21
+ key?: undefined;
22
+ } | {
23
+ label: string;
24
+ content: string;
25
+ key: string;
26
+ })[]>;
27
+ getContent: (info: AnyObject) => any;
28
+ onFinish: (options: {
29
+ file: UploadFileInfo;
30
+ }) => void;
31
+ onChange: (options: {
32
+ file: UploadFileInfo;
33
+ }) => void;
34
+ NAvatar: any;
35
+ NPopover: any;
36
+ NButton: any;
37
+ NIcon: any;
38
+ NUpload: any;
39
+ NUploadTrigger: import("vue").DefineComponent<{
40
+ abstract: BooleanConstructor;
41
+ }, () => JSX.Element | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
42
+ [key: string]: any;
43
+ }>[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
44
+ abstract: BooleanConstructor;
45
+ }>>, {
46
+ abstract: boolean;
47
+ }>;
48
+ ChatbubbleEllipses: 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<{}>>, {}>;
49
+ 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<{}>>, {}>;
50
+ Camera: 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<{}>>, {}>;
51
+ 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<{}>>, {}>;
52
+ 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<{}>>, {}>;
53
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
54
+ userInfo: {
55
+ type: PropType<AnyObject>;
56
+ required: true;
57
+ };
58
+ }>>, {}>;
59
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"./PersonProfile.vue2.js";import r from"../../../../_virtual/_plugin-vue_export-helper.js";var o=r(e,[["__file","PersonProfile.vue"]]);export{o as default};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as n,computed as o,openBlock as l,createBlock as a,unref as t,createSlots as r,withCtx as s,withDirectives as c,createElementVNode as i,createVNode as u,createCommentVNode as p,toDisplayString as f,createTextVNode as d,createElementBlock as v,Fragment as m,renderList as b,vShow as _,renderSlot as g}from"vue";import{NPopover as h,NAvatar as k,NUpload as y,NUploadTrigger as C,NButton as z,NIcon as I}from"naive-ui";import{Camera as x,ChatbubbleEllipses as $,EyeOffOutline as w,EyeOutline as F,Close as P}from"@vicons/ionicons5";const R={class:"popover-person"},j={class:"popover-person__left"},q={class:"profile"},A={class:"profile__text"},D={class:"popover-person__right"},L={class:"label"},O={class:"content"};var U=e({__name:"PersonProfile",props:{userInfo:{type:Object,required:!0}},setup(e){const U=e,B=n(!1),E=n(!1),G=o((()=>[{label:"机构",content:"深圳市人民医院(留医部)"},{label:"姓名",content:"大傻子"},{label:"归属科室",content:"质控部"},{label:"业务科室",content:"辣鸡部"},{label:"手机号",content:"12345678932",key:"phone"},{label:"岗位",content:"收垃圾"},{label:"工号",content:"0001"},{label:"性别",content:"男"}]));function H(e){const{key:n,content:o}=e;return"phone"!==n||E.value?o:o.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}function J(e){console.log("onFinish",e)}function K(e){console.log("onChange",e);const n=new FileReader;n.onload=function(e){var n;(null==(n=e.target)?void 0:n.result)&&(U.userInfo.avatar=e.target.result)},n.readAsDataURL(e.file.file)}return(n,o)=>(l(),a(t(h),{trigger:"click","show-arrow":!1,scrollable:""},r({default:s((()=>[c(i("div",R,[i("div",j,[i("div",q,[u(t(k),{src:e.userInfo.avatar,bordered:"",round:"",size:100,onClickCapture:o[0]||(o[0]=e=>B.value=!0)},{default:s((()=>[p(" {{ userInfo.name }} ")])),_:1},8,["src"]),u(t(y),{abstract:"",onFinish:J,onChange:K},{default:s((()=>[u(t(C),{abstract:""},{default:s((({handleClick:e})=>[u(t(z),{circle:"",secondary:"",class:"edit-avatar",onClick:e},{icon:s((()=>[u(t(I),{size:"16",color:"#666666",component:t(x)},null,8,["component"])])),_:2},1032,["onClick"])])),_:1})])),_:1}),i("div",A,[i("h4",null,f(e.userInfo.name||e.userInfo.username),1),i("p",null,f(e.userInfo.profile||"简介叭叭叭叭叭叭叭叭叭叭叭叭叭叭叭"),1)]),u(t(z),{strong:"",secondary:""},{default:s((()=>[u(t(I),{size:"13",color:"#666666",component:t($),style:{"margin-right":"6px"}},null,8,["component"]),d(" 发消息 ")])),_:1})])]),i("div",D,[(l(!0),v(m,null,b(t(G),((e,n)=>(l(),v("div",{class:"info-item",key:n},[i("span",L,f(e.label),1),i("div",O,[i("span",null,f(H(e)),1),"phone"===e.key?(l(),a(t(I),{key:0,size:"16",color:"#666666",component:E.value?t(w):t(F),style:{"margin-left":"10px"},onClick:o[1]||(o[1]=e=>E.value=!E.value)},null,8,["component"])):p("v-if",!0)])])))),128))])],512),[[_,!B.value]]),c(i("div",{class:"large-avatar",onClick:o[2]||(o[2]=e=>B.value=!1)},[u(t(z),{circle:"",size:"small",secondary:""},{icon:s((()=>[u(t(I),{size:24,component:t(P),color:"#fff"},null,8,["component"])])),_:1}),u(t(k),{size:310,round:""})],512),[[_,B.value]])])),_:2},[b(n.$slots,((e,o)=>({name:o,fn:s((()=>[g(n.$slots,o)]))})))]),1024))}});export{U as default};
@@ -1,41 +1,33 @@
1
1
  import { AnyObject } from '../../../../shared/types';
2
- declare const _default: import("vue").DefineComponent<{
3
- collapsed: {
4
- type: BooleanConstructor;
5
- default: boolean;
6
- };
7
- }, {
8
- props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
9
- collapsed: {
10
- type: BooleanConstructor;
11
- default: boolean;
12
- };
13
- }>> & {}>>;
14
- state: AnyObject;
15
- setCurrentSessionItem: Function;
16
- setSessionList: Function;
17
- setIsChangeSession: Function;
18
- setIsUpdateSession: Function;
2
+ import { formatTime } from '../utils';
3
+ declare const _default: import("vue").DefineComponent<{}, {
4
+ flexWidth: import("vue").Ref<number>;
19
5
  listBoxRef: import("vue").Ref<HTMLElement | undefined>;
20
6
  keyword: import("vue").Ref<string>;
21
7
  sessionList: import("vue").Ref<AnyObject[]>;
22
8
  loading: import("vue").Ref<boolean>;
23
- pageNum: number;
24
- init: () => void;
9
+ filterList: import("vue").Ref<{
10
+ label: string;
11
+ key: string;
12
+ number: number;
13
+ }[]>;
14
+ currentFilterKey: import("vue").Ref<string>;
15
+ state: AnyObject;
16
+ setCurrentSessionItem: (item: AnyObject) => void;
17
+ currentWidth: import("vue").ComputedRef<number>;
25
18
  handleSearch: () => void;
26
- getMySessionList: () => Promise<void>;
27
19
  entrySession: (item: AnyObject) => void;
28
20
  sessionChange: (sessionItem: AnyObject) => void;
21
+ changeWidth: ({ distance }: AnyObject) => void;
22
+ handleFilter: (key: string) => void;
29
23
  NSpin: any;
30
24
  NBadge: any;
31
25
  NAvatar: any;
32
- NInput: any;
33
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
34
- collapsed: {
35
- type: BooleanConstructor;
36
- default: boolean;
26
+ NTag: any;
27
+ vFlexibleResize: {
28
+ mounted(el: any, { value }: any): void;
29
+ beforeUnmount(el: any): void;
37
30
  };
38
- }>>, {
39
- collapsed: boolean;
40
- }>;
31
+ formatTime: typeof formatTime;
32
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
41
33
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as s,ref as n,watch as t,openBlock as i,createElementBlock as a,createBlock as l,unref as o,withKeys as u,createElementVNode as r,Fragment as d,renderList as v,normalizeClass as c,createVNode as m,withCtx as _,createTextVNode as p,toDisplayString as f}from"vue";import{NSpin as g,NInput as S,NAvatar as y,NBadge as h}from"naive-ui";import{format as C}from"date-fns";import{getMySessionListApi as k}from"../api/index.js";const L={class:"sider-list"},I=["onClick"],x={class:"name"},H={class:"msg-tip"},M={class:"msg-tip__content"},T=["innerHTML"];var w=e({__name:"SiderList",props:{collapsed:{type:Boolean,default:!1}},setup(e){const w=e,U=s("state"),b=s("setCurrentSessionItem"),z=s("setSessionList"),B=s("setIsChangeSession"),K=s("setIsUpdateSession"),N=n(),j=n(""),D=n([]),E=n(!1);function J(){D.value=U.sessionList.filter((e=>e.name.includes(j.value)||!j.value));const e=D.value.find((e=>e.id===U.currentSessionId));e&&O(e)}function O(e){D.value.forEach((e=>e.__active=!1)),e.__active=!0,e.msgCount=0,b(e)}function R(e){const s=U.sessionList.map((s=>e.id===s.id?{...s,...e}:s));z(s),D.value=U.sessionList.filter((e=>D.value.find((s=>s.id===e.id))))}return async function(){var e;try{E.value=!0;const s=await k({username:U.userInfo.username,onlineType:1,readStatus:"Y",pageNum:1,pageSize:10,keyword:j.value.trim()});if(!(null==(e=null==s?void 0:s.list)?void 0:e.length))return;const n=null==s?void 0:s.list.map((e=>({...e,__name:e.name.slice(-2),__time:C(new Date(e.lastTime),"MM/dd HH:mm"),__lastContent:JSON.parse(e.lastContent||"{}").content||""})));D.value=n,z(n)}catch(e){console.log(e)}finally{E.value=!1}}(),t([()=>U.isChangeSession,()=>U.isUpdateSession],(([e,s])=>{e&&(R(U.currentSessionItem),B(!1)),s&&(R(U.updateSessionItem),K(!1))}),{immediate:!0}),t((()=>U.sessionList.length),(()=>{J()})),(e,s)=>(i(),a("section",L,[E.value?(i(),l(o(g),{key:0,stroke:"#5585f5"})):(i(),l(o(S),{key:1,placeholder:"输入用户名模糊搜索",value:j.value,"onUpdate:value":s[0]||(s[0]=e=>j.value=e),onKeyup:u(J,["enter"])},null,8,["value","onKeyup"])),r("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:N},[(i(!0),a(d,null,v(D.value,((e,s)=>(i(),a("div",{key:s,onClick:()=>O(e),class:c(["sider-list__box__item",{active:e.__active}])},[m(o(y),{round:"",size:"large"},{default:_((()=>[p(f(e.__name),1)])),_:2},1024),r("div",{class:c(["avatar-right",{hidden:w.collapsed}])},[r("div",x,[r("h4",null,f(e.name),1),r("span",null,f(e.__time),1)]),r("div",H,[r("div",M,[r("div",{innerHTML:e.__lastContent},null,8,T)]),m(o(h),{value:e.msgCount},null,8,["value"])])],2)],10,I)))),128))],512)]))}});export{w as default};
1
+ import{defineComponent as e,ref as s,computed as i,watch as n,withDirectives as a,openBlock as t,createElementBlock as l,normalizeStyle as r,unref as u,createBlock as o,createCommentVNode as d,createElementVNode as v,Fragment as m,renderList as c,withCtx as f,createTextVNode as p,toDisplayString as y,normalizeClass as k,createVNode as h}from"vue";import{NSpin as _,NTag as g,NAvatar as b,NBadge as S}from"naive-ui";import{useState as x}from"../hooks/useState.js";import{vFlexibleResize as L}from"../../../../shared/directive/flexibleResize.js";import{formatTime as M,listSort as T}from"../utils/index.js";const C={class:"sider-list__filter box-shadow"},w=["onClick"],I={class:"avatar-right"},K={class:"name"},N={class:"msg-tip"},j={class:"msg-tip__content"},R=["innerHTML"];var z=e({__name:"SiderList",setup(e){const z=s(300),D=s(),H=s(""),U=s([]),B=s(!1),V=s([{label:"全部",key:"all",number:0},{label:"未读",key:"unread",number:0}]),q=s("all"),{state:A,setCurrentSessionItem:E}=x(),F=i((()=>Math.min(Math.max(z.value,240),360)));function G(e){e.unreadNum=0,E(e)}function J(e){const s=A.sessionList.map((s=>(e.receiver!==A.currentSessionItem.receiver&&s.unreadNum++,e.receiver===s.receiver?{...s,...e}:s)));A.sessionList=s,U.value=T(s)}function O({distance:e}){z.value=z.value+e}return n([()=>A.isChangeSession,()=>A.isUpdateSession],(([e,s])=>{e&&(J(A.currentSessionItem),A.isChangeSession=!1),s&&(J(A.updateSessionItem),A.isUpdateSession=!1)}),{immediate:!0}),n((()=>A.sessionList.length),(()=>{!function(){U.value=A.sessionList.sort(((e,s)=>new Date(s.updatedTime).getTime()-new Date(e.updatedTime).getTime())).filter((e=>e.name.includes(H.value)||!H.value)),V.value[0].number=U.value.length;const e=U.value.find((e=>e.sessionKey===A.sessionKey));e&&G(e),T(U.value)}()})),(e,s)=>a((t(),l("section",{class:"sider-list",style:r({width:u(F)+"px"})},[B.value?(t(),o(u(_),{key:0,stroke:"#5585f5"})):d("v-if",!0),d(' <n-input v-else placeholder="输入用户名模糊搜索" v-model:value="keyword" @keyup.enter="handleSearch"></n-input> '),v("div",C,[(t(!0),l(m,null,c(V.value,(e=>(t(),o(u(g),{type:q.value===e.key?"info":"default",round:"",bordered:!1,key:e.key,onClick:()=>function(e){q.value=e,U.value="unread"===e?A.sessionList.filter((e=>+e.unreadNum>0)):A.sessionList;U.value=T(U.value)}(e.key)},{default:f((()=>[p(y(e.label)+"("+y(e.number)+") ",1)])),_:2},1032,["type","onClick"])))),128))]),v("div",{class:"sider-list__box",ref_key:"listBoxRef",ref:D},[(t(!0),l(m,null,c(U.value,((e,s)=>(t(),l("div",{key:s,onClick:()=>G(e),class:k(["sider-list__box__item",{active:e.sessionKey===u(A).sessionKey}])},[h(u(b),{round:"",size:"large",src:e.avatar},null,8,["src"]),v("div",I,[v("div",K,[v("h4",null,y(e.name),1),v("span",null,y(u(M)(e.lastMessageSendTime).siderMsgTime),1)]),v("div",N,[v("div",j,[v("div",{innerHTML:e.lastMessage},null,8,R)]),h(u(S),{value:e.unreadNum},null,8,["value"])])])],10,w)))),128))],512)],4)),[[u(L),{mode:"VR",onMove:O}]])}});export{z as default};