@agile-team/mach-report 2.13.0 → 2.15.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 (260) hide show
  1. package/README.md +20 -7
  2. package/THIRD_PARTY_NOTICES.md +3 -1
  3. package/dist/ExcelBindingWizard-BKH1nGNS.js +1485 -0
  4. package/dist/ExcelBindingWizard-Bs43BGNp.cjs +1 -0
  5. package/dist/ParamEditor-Da4akw6V.cjs +1 -0
  6. package/dist/ParamEditor-DoAhzJsm.js +594 -0
  7. package/dist/{ReportBatchPanel-CW2HV9I8.js → ReportBatchPanel-BMf6boMA.js} +39 -39
  8. package/dist/ReportBatchPanel-wP9m9Pj1.cjs +1 -0
  9. package/dist/ReportPreview-ChV19HBp.js +4619 -0
  10. package/dist/ReportPreview-DbLvvOUT.cjs +6 -0
  11. package/dist/{ReportTemplateLibrary-BZB-XWjj.js → ReportTemplateLibrary-C9wutIiT.js} +1 -1
  12. package/dist/ReportTemplateLibrary-Sxr3eD0J.cjs +1 -0
  13. package/dist/RuleEditor-C_Clasvd.js +2037 -0
  14. package/dist/RuleEditor-XhGHK8DE.cjs +1 -0
  15. package/dist/TemplateOutlinePanel-D6Bkny59.js +96 -0
  16. package/dist/TemplateOutlinePanel-JTSR53vJ.cjs +1 -0
  17. package/dist/TemplateReusePanel-Kx35S0Ql.cjs +1 -0
  18. package/dist/TemplateReusePanel-rVuK1kTz.js +388 -0
  19. package/dist/TemplateReviewPanel-B0ar9_zf.js +592 -0
  20. package/dist/TemplateReviewPanel-Dn6X9UmY.cjs +1 -0
  21. package/dist/analytics.cjs +1 -1
  22. package/dist/analytics.d.cts +3 -1
  23. package/dist/analytics.d.ts +3 -1
  24. package/dist/analytics.js +154 -60
  25. package/dist/artifact-integrity.json +135 -0
  26. package/dist/assets-B9ImAi6_.cjs +1 -0
  27. package/dist/assets-DEaz4qsp.js +124 -0
  28. package/dist/batch-BaP6pWDE.cjs +1 -0
  29. package/dist/batch-BfZHN1do.js +220 -0
  30. package/dist/batch-CGyt-b2W.js +273 -0
  31. package/dist/batch-CLpELXBl.cjs +1 -0
  32. package/dist/capabilities-CAh2Nrue.cjs +1 -0
  33. package/dist/capabilities-DskCHs3V.js +69 -0
  34. package/dist/codes.d.cts +2 -0
  35. package/dist/codes.d.ts +2 -0
  36. package/dist/{computed-Bvk0W15F.js → computed-C-4C2S5h.js} +3 -3
  37. package/dist/config-BVsJXSqS.js +842 -0
  38. package/dist/config-D10us76d.cjs +1 -0
  39. package/dist/data-explanation-B8MZRYVS.js +16 -0
  40. package/dist/data-explanation-DE55G30w.cjs +1 -0
  41. package/dist/designer-2bDlcNXQ.js +5136 -0
  42. package/dist/designer-BT7XCdbW.cjs +2 -0
  43. package/dist/designer.cjs +1 -2
  44. package/dist/designer.d.cts +432 -17
  45. package/dist/designer.d.ts +432 -17
  46. package/dist/designer.js +21 -4312
  47. package/dist/drill-ByJviLXS.js +145 -0
  48. package/dist/drill-DYTxuL3A.cjs +1 -0
  49. package/dist/font-loader-B_UkxpzC.cjs +1 -0
  50. package/dist/font-loader-Q3bQjmrI.js +297 -0
  51. package/dist/index.cjs +8 -8
  52. package/dist/index.d.cts +239 -5
  53. package/dist/index.d.ts +239 -5
  54. package/dist/index.js +939 -893
  55. package/dist/json-snapshot-DFb2eWkf.js +1416 -0
  56. package/dist/json-snapshot-WWSGlaHG.cjs +2 -0
  57. package/dist/licenses/_bwip-js_generic-4.11.4.txt +24 -0
  58. package/dist/licenses/_fast-csv_format-4.3.5.txt +22 -0
  59. package/dist/licenses/_fast-csv_parse-4.3.6.txt +22 -0
  60. package/dist/licenses/_pdf-lib_fontkit-1.1.1.txt +326 -0
  61. package/dist/licenses/_pdf-lib_standard-fonts-1.0.0.txt +22 -0
  62. package/dist/licenses/_pdf-lib_upng-1.0.1.txt +22 -0
  63. package/dist/licenses/_types_node-14.18.63.txt +22 -0
  64. package/dist/licenses/_types_pako-2.0.3.txt +22 -0
  65. package/dist/licenses/_types_pegjs-0.10.6.txt +22 -0
  66. package/dist/licenses/archiver-5.3.2.txt +23 -0
  67. package/dist/licenses/archiver-utils-2.1.0.txt +23 -0
  68. package/dist/licenses/archiver-utils-3.0.4.txt +23 -0
  69. package/dist/licenses/async-3.2.6.txt +20 -0
  70. package/dist/licenses/balanced-match-1.0.2.txt +22 -0
  71. package/dist/licenses/base64-js-1.5.1.txt +22 -0
  72. package/dist/licenses/big-integer-1.6.52.txt +25 -0
  73. package/dist/licenses/binary-0.3.0.txt +178 -0
  74. package/dist/licenses/bl-4.1.0.txt +14 -0
  75. package/dist/licenses/bluebird-3.4.7.txt +22 -0
  76. package/dist/licenses/brace-expansion-1.1.21.txt +22 -0
  77. package/dist/licenses/brace-expansion-2.1.7.txt +22 -0
  78. package/dist/licenses/buffer-5.7.1.txt +22 -0
  79. package/dist/licenses/buffer-crc32-0.2.13.txt +20 -0
  80. package/dist/licenses/buffer-indexof-polyfill-1.0.2.txt +23 -0
  81. package/dist/licenses/buffers-0.1.1.txt +140 -0
  82. package/dist/licenses/chainsaw-0.1.0.txt +184 -0
  83. package/dist/licenses/compress-commons-4.1.2.txt +23 -0
  84. package/dist/licenses/concat-map-0.0.1.txt +19 -0
  85. package/dist/licenses/core-util-is-1.0.3.txt +20 -0
  86. package/dist/licenses/crc-32-1.2.2.txt +202 -0
  87. package/dist/licenses/crc32-stream-4.0.3.txt +23 -0
  88. package/dist/licenses/dayjs-1.11.23.txt +22 -0
  89. package/dist/licenses/duplexer2-0.1.4.txt +27 -0
  90. package/dist/licenses/end-of-stream-1.4.5.txt +22 -0
  91. package/dist/licenses/exceljs-4.4.0.txt +23 -0
  92. package/dist/licenses/fast-csv-4.3.6.txt +22 -0
  93. package/dist/licenses/fast-png-6.4.0.txt +22 -0
  94. package/dist/licenses/fs-constants-1.0.0.txt +22 -0
  95. package/dist/licenses/fs.realpath-1.0.0.txt +44 -0
  96. package/dist/licenses/fstream-1.0.12.txt +16 -0
  97. package/dist/licenses/glob-7.2.3.txt +22 -0
  98. package/dist/licenses/graceful-fs-4.2.11.txt +16 -0
  99. package/dist/licenses/ieee754-1.2.1.txt +12 -0
  100. package/dist/licenses/immediate-3.0.6.txt +21 -0
  101. package/dist/licenses/inflight-1.0.6.txt +16 -0
  102. package/dist/licenses/inherits-2.0.4.txt +17 -0
  103. package/dist/licenses/iobuffer-5.4.0.txt +23 -0
  104. package/dist/licenses/isarray-1.0.0.txt +61 -0
  105. package/dist/licenses/jszip-3.10.2.txt +652 -0
  106. package/dist/licenses/lazystream-1.0.1.txt +24 -0
  107. package/dist/licenses/lie-3.3.0.txt +8 -0
  108. package/dist/licenses/listenercount-1.0.1.txt +6 -0
  109. package/dist/licenses/lodash.defaults-4.2.0.txt +48 -0
  110. package/dist/licenses/lodash.difference-4.5.0.txt +48 -0
  111. package/dist/licenses/lodash.escaperegexp-4.1.2.txt +48 -0
  112. package/dist/licenses/lodash.flatten-4.4.0.txt +48 -0
  113. package/dist/licenses/lodash.groupby-4.6.0.txt +48 -0
  114. package/dist/licenses/lodash.isboolean-3.0.3.txt +23 -0
  115. package/dist/licenses/lodash.isequal-4.5.0.txt +48 -0
  116. package/dist/licenses/lodash.isfunction-3.0.9.txt +48 -0
  117. package/dist/licenses/lodash.isnil-4.0.0.txt +23 -0
  118. package/dist/licenses/lodash.isplainobject-4.0.6.txt +48 -0
  119. package/dist/licenses/lodash.isundefined-3.0.1.txt +23 -0
  120. package/dist/licenses/lodash.union-4.6.0.txt +48 -0
  121. package/dist/licenses/lodash.uniq-4.5.0.txt +48 -0
  122. package/dist/licenses/minimatch-3.1.5.txt +16 -0
  123. package/dist/licenses/minimatch-5.1.9.txt +16 -0
  124. package/dist/licenses/minimist-1.2.8.txt +19 -0
  125. package/dist/licenses/mkdirp-0.5.6.txt +22 -0
  126. package/dist/licenses/node-sql-parser-5.4.0.txt +202 -0
  127. package/dist/licenses/normalize-path-3.0.0.txt +22 -0
  128. package/dist/licenses/once-1.4.0.txt +16 -0
  129. package/dist/licenses/pako-1.0.11.txt +22 -0
  130. package/dist/licenses/pako-2.2.0.txt +22 -0
  131. package/dist/licenses/path-is-absolute-1.0.1.txt +22 -0
  132. package/dist/licenses/pdf-lib-1.17.1.txt +22 -0
  133. package/dist/licenses/process-nextick-args-2.0.1.txt +20 -0
  134. package/dist/licenses/readable-stream-2.3.8.txt +48 -0
  135. package/dist/licenses/readable-stream-3.6.2.txt +48 -0
  136. package/dist/licenses/readdir-glob-1.1.3.txt +202 -0
  137. package/dist/licenses/rimraf-2.7.1.txt +16 -0
  138. package/dist/licenses/safe-buffer-5.1.2.txt +22 -0
  139. package/dist/licenses/safe-buffer-5.2.1.txt +22 -0
  140. package/dist/licenses/saxes-5.0.1.txt +397 -0
  141. package/dist/licenses/setimmediate-1.0.5.txt +21 -0
  142. package/dist/licenses/string_decoder-1.1.1.txt +49 -0
  143. package/dist/licenses/string_decoder-1.3.0.txt +49 -0
  144. package/dist/licenses/tar-stream-2.2.0.txt +22 -0
  145. package/dist/licenses/tmp-0.2.7.txt +22 -0
  146. package/dist/licenses/traverse-0.3.9.txt +25 -0
  147. package/dist/licenses/tslib-1.14.1.txt +13 -0
  148. package/dist/licenses/unzipper-0.10.14.txt +26 -0
  149. package/dist/licenses/util-deprecate-1.0.2.txt +25 -0
  150. package/dist/licenses/uuid-11.1.1.txt +10 -0
  151. package/dist/licenses/wrappy-1.0.2.txt +16 -0
  152. package/dist/licenses/xmlchars-2.2.0.txt +19 -0
  153. package/dist/licenses/zip-stream-4.1.1.txt +23 -0
  154. package/dist/matrix-CGRGkn5s.js +112 -0
  155. package/dist/matrix-gEO7ZM_u.cjs +1 -0
  156. package/dist/media-B7vnpD8k.cjs +1 -0
  157. package/dist/media-Y90dHK9z.js +70 -0
  158. package/dist/param-validation-C3HlcLLO.cjs +1 -0
  159. package/dist/param-validation-Do7Eg8Zv.js +181 -0
  160. package/dist/pdf-BwNyeGpt.js +36352 -0
  161. package/dist/pdf-CvvrjPQg.cjs +103 -0
  162. package/dist/pdf.cjs +1 -101
  163. package/dist/pdf.d.cts +18 -3
  164. package/dist/pdf.d.ts +18 -3
  165. package/dist/pdf.js +9 -36579
  166. package/dist/plugin-Ca_XZG3l.js +22 -0
  167. package/dist/{plugin-DzS6pxTA.cjs → plugin-DHO7X8z2.cjs} +1 -1
  168. package/dist/prepared-CFy9B75C.cjs +1 -0
  169. package/dist/prepared-ajM-H-9B.js +69 -0
  170. package/dist/progress-B0ctFpKf.cjs +1 -0
  171. package/dist/progress-D-OTpEav.js +52 -0
  172. package/dist/{record-bindings-D-5jQlTj.js → record-bindings-Do_b3h4V.js} +1 -1
  173. package/dist/{region-binding-workflow-CcUq8W2Q.js → region-binding-workflow-BMhK_TjP.js} +1 -1
  174. package/dist/{region-binding-workflow-BzfbxRiR.cjs → region-binding-workflow-DIYJdCUr.cjs} +1 -1
  175. package/dist/{report-params-B44imUd4.js → report-params-B1RzkhJj.js} +1 -1
  176. package/dist/{report-params-SJfhKgaX.cjs → report-params-WDGrA4oP.cjs} +1 -1
  177. package/dist/sbom.cdx.json +3982 -0
  178. package/dist/server/node.d.cts +66 -12
  179. package/dist/server/node.d.ts +66 -12
  180. package/dist/server-node.cjs +1 -1
  181. package/dist/server-node.js +405 -381
  182. package/dist/server.cjs +1 -1
  183. package/dist/server.d.cts +878 -15
  184. package/dist/server.d.ts +878 -15
  185. package/dist/server.js +1034 -534
  186. package/dist/sha256-ArEYjaTI.cjs +1 -0
  187. package/dist/sha256-DPEuJ3nh.js +155 -0
  188. package/dist/style.css +1 -1
  189. package/dist/template-bindings-C2SpvsMU.js +58 -0
  190. package/dist/template-bindings-CEtWyiLX.cjs +1 -0
  191. package/dist/template-catalog-FJE_c9Qe.cjs +1 -0
  192. package/dist/template-catalog-j2B1MJlL.js +414 -0
  193. package/dist/template-fragments-BGbQLGlV.js +187 -0
  194. package/dist/template-fragments-DcKeiylI.cjs +1 -0
  195. package/dist/template-outline-BwRV_eRo.cjs +1 -0
  196. package/dist/template-outline-cnWfT_LK.js +88 -0
  197. package/dist/{template-registry-BjE1VS6g.js → template-registry-BtaKPELV.js} +364 -201
  198. package/dist/template-registry-Co1zPq5e.cjs +1 -0
  199. package/dist/textwrap-CWHyzkBH.cjs +4 -0
  200. package/dist/textwrap-DE1kgcJB.js +110 -0
  201. package/dist/{tree-CqcQ99NM.js → tree-CjVZLRw7.js} +1 -1
  202. package/dist/{useLocalDraft-C07SYRnC.js → useLocalDraft-BnhcxXk_.js} +1 -1
  203. package/dist/{useLocalDraft-Yiw1wFgI.cjs → useLocalDraft-CioIfDb6.cjs} +1 -1
  204. package/dist/vue/async.d.cts +190 -15
  205. package/dist/vue/async.d.ts +190 -15
  206. package/dist/vue/index.d.cts +274 -24
  207. package/dist/vue/index.d.ts +274 -24
  208. package/dist/vue-async.cjs +1 -1
  209. package/dist/vue-async.js +5 -5
  210. package/dist/vue.cjs +1 -1
  211. package/dist/vue.js +90 -81
  212. package/dist/{workbook-session-DNa2RHNG.cjs → workbook-session-Bjv1YCRK.cjs} +18 -18
  213. package/dist/{workbook-session-BPb3TMnT.js → workbook-session-BvToI-Fd.js} +5440 -5288
  214. package/dist/worker.cjs +1 -1
  215. package/dist/worker.d.cts +66 -12
  216. package/dist/worker.d.ts +66 -12
  217. package/dist/worker.js +61 -56
  218. package/dist/xlsx-node.cjs +34 -34
  219. package/dist/xlsx-node.js +878 -870
  220. package/dist/xlsx.cjs +3 -4
  221. package/dist/xlsx.d.cts +22 -10
  222. package/dist/xlsx.d.ts +22 -10
  223. package/dist/xlsx.js +261 -253
  224. package/package.json +2 -2
  225. package/dist/ExcelBindingWizard-CeAf4QSE.js +0 -1465
  226. package/dist/ExcelBindingWizard-y0mT-AHR.cjs +0 -1
  227. package/dist/ParamEditor-BLaE5q5W.js +0 -522
  228. package/dist/ParamEditor-MBBC7lUE.cjs +0 -1
  229. package/dist/ReportBatchPanel-Fp1ePFag.cjs +0 -1
  230. package/dist/ReportPreview-BN6fk7Wz.cjs +0 -6
  231. package/dist/ReportPreview-D2Jkyh1U.js +0 -4243
  232. package/dist/ReportTemplateLibrary-5fk5CQBO.cjs +0 -1
  233. package/dist/RuleEditor-ChRzNQuF.cjs +0 -1
  234. package/dist/RuleEditor-DzAmW5YH.js +0 -2024
  235. package/dist/TemplateReviewPanel-BKofGrV9.js +0 -222
  236. package/dist/TemplateReviewPanel-DwtOcLue.cjs +0 -1
  237. package/dist/assets-C2U-e-Sz.cjs +0 -4
  238. package/dist/assets-Q0wUwNrV.js +0 -217
  239. package/dist/batch-Bt3Fd27Z.cjs +0 -1
  240. package/dist/batch-mRqhhhjt.js +0 -364
  241. package/dist/capabilities-CK_7hizc.js +0 -63
  242. package/dist/capabilities-CsZ-pNHR.cjs +0 -1
  243. package/dist/config-Bb7RiIO5.cjs +0 -1
  244. package/dist/config-XVwG87IA.js +0 -529
  245. package/dist/matrix-DVyWiYsd.cjs +0 -1
  246. package/dist/matrix-yZsGnldA.js +0 -227
  247. package/dist/page-window-index-CIuT4BAv.js +0 -43
  248. package/dist/page-window-index-DEjnM6IB.cjs +0 -1
  249. package/dist/param-validation-BlHHXs6u.js +0 -153
  250. package/dist/param-validation-DCK039V1.cjs +0 -1
  251. package/dist/plugin-D4wizDXB.js +0 -22
  252. package/dist/progress-7OSZbFok.js +0 -39
  253. package/dist/progress-BnLiS5eH.cjs +0 -1
  254. package/dist/task-events-DQ276fn2.cjs +0 -1
  255. package/dist/task-events-Dpsvf_t2.js +0 -47
  256. package/dist/template-registry-D3SjENi6.cjs +0 -1
  257. package/dist/template-review-DGwWOoCv.cjs +0 -2
  258. package/dist/template-review-PgEe_Wr9.js +0 -1742
  259. package/dist/validate-BJ5HIWY8.cjs +0 -1
  260. package/dist/validate-DbgEM1Hh.js +0 -163
