cnhis-design-vue 3.1.42-beta.22 → 3.1.42-beta.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/README.md +87 -87
  2. package/es/components/annotation-edit/src/AnnotationEdit.js +1 -1
  3. package/es/components/base-search/index.d.ts +2 -2
  4. package/es/components/base-search/src/index.vue.d.ts +2 -2
  5. package/es/components/base-search/style/index.css +1 -1
  6. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  7. package/es/components/classification/style/index.css +1 -1
  8. package/es/components/date-picker/src/DatePicker.vue.js +1 -1
  9. package/es/components/form-config/index.d.ts +2 -0
  10. package/es/components/form-config/src/FormConfig.vue.d.ts +2 -0
  11. package/es/components/form-config/src/FormConfig.vue.js +1 -1
  12. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -0
  13. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +1 -0
  14. package/es/components/form-render/index.d.ts +1 -0
  15. package/es/components/form-render/src/FormRender.vue.d.ts +1 -0
  16. package/es/components/form-render/src/FormRender.vue.js +1 -1
  17. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +1 -0
  18. package/es/components/form-render/src/components/renderer/combination.js +1 -1
  19. package/es/components/form-render/src/components/renderer/jsonCombination/index.js +1 -1
  20. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  21. package/es/components/form-render/src/components/renderer/select.js +1 -1
  22. package/es/components/form-render/src/hooks/useFormAsyncQueue.js +1 -1
  23. package/es/components/iho-table/src/IhoTable.vue.js +1 -1
  24. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  25. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
  26. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  27. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +1 -1
  28. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.js +1 -1
  29. package/es/components/iho-table/style/iconfont.ttf +0 -0
  30. package/es/components/iho-table/style/index.css +1 -1
  31. package/es/components/index.css +1 -1
  32. package/es/components/info-header/index.d.ts +2 -0
  33. package/es/components/info-header/src/InfoHeader.vue.d.ts +2 -0
  34. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +1 -0
  35. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +1 -0
  36. package/es/components/info-header/style/index.css +1 -1
  37. package/es/components/keyboard/src/Keyboard.vue.js +1 -1
  38. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  39. package/es/components/select-label/src/LabelFormContent.vue.js +1 -1
  40. package/es/components/select-label/style/index.css +1 -1
  41. package/es/components/shortcut-setter/index.d.ts +1 -0
  42. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +1 -0
  43. package/es/components/steps-wheel/src/StepsWheel.vue.js +1 -1
  44. package/es/components/table-filter/src/types/index.d.ts +2 -2
  45. package/es/components/time-picker/src/TimePicker.vue.js +1 -1
  46. package/es/env.d.ts +24 -24
  47. package/es/shared/hooks/useDateTime.d.ts +1 -1
  48. package/es/shared/hooks/useDateTime.js +1 -1
  49. package/package.json +2 -2
  50. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  51. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  52. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  53. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  54. package/es/components/fabric-chart/src/utils/index.d.ts +0 -6823
  55. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  56. package/es/shared/utils/tapable/index.d.ts +0 -139
  57. /package/es/components/base-search/style/{iconfont.ttf → base-search-iconfont.ttf} +0 -0
  58. /package/es/components/classification/style/{iconfont.ttf → classification-iconfont.ttf} +0 -0
  59. /package/es/components/info-header/style/{iconfont.ttf → info-header-font.ttf} +0 -0
  60. /package/es/components/select-label/style/{iconfont.ttf → select-label-iconfont.ttf} +0 -0
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
+ ```
@@ -1 +1 @@
1
- import{defineComponent as e,computed as o,ref as a,onDeactivated as l,createVNode as t,unref as u,createTextVNode as n}from"vue";import{useTheme as i}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import{isString as r,isObject as s,isFunction as m}from"lodash-es";import{FileTrayFull as d,FileTray as v}from"@vicons/ionicons5";import{NPopover as c,NDivider as p,NEllipsis as f,NIcon as V,NInput as h}from"naive-ui";var g=e({props:{modelValue:{type:[String,Object],default:""}},emits:["update:modelValue"],setup(e,{emit:g}){const w=i(),x=o({get:()=>r(e.modelValue)?e.modelValue:s(e.modelValue)&&e.modelValue.content||"",set(o){let a=o;s(e.modelValue)&&(a={...e.modelValue,content:o}),g("update:modelValue",a)}}),T=a(!1),b=o({get:()=>T.value,async set(e){T.value=e,!e&&k.value&&(await new Promise((e=>setTimeout(e,200))),k.value=!1)}}),k=a(!1);let y,_;function P(e){e.stopPropagation(),clearTimeout(y),b.value&&k.value?b.value=!1:u(x)||(y=setTimeout((()=>{k.value=b.value=!0}),200))}function M(e){e.stopPropagation(),clearTimeout(y),u(x)&&(b.value=!0,k.value=!0)}function R(e){e.stopPropagation(),clearTimeout(_),u(x)&&(b.value=!0)}function j(e){e.stopPropagation(),clearTimeout(_),u(x)&&!k.value&&(_=setTimeout((()=>{b.value=!1}),300))}return l((()=>{b.value=!1})),function(){return t("section",{class:["annotation-edit",{"is-active":!!u(x)}],style:{"--icon-right":"-5",...w.value},"annotation-hover-show":!u(x)&&!k.value},[t(c,{"keep-alive-on-hover":!0,style:{maxWidth:"360px",wordBreak:"break-all"},show:b.value,"onUpdate:show":e=>b.value=e,trigger:"manual",duration:100},{default:function(){return t("section",{onMouseleave:j,onMouseenter:R},[t("div",null,[k.value?t(h,{resizable:!1,autosize:{minRows:3,maxRows:5},"show-count":!0,class:"annotation-edit__textarea",type:"textarea",value:x.value,"onUpdate:value":e=>x.value=e},null):t("span",null,[u(x)])]),s(e.modelValue)?[t(p,{style:{margin:"4px 0",minWidth:"360px"}},null),t("section",{class:"annotation-edit__footer"},[m(e.modelValue.footerRender)?e.modelValue.footerRender(e.modelValue):[t(f,null,{default:()=>{var o;return[null!=(o=e.modelValue.authorLabel)?o:"质控人",n(": "),e.modelValue.author]}}),t(f,null,{default:()=>{var o;return[null!=(o=e.modelValue.dateLabel)?o:"质控时间",n(": "),e.modelValue.date]}})]])]:null])},trigger:function(){return t("div",{class:"annotation-edit__icon",onMouseleave:j,onMouseenter:R,onDblclick:M,onClick:P},[t(V,{component:u(x)?d:v},null)])}})])}}});export{g as default};
1
+ import{defineComponent as e,computed as o,ref as a,onDeactivated as t,createVNode as l,unref as u,createTextVNode as n}from"vue";import{useTheme as i}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isString as r,isObject as s,isFunction as m}from"lodash-es";import{FileTrayFull as d,FileTray as v}from"@vicons/ionicons5";import{NPopover as c,NDivider as p,NEllipsis as f,NIcon as V,NInput as h}from"naive-ui";var g=e({props:{modelValue:{type:[String,Object],default:""}},emits:["update:modelValue"],setup(e,{emit:g}){const w=i(),x=o({get:()=>r(e.modelValue)?e.modelValue:s(e.modelValue)&&e.modelValue.content||"",set(o){let a=o;s(e.modelValue)&&(a={...e.modelValue,content:o}),g("update:modelValue",a)}}),T=a(!1),b=o({get:()=>T.value,async set(e){T.value=e,!e&&k.value&&(await new Promise((e=>setTimeout(e,200))),k.value=!1)}}),k=a(!1);let y,_;function P(e){e.stopPropagation(),clearTimeout(y),b.value&&k.value?b.value=!1:u(x)||(y=setTimeout((()=>{k.value=b.value=!0}),200))}function M(e){e.stopPropagation(),clearTimeout(y),u(x)&&(b.value=!0,k.value=!0)}function R(e){e.stopPropagation(),clearTimeout(_),u(x)&&(b.value=!0)}function j(e){e.stopPropagation(),clearTimeout(_),u(x)&&!k.value&&(_=setTimeout((()=>{b.value=!1}),300))}return t((()=>{b.value=!1})),function(){return l("section",{class:["annotation-edit",{"is-active":!!u(x)}],style:{"--icon-right":"-5",...w.value},"annotation-hover-show":!u(x)&&!k.value},[l(c,{"keep-alive-on-hover":!0,style:{maxWidth:"360px",wordBreak:"break-all"},show:b.value,"onUpdate:show":e=>b.value=e,trigger:"manual",duration:100},{default:function(){return l("section",{onMouseleave:j,onMouseenter:R},[l("div",null,[k.value?l(h,{resizable:!1,autosize:{minRows:3,maxRows:5},"show-count":!0,class:"annotation-edit__textarea",type:"textarea",value:x.value,"onUpdate:value":e=>x.value=e},null):l("span",null,[u(x)])]),s(e.modelValue)?[l(p,{style:{margin:"4px 0",minWidth:"360px"}},null),l("section",{class:"annotation-edit__footer"},[m(e.modelValue.footerRender)?e.modelValue.footerRender(e.modelValue):[l(f,null,{default:()=>{var o;return[null!=(o=e.modelValue.authorLabel)?o:"质控人",n(": "),e.modelValue.author]}}),l(f,null,{default:()=>{var o;return[null!=(o=e.modelValue.dateLabel)?o:"质控时间",n(": "),e.modelValue.date]}})]])]:null])},trigger:function(){return l("div",{class:"annotation-edit__icon",onMouseleave:j,onMouseenter:R,onDblclick:M,onClick:P},[l(V,{component:u(x)?d:v},null)])}})])}}});export{g as default};
@@ -78,8 +78,8 @@ declare const CBaseSearch: SFCWithInstall<import("vue").DefineComponent<{
78
78
  curConObj: import("vue").Ref<{
79
79
  field_key: string;
80
80
  con: string;
81
- value: any;
82
- unit: string | null;
81
+ value: string[];
82
+ unit: "custom" | null;
83
83
  }[]>;
84
84
  showResetFilterBtn: import("vue").Ref<boolean>;
85
85
  outSearchFieldList: import("vue").Ref<{
@@ -79,8 +79,8 @@ declare const _default: import("vue").DefineComponent<{
79
79
  curConObj: import("vue").Ref<{
80
80
  field_key: string;
81
81
  con: string;
82
- value: any;
83
- unit: string | null;
82
+ value: string[];
83
+ unit: "custom" | null;
84
84
  }[]>;
85
85
  showResetFilterBtn: import("vue").Ref<boolean>;
86
86
  outSearchFieldList: import("vue").Ref<{
@@ -1 +1 @@
1
- @font-face{font-family:iconfont;src:url(iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.base-search-block .base-container{display:flex;justify-content:space-between;text-align:left}.base-search-block .base-container .bease-left{align-items:flex-start;display:flex;flex:1;justify-content:flex-start}.base-search-block .base-container .bease-left .base-ul{align-items:center;display:flex;flex-wrap:wrap;margin-top:0}.base-search-block .base-container .bease-left .base-ul .baseli{display:flex;margin-bottom:8px;margin-right:8px}.base-search-block .base-container .bease-left .base-ul .baseli .search-default{height:32px;line-height:32px}
1
+ @font-face{font-family:base-search-iconfont;src:url(base-search-iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:base-search-iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.base-search-block .base-container{display:flex;justify-content:space-between;text-align:left}.base-search-block .base-container .bease-left{align-items:flex-start;display:flex;flex:1;justify-content:flex-start}.base-search-block .base-container .bease-left .base-ul{align-items:center;display:flex;flex-wrap:wrap;margin-top:0}.base-search-block .base-container .bease-left .base-ul .baseli{display:flex;margin-bottom:8px;margin-right:8px}.base-search-block .base-container .bease-left .base-ul .baseli .search-default{height:32px;line-height:32px}
@@ -1 +1 @@
1
- import{defineComponent as t,reactive as e,computed as r,onMounted as a,onUnmounted as i,watch as n,openBlock as s,createElementBlock as o,Fragment as l,createVNode as m,unref as p,withCtx as d,renderSlot as u,withModifiers as c,createCommentVNode as f,createTextVNode as y,toDisplayString as v,mergeProps as b}from"vue";import{isObject as g}from"@vue/shared";import{useMessage as P,NDropdown as I,NButton as h,NIcon as F}from"naive-ui";import{ChevronDown as w}from"@vicons/ionicons5";import{Print as k}from"./utils/print.js";import{isIReport as T}from"./utils/browserPrint.js";import S from"./components/IdentityVerification.vue.js";import{format as x}from"date-fns";import{savePrivateFormatApi as D,getPrivateFormatApi as j}from"./api.js";var E=t({__name:"ButtonPrint",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1}},emits:["success","error","clickoutside"],setup(t,{expose:E,emit:L}){const N=t,M=P();let O;const V={},Y=e({spinning:!1,visible:!1,formatList:[],templateParams:{},printParams:[],currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null}),U=e([{label:N.printText,key:"printText"},{label:N.previewText,key:"previewText"},{label:N.pdfLoadText,key:"downloadPdf"},{label:N.formatEditText,key:"formatEditText"}]),B=r((()=>{if(!Y.currentFormatId)return{};let t=Y.currentFormatId;return Y.formatList.find((e=>e.id===t))})),C=r((()=>B.value.name||"格式选择")),J=r((()=>{let t=Y.formatList.find((t=>t.id===Y.currentFormatId));return null==t?void 0:t.templateId})),A=async t=>{if(N.directPrint){if(Y.spinning)return;return"button"===t?void await nt():rt()}return rt()},R=t=>m("span",{class:{active:t.key===Y.currentFormatId}},[t.label]),q=(t,e)=>{let r={type:e,formatId:Y.currentFormatId,templateId:J.value};L("success",t,r)},_=t=>{L("error",t),g(t)&&"notInstalledApp"===t.type&&M.error(t.message)},z=()=>{L("error",{message:"前置条件执行错误"})},H=(t=0)=>{var e;const r=(null==(e=N.printParams)?void 0:e.length)?N.printParams[t]:Y.printParams[t];return JSON.stringify({...r||{},...N.token?{token:N.token}:{}})},$=()=>{var t,e;let r={},a={};if(null==(t=Y.templateParams.customizeDataset)?void 0:t.length){const t=(null==(e=Object.keys(Y.printParams[0].datasetData||{}))?void 0:e[0])||"",r=JSON.stringify(Y.printParams.map((e=>JSON.parse(e.datasetData[t]))));a={datasetData:{}},a.datasetData[t]=r}else Object.keys(Y.printParams[0]).forEach((t=>{a[t]=[],Y.printParams.forEach((e=>{a[t].push(e[t])})),a[t]=a[t].join(",")}));return r=Object.assign({},JSON.parse(H(0)),a),JSON.stringify(r)},G=()=>{let t=Y.printParams.length;const e=async e=>{try{--t<=0&&q(e,"print")}catch(t){console.log("error",t)}};N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t={formatId:Y.currentFormatId,templateId:J.value,printdlgshow:N.printdlgshow};if("MULTI"===N.strategy)for(let r=0;r<Y.printParams.length;r++)r>0&&(t.printdlgshow="0"),O.printDirect({...t,params:H(r)},e,_);else O.printDirect({...t,params:$()},(t=>{q(t,"print")}),_)})).finally((()=>{Y.visible=!1}))},K=async t=>{switch(t){case"printText":G();break;case"previewText":(async()=>{N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t="MULTI"===N.strategy?H():$(),e={formatId:Y.currentFormatId,templateId:J.value,params:t,btnprint:N.btnprint};O.preview(e,(t=>{q(t,"preview")}),_)})).finally((()=>{Y.visible=!1}))})();break;case"formatEditText":N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{Y.identityVerification.visible=!0})).finally((()=>{Y.visible=!1}));break;case"downloadPdf":(async()=>{N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t="MULTI"===N.strategy?H():$(),e={formatId:Y.currentFormatId,templateId:J.value,print:{print:"1",type:"1"},params:t};O.downloadPDF(e,(t=>q(t,"preview")),_)})).finally((()=>{Y.visible=!1}))})();break;default:{Y.currentFormatId=t,Y.visible=!1;const[e]=U,r=Y.formatList.find((e=>e.id===t));e.label=(null==r?void 0:r.name)||e.label,await D({formatForms:[{...r}],name:V.name||r.templateName,number:V.number||r.number,templateId:V.templateId||r.templateId,...V.id?{id:V.id}:{}},{token:N.token});break}}},Q=()=>{Y.visible=!1,L("clickoutside")},W=()=>(Y.isInited=!1,Y.spinning=!1,setTimeout((()=>{Y.visible=!1}),0),!1),X=(t,e,r)=>{const a={};return e.forEach((e=>{let i=((t,e)=>{let r=t.defaultValue||"",a=e;return"NUMBER"===t.type&&(a=Number(e)||0),"DATE"===t.type&&(a=e?x(e,"YYYY-MM-DD"):""),"DATETIME"===t.type&&(a=e?x(e,"YYYY-MM-DD HH:mm:ss"):""),r||a})(e,t[e[r]]);t[e[r]]&&i&&(a[e[r]]=i)})),a},Z=({customizeDataset:t=[],param:e=[]},r=[])=>r.map((r=>{let a={};return t.forEach((t=>{const e=t.dataSetting[0].selectFieldList;a.datasetData={[t.name]:JSON.stringify(X(r,e,"fieldName"))}})),a=Object.assign({},a,X(r,e,"key")),a})),tt=async t=>{var e;if(Y.formatList=t?(t=>{let e=[];return t&&t.forEach((t=>{if(!t.format)return!1;e.push(...t.format.map((e=>Object.assign({},e,{templateName:t.name}))))})),e})(t.obj):[],Y.currentFormatId=await(async(t,e)=>{var r;if(!(null==t?void 0:t.length))return"";const{data:a}=await j({templateId:t[0].templateId},{token:N.token});if("SUCCESS"===a.result){const{formatForms:t=[]}=a.map||{};Object.assign(V,a.map||{});const e=null==(r=null==t?void 0:t[0])?void 0:r.id;if(e)return e}const i=t.find((t=>1==t[e]));return(null==i?void 0:i.id)||t[0].id})(Y.formatList,"defaultFlag"),!Y.currentFormatId)return M.error("获取打印格式失败,请联系管理员!"),W();(()=>{const t=Y.formatList.map((t=>({label:t.name,key:t.id})));U.unshift({label:C.value,key:"format",children:t})})();let r=null==(e=await N.queryTemplateParams())?void 0:e.obj;if(!r||!J.value)return M.error("获取打印模板失败,请联系管理员!"),W();Y.templateParams=r,Y.printParams=Z(Y.templateParams,N.params)},et=async()=>{if(Y.isInited)return!0;Y.isInited=!0,Y.spinning=!0,(()=>{if(O)return!1;O=new k})();const t=await N.queryPrintFormatByNumber();return await tt(t),Y.spinning=!1,!0},rt=async(t=!0)=>{var e;if(await N.clickPrevFn())if(null==(e=N.params)?void 0:e.length){if(!Y.visible){if(!await et())return!1}t&&(Y.visible=!Y.visible)}else M.warning(N.noDataMsg)},at=()=>{Y.watchPrintParamsReformatFn&&Y.watchPrintParamsReformatFn(),Y.isInited?Y.printParams=Z(Y.templateParams,N.params):Y.watchPrintParamsReformatFn=()=>n((()=>Y.isInited),(t=>{if(!t)return!1;at()}))},it=t=>{if(Y.identityVerification.visible=!1,T(Y.currentFormatId))return q(null,"edit");const e={formatId:Y.currentFormatId,templateId:J.value,params:H(),token:t};O.editPrintFormat(e,(t=>{q(t,"edit")}),_)};async function nt(){await rt(!1),G()}return a((()=>{Y.isInited=!1})),i((()=>{null==O||O.destroy()})),n((()=>N.params),(t=>{if(!(null==t?void 0:t.length))return!1;at()}),{deep:!0}),E({directPrint:nt}),(e,r)=>(s(),o(l,null,[m(p(I),{class:"c-dropdown",placement:"bottom-start",trigger:"click",show:Y.visible,onClickoutside:Q,options:U,onSelect:K,"render-label":R},{default:d((()=>[u(e.$slots,"button",{handleClickPrintBtn:rt,printSpinning:Y.spinning,printbtnText:t.btnText,printVisible:Y.visible},(()=>[m(p(h),{class:"dropdown-button",onClick:r[1]||(r[1]=c((()=>A("button")),["stop"]))},{default:d((()=>[f(' <n-spin v-show="state.spinning" size="small"></n-spin> '),y(v(t.btnText)+" ",1),m(p(F),{component:p(w),style:{"margin-left":"5px"},onClick:r[0]||(r[0]=c((()=>A("icon")),["stop"]))},null,8,["component"])])),_:1})]))])),_:3},8,["show","options"]),m(S,b(e.$attrs,{modelValue:Y.identityVerification.visible,"onUpdate:modelValue":r[2]||(r[2]=t=>Y.identityVerification.visible=t),formatId:Y.currentFormatId,templateId:p(J),onSuccess:it}),null,16,["modelValue","formatId","templateId"])],64))}});export{E as default};
1
+ import{defineComponent as t,reactive as e,computed as r,onMounted as a,onUnmounted as i,watch as n,openBlock as s,createElementBlock as o,Fragment as l,createVNode as m,unref as p,withCtx as d,renderSlot as u,withModifiers as c,createCommentVNode as f,createTextVNode as v,toDisplayString as y,mergeProps as b}from"vue";import{isObject as g}from"@vue/shared";import{useMessage as P,NDropdown as I,NButton as h,NIcon as F}from"naive-ui";import{ChevronDown as w}from"@vicons/ionicons5";import{Print as k}from"./utils/print.js";import{isIReport as T}from"./utils/browserPrint.js";import S from"./components/IdentityVerification.vue.js";import{format as x}from"date-fns";import{savePrivateFormatApi as D,getPrivateFormatApi as j}from"./api.js";var E=t({__name:"ButtonPrint",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1}},emits:["success","error","clickoutside"],setup(t,{expose:E,emit:L}){const N=t,M=P();let O;const V={},Y=e({spinning:!1,visible:!1,formatList:[],templateParams:{},printParams:[],currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null}),U=e([{label:N.printText,key:"printText"},{label:N.previewText,key:"previewText"},{label:N.pdfLoadText,key:"downloadPdf"},{label:N.formatEditText,key:"formatEditText"}]),B=r((()=>{if(!Y.currentFormatId)return{};let t=Y.currentFormatId;return Y.formatList.find((e=>e.id===t))})),C=r((()=>{var t;return(null==(t=B.value)?void 0:t.name)||"格式选择"})),J=r((()=>{let t=Y.formatList.find((t=>t.id===Y.currentFormatId));return null==t?void 0:t.templateId})),A=async t=>{if(N.directPrint){if(Y.spinning)return;return"button"===t?void await nt():rt()}return rt()},R=t=>m("span",{class:{active:t.key===Y.currentFormatId}},[t.label]),q=(t,e)=>{let r={type:e,formatId:Y.currentFormatId,templateId:J.value};L("success",t,r)},_=t=>{L("error",t),g(t)&&"notInstalledApp"===t.type&&M.error(t.message)},z=()=>{L("error",{message:"前置条件执行错误"})},H=(t=0)=>{var e;const r=(null==(e=N.printParams)?void 0:e.length)?N.printParams[t]:Y.printParams[t];return JSON.stringify({...r||{},...N.token?{token:N.token}:{}})},$=()=>{var t,e;let r={},a={};if(null==(t=Y.templateParams.customizeDataset)?void 0:t.length){const t=(null==(e=Object.keys(Y.printParams[0].datasetData||{}))?void 0:e[0])||"",r=JSON.stringify(Y.printParams.map((e=>JSON.parse(e.datasetData[t]))));a={datasetData:{}},a.datasetData[t]=r}else Object.keys(Y.printParams[0]).forEach((t=>{a[t]=[],Y.printParams.forEach((e=>{a[t].push(e[t])})),a[t]=a[t].join(",")}));return r=Object.assign({},JSON.parse(H(0)),a),JSON.stringify(r)},G=()=>{let t=Y.printParams.length;const e=async e=>{try{--t<=0&&q(e,"print")}catch(t){console.log("error",t)}};N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t={formatId:Y.currentFormatId,templateId:J.value,printdlgshow:N.printdlgshow};if("MULTI"===N.strategy)for(let r=0;r<Y.printParams.length;r++)r>0&&(t.printdlgshow="0"),O.printDirect({...t,params:H(r)},e,_);else O.printDirect({...t,params:$()},(t=>{q(t,"print")}),_)})).finally((()=>{Y.visible=!1}))},K=async t=>{switch(t){case"printText":G();break;case"previewText":(async()=>{N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t="MULTI"===N.strategy?H():$(),e={formatId:Y.currentFormatId,templateId:J.value,params:t,btnprint:N.btnprint};O.preview(e,(t=>{q(t,"preview")}),_)})).finally((()=>{Y.visible=!1}))})();break;case"formatEditText":N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{Y.identityVerification.visible=!0})).finally((()=>{Y.visible=!1}));break;case"downloadPdf":(async()=>{N.prevFn().catch((()=>(z(),Promise.reject()))).then((()=>{const t="MULTI"===N.strategy?H():$(),e={formatId:Y.currentFormatId,templateId:J.value,print:{print:"1",type:"1"},params:t};O.downloadPDF(e,(t=>q(t,"preview")),_)})).finally((()=>{Y.visible=!1}))})();break;default:{Y.currentFormatId=t,Y.visible=!1;const[e]=U,r=Y.formatList.find((e=>e.id===t));e.label=(null==r?void 0:r.name)||e.label,await D({formatForms:[{...r}],name:V.name||r.templateName,number:V.number||r.number,templateId:V.templateId||r.templateId,...V.id?{id:V.id}:{}},{token:N.token});break}}},Q=()=>{Y.visible=!1,L("clickoutside")},W=()=>(Y.isInited=!1,Y.spinning=!1,setTimeout((()=>{Y.visible=!1}),0),!1),X=(t,e,r)=>{const a={};return e.forEach((e=>{let i=((t,e)=>{let r=t.defaultValue||"",a=e;return"NUMBER"===t.type&&(a=Number(e)||0),"DATE"===t.type&&(a=e?x(e,"YYYY-MM-DD"):""),"DATETIME"===t.type&&(a=e?x(e,"YYYY-MM-DD HH:mm:ss"):""),r||a})(e,t[e[r]]);t[e[r]]&&i&&(a[e[r]]=i)})),a},Z=({customizeDataset:t=[],param:e=[]},r=[])=>r.map((r=>{let a={};return t.forEach((t=>{const e=t.dataSetting[0].selectFieldList;a.datasetData={[t.name]:JSON.stringify(X(r,e,"fieldName"))}})),a=Object.assign({},a,X(r,e,"key")),a})),tt=async t=>{var e;if(Y.formatList=t?(t=>{let e=[];return t&&t.forEach((t=>{if(!t.format)return!1;e.push(...t.format.map((e=>Object.assign({},e,{templateName:t.name}))))})),e})(t.obj):[],Y.currentFormatId=await(async(t,e)=>{var r;if(!(null==t?void 0:t.length))return"";const{data:a}=await j({templateId:t[0].templateId},{token:N.token});if("SUCCESS"===a.result){const{formatForms:e=[]}=a.map||{};Object.assign(V,a.map||{});const i=null==(r=null==e?void 0:e[0])?void 0:r.id;if(i&&t.map((t=>t.id)).includes(i))return i}const i=t.find((t=>1==t[e]));return(null==i?void 0:i.id)||t[0].id})(Y.formatList,"defaultFlag"),!Y.currentFormatId)return M.error("获取打印格式失败,请联系管理员!"),W();(()=>{const t=Y.formatList.map((t=>({label:t.name,key:t.id})));U.unshift({label:C.value,key:"format",children:t})})();let r=null==(e=await N.queryTemplateParams())?void 0:e.obj;if(!r||!J.value)return M.error("获取打印模板失败,请联系管理员!"),W();Y.templateParams=r,Y.printParams=Z(Y.templateParams,N.params)},et=async()=>{if(Y.isInited)return!0;Y.isInited=!0,Y.spinning=!0,(()=>{if(O)return!1;O=new k})();const t=await N.queryPrintFormatByNumber();return await tt(t),Y.spinning=!1,!0},rt=async(t=!0)=>{var e;if(await N.clickPrevFn())if(null==(e=N.params)?void 0:e.length){if(!Y.visible){if(!await et())return!1}t&&(Y.visible=!Y.visible)}else M.warning(N.noDataMsg)},at=()=>{Y.watchPrintParamsReformatFn&&Y.watchPrintParamsReformatFn(),Y.isInited?Y.printParams=Z(Y.templateParams,N.params):Y.watchPrintParamsReformatFn=()=>n((()=>Y.isInited),(t=>{if(!t)return!1;at()}))},it=t=>{if(Y.identityVerification.visible=!1,T(Y.currentFormatId))return q(null,"edit");const e={formatId:Y.currentFormatId,templateId:J.value,params:H(),token:t};O.editPrintFormat(e,(t=>{q(t,"edit")}),_)};async function nt(){await rt(!1),G()}return a((()=>{Y.isInited=!1})),i((()=>{null==O||O.destroy()})),n((()=>N.params),(t=>{if(!(null==t?void 0:t.length))return!1;at()}),{deep:!0}),E({directPrint:nt}),(e,r)=>(s(),o(l,null,[m(p(I),{class:"c-dropdown",placement:"bottom-start",trigger:"click",show:Y.visible,onClickoutside:Q,options:U,onSelect:K,"render-label":R},{default:d((()=>[u(e.$slots,"button",{handleClickPrintBtn:rt,printSpinning:Y.spinning,printbtnText:t.btnText,printVisible:Y.visible},(()=>[m(p(h),{class:"dropdown-button",onClick:r[1]||(r[1]=c((()=>A("button")),["stop"]))},{default:d((()=>[f(' <n-spin v-show="state.spinning" size="small"></n-spin> '),v(y(t.btnText)+" ",1),m(p(F),{component:p(w),style:{"margin-left":"5px"},onClick:r[0]||(r[0]=c((()=>A("icon")),["stop"]))},null,8,["component"])])),_:1})]))])),_:3},8,["show","options"]),m(S,b(e.$attrs,{modelValue:Y.identityVerification.visible,"onUpdate:modelValue":r[2]||(r[2]=t=>Y.identityVerification.visible=t),formatId:Y.currentFormatId,templateId:p(J),onSuccess:it}),null,16,["modelValue","formatId","templateId"])],64))}});export{E as default};
@@ -1 +1 @@
1
- @font-face{font-family:iconfont;src:url(iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.classification-modal-block .n-card-header .svg-wrap .iconfont-table-filter{cursor:pointer;font-size:18px}.classification-modal-block .n-card-header .svg-wrap .iconfont-table-filter:last-child{margin-left:16px}.classification-modal-block .n-card-header .svg-wrap .n-icon{cursor:pointer}.classification-modal-block .n-card__content{overflow-y:auto}.classification-modal-block .n-card__content .table-modal-list .list-title{background-color:#f2f2f4;border:1px solid #e1dfdf;display:flex;height:52px;line-height:52px}.classification-modal-block .n-card__content .table-modal-list .list-title .list-title-item{font-weight:700;width:25%}.classification-modal-block .n-card__content .table-modal-list .list-content{padding:0}.classification-modal-block .n-card__content .table-modal-list .list-content li{display:flex;height:52px;line-height:52px}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-item{align-items:center;display:flex;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:25%}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-item .n-icon{cursor:pointer;margin-right:8px}.classification-modal-block .n-card__content .table-modal-list .list-content li.checked,.classification-modal-block .n-card__content .table-modal-list .list-content li.checked .text{background-color:#f2f2f2}.classification-modal-block .n-card__content .table-modal-list .list-content li .text{background-color:#fff;display:inline-block;padding:0 10px;position:relative}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-line{position:relative;text-align:center;width:75%}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-line:before{border:1px solid #e8e8e8;content:"";left:0;margin-top:20px;position:absolute;width:100%}.classification-modal-block .n-card__content .table-modal-list .list-title-item{margin-left:-1px;padding:0 10px}.classification-modal-block .n-card__content .table-modal-list .list-content-item{border-bottom:1px solid #e1dfdf;margin-left:-1px;margin-top:-1px;padding:0 10px}.classification-modal-block .n-card__content .table-modal-list .list-content-item .ant-switch{height:16px;min-width:28px;width:28px}.classification-modal-block .n-card__content .table-modal-list .list-content-item .ant-switch:after{height:12px;width:12px}.classification-modal-block .n-card__content .table-modal-list .list-content-radio,.classification-modal-block .n-card__content .table-modal-list .list-content-switch{text-align:center}.classification-modal-block .n-card__content .table-modal-list .anticon+.anticon{margin-left:8px}.classification-modal-block .n-card__content .class-filter-content .item-name{display:flex;height:32px;line-height:32px;margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .item-name .label{text-align:right;width:120px}.classification-modal-block .n-card__content .class-filter-content .item-name .addAction{align-items:center;cursor:pointer;display:flex}.classification-modal-block .n-card__content .class-filter-content .item-name .blue{color:#2d7aff;margin-right:8px}.classification-modal-block .n-card__content .class-filter-content .n-form-item-label{width:120px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content{align-items:center;display:flex;flex-wrap:wrap;line-height:32px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .label{display:inline-block;height:32px;line-height:32px;margin-bottom:10px;text-align:right;width:120px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .ant-btn-dashed{border-color:#a6a6a6;color:#a6a6a6}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag{margin-bottom:10px;margin-right:10px;position:relative}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .anticon-close{color:#2d7aff;cursor:pointer;line-height:36px;position:absolute;right:5px;top:2px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .s-content{align-items:center;background-color:rgba(45,122,255,.1);border:1px solid #2d7aff;border-radius:3px;box-sizing:border-box;color:#2d7aff;cursor:pointer;display:flex;justify-content:center;opacity:1;padding:0 10px;width:100px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .s-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .ant-input-disabled,.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .s-content{background-color:#2d7aff;color:#fff}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .anticon-close{color:#fff}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .ant-btn{margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list{border-top:1px solid #e6e6e6;margin-bottom:6px;margin-top:16px;padding-top:12px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li{align-items:center;display:flex;list-style:none;margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .index-span{display:inline-block;width:30px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .form-item{margin-right:10px;width:120px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .form-item.n-date-picker{width:auto}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .value-cfg_wrapper{display:flex;flex-wrap:wrap}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .value-cfg_wrapper .form-item{margin-right:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .delete-item-icon{color:red;cursor:pointer;font-size:18px}.classification-modal-block .n-card__footer{padding-top:10px}.classification-modal-block .n-card__footer .flex_between{display:flex;justify-content:space-between}.classification-modal-block .n-card__footer .flex_right{display:flex;justify-content:right}.classification-modal-block .n-card__footer .n-button{margin-left:8px}.classification-block .tree-type{border:1px solid #d5d5d5;border-radius:4px;height:100%;line-height:32px;margin-top:0;padding-bottom:80px;width:150px}.classification-block .tree-type .header{border-bottom:1px solid #e6eaef;display:flex;font-size:14px;justify-content:space-between;padding:0 10px}.classification-block .tree-type .header .header-1{align-items:center;cursor:pointer;display:flex}.classification-block .tree-type .tree{height:calc(100% - 32px);line-height:32px;margin:0;overflow:auto;padding-left:0}.classification-block .tree-type .tree::-webkit-scrollbar{width:5px}.classification-block .tree-type .tree .tree-item{border-bottom:1px solid #d5d5d5;cursor:pointer}.classification-block .tree-type .tree .tree-item.tree-header{box-sizing:border-box;padding:0 10px}.classification-block .tree-type .tree .tree-item .parent{align-items:center;display:flex;font-weight:600;justify-content:space-between;padding:0 10px}.classification-block .tree-type .tree .tree-item .parent.open{background-color:#f2f2f2;border-bottom:1px solid #d5d5d5}.classification-block .tree-type .tree .tree-item .header-item{box-sizing:border-box;line-height:1.4}.classification-block .tree-type .tree .tree-item .header-item.selected,.classification-block .tree-type .tree .tree-item .header-item:hover{color:#2d7aff}.classification-block .tree-type .tree .tree-item .header-item:active{border-color:transparent;color:#000}.classification-block .tree-type .tree .tree-item .children{align-items:center;display:flex;height:32px;padding-left:23px;padding-right:10px}.classification-block .tree-type .tree .tree-item .children .child-item{align-items:center;border-bottom:1px solid transparent;color:#7c7c7c;display:flex;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .tree-type .tree .tree-item .children .child-item:hover{color:#2d7aff}.classification-block .tree-type .tree .tree-item .children .child-item.selected{align-items:center;color:#2d7aff;display:flex;justify-content:space-between;width:100%}.classification-block .tree-type .tree .tree-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .tree-type .tree .tree-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .tree-type .tree .tree-item .children .child-item .child-item-content{align-items:center;display:flex}.classification-block .tree-type .tree .tree-item .children .child-item .child-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .tree-type .tree .tree-item .children .child-item .digital-span{flex:1;margin-left:5px;text-align:left}.classification-block .tree-type .tree .tree-item:last-child{border-bottom:none}.classification-block .tree-type .tree-type-footer{border-top:1px solid #d5d5d5;bottom:0;height:80px;line-height:20px;padding-left:16px;position:absolute;width:100%}.classification-block .tree-type .tree-type-footer .selected-num{margin:10px}.classification-block .tree-type .tree-type-footer .selected-item-del{align-items:center;color:#2474ff;cursor:pointer;display:flex;justify-content:center;margin-left:0}.classification-block .tile-type{border:1px solid #d5d5d5;border-radius:4px;margin-bottom:8px;padding:0 17px}.classification-block .tile-type .header{align-items:center;border-bottom:1px solid #d5d5d5;display:inline-flex;justify-content:space-between;line-height:44px;width:100%}.classification-block .tile-type .header .all-data{border-bottom:1px solid transparent;font-family:PingFangSC-Medium,PingFang SC;font-size:14px;font-weight:500;line-height:1.4;margin-right:auto}.classification-block .tile-type .header .all-data:hover{color:#2d7aff}.classification-block .tile-type .header .all-data:active{border-color:transparent;color:#000}.classification-block .tile-type .header .selected{color:#2d7aff}.classification-block .tile-type .header .right-setting{display:flex}.classification-block .tile-type .header .right-setting .setting-1{align-items:center;cursor:pointer;display:flex}.classification-block .tile-type .header .right-setting .setting-1 .n-icon{margin-right:6px}.classification-block .tile-type .header .right-setting .upack-up-btn{color:#2d7aff}.classification-block .tile-type .tile{border-bottom:1px solid #d5d5d5;margin:0;padding:9px 0}.classification-block .tile-type .tile .tile-item{cursor:pointer;display:flex;line-height:38px}.classification-block .tile-type .tile .tile-item .parent{box-sizing:border-box;font-family:PingFangSC-Medium,PingFang SC;font-size:14px;font-weight:600;max-width:135px;padding-right:16px;width:135px}.classification-block .tile-type .tile .tile-item .children{flex:1}.classification-block .tile-type .tile .tile-item .children .child-item{border-bottom:1px solid transparent;border-radius:4px;color:#7c7c7c;display:inline-block;font-size:14px;line-height:1.5;margin:0 5px;padding:1px 6px}.classification-block .tile-type .tile .tile-item .children .child-item.selected,.classification-block .tile-type .tile .tile-item .children .child-item:hover{background-color:rgba(45,122,255,.1);color:#2d7aff}.classification-block .tile-type .tile .tile-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .tile-type .tile .tile-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .tile-type .tile .tile-item .child-item.selected{color:#2d7aff}.classification-block .tile-type .selected-list{align-items:center;display:flex;padding:12px 6px}.classification-block .tile-type .selected-list .selected-num{font-size:14px;line-height:20px;margin-right:8px}.classification-block .tile-type .selected-list .selected-item{align-items:center;background-color:rgba(45,122,255,.1);border-radius:4px;color:#2d7aff;cursor:pointer;display:flex;margin-left:8px;padding:1px 8px}.classification-block .tile-type .selected-list .selected-item-del{align-items:center;color:#2474ff;cursor:pointer;display:flex;font-size:14px;line-height:20px;margin-left:22px}.classification-block .select-type{height:32px;line-height:32px;margin-bottom:8px;margin-right:8px;position:relative;width:100px}.classification-block .select-type .title{align-items:center;border:1px solid #d5d5d5;border-radius:4px;box-sizing:border-box;color:#969696;cursor:pointer;display:flex;font-size:12px;height:100%;justify-content:space-between;padding:0 8px;width:100%}.classification-block .select-type .title>.name{color:#212121;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .select-type .main-wrapper{background-color:#fff;border:1px solid #d5d5d5;border-radius:4px;min-width:270px;position:absolute;top:39px;width:100%;z-index:3000}.classification-block .select-type .main-wrapper::-webkit-scrollbar{width:5px}.classification-block .select-type .tree{margin:0;max-height:300px;overflow:auto;padding:32px 0}.classification-block .select-type .tree .tree-item{border-bottom:1px solid #d5d5d5;cursor:pointer;line-height:32px}.classification-block .select-type .tree .tree-item.tree-header{align-items:center;background-color:#fff;box-sizing:border-box;display:flex;height:40px;padding:0 10px;position:absolute;top:0;width:100%;z-index:1}.classification-block .select-type .tree .tree-item .tree-footer{align-items:center;color:rgba(0,0,0,.6);display:flex}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon{align-items:center;cursor:pointer;display:flex}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon .n-icon{margin-right:6px}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon:first-child{margin-right:16px}.classification-block .select-type .tree .tree-item .parent{align-items:center;display:flex;font-weight:600;justify-content:space-between;padding:0 10px}.classification-block .select-type .tree .tree-item .parent.open{background-color:#f2f2f2;border-bottom:1px solid #d5d5d5}.classification-block .select-type .tree .tree-item .header-item{border-bottom:1px solid transparent;color:rgba(0,0,0,.6);flex:1}.classification-block .select-type .tree .tree-item .header-item.selected,.classification-block .select-type .tree .tree-item .header-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .header-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children{align-items:center;display:flex;height:32px;line-height:32px;padding-left:23px;padding-right:10px}.classification-block .select-type .tree .tree-item .children .child-item{border-bottom:1px solid transparent;color:#7c7c7c;display:inline-block;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .select-type .tree .tree-item .children .child-item.child-header{padding:0 10px}.classification-block .select-type .tree .tree-item .children .child-item.header-item{border-bottom:1px solid transparent;color:rgba(0,0,0,.6)}.classification-block .select-type .tree .tree-item .children .child-item.header-item.selected,.classification-block .select-type .tree .tree-item .children .child-item.header-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .children .child-item.header-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children .child-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .children .child-item.selected{align-items:center;color:#2d7aff;display:flex;justify-content:space-between;width:100%}.classification-block .select-type .tree .tree-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .select-type .tree .tree-item:last-child{border-bottom:0}.classification-block .select-type .select-type-footer{align-items:center;background-color:#fff;border-top:1px solid #d5d5d5;bottom:0;display:flex;height:40px;justify-content:space-between;padding:0 12px;position:absolute;width:100%}.classification-block .select-type .select-type-footer .selected-num{color:rgba(0,0,0,.6)}.classification-block .select-type .select-type-footer .selected-item-del{color:#2474ff;cursor:pointer}
1
+ @font-face{font-family:classification-iconfont;src:url(classification-iconfont.ttf) format("truetype")}.iconfont-table-filter{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:classification-iconfont!important;font-size:14px;font-style:normal}.icon-table-filter-menzhenyishengzhananniuqingchu:before{content:"\e74e"}.icon-table-filter-menzhenyishengzhananniushanchu2:before{content:"\e757"}.icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi:before{content:"\e76e"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2:before{content:"\e778"}.icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua:before{content:"\e779"}.icon-table-filter-reset:before{content:"\e611"}.icon-table-filter-shaixuan:before{content:"\e64b"}.classification-modal-block .n-card-header .svg-wrap .iconfont-table-filter{cursor:pointer;font-size:18px}.classification-modal-block .n-card-header .svg-wrap .iconfont-table-filter:last-child{margin-left:16px}.classification-modal-block .n-card-header .svg-wrap .n-icon{cursor:pointer}.classification-modal-block .n-card__content{overflow-y:auto}.classification-modal-block .n-card__content .table-modal-list .list-title{background-color:#f2f2f4;border:1px solid #e1dfdf;display:flex;height:52px;line-height:52px}.classification-modal-block .n-card__content .table-modal-list .list-title .list-title-item{font-weight:700;width:25%}.classification-modal-block .n-card__content .table-modal-list .list-content{padding:0}.classification-modal-block .n-card__content .table-modal-list .list-content li{display:flex;height:52px;line-height:52px}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-item{align-items:center;display:flex;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:25%}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-item .n-icon{cursor:pointer;margin-right:8px}.classification-modal-block .n-card__content .table-modal-list .list-content li.checked,.classification-modal-block .n-card__content .table-modal-list .list-content li.checked .text{background-color:#f2f2f2}.classification-modal-block .n-card__content .table-modal-list .list-content li .text{background-color:#fff;display:inline-block;padding:0 10px;position:relative}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-line{position:relative;text-align:center;width:75%}.classification-modal-block .n-card__content .table-modal-list .list-content li .list-content-line:before{border:1px solid #e8e8e8;content:"";left:0;margin-top:20px;position:absolute;width:100%}.classification-modal-block .n-card__content .table-modal-list .list-title-item{margin-left:-1px;padding:0 10px}.classification-modal-block .n-card__content .table-modal-list .list-content-item{border-bottom:1px solid #e1dfdf;margin-left:-1px;margin-top:-1px;padding:0 10px}.classification-modal-block .n-card__content .table-modal-list .list-content-item .ant-switch{height:16px;min-width:28px;width:28px}.classification-modal-block .n-card__content .table-modal-list .list-content-item .ant-switch:after{height:12px;width:12px}.classification-modal-block .n-card__content .table-modal-list .list-content-radio,.classification-modal-block .n-card__content .table-modal-list .list-content-switch{text-align:center}.classification-modal-block .n-card__content .table-modal-list .anticon+.anticon{margin-left:8px}.classification-modal-block .n-card__content .class-filter-content .item-name{display:flex;height:32px;line-height:32px;margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .item-name .label{text-align:right;width:120px}.classification-modal-block .n-card__content .class-filter-content .item-name .addAction{align-items:center;cursor:pointer;display:flex}.classification-modal-block .n-card__content .class-filter-content .item-name .blue{color:#2d7aff;margin-right:8px}.classification-modal-block .n-card__content .class-filter-content .n-form-item-label{width:120px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content{align-items:center;display:flex;flex-wrap:wrap;line-height:32px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .label{display:inline-block;height:32px;line-height:32px;margin-bottom:10px;text-align:right;width:120px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .ant-btn-dashed{border-color:#a6a6a6;color:#a6a6a6}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag{margin-bottom:10px;margin-right:10px;position:relative}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .anticon-close{color:#2d7aff;cursor:pointer;line-height:36px;position:absolute;right:5px;top:2px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .s-content{align-items:center;background-color:rgba(45,122,255,.1);border:1px solid #2d7aff;border-radius:3px;box-sizing:border-box;color:#2d7aff;cursor:pointer;display:flex;justify-content:center;opacity:1;padding:0 10px;width:100px}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag .s-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .ant-input-disabled,.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .s-content{background-color:#2d7aff;color:#fff}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .edit-tag.edit-tag-select .anticon-close{color:#fff}.classification-modal-block .n-card__content .class-filter-content .quickSearch-content .ant-btn{margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list{border-top:1px solid #e6e6e6;margin-bottom:6px;margin-top:16px;padding-top:12px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li{align-items:center;display:flex;list-style:none;margin-bottom:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .index-span{display:inline-block;width:30px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .form-item{margin-right:10px;width:120px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .form-item.n-date-picker{width:auto}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .value-cfg_wrapper{display:flex;flex-wrap:wrap}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .value-cfg_wrapper .form-item{margin-right:10px}.classification-modal-block .n-card__content .class-filter-content .select-item-list li .delete-item-icon{color:red;cursor:pointer;font-size:18px}.classification-modal-block .n-card__footer{padding-top:10px}.classification-modal-block .n-card__footer .flex_between{display:flex;justify-content:space-between}.classification-modal-block .n-card__footer .flex_right{display:flex;justify-content:right}.classification-modal-block .n-card__footer .n-button{margin-left:8px}.classification-block .tree-type{border:1px solid #d5d5d5;border-radius:4px;height:100%;line-height:32px;margin-top:0;padding-bottom:80px;width:150px}.classification-block .tree-type .header{border-bottom:1px solid #e6eaef;display:flex;font-size:14px;justify-content:space-between;padding:0 10px}.classification-block .tree-type .header .header-1{align-items:center;cursor:pointer;display:flex}.classification-block .tree-type .tree{height:calc(100% - 32px);line-height:32px;margin:0;overflow:auto;padding-left:0}.classification-block .tree-type .tree::-webkit-scrollbar{width:5px}.classification-block .tree-type .tree .tree-item{border-bottom:1px solid #d5d5d5;cursor:pointer}.classification-block .tree-type .tree .tree-item.tree-header{box-sizing:border-box;padding:0 10px}.classification-block .tree-type .tree .tree-item .parent{align-items:center;display:flex;font-weight:600;justify-content:space-between;padding:0 10px}.classification-block .tree-type .tree .tree-item .parent.open{background-color:#f2f2f2;border-bottom:1px solid #d5d5d5}.classification-block .tree-type .tree .tree-item .header-item{box-sizing:border-box;line-height:1.4}.classification-block .tree-type .tree .tree-item .header-item.selected,.classification-block .tree-type .tree .tree-item .header-item:hover{color:#2d7aff}.classification-block .tree-type .tree .tree-item .header-item:active{border-color:transparent;color:#000}.classification-block .tree-type .tree .tree-item .children{align-items:center;display:flex;height:32px;padding-left:23px;padding-right:10px}.classification-block .tree-type .tree .tree-item .children .child-item{align-items:center;border-bottom:1px solid transparent;color:#7c7c7c;display:flex;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .tree-type .tree .tree-item .children .child-item:hover{color:#2d7aff}.classification-block .tree-type .tree .tree-item .children .child-item.selected{align-items:center;color:#2d7aff;display:flex;justify-content:space-between;width:100%}.classification-block .tree-type .tree .tree-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .tree-type .tree .tree-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .tree-type .tree .tree-item .children .child-item .child-item-content{align-items:center;display:flex}.classification-block .tree-type .tree .tree-item .children .child-item .child-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .tree-type .tree .tree-item .children .child-item .digital-span{flex:1;margin-left:5px;text-align:left}.classification-block .tree-type .tree .tree-item:last-child{border-bottom:none}.classification-block .tree-type .tree-type-footer{border-top:1px solid #d5d5d5;bottom:0;height:80px;line-height:20px;padding-left:16px;position:absolute;width:100%}.classification-block .tree-type .tree-type-footer .selected-num{margin:10px}.classification-block .tree-type .tree-type-footer .selected-item-del{align-items:center;color:#2474ff;cursor:pointer;display:flex;justify-content:center;margin-left:0}.classification-block .tile-type{border:1px solid #d5d5d5;border-radius:4px;margin-bottom:8px;padding:0 17px}.classification-block .tile-type .header{align-items:center;border-bottom:1px solid #d5d5d5;display:inline-flex;justify-content:space-between;line-height:44px;width:100%}.classification-block .tile-type .header .all-data{border-bottom:1px solid transparent;font-family:PingFangSC-Medium,PingFang SC;font-size:14px;font-weight:500;line-height:1.4;margin-right:auto}.classification-block .tile-type .header .all-data:hover{color:#2d7aff}.classification-block .tile-type .header .all-data:active{border-color:transparent;color:#000}.classification-block .tile-type .header .selected{color:#2d7aff}.classification-block .tile-type .header .right-setting{display:flex}.classification-block .tile-type .header .right-setting .setting-1{align-items:center;cursor:pointer;display:flex}.classification-block .tile-type .header .right-setting .setting-1 .n-icon{margin-right:6px}.classification-block .tile-type .header .right-setting .upack-up-btn{color:#2d7aff}.classification-block .tile-type .tile{border-bottom:1px solid #d5d5d5;margin:0;padding:9px 0}.classification-block .tile-type .tile .tile-item{cursor:pointer;display:flex;line-height:38px}.classification-block .tile-type .tile .tile-item .parent{box-sizing:border-box;font-family:PingFangSC-Medium,PingFang SC;font-size:14px;font-weight:600;max-width:135px;padding-right:16px;width:135px}.classification-block .tile-type .tile .tile-item .children{flex:1}.classification-block .tile-type .tile .tile-item .children .child-item{border-bottom:1px solid transparent;border-radius:4px;color:#7c7c7c;display:inline-block;font-size:14px;line-height:1.5;margin:0 5px;padding:1px 6px}.classification-block .tile-type .tile .tile-item .children .child-item.selected,.classification-block .tile-type .tile .tile-item .children .child-item:hover{background-color:rgba(45,122,255,.1);color:#2d7aff}.classification-block .tile-type .tile .tile-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .tile-type .tile .tile-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .tile-type .tile .tile-item .child-item.selected{color:#2d7aff}.classification-block .tile-type .selected-list{align-items:center;display:flex;padding:12px 6px}.classification-block .tile-type .selected-list .selected-num{font-size:14px;line-height:20px;margin-right:8px}.classification-block .tile-type .selected-list .selected-item{align-items:center;background-color:rgba(45,122,255,.1);border-radius:4px;color:#2d7aff;cursor:pointer;display:flex;margin-left:8px;padding:1px 8px}.classification-block .tile-type .selected-list .selected-item-del{align-items:center;color:#2474ff;cursor:pointer;display:flex;font-size:14px;line-height:20px;margin-left:22px}.classification-block .select-type{height:32px;line-height:32px;margin-bottom:8px;margin-right:8px;position:relative;width:100px}.classification-block .select-type .title{align-items:center;border:1px solid #d5d5d5;border-radius:4px;box-sizing:border-box;color:#969696;cursor:pointer;display:flex;font-size:12px;height:100%;justify-content:space-between;padding:0 8px;width:100%}.classification-block .select-type .title>.name{color:#212121;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .select-type .main-wrapper{background-color:#fff;border:1px solid #d5d5d5;border-radius:4px;min-width:270px;position:absolute;top:39px;width:100%;z-index:3000}.classification-block .select-type .main-wrapper::-webkit-scrollbar{width:5px}.classification-block .select-type .tree{margin:0;max-height:300px;overflow:auto;padding:32px 0}.classification-block .select-type .tree .tree-item{border-bottom:1px solid #d5d5d5;cursor:pointer;line-height:32px}.classification-block .select-type .tree .tree-item.tree-header{align-items:center;background-color:#fff;box-sizing:border-box;display:flex;height:40px;padding:0 10px;position:absolute;top:0;width:100%;z-index:1}.classification-block .select-type .tree .tree-item .tree-footer{align-items:center;color:rgba(0,0,0,.6);display:flex}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon{align-items:center;cursor:pointer;display:flex}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon .n-icon{margin-right:6px}.classification-block .select-type .tree .tree-item .tree-footer .tree-footer-icon:first-child{margin-right:16px}.classification-block .select-type .tree .tree-item .parent{align-items:center;display:flex;font-weight:600;justify-content:space-between;padding:0 10px}.classification-block .select-type .tree .tree-item .parent.open{background-color:#f2f2f2;border-bottom:1px solid #d5d5d5}.classification-block .select-type .tree .tree-item .header-item{border-bottom:1px solid transparent;color:rgba(0,0,0,.6);flex:1}.classification-block .select-type .tree .tree-item .header-item.selected,.classification-block .select-type .tree .tree-item .header-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .header-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children{align-items:center;display:flex;height:32px;line-height:32px;padding-left:23px;padding-right:10px}.classification-block .select-type .tree .tree-item .children .child-item{border-bottom:1px solid transparent;color:#7c7c7c;display:inline-block;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classification-block .select-type .tree .tree-item .children .child-item.child-header{padding:0 10px}.classification-block .select-type .tree .tree-item .children .child-item.header-item{border-bottom:1px solid transparent;color:rgba(0,0,0,.6)}.classification-block .select-type .tree .tree-item .children .child-item.header-item.selected,.classification-block .select-type .tree .tree-item .children .child-item.header-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .children .child-item.header-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children .child-item:hover{color:#2d7aff}.classification-block .select-type .tree .tree-item .children .child-item.selected{align-items:center;color:#2d7aff;display:flex;justify-content:space-between;width:100%}.classification-block .select-type .tree .tree-item .children .child-item:active{border-color:transparent;color:#000}.classification-block .select-type .tree .tree-item .children .child-item.disabled{color:rgba(0,0,0,.2)}.classification-block .select-type .tree .tree-item:last-child{border-bottom:0}.classification-block .select-type .select-type-footer{align-items:center;background-color:#fff;border-top:1px solid #d5d5d5;bottom:0;display:flex;height:40px;justify-content:space-between;padding:0 12px;position:absolute;width:100%}.classification-block .select-type .select-type-footer .selected-num{color:rgba(0,0,0,.6)}.classification-block .select-type .select-type-footer .selected-item-del{color:#2474ff;cursor:pointer}
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as t,ref as r,computed as a,openBlock as o,createBlock as s,unref as u,mergeProps as l,createSlots as i,renderList as n,withCtx as m,renderSlot as y,nextTick as f}from"vue";import{NDatePicker as p}from"naive-ui";import"../../../shared/utils/index.js";import"lodash-es";import{useDateTime as d}from"../../../shared/hooks/useDateTime.js";import v from"../../../_virtual/plugin-vue_export-helper.js";var c=v(e({__name:"DatePicker",setup(e,{expose:v}){const c=t(),_=r(null),h=r(null),k=a((()=>{const e=c.type||"";return["datetime","datetimerange"].includes(e)})),M=a((()=>{if(c.format)return c.format;const e=c.type||"";return k.value?"yyyy-MM-dd HH:mm:ss":"month"===e?"yyyy-MM":"year"===e?"yyyy":"yyyy-MM-dd"})),x=a((()=>k.value?M.value.split(" "):"")),{focus:P,blur:$}=d(_,M);function j(e){e&&k.value&&f((()=>{var e;h.value=null==(e=_.value)?void 0:e.panelInstRef,d(h,x)}))}return v({$datePicker:_,focus:P,blur:$}),(e,t)=>(o(),s(u(p),l({ref_key:"datePickerRef",ref:_},e.$attrs,{"onUpdate:show":j}),i({_:2},[n(e.$slots,((t,r)=>({name:r,fn:m((()=>[y(e.$slots,r)]))})))]),1040))}}),[["__file","DatePicker.vue"]]);export{c as default};
1
+ import{defineComponent as e,useAttrs as t,ref as r,computed as a,openBlock as o,createBlock as s,unref as u,mergeProps as l,createSlots as i,renderList as n,withCtx as m,renderSlot as y,nextTick as f}from"vue";import{NDatePicker as p}from"naive-ui";import"../../../shared/utils/index.js";import"lodash-es";import{useDateTime as d}from"../../../shared/hooks/useDateTime.js";import v from"../../../_virtual/plugin-vue_export-helper.js";var c=v(e({__name:"DatePicker",setup(e,{expose:v}){const c=t(),_=r(null),h=r(null),k=a((()=>{const e=Reflect.get(c,"type")||"";return["datetime","datetimerange"].includes(e)})),M=a((()=>{if(Reflect.get(c,"format"))return c.format;const e=c.type||"";return k.value?"yyyy-MM-dd HH:mm:ss":"month"===e?"yyyy-MM":"year"===e?"yyyy":"yyyy-MM-dd"})),g=a((()=>k.value?M.value.split(" "):"")),{focus:x,blur:P}=d(_,M,c);function R(e){e&&k.value&&f((()=>{var e;h.value=null==(e=_.value)?void 0:e.panelInstRef,d(h,g,c)}))}return v({$datePicker:_,focus:x,blur:P}),(e,t)=>(o(),s(u(p),l({ref_key:"datePickerRef",ref:_},e.$attrs,{"onUpdate:show":R}),i({_:2},[n(e.$slots,((t,r)=>({name:r,fn:m((()=>[y(e.$slots,r)]))})))]),1040))}}),[["__file","DatePicker.vue"]]);export{c as default};
@@ -3791,6 +3791,7 @@ declare const FormConfig: SFCWithInstall<import("vue").DefineComponent<{
3791
3791
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
3792
3792
  }>>;
3793
3793
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
3794
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
3794
3795
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
3795
3796
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
3796
3797
  formHeight: import("vue").ComputedRef<string>;
@@ -9710,6 +9711,7 @@ declare const FormConfig: SFCWithInstall<import("vue").DefineComponent<{
9710
9711
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
9711
9712
  }>>;
9712
9713
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
9714
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
9713
9715
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
9714
9716
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
9715
9717
  formHeight: import("vue").ComputedRef<string>;
@@ -3793,6 +3793,7 @@ declare const _default: import("vue").DefineComponent<{
3793
3793
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
3794
3794
  }>>;
3795
3795
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
3796
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
3796
3797
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
3797
3798
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
3798
3799
  formHeight: import("vue").ComputedRef<string>;
@@ -9712,6 +9713,7 @@ declare const _default: import("vue").DefineComponent<{
9712
9713
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
9713
9714
  }>>;
9714
9715
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
9716
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
9715
9717
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
9716
9718
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
9717
9719
  formHeight: import("vue").ComputedRef<string>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,provide as r,toRaw as t,openBlock as i,createElementBlock as a,normalizeStyle as n,unref as m,createElementVNode as s,createVNode as l,mergeProps as f,withCtx as u,createTextVNode as c}from"vue";import{useTheme as d}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import{cloneDeep as p,isArray as g,isFunction as v}from"lodash-es";import{uuidGenerator as h}from"../../../shared/utils/index.js";import _ from"../../../shared/components/VueDraggable/src/vuedraggable.js";import C from"./components/FormConfigCreator.vue.js";import j from"./components/FormConfigDragDisplay.vue.js";import x from"./components/FormConfigEdit.vue.js";import y from"./components/FormConfigMaterialItem.js";import{useDataNormalize as F}from"./hooks/useDataNormalize.js";import{InjectionFieldList as V,InjectionMaterialList as b,InjectionActiveFieldItem as k,FORM_CONFIG_GROUP as D}from"./constants/index.js";import"@vicons/ionicons5";import"naive-ui";import R from"../../../_virtual/plugin-vue_export-helper.js";import"./utils/index.js";import{useSortableConfig as E}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const H=["id"],I={class:"form-config__material"},L=s("header",{class:"form-config__materialHeader"},"物料区",-1),N={class:"form-config__displayWrapper"},O={class:"form-config__displayHeader"},S={class:"form-config__config"},T=s("header",{class:"form-config__configHeader"},"配置区",-1),A={class:"form-config__configContent"};var B=R(e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object}},setup(e,{expose:R}){const B=e,M=h(),U=d(),{getCommonConfig:w}=E(),z=o([]);r(V,z);const W=o([]);function q(e){z.value.some((o=>o.key===e.key))||z.value.push(e)}r(b,W);const G=(e,o)=>v(B.textFormatter)?B.textFormatter(e,o):o,J=o();r(k,J);const K=o(),{transform:P,inverseTransform:Q}=F(B);return R({loadData({fieldList:e}){let o=[],r=[];e.forEach((e=>function(e){"LINE_BAR"===e.type&&(e.children=[]);!1===e.show?r.push(e):o.push(e),"COMBINATION"===e.type&&g(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}(p(t(e))))),z.value=P(o),W.value=r,J.value=void 0},validate(){var e;return null==(e=K.value)?void 0:e.validate()},getData:()=>({fieldList:Q(p(t(z.value))),materialList:Q(p(t(W.value)))})}),(o,r)=>(i(),a("section",{class:"form-config",style:n({"--max-height":e.maxHeight,...m(U)}),id:m(M)},[s("section",I,[L,l(m(_),f(m(w)(),{class:"form-config__materialContent",modelValue:W.value,"onUpdate:modelValue":r[0]||(r[0]=e=>W.value=e)}),{item:u((({element:e})=>[l(m(y),{"form-config-item":e,"text-formatter":G},null,8,["form-config-item"])])),_:1},16,["modelValue"])]),s("section",N,[s("header",O,[c(" 布局区 "),l(C,{onSubmit:q})]),l(j,{class:"form-config__displayContent",group:m(D),"text-formatter":G,modelValue:z.value,"onUpdate:modelValue":r[1]||(r[1]=e=>z.value=e)},null,8,["group","modelValue"])]),s("section",S,[T,s("section",A,[l(x,{ref_key:"formConfigEditRef",ref:K,uuid:m(M),"form-render-ref":e.formRenderRef},null,8,["uuid","form-render-ref"])])])],12,H))}}),[["__file","FormConfig.vue"]]);export{B as default};
1
+ import{defineComponent as e,ref as o,provide as r,toRaw as t,openBlock as i,createElementBlock as a,normalizeStyle as n,unref as m,createElementVNode as s,createVNode as l,mergeProps as f,withCtx as u,createTextVNode as c}from"vue";import{useTheme as d}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as p,isArray as g,isFunction as v}from"lodash-es";import{uuidGenerator as h}from"../../../shared/utils/index.js";import _ from"../../../shared/components/VueDraggable/src/vuedraggable.js";import C from"./components/FormConfigCreator.vue.js";import j from"./components/FormConfigDragDisplay.vue.js";import x from"./components/FormConfigEdit.vue.js";import y from"./components/FormConfigMaterialItem.js";import{useDataNormalize as F}from"./hooks/useDataNormalize.js";import{InjectionFieldList as V,InjectionMaterialList as b,InjectionActiveFieldItem as k,FORM_CONFIG_GROUP as D}from"./constants/index.js";import"@vicons/ionicons5";import"naive-ui";import R from"../../../_virtual/plugin-vue_export-helper.js";import"./utils/index.js";import{useSortableConfig as E}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const H=["id"],I={class:"form-config__material"},L=s("header",{class:"form-config__materialHeader"},"物料区",-1),N={class:"form-config__displayWrapper"},O={class:"form-config__displayHeader"},S={class:"form-config__config"},T=s("header",{class:"form-config__configHeader"},"配置区",-1),A={class:"form-config__configContent"};var B=R(e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object}},setup(e,{expose:R}){const B=e,M=h(),U=d(),{getCommonConfig:w}=E(),z=o([]);r(V,z);const W=o([]);function q(e){z.value.some((o=>o.key===e.key))||z.value.push(e)}r(b,W);const G=(e,o)=>v(B.textFormatter)?B.textFormatter(e,o):o,J=o();r(k,J);const K=o(),{transform:P,inverseTransform:Q}=F(B);return R({loadData({fieldList:e}){let o=[],r=[];e.forEach((e=>function(e){"LINE_BAR"===e.type&&(e.children=[]);!1===e.show?r.push(e):o.push(e),"COMBINATION"===e.type&&g(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}(p(t(e))))),z.value=P(o),W.value=r,J.value=void 0},validate(){var e;return null==(e=K.value)?void 0:e.validate()},getData:()=>({fieldList:Q(p(t(z.value))),materialList:Q(p(t(W.value)))})}),(o,r)=>(i(),a("section",{class:"form-config",style:n({"--max-height":e.maxHeight,...m(U)}),id:m(M)},[s("section",I,[L,l(m(_),f(m(w)(),{class:"form-config__materialContent",modelValue:W.value,"onUpdate:modelValue":r[0]||(r[0]=e=>W.value=e)}),{item:u((({element:e})=>[l(m(y),{"form-config-item":e,"text-formatter":G},null,8,["form-config-item"])])),_:1},16,["modelValue"])]),s("section",N,[s("header",O,[c(" 布局区 "),l(C,{onSubmit:q})]),l(j,{class:"form-config__displayContent",group:m(D),"text-formatter":G,modelValue:z.value,"onUpdate:modelValue":r[1]||(r[1]=e=>z.value=e)},null,8,["group","modelValue"])]),s("section",S,[T,s("section",A,[l(x,{ref_key:"formConfigEditRef",ref:K,uuid:m(M),"form-render-ref":e.formRenderRef},null,8,["uuid","form-render-ref"])])])],12,H))}}),[["__file","FormConfig.vue"]]);export{B as default};
@@ -282,6 +282,7 @@ declare const _default: import("vue").DefineComponent<{}, {
282
282
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
283
283
  }>>;
284
284
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
285
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
285
286
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
286
287
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
287
288
  formHeight: import("vue").ComputedRef<string>;
@@ -5357,6 +5357,7 @@ declare const _default: import("vue").DefineComponent<{
5357
5357
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
5358
5358
  }>>;
5359
5359
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
5360
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
5360
5361
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
5361
5362
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
5362
5363
  formHeight: import("vue").ComputedRef<string>;
@@ -269,6 +269,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
269
269
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
270
270
  }>>;
271
271
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
272
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
272
273
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
273
274
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
274
275
  formHeight: import("vue").ComputedRef<string>;
@@ -263,6 +263,7 @@ declare const _default: import("vue").DefineComponent<{
263
263
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
264
264
  }>>;
265
265
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
266
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
266
267
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
267
268
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
268
269
  formHeight: import("vue").ComputedRef<string>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,openBlock as i,createBlock as l,unref as n,withCtx as m,createElementBlock as p,createVNode as u,isRef as d,Fragment as c,renderList as f,createCommentVNode as h,createElementVNode as y,normalizeStyle as j,withKeys as g,withModifiers as v,toDisplayString as b,renderSlot as k}from"vue";import{createForm as F,onFieldValueChange as x,onFieldMount as C,onFieldUnmount as H,onFieldReact as S,onFormMount as A}from"@formily/core";import{FormProvider as R,FormConsumer as L}from"@formily/vue";import{isNumber as _,cloneDeep as O}from"lodash-es";import{NForm as w,NTabs as B,NTabPane as V,NConfigProvider as I}from"naive-ui";import{InjectionFormGraph as N}from"./constants/index.js";import{useAutoHidden as D}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as q}from"./hooks/useComplexOptions.js";import{useFormDomEvent as U,useFormExposeEvent as W}from"./hooks/useFormEvent.js";import{useFormGraph as G}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as K}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeReactions as M}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as T}from"./hooks/useNuiThemeOverrides.js";import"./utils/index.js";import{useFieldListAdaptor as E}from"./hooks/useFieldListAdaptor.js";import"../../../shared/utils/index.js";import"@vueuse/core";import"../index.js";import{useFieldVisitor as P}from"./hooks/useFieldVisitor.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{validateMessageLocale as J}from"./hooks/useFormValidator.js";import"date-fns";import{useAnchor as $}from"./hooks/useAnchor.js";import{useFormContext as z}from"./hooks/useFormContext.js";import"./hooks/useFormRenderOptions.js";import Q from"../../../_virtual/plugin-vue_export-helper.js";import{createObjSchema as X}from"./utils/schema.js";const Y={key:0,style:{height:"54px"}},Z={style:{"white-space":"pre"}};var ee=Q(e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},linebarAutoHidden:{type:Boolean}},emits:["formChange","annotationChange","scroll"],setup(e,{expose:Q,emit:ee}){const oe=e,{nuiThemeOverrides:te}=T();J();const re=o(),se=t((()=>_(oe.maxHeight)?oe.maxHeight+"px":oe.maxHeight)),{SchemaField:ae,businessCollector:ie,formItemDepsCollector:le,changeContextCollector:ne,formUUID:me}=z(oe,ee),{anchorBarRef:pe,currentAnchor:ue,generateAnchorList:de,updateAnchorList:ce,anchorIdList:fe,onScroll:he}=$(oe,ee,re,le);K(oe).callLifeCycle("onSetup");const{trigger:ye}=D(),{observeFormGraph:je,setGraph:ge,removeGraph:ve}=G();r(N,je);const be=F({initialValues:oe.initialData,effects(e){x("*",(o=>{const t=o.props.name.toString();ie.trigger(e,t),le.trigger(t),ee("formChange",{fieldInstance:o,fieldKey:t,fieldName:o.title,value:o.value,context:ne.getContext(t,o.value)}),ke(t,o.value)})),C("*",ge),H("*",ve),oe.linebarAutoHidden&&(S("*",ye),A((e=>e.query("*").forEach(ye)))),oe.anchor&&(S("*",ce),A(de))}}),{lowCodeReactionsHandler:ke,triggerAllReactionsHandler:Fe}=M(t((()=>oe.lowCodeReactions)),be);s(Fe);const{schemaAdaptor:xe}=E(ie);let Ce=oe.fieldList||[];const He=t((()=>oe.schema?oe.schema:oe.fieldList?(Ce=P().traverse(O(oe.fieldList),oe.fieldVisitor),X(xe(Ce))):X({}))),{onKeydown:Se}=U({formModel:be,formRenderRef:re,props:oe}),{clearSpan:Ae}=q();a((()=>Ae(me)));const Re=W({formModel:be,formRenderRef:re,formItemDepsCollector:le,getFieldList:()=>Ce,formUUID:me});return Q({formModel:be,validate:(e="*")=>Re.validate(e),getFormValues:(e=!0)=>Re.getFormValues(e),setFormValues:(e,o=!0)=>Re.setFormValues(e,o),setFieldState(e,o){Re.setFieldState(e,o)},resetFields(e="*"){Re.resetFields(e)},queryWidget:async e=>Re.queryWidget(e),getFieldList:()=>Ce,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(i(),l(n(w),{class:"form-render","require-mark-placement":"left"},{default:m((()=>[e.anchor?(i(),p("section",Y,[u(n(B),{value:n(ue),"onUpdate:value":t[0]||(t[0]=e=>d(ue)?ue.value=e:null),type:"line",ref_key:"anchorBarRef",ref:pe},{default:m((()=>[(i(!0),p(c,null,f(n(fe),(e=>(i(),l(n(V),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):h("v-if",!0),u(n(I),{"theme-overrides":n(te)},{default:m((()=>[y("section",{class:"form-render__wrapper",style:j({"--column":e.column,"--form-height":n(se)}),ref_key:"formRenderRef",ref:re,onScroll:t[1]||(t[1]=(...e)=>n(he)&&n(he)(...e)),onKeydownCapture:t[2]||(t[2]=g(v(((...e)=>n(Se)&&n(Se)(...e)),["prevent"]),["enter"]))},[u(n(R),{form:n(be)},{default:m((()=>[u(n(ae),{schema:n(He)},null,8,["schema"]),e.consumer?(i(),l(n(L),{key:0},{default:m((({form:e})=>[y("div",Z,b(JSON.stringify(e.values,null,2)),1)])),_:1})):h("v-if",!0),k(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3}))}}),[["__file","FormRender.vue"]]);export{ee as default};
1
+ import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,openBlock as i,createBlock as l,unref as n,normalizeStyle as m,withCtx as p,createElementBlock as u,createVNode as d,isRef as c,Fragment as f,renderList as h,createCommentVNode as y,createElementVNode as j,withKeys as g,withModifiers as v,toDisplayString as b,renderSlot as k}from"vue";import{useTheme as F}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as x,cloneDeep as C}from"lodash-es";import{createForm as H,onFieldValueChange as S,onFieldMount as A,onFieldUnmount as R,onFieldReact as L,onFormMount as _}from"@formily/core";import{FormProvider as O,FormConsumer as w}from"@formily/vue";import{NForm as B,NTabs as V,NTabPane as I,NConfigProvider as N}from"naive-ui";import{InjectionFormGraph as D}from"./constants/index.js";import{useAutoHidden as q}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as U}from"./hooks/useComplexOptions.js";import{useFormDomEvent as W,useFormExposeEvent as G}from"./hooks/useFormEvent.js";import{useFormGraph as T}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as K}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeReactions as M}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as E}from"./hooks/useNuiThemeOverrides.js";import"./utils/index.js";import{useFieldListAdaptor as P}from"./hooks/useFieldListAdaptor.js";import"../../../shared/utils/index.js";import"../index.js";import{useFieldVisitor as J}from"./hooks/useFieldVisitor.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{validateMessageLocale as $}from"./hooks/useFormValidator.js";import{useAnchor as z}from"./hooks/useAnchor.js";import{useFormContext as Q}from"./hooks/useFormContext.js";import"./hooks/useFormRenderOptions.js";import X from"../../../_virtual/plugin-vue_export-helper.js";import{createObjSchema as Y}from"./utils/schema.js";const Z={key:0,style:{height:"54px"}},ee={style:{"white-space":"pre"}};var oe=X(e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},linebarAutoHidden:{type:Boolean}},emits:["formChange","annotationChange","scroll"],setup(e,{expose:X,emit:oe}){const te=e,re=F(),{nuiThemeOverrides:se}=E();$();const ae=o(),ie=t((()=>x(te.maxHeight)?te.maxHeight+"px":te.maxHeight)),{SchemaField:le,businessCollector:ne,formItemDepsCollector:me,changeContextCollector:pe,formUUID:ue}=Q(te,oe),{anchorBarRef:de,currentAnchor:ce,generateAnchorList:fe,updateAnchorList:he,anchorIdList:ye,onScroll:je}=z(te,oe,ae,me);K(te).callLifeCycle("onSetup");const{trigger:ge}=q(),{observeFormGraph:ve,setGraph:be,removeGraph:ke}=T();r(D,ve);const Fe=H({initialValues:te.initialData,effects(e){S("*",(o=>{const t=o.props.name.toString();ne.trigger(e,t),me.trigger(t),oe("formChange",{fieldInstance:o,fieldKey:t,fieldName:o.title,value:o.value,context:pe.getContext(t,o.value)}),xe(t,o.value)})),A("*",be),R("*",ke),te.linebarAutoHidden&&(L("*",ge),_((e=>e.query("*").forEach(ge)))),te.anchor&&(L("*",he),_(fe))}}),{lowCodeReactionsHandler:xe,triggerAllReactionsHandler:Ce}=M(t((()=>te.lowCodeReactions)),Fe);s(Ce);const{schemaAdaptor:He}=P(ne);let Se=te.fieldList||[];const Ae=t((()=>te.schema?te.schema:te.fieldList?(Se=J().traverse(C(te.fieldList),te.fieldVisitor),Y(He(Se))):Y({}))),{onKeydown:Re}=W({formModel:Fe,formRenderRef:ae,props:te}),{clearSpan:Le}=U();a((()=>Le(ue)));const _e=G({formModel:Fe,formRenderRef:ae,formItemDepsCollector:me,getFieldList:()=>Se,formUUID:ue});return X({formModel:Fe,validate:(e="*")=>_e.validate(e),getFormValues:(e=!0)=>_e.getFormValues(e),setFormValues:(e,o=!0)=>_e.setFormValues(e,o),setFieldState(e,o){_e.setFieldState(e,o)},resetFields(e="*"){_e.resetFields(e)},queryWidget:async e=>_e.queryWidget(e),getFieldList:()=>Se,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(i(),l(n(B),{class:"form-render","require-mark-placement":"left",style:m(n(re))},{default:p((()=>[e.anchor?(i(),u("section",Z,[d(n(V),{value:n(ce),"onUpdate:value":t[0]||(t[0]=e=>c(ce)?ce.value=e:null),type:"line",ref_key:"anchorBarRef",ref:de},{default:p((()=>[(i(!0),u(f,null,h(n(ye),(e=>(i(),l(n(I),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):y("v-if",!0),d(n(N),{"theme-overrides":n(se)},{default:p((()=>[j("section",{class:"form-render__wrapper",style:m({"--column":e.column,"--form-height":n(ie)}),ref_key:"formRenderRef",ref:ae,onScroll:t[1]||(t[1]=(...e)=>n(je)&&n(je)(...e)),onKeydownCapture:t[2]||(t[2]=g(v(((...e)=>n(Re)&&n(Re)(...e)),["prevent"]),["enter"]))},[d(n(O),{form:n(Fe)},{default:p((()=>[d(n(le),{schema:n(Ae)},null,8,["schema"]),e.consumer?(i(),l(n(w),{key:0},{default:p((({form:e})=>[j("div",ee,b(JSON.stringify(e.values,null,2)),1)])),_:1})):y("v-if",!0),k(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},8,["style"]))}}),[["__file","FormRender.vue"]]);export{oe as default};
@@ -267,6 +267,7 @@ declare const _default: import("vue").DefineComponent<{}, {
267
267
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
268
268
  }>>;
269
269
  emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
270
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
270
271
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
271
272
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
272
273
  formHeight: import("vue").ComputedRef<string>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,watch as r,inject as i,createVNode as n}from"vue";import{isObjectField as a}from"@formily/core";import{RecursionField as m,connect as l}from"@formily/vue";import{AddCircleOutline as s,RemoveCircle as u}from"@vicons/ionicons5";import{isNumber as p,isArray as c,range as d}from"lodash-es";import{NButton as f,NIcon as v}from"naive-ui";import"../../../index.js";import{InjectionBusinessCollector as y}from"../../constants/index.js";import"../../utils/index.js";import{useFormField as x}from"../../hooks/useFormField.js";import{useFieldListAdaptor as h}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as b}from"../../utils/schema.js";const _=l(e({name:"FormCombination",props:{title:{type:String,default:""},value:{type:Array},maxGroupNum:{type:Number},disabled:{type:Boolean},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e){const{field:l,fieldKey:_}=x(),j=o(1),C=t((()=>p(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));function g(){j.value++}r((()=>e.value),(e=>{c(e)&&(j.value=Math.min(Math.max(e.length,1),C.value))}),{immediate:!0});const k=i(y),{schemaAdaptor:F}=h(k);return()=>n("section",{class:"form-render__combination"},[n("header",{class:"form-render__combinationHeader"},[n("div",{class:"form-render__combinationHeaderText"},[e.title]),n(f,{onClick:g,text:!0,style:{"--n-text-color":"var(--primary-color)"},disabled:j.value>=C.value||e.disabled},{icon:()=>n(v,{component:s},null),default:()=>"新增"})]),d(j.value).map(((o,t)=>n("section",{class:"form-render__combinationContent"},[n(m,{schema:b(F(e.getProperties())),name:t},null),n(f,{text:!0,type:"error",class:"form-render__combinationClose",onClick:()=>async function(e){if(j.value>1)j.value--,await l.value.remove(e);else{const o=l.value.query(`${_.value}.${e}`).take();if(!o||!a(o))return;await o.reset()}}(t)},{icon:()=>n(v,{component:u},null)})])))])}}));export{_ as COMBINATION};
1
+ import{defineComponent as e,ref as o,computed as t,watch as r,inject as i,createVNode as n}from"vue";import{isObjectField as a}from"@formily/core";import{RecursionField as m,connect as l}from"@formily/vue";import{AddCircleOutline as s,RemoveCircle as u}from"@vicons/ionicons5";import{isNumber as c,isArray as p,range as d}from"lodash-es";import{NButton as f,NIcon as v}from"naive-ui";import"../../../index.js";import{InjectionBusinessCollector as y}from"../../constants/index.js";import"../../utils/index.js";import{useFormField as x}from"../../hooks/useFormField.js";import{useFieldListAdaptor as h}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as b}from"../../utils/schema.js";const _=l(e({name:"FormCombination",props:{title:{type:String,default:""},value:{type:Array},maxGroupNum:{type:Number},disabled:{type:Boolean},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e){const{field:l,fieldKey:_}=x(),j=o(1),C=t((()=>c(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));function g(){j.value++}r((()=>e.value),(e=>{p(e)&&(j.value=Math.min(Math.max(e.length,1),C.value))}),{immediate:!0});const k=i(y),{schemaAdaptor:F}=h(k);return()=>n("section",{class:"form-render__combination"},[n("header",{class:"form-render__combinationHeader"},[n("div",{class:"form-render__combinationHeaderText"},[e.title]),n(f,{onClick:g,text:!0,style:{"--n-text-color":"var(--c-primary-color)"},disabled:j.value>=C.value||e.disabled},{icon:()=>n(v,{component:s},null),default:()=>"新增"})]),d(j.value).map(((o,t)=>n("section",{class:"form-render__combinationContent"},[n(m,{schema:b(F(e.getProperties())),name:t},null),n(f,{text:!0,type:"error",class:"form-render__combinationClose",onClick:()=>async function(e){if(j.value>1)j.value--,await l.value.remove(e);else{const o=l.value.query(`${_.value}.${e}`).take();if(!o||!a(o))return;await o.reset()}}(t)},{icon:()=>n(v,{component:u},null)})])))])}}));export{_ as COMBINATION};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,watch as r,onMounted as n,createVNode as i}from"vue";import{isField as l}from"@formily/core";import{Path as a}from"@formily/path";import{AddCircleOutline as u,RemoveCircle as s}from"@vicons/ionicons5";import{isNumber as m,range as c,isArray as p,isEqual as f}from"lodash-es";import{useDeepValidate as v}from"./hooks/useDeepValidate.js";import{formRenderLog as d,mergeDeepProperties as h}from"../../../utils/index.js";import{connect as y,mapProps as g}from"@formily/vue";import{useDebounceFn as b,isObject as x}from"@vueuse/core";import{NButton as N,NIcon as _}from"naive-ui";import C from"../../../FormRender.vue.js";import{assignUpdateValue as j}from"../../../utils/schema.js";const F=y(e({name:"FormJsonCombination",props:{title:{type:String,default:""},value:{type:[String,Array]},maxGroupNum:{type:Number},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e,{emit:y}){d("当前COMBINATION控件为json模式,推荐使用非json模式,FieldItem.jsonCombination=false");const g=b((function(){y("update:value",JSON.stringify(j.value))}),300),j=o([]),F=t((()=>j.value.length));function I(o,t=!1){p(o)&&(o.length||o.push({}),o=JSON.stringify(o));const r=function(e){try{if(!e)return null;const o=JSON.parse(e);return Array.isArray(o)?o:null}catch(e){return null}}(o);var n;(n=r)&&!f(n,j.value)&&(r.splice(A.value),r.forEach((function(o,r){if(!x(o))return;j.value[r]=o,t&&h(o,e.getProperties())})),j.value.splice(r.length),j.value.forEach(J))}r((()=>e.value),(e=>I(e))),n((()=>{I(e.value||"[{}]",!0),g()}));const S=o([]);function J(e,o){var t;null==(t=S.value[o])||t.setFieldState("*",(o=>{l(o)&&(o.value=a.getIn(e,o.path))}))}function O(){j.value.push(h({},e.getProperties())),g()}v().bindDeepValidate(S);const A=t((()=>m(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));r(A,(e=>{F.value<=e||(j.value.splice(e),g(),S.value.splice(e))}),{immediate:!0});const G=C;return()=>i("section",{class:"form-render__combination"},[i("header",{class:"form-render__combinationHeader"},[i("div",{class:"form-render__combinationHeaderText"},[e.title]),i(N,{onClick:O,style:{"--n-text-color":"var(--primary-color)"},text:!0,disabled:F.value>=A.value},{icon:()=>i(_,{component:u},null),default:()=>"新增"})]),c(F.value).map(((o,t)=>i("section",{class:"form-render__combinationContentJson"},[i(G,{ref:e=>function(e,o){S.value[e]=o,J(j.value[e]||{},e)}(t,e),fieldList:e.getProperties(),onFormChange:e=>function(e,{fieldKey:o,value:t}){!j.value[e]&&(j.value[e]={}),a.setIn(j.value[e],o,t),g()}(t,e)},null),i(N,{text:!0,class:"form-render__combinationClose",type:"error",onClick:()=>function(e){j.value.length>1?(j.value.splice(e,1),S.value.splice(e,1)):j.value.splice(e,1,{}),g()}(t)},{icon:()=>i(_,{component:s},null)})])))])}}),g(j));export{F as JSON_COMBINATION};
1
+ import{defineComponent as e,ref as o,computed as t,watch as r,onMounted as n,createVNode as i}from"vue";import{isField as l}from"@formily/core";import{Path as a}from"@formily/path";import{AddCircleOutline as u,RemoveCircle as s}from"@vicons/ionicons5";import{isNumber as m,range as c,isArray as p,isEqual as f}from"lodash-es";import{useDeepValidate as v}from"./hooks/useDeepValidate.js";import{formRenderLog as d,mergeDeepProperties as h}from"../../../utils/index.js";import{connect as y,mapProps as g}from"@formily/vue";import{useDebounceFn as b,isObject as x}from"@vueuse/core";import{NButton as N,NIcon as _}from"naive-ui";import C from"../../../FormRender.vue.js";import{assignUpdateValue as j}from"../../../utils/schema.js";const F=y(e({name:"FormJsonCombination",props:{title:{type:String,default:""},value:{type:[String,Array]},maxGroupNum:{type:Number},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e,{emit:y}){d("当前COMBINATION控件为json模式,推荐使用非json模式,FieldItem.jsonCombination=false");const g=b((function(){y("update:value",JSON.stringify(j.value))}),300),j=o([]),F=t((()=>j.value.length));function I(o,t=!1){p(o)&&(o.length||o.push({}),o=JSON.stringify(o));const r=function(e){try{if(!e)return null;const o=JSON.parse(e);return Array.isArray(o)?o:null}catch(e){return null}}(o);var n;(n=r)&&!f(n,j.value)&&(r.splice(A.value),r.forEach((function(o,r){if(!x(o))return;j.value[r]=o,t&&h(o,e.getProperties())})),j.value.splice(r.length),j.value.forEach(J))}r((()=>e.value),(e=>I(e))),n((()=>{I(e.value||"[{}]",!0),g()}));const S=o([]);function J(e,o){var t;null==(t=S.value[o])||t.setFieldState("*",(o=>{l(o)&&(o.value=a.getIn(e,o.path))}))}function O(){j.value.push(h({},e.getProperties())),g()}v().bindDeepValidate(S);const A=t((()=>m(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));r(A,(e=>{F.value<=e||(j.value.splice(e),g(),S.value.splice(e))}),{immediate:!0});const G=C;return()=>i("section",{class:"form-render__combination"},[i("header",{class:"form-render__combinationHeader"},[i("div",{class:"form-render__combinationHeaderText"},[e.title]),i(N,{onClick:O,style:{"--n-text-color":"var(--c-primary-color)"},text:!0,disabled:F.value>=A.value},{icon:()=>i(_,{component:u},null),default:()=>"新增"})]),c(F.value).map(((o,t)=>i("section",{class:"form-render__combinationContentJson"},[i(G,{ref:e=>function(e,o){S.value[e]=o,J(j.value[e]||{},e)}(t,e),fieldList:e.getProperties(),onFormChange:e=>function(e,{fieldKey:o,value:t}){!j.value[e]&&(j.value[e]={}),a.setIn(j.value[e],o,t),g()}(t,e)},null),i(N,{text:!0,class:"form-render__combinationClose",type:"error",onClick:()=>function(e){j.value.length>1?(j.value.splice(e,1),S.value.splice(e,1)):j.value.splice(e,1,{}),g()}(t)},{icon:()=>i(_,{component:s},null)})])))])}}),g(j));export{F as JSON_COMBINATION};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as a,inject as o,watch as r,createVNode as l,nextTick as n}from"vue";import{isEqual as i,isArray as u}from"lodash-es";import"../../../index.js";import{useCommonInjection as s}from"../../hooks/useCommonInjection.js";import{InjectionAsyncQueue as c,InjectionFormUUID as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import{NCascader as d}from"naive-ui";import"@vueuse/core";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"../../hooks/useFormValidator.js";import"@formily/core";import"date-fns";import"@formily/reactive";import{connect as v,mapProps as f}from"@formily/vue";import"@vue/shared";import"./index.js";import"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as h,assignUpdateValue as y,traverseDependKey as j}from"../../utils/schema.js";const b=v(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:v,emit:f}){const y=t(),{field:b,title:k}=m(),C=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:"text"})),g=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:"value"})),A=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");return Array.isArray(t)&&t.length?t.map((e=>e[C.value])).join(" / "):null}catch(e){return null}}));function S(e,t,a){f("update:value",a.map((function(e){return{...e,label:e[C.value],children:void 0,parent:void 0}})))}const F=o(c);async function w(t){e.filterable?await async function(){if(!e.urlConfig||y.value&&e.requestCache)return;const t=await F.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:k.value,cache:e.requestCache});function a(e,t){const o={[C.value]:e[C.value],[g.value]:e[g.value],depth:t+1,isLeaf:!0};return u(e.children)&&(o.children=e.children.map((e=>a(e,t+1))),o.isLeaf=!e.children.length),o}y.value=t.map((e=>a(e,0)))}():await async function(t){if(r(e,t))return;const a=await F.addAsync(l(s(t),u(e),k.value,t));if(!a.length&&t)return t.isLeaf=!0,S(0,0,n(t)),void(K.value=!1);const o=a.map((e=>i(e,s(t))));function r(e,t){return!u(e)||!t&&y.value&&e.requestCache||s(t)>=s(e)-1}function l(t,a,o,r){const l={lvlnr:t+1+""};return r&&a.dependKey&&j(a.dependKey,((e,t)=>{l[t]=r[e]})),{params:l,...a,key:o,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 i(a,o){return{[C.value]:a[C.value],[g.value]:a[g.value],depth:o+1,parent:t,isLeaf:o+2>=s(e)}}function u(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=o:y.value=o}(t),await x()}const H=`form-render__cascade--menu-${o(p)}`;async function x(){await n();const e=document.querySelector(`.${H} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}const{injectValueValidate:L,injectValueWatchFromEmpty:q,injectValueBindKey:B}=s();q((()=>e.value),w),L((()=>e.value)),r((()=>e.urlConfig),(async(e,t)=>{i(e,t)||(y.value=null,await w())}));const K=t(!1);function V(e){K.value=!!e,e&&w()}const E=a((()=>y.value||e.options||[])),O=a((()=>!e.filterable)),W=B(A);return()=>l(d,{key:W.value,remote:O.value,filterable:e.filterable,"menu-props":{class:H,onClick:x},checkStrategy:"child",show:!!K.value,"onUpdate:show":V,value:A.value,"onUpdate:value":S,labelField:C.value,valueField:g.value,options:E.value,onLoad:w,onFocus:h(b)},v)}}),f({dataSource:"options"},y));export{b as SEARCH_CASCADER};
1
+ import{defineComponent as e,ref as t,computed as a,inject as o,watch as r,createVNode as l,nextTick as n}from"vue";import{isEqual as i,isArray as u}from"lodash-es";import"../../../index.js";import{useCommonInjection as s}from"../../hooks/useCommonInjection.js";import{InjectionAsyncQueue as c,InjectionFormUUID as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import{NCascader as d}from"naive-ui";import"@vueuse/core";import"date-fns";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"../../hooks/useFormValidator.js";import"@formily/core";import"@formily/reactive";import{connect as v,mapProps as f}from"@formily/vue";import"@vue/shared";import"./index.js";import"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as h,assignUpdateValue as y,traverseDependKey as j}from"../../utils/schema.js";const b=v(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:v,emit:f}){const y=t(),{field:b,title:k}=m(),C=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:"text"})),g=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:"value"})),A=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");return Array.isArray(t)&&t.length?t.map((e=>e[C.value])).join(" / "):null}catch(e){return null}}));function S(e,t,a){f("update:value",a.map((function(e){return{...e,label:e[C.value],children:void 0,parent:void 0}})))}const F=o(c);async function w(t){e.filterable?await async function(){if(!e.urlConfig||y.value&&e.requestCache)return;const t=await F.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:k.value,cache:e.requestCache});function a(e,t){const o={[C.value]:e[C.value],[g.value]:e[g.value],depth:t+1,isLeaf:!0};return u(e.children)&&(o.children=e.children.map((e=>a(e,t+1))),o.isLeaf=!e.children.length),o}y.value=t.map((e=>a(e,0)))}():await async function(t){if(r(e,t))return;const a=await F.addAsync(l(s(t),u(e),k.value,t));if(!a.length&&t)return t.isLeaf=!0,S(0,0,n(t)),void(K.value=!1);const o=a.map((e=>i(e,s(t))));function r(e,t){return!u(e)||!t&&y.value&&e.requestCache||s(t)>=s(e)-1}function l(t,a,o,r){const l={lvlnr:t+1+""};return r&&a.dependKey&&j(a.dependKey,((e,t)=>{l[t]=r[e]})),{params:l,...a,key:o,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 i(a,o){return{[C.value]:a[C.value],[g.value]:a[g.value],depth:o+1,parent:t,isLeaf:o+2>=s(e)}}function u(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=o:y.value=o}(t),await x()}const H=`form-render__cascade--menu-${o(p)}`;async function x(){await n();const e=document.querySelector(`.${H} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}const{injectValueValidate:L,injectValueWatchFromEmpty:q,injectValueBindKey:B}=s();q((()=>e.value),w),L((()=>e.value)),r((()=>e.urlConfig),(async(e,t)=>{i(e,t)||(y.value=null,await w())}));const K=t(!1);function V(e){K.value=!!e,e&&w()}const E=a((()=>y.value||e.options||[])),O=a((()=>!e.filterable)),W=B(A);return()=>l(d,{key:W.value,remote:O.value,filterable:e.filterable,"menu-props":{class:H,onClick:x},checkStrategy:"child",show:!!K.value,"onUpdate:show":V,value:A.value,"onUpdate:value":S,labelField:C.value,valueField:g.value,options:E.value,onLoad:w,onFocus:h(b)},v)}}),f({dataSource:"options"},y));export{b as SEARCH_CASCADER};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as o,inject as t,ref as a,createVNode as r}from"vue";import{useDebounceFn as l}from"@vueuse/core";import{cloneDeep as s,isString as i}from"lodash-es";import{useCommonInjection as n,useSelectOptionProps as u}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../../index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import{NSelect as c}from"naive-ui";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"../../hooks/useFormValidator.js";import"@formily/core";import"date-fns";import"@formily/reactive";import{connect as d,mapProps as y}from"@formily/vue";import"@vue/shared";import"./index.js";import{useUrlConfigOptions as v,useAutographOptions as f,useRecommendOptions as h,searchContentMatcher as j}from"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as b,assignUpdateValue as k,assignClearBindVisited as S}from"../../utils/schema.js";const g=d(e({name:"FormSelect",props:{value:{type:[String,Array]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},allowCreate:Boolean,urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},recommendNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1}},emits:["update:value","postRecommend"],setup(e,{slots:d,emit:y}){const k=o({get:()=>e.value,async set(e){y("update:value",e),C(e)}}),{labelKey:S,valueKey:g,fetchData:A,fullOptions:F,filterOptions:H}=e.urlConfig?v(e,k):f(e,k),{getRecommend:B,postRecommend:C,sortedOptions:x}=h(e,H,y,S,g),{field:O,fieldKey:R}=m();t(p).setContext(R.value,(e=>{return{currentOption:s((o=e,F.value.find((e=>e[g.value]===o))))};var o}));const L=a(""),V=l((async(e="")=>{L.value=e,A(e),B(e)}),300),{injectValueValidate:w,injectValueWatchFromEmpty:K,injectValueBindKey:P}=n();K(k,V),w(k);const W=P(k),{menuProps:q,nodeProps:I}=u();function N(e){const o=e[S.value];if(!o||!i(o))return"";const t=j(L.value,o);return t?r("section",null,[t.map(((e,o)=>0!==o&&e?r("span",{style:{color:o%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):o}const U=o((()=>x.value.length||!e.allowCreate?x.value:L.value?[{[S.value]:L.value,[g.value]:L.value},...x.value]:x.value));return()=>r(c,{key:W.value,remote:!0,filterable:!0,value:k.value,"onUpdate:value":e=>k.value=e,"menu-props":q,"node-props":I,labelField:S.value,valueField:g.value,options:U.value,onSearch:V,"onUpdate:show":e=>e&&V(),onFocus:b(O),renderLabel:N},d)}}),y({dataSource:"options"},k,S));export{g as SELECT};
1
+ import{defineComponent as e,computed as o,inject as t,ref as a,createVNode as r}from"vue";import{useDebounceFn as l}from"@vueuse/core";import{cloneDeep as s,isString as i}from"lodash-es";import{useCommonInjection as n,useSelectOptionProps as u}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../../index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import{NSelect as c}from"naive-ui";import"date-fns";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"../../hooks/useFormValidator.js";import"@formily/core";import"@formily/reactive";import{connect as d,mapProps as y}from"@formily/vue";import"@vue/shared";import"./index.js";import{useUrlConfigOptions as v,useAutographOptions as f,useRecommendOptions as h,searchContentMatcher as j}from"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as b,assignUpdateValue as k,assignClearBindVisited as S}from"../../utils/schema.js";const g=d(e({name:"FormSelect",props:{value:{type:[String,Array]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},allowCreate:Boolean,urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},recommendNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1}},emits:["update:value","postRecommend"],setup(e,{slots:d,emit:y}){const k=o({get:()=>e.value,async set(e){y("update:value",e),C(e)}}),{labelKey:S,valueKey:g,fetchData:A,fullOptions:F,filterOptions:H}=e.urlConfig?v(e,k):f(e,k),{getRecommend:B,postRecommend:C,sortedOptions:x}=h(e,H,y,S,g),{field:O,fieldKey:R}=m();t(p).setContext(R.value,(e=>{return{currentOption:s((o=e,F.value.find((e=>e[g.value]===o))))};var o}));const L=a(""),V=l((async(e="")=>{L.value=e,A(e),B(e)}),300),{injectValueValidate:w,injectValueWatchFromEmpty:K,injectValueBindKey:P}=n();K(k,V),w(k);const W=P(k),{menuProps:q,nodeProps:I}=u();function N(e){const o=e[S.value];if(!o||!i(o))return"";const t=j(L.value,o);return t?r("section",null,[t.map(((e,o)=>0!==o&&e?r("span",{style:{color:o%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):o}const U=o((()=>x.value.length||!e.allowCreate?x.value:L.value?[{[S.value]:L.value,[g.value]:L.value},...x.value]:x.value));return()=>r(c,{key:W.value,remote:!0,filterable:!0,value:k.value,"onUpdate:value":e=>k.value=e,"menu-props":q,"node-props":I,labelField:S.value,valueField:g.value,options:U.value,onSearch:V,"onUpdate:show":e=>e&&V(),onFocus:b(O),renderLabel:N},d)}}),y({dataSource:"options"},k,S));export{g as SELECT};