@agile-team/mach-report 2.9.1 → 2.11.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 (115) hide show
  1. package/README.md +11 -7
  2. package/dist/ExcelBindingWizard-CjIiVox-.cjs +1 -0
  3. package/dist/ExcelBindingWizard-Dxm-K5HL.js +1240 -0
  4. package/dist/ParamEditor-D-Hf5xfO.cjs +1 -0
  5. package/dist/ParamEditor-DRGxzxeO.js +381 -0
  6. package/dist/ReportBatchPanel-BYgg0EDB.cjs +1 -0
  7. package/dist/ReportBatchPanel-Bby5yLzU.js +287 -0
  8. package/dist/ReportPreview-DWXROHBP.cjs +6 -0
  9. package/dist/ReportPreview-DiNXhQI0.js +4138 -0
  10. package/dist/ReportTemplateLibrary-C6CO7YCT.cjs +1 -0
  11. package/dist/ReportTemplateLibrary-DfzDXRvr.js +260 -0
  12. package/dist/RuleEditor-C2QsOHOs.cjs +1 -0
  13. package/dist/RuleEditor-D9wQHrkf.js +2024 -0
  14. package/dist/TemplateReviewPanel-BKofGrV9.js +222 -0
  15. package/dist/TemplateReviewPanel-DwtOcLue.cjs +1 -0
  16. package/dist/analytics.cjs +1 -1
  17. package/dist/analytics.d.cts +4 -0
  18. package/dist/analytics.d.ts +4 -0
  19. package/dist/analytics.js +40 -39
  20. package/dist/{assets-ahTRUXRk.cjs → assets-Bu6UohJx.cjs} +1 -1
  21. package/dist/{assets-DDsfEi8R.js → assets-DegqDNqY.js} +1 -1
  22. package/dist/batch-Bt3Fd27Z.cjs +1 -0
  23. package/dist/batch-mRqhhhjt.js +364 -0
  24. package/dist/{capabilities-Cm9hZ3uV.js → capabilities-CK_7hizc.js} +16 -16
  25. package/dist/capabilities-CsZ-pNHR.cjs +1 -0
  26. package/dist/computed-Bvk0W15F.js +521 -0
  27. package/dist/computed-CGV2a809.cjs +1 -0
  28. package/dist/config-B612mw0x.js +525 -0
  29. package/dist/config-BRoLo2oj.cjs +1 -0
  30. package/dist/designer.cjs +2 -2
  31. package/dist/designer.d.cts +695 -50
  32. package/dist/designer.d.ts +695 -50
  33. package/dist/designer.js +2213 -1748
  34. package/dist/index.cjs +8 -8
  35. package/dist/index.d.cts +205 -6
  36. package/dist/index.d.ts +205 -6
  37. package/dist/index.js +808 -1033
  38. package/dist/injection-keys-Db_DyLkm.cjs +1 -0
  39. package/dist/injection-keys-e85udZCp.js +7 -0
  40. package/dist/list-cell-BuYn4tGF.cjs +1 -0
  41. package/dist/list-cell-ClFra1zS.js +173 -0
  42. package/dist/matrix-DVyWiYsd.cjs +1 -0
  43. package/dist/matrix-yZsGnldA.js +227 -0
  44. package/dist/param-validation-BlHHXs6u.js +153 -0
  45. package/dist/param-validation-DCK039V1.cjs +1 -0
  46. package/dist/pdf.cjs +49 -49
  47. package/dist/pdf.d.cts +31 -1
  48. package/dist/pdf.d.ts +31 -1
  49. package/dist/pdf.js +4797 -4650
  50. package/dist/plugin-BDTU4D94.cjs +1 -0
  51. package/dist/plugin-Cd5G2QQn.js +22 -0
  52. package/dist/region-binding-workflow-CXDmt9Bs.js +977 -0
  53. package/dist/region-binding-workflow-DhQvu1co.cjs +3 -0
  54. package/dist/{report-params-B_VCihAh.js → report-params-B44imUd4.js} +1 -1
  55. package/dist/{report-params-CjWrjPl6.cjs → report-params-SJfhKgaX.cjs} +1 -1
  56. package/dist/server/node.d.cts +48 -5
  57. package/dist/server/node.d.ts +48 -5
  58. package/dist/server-node.cjs +1 -1
  59. package/dist/server-node.js +503 -317
  60. package/dist/server.cjs +1 -1
  61. package/dist/server.d.cts +252 -4
  62. package/dist/server.d.ts +252 -4
  63. package/dist/server.js +567 -469
  64. package/dist/style.css +1 -1
  65. package/dist/template-registry-WNXdkiET.js +506 -0
  66. package/dist/template-registry-ukBGlm8N.cjs +1 -0
  67. package/dist/template-review-BXp2oyqg.cjs +1 -0
  68. package/dist/template-review-BdcXSYbx.js +1616 -0
  69. package/dist/tree-BX380Rr7.cjs +1 -0
  70. package/dist/tree-CqcQ99NM.js +172 -0
  71. package/dist/useLocalDraft-C07SYRnC.js +11 -0
  72. package/dist/useLocalDraft-Yiw1wFgI.cjs +1 -0
  73. package/dist/{validate-DWPF7icl.js → validate-7s0yn6ii.js} +26 -26
  74. package/dist/validate-DsRiNw8h.cjs +1 -0
  75. package/dist/vue/async.d.cts +118 -6
  76. package/dist/vue/async.d.ts +118 -6
  77. package/dist/vue/index.d.cts +177 -11
  78. package/dist/vue/index.d.ts +177 -11
  79. package/dist/vue-async.cjs +1 -1
  80. package/dist/vue-async.js +5 -5
  81. package/dist/vue.cjs +1 -1
  82. package/dist/vue.js +116 -113
  83. package/dist/{import-template-CNMLJSQw.js → workbook-session-BKOTwcoq.js} +4290 -4227
  84. package/dist/{import-template-CpxunKVp.cjs → workbook-session-CLYLhZWu.cjs} +17 -17
  85. package/dist/worker.cjs +1 -1
  86. package/dist/worker.d.cts +9 -2
  87. package/dist/worker.d.ts +9 -2
  88. package/dist/worker.js +1 -1
  89. package/dist/xlsx.cjs +4 -2
  90. package/dist/xlsx.d.cts +159 -3
  91. package/dist/xlsx.d.ts +159 -3
  92. package/dist/xlsx.js +354 -192
  93. package/package.json +1 -1
  94. package/dist/ExcelBindingWizard-DiaxvWpQ.cjs +0 -1
  95. package/dist/ExcelBindingWizard-RLJIXKKG.js +0 -816
  96. package/dist/ReportPreview-B5ZNEasW.js +0 -4439
  97. package/dist/ReportPreview-DRtVPUYo.cjs +0 -6
  98. package/dist/RuleEditor-CskN5Fr3.cjs +0 -1
  99. package/dist/RuleEditor-CtJFzKuY.js +0 -1578
  100. package/dist/TemplateReviewPanel-C_Lmzis6.cjs +0 -1
  101. package/dist/TemplateReviewPanel-Cn32OY4_.js +0 -173
  102. package/dist/binding-preview-B5834rml.cjs +0 -2
  103. package/dist/binding-preview-ChXjN5L5.js +0 -649
  104. package/dist/capabilities-DYzWL7KS.cjs +0 -1
  105. package/dist/matrix-CNPDJxED.js +0 -745
  106. package/dist/matrix-Div9Ilh3.cjs +0 -1
  107. package/dist/param-validation-BWNjLcN0.js +0 -116
  108. package/dist/param-validation-CiTxFeZ8.cjs +0 -1
  109. package/dist/plugin-BWwIgZXV.js +0 -25
  110. package/dist/plugin-Dg-J1Rbm.cjs +0 -1
  111. package/dist/template-registry-CHMYZ7SD.cjs +0 -1
  112. package/dist/template-registry-R61AMCr0.js +0 -433
  113. package/dist/template-review-hvWWQFsi.js +0 -1027
  114. package/dist/template-review-jEcOfmGr.cjs +0 -1
  115. package/dist/validate-BDiMqkJC.cjs +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agile-team/mach-report",