@@ -9,6 +9,14 @@ import { InjectionKey } from 'vue';
9
9
  import { PropType } from 'vue';
10
10
  import { Ref } from 'vue';
11
11
  declare const __VLS_component: DefineComponent<ExtractPropTypes<{
12
+ drill: {
13
+ type: PropType<ReportDrillOptions>;
14
+ default: undefined;
15
+ };
16
+ loadParamOptions: {
17
+ type: PropType<ReportParamOptionsLoader>;
18
+ default: undefined;
19
+ };
12
20
  reportId: {
13
21
  type: PropType<string | string[] | null>;
14
22
  default: null;
@@ -70,6 +78,10 @@ declare const __VLS_component: DefineComponent<ExtractPropTypes<{
70
78
  type: PropType<AssetRenderOptions>;
71
79
  default: undefined;
72
80
  };
81
+ printOptions: {
82
+ type: PropType<ReportPrintOptions>;
83
+ default: undefined;
84
+ };
73
85
  /** 保留表头的零行业务结果;不改变计划和导出内容。 */
74
86
  emptyState: {
75
87
  type: PropType<boolean | ReportEmptyState>;
@@ -167,6 +179,14 @@ declare const __VLS_component: DefineComponent<ExtractPropTypes<{
167
179
  "template-import": (result: ExcelImportResult) => any;
168
180
  "preferences-change": (preferences: Readonly<ReportPreviewPreferences>) => any;
169
181
  }, string, MachReportVuePublicProps, Readonly<ExtractPropTypes<{
182
+ drill: {
183
+ type: PropType<ReportDrillOptions>;
184
+ default: undefined;
185
+ };
186
+ loadParamOptions: {
187
+ type: PropType<ReportParamOptionsLoader>;
188
+ default: undefined;
189
+ };
170
190
  reportId: {
171
191
  type: PropType<string | string[] | null>;
172
192
  default: null;
@@ -228,6 +248,10 @@ declare const __VLS_component: DefineComponent<ExtractPropTypes<{
228
248
  type: PropType<AssetRenderOptions>;
229
249
  default: undefined;
230
250
  };
251
+ printOptions: {
252
+ type: PropType<ReportPrintOptions>;
253
+ default: undefined;
254
+ };
231
255
  /** 保留表头的零行业务结果;不改变计划和导出内容。 */
232
256
  emptyState: {
233
257
  type: PropType<boolean | ReportEmptyState>;
@@ -301,6 +325,9 @@ declare const __VLS_component: DefineComponent<ExtractPropTypes<{
301
325
  showPdfWindow: boolean;
302
326
  showSettings: boolean;
303
327
  showParams: boolean;
328
+ drill: ReportDrillOptions;
329
+ loadParamOptions: ReportParamOptionsLoader;
330
+ printOptions: ReportPrintOptions;
304
331
  toolbar: MachReportToolbarOptions;
305
332
  interaction: ReportInteractionOptions;
306
333
  preferences: ReportPreferencesOptions;
@@ -391,6 +418,7 @@ declare type __VLS_Props_3 = {
391
418
  showActions?: boolean;
392
419
  showTitle?: boolean;
393
420
  disabled?: boolean;
421
+ loadOptions?: ReportParamOptionsLoader;
394
422
  };
395
423
  declare function __VLS_template(): {
396
424
  slots: {
@@ -461,7 +489,7 @@ declare interface AssetRenderBudget {
461
489
  /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
462
490
  maxDurationMs?: number;
463
491
  }
464
- declare interface AssetRenderOptions extends OutputDiagnosticOptions {
492
+ declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
465
493
  assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
466
494
  assetBudget?: AssetRenderBudget;
467
495
  /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
@@ -469,7 +497,7 @@ declare interface AssetRenderOptions extends OutputDiagnosticOptions {
469
497
  signal?: AbortSignal;
470
498
  }
471
499
  /** 供 HTML/Word 导出的完整文档;打印路径逐页渲染,避免预先生成所有页。 */
472
- export declare function buildPrintDocument(p: RenderPlan): PrintHtmlResult;
500
+ export declare function buildPrintDocument(p: RenderPlan, options?: ReportPrintOptions): PrintHtmlResult;
473
501
  export declare function buildWordHtml(p: RenderPlan): {
474
502
  html: string;
475
503
  filename: string;
@@ -722,6 +750,8 @@ export declare function createFetchRequest(options?: FetchRequestOptions): HostR
722
750
  * 用于本地预览、离线场景和单测。
723
751
  */
724
752
  export declare function createLocalFetcher(entries: Record<string, LocalTemplateEntry> | ReportRegistry): PlanFetcher;
753
+ /** Independent physical test page. Its ruler is measured in millimetres, never CSS pixels. */
754
+ export declare function createPrintCalibrationPlan(widthMm: number, heightMm: number): RenderPlan_2;
725
755
  /** Explicit persistence bridge. Merely registering ReportProvider never enables editing or saving. */
726
756
  export declare function createProviderEditing(provider: ReportProvider, options: ProviderEditingOptions): ReportEditingOptions;
727
757
  /** Optional browser convenience adapter. Access errors are handled by the preview. */
@@ -740,6 +770,7 @@ declare interface DatasetValidationOptions {
740
770
  }
741
771
  export declare const DEFAULT_CALCULATION_MESSAGES: ReportCalculationMessages;
742
772
  export declare const DEFAULT_MESSAGES: MachReportMessages;
773
+ export declare const DEFAULT_PRINT_MESSAGES: Required<ReportPrintMessages>;
743
774
  export declare const DEFAULT_THEME: MachReportTheme;
744
775
  export declare interface DefaultPdfExporterOptions {
745
776
  /** 中文字体 URL(浏览器 fetch);空串跳过字体加载(西文报表) */
@@ -888,7 +919,7 @@ declare interface GridCell {
888
919
  valueType?: "text" | "number" | "boolean";
889
920
  /** 单元格级编辑控制;预览仍需显式开启 editing。 */
890
921
  editable?: boolean;
891
- source?: ReportCellSource;
922
+ source?: ReportCellSource_2;
892
923
  /** SDK 派生结果不映射业务来源,始终只读(包括覆盖同名源字段的计算)。 */
893
924
  derived?: boolean;
894
925
  /** Excel 公式保留元数据;当前引擎不计算公式,公式格始终只读。 */
@@ -911,7 +942,7 @@ declare interface GridCell_2 {
911
942
  valueType?: "text" | "number" | "boolean";
912
943
  /** 单元格级编辑控制;预览仍需显式开启 editing。 */
913
944
  editable?: boolean;
914
- source?: ReportCellSource_2;
945
+ source?: ReportCellSource;
915
946
  /** SDK 派生结果不映射业务来源,始终只读(包括覆盖同名源字段的计算)。 */
916
947
  derived?: boolean;
917
948
  /** Excel 公式保留元数据;当前引擎不计算公式,公式格始终只读。 */
@@ -953,6 +984,30 @@ export declare type HostRequest = (config: {
953
984
  signal?: AbortSignal;
954
985
  }) => Promise<unknown>;
955
986
  declare type ImageComponentKind = "image" | "chart" | "barcode" | "qrcode";
987
+ /** Bounded binary image inspection shared by PDF, Excel and template import. No decoder is loaded. */
988
+ declare interface ImageMediaOptions {
989
+ maxImageBytes?: number;
990
+ maxTotalImageBytes?: number;
991
+ maxImages?: number;
992
+ /** Decoded pixels per unique image, default 16 million. */
993
+ maxImagePixels?: number;
994
+ /** Total decoded pixels for unique media, default 64 million. */
995
+ maxTotalImagePixels?: number;
996
+ /** Maximum source dimension, default 16384 pixels. */
997
+ maxImageDimension?: number;
998
+ }
999
+ /** Bounded binary image inspection shared by PDF, Excel and template import. No decoder is loaded. */
1000
+ declare interface ImageMediaOptions_2 {
1001
+ maxImageBytes?: number;
1002
+ maxTotalImageBytes?: number;
1003
+ maxImages?: number;
1004
+ /** Decoded pixels per unique image, default 16 million. */
1005
+ maxImagePixels?: number;
1006
+ /** Total decoded pixels for unique media, default 64 million. */
1007
+ maxTotalImagePixels?: number;
1008
+ /** Maximum source dimension, default 16384 pixels. */
1009
+ maxImageDimension?: number;
1010
+ }
956
1011
  export declare function joinReportIds(reportId: ReportIdInput): string;
957
1012
  /** auto:真实数字/显式数值格式居右,日期与布尔居中,其他内容居左。 */
958
1013
  declare type ListAlignment = NonNullable<ComponentStyle_2["align"]> | "auto";
@@ -1367,6 +1422,9 @@ export declare interface MachReportController {
1367
1422
  }
1368
1423
  /** defaults 层可配置项(全部可选,均有内置缺省) */
1369
1424
  export declare interface MachReportDefaults {
1425
+ drill?: ReportDrillOptions;
1426
+ loadParamOptions?: ReportParamOptionsLoader;
1427
+ printOptions?: ReportPrintOptions;
1370
1428
  showExport?: boolean;
1371
1429
  showPrint?: boolean;
1372
1430
  showPdfWindow?: boolean;
@@ -1449,7 +1507,11 @@ export declare type MachReportLogger = Pick<Console, "warn" | "info">;
1449
1507
  * - 优先级:组件 props > 路由级叠加 > preset > defaults(props 永远最高)
1450
1508
  */
1451
1509
  /** 工具栏与状态文案(默认简体中文;出海场景覆写) */
1452
- export declare interface MachReportMessages extends Partial<ReportCalculationMessages> {
1510
+ export declare interface MachReportMessages extends Partial<ReportCalculationMessages>, ReportPrintMessages, ReportParamOptionsMessages {
1511
+ drillActions?: string;
1512
+ drillOpening?: string;
1513
+ drillMissingValue?: string;
1514
+ drillFailed?: string;
1453
1515
  exportMenu?: string;
1454
1516
  exportMenuDescription?: string;
1455
1517
  clearSearch?: string;
@@ -1460,6 +1522,13 @@ export declare interface MachReportMessages extends Partial<ReportCalculationMes
1460
1522
  pageJumpHint?: string;
1461
1523
  pagination?: string;
1462
1524
  recordNavigation?: string;
1525
+ dataExplanation?: string;
1526
+ dataExplanationHint?: string;
1527
+ dataExplanationSearch?: string;
1528
+ dataExplanationEmpty?: string;
1529
+ dataMissingSource?: string;
1530
+ dataNotApplicable?: string;
1531
+ dataNotCalculable?: string;
1463
1532
  recordInfo?: string;
1464
1533
  prevRecord?: string;
1465
1534
  nextRecord?: string;
@@ -1758,7 +1827,7 @@ export declare function normalizeReportIds(reportId: ReportIdInput): string[];
1758
1827
  /** Workers preserve stable error codes, not JavaScript class identity. Only known codes cross the UI boundary. */
1759
1828
  export declare function normalizeReportLoadError(error: unknown): MachReportError;
1760
1829
  declare interface OutputDiagnostic {
1761
- code: "missing-image" | "unsupported-component" | "unsupported-image-format" | "unsupported-style" | "rich-text-flattened" | "nested-components-omitted" | "async-image-required" | "image-decode-failed" | "asset-render-failed" | "asset-budget-exceeded";
1830
+ code: "invalid-image-data" | "image-budget-exceeded" | "component-render-failed" | "unsupported-text" | "output-degraded" | "missing-image" | "unsupported-component" | "unsupported-image-format" | "unsupported-style" | "rich-text-flattened" | "nested-components-omitted" | "async-image-required" | "image-decode-failed" | "asset-render-failed" | "asset-budget-exceeded";
1762
1831
  severity: "warning";
1763
1832
  format: OutputFormat;
1764
1833
  pageIndex: number;
@@ -1770,7 +1839,7 @@ declare interface OutputDiagnostic {
1770
1839
  message: string;
1771
1840
  }
1772
1841
  declare interface OutputDiagnostic_2 {
1773
- code: "missing-image" | "unsupported-component" | "unsupported-image-format" | "unsupported-style" | "rich-text-flattened" | "nested-components-omitted" | "async-image-required" | "image-decode-failed" | "asset-render-failed" | "asset-budget-exceeded";
1842
+ code: "invalid-image-data" | "image-budget-exceeded" | "component-render-failed" | "unsupported-text" | "output-degraded" | "missing-image" | "unsupported-component" | "unsupported-image-format" | "unsupported-style" | "rich-text-flattened" | "nested-components-omitted" | "async-image-required" | "image-decode-failed" | "asset-render-failed" | "asset-budget-exceeded";
1774
1843
  severity: "warning";
1775
1844
  format: OutputFormat_2;
1776
1845
  pageIndex: number;
@@ -1832,6 +1901,7 @@ declare interface PaginateOptions {
1832
1901
  /** Trusted formula adapter is passed at execution time; it is never serialized in templates. */
1833
1902
  formula?: FormulaAdapter;
1834
1903
  }
1904
+ export declare const PARAM_OPTIONS_MESSAGES: Required<ReportParamOptionsMessages>;
1835
1905
  /** PDF 导出器:RenderPlan → PDF 字节;第二参数可上报非致命保真告警。 */
1836
1906
  export declare interface PdfExporter {
1837
1907
  (plan: RenderPlan, onWarning?: (message: string) => void, task?: OutputTaskOptions_2 & {
@@ -1978,6 +2048,18 @@ declare interface PlanPage {
1978
2048
  marginRightMm?: number;
1979
2049
  components: PlanComponent[];
1980
2050
  }
2051
+ declare interface PlanPage_2 {
2052
+ meta?: Record<string, unknown>;
2053
+ /** wide 表示完整自然列宽;页面仅为预览的垂直窗口分段。 */
2054
+ layout?: "page" | "wide";
2055
+ pageWidthMm: number;
2056
+ pageHeightMm: number;
2057
+ marginTopMm?: number;
2058
+ marginBottomMm?: number;
2059
+ marginLeftMm?: number;
2060
+ marginRightMm?: number;
2061
+ components: PlanComponent_2[];
2062
+ }
1981
2063
  /** 列表的逻辑行来源;用于连续 Excel 重组,避免按文本猜测重复表头。 */
1982
2064
  declare interface PlanTableFragment {
1983
2065
  /** 在整个计划中唯一的逻辑表身份;同一表的分页片段共享身份。 */
@@ -1990,7 +2072,7 @@ declare interface PlanTableFragment {
1990
2072
  layout?: "page" | "wide";
1991
2073
  title?: string;
1992
2074
  /** 只有宿主声明稳定 rowKey 时生成,不能用显示顺序替代业务主键。 */
1993
- source?: Omit<ReportCellSource, "field" | "rowKey"> & {
2075
+ source?: Omit<ReportCellSource_2, "field" | "rowKey"> & {
1994
2076
  rowKey?: string | number;
1995
2077
  };
1996
2078
  }
@@ -2006,7 +2088,7 @@ declare interface PlanTableFragment_2 {
2006
2088
  layout?: "page" | "wide";
2007
2089
  title?: string;
2008
2090
  /** 只有宿主声明稳定 rowKey 时生成,不能用显示顺序替代业务主键。 */
2009
- source?: Omit<ReportCellSource_2, "field" | "rowKey"> & {
2091
+ source?: Omit<ReportCellSource, "field" | "rowKey"> & {
2010
2092
  rowKey?: string | number;
2011
2093
  };
2012
2094
  }
@@ -2026,6 +2108,12 @@ declare interface PlanTableFragment_3 {
2026
2108
  rowKey?: string | number;
2027
2109
  };
2028
2110
  }
2111
+ /** Bounded concurrency, one stage timeout, and cancellation even for a hanging decoder. */
2112
+ export declare function preparePrintResources(doc: Document, options?: ReportPrintOptions, signal?: AbortSignal, base?: string): Promise<void>;
2113
+ export declare function printCalibration(options?: ReportPrintOptions): {
2114
+ x: number;
2115
+ y: number;
2116
+ };
2029
2117
  declare interface PrintHtmlResult {
2030
2118
  head: string;
2031
2119
  pageChunks: string[];
@@ -2038,6 +2126,8 @@ export declare function printPlans(plans: RenderPlan[], options?: {
2038
2126
  onProgress?: (done: number, total: number) => void;
2039
2127
  onError?: (message: string) => void;
2040
2128
  signal?: AbortSignal;
2129
+ printOptions?: ReportPrintOptions;
2130
+ messages?: ReportPrintMessages;
2041
2131
  }): Promise<void>;
2042
2132
  /**
2043
2133
  * 路由/布局级响应式叠加:就近提供配置层(如某路由关闭导出按钮)。
@@ -2059,6 +2149,12 @@ declare interface RenderPlan {
2059
2149
  requiresRecalculation?: boolean;
2060
2150
  pages: PlanPage[];
2061
2151
  }
2152
+ declare interface RenderPlan_2 {
2153
+ schemaVersion: string;
2154
+ /** 编辑需要模板重算上下文;跨 Worker/JSON 保留要求,但不声明本地会话可用。 */
2155
+ requiresRecalculation?: boolean;
2156
+ pages: PlanPage_2[];
2157
+ }
2062
2158
  export declare const REPORT_EXPORT_FORMATS: readonly ReportExportFormat[];
2063
2159
  export declare const REPORT_PREVIEW_TOOLS: readonly [
2064
2160
  "search",
@@ -2133,14 +2229,14 @@ declare interface ReportCellContext {
2133
2229
  valueType: ReportCellValueType;
2134
2230
  table?: ReportCellTableIdentity;
2135
2231
  /** Stable business identity. Physical row indices must never be used as database keys. */
2136
- source?: Readonly<ReportCellSource_2>;
2232
+ source?: Readonly<ReportCellSource>;
2137
2233
  editable: boolean;
2138
2234
  readOnlyReason?: ReportCellReadOnlyReason;
2139
2235
  }
2140
2236
  declare interface ReportCellEdit {
2141
2237
  address: ReportCellAddress;
2142
2238
  table?: ReportCellTableIdentity;
2143
- source?: Readonly<ReportCellSource_2>;
2239
+ source?: Readonly<ReportCellSource>;
2144
2240
  previousValue: ReportCellValue;
2145
2241
  previousText: string;
2146
2242
  value: ReportCellValue;
@@ -2149,7 +2245,7 @@ declare interface ReportCellEdit {
2149
2245
  declare interface ReportCellEdit_2 {
2150
2246
  address: ReportCellAddress_2;
2151
2247
  table?: ReportCellTableIdentity_2;
2152
- source?: Readonly<ReportCellSource>;
2248
+ source?: Readonly<ReportCellSource_2>;
2153
2249
  previousValue: ReportCellValue_2;
2154
2250
  previousText: string;
2155
2251
  value: ReportCellValue_2;
@@ -2189,6 +2285,8 @@ export declare interface ReportCellSelection {
2189
2285
  }
2190
2286
  /** 可持久化的业务身份与计划坐标独立;权限及并发校验仍由业务服务器执行。 */
2191
2287
  declare interface ReportCellSource {
2288
+ /** Source identity across report occurrences; sharing must be explicitly declared. */
2289
+ sourceScope?: string;
2192
2290
  datasetId: string;
2193
2291
  rowKey: string | number;
2194
2292
  field: string;
@@ -2197,6 +2295,8 @@ declare interface ReportCellSource {
2197
2295
  }
2198
2296
  /** 可持久化的业务身份与计划坐标独立;权限及并发校验仍由业务服务器执行。 */
2199
2297
  declare interface ReportCellSource_2 {
2298
+ /** Source identity across report occurrences; sharing must be explicitly declared. */
2299
+ sourceScope?: string;
2200
2300
  datasetId: string;
2201
2301
  rowKey: string | number;
2202
2302
  field: string;
@@ -2205,6 +2305,8 @@ declare interface ReportCellSource_2 {
2205
2305
  }
2206
2306
  /** 可持久化的业务身份与计划坐标独立;权限及并发校验仍由业务服务器执行。 */
2207
2307
  declare interface ReportCellSource_3 {
2308
+ /** Source identity across report occurrences; sharing must be explicitly declared. */
2309
+ sourceScope?: string;
2208
2310
  datasetId: string;
2209
2311
  rowKey: string | number;
2210
2312
  field: string;
@@ -2228,7 +2330,27 @@ declare interface ReportCellTableIdentity_2 {
2228
2330
  declare type ReportCellValue = string | number | boolean | null;
2229
2331
  declare type ReportCellValue_2 = string | number | boolean | null;
2230
2332
  declare type ReportCellValueType = NonNullable<GridCell_2["valueType"]>;
2333
+ declare interface ReportDataTarget {
2334
+ datasetId: string;
2335
+ field: string;
2336
+ rowKey?: string | number;
2337
+ /** Use table identity when the same dataset appears in several tables. */
2338
+ tableId?: string;
2339
+ /** Assigned by the source/runtime when several reports share dataset names. */
2340
+ reportScope?: string;
2341
+ }
2342
+ declare interface ReportDataTarget_2 {
2343
+ datasetId: string;
2344
+ field: string;
2345
+ rowKey?: string | number;
2346
+ /** Use table identity when the same dataset appears in several tables. */
2347
+ tableId?: string;
2348
+ /** Assigned by the source/runtime when several reports share dataset names. */
2349
+ reportScope?: string;
2350
+ }
2231
2351
  declare interface ReportDefinition {
2352
+ /** Explicitly shared editable data identity. Omit to isolate each report occurrence. */
2353
+ sourceScope?: string;
2232
2354
  /** 静态模板或宿主提供的异步模板加载器;动态模板默认每次重新读取,不缓存版本。 */
2233
2355
  template: ReportTemplate_2 | ReportTemplateLoader;
2234
2356
  /** 静态数据;load 存在时优先使用 load 的结果。 */
@@ -2248,15 +2370,61 @@ declare interface ReportDiagnostic {
2248
2370
  message: string;
2249
2371
  path?: string;
2250
2372
  severity: "warning" | "error" | "info";
2373
+ /** Optional explanation supplied by the business source, not inferred from blank cells. */
2374
+ valueState?: ReportValueState;
2375
+ target?: ReportDataTarget;
2251
2376
  }
2252
2377
  export declare type ReportDiscardReason = "reload" | "import" | "replace" | "leave";
2378
+ /** Serializable action metadata. URLs, scripts and automatic navigation are deliberately absent. */
2379
+ declare interface ReportDrillAction {
2380
+ id: string;
2381
+ label: string;
2382
+ target: {
2383
+ field: string;
2384
+ datasetId?: string;
2385
+ reportScope?: string;
2386
+ roles?: readonly string[];
2387
+ };
2388
+ params?: Readonly<Record<string, ReportDrillBinding>>;
2389
+ }
2390
+ declare type ReportDrillBinding = {
2391
+ value: string | number | boolean;
2392
+ } | {
2393
+ from: "value" | "rowKey";
2394
+ } | {
2395
+ from: "query" | "field";
2396
+ field: string;
2397
+ };
2398
+ /** Trusted host-owned allowlist. Matching serialized metadata alone never executes an action. */
2399
+ export declare interface ReportDrillOptions {
2400
+ actions: readonly ReportDrillAction[];
2401
+ open(request: ReportDrillRequest & {
2402
+ signal: AbortSignal;
2403
+ view: Readonly<{
2404
+ zoom: number;
2405
+ scrollTop: number;
2406
+ scrollLeft: number;
2407
+ }>;
2408
+ }): void | Promise<void>;
2409
+ }
2410
+ declare interface ReportDrillRequest {
2411
+ actionId: string;
2412
+ params: Readonly<Record<string, string>>;
2413
+ returnState: Readonly<ReportDrillReturnState>;
2414
+ }
2415
+ declare interface ReportDrillReturnState {
2416
+ params: Readonly<Record<string, string>>;
2417
+ address: Readonly<ReportCellAddress>;
2418
+ reportScope?: string;
2419
+ source?: Readonly<Pick<ReportCellSource, "sourceScope" | "datasetId" | "rowKey" | "field">>;
2420
+ }
2253
2421
  declare interface ReportEditBatch {
2254
2422
  /** Idempotency identity; the server should bind it to the exact payload. */
2255
2423
  requestId: string;
2256
2424
  edits: ReportCellEdit[];
2257
2425
  }
2258
2426
  declare interface ReportEditConflict {
2259
- source?: Readonly<ReportCellSource_2>;
2427
+ source?: Readonly<ReportCellSource>;
2260
2428
  address?: ReportCellAddress;
2261
2429
  message: string;
2262
2430
  currentValue?: ReportCellValue;
@@ -2343,7 +2511,8 @@ declare interface ReportFetchInput extends ReportTaskMonitoring {
2343
2511
  signal?: AbortSignal;
2344
2512
  /** 本次分页与计划告警;未提供时使用数据源配置的告警通道。 */
2345
2513
  onWarning?: (message: string) => void;
2346
- onQueryResult?: (reportId: string, result: ReportQueryResult) => void;
2514
+ /** Index scopes diagnostics when reports share datasets or a report ID is repeated. */
2515
+ onQueryResult?: (reportId: string, result: ReportQueryResult, reportIndex?: number) => void;
2347
2516
  }
2348
2517
  declare interface ReportFieldContract {
2349
2518
  field: string;
@@ -2364,6 +2533,7 @@ export declare interface ReportFieldTarget {
2364
2533
  datasetId?: string;
2365
2534
  rowKey?: string | number;
2366
2535
  tableId?: string;
2536
+ reportScope?: string;
2367
2537
  }
2368
2538
  declare interface ReportFlowBand {
2369
2539
  /** Exact stable component IDs. Static components use nid, lists use id. */
@@ -2433,6 +2603,10 @@ declare interface ReportParamDef {
2433
2603
  label: string;
2434
2604
  value: string;
2435
2605
  }>;
2606
+ /** Opaque host-resolved source key. No URL, credentials or executable code is stored. */
2607
+ optionsSource?: string;
2608
+ /** Select dependencies must be declared parameters; changing a parent clears descendants. */
2609
+ dependsOn?: string[];
2436
2610
  defaultValue?: string;
2437
2611
  required?: boolean;
2438
2612
  placeholder?: string;
@@ -2454,6 +2628,10 @@ declare interface ReportParamDef_2 {
2454
2628
  label: string;
2455
2629
  value: string;
2456
2630
  }>;
2631
+ /** Opaque host-resolved source key. No URL, credentials or executable code is stored. */
2632
+ optionsSource?: string;
2633
+ /** Select dependencies must be declared parameters; changing a parent clears descendants. */
2634
+ dependsOn?: string[];
2457
2635
  defaultValue?: string;
2458
2636
  required?: boolean;
2459
2637
  placeholder?: string;
@@ -2475,6 +2653,10 @@ declare interface ReportParamDef_3 {
2475
2653
  label: string;
2476
2654
  value: string;
2477
2655
  }>;
2656
+ /** Opaque host-resolved source key. No URL, credentials or executable code is stored. */
2657
+ optionsSource?: string;
2658
+ /** Select dependencies must be declared parameters; changing a parent clears descendants. */
2659
+ dependsOn?: string[];
2478
2660
  defaultValue?: string;
2479
2661
  required?: boolean;
2480
2662
  placeholder?: string;
@@ -2490,7 +2672,30 @@ declare interface ReportParamIssue {
2490
2672
  field: string;
2491
2673
  message: string;
2492
2674
  }
2493
- declare type ReportParamIssueCode = "definition" | "required" | "type" | "option" | "minimum" | "maximum" | "minLength" | "maxLength";
2675
+ declare type ReportParamIssueCode = "definition" | "required" | "type" | "option" | "dependency" | "minimum" | "maximum" | "minLength" | "maxLength";
2676
+ export declare interface ReportParamOption {
2677
+ readonly label: string;
2678
+ readonly value: string;
2679
+ }
2680
+ export declare interface ReportParamOptionsInput {
2681
+ readonly source: string;
2682
+ readonly field: string;
2683
+ readonly query: string;
2684
+ /** Only declared dependencies, captured at request start. Never the mutable form. */
2685
+ readonly params: Readonly<Record<string, string>>;
2686
+ readonly signal: AbortSignal;
2687
+ readonly limit: number;
2688
+ }
2689
+ /** Resolve a trusted source key through the host's existing API/authentication. */
2690
+ export declare type ReportParamOptionsLoader = (input: ReportParamOptionsInput) => Promise<readonly ReportParamOption[]>;
2691
+ export declare interface ReportParamOptionsMessages {
2692
+ paramOptionsLoading?: string;
2693
+ paramOptionsEmpty?: string;
2694
+ paramOptionsFailed?: string;
2695
+ paramOptionsMissingLoader?: string;
2696
+ paramOptionsDependencies?: string;
2697
+ paramOptionsClear?: string;
2698
+ }
2494
2699
  export declare const ReportParamPanel: DefineComponent<__VLS_Props_3, {
2495
2700
  focusInvalid: typeof focusInvalid;
2496
2701
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
@@ -2503,6 +2708,7 @@ export declare const ReportParamPanel: DefineComponent<__VLS_Props_3, {
2503
2708
  "onUpdate:modelValue"?: ((value: Record<string, string>) => any) | undefined;
2504
2709
  }>, {
2505
2710
  disabled: boolean;
2711
+ loadOptions: ReportParamOptionsLoader;
2506
2712
  issues: readonly ReportParamIssue[];
2507
2713
  showActions: boolean;
2508
2714
  showTitle: boolean;
@@ -2518,7 +2724,13 @@ export declare interface ReportPreferencesOptions {
2518
2724
  adapter: ReportPreferencesAdapter;
2519
2725
  }
2520
2726
  export declare const ReportPreview: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
2727
+ export declare interface ReportPreviewDataTarget extends ReportDataTarget_2 {
2728
+ /** Added by the query adapter; isolates identical dataset/row/field identities across reports. */
2729
+ reportScope?: string;
2730
+ }
2521
2731
  export declare interface ReportPreviewDiagnostic {
2732
+ valueState?: ReportValueState_2;
2733
+ target?: ReportPreviewDataTarget;
2522
2734
  code: string;
2523
2735
  severity: "warning" | "error" | "info";
2524
2736
  message: string;
@@ -2541,6 +2753,41 @@ export declare interface ReportPreviewTask {
2541
2753
  }
2542
2754
  export declare type ReportPreviewTaskStage = "query" | "validate" | "layout" | "assets" | "import" | "encode" | "download" | "print";
2543
2755
  export declare type ReportPreviewTool = "search" | "thumbnails" | "zoom" | ReportExportFormat | "print" | "pdfWindow" | "editing" | "import";
2756
+ export declare interface ReportPrintCalibration {
2757
+ offsetXmm?: number;
2758
+ offsetYmm?: number;
2759
+ }
2760
+ export declare interface ReportPrintFont {
2761
+ /** Same family name used by the template. Sources are trusted application assets. */
2762
+ family: string;
2763
+ source: string;
2764
+ weight?: string;
2765
+ style?: "normal" | "italic" | "oblique";
2766
+ }
2767
+ export declare interface ReportPrintMessages {
2768
+ printPrepareTimeout?: string;
2769
+ printImageFailed?: string;
2770
+ printFontFailed?: string;
2771
+ printPrepareFailed?: string;
2772
+ printCalibration?: string;
2773
+ printOffsetX?: string;
2774
+ printOffsetY?: string;
2775
+ printCalibrationTest?: string;
2776
+ printCalibrationHint?: string;
2777
+ }
2778
+ export declare interface ReportPrintOptions {
2779
+ /** Defaults to 15 seconds for the entire font/image preparation stage. */
2780
+ resourceTimeoutMs?: number;
2781
+ fonts?: readonly ReportPrintFont[];
2782
+ /** Physical translation only; no scaling or mutation of the report data/plan. */
2783
+ calibration?: ReportPrintCalibration;
2784
+ }
2785
+ export declare class ReportPrintResourceError extends Error {
2786
+ readonly kind: "image" | "font" | "timeout" | "config";
2787
+ readonly resource: string | number;
2788
+ readonly code = "print-resource";
2789
+ constructor(kind: "image" | "font" | "timeout" | "config", resource?: string | number);
2790
+ }
2544
2791
  /** 查询是唯一基础能力;权限、HTTP、数据库和事务都留在宿主适配器内。 */
2545
2792
  declare interface ReportProvider {
2546
2793
  query(context: ReportLoadContext): ReportQueryResult | Promise<ReportQueryResult>;
@@ -2673,10 +2920,16 @@ declare interface ReportTemplateRepeat_3 {
2673
2920
  }
2674
2921
  declare type ReportTemplateSummary = Omit<ReportTemplateDocument, "template">;
2675
2922
  export declare const ReportToolbar: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
2923
+ /** Optional business explanations never replace raw data or schema validation. */
2924
+ declare type ReportValueState = "missing-source" | "not-applicable" | "not-calculable";
2925
+ /** Optional business explanations never replace raw data or schema validation. */
2926
+ declare type ReportValueState_2 = "missing-source" | "not-applicable" | "not-calculable";
2676
2927
  /** 新消息保持可选,旧的完整文案对象也能获得新增能力的默认文案。 */
2677
2928
  export declare function resolveCalculationMessages(messages: Partial<ReportCalculationMessages>): ReportCalculationMessages;
2678
2929
  export declare function resolveConfig(config: MachReportConfig | null | undefined, presetName?: string): ResolvedConfig;
2679
2930
  export declare type ResolvedConfig = Required<Pick<MachReportDefaults, "showExport" | "showPrint" | "showPdfWindow" | "showSettings" | "showParams" | "gapPx">> & {
2931
+ drill?: ReportDrillOptions;
2932
+ loadParamOptions?: ReportParamOptionsLoader;
2680
2933
  pdfFontUrl: string;
2681
2934
  theme: MachReportTheme;
2682
2935
  messages: MachReportMessages;
@@ -2692,6 +2945,7 @@ export declare type ResolvedConfig = Required<Pick<MachReportDefaults, "showExpo
2692
2945
  guardChanges: boolean;
2693
2946
  beforeDiscard?: ReportBeforeDiscard;
2694
2947
  output: ReportOutputOptions;
2948
+ printOptions?: ReportPrintOptions;
2695
2949
  };
2696
2950
  declare interface RichParagraph {
2697
2951
  segments: RichSegment[];
@@ -2736,6 +2990,7 @@ declare interface RichSegment_3 {
2736
2990
  style?: ComponentStyle_3;
2737
2991
  }
2738
2992
  export declare const SILENT_LOGGER: MachReportLogger;
2993
+ export declare function snapshotPrintOptions(options?: ReportPrintOptions): ReportPrintOptions;
2739
2994
  /** 条件格式规则求值(声明式,见 ListColumn.rules) */
2740
2995
  declare interface StyleRule {
2741
2996
  when: {
@@ -2927,6 +3182,8 @@ export declare function usePageWindow(plan: Ref<RenderPlan | null>, zoom: Ref<nu
2927
3182
  export declare function usePrintExport(plan: Ref<RenderPlan | null>, hooks: {
2928
3183
  /** 按导出开始时的配置快照处理,避免输出过程中跟随路由配置变化。 */
2929
3184
  getXlsxOptions?: () => XlsxRenderOptions;
3185
+ getPrintOptions?: () => ReportPrintOptions;
3186
+ getPrintMessages?: () => ReportPrintMessages;
2930
3187
  /** Flush the active editor and await source-backed calculation/persistence before capturing the output plan. */
2931
3188
  beforeOutput?: () => boolean | Promise<boolean>;
2932
3189
  getPdfExporter: () => PdfExporter;
@@ -2981,21 +3238,14 @@ declare type ValueFormat = ColumnFormat;
2981
3238
  declare type ValueFormat_2 = ColumnFormat_2;
2982
3239
  /** The same declarative formatting used by list columns, before any output backend. */
2983
3240
  declare type ValueFormat_3 = ColumnFormat_3;
2984
- declare interface XlsxImageOptions {
2985
- /** Decoded bytes per unique embedded image; default 16 MiB. */
2986
- maxImageBytes?: number;
2987
- /** Total decoded bytes of unique images in this workbook; default 32 MiB. */
2988
- maxTotalImageBytes?: number;
2989
- /** Unique embedded media limit, default 1000; repeated placements reuse the same media. */
2990
- maxImages?: number;
2991
- }
3241
+ declare type XlsxImageOptions = ImageMediaOptions_2;
2992
3242
  /**
2993
3243
  * RenderPlan → xlsx 导出(B 端第二出口,对齐家族 @agile-team/mach-table-xlsx 路线):
2994
3244
  * - 网格组件 → 真表格:列宽(mm→Excel 宽度)、行高(mm→pt)、colSpan/rowSpan 合并、
2995
3245
  * 加粗/对齐/底色/字号直译(resolveGridLayout 复用单真相源几何)
2996
3246
  * - 文本组件 → 合并标题行(顺序流式输出,保字号/加粗/对齐;非像素级定位,
2997
3247
  * 目标是"财务能直接用的对账表"而非复刻版面)
2998
- * - 未支持组件、富文本专有内容与单元格嵌套组件跳过并计入 warnings
3248
+ * - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
2999
3249
  */
3000
3250
  declare interface XlsxRenderOptions extends OutputDiagnosticOptions_2, XlsxImageOptions {
3001
3251
  /** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */