cnhis-design-vue 3.2.6-beta.11 → 3.2.6-beta.13

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 (47) hide show
  1. package/README.md +87 -87
  2. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  3. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  4. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  5. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  6. package/es/components/button-print/src/utils/print.js +1 -1
  7. package/es/components/field-set/src/FieldColor.vue.d.ts +1 -1
  8. package/es/components/field-set/src/FieldFilter.vue.d.ts +1 -1
  9. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  10. package/es/components/field-set/src/components/Row.vue.d.ts +1 -1
  11. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  12. package/es/components/form-config/src/utils/index.d.ts +1 -0
  13. package/es/components/form-config/src/utils/index.js +1 -1
  14. package/es/components/iho-table/src/plugins/keyboardEventPlugin.js +1 -1
  15. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  16. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  17. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  18. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  19. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  20. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  21. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  22. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  23. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  24. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  25. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  26. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  27. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  28. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  29. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  30. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  31. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  32. package/es/shared/assets/img/failure.png.js +1 -1
  33. package/es/shared/assets/img/no-permission.png.js +1 -1
  34. package/es/shared/assets/img/nodata.png.js +1 -1
  35. package/es/shared/assets/img/notfound.png.js +1 -1
  36. package/es/shared/assets/img/qr.png.js +1 -1
  37. package/es/shared/assets/img/success.png.js +1 -1
  38. package/es/shared/assets/img/table_style_2.png.js +1 -1
  39. package/es/shared/assets/img/video.png.js +1 -1
  40. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  41. package/es/shared/assets/img/xb_big.png.js +1 -1
  42. package/es/shared/assets/img/xb_small.png.js +1 -1
  43. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  44. package/es/shared/package.json.js +1 -1
  45. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  46. package/es/shared/utils/tapable/index.d.ts +139 -0
  47. package/package.json +2 -2
