@agile-team/mach-report 2.16.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 (128) hide show
  1. package/README.md +10 -6
  2. package/dist/{ExcelBindingWizard-CP6h2x1f.cjs → ExcelBindingWizard-Bq6FYME6.cjs} +1 -1
  3. package/dist/{ExcelBindingWizard-HhB3hAJE.js → ExcelBindingWizard-Co1svTsw.js} +3 -3
  4. package/dist/{ParamEditor-CUQLgoxa.cjs → ParamEditor-B5UZRgxv.cjs} +1 -1
  5. package/dist/{ParamEditor-OKesP_nO.js → ParamEditor-DNNARyeB.js} +1 -1
  6. package/dist/{ReportBatchPanel-cZCAMAwH.cjs → ReportBatchPanel-Ctvs2t_9.cjs} +1 -1
  7. package/dist/{ReportBatchPanel-ruxcbfY6.js → ReportBatchPanel-uQh06usx.js} +1 -1
  8. package/dist/ReportPreview-BdQawRh0.js +4879 -0
  9. package/dist/ReportPreview-CJC_-j2I.cjs +6 -0
  10. package/dist/{ReportTemplateLibrary-BDlNT8JN.cjs → ReportTemplateLibrary-CnP7_1pH.cjs} +1 -1
  11. package/dist/{ReportTemplateLibrary-DcwrH-63.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-CGrT5DFN.cjs → TemplateOutlinePanel-BlLxRrfu.cjs} +1 -1
  15. package/dist/{TemplateOutlinePanel-SXCjaPKR.js → TemplateOutlinePanel-BouxsuqQ.js} +1 -1
  16. package/dist/{TemplateReusePanel-lHLOS9Wn.js → TemplateReusePanel-BEACLPaN.js} +2 -2
  17. package/dist/{TemplateReusePanel-6Z3wRFz8.cjs → TemplateReusePanel-yxsHSO40.cjs} +1 -1
  18. package/dist/{TemplateReviewPanel-CJ9PLc48.js → TemplateReviewPanel-B1OGRY2i.js} +1 -1
  19. package/dist/{TemplateReviewPanel-Dpk7sLcF.cjs → TemplateReviewPanel-D9Cx0m2N.cjs} +1 -1
  20. package/dist/analytics.cjs +1 -1
  21. package/dist/analytics.d.cts +63 -1
  22. package/dist/analytics.d.ts +63 -1
  23. package/dist/analytics.js +4 -4
  24. package/dist/artifact-integrity.json +86 -90
  25. package/dist/assets-BIMVwjQe.js +231 -0
  26. package/dist/assets-Dfs2ElxI.cjs +1 -0
  27. package/dist/{auto-YR7a4BtF.js → auto-BIOmtVhk.js} +14 -14
  28. package/dist/{auto-uVBjX1j5.cjs → auto-DDHflI9v.cjs} +1 -1
  29. package/dist/computed-BW5a8QFk.js +612 -0
  30. package/dist/computed-C2GD3XcE.cjs +1 -0
  31. package/dist/dataset-DL83majE.js +161 -0
  32. package/dist/dataset-IrlXbUvh.cjs +1 -0
  33. package/dist/{designer-BfQSahxq.js → designer-D9XAxqSc.js} +1194 -1179
  34. package/dist/designer-uCDo5XSK.cjs +2 -0
  35. package/dist/designer.cjs +1 -1
  36. package/dist/designer.d.cts +125 -3
  37. package/dist/designer.d.ts +125 -3
  38. package/dist/designer.js +1 -1
  39. package/dist/{drill-CsdjgkRM.cjs → drill-ByN8COs_.cjs} +1 -1
  40. package/dist/{drill-DIGsZfyB.js → drill-CKW3Xtfa.js} +11 -11
  41. package/dist/{encoding-BYF9ZTl9.cjs → encoding-BFMFIc4r.cjs} +1 -1
  42. package/dist/{encoding-BOGq4qYL.js → encoding-DP_Eaf0A.js} +2 -2
  43. package/dist/{font-loader-EKLzOJxf.cjs → font-loader-7FWVlykp.cjs} +1 -1
  44. package/dist/{font-loader-CzI1GuBc.js → font-loader-CQZowp0I.js} +1 -1
  45. package/dist/index.cjs +8 -8
  46. package/dist/index.d.cts +173 -1
  47. package/dist/index.d.ts +173 -1
  48. package/dist/index.js +1205 -808
  49. package/dist/json-snapshot-D7PE1NsU.cjs +2 -0
  50. package/dist/{json-snapshot-D6ioHth9.js → json-snapshot-DYmEe3sO.js} +769 -692
  51. package/dist/matrix-JLAXlux-.js +302 -0
  52. package/dist/matrix-gTHpDTGm.cjs +1 -0
  53. package/dist/{pdf-ByVCb1i6.cjs → pdf-B8JouyYv.cjs} +47 -47
  54. package/dist/{pdf-DJ5S6ukC.js → pdf-l3ea86di.js} +13 -15
  55. package/dist/pdf.cjs +1 -1
  56. package/dist/pdf.d.cts +12 -0
  57. package/dist/pdf.d.ts +12 -0
  58. package/dist/pdf.js +2 -2
  59. package/dist/{plugin-C2j5_mhx.js → plugin-BBp74CQZ.js} +1 -1
  60. package/dist/{plugin-Dr39GBRG.cjs → plugin-CtFX9PFG.cjs} +1 -1
  61. package/dist/{prepared-DqtpvRTn.js → prepared-CARicKYh.js} +1 -1
  62. package/dist/{prepared-DdrjLC7L.cjs → prepared-Ch1x_Gog.cjs} +1 -1
  63. package/dist/{protocol-BzwMP4Vw.cjs → protocol-B5A2uom4.cjs} +1 -1
  64. package/dist/{protocol-kt4Iy6-3.js → protocol-BaiWjq5w.js} +3 -3
  65. package/dist/{record-bindings-DUX1VMlR.cjs → record-bindings-B86Sur_y.cjs} +1 -1
  66. package/dist/{record-bindings-CZWBJ1fU.js → record-bindings-D4TuMzHs.js} +1 -1
  67. package/dist/{region-binding-workflow-CWNvIjkV.js → region-binding-workflow-BNasF5kz.js} +2 -2
  68. package/dist/{region-binding-workflow-CqSMxQ4p.cjs → region-binding-workflow-O2Cni3mF.cjs} +1 -1
  69. package/dist/report-encoding-worker.cjs +1 -1
  70. package/dist/report-encoding-worker.js +1 -1
  71. package/dist/runtime-DakRXui3.js +170 -0
  72. package/dist/runtime-dL5ygIfa.cjs +1 -0
  73. package/dist/sbom.cdx.json +1 -1
  74. package/dist/server/node.d.cts +46 -0
  75. package/dist/server/node.d.ts +46 -0
  76. package/dist/server-node.cjs +4 -4
  77. package/dist/server-node.js +2540 -1911
  78. package/dist/server.cjs +1 -1
  79. package/dist/server.d.cts +174 -1
  80. package/dist/server.d.ts +174 -1
  81. package/dist/server.js +787 -544
  82. package/dist/style.css +1 -1
  83. package/dist/template-catalog-Dua8h9ZA.cjs +1 -0
  84. package/dist/{template-catalog-BtR2JmCL.js → template-catalog-wT1fNeAP.js} +4 -4
  85. package/dist/{template-fragments-BVsbxs4a.cjs → template-fragments-BajTajb4.cjs} +1 -1
  86. package/dist/{template-fragments-By0aZC1D.js → template-fragments-DmX5XK4N.js} +1 -1
  87. package/dist/{template-registry-C62vpv4a.cjs → template-registry-CpysHAxy.cjs} +1 -1
  88. package/dist/{template-registry-Cw3vRTX2.js → template-registry-u11fPd8D.js} +5 -5
  89. package/dist/{tree-BX380Rr7.cjs → tree-CLpxYbKa.cjs} +1 -1
  90. package/dist/{tree-CjVZLRw7.js → tree-DNJorJUf.js} +1 -1
  91. package/dist/vue/async.d.cts +108 -2
  92. package/dist/vue/async.d.ts +108 -2
  93. package/dist/vue/index.d.cts +130 -3
  94. package/dist/vue/index.d.ts +130 -3
  95. package/dist/vue-async.cjs +1 -1
  96. package/dist/vue-async.js +3 -3
  97. package/dist/vue.cjs +1 -1
  98. package/dist/vue.js +4 -4
  99. package/dist/{workbook-session-BeSO8PFB.js → workbook-session-B8pNW24X.js} +1 -1
  100. package/dist/{workbook-session-Cbts-22R.cjs → workbook-session-DN5LSA5C.cjs} +1 -1
  101. package/dist/worker.cjs +1 -1
  102. package/dist/worker.js +4 -4
  103. package/dist/xlsx.cjs +4 -4
  104. package/dist/xlsx.d.cts +88 -2
  105. package/dist/xlsx.d.ts +88 -2
  106. package/dist/xlsx.js +232 -230
  107. package/package.json +1 -1
  108. package/dist/ReportPreview-BcDKCLiK.js +0 -4834
  109. package/dist/ReportPreview-Bk9nLfO9.cjs +0 -6
  110. package/dist/RuleEditor-BX5S8RSF.cjs +0 -1
  111. package/dist/RuleEditor-CGl9XY2s.js +0 -2037
  112. package/dist/assets-CqIbfbTr.js +0 -126
  113. package/dist/assets-e4YSke8n.cjs +0 -1
  114. package/dist/capabilities-DDwXr_cA.js +0 -103
  115. package/dist/capabilities-DNLyZdNw.cjs +0 -1
  116. package/dist/computed-C-4C2S5h.js +0 -521
  117. package/dist/computed-CGV2a809.cjs +0 -1
  118. package/dist/dataset-BkRmwgeJ.cjs +0 -1
  119. package/dist/dataset-H5pFuQGU.js +0 -121
  120. package/dist/designer-CPPdeM5_.cjs +0 -2
  121. package/dist/diagnostic-notification-B9K9We3h.cjs +0 -1
  122. package/dist/diagnostic-notification-qGAYZdkB.js +0 -7
  123. package/dist/json-snapshot-DknkjvxP.cjs +0 -2
  124. package/dist/matrix-CGRGkn5s.js +0 -112
  125. package/dist/matrix-gEO7ZM_u.cjs +0 -1
  126. package/dist/runtime-BjKBI530.js +0 -168
  127. package/dist/runtime-CBFEPKEs.cjs +0 -1
  128. package/dist/template-catalog-C2NLdrwB.cjs +0 -1
