cnhis-design-vue 3.2.8-beta.2 → 3.2.8-release.1

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 (48) hide show
  1. package/README.md +87 -87
  2. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  3. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  4. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  5. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  6. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  7. package/es/components/field-set/src/FieldColor.vue.d.ts +1 -1
  8. package/es/components/field-set/src/FieldFilter.vue.d.ts +1 -1
  9. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  10. package/es/components/field-set/src/components/table-row.vue.d.ts +1 -1
  11. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  12. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  13. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  14. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  15. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  16. package/es/env.d.ts +25 -25
  17. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  18. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  19. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  20. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  21. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  22. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  23. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  24. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  25. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  26. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  27. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  28. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  29. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  30. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  31. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  32. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  33. package/es/shared/assets/img/failure.png.js +1 -1
  34. package/es/shared/assets/img/no-permission.png.js +1 -1
  35. package/es/shared/assets/img/nodata.png.js +1 -1
  36. package/es/shared/assets/img/notfound.png.js +1 -1
  37. package/es/shared/assets/img/qr.png.js +1 -1
  38. package/es/shared/assets/img/success.png.js +1 -1
  39. package/es/shared/assets/img/table_style_2.png.js +1 -1
  40. package/es/shared/assets/img/video.png.js +1 -1
  41. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  42. package/es/shared/assets/img/xb_big.png.js +1 -1
  43. package/es/shared/assets/img/xb_small.png.js +1 -1
  44. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  45. package/es/shared/package.json.js +1 -1
  46. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  47. package/es/shared/utils/tapable/index.d.ts +139 -0
  48. package/package.json +2 -2
package/README.md CHANGED
@@ -1,87 +1,87 @@
1
- # 安装
2
-
3
- ```shell
4
- npm i cnhis-design-vue@[版本号]
5
- # or
6
- yarn add cnhis-design-vue@[版本号] #推荐
7
- ```
8
-
9
- ## 1.全局引入
10
-
11
- ```typescript
12
- // main.ts
13
- import { createApp } from 'vue';
14
- import App from './App.vue';
15
- import 'cnhis-design-vue/es/packages/index.css';
16
- import cui from 'cnhis-design-vue';
17
-
18
- const app = createApp(App);
19
- app.use(cui).mount('#app');
20
- ```
21
-
22
- ## 2. 按需引入
23
-
24
- 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
-
26
- ### 2.1 样式处理方式1 (按需引入样式)
27
-
28
- ```shell
29
- # 安装自动导入样式的插件
30
- npm i -d vite-plugin-style-import
31
- ```
32
-
33
- ```typescript
34
- // vite.config.ts
35
- import { defineConfig } from 'vite';
36
- import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
-
38
- export default defineConfig({
39
- plugins: [
40
- // ...otherPlugins
41
- createStyleImportPlugin({
42
- libs: [
43
- {
44
- libraryName: 'cnhis-design-vue',
45
- esModule: true,
46
- ensureStyleFile: true,
47
- resolveStyle: name => {
48
- return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
- }
50
- }
51
- ]
52
- })
53
- ]
54
- });
55
- ```
56
-
57
- ### 2.2 样式处理方式2 (全局引入样式)
58
-
59
- ```typescript
60
- // main.ts
61
- import 'cnhis-design-vue/es/components/index.css';
62
- ```
63
-
64
- ## 3.FAQ
65
-
66
- ### 3.1 项目打包后样式丢失
67
-
68
- 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
-
70
- ```typescript
71
- // vite.config.ts
72
- import { defineConfig } from 'vite';
73
-
74
- export default defineConfig({
75
- build: {
76
- rollupOptions: {
77
- // ..otherOptions
78
- output: {
79
- dir: './dist',
80
- manualChunks: {
81
- 'cnhis-vendor': ['cnhis-design-vue']
82
- }
83
- }
84
- }
85
- }
86
- });
87
- ```
1
+ # 安装
2
+
3
+ ```shell
4
+ npm i cnhis-design-vue@[版本号]
5
+ # or
6
+ yarn add cnhis-design-vue@[版本号] #推荐
7
+ ```
8
+
9
+ ## 1.全局引入
10
+
11
+ ```typescript
12
+ // main.ts
13
+ import { createApp } from 'vue';
14
+ import App from './App.vue';
15
+ import 'cnhis-design-vue/es/packages/index.css';
16
+ import cui from 'cnhis-design-vue';
17
+
18
+ const app = createApp(App);
19
+ app.use(cui).mount('#app');
20
+ ```
21
+
22
+ ## 2. 按需引入
23
+
24
+ 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
+
26
+ ### 2.1 样式处理方式1 (按需引入样式)
27
+
28
+ ```shell
29
+ # 安装自动导入样式的插件
30
+ npm i -d vite-plugin-style-import
31
+ ```
32
+
33
+ ```typescript
34
+ // vite.config.ts
35
+ import { defineConfig } from 'vite';
36
+ import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
+
38
+ export default defineConfig({
39
+ plugins: [
40
+ // ...otherPlugins
41
+ createStyleImportPlugin({
42
+ libs: [
43
+ {
44
+ libraryName: 'cnhis-design-vue',
45
+ esModule: true,
46
+ ensureStyleFile: true,
47
+ resolveStyle: name => {
48
+ return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
+ }
50
+ }
51
+ ]
52
+ })
53
+ ]
54
+ });
55
+ ```
56
+
57
+ ### 2.2 样式处理方式2 (全局引入样式)
58
+
59
+ ```typescript
60
+ // main.ts
61
+ import 'cnhis-design-vue/es/components/index.css';
62
+ ```
63
+
64
+ ## 3.FAQ
65
+
66
+ ### 3.1 项目打包后样式丢失
67
+
68
+ 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
+
70
+ ```typescript
71
+ // vite.config.ts
72
+ import { defineConfig } from 'vite';
73
+
74
+ export default defineConfig({
75
+ build: {
76
+ rollupOptions: {
77
+ // ..otherOptions
78
+ output: {
79
+ dir: './dist',
80
+ manualChunks: {
81
+ 'cnhis-vendor': ['cnhis-design-vue']
82
+ }
83
+ }
84
+ }
85
+ }
86
+ });
87
+ ```
@@ -0,0 +1 @@
1
+ declare module 'bpmn-js/lib/Viewer';
@@ -0,0 +1 @@
1
+ declare module 'bpmn-js/lib/features/modeling';
@@ -0,0 +1 @@
1
+ declare module 'diagram-js/lib/navigation/movecanvas';
@@ -175,9 +175,6 @@ declare const _default: import("vue").DefineComponent<{
175
175
  modelValue: unknown[];
176
176
  componentData: Record<string, any>;
177
177
  } & {
178
- /**
179
- * 改变弹窗大小
180
- */
181
178
  itemKey?: string | Function | undefined;
182
179
  }>, {
183
180
  move: Function;
@@ -477,9 +477,9 @@ declare const _default: import("vue").DefineComponent<{
477
477
  }>;
478
478
  developMode: boolean;
479
479
  draggable: boolean;
480
+ isHighlightRow: boolean;
480
481
  idx: number;
481
482
  isHighlight: boolean;
482
- isHighlightRow: boolean;
483
483
  isFieldSet: boolean;
484
484
  fieldDescribeMode: "column" | "tooltip";
485
485
  }>;
@@ -499,9 +499,9 @@ declare const _default: import("vue").DefineComponent<{
499
499
  }>;
500
500
  developMode: boolean;
501
501
  draggable: boolean;
502
+ isHighlightRow: boolean;
502
503
  idx: number;
503
504
  isHighlight: boolean;
504
- isHighlightRow: boolean;
505
505
  isFieldSet: boolean;
506
506
  fieldDescribeMode: "column" | "tooltip";
507
507
  }>;
@@ -630,9 +630,9 @@ declare const _default: import("vue").DefineComponent<{
630
630
  }>;