package/README.md CHANGED
@@ -1,87 +1,87 @@
1
- # 安装
2
-
3
- ```shell
4
- npm i cnhis-design-vue@[版本号]
5
- # or
6
- yarn add cnhis-design-vue@[版本号] #推荐
7
- ```
8
-
9
- ## 1.全局引入
10
-
11
- ```typescript
12
- // main.ts
13
- import { createApp } from 'vue';
14
- import App from './App.vue';
15
- import 'cnhis-design-vue/es/packages/index.css';
16
- import cui from 'cnhis-design-vue';
17
-
18
- const app = createApp(App);
19
- app.use(cui).mount('#app');
20
- ```
21
-
22
- ## 2. 按需引入
23
-
24
- 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
-
26
- ### 2.1 样式处理方式1 (按需引入样式)
27
-
28
- ```shell
29
- # 安装自动导入样式的插件
30
- npm i -d vite-plugin-style-import
31
- ```
32
-
33
- ```typescript
34
- // vite.config.ts
35
- import { defineConfig } from 'vite';
36
- import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
-
38
- export default defineConfig({
39
- plugins: [
40
- // ...otherPlugins
41
- createStyleImportPlugin({
42
- libs: [
43
- {
44
- libraryName: 'cnhis-design-vue',
45
- esModule: true,
46
- ensureStyleFile: true,
47
- resolveStyle: name => {
48
- return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
- }
50
- }
51
- ]
52
- })
53
- ]
54
- });
55
- ```
56
-
57
- ### 2.2 样式处理方式2 (全局引入样式)
58
-
59
- ```typescript
60
- // main.ts
61
- import 'cnhis-design-vue/es/components/index.css';
62
- ```
63
-
64
- ## 3.FAQ
65
-
66
- ### 3.1 项目打包后样式丢失
67
-
68
- 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
-
70
- ```typescript
71
- // vite.config.ts
72
- import { defineConfig } from 'vite';
73
-
74
- export default defineConfig({
75
- build: {
76
- rollupOptions: {
77
- // ..otherOptions
78
- output: {
79
- dir: './dist',
80
- manualChunks: {
81
- 'cnhis-vendor': ['cnhis-design-vue']
82
- }
83
- }
84
- }
85
- }
86
- });
87
- ```
1
+ # 安装
2
+
3
+ ```shell
4
+ npm i cnhis-design-vue@[版本号]
5
+ # or
6
+ yarn add cnhis-design-vue@[版本号] #推荐
7
+ ```
8
+
9
+ ## 1.全局引入
10
+
11
+ ```typescript
12
+ // main.ts
13
+ import { createApp } from 'vue';
14
+ import App from './App.vue';
15
+ import 'cnhis-design-vue/es/packages/index.css';
16
+ import cui from 'cnhis-design-vue';
17
+
18
+ const app = createApp(App);
19
+ app.use(cui).mount('#app');
20
+ ```
21
+
22
+ ## 2. 按需引入
23
+
24
+ 组件现在支持了自动按需引入, 但是样式文件需要额外的处理
25
+
26
+ ### 2.1 样式处理方式1 (按需引入样式)
27
+
28
+ ```shell
29
+ # 安装自动导入样式的插件
30
+ npm i -d vite-plugin-style-import
31
+ ```
32
+
33
+ ```typescript
34
+ // vite.config.ts
35
+ import { defineConfig } from 'vite';
36
+ import { createStyleImportPlugin } from 'vite-plugin-style-import';
37
+
38
+ export default defineConfig({
39
+ plugins: [
40
+ // ...otherPlugins
41
+ createStyleImportPlugin({
42
+ libs: [
43
+ {
44
+ libraryName: 'cnhis-design-vue',
45
+ esModule: true,
46
+ ensureStyleFile: true,
47
+ resolveStyle: name => {
48
+ return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
49
+ }
50
+ }
51
+ ]
52
+ })
53
+ ]
54
+ });
55
+ ```
56
+
57
+ ### 2.2 样式处理方式2 (全局引入样式)
58
+
59
+ ```typescript
60
+ // main.ts
61
+ import 'cnhis-design-vue/es/components/index.css';
62
+ ```
63
+
64
+ ## 3.FAQ
65
+
66
+ ### 3.1 项目打包后样式丢失
67
+
68
+ 处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
69
+
70
+ ```typescript
71
+ // vite.config.ts
72
+ import { defineConfig } from 'vite';
73
+
74
+ export default defineConfig({
75
+ build: {
76
+ rollupOptions: {
77
+ // ..otherOptions
78
+ output: {
79
+ dir: './dist',
80
+ manualChunks: {
81
+ 'cnhis-vendor': ['cnhis-design-vue']
82
+ }
83
+ }
84
+ }
85
+ }
86
+ });
87
+ ```
@@ -0,0 +1 @@
1
+ declare module 'bpmn-js/lib/Viewer';
@@ -0,0 +1 @@
1
+ declare module 'bpmn-js/lib/features/modeling';
@@ -0,0 +1 @@
1
+ declare module 'diagram-js/lib/navigation/movecanvas';
@@ -1 +1 @@
1
- import t from"axios";import{isArray as e}from"lodash-es";import{IdentityVerificationDialog as i,PreviewDialog as s}from"./dialog.js";import{getFileUrl as r,useBrowserPrint as n,isIReport as a}from"./browserPrint.js";import{getCurrentInstance as o}from"vue";import{uuidGenerator as l}from"../../../../shared/utils/index.js";import{format as c}from"date-fns";import{io as h}from"socket.io-client";const d=String(navigator.platform).toLowerCase().includes("linux"),m=t.create({timeout:6e4,withCredentials:!1}),p=`${window.location.protocol}//${window.location.host}`,u=`${p}/fdp-api/print/assembly/printIReport`,f=`${p}/bi-api/reprot/print/open/client/printIReportForBase64`,g=`${p}/bi-api/reprot/print/open/client/previewIReport`,w=`${p}/bi-api/reprot/print/open/client/getRemote`,y=`${p}/printService/file`;let v=null;class P{constructor(){var t,e,r;if(this.webview=null,this.dialog=new i,this.dialogPreview=new s,this.instance=null,this.downloadPath="",this.printOrigin="http://127.0.0.1:11111",this.isRemote=!1,this.CMonitor=null,this.queryServicesParams=null,this.isConnectHiPrint=!1,this.clientInfo=null,this.printerList=[],this.hiPrintSocket=null,this.base64Fragment="",this._successCallbackFn=null,this._errorCallbackFn=null,this._isHiprint=!1,this.messageHandlerQueue=[],this.getIReportFormatId=(t,e)=>t?e.split("_")[1]:e,v)return v;v=this,d&&this._isHiprint&&this._initDomesticSystem();const n=window;this.CMonitor=n.$CMonitor;try{this.webview=n.top?null==(t=n.top.chrome)?void 0:t.webview:null==(e=n.chrome)?void 0:e.webview}catch(t){console.log(t),this.webview=null==(r=n.chrome)?void 0:r.webview}if(this.webview){this.currentMessageHandler=this.messageHandler.bind(this),this.webview.addEventListener("message",this.currentMessageHandler);try{this.webview.postMessage({exec:"config",data:""})}catch(t){const e="当前浏览器版本不支持获取配置接口";this._handleMonitorNotify(e),console.log("非封装浏览器或者"+e)}}}messageHandler(t){var e;if(console.log("打印事件message",t),!t)return this._handleMonitorNotify("接收到空的浏览器事件,"+t),console.log("当前回执",t,"接收到空的浏览器事件");let i;try{i=JSON.parse(t.data||"{}")}catch(e){console.log("解析e.data失败,"+e),this._handleMonitorNotify("解析e.data失败,"+t)}if(["print","pdf","resetprint"].includes(null==i?void 0:i.cmd)){console.log("打印命令执行了",i);const e=this.messageHandlerQueue.shift();if(!e)return console.log("当前回执",t,"没有可用的handler");const{resolve:s,reject:r}=e;try{if("resetprint"===(null==i?void 0:i.cmd))return void s({result:(null==i?void 0:i.res)?"success":"fail"});s(i.res||"")}catch(t){r(t)}}else if("config"===(null==i?void 0:i.exec))this.downloadPath=(null==(e=i.res)?void 0:e.downloadpath)||"";else{const e=this.messageHandlerQueue.shift();if(!e)return console.log("当前回执11",t,"没有可用的handler11");const{resolve:i,reject:s}=e;s({message:"不支持当前命令"})}}_initDomesticSystem(){try{this.hiPrintSocket=h("http://127.0.0.1:17521",{reconnectionAttempts:3,transports:["websocket"],auth:{token:"no-use-vue-plugin-hiprint"}}),this.hiPrintSocket&&(this.hiPrintSocket.on("connect",(()=>{this.isConnectHiPrint=!0})),this.hiPrintSocket.on("disconnect",(()=>{this.isConnectHiPrint=!1,this.hiPrintSocket=null})),this.hiPrintSocket.on("clientInfo",(t=>{console.log("获取到客户端信息>>>>>",t),t.clientUrl&&(this.clientInfo=t)})),this.hiPrintSocket.on("printerList",(t=>{this.printerList=t,console.log("获取到打印机列表信息>>>>>",t)})),this.hiPrintSocket.on("success",(t=>{console.log("打印成功>>>>>",t),this.base64Fragment="",this._successCallbackFn&&this._successCallbackFn(t)})),this.hiPrintSocket.on("replayPrinterTemplate",(t=>{console.log("获取到数据的回复>>>>>",t),t&&this.hiPrintSocket.emit("news",t)})),this.hiPrintSocket.on("error",(t=>{console.log("打印失败>>>>>",t),this.base64Fragment="",this._errorCallbackFn&&this._errorCallbackFn(t)})))}catch(t){console.log("hiprint系统连接失败",t)}}async getPicAndUpload(t){try{const e=t=>"[object Object]"===Object.prototype.toString.call(t);if("success"===(null==t?void 0:t.result)&&"Y"==(null==t?void 0:t.uploadTemplateFlag)&&!(null==t?void 0:t.filebase64)&&this.queryServicesParams){const t=e(this.queryServicesParams.params)?this.queryServicesParams.params:JSON.parse(this.queryServicesParams.params);t.uploadTemplateFlag="Y",this.queryServicesParams.params=JSON.stringify(t),this.queryServicesParams.cmdid="7",this.queryServicesParams.print={print:1,type:6,zip:0},this.queryServicesParams.paramsArr=[{params:JSON.stringify(t)}];await this._queryBase64ServicesPrint(this.queryServicesParams)}}catch(t){console.log(t)}finally{this.queryServicesParams=null}}async postMessage(t,e=0){if(!this.webview)return Promise.reject();const i=l();return e&&e>0?this.messageCollectAndNotifyFail(i,t,e):this.messageCollect(i,t)}messageCollect(t,e){return new Promise(((i,s)=>{this.messageHandlerQueue.push({resolve:i,reject:s,id:t}),this.webview.postMessage(e)}))}messageCollectAndNotifyFail(t,e,i){return Promise.race([new Promise(((i,s)=>{this.messageHandlerQueue.push({resolve:i,reject:s,id:t}),this.webview.postMessage(e)})),new Promise(((e,s)=>{setTimeout((()=>{const e=this.messageHandlerQueue.findIndex((e=>e.id===t));e>-1&&this.messageHandlerQueue.splice(e,1),s({type:"timeout"})}),i)}))])}destroy(){}show(...t){return this.dialog.show(...t)}showPreview(...t){return this.dialogPreview.show(...t)}_testConnection(){return this.webview?Promise.resolve(!0):new Promise((t=>{m({url:`${this.printOrigin}/test`,method:"get",withCredentials:!1,params:{inputdata:{result:"success"}}}).then((({data:e})=>{"success"===e.result?t(!0):t(!1)})).catch((e=>{t(!1)}))}))}resetPrinter(t){return this.webview?this.postMessage({exec:"resetprint",data:{formatID:t}}):m({url:`${this.printOrigin}/services/printset`,method:"get",withCredentials:!1,params:{inputdata:t}}).then((({data:t})=>t))}_queryServicesPrint(e){return this.webview?this.postMessage({exec:"print",data:{inputData:e}},null==e?void 0:e.messageTimeout):t({url:this.printOrigin+"/services/print",method:"get",params:{inputData:JSON.stringify(e)}}).then((({data:t})=>t))}_queryBase64ServicesPrint(t){return this.webview?this.postMessage({exec:"print",data:{inputData:t}}):m({url:"/services/Printqueue",method:"get",params:{inputData:JSON.stringify(t)}}).then((({data:t})=>t))}_callPrintWithFile(t){const e={cmdid:"7",flag:"1"},i={inputData:JSON.stringify(Object.assign({},e,t))};return this.webview?this.postMessage({exec:"print",data:s(i)}):m({url:this.printOrigin+"/PrintLocal",method:"post",data:i,transformRequest:[s]}).then((({data:t})=>t));function s(t){let e="";for(const i in t)e+=encodeURIComponent(i)+"="+encodeURIComponent(t[i])+"&";return e=e.slice(0,-1),e}}_handleMonitorNotify(t){var e,i;null==(i=null==(e=this.CMonitor)?void 0:e.notify)||i.call(e,{name:"custom_info",message:t,businessName:"打印sdk"})}_handleResult(t,e,i){if(!t){const t="打印命令返回空数据";return this._handleMonitorNotify(""),null==e||e({type:"printError",message:t,result:!1,errinfo:t}),!1}if("success"!==t.result){const s=t.message||t.Message;this._handleMonitorNotify(s);const r={type:"printError",message:s,result:t.result,errinfo:t.errinfo};return"cancel"==t.result?(i&&i({type:"printCancel",message:s,result:t.result,errinfo:t.errinfo}),!1):(null==e||e(r),!1)}return t}_handleResultTest(t,e){return!!t||(console.log("notInstalledApp"),null==e||e({type:"notInstalledApp",message:"请打开打印服务器插件"}),!1)}async _handleEventQueryPrintData(t,e,i,s,r){const n={templateId:t,formatId:e,params:i,cmdid:"7",messageTimeout:s},a=await this._queryServicesPrint(n);return this._handleQueryPrintDataResult(a,e,r)}_handleQueryPrintDataResult(t,e,i){if(!(null==t?void 0:t.file)){try{const e=t.message||t.Message;console.log(e),null==i||i({type:"queryPrintDataFailure",message:e})}catch(t){console.log(t)}return!1}return{file:t.file,printerName:t.defprinter,pageCount:t.pagecount,formatId:e}}async _handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:r,print:n,signature:a,copies:o=1,printdlgshow:l="0",nobillnode:h="1",btnprint:d="1",messageTimeout:m=0}){const p={templateId:t,formatId:e,params:i,cmdid:r,nobillnode:h,printdlgshow:l,btnprint:d,copies:o,messageTimeout:m,...a?{signature:a}:{}};if(s&&(p.paramsArr=s),n){try{n=JSON.parse(n)}catch(t){}p.print=n}else if(this.isRemote){const t=c(new Date,"yyyyMMddHHmmss");p.print={print:"1",type:"1",zip:"0",filename:`F:\\WorkSpace\\crmweb\\web\\${t}\\${t}`}}return this.queryServicesParams=p,await this._queryServicesPrint(p)}async _handleEventEditFormat({templateId:t,formatId:e="",params:i="",token:s,messageTimeout:r=0}){const n={};let a={};try{a=Object.assign({},n,JSON.parse(i))}catch(t){a=n}const o={templateId:t,formatId:e,cmdid:"9",token:s,params:JSON.stringify(a),messageTimeout:r};return await this._queryServicesPrint(o)}async _queryProxyOrigin(){if(this.isRemote)return;const{data:t}=await m({method:"get",url:w})||{},{map:e={}}=t;e.isRemote&&(this.printOrigin=p+"/printService",this.isRemote=!0)}async _queryPrintFile(t,e=""){const{data:i}=await m({method:"post",url:u,responseType:"blob",params:{formatId:t.split("_")[1],params:e}})||{};return i}paramsSerializer(t){return Object.keys(t).forEach((e=>{const i=t[e];t[e]=i,"biParams"==e&&(t[e]=encodeURIComponent(i))})),t}async _queryPrintForBase64(t,e,i="",s){const r="object"==typeof i?i:JSON.parse(i),{data:n}=await m({method:"post",url:f,params:{id:t,formatId:e,params:this.paramsSerializer(r),authorizationKey:s}})||{};return n}async _queryPrintForPdf(t,e,i="",s){const r="object"==typeof i?i:JSON.parse(i),{data:n}=await m({method:"post",url:g,responseType:"blob",params:{id:t,formatId:e,params:this.paramsSerializer(r),authorizationKey:s}})||{};return n}async _browserPrint(t,e){if(this.isRemote){const{filedir:i}=t,s=JSON.parse(i)[0].replace(/\\/g,"/").split("/"),a=s[s.length-2],o=s[s.length-1],l=await r(`${y}/${a}/${o}`),c=n(null,e,l);if("preview"===e)return c}}_base64ToBlob(t,e){const i=window.atob(t);let s=i.length;const r=new Uint8Array(s);for(;s--;)r[s]=i.charCodeAt(s);return new Blob([r],{type:e})}async preview({templateId:t,formatId:e,params:i="",paramsArr:s,authorizationKey:r,signature:l,btnprint:c,messageTimeout:h=0},m,p){const u=a(e);if(e=this.getIReportFormatId(u,e),u&&d&&this._isHiprint){const s=await this._queryPrintForPdf(t,e,i,r);if(!s)return null==p?void 0:p("获取文件失败!");const a=n(s,"preview");return this.instance||(this.instance=o()),this.showPreview(this.instance,a),null==m?void 0:m({file:s})}await this._queryProxyOrigin();const f=await this._testConnection();if(!this._handleResultTest(f,p))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:this.isRemote?"7":"8",signature:l,btnprint:c,messageTimeout:h}),n=this._handleResult(r,p);if(!n)return!1;if(this.isRemote){const t=await this._browserPrint(n,"preview");this.instance||(this.instance=o()),this.showPreview(this.instance,t)}await this.getPicAndUpload(n),null==m||m(n)}catch(t){const e="预览失败",i="timeout"===(null==t?void 0:t.type)?{...t,message:e}:{message:e};null==p||p(i),this._handleMonitorNotify(i)}}async printSync(t,e,i){const s=t.map((t=>{const e={params:"",printdlgshow:"0",nobillnode:"1",btnprint:"1",...t,cmdid:"7",...t.signature?{signature:t.signature}:{}};if(e.print)try{e.print=JSON.parse(e.print)}catch(t){}return{inputData:e}}));try{const t=l(),r=await this.messageCollect(t,{exec:"printA",data:s});if(r&&Array.isArray(r)){r.some((t=>"success"===t.res.result))?null==e||e(r):(null==i||i(r),this._handleMonitorNotify(r))}else{const t="打印命令返回无效数据";this._handleMonitorNotify(r||""),null==i||i({type:"printError",message:t,result:!1,errinfo:t})}}catch(t){const e={error:t,message:"打印失败"};null==i||i(e),this._handleMonitorNotify(e)}}async printDirect({templateId:t,formatId:e,params:i="",paramsArr:s,authorizationKey:r,print:n,signature:o,printdlgshow:l,nobillnode:c,copies:h=1,isDownloadFile:m=!0,messageTimeout:p=0},u,f,g,w="printDirect"){const y=a(e);if(e=this.getIReportFormatId(y,e),y&&d&&this._isHiprint){if(!this.isConnectHiPrint)return void f({message:"请连接hiPrint客户端"});const s=await this._queryPrintForBase64(t,e,i,r);if(!s.success)return f({message:s.resultMsg});const{base64:n,formatId:a}=s.map;return this.base64Fragment=n,this._successCallbackFn=u,this._errorCallbackFn=f,void this.hiPrintSocket.emit("news",{printerList:this.printerList,type:"askPrinterTemplate",markTemplateId:a,pdf_stream:this.base64Fragment})}await this._queryProxyOrigin();const v=await this._testConnection();if(!this._handleResultTest(v,f))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:"7",print:n,signature:o,printdlgshow:l,nobillnode:c,copies:h,messageTimeout:p}),a=this._handleResult(r,f,g);if(!a)return!1;m&&["downloadPDF"].includes(w)&&await this._browserPrint(a,w),null==u||u(a)}catch(t){const e="printDirect"===w?"打印失败":"下载失败",i="timeout"===(null==t?void 0:t.type)?{...t,message:e}:{message:e};null==f||f(i),this._handleMonitorNotify(i)}}_downloadPDF(t){return this.webview?this.postMessage({exec:"pdf",data:{file:t}}):m.get(this.printOrigin+"/download",{params:{inputData:t}}).then((({data:t})=>t))}async downloadPDF(t,i,s){if(this.webview&&this.downloadPath&&(Reflect.has(t,"print")||Reflect.set(t,"print",{print:"1",type:"1"}),!t.print.filename)){const e=c(new Date,"yyyy-MM-dd"),i=l(),s=c(new Date,"yyyyMMddHHmmss")+i;t.print.filename=`${this.downloadPath}/${e}/${s}/${s}`.replace(/\\/g,"/")}const r=a(t.formatId);if(t.formatId=this.getIReportFormatId(r,t.formatId),r&&d&&this._isHiprint){const e=await this._queryPrintForPdf(t.templateId||"",t.formatId,t.params||"",t.authorizationKey);return e?(n(e,"downloadPDF"),i({file:e})):null==s?void 0:s("获取文件失败!")}this.printDirect(t,(async t=>{t||s(null);const r=this,n=await async function(t){const i=[],s=JSON.parse(t);if(!e(s))return await r._downloadPDF("");if(1===s.length)return await r._downloadPDF(s[0]||"");for(let t=0,e=s.length;t<e;t++)i.push(await r._downloadPDF(s[t]||""));return i}(t.filedir);i(n,t)}),(t=>s(t)),(t=>{console.log(t)}),"downloadPDF")}async print({templateId:t,formatId:e,params:i="",messageTimeout:s=0},r,n){const a=await this._testConnection();if(!this._handleResultTest(a,n))return!1;const o=await this.queryPrintData({templateId:t,formatId:e,params:i,messageTimeout:s},void 0,n);if(!o)return!1;const l=this.printFileData({formatId:e,file:o.file,printerName:o.printerName},void 0,n);if(!l)return!1;r&&r(l)}async queryPrintData({templateId:t,formatId:e,params:i="",messageTimeout:s=0},r,n){const a=await this._testConnection();if(!this._handleResultTest(a,n))return!1;const o=await this._handleEventQueryPrintData(t,e,i,s,n);return!!o&&(r&&r(o),o)}async printFileData({formatId:t,file:e,printerName:i="Default"},s,r){const n=await this._testConnection();if(!this._handleResultTest(n,r))return!1;const a=await this._callPrintWithFile({formatId:t,printname:i,file:e}),o=this._handleResult(a,r);return!!o&&(s&&s(o),o)}async editPrintFormat({templateId:t,formatId:e,params:i,token:s,messageTimeout:r=0},n,a){const o=await this._testConnection();if(!this._handleResultTest(o,a))return!1;const l=await this._handleEventEditFormat({templateId:t,formatId:e,params:i,token:s,messageTimeout:r}),c=this._handleResult(l,a);if(!c)return!1;n&&n(c)}async addPrintFormat({templateId:t,params:e,token:i},s,r){const n=await this._testConnection();if(!this._handleResultTest(n,r))return!1;const a=await this._handleEventEditFormat({templateId:t,params:e,token:i}),o=this._handleResult(a,r);if(!o)return!1;s&&s(o)}}export{P as Print};
1
+ import t from"axios";import{isArray as e}from"lodash-es";import{IdentityVerificationDialog as i,PreviewDialog as s}from"./dialog.js";import{getFileUrl as r,useBrowserPrint as n,isIReport as a}from"./browserPrint.js";import{getCurrentInstance as o}from"vue";import{uuidGenerator as l}from"../../../../shared/utils/index.js";import{format as c}from"date-fns";import{io as h}from"socket.io-client";const p=String(navigator.platform).toLowerCase().includes("linux"),d=t.create({timeout:6e4,withCredentials:!1}),m=`${window.location.protocol}//${window.location.host}`,u=`${m}/fdp-api/print/assembly/printIReport`,f=`${m}/bi-api/reprot/print/open/client/printIReportForBase64`,g=`${m}/bi-api/reprot/print/open/client/previewIReport`,w=`${m}/bi-api/reprot/print/open/client/getRemote`,y=`${m}/printService/file`;let v=null;class P{constructor(){var t,e,r;if(this.webview=null,this.dialog=new i,this.dialogPreview=new s,this.instance=null,this.downloadPath="",this.printOrigin="http://127.0.0.1:11111",this.isRemote=!1,this.CMonitor=null,this.queryServicesParams=null,this.isConnectHiPrint=!1,this.clientInfo=null,this.printerList=[],this.hiPrintSocket=null,this.base64Fragment="",this._successCallbackFn=null,this._errorCallbackFn=null,this._isHiprint=!1,this.messageHandlerQueue=[],this.getIReportFormatId=(t,e)=>t?e.split("_")[1]:e,v)return v;v=this,p&&this._isHiprint&&this._initDomesticSystem();const n=window;this.CMonitor=n.$CMonitor;try{this.webview=n.top?null==(t=n.top.chrome)?void 0:t.webview:null==(e=n.chrome)?void 0:e.webview}catch(t){console.log(t),this.webview=null==(r=n.chrome)?void 0:r.webview}if(this.webview){this.currentMessageHandler=this.messageHandler.bind(this),this.webview.addEventListener("message",this.currentMessageHandler);try{this.webview.postMessage({exec:"config",data:""})}catch(t){const e="当前浏览器版本不支持获取配置接口";this._handleMonitorNotify(e),console.log("非封装浏览器或者"+e)}}}messageHandler(t){var e;if(console.log("打印事件message",t),!t)return this._handleMonitorNotify("接收到空的浏览器事件,"+t),console.log("当前回执",t,"接收到空的浏览器事件");let i;try{i=JSON.parse(t.data||"{}")}catch(e){console.log("解析e.data失败,"+e),this._handleMonitorNotify("解析e.data失败,"+t)}if(["print","pdf","resetprint"].includes(null==i?void 0:i.cmd)){console.log("打印命令执行了",i);const e=this.messageHandlerQueue.shift();if(!e)return console.log("当前回执",t,"没有可用的handler");const{resolve:s,reject:r}=e;try{if("resetprint"===(null==i?void 0:i.cmd))return void s({result:(null==i?void 0:i.res)?"success":"fail"});s(i.res||"")}catch(t){r(t)}}else"config"===(null==i?void 0:i.exec)&&(this.downloadPath=(null==(e=i.res)?void 0:e.downloadpath)||"")}_initDomesticSystem(){try{this.hiPrintSocket=h("http://127.0.0.1:17521",{reconnectionAttempts:3,transports:["websocket"],auth:{token:"no-use-vue-plugin-hiprint"}}),this.hiPrintSocket&&(this.hiPrintSocket.on("connect",(()=>{this.isConnectHiPrint=!0})),this.hiPrintSocket.on("disconnect",(()=>{this.isConnectHiPrint=!1,this.hiPrintSocket=null})),this.hiPrintSocket.on("clientInfo",(t=>{console.log("获取到客户端信息>>>>>",t),t.clientUrl&&(this.clientInfo=t)})),this.hiPrintSocket.on("printerList",(t=>{this.printerList=t,console.log("获取到打印机列表信息>>>>>",t)})),this.hiPrintSocket.on("success",(t=>{console.log("打印成功>>>>>",t),this.base64Fragment="",this._successCallbackFn&&this._successCallbackFn(t)})),this.hiPrintSocket.on("replayPrinterTemplate",(t=>{console.log("获取到数据的回复>>>>>",t),t&&this.hiPrintSocket.emit("news",t)})),this.hiPrintSocket.on("error",(t=>{console.log("打印失败>>>>>",t),this.base64Fragment="",this._errorCallbackFn&&this._errorCallbackFn(t)})))}catch(t){console.log("hiprint系统连接失败",t)}}async getPicAndUpload(t){try{const e=t=>"[object Object]"===Object.prototype.toString.call(t);if("success"===(null==t?void 0:t.result)&&"Y"==(null==t?void 0:t.uploadTemplateFlag)&&!(null==t?void 0:t.filebase64)&&this.queryServicesParams){const t=e(this.queryServicesParams.params)?this.queryServicesParams.params:JSON.parse(this.queryServicesParams.params);t.uploadTemplateFlag="Y",this.queryServicesParams.params=JSON.stringify(t),this.queryServicesParams.cmdid="7",this.queryServicesParams.print={print:1,type:6,zip:0},this.queryServicesParams.paramsArr=[{params:JSON.stringify(t)}];await this._queryBase64ServicesPrint(this.queryServicesParams)}}catch(t){console.log(t)}finally{this.queryServicesParams=null}}async postMessage(t,e=0){if(!this.webview)return Promise.reject();const i=l();return e&&e>0?this.messageCollectAndNotifyFail(i,t,e):this.messageCollect(i,t)}messageCollect(t,e){return new Promise(((i,s)=>{this.messageHandlerQueue.push({resolve:i,reject:s,id:t}),this.webview.postMessage(e)}))}messageCollectAndNotifyFail(t,e,i){return Promise.race([new Promise(((i,s)=>{this.messageHandlerQueue.push({resolve:i,reject:s,id:t}),this.webview.postMessage(e)})),new Promise(((e,s)=>{setTimeout((()=>{const e=this.messageHandlerQueue.findIndex((e=>e.id===t));e>-1&&this.messageHandlerQueue.splice(e,1),s({type:"timeout"})}),i)}))])}destroy(){}show(...t){return this.dialog.show(...t)}showPreview(...t){return this.dialogPreview.show(...t)}_testConnection(){return this.webview?Promise.resolve(!0):new Promise((t=>{d({url:`${this.printOrigin}/test`,method:"get",withCredentials:!1,params:{inputdata:{result:"success"}}}).then((({data:e})=>{"success"===e.result?t(!0):t(!1)})).catch((e=>{t(!1)}))}))}resetPrinter(t){return this.webview?this.postMessage({exec:"resetprint",data:{formatID:t}}):d({url:`${this.printOrigin}/services/printset`,method:"get",withCredentials:!1,params:{inputdata:t}}).then((({data:t})=>t))}_queryServicesPrint(e){return this.webview?this.postMessage({exec:"print",data:{inputData:e}},null==e?void 0:e.messageTimeout):t({url:this.printOrigin+"/services/print",method:"get",params:{inputData:JSON.stringify(e)}}).then((({data:t})=>t))}_queryBase64ServicesPrint(t){return this.webview?this.postMessage({exec:"print",data:{inputData:t}}):d({url:"/services/Printqueue",method:"get",params:{inputData:JSON.stringify(t)}}).then((({data:t})=>t))}_callPrintWithFile(t){const e={cmdid:"7",flag:"1"},i={inputData:JSON.stringify(Object.assign({},e,t))};return this.webview?this.postMessage({exec:"print",data:s(i)}):d({url:this.printOrigin+"/PrintLocal",method:"post",data:i,transformRequest:[s]}).then((({data:t})=>t));function s(t){let e="";for(const i in t)e+=encodeURIComponent(i)+"="+encodeURIComponent(t[i])+"&";return e=e.slice(0,-1),e}}_handleMonitorNotify(t){var e,i;null==(i=null==(e=this.CMonitor)?void 0:e.notify)||i.call(e,{name:"custom_info",message:t,businessName:"打印sdk"})}_handleResult(t,e,i){if(!t){const t="打印命令返回空数据";return this._handleMonitorNotify(""),null==e||e({type:"printError",message:t,result:!1,errinfo:t}),!1}if("success"!==t.result){const s=t.message||t.Message;this._handleMonitorNotify(s);const r={type:"printError",message:s,result:t.result,errinfo:t.errinfo};return"cancel"==t.result?(i&&i({type:"printCancel",message:s,result:t.result,errinfo:t.errinfo}),!1):(null==e||e(r),!1)}return t}_handleResultTest(t,e){return!!t||(console.log("notInstalledApp"),null==e||e({type:"notInstalledApp",message:"请打开打印服务器插件"}),!1)}async _handleEventQueryPrintData(t,e,i,s,r){const n={templateId:t,formatId:e,params:i,cmdid:"7",messageTimeout:s},a=await this._queryServicesPrint(n);return this._handleQueryPrintDataResult(a,e,r)}_handleQueryPrintDataResult(t,e,i){if(!(null==t?void 0:t.file)){try{const e=t.message||t.Message;console.log(e),null==i||i({type:"queryPrintDataFailure",message:e})}catch(t){console.log(t)}return!1}return{file:t.file,printerName:t.defprinter,pageCount:t.pagecount,formatId:e}}async _handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:r,print:n,signature:a,copies:o=1,printdlgshow:l="0",nobillnode:h="1",btnprint:p="1",messageTimeout:d=0}){const m={templateId:t,formatId:e,params:i,cmdid:r,nobillnode:h,printdlgshow:l,btnprint:p,copies:o,messageTimeout:d,...a?{signature:a}:{}};if(s&&(m.paramsArr=s),n){try{n=JSON.parse(n)}catch(t){}m.print=n}else if(this.isRemote){const t=c(new Date,"yyyyMMddHHmmss");m.print={print:"1",type:"1",zip:"0",filename:`F:\\WorkSpace\\crmweb\\web\\${t}\\${t}`}}return this.queryServicesParams=m,await this._queryServicesPrint(m)}async _handleEventEditFormat({templateId:t,formatId:e="",params:i="",token:s,messageTimeout:r=0}){const n={};let a={};try{a=Object.assign({},n,JSON.parse(i))}catch(t){a=n}const o={templateId:t,formatId:e,cmdid:"9",token:s,params:JSON.stringify(a),messageTimeout:r};return await this._queryServicesPrint(o)}async _queryProxyOrigin(){if(this.isRemote)return;const{data:t}=await d({method:"get",url:w})||{},{map:e={}}=t;e.isRemote&&(this.printOrigin=m+"/printService",this.isRemote=!0)}async _queryPrintFile(t,e=""){const{data:i}=await d({method:"post",url:u,responseType:"blob",params:{formatId:t.split("_")[1],params:e}})||{};return i}paramsSerializer(t){return Object.keys(t).forEach((e=>{const i=t[e];t[e]=i,"biParams"==e&&(t[e]=encodeURIComponent(i))})),t}async _queryPrintForBase64(t,e,i="",s){const r="object"==typeof i?i:JSON.parse(i),{data:n}=await d({method:"post",url:f,params:{id:t,formatId:e,params:this.paramsSerializer(r),authorizationKey:s}})||{};return n}async _queryPrintForPdf(t,e,i="",s){const r="object"==typeof i?i:JSON.parse(i),{data:n}=await d({method:"post",url:g,responseType:"blob",params:{id:t,formatId:e,params:this.paramsSerializer(r),authorizationKey:s}})||{};return n}async _browserPrint(t,e){if(this.isRemote){const{filedir:i}=t,s=JSON.parse(i)[0].replace(/\\/g,"/").split("/"),a=s[s.length-2],o=s[s.length-1],l=await r(`${y}/${a}/${o}`),c=n(null,e,l);if("preview"===e)return c}}_base64ToBlob(t,e){const i=window.atob(t);let s=i.length;const r=new Uint8Array(s);for(;s--;)r[s]=i.charCodeAt(s);return new Blob([r],{type:e})}async preview({templateId:t,formatId:e,params:i="",paramsArr:s,authorizationKey:r,signature:l,btnprint:c,messageTimeout:h=0},d,m){const u=a(e);if(e=this.getIReportFormatId(u,e),u&&p&&this._isHiprint){const s=await this._queryPrintForPdf(t,e,i,r);if(!s)return null==m?void 0:m("获取文件失败!");const a=n(s,"preview");return this.instance||(this.instance=o()),this.showPreview(this.instance,a),null==d?void 0:d({file:s})}await this._queryProxyOrigin();const f=await this._testConnection();if(!this._handleResultTest(f,m))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:this.isRemote?"7":"8",signature:l,btnprint:c,messageTimeout:h}),n=this._handleResult(r,m);if(!n)return!1;if(this.isRemote){const t=await this._browserPrint(n,"preview");this.instance||(this.instance=o()),this.showPreview(this.instance,t)}await this.getPicAndUpload(n),null==d||d(n)}catch(t){const e="预览失败",i="timeout"===(null==t?void 0:t.type)?{...t,message:e}:{message:e};null==m||m(i),this._handleMonitorNotify(i)}}async printSync(t,e,i){const s=t.map((t=>{const e={params:"",printdlgshow:"0",nobillnode:"1",btnprint:"1",...t,cmdid:"7",...t.signature?{signature:t.signature}:{}};if(e.print)try{e.print=JSON.parse(e.print)}catch(t){}return{inputData:e}}));try{const t=l(),r=await this.messageCollect(t,{exec:"printA",data:s});if(r&&Array.isArray(r)){r.some((t=>"success"===t.res.result))?null==e||e(r):(null==i||i(r),this._handleMonitorNotify(r))}else{const t="打印命令返回无效数据";this._handleMonitorNotify(r||""),null==i||i({type:"printError",message:t,result:!1,errinfo:t})}}catch(t){const e={error:t,message:"打印失败"};null==i||i(e),this._handleMonitorNotify(e)}}async printDirect({templateId:t,formatId:e,params:i="",paramsArr:s,authorizationKey:r,print:n,signature:o,printdlgshow:l,nobillnode:c,copies:h=1,isDownloadFile:d=!0,messageTimeout:m=0},u,f,g,w="printDirect"){const y=a(e);if(e=this.getIReportFormatId(y,e),y&&p&&this._isHiprint){if(!this.isConnectHiPrint)return void f({message:"请连接hiPrint客户端"});const s=await this._queryPrintForBase64(t,e,i,r);if(!s.success)return f({message:s.resultMsg});const{base64:n,formatId:a}=s.map;return this.base64Fragment=n,this._successCallbackFn=u,this._errorCallbackFn=f,void this.hiPrintSocket.emit("news",{printerList:this.printerList,type:"askPrinterTemplate",markTemplateId:a,pdf_stream:this.base64Fragment})}await this._queryProxyOrigin();const v=await this._testConnection();if(!this._handleResultTest(v,f))return!1;try{const r=await this._handleEventDirect({templateId:t,formatId:e,params:i,paramsArr:s,cmdid:"7",print:n,signature:o,printdlgshow:l,nobillnode:c,copies:h,messageTimeout:m}),a=this._handleResult(r,f,g);if(!a)return!1;d&&["downloadPDF"].includes(w)&&await this._browserPrint(a,w),null==u||u(a)}catch(t){const e="printDirect"===w?"打印失败":"下载失败",i="timeout"===(null==t?void 0:t.type)?{...t,message:e}:{message:e};null==f||f(i),this._handleMonitorNotify(i)}}_downloadPDF(t){return this.webview?this.postMessage({exec:"pdf",data:{file:t}}):d.get(this.printOrigin+"/download",{params:{inputData:t}}).then((({data:t})=>t))}async downloadPDF(t,i,s){if(this.webview&&this.downloadPath&&(Reflect.has(t,"print")||Reflect.set(t,"print",{print:"1",type:"1"}),!t.print.filename)){const e=c(new Date,"yyyy-MM-dd"),i=l(),s=c(new Date,"yyyyMMddHHmmss")+i;t.print.filename=`${this.downloadPath}/${e}/${s}/${s}`.replace(/\\/g,"/")}const r=a(t.formatId);if(t.formatId=this.getIReportFormatId(r,t.formatId),r&&p&&this._isHiprint){const e=await this._queryPrintForPdf(t.templateId||"",t.formatId,t.params||"",t.authorizationKey);return e?(n(e,"downloadPDF"),i({file:e})):null==s?void 0:s("获取文件失败!")}this.printDirect(t,(async t=>{t||s(null);const r=this,n=await async function(t){const i=[],s=JSON.parse(t);if(!e(s))return await r._downloadPDF("");if(1===s.length)return await r._downloadPDF(s[0]||"");for(let t=0,e=s.length;t<e;t++)i.push(await r._downloadPDF(s[t]||""));return i}(t.filedir);i(n,t)}),(t=>s(t)),(t=>{console.log(t)}),"downloadPDF")}async print({templateId:t,formatId:e,params:i="",messageTimeout:s=0},r,n){const a=await this._testConnection();if(!this._handleResultTest(a,n))return!1;const o=await this.queryPrintData({templateId:t,formatId:e,params:i,messageTimeout:s},void 0,n);if(!o)return!1;const l=this.printFileData({formatId:e,file:o.file,printerName:o.printerName},void 0,n);if(!l)return!1;r&&r(l)}async queryPrintData({templateId:t,formatId:e,params:i="",messageTimeout:s=0},r,n){const a=await this._testConnection();if(!this._handleResultTest(a,n))return!1;const o=await this._handleEventQueryPrintData(t,e,i,s,n);return!!o&&(r&&r(o),o)}async printFileData({formatId:t,file:e,printerName:i="Default"},s,r){const n=await this._testConnection();if(!this._handleResultTest(n,r))return!1;const a=await this._callPrintWithFile({formatId:t,printname:i,file:e}),o=this._handleResult(a,r);return!!o&&(s&&s(o),o)}async editPrintFormat({templateId:t,formatId:e,params:i,token:s,messageTimeout:r=0},n,a){const o=await this._testConnection();if(!this._handleResultTest(o,a))return!1;const l=await this._handleEventEditFormat({templateId:t,formatId:e,params:i,token:s,messageTimeout:r}),c=this._handleResult(l,a);if(!c)return!1;n&&n(c)}async addPrintFormat({templateId:t,params:e,token:i},s,r){const n=await this._testConnection();if(!this._handleResultTest(n,r))return!1;const a=await this._handleEventEditFormat({templateId:t,params:e,token:i}),o=this._handleResult(a,r);if(!o)return!1;s&&s(o)}}export{P as Print};
@@ -466,9 +466,9 @@ declare const _default: import("vue").DefineComponent<{
466
466
  hide: boolean;
467
467
  }>;
468
468
  draggable: boolean;
469
- isHighlightRow: boolean;
470
469
  idx: number;
471
470
  isHighlight: boolean;
471
+ isHighlightRow: boolean;
472
472
  isFieldSet: boolean;
473
473
  fieldDescribeMode: "column" | "tooltip";
474
474
  }>;
@@ -488,9 +488,9 @@ declare const _default: import("vue").DefineComponent<{
488
488
  hide: boolean;
489
489
  }>;
490
490
  draggable: boolean;
491
- isHighlightRow: boolean;
492
491
  idx: number;
493
492
  isHighlight: boolean;
493
+ isHighlightRow: boolean;
494
494
  isFieldSet: boolean;
495
495
  fieldDescribeMode: "column" | "tooltip";
496
496
  }>;
@@ -612,9 +612,9 @@ declare const _default: import("vue").DefineComponent<{
612
612
  hide: boolean;
613
613
  }>;
614
614
  draggable: boolean;
615
- isHighlightRow: boolean;
616
615
  idx: number;
617
616
  isHighlight: boolean;
617
+ isHighlightRow: boolean;
618
618
  isFieldSet: boolean;
619
619
  fieldDescribeMode: "column" | "tooltip";
620
620
  }>;
@@ -317,9 +317,9 @@ declare const _default: import("vue").DefineComponent<{
317
317
  hide: boolean;
318
318
  }>;