@@ -29,13 +29,34 @@ declare interface AssetRenderBudget {
29
29
  /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
30
30
  maxDurationMs?: number;
31
31
  }
32
+ declare interface AssetRenderBudget_2 {
33
+ /** Maximum newly rendered assets, default 1000. Existing imageData is kept unchanged. */
34
+ maxAssets?: number;
35
+ /** Maximum image payload bytes per new asset, default 32 MiB. */
36
+ maxImageBytes?: number;
37
+ /** Maximum total image payload bytes for new assets, default 128 MiB. */
38
+ maxTotalImageBytes?: number;
39
+ /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
40
+ maxDurationMs?: number;
41
+ }
32
42
  declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
33
43
  assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
44
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
45
+ assetRegistry?: ComponentAssetRegistry;
34
46
  assetBudget?: AssetRenderBudget;
35
47
  /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
36
48
  assetFailure?: "throw" | "placeholder";
37
49
  signal?: AbortSignal;
38
50
  }
51
+ declare interface AssetRenderOptions_2 extends OutputDiagnosticOptions_2, ImageMediaOptions_2 {
52
+ assetRenderers?: Partial<Record<ImageComponentKind_2, ComponentImageRenderer_2>>;
53
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
54
+ assetRegistry?: ComponentAssetRegistry_2;
55
+ assetBudget?: AssetRenderBudget_2;
56
+ /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
57
+ assetFailure?: "throw" | "placeholder";
58
+ signal?: AbortSignal;
59
+ }
39
60
  declare interface BrowserReportWorker {
40
61
  postMessage(value: unknown, transfer?: Transferable[]): void;
41
62
  terminate(): void;
@@ -143,6 +164,14 @@ declare type ColumnFormat_3 = {
143
164
  kind: "date";
144
165
  pattern?: string;
145
166
  };
167
+ declare interface ComponentAssetRegistry {
168
+ rendererFor(component: Readonly<PlanComponent>): ComponentImageRenderer | undefined;
169
+ hasExtension(id: string, version: string, kind: string): boolean;
170
+ }
171
+ declare interface ComponentAssetRegistry_2 {
172
+ rendererFor(component: Readonly<PlanComponent_2>): ComponentImageRenderer_2 | undefined;
173
+ hasExtension(id: string, version: string, kind: string): boolean;
174
+ }
146
175
  /** A literal own field of the current label record; expressions and paths are not evaluated. */
147
176
  declare interface ComponentBinding {
148
177
  field: string;
@@ -174,7 +203,15 @@ declare interface ComponentImageContext {
174
203
  readonly componentPath: readonly number[];
175
204
  readonly signal: AbortSignal;
176
205
  }
206
+ declare interface ComponentImageContext_2 {
207
+ readonly component: Readonly<PlanComponent_2>;
208
+ readonly pageIndex: number;
209
+ readonly componentIndex: number;
210
+ readonly componentPath: readonly number[];
211
+ readonly signal: AbortSignal;
212
+ }
177
213
  declare type ComponentImageRenderer = (context: ComponentImageContext) => string | Promise<string>;
214
+ declare type ComponentImageRenderer_2 = (context: ComponentImageContext_2) => string | Promise<string>;
178
215
  declare type ComponentKind = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
179
216
  declare type ComponentKind_2 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
180
217
  declare type ComponentKind_3 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
@@ -446,6 +483,7 @@ declare interface GridCell_3 {
446
483
  style?: ComponentStyle_3;
447
484
  }
448
485
  declare type ImageComponentKind = "image" | "chart" | "barcode" | "qrcode";
486
+ declare type ImageComponentKind_2 = "image" | "chart" | "barcode" | "qrcode";
449
487
  /** Bounded binary image inspection shared by PDF, Excel and template import. No decoder is loaded. */
450
488
  declare interface ImageMediaOptions {
451
489
  maxImageBytes?: number;
@@ -1028,6 +1066,40 @@ declare interface MachReportToolbarOptions {
1028
1066
  /** 未传时显示全部已有出口;空数组表示不提供导出工具。 */
1029
1067
  exportFormats?: ReportExportFormat[];
1030
1068
  }
1069
+ declare interface MatrixAxisOptions {
1070
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1071
+ labels?: readonly string[];
1072
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1073
+ sort?: readonly MatrixDimensionOrder[];
1074
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1075
+ subtotals?: readonly number[];
1076
+ }
1077
+ declare interface MatrixAxisOptions_2 {
1078
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1079
+ labels?: readonly string[];
1080
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1081
+ sort?: readonly MatrixDimensionOrder_2[];
1082
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1083
+ subtotals?: readonly number[];
1084
+ }
1085
+ declare type MatrixDimensionOrder = "source" | "asc" | "desc";
1086
+ declare type MatrixDimensionOrder_2 = "source" | "asc" | "desc";
1087
+ declare interface MatrixHierarchyOptions {
1088
+ row?: MatrixAxisOptions;
1089
+ column?: MatrixAxisOptions;
1090
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1091
+ emptyLabel?: string;
1092
+ subtotalLabel?: string;
1093
+ totalLabel?: string;
1094
+ }
1095
+ declare interface MatrixHierarchyOptions_2 {
1096
+ row?: MatrixAxisOptions_2;
1097
+ column?: MatrixAxisOptions_2;
1098
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1099
+ emptyLabel?: string;
1100
+ subtotalLabel?: string;
1101
+ totalLabel?: string;
1102
+ }
1031
1103
  declare interface MatrixTableOptions {
1032
1104
  rowFields: readonly string[];
1033
1105
  columnFields: readonly string[];
@@ -1042,6 +1114,10 @@ declare interface MatrixTableOptions {
1042
1114
  maxColumns?: number;
1043
1115
  maxInputRows?: number;
1044
1116
  maxCells?: number;
1117
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1118
+ hierarchy?: MatrixHierarchyOptions;
1119
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1120
+ maxAggregateUpdates?: number;
1045
1121
  }
1046
1122
  declare interface MatrixTableOptions_2 {
1047
1123
  rowFields: readonly string[];
@@ -1057,6 +1133,10 @@ declare interface MatrixTableOptions_2 {
1057
1133
  maxColumns?: number;
1058
1134
  maxInputRows?: number;
1059
1135
  maxCells?: number;
1136
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1137
+ hierarchy?: MatrixHierarchyOptions_2;
1138
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1139
+ maxAggregateUpdates?: number;
1060
1140
  }
1061
1141
  declare interface OutputDiagnostic {
1062
1142
  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";
@@ -1068,6 +1148,11 @@ declare interface OutputDiagnostic {
1068
1148
  componentPath?: readonly number[];
1069
1149
  kind: string;
1070
1150
  nid?: string;
1151
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1152
+ extension?: {
1153
+ id: string;
1154
+ version: string;
1155
+ };
1071
1156
  message: string;
1072
1157
  }
1073
1158
  declare interface OutputDiagnostic_2 {
@@ -1080,6 +1165,11 @@ declare interface OutputDiagnostic_2 {
1080
1165
  componentPath?: readonly number[];
1081
1166
  kind: string;
1082
1167
  nid?: string;
1168
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1169
+ extension?: {
1170
+ id: string;
1171
+ version: string;
1172
+ };
1083
1173
  message: string;
1084
1174
  }
1085
1175
  declare interface OutputDiagnosticOptions extends OutputTaskOptions {
@@ -1692,7 +1782,13 @@ declare interface ReportFetchInput extends ReportTaskMonitoring {
1692
1782
  /** Index scopes diagnostics when reports share datasets or a report ID is repeated. */
1693
1783
  onQueryResult?: (reportId: string, result: ReportQueryResult, reportIndex?: number) => void;
1694
1784
  }
1695
- declare interface ReportFieldContract {
1785
+ declare type ReportFieldAggregation = "sum" | "avg" | "min" | "max" | "count" | "none";
1786
+ declare interface ReportFieldCalculation {
1787
+ /** Business-owned explanation, never executable JavaScript or an inferred business formula. */
1788
+ description: string;
1789
+ dependsOn: readonly string[];
1790
+ }
1791
+ declare interface ReportFieldContract extends ReportFieldSemantics {
1696
1792
  field: string;
1697
1793
  label?: string;
1698
1794
  type: "text" | "number" | "boolean" | "date" | "decimal";
@@ -1706,6 +1802,16 @@ declare interface ReportFieldContract {
1706
1802
  semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
1707
1803
  unit?: string;
1708
1804
  }
1805
+ declare interface ReportFieldSemantics {
1806
+ description?: string;
1807
+ /** Explicit meaning of null/missing; does not convert blanks into zero. */
1808
+ missingMeaning?: string;
1809
+ /** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
1810
+ aggregation?: ReportFieldAggregation;
1811
+ /** Shared presentation only; raw values and calculation precision remain unchanged. */
1812
+ format?: ColumnFormat;
1813
+ calculation?: ReportFieldCalculation;
1814
+ }
1709
1815
  declare interface ReportFieldTarget {
1710
1816
  field: string;
1711
1817
  datasetId?: string;
@@ -2202,7 +2308,7 @@ declare type XlsxImageOptions = ImageMediaOptions_2;
2202
2308
  * 目标是"财务能直接用的对账表"而非复刻版面)
2203
2309
  * - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
2204
2310
  */
2205
- declare interface XlsxRenderOptions extends OutputDiagnosticOptions_2, XlsxImageOptions {
2311
+ declare interface XlsxRenderOptions extends AssetRenderOptions_2, XlsxImageOptions {
2206
2312
  /** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
2207
2313
  sheetName?: (sheetIndex: number) => string;
2208
2314
  /** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
@@ -498,13 +498,34 @@ declare interface AssetRenderBudget {
498
498
  /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
499
499
  maxDurationMs?: number;
500
500
  }
501
+ declare interface AssetRenderBudget_2 {
502
+ /** Maximum newly rendered assets, default 1000. Existing imageData is kept unchanged. */
503
+ maxAssets?: number;
504
+ /** Maximum image payload bytes per new asset, default 32 MiB. */
505
+ maxImageBytes?: number;
506
+ /** Maximum total image payload bytes for new assets, default 128 MiB. */
507
+ maxTotalImageBytes?: number;
508
+ /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
509
+ maxDurationMs?: number;
510
+ }
501
511
  declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
502
512
  assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
513
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
514
+ assetRegistry?: ComponentAssetRegistry;
503
515
  assetBudget?: AssetRenderBudget;
504
516
  /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
505
517
  assetFailure?: "throw" | "placeholder";
506
518
  signal?: AbortSignal;
507
519
  }
520
+ declare interface AssetRenderOptions_2 extends OutputDiagnosticOptions_2, ImageMediaOptions_2 {
521
+ assetRenderers?: Partial<Record<ImageComponentKind_2, ComponentImageRenderer_2>>;
522
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
523
+ assetRegistry?: ComponentAssetRegistry_2;
524
+ assetBudget?: AssetRenderBudget_2;
525
+ /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
526
+ assetFailure?: "throw" | "placeholder";
527
+ signal?: AbortSignal;
528
+ }
508
529
  declare interface BrowserReportWorker {
509
530
  postMessage(value: unknown, transfer?: Transferable[]): void;
510
531
  terminate(): void;
@@ -618,6 +639,14 @@ declare type ColumnFormat_3 = {
618
639
  kind: "date";
619
640
  pattern?: string;
620
641
  };
642
+ declare interface ComponentAssetRegistry {
643
+ rendererFor(component: Readonly<PlanComponent>): ComponentImageRenderer | undefined;
644
+ hasExtension(id: string, version: string, kind: string): boolean;
645
+ }
646
+ declare interface ComponentAssetRegistry_2 {
647
+ rendererFor(component: Readonly<PlanComponent_2>): ComponentImageRenderer_2 | undefined;
648
+ hasExtension(id: string, version: string, kind: string): boolean;
649
+ }
621
650
  /** A literal own field of the current label record; expressions and paths are not evaluated. */
622
651
  declare interface ComponentBinding {
623
652
  field: string;
@@ -649,7 +678,15 @@ declare interface ComponentImageContext {
649
678
  readonly componentPath: readonly number[];
650
679
  readonly signal: AbortSignal;
651
680
  }
681
+ declare interface ComponentImageContext_2 {
682
+ readonly component: Readonly<PlanComponent_2>;
683
+ readonly pageIndex: number;
684
+ readonly componentIndex: number;
685
+ readonly componentPath: readonly number[];
686
+ readonly signal: AbortSignal;
687
+ }
652
688
  declare type ComponentImageRenderer = (context: ComponentImageContext) => string | Promise<string>;
689
+ declare type ComponentImageRenderer_2 = (context: ComponentImageContext_2) => string | Promise<string>;
653
690
  declare type ComponentKind = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
654
691
  declare type ComponentKind_2 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
655
692
  declare type ComponentKind_3 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
@@ -1007,6 +1044,7 @@ export declare type HostRequest = (config: {
1007
1044
  signal?: AbortSignal;
1008
1045
  }) => Promise<unknown>;
1009
1046
  declare type ImageComponentKind = "image" | "chart" | "barcode" | "qrcode";
1047
+ declare type ImageComponentKind_2 = "image" | "chart" | "barcode" | "qrcode";
1010
1048
  /** Bounded binary image inspection shared by PDF, Excel and template import. No decoder is loaded. */
1011
1049
  declare interface ImageMediaOptions {
1012
1050
  maxImageBytes?: number;
@@ -1803,6 +1841,57 @@ export declare interface MachReportToolbarOptions {
1803
1841
  /** 未传时显示全部已有出口;空数组表示不提供导出工具。 */
1804
1842
  exportFormats?: ReportExportFormat[];
1805
1843
  }
1844
+ declare interface MatrixAxisOptions {
1845
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1846
+ labels?: readonly string[];
1847
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1848
+ sort?: readonly MatrixDimensionOrder[];
1849
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1850
+ subtotals?: readonly number[];
1851
+ }
1852
+ declare interface MatrixAxisOptions_2 {
1853
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1854
+ labels?: readonly string[];
1855
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1856
+ sort?: readonly MatrixDimensionOrder_2[];
1857
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1858
+ subtotals?: readonly number[];
1859
+ }
1860
+ declare interface MatrixAxisOptions_3 {
1861
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1862
+ labels?: readonly string[];
1863
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1864
+ sort?: readonly MatrixDimensionOrder_3[];
1865
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1866
+ subtotals?: readonly number[];
1867
+ }
1868
+ declare type MatrixDimensionOrder = "source" | "asc" | "desc";
1869
+ declare type MatrixDimensionOrder_2 = "source" | "asc" | "desc";
1870
+ declare type MatrixDimensionOrder_3 = "source" | "asc" | "desc";
1871
+ declare interface MatrixHierarchyOptions {
1872
+ row?: MatrixAxisOptions;
1873
+ column?: MatrixAxisOptions;
1874
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1875
+ emptyLabel?: string;
1876
+ subtotalLabel?: string;
1877
+ totalLabel?: string;
1878
+ }
1879
+ declare interface MatrixHierarchyOptions_2 {
1880
+ row?: MatrixAxisOptions_2;
1881
+ column?: MatrixAxisOptions_2;
1882
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1883
+ emptyLabel?: string;
1884
+ subtotalLabel?: string;
1885
+ totalLabel?: string;
1886
+ }
1887
+ declare interface MatrixHierarchyOptions_3 {
1888
+ row?: MatrixAxisOptions_3;
1889
+ column?: MatrixAxisOptions_3;
1890
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1891
+ emptyLabel?: string;
1892
+ subtotalLabel?: string;
1893
+ totalLabel?: string;
1894
+ }
1806
1895
  declare interface MatrixTableOptions {
1807
1896
  rowFields: readonly string[];
1808
1897
  columnFields: readonly string[];
@@ -1817,6 +1906,10 @@ declare interface MatrixTableOptions {
1817
1906
  maxColumns?: number;
1818
1907
  maxInputRows?: number;
1819
1908
  maxCells?: number;
1909
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1910
+ hierarchy?: MatrixHierarchyOptions;
1911
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1912
+ maxAggregateUpdates?: number;
1820
1913
  }
1821
1914
  declare interface MatrixTableOptions_2 {
1822
1915
  rowFields: readonly string[];
@@ -1832,6 +1925,10 @@ declare interface MatrixTableOptions_2 {
1832
1925
  maxColumns?: number;
1833
1926
  maxInputRows?: number;
1834
1927
  maxCells?: number;
1928
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1929
+ hierarchy?: MatrixHierarchyOptions_2;
1930
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1931
+ maxAggregateUpdates?: number;
1835
1932
  }
1836
1933
  declare interface MatrixTableOptions_3 {
1837
1934
  rowFields: readonly string[];
@@ -1847,6 +1944,10 @@ declare interface MatrixTableOptions_3 {
1847
1944
  maxColumns?: number;
1848
1945
  maxInputRows?: number;
1849
1946
  maxCells?: number;
1947
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1948
+ hierarchy?: MatrixHierarchyOptions_3;
1949
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1950
+ maxAggregateUpdates?: number;
1850
1951
  }
1851
1952
  export declare function normalizeReportIds(reportId: ReportIdInput): string[];
1852
1953
  /** Workers preserve stable error codes, not JavaScript class identity. Only known codes cross the UI boundary. */
@@ -1861,6 +1962,11 @@ declare interface OutputDiagnostic {
1861
1962
  componentPath?: readonly number[];
1862
1963
  kind: string;
1863
1964
  nid?: string;
1965
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1966
+ extension?: {
1967
+ id: string;
1968
+ version: string;
1969
+ };
1864
1970
  message: string;
1865
1971
  }
1866
1972
  declare interface OutputDiagnostic_2 {
@@ -1873,6 +1979,11 @@ declare interface OutputDiagnostic_2 {
1873
1979
  componentPath?: readonly number[];
1874
1980
  kind: string;
1875
1981
  nid?: string;
1982
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1983
+ extension?: {
1984
+ id: string;
1985
+ version: string;
1986
+ };
1876
1987
  message: string;
1877
1988
  }
1878
1989
  declare interface OutputDiagnosticOptions extends OutputTaskOptions {
@@ -2579,7 +2690,13 @@ declare interface ReportFetchInput extends ReportTaskMonitoring {
2579
2690
  /** Index scopes diagnostics when reports share datasets or a report ID is repeated. */
2580
2691
  onQueryResult?: (reportId: string, result: ReportQueryResult, reportIndex?: number) => void;
2581
2692
  }
2582
- declare interface ReportFieldContract {
2693
+ declare type ReportFieldAggregation = "sum" | "avg" | "min" | "max" | "count" | "none";
2694
+ declare interface ReportFieldCalculation {
2695
+ /** Business-owned explanation, never executable JavaScript or an inferred business formula. */
2696
+ description: string;
2697
+ dependsOn: readonly string[];
2698
+ }
2699
+ declare interface ReportFieldContract extends ReportFieldSemantics {
2583
2700
  field: string;
2584
2701
  label?: string;
2585
2702
  type: "text" | "number" | "boolean" | "date" | "decimal";
@@ -2593,6 +2710,16 @@ declare interface ReportFieldContract {
2593
2710
  semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
2594
2711
  unit?: string;
2595
2712
  }
2713
+ declare interface ReportFieldSemantics {
2714
+ description?: string;
2715
+ /** Explicit meaning of null/missing; does not convert blanks into zero. */
2716
+ missingMeaning?: string;
2717
+ /** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
2718
+ aggregation?: ReportFieldAggregation;
2719
+ /** Shared presentation only; raw values and calculation precision remain unchanged. */
2720
+ format?: ColumnFormat;
2721
+ calculation?: ReportFieldCalculation;
2722
+ }
2596
2723
  export declare interface ReportFieldTarget {
2597
2724
  field: string;
2598
2725
  datasetId?: string;
@@ -2772,8 +2899,8 @@ export declare const ReportParamPanel: DefineComponent<__VLS_Props_3, {
2772
2899
  onQuery?: (() => any) | undefined;
2773
2900
  "onUpdate:modelValue"?: ((value: Record<string, string>) => any) | undefined;
2774
2901
  }>, {
2775
- disabled: boolean;
2776
2902
  issues: readonly ReportParamIssue[];
2903
+ disabled: boolean;
2777
2904
  loadOptions: ReportParamOptionsLoader;
2778
2905
  showActions: boolean;
2779
2906
  showTitle: boolean;
@@ -3335,7 +3462,7 @@ declare type XlsxImageOptions = ImageMediaOptions_2;
3335
3462
  * 目标是"财务能直接用的对账表"而非复刻版面)
3336
3463
  * - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
3337
3464
  */
3338
- declare interface XlsxRenderOptions extends OutputDiagnosticOptions_2, XlsxImageOptions {
3465
+ declare interface XlsxRenderOptions extends AssetRenderOptions_2, XlsxImageOptions {
3339
3466
  /** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
3340
3467
  sheetName?: (sheetIndex: number) => string;
3341
3468
  /** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
@@ -498,13 +498,34 @@ declare interface AssetRenderBudget {
498
498
  /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
499
499
  maxDurationMs?: number;
500
500
  }
501
+ declare interface AssetRenderBudget_2 {
502
+ /** Maximum newly rendered assets, default 1000. Existing imageData is kept unchanged. */
503
+ maxAssets?: number;
504
+ /** Maximum image payload bytes per new asset, default 32 MiB. */
505
+ maxImageBytes?: number;
506
+ /** Maximum total image payload bytes for new assets, default 128 MiB. */
507
+ maxTotalImageBytes?: number;
508
+ /** Wall-clock budget, including adapters that ignore AbortSignal. Default 30 seconds. */
509
+ maxDurationMs?: number;
510
+ }
501
511
  declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
502
512
  assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
513
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
514
+ assetRegistry?: ComponentAssetRegistry;
503
515
  assetBudget?: AssetRenderBudget;
504
516
  /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
505
517
  assetFailure?: "throw" | "placeholder";
506
518
  signal?: AbortSignal;
507
519
  }
520
+ declare interface AssetRenderOptions_2 extends OutputDiagnosticOptions_2, ImageMediaOptions_2 {
521
+ assetRenderers?: Partial<Record<ImageComponentKind_2, ComponentImageRenderer_2>>;
522
+ /** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
523
+ assetRegistry?: ComponentAssetRegistry_2;
524
+ assetBudget?: AssetRenderBudget_2;
525
+ /** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
526
+ assetFailure?: "throw" | "placeholder";
527
+ signal?: AbortSignal;
528
+ }
508
529
  declare interface BrowserReportWorker {
509
530
  postMessage(value: unknown, transfer?: Transferable[]): void;
510
531
  terminate(): void;
@@ -618,6 +639,14 @@ declare type ColumnFormat_3 = {
618
639
  kind: "date";
619
640
  pattern?: string;
620
641
  };
642
+ declare interface ComponentAssetRegistry {
643
+ rendererFor(component: Readonly<PlanComponent>): ComponentImageRenderer | undefined;
644
+ hasExtension(id: string, version: string, kind: string): boolean;
645
+ }
646
+ declare interface ComponentAssetRegistry_2 {
647
+ rendererFor(component: Readonly<PlanComponent_2>): ComponentImageRenderer_2 | undefined;
648
+ hasExtension(id: string, version: string, kind: string): boolean;
649
+ }
621
650
  /** A literal own field of the current label record; expressions and paths are not evaluated. */
622
651
  declare interface ComponentBinding {
623
652
  field: string;
@@ -649,7 +678,15 @@ declare interface ComponentImageContext {
649
678
  readonly componentPath: readonly number[];
650
679
  readonly signal: AbortSignal;
651
680
  }
681
+ declare interface ComponentImageContext_2 {
682
+ readonly component: Readonly<PlanComponent_2>;
683
+ readonly pageIndex: number;
684
+ readonly componentIndex: number;
685
+ readonly componentPath: readonly number[];
686
+ readonly signal: AbortSignal;
687
+ }
652
688
  declare type ComponentImageRenderer = (context: ComponentImageContext) => string | Promise<string>;
689
+ declare type ComponentImageRenderer_2 = (context: ComponentImageContext_2) => string | Promise<string>;
653
690
  declare type ComponentKind = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
654
691
  declare type ComponentKind_2 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
655
692
  declare type ComponentKind_3 = "text" | "image" | "barcode" | "qrcode" | "chart" | "line" | "rect" | "ellipse";
@@ -1007,6 +1044,7 @@ export declare type HostRequest = (config: {
1007
1044
  signal?: AbortSignal;
1008
1045
  }) => Promise<unknown>;
1009
1046
  declare type ImageComponentKind = "image" | "chart" | "barcode" | "qrcode";
1047
+ declare type ImageComponentKind_2 = "image" | "chart" | "barcode" | "qrcode";
1010
1048
  /** Bounded binary image inspection shared by PDF, Excel and template import. No decoder is loaded. */
1011
1049
  declare interface ImageMediaOptions {
1012
1050
  maxImageBytes?: number;
@@ -1803,6 +1841,57 @@ export declare interface MachReportToolbarOptions {
1803
1841
  /** 未传时显示全部已有出口;空数组表示不提供导出工具。 */
1804
1842
  exportFormats?: ReportExportFormat[];
1805
1843
  }
1844
+ declare interface MatrixAxisOptions {
1845
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1846
+ labels?: readonly string[];
1847
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1848
+ sort?: readonly MatrixDimensionOrder[];
1849
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1850
+ subtotals?: readonly number[];
1851
+ }
1852
+ declare interface MatrixAxisOptions_2 {
1853
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1854
+ labels?: readonly string[];
1855
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1856
+ sort?: readonly MatrixDimensionOrder_2[];
1857
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1858
+ subtotals?: readonly number[];
1859
+ }
1860
+ declare interface MatrixAxisOptions_3 {
1861
+ /** Display names in the same outer-to-inner order as the dimension fields. */
1862
+ labels?: readonly string[];
1863
+ /** Per-level sibling order; omitted levels retain first-seen order. */
1864
+ sort?: readonly MatrixDimensionOrder_3[];
1865
+ /** One-based prefix depths. Leaf depths are not subtotals. */
1866
+ subtotals?: readonly number[];
1867
+ }
1868
+ declare type MatrixDimensionOrder = "source" | "asc" | "desc";
1869
+ declare type MatrixDimensionOrder_2 = "source" | "asc" | "desc";
1870
+ declare type MatrixDimensionOrder_3 = "source" | "asc" | "desc";
1871
+ declare interface MatrixHierarchyOptions {
1872
+ row?: MatrixAxisOptions;
1873
+ column?: MatrixAxisOptions;
1874
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1875
+ emptyLabel?: string;
1876
+ subtotalLabel?: string;
1877
+ totalLabel?: string;
1878
+ }
1879
+ declare interface MatrixHierarchyOptions_2 {
1880
+ row?: MatrixAxisOptions_2;
1881
+ column?: MatrixAxisOptions_2;
1882
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1883
+ emptyLabel?: string;
1884
+ subtotalLabel?: string;
1885
+ totalLabel?: string;
1886
+ }
1887
+ declare interface MatrixHierarchyOptions_3 {
1888
+ row?: MatrixAxisOptions_3;
1889
+ column?: MatrixAxisOptions_3;
1890
+ /** Only null/missing values use this label; empty strings and zero stay distinct. */
1891
+ emptyLabel?: string;
1892
+ subtotalLabel?: string;
1893
+ totalLabel?: string;
1894
+ }
1806
1895
  declare interface MatrixTableOptions {
1807
1896
  rowFields: readonly string[];
1808
1897
  columnFields: readonly string[];
@@ -1817,6 +1906,10 @@ declare interface MatrixTableOptions {
1817
1906
  maxColumns?: number;
1818
1907
  maxInputRows?: number;
1819
1908
  maxCells?: number;
1909
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1910
+ hierarchy?: MatrixHierarchyOptions;
1911
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1912
+ maxAggregateUpdates?: number;
1820
1913
  }
1821
1914
  declare interface MatrixTableOptions_2 {
1822
1915
  rowFields: readonly string[];
@@ -1832,6 +1925,10 @@ declare interface MatrixTableOptions_2 {
1832
1925
  maxColumns?: number;
1833
1926
  maxInputRows?: number;
1834
1927
  maxCells?: number;
1928
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1929
+ hierarchy?: MatrixHierarchyOptions_2;
1930
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1931
+ maxAggregateUpdates?: number;
1835
1932
  }
1836
1933
  declare interface MatrixTableOptions_3 {
1837
1934
  rowFields: readonly string[];
@@ -1847,6 +1944,10 @@ declare interface MatrixTableOptions_3 {
1847
1944
  maxColumns?: number;
1848
1945
  maxInputRows?: number;
1849
1946
  maxCells?: number;
1947
+ /** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
1948
+ hierarchy?: MatrixHierarchyOptions_3;
1949
+ /** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
1950
+ maxAggregateUpdates?: number;
1850
1951
  }
1851
1952
  export declare function normalizeReportIds(reportId: ReportIdInput): string[];
1852
1953
  /** Workers preserve stable error codes, not JavaScript class identity. Only known codes cross the UI boundary. */
@@ -1861,6 +1962,11 @@ declare interface OutputDiagnostic {
1861
1962
  componentPath?: readonly number[];
1862
1963
  kind: string;
1863
1964
  nid?: string;
1965
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1966
+ extension?: {
1967
+ id: string;
1968
+ version: string;
1969
+ };
1864
1970
  message: string;
1865
1971
  }
1866
1972
  declare interface OutputDiagnostic_2 {
@@ -1873,6 +1979,11 @@ declare interface OutputDiagnostic_2 {
1873
1979
  componentPath?: readonly number[];
1874
1980
  kind: string;
1875
1981
  nid?: string;
1982
+ /** Declarative extension identity only; no property values or business binding data enter diagnostics. */
1983
+ extension?: {
1984
+ id: string;
1985
+ version: string;
1986
+ };
1876
1987
  message: string;
1877
1988
  }
1878
1989
  declare interface OutputDiagnosticOptions extends OutputTaskOptions {
@@ -2579,7 +2690,13 @@ declare interface ReportFetchInput extends ReportTaskMonitoring {
2579
2690
  /** Index scopes diagnostics when reports share datasets or a report ID is repeated. */
2580
2691
  onQueryResult?: (reportId: string, result: ReportQueryResult, reportIndex?: number) => void;
2581
2692
  }
2582
- declare interface ReportFieldContract {
2693
+ declare type ReportFieldAggregation = "sum" | "avg" | "min" | "max" | "count" | "none";
2694
+ declare interface ReportFieldCalculation {
2695
+ /** Business-owned explanation, never executable JavaScript or an inferred business formula. */
2696
+ description: string;
2697
+ dependsOn: readonly string[];
2698
+ }
2699
+ declare interface ReportFieldContract extends ReportFieldSemantics {
2583
2700
  field: string;
2584
2701
  label?: string;
2585
2702
  type: "text" | "number" | "boolean" | "date" | "decimal";
@@ -2593,6 +2710,16 @@ declare interface ReportFieldContract {
2593
2710
  semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
2594
2711
  unit?: string;
2595
2712
  }
2713
+ declare interface ReportFieldSemantics {
2714
+ description?: string;
2715
+ /** Explicit meaning of null/missing; does not convert blanks into zero. */
2716
+ missingMeaning?: string;
2717
+ /** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
2718
+ aggregation?: ReportFieldAggregation;
2719
+ /** Shared presentation only; raw values and calculation precision remain unchanged. */
2720
+ format?: ColumnFormat;
2721
+ calculation?: ReportFieldCalculation;
2722
+ }
2596
2723
  export declare interface ReportFieldTarget {
2597
2724
  field: string;
2598
2725
  datasetId?: string;
@@ -2772,8 +2899,8 @@ export declare const ReportParamPanel: DefineComponent<__VLS_Props_3, {
2772
2899
  onQuery?: (() => any) | undefined;
2773
2900
  "onUpdate:modelValue"?: ((value: Record<string, string>) => any) | undefined;
2774
2901
  }>, {
2775
- disabled: boolean;
2776
2902
  issues: readonly ReportParamIssue[];
2903
+ disabled: boolean;
2777
2904
  loadOptions: ReportParamOptionsLoader;
2778
2905
  showActions: boolean;
2779
2906
  showTitle: boolean;
@@ -3335,7 +3462,7 @@ declare type XlsxImageOptions = ImageMediaOptions_2;
3335
3462
  * 目标是"财务能直接用的对账表"而非复刻版面)
3336
3463
  * - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
3337
3464
  */
3338
- declare interface XlsxRenderOptions extends OutputDiagnosticOptions_2, XlsxImageOptions {
3465
+ declare interface XlsxRenderOptions extends AssetRenderOptions_2, XlsxImageOptions {
3339
3466
  /** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
3340
3467
  sheetName?: (sheetIndex: number) => string;
3341
3468
  /** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("./plugin-Dr39GBRG.cjs");function i(){return Promise.resolve().then(()=>require("./ReportPreview-Bk9nLfO9.cjs")).then(e=>e.ReportPreview$1)}const t={install(e,o={}){r.machReportPlugin.install(e,o)}};exports.MachReportPreview=r.MachReportPreview;exports.default=t;exports.machReportAsyncPlugin=t;exports.preloadMachReport=i;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("./plugin-CtFX9PFG.cjs");function i(){return Promise.resolve().then(()=>require("./ReportPreview-CJC_-j2I.cjs")).then(e=>e.ReportPreview$1)}const t={install(e,o={}){r.machReportPlugin.install(e,o)}};exports.MachReportPreview=r.MachReportPreview;exports.default=t;exports.machReportAsyncPlugin=t;exports.preloadMachReport=i;