@agile-team/mach-report 2.21.1 → 2.23.0

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 (169) hide show
  1. package/README.md +20 -5
  2. package/dist/{ExcelBindingWizard-mnAO2qOX.js → ExcelBindingWizard-D4FLind-.js} +3 -3
  3. package/dist/{ExcelBindingWizard-Bu0LUlzl.cjs → ExcelBindingWizard-D4RS5Bpg.cjs} +1 -1
  4. package/dist/{ParamEditor-38ZfNrPU.cjs → ParamEditor-C-6C9rd2.cjs} +1 -1
  5. package/dist/{ParamEditor-C8l0EC8m.js → ParamEditor-CASZt-Ma.js} +2 -2
  6. package/dist/{ReportBatchPanel-CfUVhvkO.js → ReportBatchPanel-Bq7t8a5r.js} +2 -2
  7. package/dist/{ReportBatchPanel-nCC06Nfp.cjs → ReportBatchPanel-YVj5IO5y.cjs} +1 -1
  8. package/dist/ReportLabelStudio-Cqhita1b.cjs +1 -0
  9. package/dist/ReportLabelStudio-Dj7GXhuv.js +783 -0
  10. package/dist/ReportParamPanel-DZbFVmDL.cjs +1 -0
  11. package/dist/{ReportParamPanel-peB-KEmm.js → ReportParamPanel-Dgmqro1Y.js} +265 -244
  12. package/dist/ReportPreview-DeWzG8jQ.js +6257 -0
  13. package/dist/ReportPreview-FFIryrIr.cjs +6 -0
  14. package/dist/{ReportTemplateLibrary-DVlsf72p.cjs → ReportTemplateLibrary-BaWodmpm.cjs} +1 -1
  15. package/dist/{ReportTemplateLibrary-B5t_EcIs.js → ReportTemplateLibrary-DdAAAD2I.js} +1 -1
  16. package/dist/{RuleEditor-kT1JsZ9f.js → RuleEditor-D2UwQGF6.js} +59 -59
  17. package/dist/{RuleEditor-xFkCVlii.cjs → RuleEditor-DcT9xI1v.cjs} +1 -1
  18. package/dist/TemplateOutlinePanel-CUHFFiNM.cjs +1 -0
  19. package/dist/{TemplateOutlinePanel-BesgGR1P.js → TemplateOutlinePanel-DrT7XN0m.js} +2 -2
  20. package/dist/{TemplateReusePanel-BNFU6V-W.js → TemplateReusePanel-4eejkNqi.js} +2 -2
  21. package/dist/{TemplateReusePanel-BG9Or5-P.cjs → TemplateReusePanel-DZMyiX5I.cjs} +1 -1
  22. package/dist/{TemplateReviewPanel-CwvwyCSs.js → TemplateReviewPanel-BIhNLeNw.js} +2 -2
  23. package/dist/TemplateReviewPanel-DnYImiXu.cjs +1 -0
  24. package/dist/analytics.cjs +1 -1
  25. package/dist/analytics.js +26 -26
  26. package/dist/artifact-integrity.json +108 -106
  27. package/dist/assets-D2gHc4Mz.cjs +1 -0
  28. package/dist/assets-T_gDeFaz.js +132 -0
  29. package/dist/auto-4pK9HePf.cjs +1 -0
  30. package/dist/auto-CTIJ6PnR.js +257 -0
  31. package/dist/capabilities-DiBj4Qgl.cjs +1 -0
  32. package/dist/capabilities-pg7j7VLT.js +106 -0
  33. package/dist/charts-Cjw5AYkg.cjs +1 -0
  34. package/dist/{charts-Dlv8j2AG.js → charts-CxJZ0XaY.js} +1 -1
  35. package/dist/computed-DK6BruFz.cjs +1 -0
  36. package/dist/{computed-C8NRZQss.js → computed-f3pOqWLX.js} +381 -301
  37. package/dist/data-bar-CeZuFmYl.cjs +1 -0
  38. package/dist/{data-bar-8baGYEZ9.js → data-bar-IkI6VvMQ.js} +1 -1
  39. package/dist/designer-DhrE7jzw.js +7169 -0
  40. package/dist/designer-IAZu6kBX.cjs +2 -0
  41. package/dist/designer.cjs +1 -1
  42. package/dist/designer.d.cts +246 -46
  43. package/dist/designer.d.ts +246 -46
  44. package/dist/designer.js +15 -14
  45. package/dist/dom-ChE5D-L-.cjs +1 -0
  46. package/dist/dom-JWrchIre.js +452 -0
  47. package/dist/dom-cell-address-DLD1mkTB.cjs +1 -0
  48. package/dist/dom-cell-address-Fn-8nk7D.js +11 -0
  49. package/dist/{encoding-B79hW4zq.cjs → encoding-BefcaHdp.cjs} +1 -1
  50. package/dist/{encoding-BSeUwrN7.js → encoding-CL6rXEkR.js} +2 -2
  51. package/dist/{font-loader-Di0lQKFf.js → font-loader-BT5baV-o.js} +1 -1
  52. package/dist/{font-loader-BB372_XN.cjs → font-loader-Ga51c2VC.cjs} +1 -1
  53. package/dist/grid-strokes-Be24LGuV.cjs +1 -0
  54. package/dist/grid-strokes-EoY66L2f.js +53 -0
  55. package/dist/index.cjs +8 -8
  56. package/dist/index.d.cts +44 -1
  57. package/dist/index.d.ts +44 -1
  58. package/dist/index.js +961 -1256
  59. package/dist/json-snapshot-1tvQNzQE.cjs +2 -0
  60. package/dist/{json-snapshot-Kgn459Oj.js → json-snapshot-OqkPyUk5.js} +763 -776
  61. package/dist/matrix-B8QWbsGM.cjs +1 -0
  62. package/dist/matrix-C6e_r_vp.js +302 -0
  63. package/dist/{pdf-CARdBcuw.cjs → pdf-HiEeXe9H.cjs} +42 -42
  64. package/dist/{pdf-DmlnL5eB.js → pdf-aobetCsy.js} +20 -20
  65. package/dist/pdf.cjs +1 -1
  66. package/dist/pdf.js +2 -2
  67. package/dist/{plugin-BaRUGORD.cjs → plugin-BFANt-i8.cjs} +1 -1
  68. package/dist/{plugin-D4kAxfLG.js → plugin-DeYYAL6F.js} +1 -1
  69. package/dist/{prefill-CJSazcVY.js → prefill-Dk4C6S5R.js} +21 -21
  70. package/dist/prefill-DsUD5OoK.cjs +1 -0
  71. package/dist/prepared-DCIxhKFo.js +94 -0
  72. package/dist/prepared-Dv-XM3i1.cjs +1 -0
  73. package/dist/progress-ByiOxUD3.js +250 -0
  74. package/dist/progress-WomPRP3B.cjs +1 -0
  75. package/dist/{protocol-C8VWF9An.cjs → protocol-B9YgfQ_d.cjs} +1 -1
  76. package/dist/{protocol-Bs9-ohHN.js → protocol-DxeUKGYG.js} +3 -3
  77. package/dist/record-bindings-DatJZv_e.js +200 -0
  78. package/dist/record-bindings-MBxbeBsi.cjs +1 -0
  79. package/dist/{region-binding-workflow-Cy4GIOUo.js → region-binding-workflow-DjrXuR1q.js} +2 -2
  80. package/dist/{region-binding-workflow-JNowHd0A.cjs → region-binding-workflow-l7NGfagJ.cjs} +2 -2
  81. package/dist/report-encoding-worker.cjs +1 -1
  82. package/dist/report-encoding-worker.js +1 -1
  83. package/dist/rich-text-layout-Ciwa6D2o.js +52 -0
  84. package/dist/rich-text-layout-DK7A_a5r.cjs +3 -0
  85. package/dist/{runtime-BDf5x1i1.js → runtime-75Y5Oq5B.js} +52 -51
  86. package/dist/runtime-DKlGd_D4.cjs +1 -0
  87. package/dist/sbom.cdx.json +1 -1
  88. package/dist/server/node.d.cts +9 -0
  89. package/dist/server/node.d.ts +9 -0
  90. package/dist/server-node.cjs +5 -4
  91. package/dist/server-node.js +2178 -2044
  92. package/dist/server.cjs +1 -1
  93. package/dist/server.d.cts +81 -0
  94. package/dist/server.d.ts +81 -0
  95. package/dist/server.js +24 -24
  96. package/dist/style.css +1 -1
  97. package/dist/{template-catalog-DFwIS9aN.js → template-catalog--cjxzgH7.js} +17 -17
  98. package/dist/template-catalog-CoT7jm_6.cjs +1 -0
  99. package/dist/{template-fragments-Dng-AlHk.js → template-fragments-CPpGpQoz.js} +24 -24
  100. package/dist/{template-fragments-DZVUBhuB.cjs → template-fragments-GVjpew_q.cjs} +1 -1
  101. package/dist/template-registry-DI59PXVK.cjs +1 -0
  102. package/dist/{template-registry-DhBqoD7W.js → template-registry-O0hNIOfB.js} +333 -261
  103. package/dist/template-serialization-CWmHq7lX.js +307 -0
  104. package/dist/template-serialization-CqQY4zDg.cjs +1 -0
  105. package/dist/{textwrap-CkGjRFT3.js → textwrap-BIjtEWmq.js} +1 -1
  106. package/dist/textwrap-Cy7o1hIR.cjs +4 -0
  107. package/dist/vue/async.d.cts +121 -2
  108. package/dist/vue/async.d.ts +121 -2
  109. package/dist/vue/index.d.cts +222 -5
  110. package/dist/vue/index.d.ts +222 -5
  111. package/dist/vue-async.cjs +1 -1
  112. package/dist/vue-async.js +3 -3
  113. package/dist/vue.cjs +1 -1
  114. package/dist/vue.js +101 -91
  115. package/dist/{workbook-session-NYv01LHe.cjs → workbook-session-C6-SrnCT.cjs} +4 -4
  116. package/dist/{workbook-session-oinxX3qo.js → workbook-session-C9ZmCBwY.js} +15 -16
  117. package/dist/workbook-sheets-CaPAulQ6.cjs +2 -0
  118. package/dist/workbook-sheets-D4M7XXBh.js +44 -0
  119. package/dist/worker.cjs +1 -1
  120. package/dist/worker.d.cts +9 -0
  121. package/dist/worker.d.ts +9 -0
  122. package/dist/worker.js +4 -4
  123. package/dist/xlsx.cjs +4 -4
  124. package/dist/xlsx.d.cts +39 -2
  125. package/dist/xlsx.d.ts +39 -2
  126. package/dist/xlsx.js +300 -275
  127. package/package.json +1 -1
  128. package/dist/ReportLabelStudio-CaEvYuSK.cjs +0 -1
  129. package/dist/ReportLabelStudio-DQPBmh4v.js +0 -765
  130. package/dist/ReportParamPanel-CVpK8mFc.cjs +0 -1
  131. package/dist/ReportPreview-BBJNlu2U.js +0 -5740
  132. package/dist/ReportPreview-nf4Dk1Jc.cjs +0 -6
  133. package/dist/TemplateOutlinePanel-CDI6mfWx.cjs +0 -1
  134. package/dist/TemplateReviewPanel-BmBrjt6P.cjs +0 -1
  135. package/dist/assets-CxHunY_9.js +0 -232
  136. package/dist/assets-vbjAGgk8.cjs +0 -1
  137. package/dist/auto-BkdGiNtr.js +0 -240
  138. package/dist/auto-Tq7ReIC1.cjs +0 -1
  139. package/dist/charts-aCtoswXq.cjs +0 -1
  140. package/dist/component-tree-1_QCiQJX.js +0 -67
  141. package/dist/component-tree-BjZIp6w9.cjs +0 -1
  142. package/dist/computed-4TnxzgIh.cjs +0 -1
  143. package/dist/data-bar-YltqGTaC.cjs +0 -1
  144. package/dist/designer-DU3yDWgs.cjs +0 -2
  145. package/dist/designer-HQi-03R6.js +0 -6869
  146. package/dist/grid-geometry-D3SJgWFv.js +0 -136
  147. package/dist/grid-geometry-D8ReblRV.cjs +0 -1
  148. package/dist/json-snapshot-I5VI84Vp.cjs +0 -2
  149. package/dist/matrix-0hywp0-F.cjs +0 -1
  150. package/dist/matrix-Dy-tyY7E.js +0 -381
  151. package/dist/prefill-Bpyn58AZ.cjs +0 -1
  152. package/dist/prepared-BiSz_9vN.cjs +0 -1
  153. package/dist/prepared-BwjwEzFz.js +0 -87
  154. package/dist/progress-B0ctFpKf.cjs +0 -1
  155. package/dist/progress-Hc2vxoCs.js +0 -52
  156. package/dist/record-bindings-Ct1HkPrc.cjs +0 -1
  157. package/dist/record-bindings-VZGS-Qd8.js +0 -155
  158. package/dist/rich-text-layout-K48VHUoW.cjs +0 -3
  159. package/dist/rich-text-layout-wxBhnAS7.js +0 -102
  160. package/dist/runtime-DsJt1PIf.cjs +0 -1
  161. package/dist/template-bindings-Cg5oBLFT.cjs +0 -1
  162. package/dist/template-bindings-TKnXM7ll.js +0 -62
  163. package/dist/template-catalog-D_2jdnkL.cjs +0 -1
  164. package/dist/template-outline-DWkzZXVC.cjs +0 -1
  165. package/dist/template-outline-DiADphlq.js +0 -88
  166. package/dist/template-registry-DpLUSLwF.cjs +0 -1
  167. package/dist/template-serialization-Cc3h-miv.js +0 -247
  168. package/dist/template-serialization-D1R5oAqh.cjs +0 -1
  169. package/dist/textwrap-OTOUMr4f.cjs +0 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agile-team/mach-report",