631
631
  developMode: boolean;
632
632
  draggable: boolean;
633
+ isHighlightRow: boolean;
633
634
  idx: number;
634
635
  isHighlight: boolean;
635
- isHighlightRow: boolean;
636
636
  isFieldSet: boolean;
637
637
  fieldDescribeMode: "column" | "tooltip";
638
638
  }>;
@@ -328,9 +328,9 @@ declare const _default: import("vue").DefineComponent<{
328
328
  }>;
329
329
  developMode: boolean;
330
330
  draggable: boolean;
331
+ isHighlightRow: boolean;
331
332
  idx: number;
332
333
  isHighlight: boolean;
333
- isHighlightRow: boolean;
334
334
  isFieldSet: boolean;
335
335
  fieldDescribeMode: "column" | "tooltip";
336
336
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as a,inject as l,watch as r,createVNode as o,nextTick as n}from"vue";import{connect as u,mapProps as i}from"@formily/vue";import{isEqual as s,toString as c,isArray as p,isString as d}from"lodash-es";import{NCascader as v}from"naive-ui";import"../../../index.js";import{useCommonInjection as m}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as f,InjectionAsyncQueue as h,InjectionFormUUID as y}from"../../constants/index.js";import"@formily/path";import"@vueuse/core";import"../../../../../shared/utils/index.js";import"@formily/core";import"@vicons/ionicons5";import"@vue/shared";import"date-fns";import{assignUpdateValue as k,createVisitedSetter as j,traverseDependKey as g}from"../../utils/schema.js";import"../../hooks/useComplexOptions.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"@vueuse/shared";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import"./index.js";import{useFormField as b}from"../../hooks/useFormField.js";import"@formily/reactive";import"../../hooks/useFormValidator.js";const C=u(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},checkStrategy:{type:String,default:"child"},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:u,emit:i}){const k=t(),{field:C,title:S,fieldKey:F}=b(),w=t(1),A=t(!0);const H=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:e.labelField)?l:"text"})),x=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:e.valueField)?l:"value"}));l(f).setContext(F.value,(()=>({labelField:H.value,valueField:x.value})));const q=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");if(!Array.isArray(t)||!t.length)return null;const a=t.map((e=>e[x.value])).slice(-1).join(""),l=t.map((e=>e[H.value])).join(" / ");return a||l}catch(e){return null}}));function K(e,t,a){i("update:value",p(a)?a.map((function(e){return{...e,label:e[H.value],children:void 0,parent:void 0,mergeItemValue:void 0}})):null)}const V=l(h);async function B(t){e.filterable?await async function(){if(!e.urlConfig||k.value&&e.requestCache)return;const t=await V.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:S.value,cache:e.requestCache,payload:{field:C.value,labelKey:H.value,valueKey:x.value}});function a(e,t,r){const o=[...r,...l(e)],n={[H.value]:e[H.value],[x.value]:e[x.value],depth:t+1,isLeaf:!0,keyword:e.keyword,mergeItemValue:o};return p(e.children)&&(n.children=e.children.map((e=>a(e,t+1,o))),n.isLeaf=!e.children.length),w.value=Math.max(w.value,t+1),n}function l(e){let t=[];if(d(e[H.value])&&(t=[...t,e[H.value]]),d(e.keyword)&&e.keyword.length>0){const a=e.keyword.split(",");t=[...t,...a]}return t}k.value=t.map((e=>a(e,0,[])))}():await async function(t){if(r(e,t))return;const a=await V.addAsync(o(s(t),i(e),S.value,t));if(!a.length&&t)return t.isLeaf=!0,K(0,0,n(t)),void(N.value=!1);const l=a.map((e=>u(e,s(t))));function r(e,t){return!i(e)||!t&&k.value&&e.requestCache||s(t)>=s(e)-1}function o(t,a,l,r){const o={lvlnr:t+1+""};return r&&a.dependKey&&g(a.dependKey,((e,t)=>{o[t]=r[e]})),{params:o,...a,key:l,cache:e.requestCache}}function n(e){let t=e;const a=[e];for(;t.parent;)a.unshift(t.parent),t=t.parent;return a}function u(a,l){return{[H.value]:a[H.value],[x.value]:a[x.value],depth:l+1,parent:t,isLeaf:l+2>=s(e)}}function i(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=l:k.value=l}(t),await I()}const L=`form-render__cascade--menu-${l(y)}`;async function I(){await n();const e=document.querySelector(`.${L} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}function E(t,a){if(!t||!a)return!1;const{mergeItemValue:l}=a;return!(e.checkStrategy.includes("child")&&a.depth<w.value)&&(l.length>0&&l.some((e=>e.includes(t.trim()))))}const{injectValueValidate:O,injectValueWatchFromEmpty:W,injectValueBindKey:z}=m();W((()=>e.value),B),O((()=>e.value)),r((()=>e.urlConfig),(async(t,a)=>{s(t,a)||(k.value=null,A.value?e.lazyRequest||(B(),A.value=!A.value):await B())}),{immediate:!0});const N=t(!1);function P(e){N.value=!!e,e&&B()}const R=a((()=>U(k.value||e.options||[])));function U(e){return e.map((e=>{const t={...e};return t[x.value]=c(t[x.value]),p(e.children)&&(t.children=U(e.children)),t}))}const $=a((()=>!e.filterable)),_=z(q);return()=>o(v,{key:_.value,remote:$.value,filterable:e.filterable,"menu-props":{class:L,onClick:I},"check-strategy":e.checkStrategy,show:!!N.value,"onUpdate:show":P,value:q.value,filter:E,"onUpdate:value":K,labelField:H.value,valueField:x.value,options:R.value,onLoad:B,onFocus:j(C)},u)}}),i({dataSource:"options"},k));export{C as SEARCH_CASCADER};
1
+ import{defineComponent as e,ref as t,computed as a,inject as l,watch as o,createVNode as r,nextTick as n}from"vue";import{connect as u,mapProps as i}from"@formily/vue";import{last as s,isEqual as c,isArray as p,isString as d}from"lodash-es";import{NCascader as v}from"naive-ui";import"../../../index.js";import{useCommonInjection as m}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as f,InjectionAsyncQueue as y,InjectionFormUUID as h}from"../../constants/index.js";import"@formily/path";import"@vueuse/core";import"../../../../../shared/utils/index.js";import"@formily/core";import"@vicons/ionicons5";import"@vue/shared";import"date-fns";import{assignUpdateValue as k,createVisitedSetter as j,traverseDependKey as g}from"../../utils/schema.js";import"../../hooks/useComplexOptions.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"@vueuse/shared";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import"./index.js";import{useFormField as b}from"../../hooks/useFormField.js";import"@formily/reactive";import"../../hooks/useFormValidator.js";const C=u(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},checkStrategy:{type:String,default:"child"},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:u,emit:i}){const k=t(),{field:C,title:S,fieldKey:F}=b(),w=t(1),A=t(!0);const H=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:e.labelField)?l:"text"})),x=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:e.valueField)?l:"value"}));l(f).setContext(F.value,(()=>({labelField:H.value,valueField:x.value})));const q=a((()=>{var t;try{const a=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");if(!Array.isArray(a)||!a.length)return null;const l=null==(t=s(a))?void 0:t[x.value];return null!=l?l:a.map((e=>e[H.value])).join(" / ")}catch(e){return null}}));function K(e,t,a){i("update:value",p(a)?a.map((function(e){return{...e,label:e[H.value],children:void 0,parent:void 0,mergeItemValue:void 0}})):null)}const V=l(y);async function B(t){e.filterable?await async function(){if(!e.urlConfig||k.value&&e.requestCache)return;const t=await V.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:F.value,cache:e.requestCache,payload:{field:C.value,labelKey:H.value,valueKey:x.value}});function a(e,t,o){const r=[...o,...l(e)],n={[H.value]:e[H.value],[x.value]:e[x.value],depth:t+1,isLeaf:!0,keyword:e.keyword,mergeItemValue:r};return p(e.children)&&(n.children=e.children.map((e=>a(e,t+1,r))),n.isLeaf=!e.children.length),w.value=Math.max(w.value,t+1),n}function l(e){let t=[];if(d(e[H.value])&&(t=[...t,e[H.value]]),d(e.keyword)&&e.keyword.length>0){const a=e.keyword.split(",");t=[...t,...a]}return t}k.value=t.map((e=>a(e,0,[])))}():await async function(t){if(o(e,t))return;const a=await V.addAsync(r(s(t),i(e),S.value,t));if(!a.length&&t)return t.isLeaf=!0,K(0,0,n(t)),void(N.value=!1);const l=a.map((e=>u(e,s(t))));function o(e,t){return!i(e)||!t&&k.value&&e.requestCache||s(t)>=s(e)-1}function r(t,a,l,o){const r={lvlnr:t+1+""};return o&&a.dependKey&&g(a.dependKey,((e,t)=>{r[t]=o[e]})),{params:r,...a,key:l,cache:e.requestCache}}function n(e){let t=e;const a=[e];for(;t.parent;)a.unshift(t.parent),t=t.parent;return a}function u(a,l){return{[H.value]:a[H.value],[x.value]:a[x.value],depth:l+1,parent:t,isLeaf:l+2>=s(e)}}function i(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=l:k.value=l}(t),await I()}const L=`form-render__cascade--menu-${l(h)}`;async function I(){await n();const e=document.querySelector(`.${L} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}function E(t,a){if(!t||!a)return!1;const{mergeItemValue:l}=a;return!(e.checkStrategy.includes("child")&&a.depth<w.value)&&(l.length>0&&l.some((e=>e.includes(t.trim()))))}const{injectValueValidate:O,injectValueWatchFromEmpty:W,injectValueBindKey:z}=m();W((()=>e.value),B),O((()=>e.value)),o((()=>e.urlConfig),(async(t,a)=>{c(t,a)||(k.value=null,A.value?e.lazyRequest||(B(),A.value=!A.value):await B())}),{immediate:!0});const N=t(!1);function P(e){N.value=!!e,e&&B()}const R=a((()=>k.value||e.options||[])),U=a((()=>!e.filterable)),$=z(q);return()=>r(v,{key:$.value,remote:U.value,filterable:e.filterable,"menu-props":{class:L,onClick:I},"check-strategy":e.checkStrategy,show:!!N.value,"onUpdate:show":P,value:q.value,filter:E,"onUpdate:value":K,labelField:H.value,valueField:x.value,options:R.value,onLoad:B,onFocus:j(C)},u)}}),i({dataSource:"options"},k));export{C as SEARCH_CASCADER};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as n,watch as s,openBlock as i,createElementBlock as o,normalizeClass as a,unref as r,normalizeStyle as c,createVNode as l,withCtx as m,Fragment as u,renderList as p,toDisplayString as d,createCommentVNode as f,createBlock as v,createElementVNode as g,withModifiers as y,nextTick as T}from"vue";import{NImageGroup as h,NAvatar as M,NImage as _,NIcon as k,NSpace as x,NButtonGroup as I,NButton as L}from"naive-ui";import{format as S}from"date-fns";import{getHistoryRecordApi as w,readMessageApi as j}from"../api/index.js";import{useState as E}from"../hooks/useState.js";import{useSession as C}from"../hooks/useSession.js";import{MESSAGE_TYPE as b}from"../constants/index.js";import"trtc-sdk-v5";import{isAudioOrVideoMessage as A,simplifyMessage as H,getAVTime as z}from"../utils/index.js";import{first as D,last as R}from"lodash-es";import N from"./PersonProfile.vue.js";import O from"./MessageTemplate.vue.js";import{emojis as P}from"../utils/emoji.js";import q from"./ContextMenu.js";import{useScrollLoading as B}from"../hooks/useScrollLoading.js";import{CallOutline as U,VideocamOutline as F,DocumentSharp as G,ChatbubbleEllipsesOutline as J,EllipsisHorizontal as K}from"@vicons/ionicons5";const X={key:0,class:"time"},Y={key:2,class:"message-box"},$={key:0,class:"content-box"},Q={class:"name-box"},V=["data-time"],W=["onContextmenu"],Z={key:0,class:"reference-content"},ee=["innerHTML"],te=["innerHTML"],ne=["innerHTML"],se=["src"],ie={style:{"margin-left":"8px"}},oe={class:"size"};var ae=e({__name:"ChatMain",setup(e){const ae=t(),{state:re,setMsgList:ce}=E(),{setCurrentSessionItem:le,isGroupChat:me}=C(re),ue=t(),pe=t(!1),de=t({left:0,top:0}),fe=t(),ve={page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")},ge=n((()=>({"--c-tip-top":me.value?"1px":"-20px","--c-tip-gap":me.value?"10px":"0px"})));async function ye(){try{if(!ve.hasMore)return;ve.page++;const e=await w({sessionKey:re.currentSessionItem.sessionKey,page:ve.page,lastSendTime:ve.lastSendTime});if(!Array.isArray(e)||0===e.length)return ve.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=D(e).id;ve.lastSendTime=R(e).sendTime,ce(ve.page>1?[...e,...re.msgList]:e),1===ve.page&&re.currentSessionItem.unreadNum&&(await j({chatType:re.currentSessionItem.chatType,messageIdSet:[t],receiver:re.userInfo.id,sender:re.currentSessionItem.receiver}),le({unreadNum:0}))}catch(e){console.log(e)}}async function Te(e,t){fe.value=t,async function(e){var t,n,s,i,o,a;pe.value=!0,await T();const{clientX:r,clientY:c}=e,{width:l=0,height:m=0,left:u=0,top:p=0}=(null==(t=ae.value)?void 0:t.getBoundingClientRect())||{},d=null!=(i=null==(s=null==(n=ue.value)?void 0:n.$el)?void 0:s.getBoundingClientRect().height)?i:220,f=null!=(a=null==(o=ae.value)?void 0:o.scrollTop)?a:0,v=5,g={};r<=u+l/2?g.left=r-u+v+"px":g.right=u+l-r-v+"px";c-p<d/2?g.top=f+v+"px":p+m-c<=d/2?g.bottom=Math.abs(f)+v+"px":g.top=f+c-p-d/2+"px";de.value=g}(e)}function he(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==b.TEMPLATE||!!n}function Me(e,t){var n,s;const{chatMessageType:i,messageTemplate:o}=e.content;if(i===b.TEMPLATE)return"system"===t?2==(null==(n=null==o?void 0:o.setting)?void 0:n.style.id):2!=(null==(s=null==o?void 0:o.setting)?void 0:s.style.id)}function _e(e){var t,n;const{chatMessageType:s,messageTemplate:i}=e;return s===b.TEMPLATE&&3==(null==(n=null==(t=null==i?void 0:i.setting)?void 0:t.style)?void 0:n.id)}function ke(e,t){var n;const s=new Date(e.sendTime).getTime(),i=null==(n=re.msgList[t+1])?void 0:n.sendTime;if(i){return s-new Date(i).getTime()>3e5}return!0}function xe(e){re.currentReferenceMsg=e,Object.assign(re.currentReferenceMsg,{chatType:re.currentSessionItem.chatType,receiver:re.currentSessionItem.receiver,receiverAvatar:re.currentSessionItem.avatar,receiverName:re.currentSessionItem.name})}function Ie(e,t){"reply"===e&&xe(t)}return B(ae,(()=>{ye()}),"top",(()=>{pe.value=!1})),s((()=>re.id),(e=>{e&&(re.currentReferenceMsg=null,Object.assign(ve,{page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")}),ye())}),{immediate:!0}),s((()=>re.isAppendMsg),(e=>{e&&(ce([...re.msgList,re.currentMsg]),re.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=ae.value)?void 0:e.scrollHeight)?t:0;null==(n=ae.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(i(),o("div",{class:a(["chat-main",{"home-bg":!r(re).id}]),ref_key:"chatMainRef",ref:ae,style:c(r(ge))},[l(r(h),{"show-toolbar-tooltip":""},{default:m((()=>[(i(!0),o(u,null,p(r(re).msgList,((e,t)=>(i(),o(u,{key:e.id},[he(e)?(i(),o("div",{key:0,class:a(["message-item",{"message-item--mine":e.sender==r(re).userInfo.id}])},[ke(e,t)?(i(),o("p",X,d(e.__sendTime),1)):f("v-if",!0),Me(e,"system")?(i(),v(O,{key:1,data:e},null,8,["data"])):(i(),o("div",Y,[l(N,{"user-id":e.sender,placement:e.sender==r(re).userInfo.id?"left":"right"},{trigger:m((()=>[l(r(M),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id","placement"]),e.content?(i(),o("div",$,[g("div",Q,[g("span",{class:"name","data-time":e.__time},d(r(me)?e.senderName:""),9,V)]),g("div",{class:a(["content",{emoji:e.content.chatMessageType===r(b).EMOJI,template:e.content.chatMessageType===r(b).TEMPLATE,"template--3":_e(e.content),"audio-video":r(A)(e.content),file:e.content.chatMessageType===r(b).FILE}]),onContextmenu:y((t=>Te(t,e.id)),["prevent"])},[e.content.chatMessageType===r(b).TEXT?(i(),o(u,{key:0},[e.content.referenceContent?(i(),o("div",Z,[g("span",null,d(e.content.referenceContent.senderName)+":",1),g("pre",{innerHTML:r(H)(e.content.referenceContent.content)},null,8,ee)])):f("v-if",!0),g("pre",{innerHTML:e.__content},null,8,te)],64)):f("v-if",!0),e.content.chatMessageType===r(b).BLEND?(i(),o("pre",{key:1,innerHTML:e.__content},null,8,ne)):f("v-if",!0),e.content.chatMessageType===r(b).EMOJI?(i(),o("img",{key:2,src:r(P).findEmoji(e.__content)},null,8,se)):f("v-if",!0),Me(e,"template")?(i(),v(O,{key:3,data:e},null,8,["data"])):f("v-if",!0),e.content.chatMessageType===r(b).IMAGE?(i(),v(r(_),{key:4,width:"240",src:e.__content},null,8,["src"])):f("v-if",!0),r(A)(e.content)?(i(),o(u,{key:5},[l(r(k),{class:a({"is-audio":e.content.chatMessageType===r(b).AUDIO}),component:e.content.chatMessageType===r(b).AUDIO?r(U):r(F)},null,8,["class","component"]),g("span",ie,d(r(z)(e.__content)),1)],64)):f("v-if",!0),e.content.chatMessageType===r(b).FILE?(i(),v(r(x),{key:6,"wrap-item":!1},{default:m((()=>[l(r(k),{class:"icon-file",size:"40",component:r(G)},null,8,["component"]),l(r(x),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:m((()=>[g("span",null,d(e.__content),1),g("span",oe,d(e.__size),1)])),_:2},1024)])),_:2},1024)):f("v-if",!0),l(r(I),{class:"quick-menu"},{default:m((()=>[r(A)(e.content)?f("v-if",!0):(i(),o(u,{key:0},[f(' <n-button quaternary size="tiny">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t</n-button> '),l(r(L),{quaternary:"",size:"tiny",onClick:()=>xe(e)},{icon:m((()=>[l(r(k),{size:"17",component:r(J)},null,8,["component"])])),_:2},1032,["onClick"])],64)),l(r(L),{quaternary:"",size:"tiny",onClick:t=>Te(t,e.id)},{icon:m((()=>[l(r(k),{size:"14",component:r(K)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,W)])):f("v-if",!0)]))],2)):f("v-if",!0)],64)))),128))])),_:1}),l(r(q),{ref_key:"contextmenuRef",ref:ue,show:pe.value,"onUpdate:show":t[0]||(t[0]=e=>pe.value=e),position:de.value,"msg-id":fe.value,onSelect:Ie},null,8,["show","position","msg-id"])],6))}});export{ae as default};
1
+ import{defineComponent as e,ref as t,computed as n,watch as s,openBlock as i,createElementBlock as o,normalizeClass as a,unref as r,normalizeStyle as c,createVNode as l,withCtx as m,Fragment as u,renderList as p,toDisplayString as d,createCommentVNode as f,createBlock as v,createElementVNode as g,withModifiers as y,nextTick as T}from"vue";import{NImageGroup as h,NAvatar as M,NImage as _,NIcon as k,NSpace as x,NButtonGroup as I,NButton as L}from"naive-ui";import{format as S}from"date-fns";import{getHistoryRecordApi as w,readMessageApi as j}from"../api/index.js";import{useState as E}from"../hooks/useState.js";import{useSession as C}from"../hooks/useSession.js";import{MESSAGE_TYPE as b}from"../constants/index.js";import"trtc-sdk-v5";import{isAudioOrVideoMessage as A,simplifyMessage as H,getAVTime as z}from"../utils/index.js";import{first as D,last as R}from"lodash-es";import N from"./PersonProfile.vue.js";import O from"./MessageTemplate.vue.js";import{emojis as P}from"../utils/emoji.js";import q from"./ContextMenu.js";import{useScrollLoading as B}from"../hooks/useScrollLoading.js";import{CallOutline as U,VideocamOutline as F,DocumentSharp as G,ChatbubbleEllipsesOutline as J,EllipsisHorizontal as K}from"@vicons/ionicons5";const X={key:0,class:"time"},Y={key:2,class:"message-box"},$={key:0,class:"content-box"},Q={class:"name-box"},V=["data-time"],W=["onContextmenu"],Z={key:0,class:"reference-content"},ee=["innerHTML"],te=["innerHTML"],ne=["innerHTML"],se=["src"],ie={style:{"margin-left":"8px"}},oe={class:"size"};var ae=e({__name:"ChatMain",setup(e){const ae=t(),{state:re,setMsgList:ce}=E(),{setCurrentSessionItem:le,isGroupChat:me}=C(re),ue=t(),pe=t(!1),de=t({left:0,top:0}),fe=t(),ve={page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")},ge=n((()=>({"--c-tip-top":me.value?"1px":"-20px","--c-tip-gap":me.value?"10px":"0px"})));async function ye(){try{if(!ve.hasMore)return;ve.page++;const e=await w({sessionKey:re.currentSessionItem.sessionKey,page:ve.page,lastSendTime:ve.lastSendTime});if(!Array.isArray(e)||0===e.length)return ve.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=D(e).id;ve.lastSendTime=R(e).sendTime,ce(ve.page>1?[...e,...re.msgList]:e),1===ve.page&&re.currentSessionItem.unreadNum&&(await j({chatType:re.currentSessionItem.chatType,messageIdSet:[t],receiver:re.userInfo.id,sender:re.currentSessionItem.receiver}),le({unreadNum:0}))}catch(e){console.log(e)}}async function Te(e,t){fe.value=t,async function(e){var t,n,s,i,o,a;pe.value=!0,await T();const{clientX:r,clientY:c}=e,{width:l=0,height:m=0,left:u=0,top:p=0}=(null==(t=ae.value)?void 0:t.getBoundingClientRect())||{},d=null!=(i=null==(s=null==(n=ue.value)?void 0:n.$el)?void 0:s.getBoundingClientRect().height)?i:220,f=null!=(a=null==(o=ae.value)?void 0:o.scrollTop)?a:0,v=5,g={};r<=u+l/2?g.left=r-u+v+"px":g.right=u+l-r-v+"px";c-p<d/2?g.top=f+v+"px":p+m-c<=d/2?g.bottom=Math.abs(f)+v+"px":g.top=f+c-p-d/2+"px";de.value=g}(e)}function he(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==b.TEMPLATE||!!n}function Me(e,t){var n,s;const{chatMessageType:i,messageTemplate:o}=e.content;if(i===b.TEMPLATE)return"system"===t?2==(null==(n=null==o?void 0:o.setting)?void 0:n.style.id):2!=(null==(s=null==o?void 0:o.setting)?void 0:s.style.id)}function _e(e){var t,n;const{chatMessageType:s,messageTemplate:i}=e;return s===b.TEMPLATE&&3==(null==(n=null==(t=null==i?void 0:i.setting)?void 0:t.style)?void 0:n.id)}function ke(e,t){var n;const s=new Date(e.sendTime).getTime(),i=null==(n=re.msgList[t+1])?void 0:n.sendTime;if(i){return s-new Date(i).getTime()>3e5}return!0}function xe(e){re.currentReferenceMsg=e,Object.assign(re.currentReferenceMsg,{chatType:re.currentSessionItem.chatType,receiver:re.currentSessionItem.receiver,receiverAvatar:re.currentSessionItem.avatar,receiverName:re.currentSessionItem.name})}function Ie(e,t){"reply"===e&&xe(t)}return B(ae,(()=>{ye()}),"top",(()=>{pe.value=!1})),s((()=>re.id),(e=>{e&&(re.currentReferenceMsg=null,Object.assign(ve,{page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")}),ye())}),{immediate:!0}),s((()=>re.isAppendMsg),(e=>{e&&(ce([...re.msgList,re.currentMsg]),re.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=ae.value)?void 0:e.scrollHeight)?t:0;null==(n=ae.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(i(),o("div",{class:a(["chat-main",{"home-bg":!r(re).id}]),ref_key:"chatMainRef",ref:ae,style:c(r(ge))},[l(r(h),{"show-toolbar-tooltip":""},{default:m((()=>[(i(!0),o(u,null,p(r(re).msgList,((e,t)=>(i(),o(u,{key:e.id},[he(e)?(i(),o("div",{key:0,class:a(["message-item",{"message-item--mine":e.sender==r(re).userInfo.id}])},[ke(e,t)?(i(),o("p",X,d(e.__sendTime),1)):f("v-if",!0),Me(e,"system")?(i(),v(O,{key:1,data:e},null,8,["data"])):(i(),o("div",Y,[l(N,{"user-id":e.sender,placement:e.sender==r(re).userInfo.id?"left":"right"},{trigger:m((()=>[l(r(M),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id","placement"]),e.content?(i(),o("div",$,[g("div",Q,[g("span",{class:"name","data-time":e.__time},d(r(me)?e.senderName:""),9,V)]),g("div",{class:a(["content",{emoji:e.content.chatMessageType===r(b).EMOJI,template:e.content.chatMessageType===r(b).TEMPLATE,"template--3":_e(e.content),"audio-video":r(A)(e.content),file:e.content.chatMessageType===r(b).FILE}]),onContextmenu:y((t=>Te(t,e.id)),["prevent"])},[e.content.chatMessageType===r(b).TEXT?(i(),o(u,{key:0},[e.content.referenceContent?(i(),o("div",Z,[g("span",null,d(e.content.referenceContent.senderName)+":",1),g("pre",{innerHTML:r(H)(e.content.referenceContent.content)},null,8,ee)])):f("v-if",!0),g("pre",{innerHTML:e.__content},null,8,te)],64)):f("v-if",!0),e.content.chatMessageType===r(b).BLEND?(i(),o("pre",{key:1,innerHTML:e.__content},null,8,ne)):f("v-if",!0),e.content.chatMessageType===r(b).EMOJI?(i(),o("img",{key:2,src:r(P).findEmoji(e.__content)},null,8,se)):f("v-if",!0),Me(e,"template")?(i(),v(O,{key:3,data:e},null,8,["data"])):f("v-if",!0),e.content.chatMessageType===r(b).IMAGE?(i(),v(r(_),{key:4,width:"240",src:e.__content},null,8,["src"])):f("v-if",!0),r(A)(e.content)?(i(),o(u,{key:5},[l(r(k),{class:a({"is-audio":e.content.chatMessageType===r(b).AUDIO}),component:e.content.chatMessageType===r(b).AUDIO?r(U):r(F)},null,8,["class","component"]),g("span",ie,d(r(z)(e.__content)),1)],64)):f("v-if",!0),e.content.chatMessageType===r(b).FILE?(i(),v(r(x),{key:6,"wrap-item":!1},{default:m((()=>[l(r(k),{class:"icon-file",size:"40",component:r(G)},null,8,["component"]),l(r(x),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:m((()=>[g("span",null,d(e.__content),1),g("span",oe,d(e.__size),1)])),_:2},1024)])),_:2},1024)):f("v-if",!0),l(r(I),{class:"quick-menu"},{default:m((()=>[r(A)(e.content)?f("v-if",!0):(i(),o(u,{key:0},[f(' <n-button quaternary size="tiny">\n\t\t\t\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\n\t\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t\t</n-button> '),l(r(L),{quaternary:"",size:"tiny",onClick:()=>xe(e)},{icon:m((()=>[l(r(k),{size:"17",component:r(J)},null,8,["component"])])),_:2},1032,["onClick"])],64)),l(r(L),{quaternary:"",size:"tiny",onClick:t=>Te(t,e.id)},{icon:m((()=>[l(r(k),{size:"14",component:r(K)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,W)])):f("v-if",!0)]))],2)):f("v-if",!0)],64)))),128))])),_:1}),l(r(q),{ref_key:"contextmenuRef",ref:ue,show:pe.value,"onUpdate:show":t[0]||(t[0]=e=>pe.value=e),position:de.value,"msg-id":fe.value,onSelect:Ie},null,8,["show","position","msg-id"])],6))}});export{ae as default};
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as a,computed as l,openBlock as n,createBlock as o,unref as r,withCtx as s,renderSlot as i,createElementBlock as c,Fragment as u,withDirectives as d,createElementVNode as p,createVNode as m,createCommentVNode as v,toDisplayString as f,createTextVNode as g,renderList as k,vShow as y}from"vue";import{NPopover as h,NAvatar as b,NButton as w,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as _,EyeOffOutline as j,EyeOutline as I,Close as z}from"@vicons/ionicons5";import{useState as x}from"../hooks/useState.js";import{useSession as N}from"../hooks/useSession.js";import"trtc-sdk-v5";import"date-fns";import"lodash-es";import"../utils/emoji.js";import"../../../../shared/utils/index.js";import{openSessionApi as S,getUserDetailApi as $}from"../api/index.js";const D={class:"person-profile-main"},P={class:"left"},T={class:"profile"},q={class:"profile__text"},B={class:"right"},E={class:"right__content"},O={class:"label"},U={class:"content"};var A=t({__name:"PersonProfile",props:{userId:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["close"],setup(t,{emit:A}){const F=t,{state:G}=x(),{openSession:H}=N(G),J=e(!1),K=e(!1),L=e(!1),M=a({}),Q=[{label:"机构",value:"",key:"orgName"},{label:"姓名",value:"",key:"name"},{label:"归属科室",value:"",key:"deptName"},{label:"业务科室",value:"",key:"businessDeptNames"},{label:"手机号",value:"",key:"phone"},{label:"岗位",value:"",key:"post"},{label:"工号",value:"",key:"jobId"},{label:"性别",value:"",key:"orgName"}],R=l((()=>(M.id&&Q.forEach((t=>{const{key:e}=t;t.value=M[e]})),Q)));async function V(){J.value=!1;const t=await S({chatType:G.currentSessionItem.chatType,receiver:F.userId,sender:G.userInfo.id});H(t),A("close")}async function W(t){if(!t)return;const e=await $({userId:F.userId});(null==e?void 0:e.id)?Object.assign(M,e):M.id=""}function X(t){const{key:e,value:a}=t;return"phone"!==e||L.value?a:(a||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,a)=>(n(),o(r(h),{raw:"",class:"person-profile-wrapper",show:J.value,"onUpdate:show":[a[3]||(a[3]=t=>J.value=t),W],trigger:t.disabled?"manual":"click","show-arrow":!1,shift:""},{trigger:s((()=>[i(e.$slots,"trigger")])),default:s((()=>[M.id?(n(),c(u,{key:0},[d(p("div",D,[p("div",P,[p("div",T,[m(r(b),{src:M.avatar,bordered:"",round:"",size:100,onClickCapture:a[0]||(a[0]=t=>K.value=!0)},null,8,["src"]),v(' <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",q,[p("h4",null,f(M.name),1),p("p",null,f(M.orgName),1)]),m(r(w),{strong:"",secondary:"",onClick:V},{default:s((()=>[m(r(C),{size:"13",color:"#666666",component:r(_),style:{"margin-right":"6px"}},null,8,["component"]),g(" 发消息 ")])),_:1})])]),p("div",B,[p("div",E,[(n(!0),c(u,null,k(r(R),((t,e)=>(n(),c("div",{class:"info-item",key:e},[p("span",O,f(t.label),1),p("div",U,[p("span",null,f(X(t)),1),"phone"===t.key&&X(t)?(n(),o(r(C),{key:0,size:"16",color:"#666666",component:L.value?r(j):r(I),style:{"margin-left":"10px"},onClick:a[1]||(a[1]=t=>L.value=!L.value)},null,8,["component"])):v("v-if",!0)])])))),128))])])],512),[[y,!K.value]]),d(p("div",{class:"large-avatar",onClick:a[2]||(a[2]=t=>K.value=!1)},[m(r(w),{circle:"",size:"small",secondary:""},{icon:s((()=>[m(r(C),{size:24,component:r(z),color:"#fff"},null,8,["component"])])),_:1}),m(r(b),{size:310,round:"",src:M.avatar},null,8,["src"])],512),[[y,K.value]])],64)):v("v-if",!0)])),_:3},8,["show","trigger"]))}});export{A as default};
1
+ import{defineComponent as t,ref as e,reactive as a,computed as l,openBlock as n,createBlock as o,unref as s,withCtx as r,renderSlot as i,createElementBlock as c,Fragment as u,withDirectives as d,createElementVNode as p,createVNode as m,createCommentVNode as v,toDisplayString as f,createTextVNode as g,renderList as k,vShow as y}from"vue";import{NPopover as h,NAvatar as b,NButton as w,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as _,EyeOffOutline as j,EyeOutline as I,Close as z}from"@vicons/ionicons5";import{useState as x}from"../hooks/useState.js";import{useSession as N}from"../hooks/useSession.js";import"trtc-sdk-v5";import"date-fns";import"lodash-es";import"../utils/emoji.js";import"../../../../shared/utils/index.js";import{openSessionApi as S,getUserDetailApi as $}from"../api/index.js";const D={class:"person-profile-main"},P={class:"left"},T={class:"profile"},q={class:"profile__text"},B={class:"right"},E={class:"right__content"},O={class:"label"},U={class:"content"};var A=t({__name:"PersonProfile",props:{userId:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["close"],setup(t,{emit:A}){const F=t,{state:G}=x(),{openSession:H}=N(G),J=e(!1),K=e(!1),L=e(!1),M=a({}),Q=[{label:"机构",value:"",key:"orgName"},{label:"姓名",value:"",key:"name"},{label:"归属科室",value:"",key:"deptName"},{label:"业务科室",value:"",key:"businessDeptNames"},{label:"手机号",value:"",key:"phone"},{label:"岗位",value:"",key:"post"},{label:"工号",value:"",key:"jobId"},{label:"性别",value:"",key:"orgName"}],R=l((()=>(M.id&&Q.forEach((t=>{const{key:e}=t;t.value=M[e]})),Q)));async function V(){J.value=!1;const t=await S({chatType:G.currentSessionItem.chatType,receiver:F.userId,sender:G.userInfo.id});H(t),A("close")}async function W(t){if(!t)return;const e=await $({userId:F.userId});(null==e?void 0:e.id)?Object.assign(M,e):M.id=""}function X(t){const{key:e,value:a}=t;return"phone"!==e||L.value?a:(a||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,a)=>(n(),o(s(h),{raw:"",class:"person-profile-wrapper",show:J.value,"onUpdate:show":[a[3]||(a[3]=t=>J.value=t),W],trigger:t.disabled?"manual":"click","show-arrow":!1,shift:""},{trigger:r((()=>[i(e.$slots,"trigger")])),default:r((()=>[M.id?(n(),c(u,{key:0},[d(p("div",D,[p("div",P,[p("div",T,[m(s(b),{src:M.avatar,bordered:"",round:"",size:100,onClickCapture:a[0]||(a[0]=t=>K.value=!0)},null,8,["src"]),v(' <n-upload abstract accept="image/*" @change="onChange">\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\n\t\t\t\t\t\t\t\t<n-button\n\t\t\t\t\t\t\t\t\tcircle\n\t\t\t\t\t\t\t\t\tsecondary\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\n\t\t\t\t\t\t\t\t\t@click="handleClick"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t</n-button>\n\t\t\t\t\t\t\t</n-upload-trigger>\n\t\t\t\t\t\t</n-upload> '),p("div",q,[p("h4",null,f(M.name),1),p("p",null,f(M.orgName),1)]),m(s(w),{strong:"",secondary:"",onClick:V},{default:r((()=>[m(s(C),{size:"13",color:"#666666",component:s(_),style:{"margin-right":"6px"}},null,8,["component"]),g(" 发消息 ")])),_:1})])]),p("div",B,[p("div",E,[(n(!0),c(u,null,k(s(R),((t,e)=>(n(),c("div",{class:"info-item",key:e},[p("span",O,f(t.label),1),p("div",U,[p("span",null,f(X(t)),1),"phone"===t.key&&X(t)?(n(),o(s(C),{key:0,size:"16",color:"#666666",component:L.value?s(j):s(I),style:{"margin-left":"10px"},onClick:a[1]||(a[1]=t=>L.value=!L.value)},null,8,["component"])):v("v-if",!0)])])))),128))])])],512),[[y,!K.value]]),d(p("div",{class:"large-avatar",onClick:a[2]||(a[2]=t=>K.value=!1)},[m(s(w),{circle:"",size:"small",secondary:""},{icon:r((()=>[m(s(C),{size:24,component:s(z),color:"#fff"},null,8,["component"])])),_:1}),m(s(b),{size:310,round:"",src:M.avatar},null,8,["src"])],512),[[y,K.value]])],64)):v("v-if",!0)])),_:3},8,["show","trigger"]))}});export{A as default};
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,ref as t,watch as a,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as c,createBlock as u,mergeProps as d,createElementVNode as p,normalizeStyle as f,createVNode as v,withCtx as g,renderList as h,toDisplayString as k,createTextVNode as y,resolveDynamicComponent as w,renderSlot as S}from"vue";import b from"./hooks/use-noData.js";import{ScaleViewProps as C}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as P}from"./utils/judge-types.js";import{useEvent as q}from"./hooks/use-event.js";import"xe-utils";import"moment";import L from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import M from"./components/AnswerParse.vue.js";import O from"./components/ScaleScore.js";import T from"./components/DescribeContent.vue.js";import{NForm as V,NFormItem as I,NButton as B}from"naive-ui";const J=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:C,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:C,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=t(null),Z=t(null),ee=t(null),{noDataState:oe,setNoData:te,resetNodata:ae}=b(),ne=F(),{showEvatip:se,isFormBoldOpen:ie,scaleStyle:le,handlePageClass:re,isShowItem:me,handleShowQuestionNumber:ce,hasScore:ue,isPreviewScale:de,showEvaluateEntry:pe,showEvaluateCoundownPage:fe,showScaleFooter:ve,isCancelBtn:ge,isSaveBtn:he,showEvaluateLabel:ke,showAnswerParse:ye,propsConfig:we,evaluatePageProps:Se,evaluateCountdownProps:be,isEvaluetaResSituation:Ce,disableEdit:De,desStart:Ee,desEnd:je,desContent:_e}=E(K,X,{query:ne,scaleViewDom:Y}),{initForm:xe}=j(K,X,z,{query:ne}),{submitMethod:Fe,onSubmitData:Pe,onSubmitForm:qe,handleScoreJson:Le}=_(K,X,z,{query:ne,formRef:ee,countdownDom:Z}),{nextLogicEvent:Ne,handleDynamicDataRelation:Re}=q(K,X),{scaleChange:Ae,labelChange:Me,vodFileList:Oe,writeGuage:Te,closeEvaluateCountdown:Ve,showEvaTipModal:Ie}=x(K,X,z,{nextLogicEvent:Ne,handleDynamicDataRelation:Re,isPreviewScale:de,submitMethod:Fe,isEvaluetaResSituation:Ce,handleScoreJson:Le,disableEdit:De});(()=>{let{id:e}=ne;e&&(X.shareId=e)})();const Be=e=>{try{ae(),xe(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,te(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};a((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Be(e):e.guage_id&&Be(e)}),{immediate:!0}),a((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{xe(o)}))}),{immediate:!0});const Je=L.debounce(Pe,300),Ge=()=>{z("onCloseSetting")};return C({getScaleData:()=>({...X}),onSubmitForm:qe,cancel:Ge}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(ve)}]),ref_key:"scaleViewDom",ref:Y},[m(' <template v-if="state.spinning">\r\n <n-spin :show="state.spinning" description="加载中"></n-spin>\r\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(c,{key:0},[r(oe).noData?(s(),u(N,{key:0,noDataImg:r(oe).noDataImg,noDataTip:r(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(c,{key:1},[r(pe)?(s(),u(A,d({key:0},r(Se),{onWriteGuage:r(Te)}),null,16,["onWriteGuage"])):(s(),i(c,{key:1},[r(fe)?(s(),u(R,d({key:0,ref_key:"countdownDom",ref:Z},r(be),{onCloseEvaluateCountdown:r(Ve)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(re),"scale-container-hasfooter":r(ve)}]),style:f(r(le))},[r(ue)?(s(),u(r(O),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(Ee)?(s(),u(T,{key:1,content:r(_e)},null,8,["content"])):m("v-if",!0),v(r(V),{ref_key:"formRef",ref:ee,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(c,null,h(X.formArray,((e,o)=>(s(),i(c,{key:(e.id||e.seq)+o},[r(me)(e)?(s(),u(r(I),{key:0,path:e.val_key,"show-label":!r(P)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(ie)(e)}),innerHTML:r(ce)(e)},null,10,J),r(ie)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(ke)(e)?(s(),i("span",W,k(r(ke)(e)),1)):m("v-if",!0),r(se)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ie)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),u(w(e.renderCom),d(r(we)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Ae),onOnChange:o=>r(Me)(o,e),onVodFileList:r(Oe)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ye)(e)?(s(),u(M,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(je)?(s(),u(T,{key:2,content:r(_e)},null,8,["content"])):m("v-if",!0)],6),r(ve)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(ge)?(s(),u(r(B),{key:0,onClick:Ge},{default:g((()=>[y("取消")])),_:1})):m("v-if",!0),r(he)?(s(),u(r(B),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>[y(" 保存 ")])),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
1
+ import{defineComponent as e,reactive as o,ref as t,watch as a,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as c,createBlock as u,mergeProps as d,createElementVNode as p,normalizeStyle as f,createVNode as v,withCtx as g,renderList as h,toDisplayString as k,createTextVNode as y,resolveDynamicComponent as w,renderSlot as S}from"vue";import b from"./hooks/use-noData.js";import{ScaleViewProps as C}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as P}from"./utils/judge-types.js";import{useEvent as q}from"./hooks/use-event.js";import"xe-utils";import"moment";import L from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import M from"./components/AnswerParse.vue.js";import O from"./components/ScaleScore.js";import T from"./components/DescribeContent.vue.js";import{NForm as V,NFormItem as I,NButton as B}from"naive-ui";const J=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:C,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:C,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=t(null),Z=t(null),ee=t(null),{noDataState:oe,setNoData:te,resetNodata:ae}=b(),ne=F(),{showEvatip:se,isFormBoldOpen:ie,scaleStyle:le,handlePageClass:re,isShowItem:me,handleShowQuestionNumber:ce,hasScore:ue,isPreviewScale:de,showEvaluateEntry:pe,showEvaluateCoundownPage:fe,showScaleFooter:ve,isCancelBtn:ge,isSaveBtn:he,showEvaluateLabel:ke,showAnswerParse:ye,propsConfig:we,evaluatePageProps:Se,evaluateCountdownProps:be,isEvaluetaResSituation:Ce,disableEdit:De,desStart:Ee,desEnd:je,desContent:_e}=E(K,X,{query:ne,scaleViewDom:Y}),{initForm:xe}=j(K,X,z,{query:ne}),{submitMethod:Fe,onSubmitData:Pe,onSubmitForm:qe,handleScoreJson:Le}=_(K,X,z,{query:ne,formRef:ee,countdownDom:Z}),{nextLogicEvent:Ne,handleDynamicDataRelation:Re}=q(K,X),{scaleChange:Ae,labelChange:Me,vodFileList:Oe,writeGuage:Te,closeEvaluateCountdown:Ve,showEvaTipModal:Ie}=x(K,X,z,{nextLogicEvent:Ne,handleDynamicDataRelation:Re,isPreviewScale:de,submitMethod:Fe,isEvaluetaResSituation:Ce,handleScoreJson:Le,disableEdit:De});(()=>{let{id:e}=ne;e&&(X.shareId=e)})();const Be=e=>{try{ae(),xe(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,te(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};a((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Be(e):e.guage_id&&Be(e)}),{immediate:!0}),a((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{xe(o)}))}),{immediate:!0});const Je=L.debounce(Pe,300),Ge=()=>{z("onCloseSetting")};return C({getScaleData:()=>({...X}),onSubmitForm:qe,cancel:Ge}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(ve)}]),ref_key:"scaleViewDom",ref:Y},[m(' <template v-if="state.spinning">\n <n-spin :show="state.spinning" description="加载中"></n-spin>\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(c,{key:0},[r(oe).noData?(s(),u(N,{key:0,noDataImg:r(oe).noDataImg,noDataTip:r(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(c,{key:1},[r(pe)?(s(),u(A,d({key:0},r(Se),{onWriteGuage:r(Te)}),null,16,["onWriteGuage"])):(s(),i(c,{key:1},[r(fe)?(s(),u(R,d({key:0,ref_key:"countdownDom",ref:Z},r(be),{onCloseEvaluateCountdown:r(Ve)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(re),"scale-container-hasfooter":r(ve)}]),style:f(r(le))},[r(ue)?(s(),u(r(O),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(Ee)?(s(),u(T,{key:1,content:r(_e)},null,8,["content"])):m("v-if",!0),v(r(V),{ref_key:"formRef",ref:ee,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(c,null,h(X.formArray,((e,o)=>(s(),i(c,{key:(e.id||e.seq)+o},[r(me)(e)?(s(),u(r(I),{key:0,path:e.val_key,"show-label":!r(P)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(ie)(e)}),innerHTML:r(ce)(e)},null,10,J),r(ie)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(ke)(e)?(s(),i("span",W,k(r(ke)(e)),1)):m("v-if",!0),r(se)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ie)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),u(w(e.renderCom),d(r(we)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Ae),onOnChange:o=>r(Me)(o,e),onVodFileList:r(Oe)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ye)(e)?(s(),u(M,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(je)?(s(),u(T,{key:2,content:r(_e)},null,8,["content"])):m("v-if",!0)],6),r(ve)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(ge)?(s(),u(r(B),{key:0,onClick:Ge},{default:g((()=>[y("取消")])),_:1})):m("v-if",!0),r(he)?(s(),u(r(B),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>[y(" 保存 ")])),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as r,createCommentVNode as d,withDirectives as o,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../shared/utils/vexutilsExpand.js";const A={key:0,class:"label-disable-wrap"},O=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},j={class:"label-wrap"},k=["id"],T={class:"edit-label-type"};var B=t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:B,emit:D}){const V=t,F=L(),P=e(null),_=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!_.inited)return!1;let t=_.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(..._.labelSelectedEdit,...V.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(_.labelSelectedEdit=$.value,"object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=_.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await V.saveLabelItem(a,t);i&&(F.success("添加成功!"),D("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let r=(null==(i=_.labelSelectedEdit)?void 0:i.length)&&x.clone(_.labelSelectedEdit,!0)||[];if(t){if(r.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;r=r.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}r.push(e)}else{const t=r.findIndex((t=>t.labelId==e.labelId));-1!=t&&r.splice(t,1)}_.labelSelectedEdit=[...r],N.value++,V.explicit&&D("explicitOnChange",[..._.labelSelectedEdit])},X=async t=>{const{status:e}=await V.deleteLabel(t,V.item);if(e){F.success("删除成功!");for(const e in _.labelConfig){const l=_.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&_.labelConfig[e].itemList.splice(l,1)}const e=_.labelSelectedEdit||[],l=V.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),D("change",[...l],V.item)}D("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=P.value.querySelector("a[href='"+l+"']"),e&&e.click(),_.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);_.cacheAnchorKey=e},et=()=>{var t;return null==(t=P.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>V.labelOptions),(t=>{t&&(()=>{var t;if(V.isLock)return;const e=JSON.parse(JSON.stringify(V.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}_.labelConfig=e,C((()=>{let t;R(),V.explicit&&_.inited&&(t=_.labelAnchorKey),z(_.labelConfig,t),_.inited=!0}))})()}),{immediate:!0,deep:!0}),B({resetShowAdd:()=>{let{labelObj:t}=_.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([..._.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=_.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(_.labelSelectedEdit)){const e=_.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&_.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:P},[r(W)?(n(),s("div",A,O)):d("v-if",!0),o(c("div",K,[c("div",j,[d(" 表单内嵌打开标签组件的样式 "),d(' <div v-if="explicit" class="explicit-continer">\r\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\r\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\r\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\r\n\t\t\t\t\t\t\t\t<span slot="tab">\r\n\t\t\t\t\t\t\t\t\t{{ i }}\r\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\r\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\r\n\t\t\t\t\t\t\t\t\t\t<labelClassify\r\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\r\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\r\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</n-tab-pane>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</n-tabs>\r\n\t\t\t\t</div> '),d("\r\n\t\t\t\t\t普通标签样式\r\n\t\t\t\t\tv-else\r\n\t\t\t\t\texplicit\r\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(r(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(_.labelConfig,((t,e)=>(n(),y(r(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),d(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(_.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",T,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,k),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:r(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!r(W)]])],512))}});export{B as default};
1
+ import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as d,createCommentVNode as o,withDirectives as r,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../shared/utils/vexutilsExpand.js";const A={key:0,class:"label-disable-wrap"},O=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},j={class:"label-wrap"},k=["id"],T={class:"edit-label-type"};var B=t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:B,emit:D}){const V=t,F=L(),P=e(null),_=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!_.inited)return!1;let t=_.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(..._.labelSelectedEdit,...V.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(_.labelSelectedEdit=$.value,"object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=_.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await V.saveLabelItem(a,t);i&&(F.success("添加成功!"),D("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let d=(null==(i=_.labelSelectedEdit)?void 0:i.length)&&x.clone(_.labelSelectedEdit,!0)||[];if(t){if(d.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;d=d.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}d.push(e)}else{const t=d.findIndex((t=>t.labelId==e.labelId));-1!=t&&d.splice(t,1)}_.labelSelectedEdit=[...d],N.value++,V.explicit&&D("explicitOnChange",[..._.labelSelectedEdit])},X=async t=>{const{status:e}=await V.deleteLabel(t,V.item);if(e){F.success("删除成功!");for(const e in _.labelConfig){const l=_.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&_.labelConfig[e].itemList.splice(l,1)}const e=_.labelSelectedEdit||[],l=V.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),D("change",[...l],V.item)}D("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=P.value.querySelector("a[href='"+l+"']"),e&&e.click(),_.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);_.cacheAnchorKey=e},et=()=>{var t;return null==(t=P.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>V.labelOptions),(t=>{t&&(()=>{var t;if(V.isLock)return;const e=JSON.parse(JSON.stringify(V.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}_.labelConfig=e,C((()=>{let t;R(),V.explicit&&_.inited&&(t=_.labelAnchorKey),z(_.labelConfig,t),_.inited=!0}))})()}),{immediate:!0,deep:!0}),B({resetShowAdd:()=>{let{labelObj:t}=_.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([..._.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=_.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(_.labelSelectedEdit)){const e=_.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&_.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:P},[d(W)?(n(),s("div",A,O)):o("v-if",!0),r(c("div",K,[c("div",j,[o(" 表单内嵌打开标签组件的样式 "),o(' <div v-if="explicit" class="explicit-continer">\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\n\t\t\t\t\t\t\t\t<span slot="tab">\n\t\t\t\t\t\t\t\t\t{{ i }}\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\n\t\t\t\t\t\t\t\t\t\t<labelClassify\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</n-tab-pane>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</n-tabs>\n\t\t\t\t</div> '),o("\n\t\t\t\t\t普通标签样式\n\t\t\t\t\tv-else\n\t\t\t\t\texplicit\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(d(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(_.labelConfig,((t,e)=>(n(),y(d(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),o(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(_.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",T,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,k),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:d(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!d(W)]])],512))}});export{B as default};
package/es/env.d.ts CHANGED
@@ -1,25 +1,25 @@
1
- /// <reference types="vite/client" />
2
-
3
- interface ImportMetaEnv {
4
- readonly VITE_APP_TYPE: string;
5
- // 更多环境变量...
6
- }
7
-
8
- interface ImportMeta {
9
- readonly env: ImportMetaEnv;
10
- }
11
-
12
- declare module '*.vue' {
13
- // @ts-ignore
14
- import type { App, defineComponent } from 'vue';
15
- // // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
16
- // // const component: DefineComponent<{}, {}, any>
17
- const component: ReturnType<typeof defineComponent> & {
18
- install(app: App): void;
19
- };
20
- // @ts-ignore
21
- export default component;
22
- }
23
-
24
- declare module '*.js';
25
-
1
+ /// <reference types="vite/client" />
2
+
3
+ interface ImportMetaEnv {
4
+ readonly VITE_APP_TYPE: string;
5
+ // 更多环境变量...
6
+ }
7
+
8
+ interface ImportMeta {
9
+ readonly env: ImportMetaEnv;
10
+ }
11
+
12
+ declare module '*.vue' {
13
+ // @ts-ignore
14
+ import type { App, defineComponent } from 'vue';
15
+ // // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
16
+ // // const component: DefineComponent<{}, {}, any>
17
+ const component: ReturnType<typeof defineComponent> & {
18
+ install(app: App): void;
19
+ };
20
+ // @ts-ignore
21
+ export default component;
22
+ }
23
+
24
+ declare module '*.js';
25
+
@@ -1 +1 @@
1
- var d="data:image/png;base64,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";export{d as default};
1
+ var u="data:image/png;base64,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";export{u as default};