3
- "version": "2.9.1",
3
+ "version": "2.11.0",
4
4
  "description": "独立的 TypeScript 报表引擎:模板分页、DOM/Canvas/PDF/Excel 输出与 Vue 3 预览组件",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),w=require("./_plugin-vue_export-helper-BLmdZLlg.cjs"),S=require("./binding-preview-B5834rml.cjs"),oe=require("./designer.cjs");function H(a="",A=0){return{version:"1.0",sheet:a,dataset:"",regions:{header:"",detail:""},fields:Array.from({length:A},()=>""),rowKey:""}}function G(a){return a instanceof Error?a.message:String(a)}function le(a,A){const m=e.shallowRef(),c=e.ref(H()),L=e.ref({id:a.identity?.id??"excel-template",name:a.identity?.name??"Excel 业务模板"}),s=e.ref(""),B=e.ref([]);let h;const d=e.ref(""),D=e.ref(!1),E=e.ref(!1),N=e.ref(!1),x=e.ref(1),I=e.ref(1),M=e.ref(),T=e.ref(),C=e.ref(0),$=e.computed(()=>({...oe.EXCEL_BINDING_MESSAGES,...a.messages})),o=e.computed(()=>!!a.readonly||D.value),V=e.computed(()=>m.value?.sheets.find(l=>l.name===c.value.sheet)),v=e.computed(()=>V.value?S.parseImportRange(V.value.range):void 0),F=e.computed(()=>a.datasets.find(l=>l.id===c.value.dataset)),K=e.computed(()=>m.value&&V.value?S.getExcelSheetWindow(m.value,V.value.name,{row:x.value,column:I.value}):void 0),f=e.computed(()=>m.value?S.validateExcelBindingRegions(m.value,c.value):[]),y=e.computed(()=>{if(!m.value)return{ok:!1,issues:[],mapped:0,total:0};const l=S.validateExcelBindingFields(m.value,c.value,a.datasets),r=[...f.value,...l.issues];return{...l,ok:r.length===0,issues:r}}),X=e.computed(()=>c.value.fields.slice(C.value*12,(C.value+1)*12).map((l,r)=>({index:C.value*12+r,field:l,physical:S.columnName((v.value?.left??1)+C.value*12+r)}))),J=e.computed(()=>F.value?.fields.filter(l=>l.type!=="boolean")??[]),b=e.computed(()=>M.value!==void 0&&T.value!==void 0?{top:Math.min(M.value,T.value),bottom:Math.max(M.value,T.value)}:void 0);let k,p=0;function R(){p++,k?.abort(),k=void 0,D.value=!1}function z(){x.value=v.value?.top??1,I.value=v.value?.left??1,M.value=void 0,T.value=void 0,C.value=0,E.value=!1,N.value=!1}function q(l){R();try{const r=S.parseExcelBindingSession(l);R(),h=void 0,B.value=r.source.sheets.map(g=>({name:g.name,index:g.index})),m.value=r.source,c.value=r.recipe,L.value={...r.identity,...a.lockId&&a.identity?{id:a.identity.id}:{}},s.value=r.recipe.sheet,d.value="",z()}catch(r){d.value=G(r)}}e.watch(()=>a.session,l=>{l&&q(l)},{immediate:!0}),e.watch(()=>a.readonly,l=>{l&&R()}),e.watch([c,L],()=>{E.value=!1,N.value=!1},{deep:!0,flush:"sync"}),e.watch(()=>a.datasets,()=>{E.value=!1,N.value=!1}),e.onBeforeUnmount(R);async function P(l){if(a.readonly)return;if(R(),!/\.xlsx$/i.test(l.name)){d.value=$.value.invalidFile;return}const r=++p;k=new AbortController,D.value=!0,d.value="";try{const{inspectExcelWorkbook:g,importExcelTemplate:_}=await Promise.resolve().then(()=>require("./import-template-CpxunKVp.cjs")).then(W=>W.importTemplate);if(r!==p||a.readonly)return;const U=await g(l,{...a.importOptions,signal:k.signal});if(r!==p||a.readonly)return;const O=U.sheets.filter(W=>W.visible);if(!O.length)throw new Error("Excel 中没有可导入的可见工作表");const te=await _(l,{...a.importOptions,sheets:[O[0].name],signal:k.signal});if(r!==p||a.readonly)return;m.value=te,s.value=l.name,h=l,B.value=O.map(W=>({name:W.name,index:W.index})),c.value=H(te.sheets[0].name,te.sheets[0].columnCount),z()}catch(g){r===p&&(d.value=G(g))}finally{r===p&&(D.value=!1,k=void 0)}}async function Q(l){if(o.value||!B.value.some(_=>_.name===l))return;const r=m.value?.sheets.find(_=>_.name===l);if(r){c.value=H(l,r.columnCount),d.value="",z();return}if(!h)return;R();const g=++p;k=new AbortController,D.value=!0,d.value="";try{const{importExcelTemplate:_}=await Promise.resolve().then(()=>require("./import-template-CpxunKVp.cjs")).then(O=>O.importTemplate);if(g!==p||a.readonly)return;const U=await _(h,{...a.importOptions,sheets:[l],signal:k.signal});if(g!==p||a.readonly)return;m.value=U,c.value=H(l,U.sheets[0].columnCount),z()}catch(_){g===p&&(d.value=G(_))}finally{g===p&&(D.value=!1,k=void 0)}}function Y(l){o.value||(c.value.dataset=l,c.value.rowKey="",c.value.fields.fill(""),E.value=!1,N.value=!1)}function Z(l,r){o.value||!v.value||l<v.value.top||l>v.value.bottom||((!r||M.value===void 0)&&(M.value=l),T.value=l)}function ee(l){if(o.value||!m.value||!b.value){o.value||(d.value=$.value.emptySelection);return}c.value.regions[l]=S.excelBindingRowRange(m.value,c.value.sheet,b.value.top,b.value.bottom),E.value=!1,N.value=!1,d.value=""}function j(l){o.value||(delete c.value.regions[l],E.value=!1,N.value=!1)}function u(l,r){!o.value&&l>=0&&l<c.value.fields.length&&(c.value.fields[l]=r,E.value=!1,N.value=!1)}function n(l){for(const r of["title","header","detail","footer"]){const g=c.value.regions[r];if(!g)continue;const _=S.parseImportRange(g);if(l>=_.top&&l<=_.bottom)return r}}function t(l,r){v.value&&(l==="row"?x.value=Math.max(v.value.top,Math.min(v.value.bottom,x.value+r)):I.value=Math.max(v.value.left,Math.min(v.value.right,I.value+r)))}function i(){E.value=!0,d.value=""}function ne(){if(!(o.value||!m.value)&&(E.value=!0,d.value="",!!y.value.ok))try{const l={...L.value,...a.lockId&&a.identity?{id:a.identity.id}:{}},r=S.createExcelBindingDocument(m.value,c.value,a.datasets,l),g=S.createExcelBindingSession(m.value,c.value,l);A({...r,session:g}),N.value=!0}catch(l){d.value=G(l)}}return{imported:m,recipe:c,identity:L,sourceName:s,sheetChoices:B,error:d,loading:D,checked:E,applied:N,row:x,column:I,mappingPage:C,m:$,disabled:o,sheet:V,sourceRange:v,dataset:F,window:K,validation:y,mappings:X,rowKeys:J,selection:b,cancel:R,importFile:P,chooseSheet:Q,chooseDataset:Y,chooseRow:Z,markRegion:ee,clearRegion:j,setMapping:u,regionAt:n,moveWindow:t,check:i,apply:ne}}const ae=["aria-label","aria-busy"],re={class:"mr-binding-bar"},ie={class:"mr-binding-heading"},se=["aria-label","disabled"],ue=["disabled"],ce={key:0,class:"mr-binding-error",role:"alert"},de={key:1,class:"mr-binding-placeholder",role:"status"},me={key:2,class:"mr-binding-placeholder"},fe=["disabled"],pe={class:"mr-binding-sourcebar"},ve=["value","aria-label","disabled"],ge=["value"],ye={class:"mr-binding-range"},be={class:"mr-binding-sample-note"},he={class:"mr-binding-layout"},ke={class:"mr-binding-source"},Ee={class:"mr-binding-grid-heading"},Ne=["aria-label"],Ve={class:"mr-binding-grid"},_e=["data-region"],we={scope:"row"},Be=["data-source-row","aria-label","aria-pressed","disabled","onPointerdown","onPointerenter","onKeydown"],Se=["rowspan","colspan","title"],De={key:1,class:"mr-binding-grid-footer"},xe={class:"mr-binding-window"},Ce=["aria-label","disabled"],$e=["min","max","value"],Re=["aria-label","disabled"],Me={class:"mr-binding-window"},Te=["aria-label","disabled"],Fe=["min","max","value"],ze=["aria-label","disabled"],Ie={class:"mr-binding-inspector"},Ke=["disabled"],Le={class:"mr-binding-group"},Pe=["data-role"],We={key:0},Ae=["aria-label","disabled","onClick"],qe=["aria-label","onClick"],Oe={key:0,class:"mr-binding-note"},je={class:"mr-binding-group"},Ue={class:"mr-binding-label"},He=["value","aria-label"],Ge={value:""},Xe=["value"],Je={key:0,class:"mr-binding-note"},Qe={key:1,class:"mr-binding-label"},Ye=["aria-label"],Ze={value:""},et=["value"],tt={key:2,class:"mr-binding-mappings"},nt=["aria-label","value","onChange"],ot={value:""},lt=["value"],at={key:0},rt={key:3,class:"mr-binding-map-pages"},it=["disabled","aria-label"],st=["disabled","aria-label"],ut={class:"mr-binding-group"},ct={class:"mr-binding-label"},dt=["value","readonly"],mt={class:"mr-binding-label"},ft={key:0,class:"mr-binding-issues",role:"alert"},pt={key:0},vt={key:1,class:"mr-binding-warnings"},gt={class:"mr-binding-actions"},yt=["disabled"],bt=["disabled"],ht=e.defineComponent({__name:"ExcelBindingWizard",props:{datasets:{},session:{},identity:{},lockId:{type:Boolean},readonly:{type:Boolean},importOptions:{},messages:{}},emits:["apply"],setup(a,{expose:A,emit:m}){const c=a,L=m,s=le(c,u=>L("apply",u)),{imported:B,recipe:h,identity:d,sourceName:D,sheetChoices:E,error:N,loading:x,checked:I,applied:M,row:T,column:C,mappingPage:$,m:o,disabled:V,sheet:v,sourceRange:F,dataset:K,window:f,validation:y,mappings:X,rowKeys:J,selection:b}=s,k=e.ref(),p=e.ref(!1),R=["title","header","detail","footer"],z=e.computed(()=>({title:o.value.titleRegion,header:o.value.headerRegion,detail:o.value.detailRegion,footer:o.value.footerRegion})),q=e.computed(()=>Math.max(1,Math.ceil(h.value.fields.length/12)));function P(u){return u.target.value}function Q(u){const n=u.target,t=n.files?.[0];t&&s.importFile(t),n.value=""}function Y(u,n){u.button!==0||V.value||(u.preventDefault(),p.value=!0,s.chooseRow(n,u.shiftKey),u.currentTarget.focus())}function Z(u,n){if((u.key===" "||u.key==="Enter")&&(u.preventDefault(),s.chooseRow(n,u.shiftKey)),u.key==="ArrowDown"||u.key==="ArrowUp"){u.preventDefault();const t=n+(u.key==="ArrowDown"?1:-1);u.shiftKey&&s.chooseRow(t,!0),u.currentTarget.closest("table")?.querySelector(`button[data-source-row="${t}"]`)?.focus()}}function ee(u){const n=K.value?.fields.find(t=>t.field===u);return n?[n.type,n.unit,n.digits===void 0?void 0:`${n.digits}${o.value.precision}`,n.sample===void 0?void 0:`${o.value.sample}: ${String(n.sample)}`].filter(t=>t!==void 0&&t!=="").join(" · "):""}function j(u,n){const t=Number(P(u));!Number.isInteger(t)||!F.value||(n==="row"?T.value=Math.max(F.value.top,Math.min(F.value.bottom,t)):C.value=Math.max(F.value.left,Math.min(F.value.right,t)))}return A({importFile:s.importFile,apply:s.apply,cancel:s.cancel}),(u,n)=>(e.openBlock(),e.createElementBlock("section",{class:"mr-binding","aria-label":e.unref(o).title,"aria-busy":e.unref(x),onPointerup:n[18]||(n[18]=t=>p.value=!1),onPointercancel:n[19]||(n[19]=t=>p.value=!1),onPointerleave:n[20]||(n[20]=t=>p.value=!1)},[e.createElementVNode("header",re,[e.createElementVNode("div",ie,[e.createVNode(w._sfc_main,{name:"file",size:17}),e.createElementVNode("strong",null,e.toDisplayString(e.unref(o).title),1),e.createElementVNode("span",null,e.toDisplayString(e.unref(D)||e.unref(o).intro),1)]),e.createElementVNode("input",{ref_key:"input",ref:k,type:"file",accept:".xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","aria-label":e.unref(o).upload,class:"mr-binding-file",disabled:a.readonly,onChange:Q},null,40,se),e.unref(x)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",onClick:n[0]||(n[0]=(...t)=>e.unref(s).cancel&&e.unref(s).cancel(...t))},e.toDisplayString(e.unref(o).cancel),1)):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",disabled:a.readonly,onClick:n[1]||(n[1]=t=>k.value?.click())},[e.createVNode(w._sfc_main,{name:"upload",size:14}),e.createTextVNode(e.toDisplayString(e.unref(B)?e.unref(o).replace:e.unref(o).upload),1)],8,ue))]),e.unref(N)?(e.openBlock(),e.createElementBlock("div",ce,e.toDisplayString(e.unref(N)),1)):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",de,[n[21]||(n[21]=e.createElementVNode("span",{class:"mr-binding-loader"},null,-1)),e.createTextVNode(e.toDisplayString(e.unref(o).loading),1)])):e.unref(B)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.createElementVNode("div",pe,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(o).sheet),1),e.createElementVNode("select",{value:e.unref(h).sheet,"aria-label":e.unref(o).sheet,disabled:e.unref(V),onChange:n[3]||(n[3]=t=>e.unref(s).chooseSheet(P(t)))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(E),t=>(e.openBlock(),e.createElementBlock("option",{key:t.name,value:t.name},e.toDisplayString(t.name),9,ge))),128))],40,ve)]),e.createElementVNode("span",ye,e.toDisplayString(e.unref(v)?.range)+" · "+e.toDisplayString(e.unref(v)?.rowCount)+" × "+e.toDisplayString(e.unref(v)?.columnCount),1),e.createElementVNode("span",be,e.toDisplayString(e.unref(o).sourceOnly),1)]),e.createElementVNode("div",he,[e.createElementVNode("div",ke,[e.createElementVNode("div",Ee,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(o).source),1),e.createElementVNode("span",null,e.toDisplayString(e.unref(o).sourceHint),1)]),e.unref(f)?(e.openBlock(),e.createElementBlock("div",{key:0,class:"mr-binding-grid-scroll","aria-label":e.unref(o).source},[e.createElementVNode("table",Ve,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[n[23]||(n[23]=e.createElementVNode("th",{class:"mr-binding-corner","aria-label":"#"},"#",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f).columns,t=>(e.openBlock(),e.createElementBlock("th",{key:t.column,scope:"col"},e.toDisplayString(t.name),1))),128))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f).rows,t=>(e.openBlock(),e.createElementBlock("tr",{key:t.row,"data-region":e.unref(s).regionAt(t.row),class:e.normalizeClass({"is-selected":e.unref(b)&&t.row>=e.unref(b).top&&t.row<=e.unref(b).bottom})},[e.createElementVNode("th",we,[e.createElementVNode("button",{type:"button","data-source-row":t.row,"aria-label":`${e.unref(o).selectionLabel} ${t.row}`,"aria-pressed":!!e.unref(b)&&t.row>=e.unref(b).top&&t.row<=e.unref(b).bottom,disabled:e.unref(V),onPointerdown:i=>Y(i,t.row),onPointerenter:i=>p.value&&e.unref(s).chooseRow(t.row,!0),onKeydown:i=>Z(i,t.row)},e.toDisplayString(t.row),41,Be)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.cells,i=>(e.openBlock(),e.createElementBlock("td",{key:i.column,rowspan:i.rowSpan,colspan:i.colSpan,title:`${i.address} · ${i.text}`,class:e.normalizeClass({"is-continued":i.continued}),style:e.normalizeStyle({textAlign:i.style?.align,fontWeight:i.style?.bold?"600":void 0})},[e.createElementVNode("span",null,e.toDisplayString(i.text),1)],14,Se))),128))],10,_e))),128))])])],8,Ne)):e.createCommentVNode("",!0),e.unref(f)?(e.openBlock(),e.createElementBlock("footer",De,[e.createElementVNode("span",null,[e.createTextVNode(e.toDisplayString(e.unref(o).selected)+" ",1),e.createElementVNode("strong",null,e.toDisplayString(e.unref(b)?`${e.unref(b).top}–${e.unref(b).bottom}`:"—"),1)]),e.createElementVNode("div",xe,[e.createElementVNode("button",{type:"button","aria-label":e.unref(o).previousRows,disabled:e.unref(f).top<=e.unref(f).source.top,onClick:n[4]||(n[4]=t=>e.unref(s).moveWindow("row",-24))},[e.createVNode(w._sfc_main,{name:"chevron-left",size:13})],8,Ce),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(o).rowStart),1),e.createElementVNode("input",{type:"number",min:e.unref(f).source.top,max:e.unref(f).source.bottom,value:e.unref(T),onChange:n[5]||(n[5]=t=>j(t,"row"))},null,40,$e)]),e.createElementVNode("button",{type:"button","aria-label":e.unref(o).nextRows,disabled:e.unref(f).bottom>=e.unref(f).source.bottom,onClick:n[6]||(n[6]=t=>e.unref(s).moveWindow("row",24))},[e.createVNode(w._sfc_main,{name:"chevron-right",size:13})],8,Re)]),e.createElementVNode("div",Me,[e.createElementVNode("button",{type:"button","aria-label":e.unref(o).previousColumns,disabled:e.unref(f).left<=e.unref(f).source.left,onClick:n[7]||(n[7]=t=>e.unref(s).moveWindow("column",-12))},[e.createVNode(w._sfc_main,{name:"chevron-left",size:13})],8,Te),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(o).columnStart),1),e.createElementVNode("input",{type:"number",min:e.unref(f).source.left,max:e.unref(f).source.right,value:e.unref(C),onChange:n[8]||(n[8]=t=>j(t,"column"))},null,40,Fe)]),e.createElementVNode("button",{type:"button","aria-label":e.unref(o).nextColumns,disabled:e.unref(f).right>=e.unref(f).source.right,onClick:n[9]||(n[9]=t=>e.unref(s).moveWindow("column",12))},[e.createVNode(w._sfc_main,{name:"chevron-right",size:13})],8,ze)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ie,[e.createElementVNode("fieldset",{disabled:e.unref(V)},[e.createElementVNode("section",Le,[e.createElementVNode("h3",null,[n[24]||(n[24]=e.createElementVNode("b",null,"1",-1)),e.createTextVNode(e.toDisplayString(e.unref(o).regionLegend),1)]),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(R,t=>e.createElementVNode("div",{key:t,class:"mr-binding-region","data-role":t},[e.createElementVNode("div",null,[e.createElementVNode("strong",null,[e.createTextVNode(e.toDisplayString(z.value[t]),1),t==="title"||t==="footer"?(e.openBlock(),e.createElementBlock("small",We,e.toDisplayString(e.unref(o).optional),1)):e.createCommentVNode("",!0)]),e.createElementVNode("code",null,e.toDisplayString(e.unref(h).regions[t]||e.unref(o).unnamed),1)]),e.createElementVNode("button",{type:"button","aria-label":`${e.unref(o).selectRegion} · ${z.value[t]}`,disabled:!e.unref(b),onClick:i=>e.unref(s).markRegion(t)},[e.createVNode(w._sfc_main,{name:"arrow-right",size:13})],8,Ae),(t==="title"||t==="footer")&&e.unref(h).regions[t]?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button","aria-label":`${e.unref(o).clear} · ${z.value[t]}`,onClick:i=>e.unref(s).clearRegion(t)},[e.createVNode(w._sfc_main,{name:"close",size:13})],8,qe)):e.createCommentVNode("",!0)],8,Pe)),64)),e.unref(h).regions.footer?(e.openBlock(),e.createElementBlock("p",Oe,e.toDisplayString(e.unref(o).footerHint),1)):e.createCommentVNode("",!0)]),e.createElementVNode("section",je,[e.createElementVNode("h3",null,[n[25]||(n[25]=e.createElementVNode("b",null,"2",-1)),e.createTextVNode(e.toDisplayString(e.unref(o).mapping),1),e.createElementVNode("span",null,e.toDisplayString(e.unref(y).mapped)+"/"+e.toDisplayString(e.unref(y).total),1)]),e.createElementVNode("label",Ue,[e.createTextVNode(e.toDisplayString(e.unref(o).dataset),1),e.createElementVNode("select",{value:e.unref(h).dataset,"aria-label":e.unref(o).dataset,onChange:n[10]||(n[10]=t=>e.unref(s).chooseDataset(P(t)))},[e.createElementVNode("option",Ge,e.toDisplayString(e.unref(o).chooseDataset),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.datasets,t=>(e.openBlock(),e.createElementBlock("option",{key:t.id,value:t.id},e.toDisplayString(t.label||t.id),9,Xe))),128))],40,He)]),a.datasets.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",Je,e.toDisplayString(e.unref(o).noContract),1)),e.unref(K)?(e.openBlock(),e.createElementBlock("label",Qe,[e.createTextVNode(e.toDisplayString(e.unref(o).rowKey),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":n[11]||(n[11]=t=>e.unref(h).rowKey=t),"aria-label":e.unref(o).rowKey},[e.createElementVNode("option",Ze,e.toDisplayString(e.unref(o).chooseRowKey),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(J),t=>(e.openBlock(),e.createElementBlock("option",{key:t.field,value:t.field},e.toDisplayString(t.label||t.field)+" · "+e.toDisplayString(t.field),9,et))),128))],8,Ye),[[e.vModelSelect,e.unref(h).rowKey]])])):e.createCommentVNode("",!0),e.unref(K)?(e.openBlock(),e.createElementBlock("div",tt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(X),t=>(e.openBlock(),e.createElementBlock("label",{key:t.index,class:"mr-binding-map"},[e.createElementVNode("span",null,e.toDisplayString(t.physical),1),e.createElementVNode("div",null,[e.createElementVNode("select",{"aria-label":`${e.unref(o).physical} ${t.physical} · ${e.unref(o).business}`,value:t.field,onChange:i=>e.unref(s).setMapping(t.index,P(i))},[e.createElementVNode("option",ot,e.toDisplayString(e.unref(o).chooseField),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(K).fields,i=>(e.openBlock(),e.createElementBlock("option",{key:i.field,value:i.field},e.toDisplayString(i.label||i.field)+" · "+e.toDisplayString(i.field),9,lt))),128))],40,nt),t.field?(e.openBlock(),e.createElementBlock("small",at,e.toDisplayString(ee(t.field)),1)):e.createCommentVNode("",!0)])]))),128))])):e.createCommentVNode("",!0),e.unref(K)&&q.value>1?(e.openBlock(),e.createElementBlock("div",rt,[e.createElementVNode("button",{type:"button",disabled:e.unref($)<=0,"aria-label":e.unref(o).previousColumns,onClick:n[12]||(n[12]=t=>$.value--)},[e.createVNode(w._sfc_main,{name:"chevron-left",size:13})],8,it),e.createElementVNode("span",null,e.toDisplayString(e.unref($)+1)+" / "+e.toDisplayString(q.value),1),e.createElementVNode("button",{type:"button",disabled:e.unref($)+1>=q.value,"aria-label":e.unref(o).nextColumns,onClick:n[13]||(n[13]=t=>$.value++)},[e.createVNode(w._sfc_main,{name:"chevron-right",size:13})],8,st)])):e.createCommentVNode("",!0)]),e.createElementVNode("section",ut,[e.createElementVNode("h3",null,[n[26]||(n[26]=e.createElementVNode("b",null,"3",-1)),e.createTextVNode(e.toDisplayString(e.unref(o).identity),1)]),e.createElementVNode("label",ct,[e.createTextVNode(e.toDisplayString(e.unref(o).templateId),1),e.createElementVNode("input",{value:a.lockId?c.identity?.id??e.unref(d).id:e.unref(d).id,autocomplete:"off",readonly:a.lockId,onInput:n[14]||(n[14]=t=>e.unref(d).id=t.target.value)},null,40,dt)]),e.createElementVNode("label",mt,[e.createTextVNode(e.toDisplayString(e.unref(o).templateName),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":n[15]||(n[15]=t=>e.unref(d).name=t),autocomplete:"off"},null,512),[[e.vModelText,e.unref(d).name]])])])],8,Ke)])]),e.unref(I)&&e.unref(y).issues.length?(e.openBlock(),e.createElementBlock("div",ft,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(o).issues)+" · "+e.toDisplayString(e.unref(y).issues.length)+" "+e.toDisplayString(e.unref(o).errors),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y).issues.slice(0,12),(t,i)=>(e.openBlock(),e.createElementBlock("li",{key:i},[e.createElementVNode("code",null,e.toDisplayString(t.path),1),e.createTextVNode(e.toDisplayString(t.message),1)]))),128))]),e.unref(y).issues.length>12?(e.openBlock(),e.createElementBlock("span",pt,"+ "+e.toDisplayString(e.unref(y).issues.length-12),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.unref(B).warnings.length?(e.openBlock(),e.createElementBlock("details",vt,[e.createElementVNode("summary",null,e.toDisplayString(e.unref(o).inspectWarning)+" · "+e.toDisplayString(e.unref(B).warnings.length),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B).warnings,(t,i)=>(e.openBlock(),e.createElementBlock("li",{key:i},e.toDisplayString(t),1))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("footer",gt,[e.createElementVNode("span",{class:e.normalizeClass({"is-ready":e.unref(y).ok}),role:"status"},e.toDisplayString(a.readonly?e.unref(o).readonly:e.unref(M)?e.unref(o).applied:e.unref(y).ok?e.unref(o).ready:`${e.unref(o).coverage} ${e.unref(y).mapped}/${e.unref(y).total}`),3),e.createElementVNode("button",{type:"button",disabled:e.unref(V),onClick:n[16]||(n[16]=(...t)=>e.unref(s).check&&e.unref(s).check(...t))},e.toDisplayString(e.unref(o).check),9,yt),e.createElementVNode("button",{type:"button",class:"mr-binding-primary",disabled:e.unref(V)||!e.unref(y).ok,onClick:n[17]||(n[17]=(...t)=>e.unref(s).apply&&e.unref(s).apply(...t))},e.toDisplayString(e.unref(o).apply),9,bt)])],64)):(e.openBlock(),e.createElementBlock("div",me,[n[22]||(n[22]=e.createElementVNode("svg",{viewBox:"0 0 80 80",fill:"none","aria-hidden":"true"},[e.createElementVNode("rect",{x:"15",y:"10",width:"50",height:"60",rx:"8",fill:"#eff6ff",stroke:"#bfdbfe"}),e.createElementVNode("path",{d:"M25 25h30M25 35h30M25 45h30M35 25v30M45 25v30M25 55h30",stroke:"#93c5fd","stroke-width":"1.5"})],-1)),e.createElementVNode("strong",null,e.toDisplayString(e.unref(o).noSource),1),e.createElementVNode("span",null,e.toDisplayString(e.unref(o).sourceOnly),1),e.createElementVNode("button",{type:"button",class:"mr-binding-primary",disabled:a.readonly,onClick:n[2]||(n[2]=t=>k.value?.click())},e.toDisplayString(e.unref(o).upload),9,fe)]))],40,ae))}}),kt=w._export_sfc(ht,[["__scopeId","data-v-acb94ca7"]]);exports.default=kt;