3
- "version": "2.21.1",
3
+ "version": "2.23.0",
4
4
  "description": "独立的 TypeScript 报表引擎:模板分页、DOM/Canvas/PDF/Excel 输出与 Vue 3 预览组件",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -1 +0,0 @@
1
- "use strict";var He=Object.create;var we=Object.defineProperty;var Ke=Object.getOwnPropertyDescriptor;var Ue=Object.getOwnPropertyNames;var je=Object.getPrototypeOf,Ge=Object.prototype.hasOwnProperty;var Qe=(t,r,l,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of Ue(r))!Ge.call(t,s)&&s!==l&&we(t,s,{get:()=>r[s],enumerable:!(i=Ke(r,s))||i.enumerable});return t};var Ye=(t,r,l)=>(l=t!=null?He(je(t)):{},Qe(r||!t||!t.__esModule?we(l,"default",{value:t,enumerable:!0}):l,t));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),De=require("@agile-team/mach-report/vue"),le=require("./_plugin-vue_export-helper-BLmdZLlg.cjs"),h=require("@agile-team/mach-report"),Ne=require("./progress-B0ctFpKf.cjs"),Ve=require("./designer-DU3yDWgs.cjs");function Ze(){let t;const r=()=>t??=import("@agile-team/mach-report/codes").then(i=>i.createCodeAssetRenderers()).catch(i=>{throw t=void 0,i}),l=i=>async s=>{Ne.assertOutputActive(s.signal);const n=await r();return Ne.assertOutputActive(s.signal),n[i](s)};return{assetRenderers:{barcode:l("barcode"),qrcode:l("qrcode")}}}function We(t){const r=t.pages[0];if(!r||t.pages.some(s=>s.layout==="wide"||s.widthMm!==r.widthMm||s.heightMm!==r.heightMm))return;const l=Math.floor(190/(r.widthMm+4)),i=Math.floor(277/(r.heightMm+4));if(!(l<1||i<1||l*i>1e3))return{paper:"a4",columns:l,rows:i,marginMm:12,gapMm:4,capacity:l*i}}const se=[{id:"material",widthMm:80,heightMm:55,faces:1},{id:"paired",widthMm:80,heightMm:55,faces:2},{id:"warehouse",widthMm:100,heightMm:60,faces:1}];function Me(t,r){return r??t.fields.find(l=>l.semanticRole==="identifier"&&l.field!==t.rowKey)?.field??t.rowKey??t.fields[0]?.field}function de(t,r,l){const i=t.fields.filter(a=>a.field!==r&&a.field!==t.rowKey);if(l===void 0)return i.map((a,d)=>({field:a,index:d,priority:Xe(a)})).sort((a,d)=>a.priority-d.priority||a.index-d.index).slice(0,5).map(a=>a.field);const s=new Map(i.map(a=>[a.field,a])),n=[...new Set(l)];if(n.length>5)throw new Error("成品标签最多显示 5 个字段,请先精简显示字段");return n.map(a=>{const d=s.get(a);if(!d)throw new Error(`标签显示字段未在业务契约中声明:${a}`);return d})}function Xe(t){return/^(?:name|title|label|category)$/i.test(t.field)||/名称|品名|品类|类别/.test(t.label??"")?0:t.semanticRole==="dimension"?1:t.semanticRole==="measure"&&t.unit?2:t.semanticRole==="identifier"?3:t.semanticRole==="date"?4:5}function et(t="paired"){return se.find(r=>r.id===t)??se[1]}const ve="#173450",ce="#586c82";function O(t,r,l,i,s=4,n=7){return{kind:"text",text:t,leftMm:r,topMm:l,widthMm:i,heightMm:s,style:{fontSize:n,lineHeight:1.1,color:ve,verticalAlign:"middle"}}}function ge(t,r){return{kind:"line",leftMm:4,topMm:t,widthMm:r-8,heightMm:.2,style:{lineColor:"#c9d7e5",lineWidthPt:.55}}}function Ce(t,r,l){const i=[];let s=4;if(l?.logoData){if(!/^data:image\/(?:png|jpeg);base64,/i.test(l.logoData))throw new Error("标签Logo须使用PNG或JPEG图片数据");i.push({kind:"image",leftMm:4,topMm:3,widthMm:12,heightMm:7,imageData:l.logoData,meta:{labelBrandLogo:!0}}),s=19}return i.push({...O(l?.name?.trim()||t,s,3,r-s-4,5,9),style:{fontSize:9,color:"#205582"},meta:{labelStudioRole:"brand-name"}}),l?.tagline?.trim()&&i.push({...O(l.tagline.trim(),s,8,r-s-4,3,5.5),style:{fontSize:5.5,color:ce},meta:{labelStudioRole:"brand-tagline"}}),i.push(ge(12,r)),i}function Re(t,r,l,i,s=4.7){return t.flatMap((n,a)=>{const d=r+a*s;return[{...O(n.label??n.field,4,d,l,4,6),style:{fontSize:6,color:ce},meta:{labelStudioRole:"field-label",labelStudioField:n.field}},{...O("",4+l,d,i,4,7),binding:{field:n.field,...n.format?{format:n.format}:{}},meta:{labelStudioRole:"field-value",labelStudioField:n.field}}]})}function tt(t,r){return t?[{...O("",4,14,r,7,14),binding:{field:t},style:{fontSize:14,color:ve}}]:[]}function nt(t,r,l,i){const s=de(t,l,i.fields),n=[...Ce(r,80,i.brand),...tt(l,71),...Re(s,23,21,27)];l&&n.push({kind:"qrcode",leftMm:55,topMm:23,widthMm:20,heightMm:20,binding:{field:l},code:{quietZoneModules:4,errorCorrection:"M"}}),n.push(ge(48,80));const a=t.fields.find(d=>d.field===l)?.label??r;return n.push({...O(a,4,49,71,3,5.8),style:{fontSize:5.8,color:ce}}),n}function Ee(t,r,l,i,s=80){const n=Ce(r,s,i.brand);l&&(n.push({...O("",4,14,s-8,8,16),binding:{field:l},style:{fontSize:16,align:"center",color:ve}}),n.push({kind:"qrcode",leftMm:(s-20)/2,topMm:23,widthMm:20,heightMm:20,binding:{field:l},code:{quietZoneModules:4,errorCorrection:"M"}})),n.push(ge(44,s));const a=de(t,l,i.fields);return s===100?a.forEach((d,g)=>{const p=g%2===0?4:52,f=46+Math.floor(g/2)*4.3;n.push({...O(d.label??d.field,p,f,19,3.7,5.8),style:{fontSize:5.8,color:ce},meta:{labelStudioRole:"field-label",labelStudioField:d.field}}),n.push({...O("",p+19,f,25,3.7,6.5),binding:{field:d.field,...d.format?{format:d.format}:{}},meta:{labelStudioRole:"field-value",labelStudioField:d.field}})}):n.push(...Re(a.slice(0,1),46,24,s-32,5)),n}function ae(t,r,l,i={}){const s=Me(t,l),n=et(i.preset),a=Object.fromEntries(["name","tagline"].flatMap(f=>{const v=i.brand?.[f];return typeof v=="string"?[[f,v]]:[]})),d={preset:n.id,brand:a,fields:de(t,s,i.fields).map(f=>f.field)},g=n.id==="warehouse"?Ee(t,r,s,i,n.widthMm):nt(t,r,s,i),p=[{widthMm:n.widthMm,heightMm:n.heightMm,meta:{title:`${r} · 1`,labelStudio:d},components:g}];return n.faces===2&&p.push({widthMm:n.widthMm,heightMm:n.heightMm,meta:{title:`${r} · 2`,labelStudio:d},components:Ee(t,r,s,i)}),h.defineReportTemplate({id:"record-label",name:r,template:h.createLabelTemplate({dataset:"records",rowKey:t.rowKey,pages:p})})}const B=t=>t.meta?.labelStudioRole,pe=t=>typeof B(t)=="string";function ue(t){const r={...t,...t.meta?{meta:{...t.meta}}:{}};return r.meta&&(delete r.meta.labelStudioRole,delete r.meta.labelStudioField,Object.keys(r.meta).length||delete r.meta),r}function lt(t,r){for(const l of r.components.filter(pe)){if(t.components.some(s=>B(s)===B(l)&&s.meta?.labelStudioField===l.meta?.labelStudioField))continue;const i=t.components.find(s=>!pe(s)&&JSON.stringify(ue(s))===JSON.stringify(ue(l)));i&&(i.meta={...i.meta,...l.meta})}}function at(t,r){const l=t.kind==="list"?Number.POSITIVE_INFINITY:t.heightMm,i=r.kind==="list"?Number.POSITIVE_INFINITY:r.heightMm;return t.leftMm<r.leftMm+r.widthMm&&t.leftMm+t.widthMm>r.leftMm&&t.topMm<r.topMm+i&&t.topMm+l>r.topMm}function rt(t,r){const l={...t,meta:{...t.meta,...r.meta}};return l.kind==="text"&&r.kind==="text"&&(l.text=r.text,r.binding?l.binding=r.binding:delete l.binding),l}function ot(t,r,l,i){const s=i.has("field-value");lt(t,r);const n=new Set(t.components.filter(f=>B(f)==="field-label"||B(f)==="field-value")),a=[...n],d=new Map,g=[];for(const f of l.components.filter(pe)){const v=B(f);if(!i.has(String(v)))continue;const N=v==="field-label"||v==="field-value"?a.find(S=>B(S)===v&&!d.has(S)):t.components.find(S=>B(S)===v);N?d.set(N,rt(N,f)):g.push(f)}const p=t.components.filter(f=>(!s||!n.has(f)||d.has(f))&&(!i.has("brand-tagline")||B(f)!=="brand-tagline"||l.components.some(v=>B(v)==="brand-tagline"))).map(f=>d.get(f)??f);for(const f of g){if(p.some(v=>at(v,f)))return!1;p.push(f)}return t.components=p,t.meta={...t.meta,labelStudio:l.meta?.labelStudio},!0}function it(t,r,l,i,s,n){const a=ae(r,l,i,s),d=ae(r,l,i,n),g=h.parseReportTemplate(t),p=new Set;JSON.stringify(s.fields)!==JSON.stringify(n.fields)&&(p.add("field-label"),p.add("field-value")),(s.brand?.name??"").trim()!==(n.brand?.name??"").trim()&&p.add("brand-name"),(s.brand?.tagline??"").trim()!==(n.brand?.tagline??"").trim()&&p.add("brand-tagline");for(const[f,v]of g.template.pages.entries()){const N=a.template.pages[f],S=d.template.pages[f];if(N&&S&&!ot(v,N,S,p))return}return g}function st(t,r){const l=t.template.pages,i=r.template.pages;return l.length!==i.length||l.some((s,n)=>s.components.length!==i[n].components.length)?!0:l.some((s,n)=>{const a=i[n],d={...s,meta:void 0,components:void 0},g={...a,meta:void 0,components:void 0};return JSON.stringify(d)!==JSON.stringify(g)||s.components.some((p,f)=>JSON.stringify(ue(p))!==JSON.stringify(ue(a.components[f])))})}function ut(t,r,l,i,s){const n={...t,template:ae(r,l,i,s).template},a=t.template.repeat;return a?.copies!==void 0&&n.template.repeat&&(n.template.repeat.copies=a.copies),n}function _(t){const r=t.template.pages[0]?.meta?.labelStudio;if(!r||typeof r!="object")return;const l=r,i=se.find(d=>d.id===l.preset);if(!i)return;const s=Array.isArray(l.fields)?l.fields.filter(d=>typeof d=="string"):void 0;if(s&&s.length>5)return;const n=l.brand&&typeof l.brand=="object"?l.brand:{},a={};for(const d of["name","tagline","logoData"])typeof n[d]=="string"&&(a[d]=n[d]);return{preset:i.id,fields:s,brand:a}}function ke(t,r,l){const i=new Set(t.fields.filter(n=>n.field!==r&&n.field!==t.rowKey).map(n=>n.field)),s=l?.filter(n=>i.has(n));return de(t,r,s).map(n=>n.field)}function dt(t,r){const l=e.computed(()=>({...Ve.LABEL_STUDIO_MESSAGES,...t.messages})),i=e.computed(()=>t.title??l.value.title),s={preset:t.preset,brand:t.brand,fields:t.fields},n=e.shallowRef(t.modelValue?h.parseReportTemplate(t.modelValue):ae(t.schema,i.value,t.identityField,s)),a=e.shallowRef(h.parseReportTemplate(n.value)),d=e.ref(!1),g=e.shallowRef();let p,f;e.onMounted(()=>{t.modelValue||r(h.parseReportTemplate(n.value))});const v=e.ref("preview"),N=e.ref("all"),S=e.ref(1),C=e.ref(!1),Y=e.ref(!1),b=e.ref(),$=Ve.useTemplateDiscard(()=>t.beforeDiscard),I=e.computed(()=>Y.value||$.pending.value||d.value&&!b.value||b.value?.saving===!0||b.value?.blocked===!0),w=e.ref(""),H=e.computed(()=>Me(t.schema,t.identityField)),R=e.ref(_(n.value)?.preset??(t.modelValue?void 0:t.preset??"paired")),q=e.ref(_(n.value)?.brand?.name??t.brand?.name??""),k=e.ref(_(n.value)?.brand?.tagline??t.brand?.tagline??""),V=e.ref(ke(t.schema,H.value,_(n.value)?.fields??t.fields)),K=e.ref(""),U=e.computed(()=>t.schema.fields.filter(o=>o.field!==H.value&&o.field!==t.schema.rowKey)),j=e.computed(()=>V.value.map(o=>({field:o,label:t.schema.fields.find(m=>m.field===o)?.label??o}))),Z=e.computed(()=>{const o=K.value.trim().toLocaleLowerCase();return U.value.filter(m=>`${m.label??""} ${m.field}`.toLocaleLowerCase().includes(o)).slice(0,30)}),z=e.computed(()=>{const o=n.value.template.pages[0]?.components.find(m=>m.kind==="image"&&m.meta?.labelBrandLogo);return o?.kind==="image"?o.imageData:t.brand?.logoData}),W=e.computed(()=>({preset:R.value,fields:V.value,brand:{...t.brand,...z.value?{logoData:z.value}:{},name:q.value,tagline:k.value}}));let X=JSON.stringify(_(n.value));const ee=e.computed(()=>{const o=_(n.value);if(!o)return!0;try{const m=ae(t.schema,i.value,t.identityField,{...o,brand:{...o.brand,...z.value?{logoData:z.value}:{}}});return st(n.value,m)}catch{return!0}}),L=e.ref(!1),P=e.computed(()=>R.value!==_(n.value)?.preset),A=()=>JSON.stringify({preset:R.value,fields:V.value,name:q.value,tagline:k.value}),te=e.ref(A()),x=e.computed(()=>A()!==te.value),ne=e.computed(()=>h.serializeReportTemplate(n.value)),fe=e.computed(()=>h.serializeReportTemplate(a.value)),G=e.computed(()=>ne.value!==fe.value),re=e.computed(()=>x.value||G.value||b.value?.pendingLocalChanges===!0);function F(){L.value=!1;const o=_(n.value);R.value=o?.preset,V.value=ke(t.schema,H.value,o?.fields??t.fields),q.value=o?.brand?.name??t.brand?.name??"",k.value=o?.brand?.tagline??t.brand?.tagline??"",X=JSON.stringify(o),te.value=A()}function Q(o){const m=_(o),y=JSON.stringify(m);y!==X&&(X=y,F())}let D=!1;e.onScopeDispose(()=>{D=!0,f?.abort()});const J=Ze();De.provideMachReportConfig({get defaults(){return{...t.preview,assets:{...J,...t.preview?.assets,assetRenderers:{...J.assetRenderers,...t.preview?.assets?.assetRenderers}}}}}),e.watch(b,o=>{const m=g.value;if(!o||!m)return;const y=n.value;h.serializeReportTemplate(m)!==ne.value&&o.applyTemplate?.(y.template),g.value=void 0,p=void 0},{flush:"post"}),e.watch([R,V,q,k],()=>{L.value=!1}),e.watch(()=>t.modelValue,o=>{o&&h.serializeReportTemplate(o)!==ne.value&&(n.value=h.parseReportTemplate(o),a.value=h.parseReportTemplate(o),p=void 0,Q(o))}),e.watch(()=>t.rows,()=>{N.value="all",S.value=1});function M(o){w.value="",n.value=o,Q(o),r(o)}function c(o,m){m&&V.value.length<5&&!V.value.includes(o)?V.value=[...V.value,o]:m||(V.value=V.value.filter(y=>y!==o))}function u(o=!1){if(I.value||D)return!1;if(!R.value)return w.value=l.value.choosePreset,!1;if(b.value?.canApply===!1)return w.value=b.value.saveReason||l.value.applyFirst,!1;if(P.value&&!o)return L.value=!0,!1;try{const m=_(n.value);let y;if(o?y=ut(n.value,t.schema,i.value,t.identityField,W.value):m&&(y=it(n.value,t.schema,i.value,t.identityField,m,W.value)),!y)return w.value=l.value.contentNeedsDesign,!1;if(b.value?.applyTemplate){if(!b.value.applyTemplate(y.template))return w.value=l.value.saveFailed,!1}else p=h.parseReportTemplate(n.value),M(y);return L.value=!1,te.value=A(),!0}catch(m){return w.value=m instanceof Error?m.message:l.value.saveFailed,!1}}const T=e.computed(()=>N.value==="all"?t.rows:Number.isSafeInteger(S.value)&&t.rows[S.value-1]?[t.rows[S.value-1]]:[]),oe=e.computed(()=>n.value.template.repeat?.dataset??"records"),Te=e.computed(()=>({[oe.value]:T.value})),_e=e.computed(()=>({[oe.value]:T.value.slice(0,3)})),Be=e.computed(()=>({[oe.value]:t.schema})),Le=e.computed(()=>[{id:oe.value,label:i.value,rowKey:t.schema.rowKey,fields:t.schema.fields}]),xe=e.computed(()=>n.value.template.pages[0]),be=e.computed(()=>n.value.template.pages.length),Fe=e.computed(()=>{const o=n.value.template.repeat?.copies??1;return typeof o=="number"?o:void 0}),Oe=e.computed(()=>{const o=n.value.template.repeat?.copies;return typeof o=="object"?o.field:void 0}),he=e.computed(()=>{const o=Oe.value;if(!o)return;let m=0;for(const y of T.value){const E=Object.getOwnPropertyDescriptor(y,o)?.value;if(typeof E!="number"||!Number.isSafeInteger(E)||E<1||E>1e3)return;m+=E}return m}),$e=e.computed(()=>{const o=Fe.value;return o!==void 0?Number.isSafeInteger(o)&&o>=1&&o<=1e3?T.value.length*o*be.value:void 0:he.value===void 0?void 0:he.value*be.value}),ie=e.computed(()=>We(n.value.template)),Ie=e.computed(()=>{const o=ie.value;return o?l.value.sheetHint.replace("{columns}",String(o.columns)).replace("{rows}",String(o.rows)).replace("{capacity}",String(o.capacity)):l.value.sheetUnavailable});e.watch(ie,o=>{o||(C.value=!1)});const qe=e.computed(()=>{const o=h.createReportSource({labels:h.defineLabelReport({template:n.value.template,rows:T.value,dataSchema:t.schema})}),m=C.value?ie.value:void 0;return async y=>{const E=await o(y);return m?h.imposeLabelSheets(E,{...m,signal:y.signal}):E}}),ye=async(o,m)=>{if(D||m.signal.aborted)throw new DOMException("标签模板保存已取消","AbortError");const y=h.parseReportTemplate(o),E=h.parseReportTemplate(t.save?await t.save(y,m):y);if(E.id!==o.id)throw new Error(l.value.invalidSavedTemplate);if(D||m.signal.aborted)throw new DOMException("标签模板保存已取消","AbortError");return a.value=h.parseReportTemplate(E),M(E),E};async function Se(){if(!(I.value||D)){if(x.value&&P.value){w.value=l.value.applyLayoutFirst;return}if(!(x.value&&!u())){Y.value=!0;try{if(b.value){if(b.value.canApply===!1){w.value=b.value.saveReason||l.value.applyFirst;return}if(b.value.pendingLocalChanges&&await b.value.save(),b.value.pendingLocalChanges){w.value=l.value.saveFailed;return}}else G.value&&(f=new AbortController,await ye(n.value,{expectedRevision:n.value.revision,signal:f.signal}),p=void 0);if(!D)return w.value="",h.parseReportTemplate(n.value)}catch(o){D||(w.value=o instanceof Error?o.message:l.value.saveFailed)}finally{Y.value=!1,f=void 0}}}}async function ze(o){if(!(I.value||o===v.value))if(o==="design"&&!d.value){if(x.value&&P.value){w.value=l.value.applyLayoutFirst;return}if(x.value&&!u())return;g.value=p,d.value=!0,v.value=o}else await Se()&&(v.value=o)}function Pe(o){d.value=!1,v.value="preview",w.value=`${l.value.designLoadFailed} ${o instanceof Error?o.message:String(o)}`}let me=!1;const Ae=o=>me||$.request(o);async function Je(){if(I.value)return!1;const o=b.value?.pendingLocalChanges===!0;if(!o&&!G.value&&!x.value)return!0;if(!(o&&b.value?await b.value.guardChanges():await $.request({reason:"replace",document:h.parseReportTemplate(n.value),pendingLocalChanges:!0}))||D)return!1;if(o&&b.value){me=!0;try{await b.value.reset()}finally{me=!1}}return M(h.parseReportTemplate(a.value)),p=void 0,F(),!0}return{m:l,notice:w,title:i,document:n,mode:v,editorVisited:d,editorInitialDocument:g,failDesignLoad:Pe,sheetLayout:ie,sheetHint:Ie,rebuilding:L,layoutChanged:P,record:N,recordIndex:S,sheet:C,busy:I,editor:b,rows:T,datasets:Te,designDatasets:_e,schemas:Be,bindings:Le,paper:xe,labelCount:$e,fetcher:qe,update:M,save:ye,navigate:ze,prepare:Se,guardChanges:Je,preset:R,presets:se,brandName:q,brandTagline:k,fields:V,fieldQuery:K,selectedFields:j,availableFields:Z,fieldCount:e.computed(()=>U.value.length),configurationDirty:x,pendingLocalChanges:re,custom:ee,toggleField:c,applyConfiguration:u,requestRebuild:()=>{L.value=!0},cancelRebuild:()=>{L.value=!1},restoreConfiguration:F,beforeDiscard:Ae,confirmation:$.confirmation,decideDiscard:$.decide}}const ct=["aria-label"],ft={class:"mr-label-context"},mt={class:"mr-label-identity"},pt={class:"mr-label-spec"},vt=["disabled"],gt=["aria-label"],bt=["aria-pressed","onClick"],ht={class:"mr-label-fields"},yt={key:0,class:"mr-label-selected-fields"},St=["aria-label","onClick"],wt={class:"mr-label-field-search"},Nt=["aria-label","placeholder"],Vt={class:"mr-label-field-options"},Et=["checked","disabled","onChange"],kt={key:0},Dt={key:1},Mt={class:"mr-label-brand"},Ct=["placeholder"],Rt=["disabled"],Tt={key:1,class:"mr-label-rebuild",role:"alert"},_t={key:3,class:"mr-label-reflow-hint"},Bt={class:"mr-label-reflow-hint"},Lt={class:"mr-label-record"},xt=["disabled"],Ft={value:"all"},Ot={value:"single"},$t={key:0,class:"mr-label-record-index"},It=["max","aria-label","disabled"],qt={class:"mr-label-count"},zt={class:"mr-label-help"},Pt={class:"mr-label-main"},At={class:"mr-label-bar"},Jt=["aria-label"],Ht=["aria-pressed","disabled"],Kt=["aria-pressed","disabled"],Ut={key:0,class:"mr-label-notice",role:"status"},jt=["aria-label"],Gt={class:"mr-label-imposition"},Qt=["disabled"],Yt={key:3,class:"mr-label-editor"},Zt={key:0,class:"mr-label-editor-loading",role:"status"},Wt=e.defineComponent({__name:"ReportLabelStudio",props:{showSave:{type:Boolean,default:!0},rows:{},schema:{},title:{},identityField:{},modelValue:{},preview:{},save:{},beforeDiscard:{},messages:{},preset:{},brand:{},fields:{}},emits:["update:modelValue"],setup(t,{expose:r,emit:l}){const i=t,s=l,n=dt(i,M=>s("update:modelValue",M)),{m:a,notice:d,title:g,document:p,mode:f,record:v,recordIndex:N,sheet:S,busy:C,editor:Y,rows:b,designDatasets:$,schemas:I,bindings:w,paper:H,labelCount:R,fetcher:q,preset:k,presets:V,brandName:K,brandTagline:U,fields:j,fieldQuery:Z,selectedFields:z,availableFields:W,fieldCount:X,configurationDirty:ee,pendingLocalChanges:L,custom:P,confirmation:A,editorVisited:te,editorInitialDocument:x,sheetLayout:ne,sheetHint:fe,rebuilding:G,layoutChanged:re}=n,F=e.shallowRef();let Q=!1;e.onScopeDispose(()=>{Q=!0}),e.watch(n.editorVisited,async M=>{if(!(!M||F.value))try{const c=await Promise.resolve().then(()=>require("./designer-DU3yDWgs.cjs")).then(u=>u.ReportTemplateEditor$1);Q||(F.value=e.markRaw(c.default))}catch(c){Q||n.failDesignLoad(c)}});const D=e.ref();let J=null;return e.watch(A,async M=>{M?(J=window.document.activeElement,await e.nextTick(),D.value?.focus()):J?.isConnected&&(J.focus(),J=null)}),r({guardChanges:n.guardChanges,prepare:n.prepare,get busy(){return C.value},get pendingLocalChanges(){return L.value}}),(M,c)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["mr-label-studio",{"is-design":e.unref(f)==="design"}]),"aria-label":e.unref(g)},[e.createElementVNode("aside",ft,[e.createElementVNode("div",mt,[e.createVNode(le._sfc_main,{name:"file",size:18}),e.createElementVNode("strong",null,e.toDisplayString(e.unref(g)),1),e.createElementVNode("small",null,e.toDisplayString(e.unref(P)?e.unref(a).customTemplate:e.unref(a).readyTemplate),1)]),e.createElementVNode("div",pt,[e.createElementVNode("strong",null,[e.createTextVNode(e.toDisplayString(e.unref(H)?.widthMm)+" ",1),c[16]||(c[16]=e.createElementVNode("i",null,"×",-1)),e.createTextVNode(" "+e.toDisplayString(e.unref(H)?.heightMm),1)]),e.createElementVNode("span",null,"mm · "+e.toDisplayString(e.unref(p).template.pages.length)+" "+e.toDisplayString(e.unref(a).faces),1)]),e.createElementVNode("fieldset",{class:"mr-label-quick",disabled:e.unref(C)},[e.createElementVNode("legend",null,e.toDisplayString(e.unref(a).layout),1),e.createElementVNode("div",{class:"mr-label-presets","aria-label":e.unref(a).layout},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),u=>(e.openBlock(),e.createElementBlock("button",{key:u.id,type:"button","aria-pressed":e.unref(k)===u.id,onClick:T=>k.value=u.id},[e.createElementVNode("span",{class:e.normalizeClass(["mr-label-preset-art",`is-${u.id}`]),"aria-hidden":"true"},[...c[17]||(c[17]=[e.createElementVNode("i",null,null,-1),e.createElementVNode("i",null,null,-1),e.createElementVNode("i",null,null,-1)])],2),e.createElementVNode("span",null,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(a)[`${u.id}Preset`]),1),e.createElementVNode("small",null,e.toDisplayString(u.widthMm)+" × "+e.toDisplayString(u.heightMm)+" · "+e.toDisplayString(u.faces)+" "+e.toDisplayString(e.unref(a).faces),1)])],8,bt))),128))],8,gt),e.createElementVNode("details",ht,[e.createElementVNode("summary",null,[e.createTextVNode(e.toDisplayString(e.unref(a).fields)+" ",1),e.createElementVNode("span",null,e.toDisplayString(e.unref(j).length)+" / 5",1)]),e.unref(z).length?(e.openBlock(),e.createElementBlock("div",yt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(z),u=>(e.openBlock(),e.createElementBlock("button",{key:u.field,type:"button","aria-label":`${e.unref(a).removeField} ${u.label}`,onClick:T=>e.unref(n).toggleField(u.field,!1)},[e.createTextVNode(e.toDisplayString(u.label)+" ",1),c[18]||(c[18]=e.createElementVNode("span",{"aria-hidden":"true"},"×",-1))],8,St))),128))])):e.createCommentVNode("",!0),e.createElementVNode("label",wt,[e.createVNode(le._sfc_main,{name:"search",size:13}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=u=>e.isRef(Z)?Z.value=u:null),type:"search","aria-label":e.unref(a).findField,placeholder:e.unref(a).findField},null,8,Nt),[[e.vModelText,e.unref(Z)]])]),e.createElementVNode("div",Vt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(W),u=>(e.openBlock(),e.createElementBlock("label",{key:u.field},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(j).includes(u.field),disabled:!e.unref(j).includes(u.field)&&e.unref(j).length>=5,onChange:T=>e.unref(n).toggleField(u.field,T.target.checked)},null,40,Et),e.createElementVNode("span",null,e.toDisplayString(u.label??u.field),1)]))),128)),e.unref(W).length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",kt,e.toDisplayString(e.unref(a).noFields),1))]),e.createElementVNode("small",null,e.toDisplayString(e.unref(a).fieldLimit),1),e.unref(X)>30?(e.openBlock(),e.createElementBlock("small",Dt,e.toDisplayString(e.unref(a).fieldSearchHint),1)):e.createCommentVNode("",!0)]),e.createElementVNode("details",Mt,[e.createElementVNode("summary",null,e.toDisplayString(e.unref(a).brand),1),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(a).brandName),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[1]||(c[1]=u=>e.isRef(K)?K.value=u:null),maxlength:"80",placeholder:e.unref(g)},null,8,Ct),[[e.vModelText,e.unref(K)]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(a).brandTagline),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[2]||(c[2]=u=>e.isRef(U)?U.value=u:null),maxlength:"120"},null,512),[[e.vModelText,e.unref(U)]])])]),e.createElementVNode("button",{class:"mr-label-apply",type:"button",disabled:!e.unref(ee)||!e.unref(k),onClick:c[3]||(c[3]=u=>e.unref(n).applyConfiguration())},[e.createVNode(le._sfc_main,{name:"arrow-right",size:13}),e.createTextVNode(e.toDisplayString(e.unref(re)?e.unref(a).applyLayout:e.unref(a).applyContent),1)],8,Rt),e.unref(P)&&e.unref(k)&&!e.unref(G)?(e.openBlock(),e.createElementBlock("button",{key:0,class:"mr-label-reset-configuration mr-label-rebuild-current",type:"button",onClick:c[4]||(c[4]=(...u)=>e.unref(n).requestRebuild&&e.unref(n).requestRebuild(...u))},e.toDisplayString(e.unref(a).rebuildCurrent),1)):e.createCommentVNode("",!0),e.unref(G)?(e.openBlock(),e.createElementBlock("div",Tt,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(a).rebuildTitle),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a).rebuildDescription),1),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[5]||(c[5]=(...u)=>e.unref(n).cancelRebuild&&e.unref(n).cancelRebuild(...u))},e.toDisplayString(e.unref(a).cancelRebuild),1),e.createElementVNode("button",{type:"button",onClick:c[6]||(c[6]=u=>e.unref(n).applyConfiguration(!0))},e.toDisplayString(e.unref(a).confirmRebuild),1)])])):e.createCommentVNode("",!0),e.unref(ee)?(e.openBlock(),e.createElementBlock("button",{key:2,class:"mr-label-reset-configuration",type:"button",onClick:c[7]||(c[7]=(...u)=>e.unref(n).restoreConfiguration&&e.unref(n).restoreConfiguration(...u))},e.toDisplayString(e.unref(a).restoreConfiguration),1)):e.createCommentVNode("",!0),e.unref(ee)&&!e.unref(k)?(e.openBlock(),e.createElementBlock("p",_t,e.toDisplayString(e.unref(a).choosePreset),1)):e.createCommentVNode("",!0),e.createElementVNode("p",Bt,e.toDisplayString(e.unref(re)?e.unref(a).reflowHint:e.unref(a).contentHint),1)],8,vt),e.createElementVNode("label",Lt,[e.createTextVNode(e.toDisplayString(e.unref(a).records),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":c[8]||(c[8]=u=>e.isRef(v)?v.value=u:null),disabled:e.unref(C)||!i.rows.length},[e.createElementVNode("option",Ft,e.toDisplayString(e.unref(a).all)+" · "+e.toDisplayString(i.rows.length),1),e.createElementVNode("option",Ot,e.toDisplayString(e.unref(a).single),1)],8,xt),[[e.vModelSelect,e.unref(v)]])]),e.unref(v)==="single"?(e.openBlock(),e.createElementBlock("label",$t,[e.createTextVNode(e.toDisplayString(e.unref(a).record),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[9]||(c[9]=u=>e.isRef(N)?N.value=u:null),type:"number",min:"1",max:i.rows.length,"aria-label":e.unref(a).record,disabled:e.unref(C)},null,8,It),[[e.vModelText,e.unref(N),void 0,{number:!0}]]),e.createTextVNode(" / "+e.toDisplayString(i.rows.length),1)])):e.createCommentVNode("",!0),e.createElementVNode("p",qt,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(b).length),1),e.createTextVNode(" "+e.toDisplayString(e.unref(a).count)+" ",1),c[19]||(c[19]=e.createElementVNode("span",null,"→",-1)),c[20]||(c[20]=e.createTextVNode()),e.unref(R)!==void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("strong",null,e.toDisplayString(e.unref(R)),1),e.createTextVNode(" "+e.toDisplayString(e.unref(a).labels),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(a).invalidCopies),1)],64))]),e.createElementVNode("details",zt,[e.createElementVNode("summary",null,e.toDisplayString(e.unref(a).guide),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a).help),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a).printHint),1)])]),e.createElementVNode("div",Pt,[e.createElementVNode("header",At,[e.createElementVNode("nav",{"aria-label":e.unref(g)},[e.createElementVNode("button",{type:"button","aria-pressed":e.unref(f)==="preview",disabled:e.unref(C),onClick:c[10]||(c[10]=u=>e.unref(n).navigate("preview"))},[e.createVNode(le._sfc_main,{name:"file",size:14}),e.createTextVNode(e.toDisplayString(e.unref(a).preview),1)],8,Ht),e.createElementVNode("button",{type:"button","aria-pressed":e.unref(f)==="design",disabled:e.unref(C),onClick:c[11]||(c[11]=u=>e.unref(n).navigate("design"))},[e.createVNode(le._sfc_main,{name:"settings",size:14}),e.createTextVNode(e.toDisplayString(e.unref(a).design),1)],8,Kt)],8,Jt),e.createElementVNode("span",null,e.toDisplayString(e.unref(f)==="design"?e.unref(a).designHint:e.unref(a).flow),1)]),e.unref(d)?(e.openBlock(),e.createElementBlock("p",Ut,e.toDisplayString(e.unref(d)),1)):e.createCommentVNode("",!0),e.unref(A)?(e.openBlock(),e.createElementBlock("div",{key:1,class:"mr-label-confirm",role:"alertdialog","aria-label":e.unref(a).discardTitle,onKeydown:c[14]||(c[14]=e.withKeys(e.withModifiers(u=>e.unref(n).decideDiscard(!1),["prevent","stop"]),["esc"]))},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(a).discardTitle),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a).discardDescription),1)]),e.createElementVNode("button",{ref_key:"keepEditingButton",ref:D,type:"button",onClick:c[12]||(c[12]=u=>e.unref(n).decideDiscard(!1))},e.toDisplayString(e.unref(a).keepEditing),513),e.createElementVNode("button",{type:"button",onClick:c[13]||(c[13]=u=>e.unref(n).decideDiscard(!0))},e.toDisplayString(e.unref(a).discard),1)],40,jt)):e.createCommentVNode("",!0),e.unref(f)==="preview"?(e.openBlock(),e.createBlock(e.unref(De.ReportPreview),{key:2,"report-id":"labels",fetcher:e.unref(q),"show-params":!1,height:"100%",toolbar:{exportFormats:["pdf","png","html"],editing:!1,excelImport:!1},messages:{title:e.unref(g),empty:e.unref(a).empty}},{settings:e.withCtx(()=>[e.createElementVNode("label",Gt,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":c[15]||(c[15]=u=>e.isRef(S)?S.value=u:null),type:"checkbox",disabled:!e.unref(ne)},null,8,Qt),[[e.vModelCheckbox,e.unref(S)]]),e.createTextVNode(e.toDisplayString(e.unref(a).sheet),1),e.createElementVNode("small",null,e.toDisplayString(e.unref(fe)),1)])]),_:1},8,["fetcher","messages"])):e.createCommentVNode("",!0),e.unref(te)?e.withDirectives((e.openBlock(),e.createElementBlock("div",Yt,[F.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",Zt,e.toDisplayString(e.unref(a).designLoading),1)),F.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(F.value),{key:1,ref_key:"editor",ref:Y,"model-value":e.unref(x)??e.unref(p),mode:"design","show-mode-switch":!1,"show-save":t.showSave,capabilities:{params:!1},datasets:e.unref($),"data-schemas":e.unref(I),"binding-datasets":e.unref(w),save:e.unref(n).save,"before-discard":e.unref(n).beforeDiscard,preview:t.preview,"onUpdate:modelValue":e.unref(n).update},null,8,["model-value","show-save","datasets","data-schemas","binding-datasets","save","before-discard","preview","onUpdate:modelValue"])):e.createCommentVNode("",!0)],512)),[[e.vShow,e.unref(f)==="design"]]):e.createCommentVNode("",!0)])],10,ct))}});exports.default=Wt;