@agile-team/mach-report 2.21.0 → 2.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/README.md +2 -2
  2. package/dist/{ExcelBindingWizard-B2xXBOJu.cjs → ExcelBindingWizard-Bu0LUlzl.cjs} +1 -1
  3. package/dist/{ExcelBindingWizard-CixTPQAL.js → ExcelBindingWizard-mnAO2qOX.js} +1 -1
  4. package/dist/{ParamEditor-DhHlNxai.cjs → ParamEditor-38ZfNrPU.cjs} +1 -1
  5. package/dist/{ParamEditor-gKhvEsnr.js → ParamEditor-C8l0EC8m.js} +1 -1
  6. package/dist/{ReportBatchPanel-D-lyWKyf.js → ReportBatchPanel-CfUVhvkO.js} +1 -1
  7. package/dist/{ReportBatchPanel-BUdUfTdm.cjs → ReportBatchPanel-nCC06Nfp.cjs} +1 -1
  8. package/dist/ReportLabelStudio-CaEvYuSK.cjs +1 -0
  9. package/dist/{ReportLabelStudio-N2w6DdaZ.js → ReportLabelStudio-DQPBmh4v.js} +164 -163
  10. package/dist/{ReportTemplateLibrary-WZl-AK-2.js → ReportTemplateLibrary-B5t_EcIs.js} +1 -1
  11. package/dist/{ReportTemplateLibrary-Cs9WKneQ.cjs → ReportTemplateLibrary-DVlsf72p.cjs} +1 -1
  12. package/dist/{RuleEditor-DGpmjCko.js → RuleEditor-kT1JsZ9f.js} +1 -1
  13. package/dist/{RuleEditor-Dtcq-7LO.cjs → RuleEditor-xFkCVlii.cjs} +1 -1
  14. package/dist/{TemplateOutlinePanel-cxp95OT9.js → TemplateOutlinePanel-BesgGR1P.js} +1 -1
  15. package/dist/{TemplateOutlinePanel-CkCh506f.cjs → TemplateOutlinePanel-CDI6mfWx.cjs} +1 -1
  16. package/dist/{TemplateReusePanel-CwttuSta.cjs → TemplateReusePanel-BG9Or5-P.cjs} +1 -1
  17. package/dist/{TemplateReusePanel-BZ8VTtrO.js → TemplateReusePanel-BNFU6V-W.js} +1 -1
  18. package/dist/{TemplateReviewPanel-C2YjiaEC.cjs → TemplateReviewPanel-BmBrjt6P.cjs} +1 -1
  19. package/dist/{TemplateReviewPanel-C9cTvsRs.js → TemplateReviewPanel-CwvwyCSs.js} +1 -1
  20. package/dist/artifact-integrity.json +25 -25
  21. package/dist/{designer-CDqok4S5.cjs → designer-DU3yDWgs.cjs} +1 -1
  22. package/dist/{designer-CIDHt5xz.js → designer-HQi-03R6.js} +4 -4
  23. package/dist/designer.cjs +1 -1
  24. package/dist/designer.js +1 -1
  25. package/dist/sbom.cdx.json +1 -1
  26. package/dist/server.cjs +1 -1
  27. package/dist/server.js +1 -1
  28. package/package.json +1 -1
  29. package/dist/ReportLabelStudio-BcjQt73a.cjs +0 -1
@@ -0,0 +1 @@
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;