@agile-team/mach-report 2.15.0 → 2.17.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 (171) hide show
  1. package/README.md +21 -12
  2. package/dist/{ExcelBindingWizard-Bs43BGNp.cjs → ExcelBindingWizard-Bq6FYME6.cjs} +1 -1
  3. package/dist/{ExcelBindingWizard-BKH1nGNS.js → ExcelBindingWizard-Co1svTsw.js} +3 -3
  4. package/dist/{ParamEditor-Da4akw6V.cjs → ParamEditor-B5UZRgxv.cjs} +1 -1
  5. package/dist/{ParamEditor-DoAhzJsm.js → ParamEditor-DNNARyeB.js} +1 -1
  6. package/dist/{ReportBatchPanel-wP9m9Pj1.cjs → ReportBatchPanel-Ctvs2t_9.cjs} +1 -1
  7. package/dist/{ReportBatchPanel-BMf6boMA.js → ReportBatchPanel-uQh06usx.js} +3 -3
  8. package/dist/ReportPreview-BdQawRh0.js +4879 -0
  9. package/dist/ReportPreview-CJC_-j2I.cjs +6 -0
  10. package/dist/{ReportTemplateLibrary-Sxr3eD0J.cjs → ReportTemplateLibrary-CnP7_1pH.cjs} +1 -1
  11. package/dist/{ReportTemplateLibrary-C9wutIiT.js → ReportTemplateLibrary-TIL_Oj2l.js} +1 -1
  12. package/dist/RuleEditor-DkRjOLlr.js +2141 -0
  13. package/dist/RuleEditor-h5anGsDB.cjs +1 -0
  14. package/dist/{TemplateOutlinePanel-JTSR53vJ.cjs → TemplateOutlinePanel-BlLxRrfu.cjs} +1 -1
  15. package/dist/{TemplateOutlinePanel-D6Bkny59.js → TemplateOutlinePanel-BouxsuqQ.js} +1 -1
  16. package/dist/{TemplateReusePanel-rVuK1kTz.js → TemplateReusePanel-BEACLPaN.js} +2 -2
  17. package/dist/{TemplateReusePanel-Kx35S0Ql.cjs → TemplateReusePanel-yxsHSO40.cjs} +1 -1
  18. package/dist/{TemplateReviewPanel-B0ar9_zf.js → TemplateReviewPanel-B1OGRY2i.js} +1 -1
  19. package/dist/{TemplateReviewPanel-Dn6X9UmY.cjs → TemplateReviewPanel-D9Cx0m2N.cjs} +1 -1
  20. package/dist/analytics.cjs +1 -1
  21. package/dist/analytics.d.cts +65 -1
  22. package/dist/analytics.d.ts +65 -1
  23. package/dist/analytics.js +4 -4
  24. package/dist/artifact-integrity.json +105 -101
  25. package/dist/assets-BIMVwjQe.js +231 -0
  26. package/dist/assets-Dfs2ElxI.cjs +1 -0
  27. package/dist/auto-BIOmtVhk.js +240 -0
  28. package/dist/auto-DDHflI9v.cjs +1 -0
  29. package/dist/{batch-BfZHN1do.js → batch-WzDIXJAt.js} +1 -1
  30. package/dist/{batch-CLpELXBl.cjs → batch-z6Aw5GEY.cjs} +1 -1
  31. package/dist/codes.d.cts +2 -0
  32. package/dist/codes.d.ts +2 -0
  33. package/dist/component-tree-Ca6YYfHq.js +61 -0
  34. package/dist/component-tree-DkGLEfZC.cjs +1 -0
  35. package/dist/computed-BW5a8QFk.js +612 -0
  36. package/dist/computed-C2GD3XcE.cjs +1 -0
  37. package/dist/config-Dg_o8e7m.cjs +1 -0
  38. package/dist/{config-BVsJXSqS.js → config-XQ4qrQ7Q.js} +66 -64
  39. package/dist/dataset-DL83majE.js +161 -0
  40. package/dist/dataset-IrlXbUvh.cjs +1 -0
  41. package/dist/designer-D9XAxqSc.js +5178 -0
  42. package/dist/designer-uCDo5XSK.cjs +2 -0
  43. package/dist/designer.cjs +1 -1
  44. package/dist/designer.d.cts +178 -3
  45. package/dist/designer.d.ts +178 -3
  46. package/dist/designer.js +1 -1
  47. package/dist/drill-ByN8COs_.cjs +1 -0
  48. package/dist/{drill-ByJviLXS.js → drill-CKW3Xtfa.js} +5 -5
  49. package/dist/encoding-BFMFIc4r.cjs +1 -0
  50. package/dist/encoding-DP_Eaf0A.js +21 -0
  51. package/dist/{font-loader-B_UkxpzC.cjs → font-loader-7FWVlykp.cjs} +1 -1
  52. package/dist/{font-loader-Q3bQjmrI.js → font-loader-CQZowp0I.js} +1 -1
  53. package/dist/index.cjs +8 -9
  54. package/dist/index.d.cts +175 -1
  55. package/dist/index.d.ts +175 -1
  56. package/dist/index.js +1343 -915
  57. package/dist/json-snapshot-D7PE1NsU.cjs +2 -0
  58. package/dist/json-snapshot-DYmEe3sO.js +1779 -0
  59. package/dist/matrix-JLAXlux-.js +302 -0
  60. package/dist/matrix-gTHpDTGm.cjs +1 -0
  61. package/dist/{pdf-CvvrjPQg.cjs → pdf-B8JouyYv.cjs} +48 -50
  62. package/dist/{pdf-BwNyeGpt.js → pdf-l3ea86di.js} +2734 -2748
  63. package/dist/pdf.cjs +1 -1
  64. package/dist/pdf.d.cts +14 -0
  65. package/dist/pdf.d.ts +14 -0
  66. package/dist/pdf.js +2 -2
  67. package/dist/{plugin-Ca_XZG3l.js → plugin-BBp74CQZ.js} +1 -1
  68. package/dist/{plugin-DHO7X8z2.cjs → plugin-CtFX9PFG.cjs} +1 -1
  69. package/dist/prepared-CARicKYh.js +87 -0
  70. package/dist/prepared-Ch1x_Gog.cjs +1 -0
  71. package/dist/progress-BXzlVbIp.js +29 -0
  72. package/dist/progress-DJBd9Rb9.cjs +1 -0
  73. package/dist/{progress-D-OTpEav.js → progress-Hc2vxoCs.js} +2 -2
  74. package/dist/protocol-B5A2uom4.cjs +1 -0
  75. package/dist/protocol-BaiWjq5w.js +90 -0
  76. package/dist/record-bindings-B86Sur_y.cjs +1 -0
  77. package/dist/{record-bindings-Do_b3h4V.js → record-bindings-D4TuMzHs.js} +10 -11
  78. package/dist/{region-binding-workflow-BMhK_TjP.js → region-binding-workflow-BNasF5kz.js} +2 -2
  79. package/dist/{region-binding-workflow-DIYJdCUr.cjs → region-binding-workflow-O2Cni3mF.cjs} +1 -1
  80. package/dist/report-encoding-worker.cjs +1 -0
  81. package/dist/report-encoding-worker.d.ts +1 -0
  82. package/dist/report-encoding-worker.js +2 -0
  83. package/dist/rich-text-layout-ALlMoYOG.cjs +3 -0
  84. package/dist/rich-text-layout-Ct5WrY1g.js +102 -0
  85. package/dist/runtime-DakRXui3.js +170 -0
  86. package/dist/runtime-dL5ygIfa.cjs +1 -0
  87. package/dist/sbom.cdx.json +2 -2
  88. package/dist/server/node.d.cts +132 -1
  89. package/dist/server/node.d.ts +132 -1
  90. package/dist/server-node.cjs +5 -1
  91. package/dist/server-node.js +5177 -463
  92. package/dist/server.cjs +1 -1
  93. package/dist/server.d.cts +182 -2
  94. package/dist/server.d.ts +182 -2
  95. package/dist/server.js +918 -833
  96. package/dist/sha256-BshdOkCC.cjs +1 -0
  97. package/dist/sha256-DTG-Gq8i.js +157 -0
  98. package/dist/style-67OqfNed.js +73 -0
  99. package/dist/style-C22Pbv3T.cjs +1 -0
  100. package/dist/style.css +1 -1
  101. package/dist/template-catalog-Dua8h9ZA.cjs +1 -0
  102. package/dist/{template-catalog-j2B1MJlL.js → template-catalog-wT1fNeAP.js} +10 -10
  103. package/dist/{template-fragments-DcKeiylI.cjs → template-fragments-BajTajb4.cjs} +1 -1
  104. package/dist/{template-fragments-BGbQLGlV.js → template-fragments-DmX5XK4N.js} +2 -2
  105. package/dist/template-registry-CpysHAxy.cjs +1 -0
  106. package/dist/{template-registry-BtaKPELV.js → template-registry-u11fPd8D.js} +389 -321
  107. package/dist/{textwrap-DE1kgcJB.js → textwrap-BEIg2w8y.js} +1 -1
  108. package/dist/textwrap-BI-yJ6Wt.cjs +4 -0
  109. package/dist/{tree-BX380Rr7.cjs → tree-CLpxYbKa.cjs} +1 -1
  110. package/dist/{tree-CjVZLRw7.js → tree-DNJorJUf.js} +1 -1
  111. package/dist/vue/async.d.cts +174 -2
  112. package/dist/vue/async.d.ts +174 -2
  113. package/dist/vue/index.d.cts +218 -3
  114. package/dist/vue/index.d.ts +218 -3
  115. package/dist/vue-async.cjs +1 -1
  116. package/dist/vue-async.js +3 -3
  117. package/dist/vue.cjs +1 -1
  118. package/dist/vue.js +7 -7
  119. package/dist/{workbook-session-BvToI-Fd.js → workbook-session-B8pNW24X.js} +153 -140
  120. package/dist/{workbook-session-Bjv1YCRK.cjs → workbook-session-DN5LSA5C.cjs} +12 -12
  121. package/dist/worker.cjs +1 -1
  122. package/dist/worker.d.cts +84 -1
  123. package/dist/worker.d.ts +84 -1
  124. package/dist/worker.js +12 -157
  125. package/dist/xlsx-node.cjs +33 -33
  126. package/dist/xlsx-node.js +1282 -1289
  127. package/dist/xlsx.cjs +4 -3
  128. package/dist/xlsx.d.cts +90 -2
  129. package/dist/xlsx.d.ts +90 -2
  130. package/dist/xlsx.js +279 -259
  131. package/package.json +6 -3
  132. package/dist/ReportPreview-ChV19HBp.js +0 -4619
  133. package/dist/ReportPreview-DbLvvOUT.cjs +0 -6
  134. package/dist/RuleEditor-C_Clasvd.js +0 -2037
  135. package/dist/RuleEditor-XhGHK8DE.cjs +0 -1
  136. package/dist/assets-B9ImAi6_.cjs +0 -1
  137. package/dist/assets-DEaz4qsp.js +0 -124
  138. package/dist/batch-BaP6pWDE.cjs +0 -1
  139. package/dist/batch-CGyt-b2W.js +0 -273
  140. package/dist/capabilities-CAh2Nrue.cjs +0 -1
  141. package/dist/capabilities-DskCHs3V.js +0 -69
  142. package/dist/computed-C-4C2S5h.js +0 -521
  143. package/dist/computed-CGV2a809.cjs +0 -1
  144. package/dist/config-D10us76d.cjs +0 -1
  145. package/dist/data-explanation-B8MZRYVS.js +0 -16
  146. package/dist/data-explanation-DE55G30w.cjs +0 -1
  147. package/dist/dataset-BkRmwgeJ.cjs +0 -1
  148. package/dist/dataset-H5pFuQGU.js +0 -121
  149. package/dist/defaults-DXhiM1ZD.js +0 -10
  150. package/dist/defaults-xhmcLLrf.cjs +0 -1
  151. package/dist/designer-2bDlcNXQ.js +0 -5136
  152. package/dist/designer-BT7XCdbW.cjs +0 -2
  153. package/dist/drill-DYTxuL3A.cjs +0 -1
  154. package/dist/grid-strokes-Cr7DwUux.cjs +0 -1
  155. package/dist/grid-strokes-DyyG1q_o.js +0 -53
  156. package/dist/json-snapshot-DFb2eWkf.js +0 -1416
  157. package/dist/json-snapshot-WWSGlaHG.cjs +0 -2
  158. package/dist/matrix-CGRGkn5s.js +0 -112
  159. package/dist/matrix-gEO7ZM_u.cjs +0 -1
  160. package/dist/prepared-CFy9B75C.cjs +0 -1
  161. package/dist/prepared-ajM-H-9B.js +0 -69
  162. package/dist/record-bindings-By_UKZ2g.cjs +0 -1
  163. package/dist/render-plan-7xpGrCEl.cjs +0 -1
  164. package/dist/render-plan-Ck6koX9L.js +0 -13
  165. package/dist/sha256-ArEYjaTI.cjs +0 -1
  166. package/dist/sha256-DPEuJ3nh.js +0 -155
  167. package/dist/style-CQ1PK8ZB.js +0 -67
  168. package/dist/style-UgIJSA1F.cjs +0 -1
  169. package/dist/template-catalog-FJE_c9Qe.cjs +0 -1
  170. package/dist/template-registry-Co1zPq5e.cjs +0 -1
  171. package/dist/textwrap-CWHyzkBH.cjs +0 -4
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),j=require("./computed-CGV2a809.cjs"),Z=require("./designer-BT7XCdbW.cjs"),z=require("./useLocalDraft-CioIfDb6.cjs"),de=require("./matrix-gEO7ZM_u.cjs"),Y=require("./template-registry-Co1zPq5e.cjs"),se=require("./tree-BX380Rr7.cjs"),Q=require("./_plugin-vue_export-helper-BLmdZLlg.cjs");function _(t,w=new Set){return typeof t=="string"||("field"in t&&t.field&&w.add(t.field),"weightField"in t&&t.weightField&&w.add(t.weightField),"args"in t&&t.args.forEach(k=>_(k,w))),w}function ee(t,w){return typeof t=="string"?t:"value"in t?t.value===null?w.null:String(t.value):"aggregate"in t?`${w[t.aggregate]}(${t.field??w.allRows})`:"field"in t?t.field:`${w[t.op]}(${t.args.map(k=>ee(k,w)).join(", ")})`}function ue(t,w,k){const x=e.ref("");function v(y){const f=t.list.columns.find(B=>B.field===y)?.format;return f&&"digits"in f&&f.digits!==void 0?`${f.digits} ${k.value.digits}`:void 0}const d=e.computed(()=>{const y=new Map;for(const f of t.datasetSchema?.fields??[])y.set(f.field,{field:f.field,label:f.label??f.field,meta:[f.type,f.unit,v(f.field)].filter(Boolean).join(" · ")});for(const f of t.list.columns)y.has(f.field)||y.set(f.field,{field:f.field,label:f.header||f.field,meta:f.semanticRole??""});return[...y.values()]}),l=e.computed(()=>{const y=x.value.trim().toLocaleLowerCase();return d.value.filter(f=>`${f.field} ${f.label} ${f.meta}`.toLocaleLowerCase().includes(y))}),g=e.computed(()=>ee(w.value.expression,k.value)),b=e.computed(()=>{const y=[..._(w.value.expression)];return(t.datasets?.[t.list.dataset]??[]).slice(0,5).map((f,B)=>({row:B+1,values:y.map(h=>`${h} = ${f[h]==null?k.value.null:String(f[h])}`).join(" · ")}))});return{query:x,matches:l,fieldWindow:e.computed(()=>l.value.slice(0,50)),expression:g,sources:b}}const W=t=>JSON.parse(JSON.stringify(t));function ce(t,w){const k=e.ref(!1),x=e.ref(""),v=e.ref({dataset:"",parentKey:"",foreignKey:"",columns:[]}),d=e.ref({rowFields:[],columnFields:[],measures:[]}),l=e.ref({input:"flat",idField:"id",parentField:"parentId",labelField:"",parentValues:"source"}),g=z.useLocalDraft(()=>({enabled:k.value,detail:v.value,matrix:d.value,tree:l.value}));let b;const y=e.ref(),f=e.computed(()=>[...new Set([...Object.keys(t.datasets??{}),...Object.keys(t.datasetSchemas??{})])]),B=e.computed(()=>$(t.list.dataset,t.datasetSchema)),h=e.computed(()=>$(v.value.dataset));function $(r,N){const E=new Map;for(const S of(N??t.datasetSchemas?.[r])?.fields??[])E.set(S.field,S.label??S.field);const C=t.datasets?.[r]?.[0];for(const S of Object.keys(C??{}))E.has(S)||E.set(S,S);if(r===t.list.dataset)for(const S of t.list.columns)E.has(S.field)||E.set(S.field,S.header||S.field);return[...E].map(([S,A])=>({field:S,label:A}))}function M(){if(b===JSON.stringify(t.list)){b=void 0;return}k.value=!!t.list[t.mode];const r=f.value.find(N=>N!==t.list.dataset)??"";v.value=W(t.list.detail??{dataset:r,parentKey:t.list.rowKey??t.datasetSchema?.rowKey??B.value[0]?.field??"",foreignKey:"",columns:[],header:!0,unmatched:"error"}),d.value=W(t.list.matrix??{rowFields:[],columnFields:[],measures:[],totals:!0}),d.value.measures=d.value.measures.map(N=>({...N,numeric:N.numeric??"number"})),l.value=W(t.list.tree??{input:"flat",idField:t.list.rowKey??"id",parentField:"parentId",childrenField:"children",labelField:t.list.columns[0]?.field??"",parentValues:"source",orphan:"error",indentMm:3,maxRows:1e5,maxDepth:64}),x.value="",y.value=void 0,g.accept()}e.watch(()=>[t.mode,t.list.dataset,t.list[t.mode]],M,{immediate:!0});function V(r){v.value.dataset=r,v.value.columns=[],v.value.foreignKey=h.value[0]?.field??"",v.value.rowKey=t.datasetSchemas?.[r]?.rowKey}function o(r,N){if(N&&!v.value.columns.some(E=>E.field===r)){const E=t.datasetSchemas?.[v.value.dataset]?.fields.find(C=>C.field===r);v.value.columns.push({field:r,header:h.value.find(C=>C.field===r)?.label??r,widthMm:30,align:"auto",semanticRole:E?.semanticRole,editable:!1})}else N||(v.value.columns=v.value.columns.filter(E=>E.field!==r))}function a(r,N,E){const C=d.value[r];d.value[r]=E?[...new Set([...C,N])]:C.filter(S=>S!==N)}function i(){d.value.measures=[...d.value.measures,{field:B.value[0]?.field??"",op:"sum",numeric:"number"}]}function s(r){d.value.measures=d.value.measures.filter((N,E)=>E!==r)}function T(){l.value.aggregates=[...l.value.aggregates??[],{field:B.value.find(r=>r.field!==l.value.labelField&&r.field!==l.value.idField)?.field??"",op:"sum",numeric:"number"}]}function R(r){l.value.aggregates=l.value.aggregates?.filter((N,E)=>E!==r)}function I(){x.value="",y.value=void 0;try{const r=t.datasets?.[t.list.dataset]??[];if(!r.length)throw new Error(t.messages.noData);if(r.length>1e3)throw new Error(t.messages.treeBudget);const N=se.createTreeTable(r,{...l.value,aggregates:l.value.parentValues==="leaf-aggregate"?l.value.aggregates:void 0,maxRows:1e3}),E=t.list.columns.slice(0,5);y.value={columns:E.map(C=>C.header),rows:N.entries.slice(0,8).map(C=>E.map(S=>S.field===l.value.labelField?`${" ".repeat(Math.min(6,C.depth))}${C.row[S.field]??""}`:C.row[S.field]))}}catch(r){x.value=r instanceof Error?r.message:String(r)}}function K(r){if(!k.value){delete r.tree;return}r.tree=W(l.value),r.tree.parentValues!=="leaf-aggregate"&&delete r.tree.aggregates,r.rowKey=r.tree.idField,delete r.detail,delete r.matrix,delete r.groupBy,delete r.groups,delete r.rowVisibleWhen}function O(){x.value="",y.value=void 0;try{const r=t.datasets?.[t.list.dataset]??[];if(!r.length)throw new Error(t.messages.noData);const N=de.createMatrixTable(r.slice(0,1e3),{...d.value,maxInputRows:1e3});y.value={columns:N.columns.slice(0,5).map(E=>E.header),rows:N.rows.slice(0,5).map(E=>N.columns.slice(0,5).map(C=>E[C.field]))}}catch(r){x.value=r instanceof Error?r.message:String(r)}}function G(){if(t.readonly)return;const r=W(t.list);t.mode==="tree"?K(r):t.mode==="detail"?k.value?(r.detail=W(v.value),delete r.matrix,delete r.tree):delete r.detail:k.value?(r.matrix=W(d.value),delete r.detail,delete r.tree,delete r.groups,delete r.groupBy,delete r.grandTotal):delete r.matrix;const N=Y.validateReportTemplate({pages:[{widthMm:Math.max(1,r.leftMm+r.widthMm),heightMm:297,components:[r]}]});if(!N.ok){x.value=N.errors.slice(0,3).map(E=>E.message).join(";");return}t.accept&&!t.accept(r)||(b=JSON.stringify(r),t.accept||w(r),g.accept())}return Z.useTemplateToolDraft({key:()=>`${t.recoveryKey??"rules:0:0"}:${t.mode}`,baseline:()=>JSON.stringify(t.list[t.mode]),pending:()=>g.pending.value,snapshot:()=>JSON.stringify({enabled:k.value,detail:v.value,matrix:d.value,tree:l.value,baseline:g.baseline.value}),restore(r){const N=JSON.parse(r);k.value=N.enabled,v.value=N.detail,d.value=N.matrix,l.value=N.tree,g.baseline.value=N.baseline}}),{enabled:k,pendingLocalChanges:g.pending,detail:v,matrix:d,tree:l,datasets:f,sourceFields:B,childFields:h,error:x,preview:y,chooseDataset:V,toggleChildColumn:o,toggleDimension:a,addMeasure:i,removeMeasure:s,checkMatrix:O,addTreeAggregate:T,removeTreeAggregate:R,checkTree:I,apply:G}}const me={class:"mr-data-layout"},ge={class:"mr-data-layout__check"},fe=["disabled"],ve={class:"mr-data-layout__hint"},ye=["aria-label","value","disabled"],be={value:"",disabled:""},Ve=["value"],ke={class:"mr-data-layout__pair"},he=["aria-label","disabled"],Ee=["value"],Ne=["aria-label","disabled"],pe={value:"",disabled:""},Be=["value"],De=["aria-label","disabled"],Se={value:void 0},we=["value"],$e={class:"mr-data-layout__choices"},Ce=["checked","disabled","onChange"],xe=["aria-label","disabled"],Fe={class:"mr-data-layout__pair"},Te=["aria-label","disabled"],Me={value:"error"},Ue={value:"ignore"},Le={class:"mr-data-layout__check"},Re=["disabled"],Ke={class:"mr-data-layout__hint"},Oe={class:"mr-data-layout__pair"},Ae=["aria-label","disabled"],Ie={value:"flat"},Ge={value:"nested"},We=["aria-label","disabled"],Je=["value"],je={class:"mr-data-layout__pair"},qe={key:0},He=["aria-label","disabled"],ze=["value"],Pe={key:1},Ze=["aria-label","disabled"],Qe=["aria-label","disabled"],Xe=["value"],Ye={class:"mr-data-layout__pair"},_e=["aria-label","disabled"],et={key:0},tt=["aria-label","disabled"],lt={value:"error"},at={value:"root"},nt=["aria-label","disabled"],ot={value:"source"},it={value:"leaf-aggregate"},rt={class:"mr-data-layout__pair"},dt=["onUpdate:modelValue","aria-label","disabled"],st=["value"],ut=["onUpdate:modelValue","aria-label","disabled"],ct=["value"],mt={key:0},gt=["onUpdate:modelValue","aria-label","disabled"],ft=["value"],vt={class:"mr-data-layout__pair"},yt=["onUpdate:modelValue","aria-label","disabled"],bt={value:"number"},Vt={value:"decimal"},kt=["onUpdate:modelValue","aria-label","disabled"],ht=["disabled","onClick"],Et=["disabled"],Nt={class:"mr-data-layout__pair"},pt=["aria-label","disabled"],Bt=["aria-label","disabled"],Dt={class:"mr-data-layout__hint"},St={class:"mr-data-layout__hint"},wt=["checked","disabled","onChange"],$t={class:"mr-data-layout__pair"},Ct=["aria-label","onUpdate:modelValue","disabled"],xt=["value"],Ft=["aria-label","onUpdate:modelValue","disabled"],Tt=["value"],Mt=["aria-label","onUpdate:modelValue","disabled","placeholder"],Ut={key:0},Lt=["aria-label","onUpdate:modelValue","disabled"],Rt=["value"],Kt={class:"mr-data-layout__pair"},Ot=["aria-label","onUpdate:modelValue","disabled"],At={value:"number"},It={value:"decimal"},Gt=["aria-label","onUpdate:modelValue","disabled"],Wt=["disabled","onClick"],Jt=["disabled"],jt={class:"mr-data-layout__check"},qt=["disabled"],Ht={class:"mr-data-layout__pair"},zt=["disabled"],Pt=["disabled"],Zt={class:"mr-data-layout__actions"},Qt=["disabled"],Xt=["disabled"],Yt=["disabled"],_t={key:3,class:"mr-data-layout__preview"},el={key:4,class:"mr-data-layout__error",role:"alert"},tl=e.defineComponent({__name:"RuleDataLayout",props:{recoveryKey:{},list:{},accept:{type:Function},mode:{},datasets:{},datasetSchema:{},datasetSchemas:{},readonly:{type:Boolean},messages:{}},emits:["change","dirty"],setup(t,{emit:w}){const k=t,x=w,v=ce(k,V=>x("change",V)),{enabled:d,detail:l,matrix:g,tree:b,datasets:y,sourceFields:f,childFields:B,error:h,preview:$}=v;e.watch([v.pendingLocalChanges,d,l,g,b],()=>x("dirty",v.pendingLocalChanges.value),{immediate:!0,deep:!0,flush:"sync"});const M=j.getComputationMetadata();return(V,o)=>(e.openBlock(),e.createElementBlock("div",me,[e.createElementVNode("label",ge,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[0]||(o[0]=a=>e.isRef(d)?d.value=a:null),type:"checkbox",disabled:t.readonly},null,8,fe),[[e.vModelCheckbox,e.unref(d)]]),e.createTextVNode(e.toDisplayString(t.messages.enabled)+e.toDisplayString(t.messages[t.mode]),1)]),e.unref(d)&&t.mode==="detail"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("p",ve,e.toDisplayString(t.messages.detailHint),1),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.childDataset),1),e.createElementVNode("select",{"aria-label":t.messages.childDataset,value:e.unref(l).dataset,disabled:t.readonly,onChange:o[1]||(o[1]=a=>e.unref(v).chooseDataset(a.target.value))},[e.createElementVNode("option",be,e.toDisplayString(t.messages.select),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),a=>(e.openBlock(),e.createElementBlock("option",{key:a,value:a},e.toDisplayString(a),9,Ve))),128))],40,ye)]),e.createElementVNode("div",ke,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.parentKey),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.parentKey,"onUpdate:modelValue":o[2]||(o[2]=a=>e.unref(l).parentKey=a),disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.label),9,Ee))),128))],8,he),[[e.vModelSelect,e.unref(l).parentKey]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.foreignKey),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.foreignKey,"onUpdate:modelValue":o[3]||(o[3]=a=>e.unref(l).foreignKey=a),disabled:t.readonly},[e.createElementVNode("option",pe,e.toDisplayString(t.messages.select),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.label),9,Be))),128))],8,Ne),[[e.vModelSelect,e.unref(l).foreignKey]])])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.rowKey),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.rowKey,"onUpdate:modelValue":o[4]||(o[4]=a=>e.unref(l).rowKey=a),disabled:t.readonly},[e.createElementVNode("option",Se,e.toDisplayString(t.messages.noRowKey),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.label),9,we))),128))],8,De),[[e.vModelSelect,e.unref(l).rowKey]])]),e.createElementVNode("fieldset",$e,[e.createElementVNode("legend",null,e.toDisplayString(t.messages.childColumns),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),a=>(e.openBlock(),e.createElementBlock("label",{key:a.field},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(l).columns.some(i=>i.field===a.field),disabled:t.readonly,onChange:i=>e.unref(v).toggleChildColumn(a.field,i.target.checked)},null,40,Ce),e.createTextVNode(e.toDisplayString(a.label),1)]))),128))]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.title),1),e.withDirectives(e.createElementVNode("input",{"aria-label":t.messages.title,"onUpdate:modelValue":o[5]||(o[5]=a=>e.unref(l).label=a),disabled:t.readonly},null,8,xe),[[e.vModelText,e.unref(l).label]])]),e.createElementVNode("div",Fe,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.unmatched),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.unmatched,"onUpdate:modelValue":o[6]||(o[6]=a=>e.unref(l).unmatched=a),disabled:t.readonly},[e.createElementVNode("option",Me,e.toDisplayString(t.messages.error),1),e.createElementVNode("option",Ue,e.toDisplayString(t.messages.ignore),1)],8,Te),[[e.vModelSelect,e.unref(l).unmatched]])]),e.createElementVNode("label",Le,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[7]||(o[7]=a=>e.unref(l).header=a),type:"checkbox",disabled:t.readonly},null,8,Re),[[e.vModelCheckbox,e.unref(l).header]]),e.createTextVNode(e.toDisplayString(t.messages.childHeader),1)])])],64)):e.unref(d)&&t.mode==="tree"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("p",Ke,e.toDisplayString(t.messages.treeHint),1),e.createElementVNode("div",Oe,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeInput),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[8]||(o[8]=a=>e.unref(b).input=a),"aria-label":t.messages.treeInput,disabled:t.readonly},[e.createElementVNode("option",Ie,e.toDisplayString(t.messages.treeFlat),1),e.createElementVNode("option",Ge,e.toDisplayString(t.messages.treeNested),1)],8,Ae),[[e.vModelSelect,e.unref(b).input]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeId),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[9]||(o[9]=a=>e.unref(b).idField=a),"aria-label":t.messages.treeId,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.label),9,Je))),128))],8,We),[[e.vModelSelect,e.unref(b).idField]])])]),e.createElementVNode("div",je,[e.unref(b).input==="flat"?(e.openBlock(),e.createElementBlock("label",qe,[e.createTextVNode(e.toDisplayString(t.messages.treeParent),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[10]||(o[10]=a=>e.unref(b).parentField=a),"aria-label":t.messages.treeParent,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.label),9,ze))),128))],8,He),[[e.vModelSelect,e.unref(b).parentField]])])):(e.openBlock(),e.createElementBlock("label",Pe,[e.createTextVNode(e.toDisplayString(t.messages.treeChildren),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[11]||(o[11]=a=>e.unref(b).childrenField=a),"aria-label":t.messages.treeChildren,disabled:t.readonly,placeholder:"children"},null,8,Ze),[[e.vModelText,e.unref(b).childrenField]])])),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeLabel),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[12]||(o[12]=a=>e.unref(b).labelField=a),"aria-label":t.messages.treeLabel,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.list.columns.filter(a=>!a.hidden),a=>(e.openBlock(),e.createElementBlock("option",{key:a.field,value:a.field},e.toDisplayString(a.header),9,Xe))),128))],8,Qe),[[e.vModelSelect,e.unref(b).labelField]])])]),e.createElementVNode("div",Ye,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeIndent),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[13]||(o[13]=a=>e.unref(b).indentMm=a),"aria-label":t.messages.treeIndent,type:"number",min:"0",max:"20",step:"0.5",disabled:t.readonly},null,8,_e),[[e.vModelText,e.unref(b).indentMm,void 0,{number:!0}]])]),e.unref(b).input==="flat"?(e.openBlock(),e.createElementBlock("label",et,[e.createTextVNode(e.toDisplayString(t.messages.treeOrphan),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[14]||(o[14]=a=>e.unref(b).orphan=a),"aria-label":t.messages.treeOrphan,disabled:t.readonly},[e.createElementVNode("option",lt,e.toDisplayString(t.messages.error),1),e.createElementVNode("option",at,e.toDisplayString(t.messages.treeAsRoot),1)],8,tt),[[e.vModelSelect,e.unref(b).orphan]])])):e.createCommentVNode("",!0)]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeValues),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":o[15]||(o[15]=a=>e.unref(b).parentValues=a),"aria-label":t.messages.treeValues,disabled:t.readonly},[e.createElementVNode("option",ot,e.toDisplayString(t.messages.treeSource),1),e.createElementVNode("option",it,e.toDisplayString(t.messages.treeLeaves),1)],8,nt),[[e.vModelSelect,e.unref(b).parentValues]])]),e.unref(b).parentValues==="leaf-aggregate"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b).aggregates,(a,i)=>(e.openBlock(),e.createElementBlock("div",{key:i,class:"mr-data-layout__measure"},[e.createElementVNode("div",rt,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.measure),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":s=>a.field=s,"aria-label":t.messages.measure,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),s=>(e.openBlock(),e.createElementBlock("option",{key:s.field,value:s.field},e.toDisplayString(s.label),9,st))),128))],8,dt),[[e.vModelSelect,a.field]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.aggregate),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":s=>a.op=s,"aria-label":t.messages.aggregate,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M).aggregates,s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(t.messages[s]),9,ct))),128))],8,ut),[[e.vModelSelect,a.op]])])]),a.op==="weightedAvg"?(e.openBlock(),e.createElementBlock("label",mt,[e.createTextVNode(e.toDisplayString(t.messages.weight),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":s=>a.weightField=s,"aria-label":t.messages.weight,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),s=>(e.openBlock(),e.createElementBlock("option",{key:s.field,value:s.field},e.toDisplayString(s.label),9,ft))),128))],8,gt),[[e.vModelSelect,a.weightField]])])):e.createCommentVNode("",!0),e.createElementVNode("div",vt,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.numeric),1),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":s=>a.numeric=s,"aria-label":t.messages.numeric,disabled:t.readonly},[e.createElementVNode("option",bt,e.toDisplayString(t.messages.number),1),e.createElementVNode("option",Vt,e.toDisplayString(t.messages.decimal),1)],8,yt),[[e.vModelSelect,a.numeric]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.digits),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":s=>a.digits=s,"aria-label":t.messages.digits,type:"number",min:"0",max:"100",disabled:t.readonly},null,8,kt),[[e.vModelText,a.digits,void 0,{number:!0}]])])]),e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:s=>e.unref(v).removeTreeAggregate(i)},e.toDisplayString(t.messages.remove),9,ht)]))),128)),e.createElementVNode("button",{type:"button",disabled:t.readonly||(e.unref(b).aggregates?.length??0)>=32,onClick:o[16]||(o[16]=(...a)=>e.unref(v).addTreeAggregate&&e.unref(v).addTreeAggregate(...a))},"+ "+e.toDisplayString(t.messages.addAggregate),9,Et)],64)):e.createCommentVNode("",!0),e.createElementVNode("details",null,[e.createElementVNode("summary",null,e.toDisplayString(t.messages.advanced),1),e.createElementVNode("div",Nt,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeRows),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[17]||(o[17]=a=>e.unref(b).maxRows=a),"aria-label":t.messages.treeRows,type:"number",min:"1",max:"1000000",disabled:t.readonly},null,8,pt),[[e.vModelText,e.unref(b).maxRows,void 0,{number:!0}]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.treeDepth),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[18]||(o[18]=a=>e.unref(b).maxDepth=a),"aria-label":t.messages.treeDepth,type:"number",min:"1",max:"256",disabled:t.readonly},null,8,Bt),[[e.vModelText,e.unref(b).maxDepth,void 0,{number:!0}]])])])]),e.createElementVNode("p",Dt,e.toDisplayString(t.messages.treeReadonly),1)],64)):e.unref(d)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("p",St,e.toDisplayString(t.messages.matrixHint),1),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["rowFields","columnFields"],a=>e.createElementVNode("fieldset",{key:a,class:"mr-data-layout__choices"},[e.createElementVNode("legend",null,e.toDisplayString(t.messages[a]),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),i=>(e.openBlock(),e.createElementBlock("label",{key:i.field},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(g)[a].includes(i.field),disabled:t.readonly,onChange:s=>e.unref(v).toggleDimension(a,i.field,s.target.checked)},null,40,wt),e.createTextVNode(e.toDisplayString(i.label),1)]))),128))])),64)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(g).measures,(a,i)=>(e.openBlock(),e.createElementBlock("div",{key:i,class:"mr-data-layout__measure"},[e.createElementVNode("div",$t,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.measure),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.measure,"onUpdate:modelValue":s=>a.field=s,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),s=>(e.openBlock(),e.createElementBlock("option",{key:s.field,value:s.field},e.toDisplayString(s.label),9,xt))),128))],8,Ct),[[e.vModelSelect,a.field]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.aggregate),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.aggregate,"onUpdate:modelValue":s=>a.op=s,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M).aggregates,s=>(e.openBlock(),e.createElementBlock("option",{key:s,value:s},e.toDisplayString(t.messages[s]),9,Tt))),128))],8,Ft),[[e.vModelSelect,a.op]])])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.measureLabel),1),e.withDirectives(e.createElementVNode("input",{"aria-label":t.messages.measureLabel,"onUpdate:modelValue":s=>a.label=s,disabled:t.readonly,placeholder:a.field},null,8,Mt),[[e.vModelText,a.label]])]),a.op==="weightedAvg"?(e.openBlock(),e.createElementBlock("label",Ut,[e.createTextVNode(e.toDisplayString(t.messages.weight),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.weight,"onUpdate:modelValue":s=>a.weightField=s,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),s=>(e.openBlock(),e.createElementBlock("option",{key:s.field,value:s.field},e.toDisplayString(s.label),9,Rt))),128))],8,Lt),[[e.vModelSelect,a.weightField]])])):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.numeric),1),e.withDirectives(e.createElementVNode("select",{"aria-label":t.messages.numeric,"onUpdate:modelValue":s=>a.numeric=s,disabled:t.readonly},[e.createElementVNode("option",At,e.toDisplayString(t.messages.number),1),e.createElementVNode("option",It,e.toDisplayString(t.messages.decimal),1)],8,Ot),[[e.vModelSelect,a.numeric]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.digits),1),e.withDirectives(e.createElementVNode("input",{"aria-label":t.messages.digits,"onUpdate:modelValue":s=>a.digits=s,type:"number",min:"0",max:"100",disabled:t.readonly},null,8,Gt),[[e.vModelText,a.digits,void 0,{number:!0}]])])]),e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:s=>e.unref(v).removeMeasure(i)},e.toDisplayString(t.messages.remove),9,Wt)]))),128)),e.createElementVNode("button",{type:"button",disabled:t.readonly||e.unref(g).measures.length>=32,onClick:o[19]||(o[19]=(...a)=>e.unref(v).addMeasure&&e.unref(v).addMeasure(...a))}," + "+e.toDisplayString(t.messages.addAggregate),9,Jt),e.createElementVNode("label",jt,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[20]||(o[20]=a=>e.unref(g).totals=a),type:"checkbox",disabled:t.readonly},null,8,qt),[[e.vModelCheckbox,e.unref(g).totals]]),e.createTextVNode(e.toDisplayString(t.messages.totals),1)]),e.createElementVNode("details",null,[e.createElementVNode("summary",null,e.toDisplayString(t.messages.widthSettings),1),e.createElementVNode("div",Ht,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.dimensionWidth),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[21]||(o[21]=a=>e.unref(g).rowWidthMm=a),type:"number",min:"1",disabled:t.readonly,placeholder:"40"},null,8,zt),[[e.vModelText,e.unref(g).rowWidthMm,void 0,{number:!0}]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(t.messages.measureWidth),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[22]||(o[22]=a=>e.unref(g).columnWidthMm=a),type:"number",min:"1",disabled:t.readonly,placeholder:"28"},null,8,Pt),[[e.vModelText,e.unref(g).columnWidthMm,void 0,{number:!0}]])])])])],64)):e.createCommentVNode("",!0),e.createElementVNode("div",Zt,[e.unref(d)&&t.mode==="matrix"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,onClick:o[23]||(o[23]=(...a)=>e.unref(v).checkMatrix&&e.unref(v).checkMatrix(...a))},e.toDisplayString(t.messages.check),9,Qt)):e.createCommentVNode("",!0),e.unref(d)&&t.mode==="tree"?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",disabled:t.readonly,onClick:o[24]||(o[24]=(...a)=>e.unref(v).checkTree&&e.unref(v).checkTree(...a))},e.toDisplayString(t.messages.check),9,Xt)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"mr-data-layout__primary",disabled:t.readonly,onClick:o[25]||(o[25]=(...a)=>e.unref(v).apply&&e.unref(v).apply(...a))},e.toDisplayString(t.messages.apply),9,Yt)]),e.unref($)?(e.openBlock(),e.createElementBlock("div",_t,[e.createElementVNode("p",null,e.toDisplayString(t.messages.sample),1),e.createElementVNode("table",null,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref($).columns,(a,i)=>(e.openBlock(),e.createElementBlock("th",{key:i},e.toDisplayString(a),1))),128))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref($).rows,(a,i)=>(e.openBlock(),e.createElementBlock("tr",{key:i},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a,(s,T)=>(e.openBlock(),e.createElementBlock("td",{key:T},e.toDisplayString(s??"—"),1))),128))]))),128))])])])):e.createCommentVNode("",!0),e.unref(h)?(e.openBlock(),e.createElementBlock("p",el,e.toDisplayString(e.unref(h)),1)):e.createCommentVNode("",!0)]))}}),ll=Q._export_sfc(tl,[["__scopeId","data-v-e089d1c9"]]),al={class:"mr-expression__row"},nl=["value","disabled","aria-label"],ol={value:"field"},il={value:"constant"},rl={key:0,value:"operation"},dl={value:"aggregate"},sl=["value","disabled","aria-label"],ul=["value"],cl=["value","disabled","aria-label"],ml=["value"],gl=["value","disabled","aria-label"],fl=["value"],vl=["value","disabled","aria-label"],yl={value:"text"},bl={value:"number"},Vl={value:"boolean"},kl={value:"null"},hl=["value","disabled","aria-label"],El={key:0,value:""},Nl=["value"],pl=["value","disabled","aria-label"],Bl={value:"",disabled:""},Dl=["value"],Sl=["value","disabled","aria-label"],wl={value:"true"},$l={value:"false"},Cl=["type","value","disabled","aria-label"],xl=["disabled","aria-label","onClick"],Fl=["disabled"],Tl=e.defineComponent({__name:"ReportExpressionEditor",props:{modelValue:{},fields:{},messages:{},readonly:{type:Boolean},depth:{}},emits:["update:modelValue"],setup(t,{emit:w}){const k=t,x=w,v=j.getComputationMetadata(),d=e.computed(()=>"aggregate"in k.modelValue?"aggregate":"field"in k.modelValue?"field":"value"in k.modelValue?"constant":"operation"),l=e.ref("text");e.watch(()=>k.modelValue,V=>{"value"in V&&(l.value=V.value===null?"null":typeof V.value=="string"?"text":typeof V.value)},{immediate:!0});function g(V){k.readonly||x("update:modelValue",V)}function b(V){g(V==="aggregate"?{aggregate:"sum",field:k.fields[0]?.field??""}:V==="field"?{field:k.fields[0]?.field??""}:V==="constant"?{value:""}:{op:"add",args:[{field:k.fields[0]?.field??""},{value:0}]})}function y(V){const o=V,a="args"in k.modelValue?k.modelValue.args:[{value:0},{value:0}];g({op:o,args:o==="divide"||o==="subtract"?a.slice(0,2):a})}function f(V,o){"args"in k.modelValue&&g({...k.modelValue,args:k.modelValue.args.map((a,i)=>i===V?o:a)})}function B(V){if(!("args"in k.modelValue))return;const o=V===void 0?[...k.modelValue.args,{value:0}]:k.modelValue.args.filter((a,i)=>i!==V);g({...k.modelValue,args:o})}function h(V){l.value=V,g({value:V==="null"?null:V==="boolean"?!1:V==="number"?0:""})}function $(V){l.value==="number"?V.trim()&&Number.isFinite(Number(V))&&g({value:Number(V)}):g({value:V})}function M(V,o){if(!("aggregate"in k.modelValue))return;const a={...k.modelValue,[V]:o};V==="aggregate"&&(a.aggregate=o),V==="field"&&!o&&delete a.field,g(a)}return(V,o)=>{const a=e.resolveComponent("ReportExpressionEditor",!0);return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["mr-expression",{"mr-expression--nested":(t.depth??0)>0}])},[e.createElementVNode("div",al,[e.createElementVNode("select",{value:d.value,disabled:t.readonly,"aria-label":t.messages.argument,onChange:o[0]||(o[0]=i=>b(i.target.value))},[e.createElementVNode("option",ol,e.toDisplayString(t.messages.field),1),e.createElementVNode("option",il,e.toDisplayString(t.messages.constant),1),(t.depth??0)<12?(e.openBlock(),e.createElementBlock("option",rl,e.toDisplayString(t.messages.operation),1)):e.createCommentVNode("",!0),e.createElementVNode("option",dl,e.toDisplayString(t.messages.aggregate),1)],40,nl),"field"in t.modelValue&&!("aggregate"in t.modelValue)?(e.openBlock(),e.createElementBlock("select",{key:0,value:t.modelValue.field,disabled:t.readonly,"aria-label":t.messages.field,onChange:o[1]||(o[1]=i=>g({field:i.target.value}))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,i=>(e.openBlock(),e.createElementBlock("option",{key:i.field,value:i.field},e.toDisplayString(i.label),9,ul))),128))],40,sl)):"op"in t.modelValue?(e.openBlock(),e.createElementBlock("select",{key:1,value:t.modelValue.op,disabled:t.readonly,"aria-label":t.messages.operation,onChange:o[2]||(o[2]=i=>y(i.target.value))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(v).operations,i=>(e.openBlock(),e.createElementBlock("option",{key:i,value:i},e.toDisplayString(t.messages[i]),9,ml))),128))],40,cl)):"aggregate"in t.modelValue?(e.openBlock(),e.createElementBlock("select",{key:2,value:t.modelValue.aggregate,disabled:t.readonly,"aria-label":t.messages.aggregate,onChange:o[3]||(o[3]=i=>M("aggregate",i.target.value))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(v).aggregates,i=>(e.openBlock(),e.createElementBlock("option",{key:i,value:i},e.toDisplayString(t.messages[i]),9,fl))),128))],40,gl)):(e.openBlock(),e.createElementBlock("select",{key:3,value:l.value,disabled:t.readonly,"aria-label":t.messages.resultType,onChange:o[4]||(o[4]=i=>h(i.target.value))},[e.createElementVNode("option",yl,e.toDisplayString(t.messages.text),1),e.createElementVNode("option",bl,e.toDisplayString(t.messages.number),1),e.createElementVNode("option",Vl,e.toDisplayString(t.messages.boolean),1),e.createElementVNode("option",kl,e.toDisplayString(t.messages.null),1)],40,vl))]),"aggregate"in t.modelValue?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("select",{value:t.modelValue.field??"",disabled:t.readonly,"aria-label":t.messages.measure,onChange:o[5]||(o[5]=i=>M("field",i.target.value))},[t.modelValue.aggregate==="count"?(e.openBlock(),e.createElementBlock("option",El,e.toDisplayString(t.messages.allRows),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,i=>(e.openBlock(),e.createElementBlock("option",{key:i.field,value:i.field},e.toDisplayString(i.label),9,Nl))),128))],40,hl),t.modelValue.aggregate==="weightedAvg"?(e.openBlock(),e.createElementBlock("select",{key:0,value:t.modelValue.weightField??"",disabled:t.readonly,"aria-label":t.messages.weight,onChange:o[6]||(o[6]=i=>M("weightField",i.target.value))},[e.createElementVNode("option",Bl,e.toDisplayString(t.messages.weight),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,i=>(e.openBlock(),e.createElementBlock("option",{key:i.field,value:i.field},e.toDisplayString(i.label),9,Dl))),128))],40,pl)):e.createCommentVNode("",!0)],64)):"value"in t.modelValue?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.value==="boolean"?(e.openBlock(),e.createElementBlock("select",{key:0,value:String(t.modelValue.value),disabled:t.readonly,"aria-label":t.messages.constant,onChange:o[7]||(o[7]=i=>g({value:i.target.value==="true"}))},[e.createElementVNode("option",wl,e.toDisplayString(t.messages.true),1),e.createElementVNode("option",$l,e.toDisplayString(t.messages.false),1)],40,Sl)):l.value!=="null"?(e.openBlock(),e.createElementBlock("input",{key:1,type:l.value==="number"?"number":"text",value:t.modelValue.value??"",disabled:t.readonly,"aria-label":t.messages.constant,onInput:o[8]||(o[8]=i=>$(i.target.value))},null,40,Cl)):e.createCommentVNode("",!0)],64)):"args"in t.modelValue?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modelValue.args,(i,s)=>(e.openBlock(),e.createElementBlock("div",{key:s,class:"mr-expression__argument"},[e.createVNode(a,{"model-value":i,fields:t.fields,messages:t.messages,readonly:t.readonly,depth:(t.depth??0)+1,"onUpdate:modelValue":T=>f(s,T)},null,8,["model-value","fields","messages","readonly","depth","onUpdate:modelValue"]),t.modelValue.args.length>2?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,"aria-label":`${t.messages.remove} ${t.messages.argument} ${s+1}`,onClick:T=>B(s)}," × ",8,xl)):e.createCommentVNode("",!0)]))),128)),!["subtract","divide"].includes(t.modelValue.op)&&t.modelValue.args.length<16?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,onClick:o[9]||(o[9]=i=>B())}," + "+e.toDisplayString(t.messages.addArgument),9,Fl)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),Ml=Q._export_sfc(Tl,[["__scopeId","data-v-84e5c0e5"]]),U=t=>JSON.parse(JSON.stringify(t));function Ul(t,w){const k=e.computed(()=>({...Z.DEFAULT_RULE_EDITOR_MESSAGES,...t.messages})),x=e.ref("computations"),v=e.ref(""),d=e.ref(""),l=e.ref({field:"",expression:{field:""},scope:"row"}),g=e.ref([]),b=e.ref(0),y=e.ref(""),f=e.ref(-1),B=e.ref("style"),h=e.ref({field:"",op:">",value:0}),$=e.ref({color:"#b91c1c",backgroundColor:"#fff1f2",bold:!1}),M=e.ref([]),V=z.useLocalDraft(()=>l.value),o=z.useLocalDraft(()=>g.value),a=z.useLocalDraft(()=>({when:h.value,style:$.value})),i=e.ref(new Map),s=e.ref(new Map);let T="",R=!1;const I=e.computed(()=>V.pending.value||o.pending.value||a.pending.value||i.value.size>0||s.value.size>0);let K;const O=e.computed(()=>{const m=new Map;for(const c of t.datasetSchema?.fields??[])m.set(c.field,c.label??c.field);for(const c of t.list.columns)m.has(c.field)||m.set(c.field,c.header||c.field);for(const c of Object.keys(t.datasets?.[t.list.dataset]?.[0]??{}))m.has(c)||m.set(c,c);return[...m].map(([c,p])=>({field:c,label:p}))}),G=e.computed(()=>g.value[b.value]),r=e.computed(()=>t.list.columns.find(m=>m.field===y.value)),N=e.computed(()=>j.validateComputedFields(S()));function E(){if(K===JSON.stringify(t.list)){K=void 0;return}R=!0,i.value=new Map,s.value=new Map,g.value=U(t.list.groups??(t.list.groupBy?[t.list.groupBy]:[]));for(const m of g.value)for(const c of m.aggregates??[])c.numeric??="number";t.list.columns.some(m=>m.field===y.value)||(y.value=t.list.columns[0]?.field??""),v.value="",M.value=[],C(d.value),X(-1),o.accept(),R=!1}e.watch(()=>t.list,E,{immediate:!0}),e.watch(l,()=>{M.value=[]},{deep:!0}),e.watch(()=>t.datasets,()=>{M.value=[]},{deep:!0});function C(m){!R&&V.pending.value&&(i.value=new Map(i.value).set(d.value,U(l.value))),d.value=m,l.value=U(t.list.computed?.find(p=>p.field===m)??{field:"",expression:{field:O.value[0]?.field??""},scope:"row"}),l.value.numeric??="number",M.value=[],v.value="",V.accept();const c=i.value.get(m);if(c){l.value=U(c);const p=new Map(i.value);p.delete(m),i.value=p}}function S(){return[...(t.list.computed??[]).filter(c=>c.field!==d.value),U(l.value)]}function A(m){if(t.readonly)return!1;const c=Y.validateReportTemplate({pages:[{widthMm:Math.max(1,m.leftMm+m.widthMm),heightMm:297,components:[m]}]});return c.ok?(v.value="",K=JSON.stringify(m),w(m),!0):(v.value=c.errors.map(p=>p.message).slice(0,3).join(";"),!1)}function P(){if(!l.value.field.trim()){v.value=k.value.missingTarget;return}const m=U(t.list);if(m.computed=S(),m.columns.some(c=>c.field===l.value.field)||m.columns.push({field:l.value.field,header:l.value.field,widthMm:30,semanticRole:"measure",align:"right",editable:!1,format:{kind:"number",...l.value.digits===void 0?{}:{digits:l.value.digits}}}),A(m)){const c=new Map(i.value);c.delete(d.value),c.delete(l.value.field),i.value=c,d.value=l.value.field,V.accept()}}function q(){if(!d.value)return;const m=U(t.list);if(m.computed=(m.computed??[]).filter(c=>c.field!==d.value),A(m)){const c=new Map(i.value);c.delete(d.value),i.value=c,V.accept(),C("")}}function H(){M.value=[],v.value="";const m=t.datasets?.[t.list.dataset];if(!m?.length){v.value=k.value.noData;return}try{const c=j.computeDataset(m.slice(0,1e3),{fields:S(),maxRows:1e3,maxCells:2e6});M.value=c.rows.slice(0,5).map((p,L)=>({row:L+1,value:p[l.value.field]}))}catch(c){v.value=c instanceof Error?c.message:String(c)}}function u(m){l.value.expression=m}function n(m,c){l.value.groupBy=c?[...l.value.groupBy??[],m]:(l.value.groupBy??[]).filter(p=>p!==m)}function F(){g.value.push({field:O.value[0]?.field??"",headerTemplate:"{value}",subtotalLabel:k.value.subtotalLabel,aggregates:[],keepWithNext:!0}),b.value=g.value.length-1}function D(m){const c=b.value,p=c+m;p<0||p>=g.value.length||([g.value[c],g.value[p]]=[g.value[p],g.value[c]],b.value=p)}function te(){g.value.splice(b.value,1),b.value=Math.max(0,Math.min(b.value,g.value.length-1))}function le(){G.value&&(G.value.aggregates??=[]).push({field:O.value[0]?.field??"",op:"sum",numeric:"number"})}function ae(){const m=U(t.list);m.groups=U(g.value),delete m.groupBy,A(m)&&o.accept()}function X(m){!R&&a.pending.value&&(s.value=new Map(s.value).set(T,{when:U(h.value),style:{...$.value}})),T=`${y.value}|${B.value}|${m}`,f.value=m;const c=B.value==="cell"?r.value?.visibleWhen:B.value==="rowVisibility"?t.list.rowVisibleWhen:r.value?.rules?.[m]?.when;h.value=U(c??{field:y.value,op:">",value:0});const p=r.value?.rules?.[m]?.style;$.value={color:String(p?.color??"#b91c1c"),backgroundColor:String(p?.backgroundColor??"#fff1f2"),bold:p?.bold===!0},a.accept();const L=s.value.get(T);if(L){h.value=U(L.when),$.value={...L.style};const J=new Map(s.value);J.delete(T),s.value=J}}function ne(m){const c=t.datasetSchema?.fields.find(J=>J.field===h.value.field),p=t.datasets?.[t.list.dataset]?.find(J=>J[h.value.field]!=null)?.[h.value.field],L=c?.type==="number"||!c&&typeof p=="number";c?.type==="decimal"?h.value.numeric="decimal":L?h.value.numeric="number":delete h.value.numeric,h.value.value=L&&m.trim()&&Number.isFinite(Number(m))?Number(m):m}function oe(m=!1){const c=U(t.list),p=c.columns.find(L=>L.field===y.value);if(!p){v.value=k.value.noSelection;return}if(B.value==="rowVisibility")m?delete c.rowVisibleWhen:c.rowVisibleWhen=U(h.value);else if(B.value==="cell")m?delete p.visibleWhen:p.visibleWhen=U(h.value);else if(p.rules??=[],m&&f.value>=0)p.rules.splice(f.value,1);else{if(m)return;f.value<0?p.rules.push({when:U(h.value),style:{...$.value}}):p.rules[f.value]={when:U(h.value),style:{...$.value}}}if(A(c)){const L=new Map(s.value);L.delete(T),s.value=L,a.accept()}}const ie=()=>JSON.stringify(re());Z.useTemplateToolDraft({key:()=>t.recoveryKey??"rules:0:0",baseline:()=>JSON.stringify(t.list),pending:()=>I.value,snapshot:ie,restore(m){const c=JSON.parse(m);l.value=c.formula,g.value=c.groups,h.value=c.when,$.value=c.style,d.value=c.selectedComputed,y.value=c.column,f.value=c.conditionIndex,T=c.conditionKey,B.value=c.effect,x.value=c.tab,i.value=new Map(c.computedDrafts),s.value=new Map(c.conditionDrafts),V.baseline.value=c.formulaBaseline,o.baseline.value=c.groupBaseline,a.baseline.value=c.conditionBaseline}});function re(){return{formula:l.value,groups:g.value,when:h.value,style:$.value,selectedComputed:d.value,column:y.value,conditionIndex:f.value,conditionKey:T,effect:B.value,tab:x.value,computedDrafts:[...i.value],conditionDrafts:[...s.value],formulaBaseline:V.baseline.value,groupBaseline:o.baseline.value,conditionBaseline:a.baseline.value}}return{m:k,pendingLocalChanges:I,draftSnapshot:()=>JSON.stringify({formula:l.value,groups:g.value,when:h.value,style:$.value,computedDrafts:[...i.value],conditionDrafts:[...s.value]}),tab:x,fields:O,formula:l,groups:g,groupIndex:b,currentGroup:G,column:y,currentColumn:r,conditionIndex:f,effect:B,when:h,style:$,error:v,preview:M,diagnostics:N,selectedComputed:d,loadComputed:C,applyComputed:P,removeComputed:q,check:H,setExpression:u,toggleGroupField:n,addGroup:F,moveGroup:D,removeGroup:te,addAggregate:le,applyGroups:ae,loadCondition:X,setThreshold:ne,applyCondition:oe,applyLayout:A,resetDraft:()=>{K=void 0,E()}}}const Ll=["aria-label"],Rl={class:"mr-rule-editor__directory"},Kl=["aria-label"],Ol=["aria-selected","onClick"],Al={key:0},Il={key:1},Gl={class:"mr-rule-editor__catalog"},Wl=["disabled"],Jl=["aria-label"],jl={class:"mr-rule-editor__field-list"},ql=["disabled","title","onClick"],Hl={key:1},zl={key:0,class:"mr-rule-editor__panel"},Pl=["aria-label","value","disabled"],Zl={value:""},Ql=["value"],Xl=["aria-label","disabled"],Yl={class:"mr-rule-editor__pair"},_l=["aria-label","disabled"],ea=["value"],ta=["aria-label","disabled"],la={value:"number"},aa={value:"decimal"},na={key:0,class:"mr-rule-editor__checks"},oa=["checked","disabled","onChange"],ia={key:2,class:"mr-rule-editor__hint"},ra={class:"mr-rule-editor__advanced"},da=["aria-label","disabled"],sa=["aria-label","disabled"],ua={value:"propagate"},ca={value:"error"},ma=["aria-label","disabled"],ga={value:"error"},fa={value:"null"},va={key:3,class:"mr-rule-editor__hint"},ya={key:4,class:"mr-rule-editor__diagnostic"},ba={class:"mr-rule-editor__actions"},Va=["disabled"],ka=["disabled"],ha=["disabled"],Ea={key:5,class:"mr-rule-editor__error"},Na={key:1,class:"mr-rule-editor__panel"},pa={class:"mr-rule-editor__pair"},Ba=["aria-label"],Da=["value"],Sa={key:0,value:0},wa=["disabled"],$a=["aria-label","disabled"],Ca=["value"],xa={class:"mr-rule-editor__pair"},Fa=["aria-label","disabled"],Ta=["aria-label","disabled"],Ma={class:"mr-rule-editor__checks"},Ua=["disabled"],La=["disabled"],Ra={class:"mr-rule-editor__pair"},Ka=["aria-label","onUpdate:modelValue","disabled"],Oa=["value"],Aa=["aria-label","onUpdate:modelValue","disabled"],Ia=["value"],Ga=["aria-label","onUpdate:modelValue","disabled"],Wa={value:void 0},Ja=["value"],ja={key:0},qa=["aria-label","onUpdate:modelValue","disabled"],Ha=["value"],za={class:"mr-rule-editor__pair"},Pa=["onUpdate:modelValue","disabled","aria-label"],Za={value:"number"},Qa={value:"decimal"},Xa=["disabled","onClick"],Ya=["disabled"],_a={class:"mr-rule-editor__actions"},en=["disabled","aria-label"],tn=["disabled","aria-label"],ln=["disabled"],an=["disabled"],nn={key:2,class:"mr-rule-editor__panel"},on=["aria-label","disabled"],rn=["value"],dn=["aria-label","disabled"],sn={value:"style"},un={value:"cell"},cn={value:"rowVisibility"},mn={key:0},gn=["aria-label","value","disabled"],fn={value:-1},vn=["value"],yn=["aria-label","disabled"],bn=["value"],Vn={class:"mr-rule-editor__pair"},kn=["aria-label","disabled"],hn=["value"],En=["value","disabled"],Nn={class:"mr-rule-editor__pair"},pn=["disabled"],Bn=["disabled"],Dn={class:"mr-rule-editor__check"},Sn=["disabled"],wn={class:"mr-rule-editor__actions"},$n=["disabled"],Cn=["disabled"],xn={class:"mr-rule-editor__explanation"},Fn={key:0},Tn={class:"mr-rule-editor__results"},Mn={key:0},Un={key:1},Ln={key:1,class:"mr-rule-editor__error",role:"alert"},Rn=e.defineComponent({__name:"RuleEditor",props:{recoveryKey:{},list:{},datasets:{},datasetSchema:{},datasetSchemas:{},readonly:{type:Boolean},messages:{}},emits:["change","dirty"],setup(t,{expose:w,emit:k}){const x=t,v=k,d=Ul(x,H=>v("change",H)),{m:l,tab:g,fields:b,formula:y,groups:f,groupIndex:B,currentGroup:h,column:$,currentColumn:M,conditionIndex:V,effect:o,when:a,style:i,error:s,preview:T,diagnostics:R,selectedComputed:I}=d,K=e.ref({}),O=e.ref(0);function G(){d.resetDraft(),K.value={},O.value++}const r=e.computed(()=>d.pendingLocalChanges.value||Object.values(K.value).some(Boolean));e.watch([r,d.draftSnapshot,K],()=>v("dirty",r.value),{immediate:!0,deep:!0,flush:"sync"}),w({get pendingLocalChanges(){return r.value}});const N=ue(x,d.formula,l),{query:E,matches:C,fieldWindow:S,expression:A,sources:P}=N,q=j.getComputationMetadata();return(H,u)=>(e.openBlock(),e.createElementBlock("section",{class:"mr-rule-editor","aria-label":e.unref(l).settings},[e.createElementVNode("aside",Rl,[e.createElementVNode("div",{class:"mr-rule-editor__tabs",role:"tablist","aria-label":e.unref(l).settings},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["computations","groups","conditions","detail","matrix","tree"],n=>e.createElementVNode("button",{key:n,type:"button",role:"tab","aria-selected":e.unref(g)===n,class:e.normalizeClass({"is-active":e.unref(g)===n}),onClick:F=>g.value=n},[e.createTextVNode(e.toDisplayString(e.unref(l)[n]),1),n==="computations"&&t.list.computed?.length?(e.openBlock(),e.createElementBlock("span",Al,e.toDisplayString(t.list.computed.length),1)):e.createCommentVNode("",!0),n==="groups"&&e.unref(f).length?(e.openBlock(),e.createElementBlock("span",Il,e.toDisplayString(e.unref(f).length),1)):e.createCommentVNode("",!0)],10,Ol)),64))],8,Kl),e.createElementVNode("div",Gl,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(l).catalog),1),r.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,onClick:G},e.toDisplayString(e.unref(l).restoreDraft),9,Wl)):e.createCommentVNode("",!0),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).searchFields),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[0]||(u[0]=n=>e.isRef(E)?E.value=n:null),type:"search","aria-label":e.unref(l).searchFields},null,8,Jl),[[e.vModelText,e.unref(E)]])]),e.createElementVNode("div",jl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(S),n=>(e.openBlock(),e.createElementBlock("button",{key:n.field,type:"button",disabled:t.readonly||e.unref(g)!=="computations",title:e.unref(l).useField,onClick:F=>e.unref(d).setExpression({field:n.field})},[e.createElementVNode("strong",null,e.toDisplayString(n.label),1),e.createElementVNode("code",null,e.toDisplayString(n.field),1),e.createElementVNode("small",null,e.toDisplayString(n.meta),1)],8,ql))),128))]),e.unref(C).length>50?(e.openBlock(),e.createElementBlock("small",Hl,e.toDisplayString(e.unref(l).shown)+" 50 / "+e.toDisplayString(e.unref(C).length),1)):e.createCommentVNode("",!0)])]),e.unref(g)==="computations"?(e.openBlock(),e.createElementBlock("div",zl,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).existing),1),e.createElementVNode("select",{"aria-label":e.unref(l).existing,value:e.unref(I),disabled:t.readonly,onChange:u[1]||(u[1]=n=>e.unref(d).loadComputed(n.target.value))},[e.createElementVNode("option",Zl,"+ "+e.toDisplayString(e.unref(l).newField),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.list.computed,n=>(e.openBlock(),e.createElementBlock("option",{key:n.field,value:n.field},e.toDisplayString(n.field),9,Ql))),128))],40,Pl)]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).target),1),e.withDirectives(e.createElementVNode("input",{"aria-label":e.unref(l).target,"onUpdate:modelValue":u[2]||(u[2]=n=>e.unref(y).field=n),disabled:t.readonly,autocomplete:"off"},null,8,Xl),[[e.vModelText,e.unref(y).field]])]),e.createElementVNode("div",Yl,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).scope),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).scope,"onUpdate:modelValue":u[3]||(u[3]=n=>e.unref(y).scope=n),disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(q).scopes,n=>(e.openBlock(),e.createElementBlock("option",{key:n,value:n},e.toDisplayString(e.unref(l)[n]),9,ea))),128))],8,_l),[[e.vModelSelect,e.unref(y).scope]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).numeric),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).numeric,"onUpdate:modelValue":u[4]||(u[4]=n=>e.unref(y).numeric=n),disabled:t.readonly},[e.createElementVNode("option",la,e.toDisplayString(e.unref(l).number),1),e.createElementVNode("option",aa,e.toDisplayString(e.unref(l).decimal),1)],8,ta),[[e.vModelSelect,e.unref(y).numeric]])])]),e.unref(y).scope==="group"?(e.openBlock(),e.createElementBlock("fieldset",na,[e.createElementVNode("legend",null,e.toDisplayString(e.unref(l).groupFields),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),n=>(e.openBlock(),e.createElementBlock("label",{key:n.field},[e.createElementVNode("input",{type:"checkbox",checked:e.unref(y).groupBy?.includes(n.field),disabled:t.readonly,onChange:F=>e.unref(d).toggleGroupField(n.field,F.target.checked)},null,40,oa),e.createTextVNode(e.toDisplayString(n.label),1)]))),128))])):e.createCommentVNode("",!0),typeof e.unref(y).expression!="string"?(e.openBlock(),e.createBlock(Ml,{key:1,"model-value":e.unref(y).expression,fields:e.unref(b),messages:e.unref(l),readonly:t.readonly,"onUpdate:modelValue":e.unref(d).setExpression},null,8,["model-value","fields","messages","readonly","onUpdate:modelValue"])):(e.openBlock(),e.createElementBlock("p",ia,e.toDisplayString(e.unref(y).expression),1)),e.createElementVNode("details",null,[e.createElementVNode("summary",null,e.toDisplayString(e.unref(l).advanced),1),e.createElementVNode("div",ra,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).digits),1),e.withDirectives(e.createElementVNode("input",{"aria-label":e.unref(l).digits,"onUpdate:modelValue":u[5]||(u[5]=n=>e.unref(y).digits=n),type:"number",min:"0",max:"100",disabled:t.readonly},null,8,da),[[e.vModelText,e.unref(y).digits,void 0,{number:!0}]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).nulls),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).nulls,"onUpdate:modelValue":u[6]||(u[6]=n=>e.unref(y).nulls=n),disabled:t.readonly},[e.createElementVNode("option",ua,e.toDisplayString(e.unref(l).propagate),1),e.createElementVNode("option",ca,e.toDisplayString(e.unref(l).error),1)],8,sa),[[e.vModelSelect,e.unref(y).nulls]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).division),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).division,"onUpdate:modelValue":u[7]||(u[7]=n=>e.unref(y).divisionByZero=n),disabled:t.readonly},[e.createElementVNode("option",ga,e.toDisplayString(e.unref(l).error),1),e.createElementVNode("option",fa,e.toDisplayString(e.unref(l).propagate),1)],8,ma),[[e.vModelSelect,e.unref(y).divisionByZero]])])])]),e.unref(y).numeric==="decimal"?(e.openBlock(),e.createElementBlock("p",va,e.toDisplayString(e.unref(l).decimalHint),1)):e.createCommentVNode("",!0),e.unref(R).valid&&e.unref(y).field?(e.openBlock(),e.createElementBlock("div",ya,[e.createTextVNode(e.toDisplayString(e.unref(l).dependencies),1),e.createElementVNode("strong",null,e.toDisplayString(e.unref(R).order.join(" → ")),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",ba,[e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:u[8]||(u[8]=(...n)=>e.unref(d).check&&e.unref(d).check(...n))},e.toDisplayString(e.unref(l).check),9,Va),e.createElementVNode("button",{type:"button",class:"mr-rule-editor__primary",disabled:t.readonly||!e.unref(R).valid,onClick:u[9]||(u[9]=(...n)=>e.unref(d).applyComputed&&e.unref(d).applyComputed(...n))},e.toDisplayString(e.unref(l).apply),9,ka),e.unref(I)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,onClick:u[10]||(u[10]=(...n)=>e.unref(d).removeComputed&&e.unref(d).removeComputed(...n))},e.toDisplayString(e.unref(l).remove),9,ha)):e.createCommentVNode("",!0)]),!e.unref(R).valid&&e.unref(y).field?(e.openBlock(),e.createElementBlock("p",Ea,e.toDisplayString(e.unref(R).errors.join(";")),1)):e.createCommentVNode("",!0)])):e.unref(g)==="groups"?(e.openBlock(),e.createElementBlock("div",Na,[e.createElementVNode("div",pa,[e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":u[11]||(u[11]=n=>e.isRef(B)?B.value=n:null),"aria-label":e.unref(l).groups},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(n,F)=>(e.openBlock(),e.createElementBlock("option",{key:F,value:F},e.toDisplayString(F+1)+" · "+e.toDisplayString(n.field),9,Da))),128)),e.unref(f).length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("option",Sa,e.toDisplayString(e.unref(l).noGroups),1))],8,Ba),[[e.vModelSelect,e.unref(B),void 0,{number:!0}]]),e.createElementVNode("button",{type:"button",disabled:t.readonly||e.unref(f).length>=16,onClick:u[12]||(u[12]=(...n)=>e.unref(d).addGroup&&e.unref(d).addGroup(...n))}," + "+e.toDisplayString(e.unref(l).addGroup),9,wa)]),e.unref(h)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).field),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).field,"onUpdate:modelValue":u[13]||(u[13]=n=>e.unref(h).field=n),disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),n=>(e.openBlock(),e.createElementBlock("option",{key:n.field,value:n.field},e.toDisplayString(n.label),9,Ca))),128))],8,$a),[[e.vModelSelect,e.unref(h).field]])]),e.createElementVNode("div",xa,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).header),1),e.withDirectives(e.createElementVNode("input",{"aria-label":e.unref(l).header,"onUpdate:modelValue":u[14]||(u[14]=n=>e.unref(h).headerTemplate=n),disabled:t.readonly,placeholder:"{value}"},null,8,Fa),[[e.vModelText,e.unref(h).headerTemplate]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).footer),1),e.withDirectives(e.createElementVNode("input",{"aria-label":e.unref(l).footer,"onUpdate:modelValue":u[15]||(u[15]=n=>e.unref(h).subtotalLabel=n),disabled:t.readonly},null,8,Ta),[[e.vModelText,e.unref(h).subtotalLabel]])])]),e.createElementVNode("div",Ma,[e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[16]||(u[16]=n=>e.unref(h).keepWithNext=n),type:"checkbox",disabled:t.readonly},null,8,Ua),[[e.vModelCheckbox,e.unref(h).keepWithNext]]),e.createTextVNode(e.toDisplayString(e.unref(l).orphan),1)]),e.createElementVNode("label",null,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[17]||(u[17]=n=>e.unref(h).repeatHeader=n),type:"checkbox",disabled:t.readonly},null,8,La),[[e.vModelCheckbox,e.unref(h).repeatHeader]]),e.createTextVNode(e.toDisplayString(e.unref(l).repeat),1)])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h).aggregates,(n,F)=>(e.openBlock(),e.createElementBlock("div",{key:F,class:"mr-rule-editor__aggregate"},[e.createElementVNode("div",Ra,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).output),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).output,"onUpdate:modelValue":D=>n.field=D,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),D=>(e.openBlock(),e.createElementBlock("option",{key:D.field,value:D.field},e.toDisplayString(D.label),9,Oa))),128))],8,Ka),[[e.vModelSelect,n.field]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).aggregate),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).aggregate,"onUpdate:modelValue":D=>n.op=D,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(q).aggregates,D=>(e.openBlock(),e.createElementBlock("option",{key:D,value:D},e.toDisplayString(e.unref(l)[D]),9,Ia))),128))],8,Aa),[[e.vModelSelect,n.op]])])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).measure),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).measure,"onUpdate:modelValue":D=>n.valueField=D,disabled:t.readonly},[e.createElementVNode("option",Wa,e.toDisplayString(n.field),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),D=>(e.openBlock(),e.createElementBlock("option",{key:D.field,value:D.field},e.toDisplayString(D.label),9,Ja))),128))],8,Ga),[[e.vModelSelect,n.valueField]])]),n.op==="weightedAvg"?(e.openBlock(),e.createElementBlock("label",ja,[e.createTextVNode(e.toDisplayString(e.unref(l).weight),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).weight,"onUpdate:modelValue":D=>n.weightField=D,disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),D=>(e.openBlock(),e.createElementBlock("option",{key:D.field,value:D.field},e.toDisplayString(D.label),9,Ha))),128))],8,qa),[[e.vModelSelect,n.weightField]])])):e.createCommentVNode("",!0),e.createElementVNode("div",za,[e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":D=>n.numeric=D,disabled:t.readonly,"aria-label":e.unref(l).numeric},[e.createElementVNode("option",Za,e.toDisplayString(e.unref(l).number),1),e.createElementVNode("option",Qa,e.toDisplayString(e.unref(l).decimal),1)],8,Pa),[[e.vModelSelect,n.numeric]]),e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:D=>e.unref(h).aggregates?.splice(F,1)},e.toDisplayString(e.unref(l).remove),9,Xa)])]))),128)),e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:u[18]||(u[18]=(...n)=>e.unref(d).addAggregate&&e.unref(d).addAggregate(...n))}," + "+e.toDisplayString(e.unref(l).addAggregate),9,Ya),e.createElementVNode("div",_a,[e.createElementVNode("button",{type:"button",disabled:t.readonly||e.unref(B)===0,"aria-label":e.unref(l).moveUp,onClick:u[19]||(u[19]=n=>e.unref(d).moveGroup(-1))}," ↑ "+e.toDisplayString(e.unref(l).outer),9,en),e.createElementVNode("button",{type:"button",disabled:t.readonly||e.unref(B)>=e.unref(f).length-1,"aria-label":e.unref(l).moveDown,onClick:u[20]||(u[20]=n=>e.unref(d).moveGroup(1))}," ↓ "+e.toDisplayString(e.unref(l).inner),9,tn),e.createElementVNode("button",{type:"button",disabled:t.readonly,onClick:u[21]||(u[21]=(...n)=>e.unref(d).removeGroup&&e.unref(d).removeGroup(...n))},e.toDisplayString(e.unref(l).remove),9,ln)])],64)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"mr-rule-editor__primary",disabled:t.readonly,onClick:u[22]||(u[22]=(...n)=>e.unref(d).applyGroups&&e.unref(d).applyGroups(...n))},e.toDisplayString(e.unref(l).apply),9,an)])):e.unref(g)==="conditions"?(e.openBlock(),e.createElementBlock("div",nn,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).column),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).column,"onUpdate:modelValue":u[23]||(u[23]=n=>e.isRef($)?$.value=n:null),disabled:t.readonly,onChange:u[24]||(u[24]=n=>e.unref(d).loadCondition(-1))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.list.columns,n=>(e.openBlock(),e.createElementBlock("option",{key:n.field,value:n.field},e.toDisplayString(n.header||n.field),9,rn))),128))],40,on),[[e.vModelSelect,e.unref($)]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).effect),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).effect,"onUpdate:modelValue":u[25]||(u[25]=n=>e.isRef(o)?o.value=n:null),disabled:t.readonly,onChange:u[26]||(u[26]=n=>e.unref(d).loadCondition(-1))},[e.createElementVNode("option",sn,e.toDisplayString(e.unref(l).style),1),e.createElementVNode("option",un,e.toDisplayString(e.unref(l).cell),1),e.createElementVNode("option",cn,e.toDisplayString(e.unref(l).rowVisibility),1)],40,dn),[[e.vModelSelect,e.unref(o)]])]),e.unref(o)==="style"?(e.openBlock(),e.createElementBlock("label",mn,[e.createTextVNode(e.toDisplayString(e.unref(l).existing),1),e.createElementVNode("select",{"aria-label":e.unref(l).existing,value:e.unref(V),disabled:t.readonly,onChange:u[27]||(u[27]=n=>e.unref(d).loadCondition(Number(n.target.value)))},[e.createElementVNode("option",fn,"+ "+e.toDisplayString(e.unref(l).newCondition),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M)?.rules,(n,F)=>(e.openBlock(),e.createElementBlock("option",{key:F,value:F},e.toDisplayString(F+1)+" · "+e.toDisplayString(n.when.field)+" "+e.toDisplayString(n.when.op)+" "+e.toDisplayString(n.when.value),9,vn))),128))],40,gn)])):e.createCommentVNode("",!0),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).condition),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).condition,"onUpdate:modelValue":u[28]||(u[28]=n=>e.unref(a).field=n),disabled:t.readonly},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),n=>(e.openBlock(),e.createElementBlock("option",{key:n.field,value:n.field},e.toDisplayString(n.label),9,bn))),128))],8,yn),[[e.vModelSelect,e.unref(a).field]])]),e.createElementVNode("div",Vn,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).comparison),1),e.withDirectives(e.createElementVNode("select",{"aria-label":e.unref(l).comparison,"onUpdate:modelValue":u[29]||(u[29]=n=>e.unref(a).op=n),disabled:t.readonly},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([">",">=","<","<=","==","!="],n=>e.createElementVNode("option",{key:n,value:n},e.toDisplayString(n),9,hn)),64))],8,kn),[[e.vModelSelect,e.unref(a).op]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).threshold),1),e.createElementVNode("input",{value:e.unref(a).value,disabled:t.readonly,onInput:u[30]||(u[30]=n=>e.unref(d).setThreshold(n.target.value))},null,40,En)])]),e.unref(o)==="style"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",Nn,[e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).color),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[31]||(u[31]=n=>e.unref(i).color=n),type:"color",disabled:t.readonly},null,8,pn),[[e.vModelText,e.unref(i).color]])]),e.createElementVNode("label",null,[e.createTextVNode(e.toDisplayString(e.unref(l).background),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[32]||(u[32]=n=>e.unref(i).backgroundColor=n),type:"color",disabled:t.readonly},null,8,Bn),[[e.vModelText,e.unref(i).backgroundColor]])])]),e.createElementVNode("label",Dn,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[33]||(u[33]=n=>e.unref(i).bold=n),type:"checkbox",disabled:t.readonly},null,8,Sn),[[e.vModelCheckbox,e.unref(i).bold]]),e.createTextVNode(e.toDisplayString(e.unref(l).bold),1)])],64)):e.createCommentVNode("",!0),e.createElementVNode("div",wn,[e.createElementVNode("button",{type:"button",class:"mr-rule-editor__primary",disabled:t.readonly,onClick:u[34]||(u[34]=n=>e.unref(d).applyCondition())},e.toDisplayString(e.unref(l).apply),9,$n),e.unref(V)>=0||e.unref(o)!=="style"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:t.readonly,onClick:u[35]||(u[35]=n=>e.unref(d).applyCondition(!0))},e.toDisplayString(e.unref(l).removeCondition),9,Cn)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["detail","matrix","tree"],n=>e.withDirectives(e.createVNode(ll,{key:`${n}-${O.value}`,list:t.list,"recovery-key":t.recoveryKey,mode:n,datasets:t.datasets,"dataset-schema":t.datasetSchema,"dataset-schemas":t.datasetSchemas,readonly:t.readonly,messages:e.unref(l),accept:e.unref(d).applyLayout,onDirty:F=>K.value={...K.value,[n]:F}},null,8,["list","recovery-key","mode","datasets","dataset-schema","dataset-schemas","readonly","messages","accept","onDirty"]),[[e.vShow,e.unref(g)===n]])),64)),e.createElementVNode("aside",xn,[e.createElementVNode("header",null,[e.createElementVNode("strong",null,e.toDisplayString(e.unref(l).explanation),1),r.value?(e.openBlock(),e.createElementBlock("span",Fn,e.toDisplayString(e.unref(l).pending),1)):e.createCommentVNode("",!0)]),e.createElementVNode("p",null,e.toDisplayString(e.unref(l).sourceHint),1),e.unref(g)==="computations"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("h4",null,e.toDisplayString(e.unref(l).expression),1),e.createElementVNode("code",null,e.toDisplayString(e.unref(A)),1),e.createElementVNode("div",Tn,[e.createElementVNode("h4",null,e.toDisplayString(e.unref(l).sourceValues)+" → "+e.toDisplayString(e.unref(l).result),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(P),n=>(e.openBlock(),e.createElementBlock("div",{key:n.row,class:"mr-rule-editor__trace"},[e.createElementVNode("small",null,"#"+e.toDisplayString(n.row),1),e.createElementVNode("code",null,e.toDisplayString(n.values),1),e.createElementVNode("strong",null,e.toDisplayString(e.unref(T).find(F=>F.row===n.row)?.value??(e.unref(T).length?"—":e.unref(l).notChecked)),1)]))),128)),e.unref(T).some(n=>n.value==null)?(e.openBlock(),e.createElementBlock("p",Mn,e.toDisplayString(e.unref(l).nullReason),1)):e.createCommentVNode("",!0),e.unref(T).length?(e.openBlock(),e.createElementBlock("p",Un,e.toDisplayString(e.unref(l).sample),1)):e.createCommentVNode("",!0)])],64)):e.createCommentVNode("",!0),e.unref(s)?(e.openBlock(),e.createElementBlock("p",Ln,e.toDisplayString(e.unref(s)),1)):e.createCommentVNode("",!0)])],8,Ll))}}),Kn=Q._export_sfc(Rn,[["__scopeId","data-v-f5eea239"]]);exports.default=Kn;
@@ -1 +0,0 @@
1
- "use strict";const w=require("./capabilities-CAh2Nrue.cjs"),y=require("./progress-B0ctFpKf.cjs"),b=require("./media-B7vnpD8k.cjs");class p extends Error{constructor(e,r){super(e.message),this.name="OutputAssetError",this.diagnostic=e,this.cause=r}}function h(n){if(n.aborted)throw n.reason??new DOMException("The operation was aborted.","AbortError")}function I(n){const e={maxAssets:1e3,maxImageBytes:33554432,maxTotalImageBytes:134217728,maxDurationMs:3e4,...n.assetBudget};for(const[r,i]of Object.entries(e))if(!Number.isSafeInteger(i)||i<=0||i>2147483647)throw new RangeError(`${r} must be a positive safe integer at most 2147483647.`);return e}function v(n){const e=/^data:image\/[a-z0-9.+-]+(;base64)?,(.*)$/is.exec(n);if(!e)throw new TypeError("Asset renderers must return an image data URL.");return e[1]?Math.ceil(e[2].length*3/4):new TextEncoder().encode(decodeURIComponent(e[2])).byteLength}function l(n,e,r,i,s){const t={code:r,message:i,severity:"warning",format:n.options.format??"dom",pageIndex:e.pageIndex,componentIndex:e.componentIndex,componentPath:e.componentPath,kind:e.component.kind,nid:e.component.nid};if(n.diagnostics.push(t),w.notifyOutputDiagnostic(t,{...n.options,signal:n.signal}),n.options.assetFailure!=="placeholder")throw new p(t,s)}async function E(n,e,r){const i=n.options.assetRenderers?.[e.kind];if(e.imageData||!i)return e.imageData;if(++n.rendered>n.budget.maxAssets)return l(n,r,"asset-budget-exceeded","Output exceeded the asset count budget.");let s;try{if(n.active=r,s=await y.waitForOutput(i({...r,signal:n.signal}),n.signal),h(n.signal),s.length>n.budget.maxImageBytes*4+1024)return l(n,r,"asset-budget-exceeded","Output exceeded the image payload byte budget.");const t=v(s);if(t>n.budget.maxImageBytes||n.bytes+t>n.budget.maxTotalImageBytes)return l(n,r,"asset-budget-exceeded","Output exceeded the encoded image byte budget.");/^data:image\/(png|jpe?g);base64,/i.test(s)&&n.inspectImage(s),n.bytes+=t}catch(t){if(n.signal.aborted||t instanceof p||t instanceof b.ImageMediaError&&t.code==="image-budget-exceeded")throw t;return l(n,r,"asset-render-failed",`Asset renderer failed for ${e.kind}; output was not silently omitted.`,t)}return s}function A(n,e){const r=n.active;if(!r){e.abort(new Error("Asset rendering exceeded maxDurationMs."));return}const i={code:"asset-budget-exceeded",message:"Asset rendering exceeded maxDurationMs.",severity:"warning",format:n.options.format??"dom",pageIndex:r.pageIndex,componentIndex:r.componentIndex,componentPath:r.componentPath,kind:r.component.kind,nid:r.component.nid};n.diagnostics.push(i);try{w.notifyOutputDiagnostic(i,{...n.options,signal:n.signal})}catch(s){e.abort(s);return}e.abort(new p(i))}async function D(n,e,r,i,s){if(!e?.children?.length)return e;const t=[];for(const[a,d]of e.children.entries())t.push(await x(n,d,{...r,component:d,componentPath:[...i,a]},s));return t.some((a,d)=>a!==e.children[d])?{...e,children:t}:e}async function x(n,e,r,i){if(h(n.signal),i.has(e))throw new TypeError("Cyclic grid children cannot be rendered.");let s=n.cache.get(e);s||(s=E(n,e,r),n.cache.set(e,s));const t=await s;h(n.signal);let a=e.grid;if(a){const d=new Set(i).add(e),c=[];for(const[g,o]of a.cells.entries()){const u=[];for(const[m,f]of o.entries())u.push(await D(n,f,r,[...r.componentPath,g,m],d));c.push(u)}c.some((g,o)=>g.some((u,m)=>u!==a.cells[o][m]))&&(a={...a,cells:c})}return t!==e.imageData||a!==e.grid?{...e,imageData:t,grid:a}:e}function O(n,e,r){const i=new Set,s=t=>{if(y.assertOutputActive(r),!i.has(t)){if(i.add(t),t.imageData&&/^data:image\/(png|jpe?g);base64,/i.test(t.imageData))try{e(t.imageData)}catch(a){if(!(a instanceof b.ImageMediaError)||a.code==="image-budget-exceeded")throw a}for(const a of t.grid?.cells??[])for(const d of a)for(const c of d?.children??[])s(c)}};for(const t of n.pages)for(const a of t.components)s(a)}async function M(n,e={}){const r=I(e),i=b.createImageMediaInspector(e);if(O(n,i,e.signal),e.signal?.aborted)throw e.signal.reason??new DOMException("The operation was aborted.","AbortError");const s=new AbortController,t=()=>s.abort(e.signal?.reason);if(e.signal?.addEventListener("abort",t,{once:!0}),!e.assetRenderers||!Object.keys(e.assetRenderers).length)return e.signal?.removeEventListener("abort",t),{plan:n,diagnostics:[]};const a={options:e,signal:s.signal,diagnostics:[],rendered:0,bytes:0,budget:r,cache:new WeakMap,inspectImage:i},d=setTimeout(()=>A(a,s),r.maxDurationMs);try{const c=[];for(const[g,o]of n.pages.entries()){if(g<(e.start??0)||g>(e.end??n.pages.length-1)){c.push(o);continue}const u=[];for(const[m,f]of o.components.entries())u.push(await x(a,f,{component:f,pageIndex:g,componentIndex:m,componentPath:[]},new Set));c.push(u.some((m,f)=>m!==o.components[f])?{...o,components:u}:o)}return h(a.signal),{plan:c.some((g,o)=>g!==n.pages[o])?{...n,pages:c}:n,diagnostics:a.diagnostics}}finally{clearTimeout(d),e.signal?.removeEventListener("abort",t)}}exports.OutputAssetError=p;exports.resolvePlanAssets=M;
@@ -1,124 +0,0 @@
1
- import { n as b } from "./capabilities-DskCHs3V.js";
2
- import { a as y, w as I } from "./progress-D-OTpEav.js";
3
- import { c as v, I as w } from "./media-Y90dHK9z.js";
4
- class p extends Error {
5
- constructor(e, r) {
6
- super(e.message), this.name = "OutputAssetError", this.diagnostic = e, this.cause = r;
7
- }
8
- }
9
- function h(n) {
10
- if (n.aborted) throw n.reason ?? new DOMException("The operation was aborted.", "AbortError");
11
- }
12
- function E(n) {
13
- const e = { maxAssets: 1e3, maxImageBytes: 33554432, maxTotalImageBytes: 134217728, maxDurationMs: 3e4, ...n.assetBudget };
14
- for (const [r, i] of Object.entries(e))
15
- if (!Number.isSafeInteger(i) || i <= 0 || i > 2147483647) throw new RangeError(`${r} must be a positive safe integer at most 2147483647.`);
16
- return e;
17
- }
18
- function A(n) {
19
- const e = /^data:image\/[a-z0-9.+-]+(;base64)?,(.*)$/is.exec(n);
20
- if (!e) throw new TypeError("Asset renderers must return an image data URL.");
21
- return e[1] ? Math.ceil(e[2].length * 3 / 4) : new TextEncoder().encode(decodeURIComponent(e[2])).byteLength;
22
- }
23
- function l(n, e, r, i, s) {
24
- const t = { code: r, message: i, severity: "warning", format: n.options.format ?? "dom", pageIndex: e.pageIndex, componentIndex: e.componentIndex, componentPath: e.componentPath, kind: e.component.kind, nid: e.component.nid };
25
- if (n.diagnostics.push(t), b(t, { ...n.options, signal: n.signal }), n.options.assetFailure !== "placeholder") throw new p(t, s);
26
- }
27
- async function D(n, e, r) {
28
- const i = n.options.assetRenderers?.[e.kind];
29
- if (e.imageData || !i) return e.imageData;
30
- if (++n.rendered > n.budget.maxAssets) return l(n, r, "asset-budget-exceeded", "Output exceeded the asset count budget.");
31
- let s;
32
- try {
33
- if (n.active = r, s = await I(i({ ...r, signal: n.signal }), n.signal), h(n.signal), s.length > n.budget.maxImageBytes * 4 + 1024) return l(n, r, "asset-budget-exceeded", "Output exceeded the image payload byte budget.");
34
- const t = A(s);
35
- if (t > n.budget.maxImageBytes || n.bytes + t > n.budget.maxTotalImageBytes) return l(n, r, "asset-budget-exceeded", "Output exceeded the encoded image byte budget.");
36
- /^data:image\/(png|jpe?g);base64,/i.test(s) && n.inspectImage(s), n.bytes += t;
37
- } catch (t) {
38
- if (n.signal.aborted || t instanceof p || t instanceof w && t.code === "image-budget-exceeded") throw t;
39
- return l(n, r, "asset-render-failed", `Asset renderer failed for ${e.kind}; output was not silently omitted.`, t);
40
- }
41
- return s;
42
- }
43
- function O(n, e) {
44
- const r = n.active;
45
- if (!r) {
46
- e.abort(new Error("Asset rendering exceeded maxDurationMs."));
47
- return;
48
- }
49
- const i = { code: "asset-budget-exceeded", message: "Asset rendering exceeded maxDurationMs.", severity: "warning", format: n.options.format ?? "dom", pageIndex: r.pageIndex, componentIndex: r.componentIndex, componentPath: r.componentPath, kind: r.component.kind, nid: r.component.nid };
50
- n.diagnostics.push(i);
51
- try {
52
- b(i, { ...n.options, signal: n.signal });
53
- } catch (s) {
54
- e.abort(s);
55
- return;
56
- }
57
- e.abort(new p(i));
58
- }
59
- async function M(n, e, r, i, s) {
60
- if (!e?.children?.length) return e;
61
- const t = [];
62
- for (const [a, d] of e.children.entries())
63
- t.push(await x(n, d, { ...r, component: d, componentPath: [...i, a] }, s));
64
- return t.some((a, d) => a !== e.children[d]) ? { ...e, children: t } : e;
65
- }
66
- async function x(n, e, r, i) {
67
- if (h(n.signal), i.has(e)) throw new TypeError("Cyclic grid children cannot be rendered.");
68
- let s = n.cache.get(e);
69
- s || (s = D(n, e, r), n.cache.set(e, s));
70
- const t = await s;
71
- h(n.signal);
72
- let a = e.grid;
73
- if (a) {
74
- const d = new Set(i).add(e), c = [];
75
- for (const [g, o] of a.cells.entries()) {
76
- const u = [];
77
- for (const [m, f] of o.entries()) u.push(await M(n, f, r, [...r.componentPath, g, m], d));
78
- c.push(u);
79
- }
80
- c.some((g, o) => g.some((u, m) => u !== a.cells[o][m])) && (a = { ...a, cells: c });
81
- }
82
- return t !== e.imageData || a !== e.grid ? { ...e, imageData: t, grid: a } : e;
83
- }
84
- function k(n, e, r) {
85
- const i = /* @__PURE__ */ new Set(), s = (t) => {
86
- if (y(r), !i.has(t)) {
87
- if (i.add(t), t.imageData && /^data:image\/(png|jpe?g);base64,/i.test(t.imageData))
88
- try {
89
- e(t.imageData);
90
- } catch (a) {
91
- if (!(a instanceof w) || a.code === "image-budget-exceeded") throw a;
92
- }
93
- for (const a of t.grid?.cells ?? []) for (const d of a) for (const c of d?.children ?? []) s(c);
94
- }
95
- };
96
- for (const t of n.pages) for (const a of t.components) s(a);
97
- }
98
- async function C(n, e = {}) {
99
- const r = E(e), i = v(e);
100
- if (k(n, i, e.signal), e.signal?.aborted) throw e.signal.reason ?? new DOMException("The operation was aborted.", "AbortError");
101
- const s = new AbortController(), t = () => s.abort(e.signal?.reason);
102
- if (e.signal?.addEventListener("abort", t, { once: !0 }), !e.assetRenderers || !Object.keys(e.assetRenderers).length)
103
- return e.signal?.removeEventListener("abort", t), { plan: n, diagnostics: [] };
104
- const a = { options: e, signal: s.signal, diagnostics: [], rendered: 0, bytes: 0, budget: r, cache: /* @__PURE__ */ new WeakMap(), inspectImage: i }, d = setTimeout(() => O(a, s), r.maxDurationMs);
105
- try {
106
- const c = [];
107
- for (const [g, o] of n.pages.entries()) {
108
- if (g < (e.start ?? 0) || g > (e.end ?? n.pages.length - 1)) {
109
- c.push(o);
110
- continue;
111
- }
112
- const u = [];
113
- for (const [m, f] of o.components.entries()) u.push(await x(a, f, { component: f, pageIndex: g, componentIndex: m, componentPath: [] }, /* @__PURE__ */ new Set()));
114
- c.push(u.some((m, f) => m !== o.components[f]) ? { ...o, components: u } : o);
115
- }
116
- return h(a.signal), { plan: c.some((g, o) => g !== n.pages[o]) ? { ...n, pages: c } : n, diagnostics: a.diagnostics };
117
- } finally {
118
- clearTimeout(d), e.signal?.removeEventListener("abort", t);
119
- }
120
- }
121
- export {
122
- p as O,
123
- C as r
124
- };
@@ -1 +0,0 @@
1
- "use strict";const E=require("./grid-geometry-CZ_cYB6O.cjs"),O=require("./number-format-CZ2T_5kF.cjs");function F(e){return!e||typeof e!="object"?!1:[e.pageIndex,e.componentIndex,e.rowIndex,e.columnIndex].every(t=>Number.isInteger(t)&&t>=0)}function N(e,t,r){const n=e.grid;if(!n)return null;const o=n.cells[t];if(!o)return null;const u=E.resolveGridLayout(n,e.widthMm,e.heightMm).cells.filter(l=>l.ri===t).findIndex(l=>l.ci===r),s=o[u];return s?{cell:s,sourceColumnIndex:u}:null}function j(e){return e.value!==void 0?e.value:e.rawText??e.text??null}function k(e,t){return e.valueType?e.valueType:typeof t=="number"?"number":typeof t=="boolean"?"boolean":t===null&&e.numberFormat&&/[0#?]/.test(e.numberFormat)?"number":"text"}function z(e,t){if(e.derived)return"derived";if(e.editable===!1)return"cell";if(e.formula!==void 0)return"formula";if(e.children?.length)return"complex";if(t.table&&t.table.role!=="body"&&e.editable!==!0)return"structure"}function B(e,t){const r=e.table;if(r)return{id:r.id,rowIndex:r.rowIndex+t.rowIndex,role:r.role,columnKey:r.columnKeys[t.columnIndex]}}function G(e,t,r){if(e.derived)return;if(e.source)return{...e.source};const n=t.table?.source,o=t.table?.columnKeys[r.columnIndex];if(!(!n||n.rowKey===void 0||o===void 0))return{...n,rowKey:n.rowKey,field:o}}function $(e,t,r){const n=j(r),o=z(r,e);return{address:{...t},cell:r,component:e,value:n,valueType:k(r,n),table:B(e,t),source:G(r,e,t),editable:o===void 0,readOnlyReason:o}}function g(e,t){if(!F(t))return null;const r=e.pages[t.pageIndex]?.components[t.componentIndex];if(!r)return null;const n=N(r,t.rowIndex,t.columnIndex);return n?$(r,t,n.cell):null}function v(e){const t=new Map;return r=>{if(!F(r))return null;const n=e.pages[r.pageIndex]?.components[r.componentIndex];if(!n?.grid)return null;let o=t.get(n);if(!o){const u=new Map;o=new Map;for(const s of E.resolveGridLayout(n.grid,n.widthMm,n.heightMm).cells){const l=u.get(s.ri)??0;u.set(s.ri,l+1);const c=n.grid.cells[s.ri]?.[l];c&&o.set(`${s.ri}:${s.ci}`,c)}t.set(n,o)}const i=o.get(`${r.rowIndex}:${r.columnIndex}`);return i?$(n,r,i):null}}class a extends Error{constructor(t){super(`Invalid report cell edit: ${t}`),this.code=t,this.name="ReportCellEditError"}}function J(e,t){let r=e.trim();const n=t&&r.endsWith("%");if(n&&(r=r.slice(0,-1).trim()),/^[+-]?\d{1,3}(?:,\d{3})+(?:\.\d*)?(?:[eE][+-]?\d+)?$/.test(r)&&(r=r.replace(/,/g,"")),!/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/.test(r))throw new a("number");return Number(r)/(n?100:1)}function L(e,t){if(e===null||typeof e=="string"&&e.trim()==="")return null;if(typeof e!="string"&&typeof e!="number")throw new a("number");const r=typeof e=="number"?e:J(e,O.isExcelPercentageFormat(t.cell.numberFormat));if(!Number.isFinite(r)||Number.isInteger(r)&&!Number.isSafeInteger(r))throw new a("number");return r}function A(e){if(e===null||typeof e=="string"&&e.trim()==="")return null;if(typeof e=="boolean")return e;const t=String(e).trim().toLowerCase();if(["true","yes","是","1"].includes(t))return!0;if(["false","no","否","0"].includes(t))return!1;throw new a("boolean")}function R(e,t){return e.valueType==="number"?L(t,e):e.valueType==="boolean"?A(t):t===null?null:String(t)}function P(e,t){const r=t.cell.text,o=[["是","否"],["TRUE","FALSE"],["True","False"],["true","false"],["1","0"]].find(i=>i.includes(r??""));return o?o[e?0:1]:String(e)}function b(e,t){return t===null?"":typeof t=="boolean"?P(t,e):typeof t=="number"?O.formatExcelNumber(t,e.cell.numberFormat):String(t)}function U(e,t,r){const n=g(e,t);if(!n)throw new a("missing");return I(n,r)}function I(e,t){if(!e.editable)throw new a("readonly");const r=R(e,t);return{address:{...e.address},table:e.table,source:e.source,previousValue:e.value,previousText:e.cell.text??"",value:r,text:b(e,r)}}function W(e,t){const r=e.table,n=t.table;return!r||!n||r.columnKey===void 0?!1:r.id===n.id&&r.rowIndex===n.rowIndex&&r.role===n.role&&r.columnKey===n.columnKey}function V(e,t,r){const n=e.grid,{rowIndex:o,columnIndex:i}=t.address,u=N(e,o,i),s=[...n.cells],l=[...s[o]],c=b(t,r.value),f={...u.cell,value:r.value,text:c,rawText:c};return l[u.sourceColumnIndex]=f,s[o]=l,{...e,grid:{...n,cells:s}}}function q(e,t){const r=e.table?.columnKeys,n=t.table?.columnKey;return r&&n!==void 0?r.flatMap((o,i)=>o===n?[i]:[]):[]}function D(e,t,r,n,o,i){const u=t.table,s=o.table;if(!u||!s||u.id!==s.id||u.role!==s.role||!t.grid)return t;const l=s.rowIndex-u.rowIndex;if(l<0||l>=t.grid.cells.length)return t;let c=t;for(const f of q(t,o)){const d=g(e,{pageIndex:r,componentIndex:n,rowIndex:l,columnIndex:f});d?.editable&&W(o,d)&&(c=V(c,d,i))}return c}function H(e,t,r,n,o,i){const u=o.address;return o.table?.columnKey!==void 0?D(e,t,r,n,o,i):u.pageIndex===r&&u.componentIndex===n?V(t,o,i):t}function K(e,t){const r=t.source;if(!r)return!1;const n=e.source;return!n||["sourceScope","datasetId","rowKey","field","revision","sourceToken"].some(o=>!Object.is(n[o],r[o]))}function Q(e,t){const r=g(e,t.address);if(!r)throw new a("missing");if(!r.editable)throw new a("readonly");if(K(r,t))throw new a("conflict");if(!Object.is(r.value,t.previousValue)||(r.cell.text??"")!==t.previousText)throw new a("conflict");const n=R(r,t.value),o={...t,value:n,text:b(r,n)};if(Object.is(n,r.value)&&o.text===r.cell.text)return e;const i=e.pages.map((u,s)=>{const l=u.components.map((c,f)=>H(e,c,s,f,r,o));return l.every((c,f)=>c===u.components[f])?u:{...u,components:l}});return{...e,pages:i}}function X(e){return JSON.stringify([e.pageIndex,e.componentIndex,e.rowIndex,e.columnIndex])}function M(e){const t=e.table;return t?.columnKey!==void 0?JSON.stringify([t.id,t.role,t.rowIndex,t.columnKey]):X(e.address)}function Y(e,t){if(!t.length)return e;const r=new Map(t.map(l=>[M(l),l])),n=new Set(t.flatMap(l=>l.table?[l.table.id]:[])),o=new Set(t.map(l=>`${l.address.pageIndex}:${l.address.componentIndex}`)),i=v(e);function u(l,c,f){const d=l.grid;if(!d||!o.has(`${c}:${f}`)&&!n.has(l.table?.id??""))return l;const p=new Map,S=new Map;for(const m of E.resolveGridLayout(d,l.widthMm,l.heightMm).cells){const y=S.get(m.ri)??0;S.set(m.ri,y+1);const w=i({pageIndex:c,componentIndex:f,rowIndex:m.ri,columnIndex:m.ci}),x=w&&r.get(M(w));if(!x||!w.editable)continue;const T=p.get(m.ri)??[...d.cells[m.ri]],C=b(w,x.value);Object.is(w.value,x.value)&&C===w.cell.text||(T[y]={...m.cell,value:x.value,text:C,rawText:C},p.set(m.ri,T))}return p.size?{...l,grid:{...d,cells:d.cells.map((m,y)=>p.get(y)??m)}}:l}const s=e.pages.map((l,c)=>{const f=l.components.map((d,p)=>u(d,c,p));return f.every((d,p)=>d===l.components[p])?l:{...l,components:f}});return s.every((l,c)=>l===e.pages[c])?e:{...e,pages:s}}function h(e){const t=e.source;if(t)return JSON.stringify([t.sourceScope,t.datasetId,t.rowKey,t.field]);const r=e.table;if(r?.columnKey!==void 0)return JSON.stringify([r.id,r.role,r.rowIndex,r.columnKey]);const n=e.address;return JSON.stringify([n.pageIndex,n.componentIndex,n.rowIndex,n.columnIndex])}function Z(e,t,r){if(typeof r!="string"||!r.trim()||!Array.isArray(t))throw new a("missing");if(t.length>1e4)throw new a("limit");const n=new Set,o=v(e),i=t.map(({address:u,value:s})=>{const l=o(u);if(!l)throw new a("missing");const c=I(l,s),f=h(c);if(n.has(f))throw new a("duplicate");return n.add(f),c});return{requestId:r,edits:i}}function _(e,t){if(t.edits.length>1e4)throw new a("limit");const r=v(e),n=new Set,o=t.edits.map(i=>{const u=r(i.address);if(!u)throw new a("missing");const s=h(i);if(n.has(s))throw new a("duplicate");if(n.add(s),K(u,i)||!Object.is(u.value,i.previousValue)||(u.cell.text??"")!==i.previousText)throw new a("conflict");return I(u,i.value)});return Y(e,o)}function ee(e){const t=new Map;for(const r of e){const n=h(r),o=t.get(n),i=o?{...r,previousValue:o.previousValue,previousText:o.previousText}:{...r};Object.is(i.previousValue,i.value)?t.delete(n):t.set(n,i)}return[...t.values()]}exports.ReportCellEditError=a;exports.applyReportCellEdit=Q;exports.applyReportCellEditBatch=_;exports.createReportCellEdit=U;exports.createReportCellEditBatch=Z;exports.createReportCellResolver=v;exports.editFromContext=I;exports.formatReportCellEdit=b;exports.getReportCellContext=g;exports.parseReportCellInput=R;exports.reportCellEditKey=h;exports.sourceChanged=K;exports.summarizeReportCellEdits=ee;
@@ -1,273 +0,0 @@
1
- import { r as v } from "./grid-geometry-BNptEcMm.js";
2
- import { f as V, i as j } from "./number-format-BA_KwrZe.js";
3
- function R(e) {
4
- return !e || typeof e != "object" ? !1 : [e.pageIndex, e.componentIndex, e.rowIndex, e.columnIndex].every((t) => Number.isInteger(t) && t >= 0);
5
- }
6
- function M(e, t, r) {
7
- const n = e.grid;
8
- if (!n) return null;
9
- const o = n.cells[t];
10
- if (!o) return null;
11
- const u = v(n, e.widthMm, e.heightMm).cells.filter((i) => i.ri === t).findIndex((i) => i.ci === r), s = o[u];
12
- return s ? { cell: s, sourceColumnIndex: u } : null;
13
- }
14
- function k(e) {
15
- return e.value !== void 0 ? e.value : e.rawText ?? e.text ?? null;
16
- }
17
- function J(e, t) {
18
- return e.valueType ? e.valueType : typeof t == "number" ? "number" : typeof t == "boolean" ? "boolean" : t === null && e.numberFormat && /[0#?]/.test(e.numberFormat) ? "number" : "text";
19
- }
20
- function z(e, t) {
21
- if (e.derived) return "derived";
22
- if (e.editable === !1) return "cell";
23
- if (e.formula !== void 0) return "formula";
24
- if (e.children?.length) return "complex";
25
- if (t.table && t.table.role !== "body" && e.editable !== !0) return "structure";
26
- }
27
- function A(e, t) {
28
- const r = e.table;
29
- if (r)
30
- return {
31
- id: r.id,
32
- rowIndex: r.rowIndex + t.rowIndex,
33
- role: r.role,
34
- columnKey: r.columnKeys[t.columnIndex]
35
- };
36
- }
37
- function B(e, t, r) {
38
- if (e.derived) return;
39
- if (e.source) return { ...e.source };
40
- const n = t.table?.source, o = t.table?.columnKeys[r.columnIndex];
41
- if (!(!n || n.rowKey === void 0 || o === void 0))
42
- return { ...n, rowKey: n.rowKey, field: o };
43
- }
44
- function O(e, t, r) {
45
- const n = k(r), o = z(r, e);
46
- return {
47
- address: { ...t },
48
- cell: r,
49
- component: e,
50
- value: n,
51
- valueType: J(r, n),
52
- table: A(e, t),
53
- source: B(r, e, t),
54
- editable: o === void 0,
55
- readOnlyReason: o
56
- };
57
- }
58
- function I(e, t) {
59
- if (!R(t)) return null;
60
- const r = e.pages[t.pageIndex]?.components[t.componentIndex];
61
- if (!r) return null;
62
- const n = M(r, t.rowIndex, t.columnIndex);
63
- return n ? O(r, t, n.cell) : null;
64
- }
65
- function h(e) {
66
- const t = /* @__PURE__ */ new Map();
67
- return (r) => {
68
- if (!R(r)) return null;
69
- const n = e.pages[r.pageIndex]?.components[r.componentIndex];
70
- if (!n?.grid) return null;
71
- let o = t.get(n);
72
- if (!o) {
73
- const u = /* @__PURE__ */ new Map();
74
- o = /* @__PURE__ */ new Map();
75
- for (const s of v(n.grid, n.widthMm, n.heightMm).cells) {
76
- const i = u.get(s.ri) ?? 0;
77
- u.set(s.ri, i + 1);
78
- const c = n.grid.cells[s.ri]?.[i];
79
- c && o.set(`${s.ri}:${s.ci}`, c);
80
- }
81
- t.set(n, o);
82
- }
83
- const l = o.get(`${r.rowIndex}:${r.columnIndex}`);
84
- return l ? O(n, r, l) : null;
85
- };
86
- }
87
- class a extends Error {
88
- constructor(t) {
89
- super(`Invalid report cell edit: ${t}`), this.code = t, this.name = "ReportCellEditError";
90
- }
91
- }
92
- function L(e, t) {
93
- let r = e.trim();
94
- const n = t && r.endsWith("%");
95
- if (n && (r = r.slice(0, -1).trim()), /^[+-]?\d{1,3}(?:,\d{3})+(?:\.\d*)?(?:[eE][+-]?\d+)?$/.test(r) && (r = r.replace(/,/g, "")), !/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/.test(r)) throw new a("number");
96
- return Number(r) / (n ? 100 : 1);
97
- }
98
- function G(e, t) {
99
- if (e === null || typeof e == "string" && e.trim() === "") return null;
100
- if (typeof e != "string" && typeof e != "number") throw new a("number");
101
- const r = typeof e == "number" ? e : L(e, j(t.cell.numberFormat));
102
- if (!Number.isFinite(r) || Number.isInteger(r) && !Number.isSafeInteger(r)) throw new a("number");
103
- return r;
104
- }
105
- function P(e) {
106
- if (e === null || typeof e == "string" && e.trim() === "") return null;
107
- if (typeof e == "boolean") return e;
108
- const t = String(e).trim().toLowerCase();
109
- if (["true", "yes", "是", "1"].includes(t)) return !0;
110
- if (["false", "no", "否", "0"].includes(t)) return !1;
111
- throw new a("boolean");
112
- }
113
- function N(e, t) {
114
- return e.valueType === "number" ? G(t, e) : e.valueType === "boolean" ? P(t) : t === null ? null : String(t);
115
- }
116
- function U(e, t) {
117
- const r = t.cell.text, o = [["是", "否"], ["TRUE", "FALSE"], ["True", "False"], ["true", "false"], ["1", "0"]].find((l) => l.includes(r ?? ""));
118
- return o ? o[e ? 0 : 1] : String(e);
119
- }
120
- function x(e, t) {
121
- return t === null ? "" : typeof t == "boolean" ? U(t, e) : typeof t == "number" ? V(t, e.cell.numberFormat) : String(t);
122
- }
123
- function q(e, t, r) {
124
- const n = I(e, t);
125
- if (!n) throw new a("missing");
126
- return C(n, r);
127
- }
128
- function C(e, t) {
129
- if (!e.editable) throw new a("readonly");
130
- const r = N(e, t);
131
- return {
132
- address: { ...e.address },
133
- table: e.table,
134
- source: e.source,
135
- previousValue: e.value,
136
- previousText: e.cell.text ?? "",
137
- value: r,
138
- text: x(e, r)
139
- };
140
- }
141
- function W(e, t) {
142
- const r = e.table, n = t.table;
143
- return !r || !n || r.columnKey === void 0 ? !1 : r.id === n.id && r.rowIndex === n.rowIndex && r.role === n.role && r.columnKey === n.columnKey;
144
- }
145
- function $(e, t, r) {
146
- const n = e.grid, { rowIndex: o, columnIndex: l } = t.address, u = M(e, o, l), s = [...n.cells], i = [...s[o]], c = x(t, r.value), f = { ...u.cell, value: r.value, text: c, rawText: c };
147
- return i[u.sourceColumnIndex] = f, s[o] = i, { ...e, grid: { ...n, cells: s } };
148
- }
149
- function D(e, t) {
150
- const r = e.table?.columnKeys, n = t.table?.columnKey;
151
- return r && n !== void 0 ? r.flatMap((o, l) => o === n ? [l] : []) : [];
152
- }
153
- function H(e, t, r, n, o, l) {
154
- const u = t.table, s = o.table;
155
- if (!u || !s || u.id !== s.id || u.role !== s.role || !t.grid) return t;
156
- const i = s.rowIndex - u.rowIndex;
157
- if (i < 0 || i >= t.grid.cells.length) return t;
158
- let c = t;
159
- for (const f of D(t, o)) {
160
- const d = I(e, { pageIndex: r, componentIndex: n, rowIndex: i, columnIndex: f });
161
- d?.editable && W(o, d) && (c = $(c, d, l));
162
- }
163
- return c;
164
- }
165
- function Q(e, t, r, n, o, l) {
166
- const u = o.address;
167
- return o.table?.columnKey !== void 0 ? H(e, t, r, n, o, l) : u.pageIndex === r && u.componentIndex === n ? $(t, o, l) : t;
168
- }
169
- function F(e, t) {
170
- const r = t.source;
171
- if (!r) return !1;
172
- const n = e.source;
173
- return !n || ["sourceScope", "datasetId", "rowKey", "field", "revision", "sourceToken"].some((o) => !Object.is(n[o], r[o]));
174
- }
175
- function ee(e, t) {
176
- const r = I(e, t.address);
177
- if (!r) throw new a("missing");
178
- if (!r.editable) throw new a("readonly");
179
- if (F(r, t)) throw new a("conflict");
180
- if (!Object.is(r.value, t.previousValue) || (r.cell.text ?? "") !== t.previousText) throw new a("conflict");
181
- const n = N(r, t.value), o = { ...t, value: n, text: x(r, n) };
182
- if (Object.is(n, r.value) && o.text === r.cell.text) return e;
183
- const l = e.pages.map((u, s) => {
184
- const i = u.components.map((c, f) => Q(e, c, s, f, r, o));
185
- return i.every((c, f) => c === u.components[f]) ? u : { ...u, components: i };
186
- });
187
- return { ...e, pages: l };
188
- }
189
- function X(e) {
190
- return JSON.stringify([e.pageIndex, e.componentIndex, e.rowIndex, e.columnIndex]);
191
- }
192
- function T(e) {
193
- const t = e.table;
194
- return t?.columnKey !== void 0 ? JSON.stringify([t.id, t.role, t.rowIndex, t.columnKey]) : X(e.address);
195
- }
196
- function Y(e, t) {
197
- if (!t.length) return e;
198
- const r = new Map(t.map((i) => [T(i), i])), n = new Set(t.flatMap((i) => i.table ? [i.table.id] : [])), o = new Set(t.map((i) => `${i.address.pageIndex}:${i.address.componentIndex}`)), l = h(e);
199
- function u(i, c, f) {
200
- const d = i.grid;
201
- if (!d || !o.has(`${c}:${f}`) && !n.has(i.table?.id ?? "")) return i;
202
- const w = /* @__PURE__ */ new Map(), E = /* @__PURE__ */ new Map();
203
- for (const m of v(d, i.widthMm, i.heightMm).cells) {
204
- const y = E.get(m.ri) ?? 0;
205
- E.set(m.ri, y + 1);
206
- const b = l({ pageIndex: c, componentIndex: f, rowIndex: m.ri, columnIndex: m.ci }), p = b && r.get(T(b));
207
- if (!p || !b.editable) continue;
208
- const S = w.get(m.ri) ?? [...d.cells[m.ri]], g = x(b, p.value);
209
- Object.is(b.value, p.value) && g === b.cell.text || (S[y] = { ...m.cell, value: p.value, text: g, rawText: g }, w.set(m.ri, S));
210
- }
211
- return w.size ? { ...i, grid: { ...d, cells: d.cells.map((m, y) => w.get(y) ?? m) } } : i;
212
- }
213
- const s = e.pages.map((i, c) => {
214
- const f = i.components.map((d, w) => u(d, c, w));
215
- return f.every((d, w) => d === i.components[w]) ? i : { ...i, components: f };
216
- });
217
- return s.every((i, c) => i === e.pages[c]) ? e : { ...e, pages: s };
218
- }
219
- function K(e) {
220
- const t = e.source;
221
- if (t) return JSON.stringify([t.sourceScope, t.datasetId, t.rowKey, t.field]);
222
- const r = e.table;
223
- if (r?.columnKey !== void 0) return JSON.stringify([r.id, r.role, r.rowIndex, r.columnKey]);
224
- const n = e.address;
225
- return JSON.stringify([n.pageIndex, n.componentIndex, n.rowIndex, n.columnIndex]);
226
- }
227
- function te(e, t, r) {
228
- if (typeof r != "string" || !r.trim() || !Array.isArray(t)) throw new a("missing");
229
- if (t.length > 1e4) throw new a("limit");
230
- const n = /* @__PURE__ */ new Set(), o = h(e), l = t.map(({ address: u, value: s }) => {
231
- const i = o(u);
232
- if (!i) throw new a("missing");
233
- const c = C(i, s), f = K(c);
234
- if (n.has(f)) throw new a("duplicate");
235
- return n.add(f), c;
236
- });
237
- return { requestId: r, edits: l };
238
- }
239
- function re(e, t) {
240
- if (t.edits.length > 1e4) throw new a("limit");
241
- const r = h(e), n = /* @__PURE__ */ new Set(), o = t.edits.map((l) => {
242
- const u = r(l.address);
243
- if (!u) throw new a("missing");
244
- const s = K(l);
245
- if (n.has(s)) throw new a("duplicate");
246
- if (n.add(s), F(u, l) || !Object.is(u.value, l.previousValue) || (u.cell.text ?? "") !== l.previousText) throw new a("conflict");
247
- return C(u, l.value);
248
- });
249
- return Y(e, o);
250
- }
251
- function ne(e) {
252
- const t = /* @__PURE__ */ new Map();
253
- for (const r of e) {
254
- const n = K(r), o = t.get(n), l = o ? { ...r, previousValue: o.previousValue, previousText: o.previousText } : { ...r };
255
- Object.is(l.previousValue, l.value) ? t.delete(n) : t.set(n, l);
256
- }
257
- return [...t.values()];
258
- }
259
- export {
260
- a as R,
261
- ee as a,
262
- re as b,
263
- q as c,
264
- te as d,
265
- h as e,
266
- x as f,
267
- I as g,
268
- C as h,
269
- F as i,
270
- N as p,
271
- K as r,
272
- ne as s
273
- };
@@ -1 +0,0 @@
1
- "use strict";const l=require("./progress-B0ctFpKf.cjs"),v=require("./render-plan-7xpGrCEl.cjs");function O(t,e){l.assertOutputActive(e.signal),l.observeOutput(()=>e.onDiagnostic?.(t)),l.assertOutputActive(e.signal)}class k extends Error{constructor(e){super(`Output contains ${e.length} known fidelity issue(s): ${e[0]?.code}`),this.diagnostics=e,this.code="output-fidelity",this.name="OutputFidelityError"}}const x=new Set(["text","rect","line","ellipse"]),$=new Set(["image","chart","barcode","qrcode"]);function C(t,e){if(!t.grid){if(v.isImageBackedComponent(t))return(e==="pdf"||e==="xlsx")&&!/^data:image\/(png|jpe?g);base64,/i.test(t.imageData)?{code:"unsupported-image-format",message:`${e.toUpperCase()} accepts PNG or JPEG data URLs; convert this image before exporting.`}:void 0;if($.has(t.kind))return{code:"missing-image",message:`${t.kind} requires imageData or a renderer adapter before output.`};if(!x.has(t.kind))return{code:"unsupported-component",message:`Unsupported component kind: ${t.kind}.`};if(e==="xlsx"&&t.kind!=="text")return{code:"unsupported-component",message:`XLSX data export omits ${t.kind} geometry.`}}}function u(t,e,s,i,r){return{...r,severity:"warning",format:e,pageIndex:s,componentIndex:i,kind:t.kind,nid:t.nid}}function c(t,e){if(!t||e==="dom")return;const s=[];return t.rotateDeg&&s.push("rotateDeg"),t.opacity!==void 0&&t.opacity!==1&&s.push("opacity"),e!=="xlsx"&&t.align==="justify"&&s.push("justify"),e==="canvas"&&t.underline&&s.push("underline"),e==="xlsx"&&t.letterSpacing&&s.push("letterSpacing"),s.length?`${e} does not preserve these styles: ${s.join(", ")}.`:void 0}function M(t,e,s,i,r){for(const n of t.richParagraphs??[]){e==="xlsx"&&(n.spaceBeforeMm||n.spaceAfterMm||n.indentMm||n.align||n.lineHeight)&&r.push(u(t,e,s,i,{code:"unsupported-style",message:"XLSX rich text preserves fonts and paragraph newlines; paragraph spacing, indentation and alignment are not retained."}));const a=c({align:n.align},e);a&&r.push(u(t,e,s,i,{code:"unsupported-style",message:a}));for(const d of n.segments){const o=c(d.style,e)??(e!=="dom"&&d.style?.backgroundColor?"Inline background colors are not preserved in this output.":void 0);o&&r.push(u(t,e,s,i,{code:"unsupported-style",message:o}))}}}function D(t,e,s,i,r,n,a){if(a.has(t))return;const d=new Set(a).add(t),o=C(t,e);o&&n.push({...u(t,e,s,i,o),componentPath:r});const f=c(t.style,e);f&&n.push({...u(t,e,s,i,{code:"unsupported-style",message:f}),componentPath:r}),v.isRichText(t)&&e==="canvas"&&n.push(u(t,e,s,i,{code:"rich-text-flattened",message:"Rich text is exported as plain text; inline styles are not preserved."})),M(t,e,s,i,n);for(const[p,w]of(t.grid?.cells??[]).entries())for(const[g,h]of w.entries()){const y=c(h?.style,e);if(y&&n.push({...u(t,e,s,i,{code:"unsupported-style",message:y}),componentPath:[...r,p,g]}),h?.children?.length&&e!=="dom")n.push({...u(t,e,s,i,{code:"nested-components-omitted",message:"Nested grid components are omitted; cell text is preserved."}),componentPath:[...r,p,g]});else if(e==="dom")for(const[E,b]of(h?.children??[]).entries())D(b,e,s,i,[...r,p,g,E],n,d)}}function S(t,e){const s=[];return t.pages.forEach((i,r)=>i.components.forEach((n,a)=>D(n,e,r,a,[],s,new Set))),s}function A(t,e,s){l.assertOutputActive(s.signal);const i=S(t,e);if(i.forEach(r=>O(r,s)),s.fidelity==="strict"&&i.length)throw new k(i);return i}exports.OutputFidelityError=k;exports.inspectOutputCapabilities=S;exports.notifyOutputDiagnostic=O;exports.reportOutputDiagnostics=A;