319
319
  draggable: boolean;
320
- isHighlightRow: boolean;
321
320
  idx: number;
322
321
  isHighlight: boolean;
322
+ isHighlightRow: boolean;
323
323
  isFieldSet: boolean;
324
324
  fieldDescribeMode: "column" | "tooltip";
325
325
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,provide as o,ref as t,computed as r,toRaw as a,openBlock as i,createElementBlock as s,mergeProps as l,unref as n,createElementVNode as m,createVNode as u,isRef as f,withCtx as d,createBlock as c,createCommentVNode as p,createTextVNode as v}from"vue";import{useTheme as h}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isArray as g,cloneDeep as _,isFunction as y}from"lodash-es";import"@vue/shared";import{uuidGenerator as x,traverse as C}from"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NSelect as j,NSpace as L}from"naive-ui";import{useVersion as k}from"../../../shared/hooks/useVersion.js";import F from"../../../shared/components/VueDraggable/src/vuedraggable.js";import b from"./components/FormConfigCreator.vue.js";import V from"./components/FormConfigDragDisplay.vue.js";import M from"./components/FormConfigEdit.vue.js";import w from"./components/FormConfigEventSetting.vue.js";import R from"./components/FormConfigMaterialItem.js";import{useDataNormalize as E}from"./hooks/useDataNormalize.js";import{InjectionFormConfigProps as I,InjectionFormConfigEmit as D,InjectionFieldList as H,InjectionMaterialList as O,InjectionLowCodeReactions as S,InjectionActiveFieldItem as N,FORM_CONFIG_GROUP as U}from"./constants/index.js";import"./utils/index.js";import{useSortableConfig as A}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const B=["id"],T={class:"form-config__material"},P=m("header",{class:"form-config__materialHeader"},"物料区",-1),z={class:"form-config__displayWrapper"},W={class:"form-config__displayHeader"},q={class:"form-config__config"},G=m("header",{class:"form-config__configHeader"},"配置区",-1),J={class:"form-config__configContent"};var K=e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object},extraMaterialList:{type:[Array,Function]},showLowCodeReactions:Boolean,formProps:{type:Object},beforeMove:{type:Function}},emits:["addItem","removeItem","reactionsValidateFailure"],setup(e,{expose:K,emit:Q}){const X=e;o(I,X),o(D,Q);const Y=x(),Z=h(),$=t([]);o(H,$);const ee=t([]);o(O,ee);const oe=t([]);function te(e){$.value.some((o=>o.key===e.key))||$.value.push(e)}o(S,oe);const re=(e,o)=>y(X.textFormatter)?X.textFormatter(e,o):o,ae=t();o(N,ae);const ie=t(),{transform:se,inverseTransform:le}=E(X),ne=r({get:()=>null,set(e){if(!e)return;const o=ue.value.find((o=>o.key===e));o&&(o.__extra=!0,ee.value.push(o),Q("addItem",o))}}),me=t([]),ue=r((()=>{if(!g(me.value))return[];const e=[];return C([...ee.value,...$.value],(o=>e.push(o.key))),me.value.filter((o=>!e.find((e=>e===o.key))))}));async function fe(){X.extraMaterialList&&!me.value.length&&(me.value=y(X.extraMaterialList)?await X.extraMaterialList():X.extraMaterialList)}return K({loadData({fieldList:e,lowCodeReactions:o=[]}){let t=[],r=[];e.forEach((e=>function(e){"LINE_BAR"===e.type&&(e.children=[]);!1===e.show?r.push(e):t.push(e),"COMBINATION"===e.type&&g(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}(_(a(e))))),$.value=se(t),ee.value=r,oe.value=o,ae.value=void 0},validate(){var e;return null==(e=ie.value)?void 0:e.validate()},getData:(e=!1)=>({fieldList:le(_(a($.value)),e,{show:!0}),materialList:le(_(a(ee.value)),e,{show:!1}),lowCodeReactions:_(a(oe.value))}),clearExtraList(){me.value=[]}}),(o,t)=>(i(),s("section",l({class:"form-config",style:{"--max-height":e.maxHeight,...n(Z)},id:n(Y)},n(k)()),[m("section",T,[P,u(n(F),l(A({fieldList:$,materialList:ee,hooks:{beforeMove:X.beforeMove}}),{class:"form-config__materialContent",modelValue:n(ee),"onUpdate:modelValue":t[0]||(t[0]=e=>f(ee)?ee.value=e:null)}),{item:d((({element:e})=>[u(n(R),{"form-config-item":e,"text-formatter":re,"material-List":n(ee)},null,8,["form-config-item","material-List"])])),_:1},16,["modelValue"]),e.extraMaterialList?(i(),c(n(j),{key:0,class:"form-config__materialExtraList",filterable:"",value:n(ne),"onUpdate:value":t[1]||(t[1]=e=>f(ne)?ne.value=e:null),placeholder:"请选择额外物料",options:n(ue),"label-field":"name","value-field":"key",onFocus:fe},null,8,["value","options"])):p("v-if",!0)]),m("section",z,[m("header",W,[v(" 布局区 "),u(n(L),null,{default:d((()=>[e.showLowCodeReactions?(i(),c(w,{key:0,modelValue:oe.value,"onUpdate:modelValue":t[2]||(t[2]=e=>oe.value=e),onValidateFailure:t[3]||(t[3]=e=>Q("reactionsValidateFailure",e))},null,8,["modelValue"])):p("v-if",!0),u(b,{onSubmit:te})])),_:1})]),u(V,{class:"form-config__displayContent",group:n(U),"text-formatter":re,modelValue:n($),"onUpdate:modelValue":t[4]||(t[4]=e=>f($)?$.value=e:null)},null,8,["group","modelValue"])]),m("section",q,[G,m("section",J,[u(M,{ref_key:"formConfigEditRef",ref:ie,uuid:n(Y),"bind-form-render-ref":e.formRenderRef,"form-props":e.formProps},null,8,["uuid","bind-form-render-ref","form-props"])])])],16,B))}});export{K as default};
1
+ import{defineComponent as e,provide as o,ref as t,computed as r,toRaw as a,openBlock as i,createElementBlock as s,mergeProps as l,unref as n,createElementVNode as m,createVNode as u,isRef as f,withCtx as d,createBlock as c,createCommentVNode as p,createTextVNode as v}from"vue";import{useTheme as g}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isArray as h,cloneDeep as _,isFunction as y}from"lodash-es";import"@vue/shared";import{uuidGenerator as x,traverse as j}from"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NSelect as C,NSpace as k}from"naive-ui";import{useVersion as F}from"../../../shared/hooks/useVersion.js";import L from"../../../shared/components/VueDraggable/src/vuedraggable.js";import V from"./components/FormConfigCreator.vue.js";import b from"./components/FormConfigDragDisplay.vue.js";import w from"./components/FormConfigEdit.vue.js";import M from"./components/FormConfigEventSetting.vue.js";import R from"./components/FormConfigMaterialItem.js";import{useDataNormalize as D}from"./hooks/useDataNormalize.js";import{InjectionFormConfigProps as E,InjectionFormConfigEmit as H,InjectionFieldList as S,InjectionMaterialList as I,InjectionLowCodeReactions as U,InjectionActiveFieldItem as O,FORM_CONFIG_GROUP as P}from"./constants/index.js";import{fieldItemNormalize as T}from"./utils/index.js";import{useSortableConfig as z}from"./hooks/useSortalbeConfig.js";import"./hooks/useConfigurationField.js";const A=["id"],B={class:"form-config__material"},N=m("header",{class:"form-config__materialHeader"},"物料区",-1),W={class:"form-config__displayWrapper"},q={class:"form-config__displayHeader"},G={class:"form-config__config"},J=m("header",{class:"form-config__configHeader"},"配置区",-1),K={class:"form-config__configContent"};var Q=e({__name:"FormConfig",props:{maxHeight:{type:String},fieldVisitor:{type:Object},textFormatter:{type:Function},formRenderRef:{type:Object},extraMaterialList:{type:[Array,Function]},showLowCodeReactions:Boolean,formProps:{type:Object},beforeMove:{type:Function}},emits:["addItem","removeItem","reactionsValidateFailure"],setup(e,{expose:Q,emit:X}){const Y=e;o(E,Y),o(H,X);const Z=x(),$=g(),ee=t([]);o(S,ee);const oe=t([]);o(I,oe);const te=t([]);function re(e){ee.value.some((o=>o.key===e.key))||ee.value.push(e)}o(U,te);const ae=(e,o)=>y(Y.textFormatter)?Y.textFormatter(e,o):o,ie=t();o(O,ie);const se=t(),{transform:le,inverseTransform:ne}=D(Y),me=r({get:()=>null,set(e){if(!e)return;const o=fe.value.find((o=>o.key===e));o&&(o.__extra=!0,T(o),oe.value.push(o),X("addItem",o))}}),ue=t([]),fe=r((()=>{if(!h(ue.value))return[];const e=[];return j([...oe.value,...ee.value],(o=>e.push(o.key))),ue.value.filter((o=>!e.find((e=>e===o.key))))}));async function de(){Y.extraMaterialList&&!ue.value.length&&(ue.value=y(Y.extraMaterialList)?await Y.extraMaterialList():Y.extraMaterialList)}return Q({loadData({fieldList:e,lowCodeReactions:o=[]}){let t=[],r=[];e.forEach((e=>{return!1===(o=_(a(e))).show?r.push(o):t.push(o),void T(o);var o})),ee.value=le(t),oe.value=r,te.value=o,ie.value=void 0},validate(){var e;return null==(e=se.value)?void 0:e.validate()},getData:(e=!1)=>({fieldList:ne(_(a(ee.value)),e,{show:!0}),materialList:ne(_(a(oe.value)),e,{show:!1}),lowCodeReactions:_(a(te.value))}),clearExtraList(){ue.value=[]}}),(o,t)=>(i(),s("section",l({class:"form-config",style:{"--max-height":e.maxHeight,...n($)},id:n(Z)},n(F)()),[m("section",B,[N,u(n(L),l(z({fieldList:ee,materialList:oe,hooks:{beforeMove:Y.beforeMove}}),{class:"form-config__materialContent",modelValue:n(oe),"onUpdate:modelValue":t[0]||(t[0]=e=>f(oe)?oe.value=e:null)}),{item:d((({element:e})=>[u(n(R),{"form-config-item":e,"text-formatter":ae,"material-List":n(oe)},null,8,["form-config-item","material-List"])])),_:1},16,["modelValue"]),e.extraMaterialList?(i(),c(n(C),{key:0,class:"form-config__materialExtraList",filterable:"",value:n(me),"onUpdate:value":t[1]||(t[1]=e=>f(me)?me.value=e:null),placeholder:"请选择额外物料",options:n(fe),"label-field":"name","value-field":"key",onFocus:de},null,8,["value","options"])):p("v-if",!0)]),m("section",W,[m("header",q,[v(" 布局区 "),u(n(k),null,{default:d((()=>[e.showLowCodeReactions?(i(),c(M,{key:0,modelValue:te.value,"onUpdate:modelValue":t[2]||(t[2]=e=>te.value=e),onValidateFailure:t[3]||(t[3]=e=>X("reactionsValidateFailure",e))},null,8,["modelValue"])):p("v-if",!0),u(V,{onSubmit:re})])),_:1})]),u(b,{class:"form-config__displayContent",group:n(P),"text-formatter":ae,modelValue:n(ee),"onUpdate:modelValue":t[4]||(t[4]=e=>f(ee)?ee.value=e:null)},null,8,["group","modelValue"])]),m("section",G,[J,m("section",K,[u(w,{ref_key:"formConfigEditRef",ref:se,uuid:n(Z),"bind-form-render-ref":e.formRenderRef,"form-props":e.formProps},null,8,["uuid","bind-form-render-ref","form-props"])])])],16,A))}});export{Q as default};
@@ -8,3 +8,4 @@ export declare function bindHover(formConfigItem: FormConfigItem): {
8
8
  'is-hovering': boolean;
9
9
  };
10
10
  export declare function findFieldItemByKey(fieldList: Nullable<FieldItem[]>, key: string): FieldItem | undefined;
11
+ export declare function fieldItemNormalize(item: FormConfigItem): void;
@@ -1 +1 @@
1
- import{traverse as e}from"../../../../shared/utils/index.js";import{isArray as r}from"lodash-es";import{ref as o}from"vue";function n(e){return{ALL_LINE:24,HALF_LINE:12,FIVE_SIX:20,TWO_THREE:16,ONE_THREE:8,THREE_FOUR:18,ONE_FOUR:6,ONE_SIX:4,ONE_EIGHT:3}[e]||24}const t=o();function i(e){return{onMouseenter:()=>t.value=e,onMouseleave:()=>t.value=void 0,"is-hovering":t.value===e}}function u(o,n){if(!r(o)||!o.length)return;let t;return e(o,((e,r)=>{(null==e?void 0:e.val_key)===n&&(t=e,r())}),["children","properties"]),t}export{i as bindHover,u as findFieldItemByKey,n as layoutWidthEnum2Column};
1
+ import{traverse as e}from"../../../../shared/utils/index.js";import{isArray as n}from"lodash-es";import{ref as r}from"vue";function i(e){return{ALL_LINE:24,HALF_LINE:12,FIVE_SIX:20,TWO_THREE:16,ONE_THREE:8,THREE_FOUR:18,ONE_FOUR:6,ONE_SIX:4,ONE_EIGHT:3}[e]||24}const o=r();function t(e){return{onMouseenter:()=>o.value=e,onMouseleave:()=>o.value=void 0,"is-hovering":o.value===e}}function l(r,i){if(!n(r)||!r.length)return;let o;return e(r,((e,n)=>{(null==e?void 0:e.val_key)===i&&(o=e,n())}),["children","properties"]),o}function u(e){"LINE_BAR"===e.type&&(e.children=[]),"COMBINATION"===e.type&&n(e.children)&&e.children.length&&e.children.forEach((e=>{e.__isCombinationChild=!0}))}export{t as bindHover,u as fieldItemNormalize,l as findFieldItemByKey,i as layoutWidthEnum2Column};
@@ -1 +1 @@
1
- import{promiseTimeout as e}from"@vueuse/shared";import"../../index.js";import{defineTablePlugin as o}from"../hooks/useTablePlugin.js";function t(){const t="keyboardEventPlugin";return o({name:t,apply(o){o.eventHooks.onKeydown.tap(t,(async({$event:o,$table:t},n,{emits:r})=>{await e(0);const{row:a,column:i}=t.getSelectedCell()||t.getEditRecord()||{};if(!a||!i)return;r("keyboard",{$table:t,key:o.key,index:t.getRowIndex(a),value:a[i.field],row:a,column:i})}))}})}export{t as keyboardEventPlugin};
1
+ import"../../index.js";import{defineTablePlugin as e}from"../hooks/useTablePlugin.js";function n(){const n="keyboardEventPlugin";return e({name:n,apply(e){e.eventHooks.onKeydown.tap({name:n,before:"forceArrowKeyPlugin"},(({$event:e,$table:n},o,{emits:t})=>{let{row:r,column:l}=n.getSelectedCell()||n.getEditRecord()||{};if(!r||!l)return;const a=e.key;function i(e){var o,t,r;const a=null!=(t=null==(o=n.getColumns())?void 0:o.findIndex((e=>e===l)))?t:-1;a<0||(l=null!=(r=n.getColumns()[a+("left"===e?-1:1)])?r:l)}function u(e){var o;const t=n.getTableData().fullData.findIndex((e=>e===r));t<0||(r=null!=(o=n.getTableData().fullData[t+("up"===e?-1:1)])?o:r)}if(function({keyboardConfig:e={}}){return e.isArrow&&e.forceArrowKey}(o))switch(a){case"ArrowUp":u("up");break;case"ArrowDown":u("down");break;case"ArrowLeft":i("left");break;case"ArrowRight":i("right")}t("keyboard",{$table:n,key:a,index:n.getRowIndex(r),value:r[l.field],row:r,column:l})}))}})}export{n as keyboardEventPlugin};
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as r,createCommentVNode as d,withDirectives as o,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../shared/utils/vexutilsExpand.js";const A={key:0,class:"label-disable-wrap"},O=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},j={class:"label-wrap"},k=["id"],T={class:"edit-label-type"};var B=t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:B,emit:D}){const V=t,F=L(),P=e(null),_=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!_.inited)return!1;let t=_.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(..._.labelSelectedEdit,...V.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(_.labelSelectedEdit=$.value,"object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=_.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await V.saveLabelItem(a,t);i&&(F.success("添加成功!"),D("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let r=(null==(i=_.labelSelectedEdit)?void 0:i.length)&&x.clone(_.labelSelectedEdit,!0)||[];if(t){if(r.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;r=r.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}r.push(e)}else{const t=r.findIndex((t=>t.labelId==e.labelId));-1!=t&&r.splice(t,1)}_.labelSelectedEdit=[...r],N.value++,V.explicit&&D("explicitOnChange",[..._.labelSelectedEdit])},X=async t=>{const{status:e}=await V.deleteLabel(t,V.item);if(e){F.success("删除成功!");for(const e in _.labelConfig){const l=_.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&_.labelConfig[e].itemList.splice(l,1)}const e=_.labelSelectedEdit||[],l=V.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),D("change",[...l],V.item)}D("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=P.value.querySelector("a[href='"+l+"']"),e&&e.click(),_.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);_.cacheAnchorKey=e},et=()=>{var t;return null==(t=P.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>V.labelOptions),(t=>{t&&(()=>{var t;if(V.isLock)return;const e=JSON.parse(JSON.stringify(V.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}_.labelConfig=e,C((()=>{let t;R(),V.explicit&&_.inited&&(t=_.labelAnchorKey),z(_.labelConfig,t),_.inited=!0}))})()}),{immediate:!0,deep:!0}),B({resetShowAdd:()=>{let{labelObj:t}=_.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([..._.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=_.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(_.labelSelectedEdit)){const e=_.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&_.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:P},[r(W)?(n(),s("div",A,O)):d("v-if",!0),o(c("div",K,[c("div",j,[d(" 表单内嵌打开标签组件的样式 "),d(' <div v-if="explicit" class="explicit-continer">\r\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\r\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\r\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\r\n\t\t\t\t\t\t\t\t<span slot="tab">\r\n\t\t\t\t\t\t\t\t\t{{ i }}\r\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\r\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\r\n\t\t\t\t\t\t\t\t\t\t<labelClassify\r\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\r\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\r\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</n-tab-pane>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</n-tabs>\r\n\t\t\t\t</div> '),d("\r\n\t\t\t\t\t普通标签样式\r\n\t\t\t\t\tv-else\r\n\t\t\t\t\texplicit\r\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(r(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(_.labelConfig,((t,e)=>(n(),y(r(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),d(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(_.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",T,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,k),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:r(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!r(W)]])],512))}});export{B as default};
1
+ import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as d,createCommentVNode as o,withDirectives as r,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../shared/utils/vexutilsExpand.js";const A={key:0,class:"label-disable-wrap"},O=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},j={class:"label-wrap"},k=["id"],T={class:"edit-label-type"};var B=t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:B,emit:D}){const V=t,F=L(),P=e(null),_=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!_.inited)return!1;let t=_.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(..._.labelSelectedEdit,...V.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(_.labelSelectedEdit=$.value,"object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=_.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await V.saveLabelItem(a,t);i&&(F.success("添加成功!"),D("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let d=(null==(i=_.labelSelectedEdit)?void 0:i.length)&&x.clone(_.labelSelectedEdit,!0)||[];if(t){if(d.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;d=d.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}d.push(e)}else{const t=d.findIndex((t=>t.labelId==e.labelId));-1!=t&&d.splice(t,1)}_.labelSelectedEdit=[...d],N.value++,V.explicit&&D("explicitOnChange",[..._.labelSelectedEdit])},X=async t=>{const{status:e}=await V.deleteLabel(t,V.item);if(e){F.success("删除成功!");for(const e in _.labelConfig){const l=_.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&_.labelConfig[e].itemList.splice(l,1)}const e=_.labelSelectedEdit||[],l=V.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),D("change",[...l],V.item)}D("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=P.value.querySelector("a[href='"+l+"']"),e&&e.click(),_.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);_.cacheAnchorKey=e},et=()=>{var t;return null==(t=P.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>V.labelOptions),(t=>{t&&(()=>{var t;if(V.isLock)return;const e=JSON.parse(JSON.stringify(V.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}_.labelConfig=e,C((()=>{let t;R(),V.explicit&&_.inited&&(t=_.labelAnchorKey),z(_.labelConfig,t),_.inited=!0}))})()}),{immediate:!0,deep:!0}),B({resetShowAdd:()=>{let{labelObj:t}=_.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([..._.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof _.labelConfig){Object.keys(_.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=_.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(_.labelSelectedEdit)){const e=_.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&_.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:P},[d(W)?(n(),s("div",A,O)):o("v-if",!0),r(c("div",K,[c("div",j,[o(" 表单内嵌打开标签组件的样式 "),o(' <div v-if="explicit" class="explicit-continer">\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\n\t\t\t\t\t\t\t\t<span slot="tab">\n\t\t\t\t\t\t\t\t\t{{ i }}\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\n\t\t\t\t\t\t\t\t\t\t<labelClassify\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</n-tab-pane>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</n-tabs>\n\t\t\t\t</div> '),o("\n\t\t\t\t\t普通标签样式\n\t\t\t\t\tv-else\n\t\t\t\t\texplicit\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(d(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(_.labelConfig,((t,e)=>(n(),y(d(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),o(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(_.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",T,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,k),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:d(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!d(W)]])],512))}});export{B as default};
@@ -1 +1 @@
1
- var d="data:image/png;base64,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";export{d as default};
1
+ var u="data:image/png;base64,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";export{u as default};
@@ -1 +1 @@
1
- var v="data:image/png;base64,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";export{v as default};
1
+ var v="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAC7CAMAAAB7NnPGAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABmUExUReru9/P2/O7y+vH1/PL0+vz9/vD0/EdwTPDz+e/y+Pv8/v39/77G0u/y+9vh6/X3+/Dy+MzT36awvsJsUPKLflFEPm9qaKmfn+zx+fT3/P38/dfd6IuXqf8EGfvr5S8pJqY4KPXLuv7IjE4AAAAYdFJOU/id5rFtJ8QAe4s0G/3WpkddzP7+/vzqwYoRmBQAABwkSURBVHja3JyLeqq8EoYD0Ww5pFpabQAfbO//Jv+cM5MERavWtSeRQ0DknW8yEKwl/3uiNU2921QF5aVAVnJaVJtd3TTPPBvyJOjtrlLEvchbbybSB9Vq2/y/oDf1hnIyC51xAinp5gn8j0Vf7ypGxE1GWLVb/6vo9YaTXvzCesKr+p9Db3ZFKe5hfUl3zT+EvqO/kzsW/zH090ffFkTc3Qjdvjp6syl78RDry2r9wuhbKh5q95X+jugr3osHW1+umpdDl5EunmJl1bwUevOI1Dab8ormZdCb6ongGv4uypM7gJfi2dbfA/7X6KvngxvlN3+MvmXiz4zv/hB9TcWfGlv/Ffqzs1vGqj9Br7n4e+v59vnolXgRuznX34i+LcXLWLl9JvpGvJRVT0Nfs9cilz1+/Rz0HREvZ2T1DPRCvKTRh6M3TLyoXR305N/N7L/N9Nehr4iYK6qKP84Cm8ehVwpynp64CawZD/l6dysehN4UjiyYIBGn3wO5Y9ZTZ7beFEe0eQR6wwJofPpuC9wj45zYSQv443fNO+nqZLcYfc0BSIKbQRX2tHGYEHSUeDtEDC5EbrsUQuX63uiaXB5YyCKnZkGv6BlxMR4YShT9yamDM8aRIpCHkJcFbhPp4WQp6/ui16X8vNICkwAtP1JtcZ4IHhGm0Z6o2dFDlQKFgMB0GDFPnYsjH0L1PdEleWlJ5KsMypNAq4lcFEAnqJ30JOwqgIv0YdMQQo6AOkeBlAS+PNj2fui1OXFikYhdc9ym3TuCGAa9F2YKrjCHcdDEOs5PwmHBu4g9JHAHcBQMIrK9F7rRvHS0eC34AICbHQTYGFxHHIiAi2HmNwrYHMeLew90qXvDwpgnSzJcGaAth5mk+JEn4Bw4BztJwB2gxt5dYVJGHoPdKISIbKvvgS7JDbQX3K+F1lBBWKThAXsGicJIJH4U0EOwCU9dXxAuGy1kv4je8NIYKf0CiQBhDc7xThK4AfqLJMSuLeu1fC9DLnTNl+9tyMV7OMhNgAdiI3iZAErsLX8YEe0fIgl4ydScM7AHBMwmKgp480t0ep6URPGQeIck74HwXi8YRZGzUEeKOxpJPjgc8tL9/AX0qryDkcgJ5OLeJOe1KI5AaJB8nBW/Qd+UzzEy3570sQQ+E4MWfnM7+rYsOajG+Fi+khEcVQT5YncrurqgO2o902UceQlLXIGX/s4bzta3ocvkzjGlJm3bEcVBAm88lbyPZyLo4XYuzZNzKS53+uPYet05T+VXE/73yjujt6CvNBhiVxMpuoR3tNFWO9cLbXc8dq0YbrMeLMkiytkOFnpk1jbXo9daVa2sMcM2atXHtuROde8U5IP2aK2VJy9sOWdD3xtKj91DBwy97V0cpx+0nivzI1gy29E5xyFtrB1bAz+W3h0cT9WsOwbrHXveAQ7XU/dQdADvehIIwbkCvTPb3efQK56Y/jRPbtidb+AUaq6s07rnqVUFiufggRt4kjezyTRqKq5D3/IZ8+BB94wdkbVDH1RPXTD419Bj9b0LLH3oYnMdLVfm/tyIzId71toRwM/t1B1B6ZTsIsR8XvoBF9zNQ8xz0M3U54fIg7knrusr0Au+RPVZdoXbdQZb1XEQAvb3fMZDia6PE13vZPcJpbWfD/xR4vTjKl2OLsM9LzvTKd4ZGcs5dAtvTUd8SPPuFaW6HnR3AI0SPRRBZdyZHhc37paim3BnmSIrkF2hs4yX3rvIJLonn1c94IeUH/OjrteeCbwSX3bWC9ErzjLMjtKBC1VtKy5jDr0XArHHDhiioE8zvU90rusZFfgSK5ah1zEOJgsBL0aSeEbXru1aZZ2rTnUAj8CHmYwXMn0fo4+tC79F7NtF6JQh1RlecexCyU6y3eLdYHceXqObXy7CC1z+IudnuZub0vYvptnH5eysWYC+03yO2SFzvyItBHzYDNwztrENVnL9s83Mt0buy8m575T73qc5G4Qo32Z7Zuiiera6jN5YauaRjQvcimlVj+aJVB04JLx4TD461SchkkSwyEare+n9y/1tpc22gTKqdt5cRN8woDqD4G7Rb5IOYIlzOGNpFxj8D4L6rr3JXMADfUO6LbP9jiFyXl1CX7PIeGYpu8vsZmbQLf1t5K2NeNCtwKWGhBg9U+oL6BW7YEjkEADxFKUHDtLcb1UHH1yGlOMjjkdOAOzFefSaPcJAwF+h+mheo1O9t6qD7sVlR9cph6f5CDdkZCdXiv5E9JzqPOla+n7Nhx5n2cxs2opz6I8RHaGPN5ETe4/Ds4mHRw08k6xUJGzPoFeMohJmcfWvK9Anc4lOR2r4wRQeq/bhCZ1TfbHH4wY6j14zA2uhqGXDvAg88lOyn1mDqoP/yxHf1ve5kc0AhnZXoqe2nUWXohsG8zKqR/pThmMCeoKCJQq9OPTZ/8cR3dbPDOnCiPbX6MUc+ppqC7y5Ah1BGVymEBr7RqITH/L+n7HA2/owlBPJKPZ+qrN6Bn1Dgc6z8KqiFbRv9r1WdXODPsXKx2PZbNBb2Tm7lI3OW5VHbyhmMREQvyJKUN7fPz8/rL2DI8jiVHfDk8kJP0F2291F7vmFZecRI2UgG+EQzCYheCcP0HcUG4vBHQ1ocK/3r4D9/fH9/W22I9WndFzmnmAEeMudS3ZKdQaTDk00yF2R4Aplmyw6RapDF4B1hj1iZl8fivtTV4OOj6FVJ0Z1cvYGrs8+yQiXQj6bfjIruU3gTy0C+pbmjNFLxr4+Pix0EP0decqorgfkou3s44vczXxH8s/u3OMLiZ5KTWnaC925p27aZtA3Fxnzq5IVY2v7SlS3f/9/dvjSgYtc9rsajrBC/oEpSvc0r3icpIsUvaE32ftBcmr6gK3tANwj0f2zmAs3rLbbT/mgV6qj6wzISCyXlGmar9YJ+u429MN+/22oMfnpdKBQdf+jj/OD1tE+sE9lN5d3lo1Cls1LM/CrBL2QG4pbyKV9x7Y/7SG7Vt3+5fIy1fNXumFgs70wk5uzzqA0Rq8NeOELqnTGMV8nybjvph8g+cck2oNqDuxsCL/UuITeo+8q4ofWjN5ogH4boa8MZOEIs+BFVN6ktvujfmT848h/9EBrPCinvMXoqugH6HOlFwLqPsVRfzM6sE2E7qWWJZYerAP5CyX6ft/aIeZkyD/dkLM7SXj3tgH8RiP3NaMfucLhXOZrmrugu0s7cSOXImAH1oLOFlml6J7c6R6G25J9/xVUn/mFUm5EhwezaDxzF/Qaoa8gaYyYLbLKoO4MpXpOrmX/UPq3pvWoMl2hDzEIErPnXWBGdBOGn3y/l+j5PHRVit4gdH2GBQUVeQItuSpFPxiB99oHNt5HqbZr3r+Z9w7gp02R9mR2JJ/5+xujeiYP5TJR5KIivBWir4vC84YFveI8EXlGVpneJ9PNh1E9Mf2wSa4dTbNywpc+Bxarbn+3SPQQjoBx7BSG8hN+hCGc6qBD4oXkMlTQGN7uVAP03UXwVPTioNWdJlk1q0OfdJOV3Qc8/BWkWbOBPzntJ4TvvqVDfX5g6uQvdUYUtIDZr6wAelVkjUZzZG86yqe+OxxHTWrRJfnx0A2TznT7wgd89MM88ItVMv8vZd3NnaVX6JfyrweNIgP6JqA3xQKjePHt7bSX6g4H2dFPo0OXfX0a9+pWTrFPKuKLkOZUzXzdOOqYRw5wykcXOonu9UwCEU3OR8bao9fFcvMe0PE+tSeV5PYStDcZfhr2nXDekIkwoBvhwT28Xey6zLOrHlzpwvVdqx76Jc7LnthnZRT8kH3r0VfFDbbX8d6pu/XTSRJP33LQ/i0XTrrpqNBbHfEo4HOjdeFH85B+8v9Kup8svFYdgoc1ivNxUUThgHrtyqNXN5B/nY76Gq7A90r1z4+fn5+Pn0lFwelwanWiO5zesOokO0on8EIHn1tOPXxi7wMepGNaxF4I4kfRGnV24rr6tfgHfR83TVp0xanIJbvyxv5wPA7mCtcdIvQuhx6udkBy/MRaB75XfWHXxB0CWGPRa8Nd+YIqWAILb529pKu8Nsr5z+enJP/8VFc21W6v7RNA13kOQ/uhKsln+978KYbLdwNdmokv2Nai7wqAXBRFDO9dABbeDNxkbRg+rcnLW+8b1X3N13+snQt7ojoQhqFSN6mI4PaCTUsf//+fPJlbZnKx3bNuQES0q+98M5MEQjZTPYSSexwDV3cpy3dX/Je6+jrNrr+z7DTYAd0ZuWvZ82dRfy/gV6bcrlQ2MseV2bcNqrd3ez++DDjES+OwkzXqu/X6/Mnl9zXv1VzuR+fiGV05vXX7cqH17W2CJ0BHROIFN1dyOYiu/xBNfTl/mAFTlVtL4w422+9PW656kSaW93+FDsHeQZYDrb0o3mTmZZomODEzgeoKCRJrZzWR49EtovvYxfuA8U7tcWOdHTt2/SzKVSs6dPg6H2WPPy2PiP5kyb08zCF5fvvi8ur9DtGvRnXygnc9ulFjft/r31VTddg5K2CpyD8/n80UquDwPk9HKRpTGrrlr9njhOgnJU2o2SF5fH0pe78l9o3J+Yog+sLGR+NDyWMTL5+Aw5qATl59NorxeVSdlLDe2KtzWu1931dmkp0Z0QfgckLYpqa3sL2O5WU6bpLOrimbi8dvTA7s+1c12PmGt6eO/GezbFb1PAL7vkpP+4fkqL23Zso+7xDdeSq9E3gvJvCZQWJ5e03sLOpWgJsaD98Xa72cG6FuZi6ClVN7yvDPpcs/7LIQ7OWVWmIXv6Xvf8hasEF0wsbFO9mBbWEGLC657xuyxV7r1rpNDd/aYi+OP/3RITlWaQAb1noeHhb9+X1jT39/LmS/GNQW+B6GjYYWdXXgENEPSBRBEZbZnZrDqRUwLBJ7R+ytQu256PcvNsGp7GEtIh73OcfB3xP5O7Mn2R8k9Po8Ev1+4YGj8UuORe5q8z9G9EcBJ3bvvCMD4FExilggvmCfHy9r8usG+2Y1f1mDqr4Gawadh2j9nVQH9iu0jtnzuYLrLr0NReP59q6UvHqyjmvD9ymiP3kCdEwrssu+vPSOvYMy/Tl2KELYpMmeU1O4j2Fk9BHRg5F8JQvYlJeSHPYDIE2mqq5rqO6NJ+4UfN2ZCM0kz5KEP0X0EwIB4IBPkZHA0RzJKr3GBLj8B14Tis2UlM/ezQKKY9uc2F8fVpab+OnFWia7T8MO/+C1zPEXQPeuz7Ch6H2H4cjgLtecJde/nSP6DKiR25HuEvFwiFRHq6BFWH338vVKl8M6HMe6VSXAAIIAF9CQ3T8Y1UPQiFcDrBad2E3zJhjVTRHH3CXybq9WcYSKuD19NDl+74eIPngVNinNO2KOobdu7/yrDHlBeBgnMYag1HCnD3RL4CMx3t88qY7YpDouSE6GiE+rQadGga3ZO0FP7scVEvygJPk+s0qRvdUi+FZEd0XxILeT0HeFFTwmfx3wiR2xcbS375IhmDwGxdn74xqS7DbEg5mlLawF+bY921jvWHW2vqYmvxD60mfgJkR7k7G9JGxA92kptCa5PRvEsz/Aeux0sOuK9oab+gAbwEOSHN9eEF2kTjuqu2j/nNw9Ngafre7S1zv2iuWpCqJ6dyIpvfcJ0Uslxd7aSz3GHvGrO7gfi2ILvA+BhYcNaAd+DuhnujFhNeRgqoSuzRrDzdpfVfMrGWAz9frWwf98InqnxNQ7w+xNVpa0zRuvGZvy2eFb9L42guyArukmTcxCgB5jHMZ90wklIffgJaI2VkBshVTJcxCsSXQ0wvNVMt0m569i+hbPS4mJX1eu26PPOvOaquyB3f979OEbqxA7IUaY9RLgpvWRD4lPIDmhE7NAJ4+3wS9tdsntqUUjl2uOSfRY50C106dqh7l7hld98aNl1oqffewe3d8V0B2rJFS3i5gR/ZzG+HareDuUY4pzET4tnYR66G723NKFqqNv+qBwDwVg3Bt6OepMAwXM9YTow88qN8oRbzbCS2GXAKDnj1FGAmBl1ZHm8Wv2fBZOsPNk16WW3bXdX0/n7o5Z2rHU+cEqWLm2ssZC9OHbhVZ5JvOQjXZahYHHX8YPCPTAB7pONHdu3wl4yG2QyBm+eZZGOnZrl6v+U4LqK9+wLlOg3+a37LKBgNdMHnPdOQLw4Bio8hK52xtsA5+rHprsz/ai/J+g/5iqOC0+dU8WcbgpftMbBh/WdI8G3d8rloj7kxNTNtAbcU/wW+Xt5tr03v27ciJ0KhVZwV7j+84O7orB3SVTdIsJmF0DPeTcKc9fjPDXSz497j9GN9RDskJdFN582nP1/S5er6ZY98ZfbqIbA6gFLhtdfdku5Yyxe+e+yUguy0c/JW1Ad01EsYS+UNdI7/Tram88X4MGwBqMl+y+5eZGjm3d05WJfA7quOwtqM1AyUvrI9lbxjai+p+V0idcv9pRrOuqaS8KZv5A0cdgJvUp/b4zJzQak2sDeh59P6TnbFNUWMP/Q69Kj7WZ9GWCoMegB3T1mx1Rjz/Bk9AteIr5ndY3uWd+k5ub+TqusXK7E537rWuq4egKYjxqfETOJYwGfLT4XZ7qy2nTZWdfBuaNBGVM0sjS9Pad6L7TlA5b02cr0RM3byrZi2hvXqrY3YrCQlxjEmdtYdM1os9xydY/R0/OfsF5pmysB2+8Q/18VOnlXu1vlvLAosV/WyG1jKN/AE+ADqw5+5ysUZX8g04DXWKdPB8a8FOGXnPdWab/76TO7j52h4SagGfjB/M8zPUnxFwDn5eQQftoCayX4vFpkH+MVP/H7NNwX4nogEeIuDcP6YXhNi/ZIvQGz1CT7svH061Ui41ezdUrbZqLIIz5tD35ypv6rTQa5V70A6BXrq2pMDtHxee/7LW4nZ2aqFvHVHuDLKksCx8LMgNDoLGCcOr2fGbIc1rtUrw7ytxO52UqLypVxXnt0ub9mrgcul/zYOGLU3I56ARLXhY7Nc4qU0zEovloBHLVOYjq50R0ViPIS2OXc7abLLFMsKTSwxqXuPq+bYccHtA5HjX1F1IbbFl6ASdNE37yxww8boJ4e8Ifx2yCrsY0POP3s/RE8F1c4zLt4kK/CTYeH7hk4AmePBrRbTpP/XOmZ9mnpLmRfYfw8ZujBZavl4/luCyvL6+KHXgdj0HnGpHt301LZNAz0ScD7gV7qrGVHa65ZbIzfubzPv0z8K+SBXpLD4+vrzeg/foS9KOpgxeT4FJI3IsOZt+h6eEn7PD3eIbPRWdyr9xumBF9sPBWdjrnnkd6Gez4xXEB5onRd9bdR1iCkV3o4eQ1XrT4KFZ6Ni/PctB+blkQdydy07avXD0H5/b/gOhPXLep8K6tuwhvk90ioh9jbAIrP5lypGCv5tspyXO+80fDMtkupblFfsKUVEdya4Dc3bmlCxeZH+dZKvba5X3GrtyZ9vDlcB9z3IEbugF1X8i+hLxei0WU5Q1frzNbUd/u6qHzVIU6u3quesGdWnQwtOAwz7M0ZTLlld67WnWfsz/Exgwk+y0EdfijGiD39zG/QPk3ZVk4x0qYg79LmJsM5+U0pDN9fUb/Nc8K367jMpdvhnxUdevA72MznoB3BlvYTY6/lxyzXJ9nd07uPhPdaD4404o/GPShdHs3N7xeE31Gf4ShLvzcYQRmRVKdZvePe0WfiiZN8kYFLyq1rJ83I3qs3U5z5fWo+tys5RoRH2CQD/yWy7ZuUOOaLJ/S/CiNurvBq0rdS5wXYZ7Ibc8V+yA0RjaRS/eF4GclL3M9JRMj+3KOy0Ipnn4XV7sZ+8L1+cdd7G/wTSU5y30DPPN1VJfGyB5O8+mkwptK3s1W91ay99I/QepF+Jm88nm76GofspplKavLwtl9nda9K1tvGXcsT4yO5DX9jORW/Axes338NW9J9fzH1VFfG0FMUTIrOe9l8HmN1mjEMPychbh0yWlQ+C9WXWN+kHQ/M/h8q4WDusuvqX5bKf5Z+jNnfjWmDR8c6cn4T0twG+LJzdsNmFnZ0xkJKAdGpwIGmK3woPpc0busdesN4WQtIN06am0tP5Xxh/frhtukPUmvpxFczj2jt89Gbi5yx9NJ4a3bM7zDTRH1Wttp93VJVsB+RerU2nf+wApswCmL6UbLLXdyxLbgpJc5s2bAT3LH0+GkJQ96+bDTpYj7sitD3Zl+afzYyTIsuUWmokFunr/lLhovhafjL2ZX1wJ8jw30n+grx+fKvWhYpdZl2dYXaoOXw902mmEugzsrRihYM7mZ7SS3+P06NYrBHyjoW+Kn819l/8b2pH4qS8XfJC4aLN5p5e3z8Ca1S+pZ0vnppLfzPtXc/CHrKC4Xf77V3PGN6u9vSyKO2zf4irh5cyq2b6lNv7Rwc9Gb6PT+9dNTWlomKIubG7FfndpIGk1ZXVgbw2eNMmmeTHTTBf4VPjmfRs2V1EZsJ+AFNsFw0fvX0eOfaFPgz6f/qjuzJUdhGIq+RDUgV8V+4///dALedCXZpGm6JyOzGOJO9blaSFKUUR92TN1L7t2VK/xsvS3P7DHzcRM+hzV12uD9LbbHKn4J9zO7O1tzV+okqUJHf/Ee0FzgtfsH3pch1iR4bG2/7uvLY8vey2Vhy71tX56HM4tvn/lcX7FyW2asZ0lsVHIjdaypXmcoKcwi8NnAJ5e+KdD0rz/mizsf5C3G2YO1Ph2Zm+tlv8FrfZSXt4dzV1QC6CWBw0+pj9gW6IGzq5kBno37Pe8vTgVIi74QendwrXDX32qT+IFOfsmqmT1rxWxkQU7JU8gzbtGghn4Jhzl/E2GxbSbB1JLr4gFwY/a4kQBmI2Ku0LGCw+pU/1kG2CBIKhra1wLRt6TGx0uyGQ3UyRLn/1xmM6CH5nFpAO+H/zgEtApKgiSP8JVauZaUJi7WjgZscbGGzrGQmmrv3CKEhqfAuQgCZWma+KVqeZdZO1pcqfyGk669avzXzY+BKL/532vjmh1jr1NR1SrdWE21F/iqxaEE4qtQvARatjHNyjWitutSq1Hi4pWXoKfV5G/bRAFHjWmLJ1enKOB0QnZ8GNTh7TyyzCRaW/L+MLorFq5bAxvUIb3vIvRzDrpkJn1UDqh0ccQ7MjQp+A0+WaN91suR2eJdTJxMRC5bIzRdqUvTh275/37QnDmjgwDYl7yp5wwgqLRrUMYp6b6YJ1O75Y28mcJ3t0vrvL1TV5InyUpTzjAZ46aSi4IxNW/XypD/VABkRhFwzzIUxHjGjZc6pEYP9BYBNc+/iU6HIITC0BT9mrEGZ5etpwWTU1kguFiHGwKXhCI/TozkefEfiPBN9rksqASfjIQUEsFF5iVSxekkWmj03JeXKPs7/JgEN0iIKrLEZ6OWDcIwRqcQdvIwaB8kDA8jqNce1oFE42c8kebeN2V/LKFu5YLjjVYfoVaGD2N0QyQwDKMbHeIlPdobWlX5JXH+zNB3o7LWHZVuOU/ytPZ8PQozWjzlCo1/QvdUoTB7lF1jboQCXgpCTQ3q2kglgpcWZQyZYKKhVPPgsxK9TW7RR0YnZyhICSo9bGVIQCxh6AT6Sqtpg+/kjp2jT9gvG0GkgFIDeSDmKEAmKXnEMKfKYjt9RO2/MQJ5yAstrwtSBMzDE6d/DPqZLKS6hGFEpiZbO38mc3jRq0X0/hszif/Ok7gFptzmXm59h/p8shnOvwkSVVfnwgl+AAAAAElFTkSuQmCC";export{v as default};