@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.
- package/README.md +21 -12
- package/dist/{ExcelBindingWizard-Bs43BGNp.cjs → ExcelBindingWizard-Bq6FYME6.cjs} +1 -1
- package/dist/{ExcelBindingWizard-BKH1nGNS.js → ExcelBindingWizard-Co1svTsw.js} +3 -3
- package/dist/{ParamEditor-Da4akw6V.cjs → ParamEditor-B5UZRgxv.cjs} +1 -1
- package/dist/{ParamEditor-DoAhzJsm.js → ParamEditor-DNNARyeB.js} +1 -1
- package/dist/{ReportBatchPanel-wP9m9Pj1.cjs → ReportBatchPanel-Ctvs2t_9.cjs} +1 -1
- package/dist/{ReportBatchPanel-BMf6boMA.js → ReportBatchPanel-uQh06usx.js} +3 -3
- package/dist/ReportPreview-BdQawRh0.js +4879 -0
- package/dist/ReportPreview-CJC_-j2I.cjs +6 -0
- package/dist/{ReportTemplateLibrary-Sxr3eD0J.cjs → ReportTemplateLibrary-CnP7_1pH.cjs} +1 -1
- package/dist/{ReportTemplateLibrary-C9wutIiT.js → ReportTemplateLibrary-TIL_Oj2l.js} +1 -1
- package/dist/RuleEditor-DkRjOLlr.js +2141 -0
- package/dist/RuleEditor-h5anGsDB.cjs +1 -0
- package/dist/{TemplateOutlinePanel-JTSR53vJ.cjs → TemplateOutlinePanel-BlLxRrfu.cjs} +1 -1
- package/dist/{TemplateOutlinePanel-D6Bkny59.js → TemplateOutlinePanel-BouxsuqQ.js} +1 -1
- package/dist/{TemplateReusePanel-rVuK1kTz.js → TemplateReusePanel-BEACLPaN.js} +2 -2
- package/dist/{TemplateReusePanel-Kx35S0Ql.cjs → TemplateReusePanel-yxsHSO40.cjs} +1 -1
- package/dist/{TemplateReviewPanel-B0ar9_zf.js → TemplateReviewPanel-B1OGRY2i.js} +1 -1
- package/dist/{TemplateReviewPanel-Dn6X9UmY.cjs → TemplateReviewPanel-D9Cx0m2N.cjs} +1 -1
- package/dist/analytics.cjs +1 -1
- package/dist/analytics.d.cts +65 -1
- package/dist/analytics.d.ts +65 -1
- package/dist/analytics.js +4 -4
- package/dist/artifact-integrity.json +105 -101
- package/dist/assets-BIMVwjQe.js +231 -0
- package/dist/assets-Dfs2ElxI.cjs +1 -0
- package/dist/auto-BIOmtVhk.js +240 -0
- package/dist/auto-DDHflI9v.cjs +1 -0
- package/dist/{batch-BfZHN1do.js → batch-WzDIXJAt.js} +1 -1
- package/dist/{batch-CLpELXBl.cjs → batch-z6Aw5GEY.cjs} +1 -1
- package/dist/codes.d.cts +2 -0
- package/dist/codes.d.ts +2 -0
- package/dist/component-tree-Ca6YYfHq.js +61 -0
- package/dist/component-tree-DkGLEfZC.cjs +1 -0
- package/dist/computed-BW5a8QFk.js +612 -0
- package/dist/computed-C2GD3XcE.cjs +1 -0
- package/dist/config-Dg_o8e7m.cjs +1 -0
- package/dist/{config-BVsJXSqS.js → config-XQ4qrQ7Q.js} +66 -64
- package/dist/dataset-DL83majE.js +161 -0
- package/dist/dataset-IrlXbUvh.cjs +1 -0
- package/dist/designer-D9XAxqSc.js +5178 -0
- package/dist/designer-uCDo5XSK.cjs +2 -0
- package/dist/designer.cjs +1 -1
- package/dist/designer.d.cts +178 -3
- package/dist/designer.d.ts +178 -3
- package/dist/designer.js +1 -1
- package/dist/drill-ByN8COs_.cjs +1 -0
- package/dist/{drill-ByJviLXS.js → drill-CKW3Xtfa.js} +5 -5
- package/dist/encoding-BFMFIc4r.cjs +1 -0
- package/dist/encoding-DP_Eaf0A.js +21 -0
- package/dist/{font-loader-B_UkxpzC.cjs → font-loader-7FWVlykp.cjs} +1 -1
- package/dist/{font-loader-Q3bQjmrI.js → font-loader-CQZowp0I.js} +1 -1
- package/dist/index.cjs +8 -9
- package/dist/index.d.cts +175 -1
- package/dist/index.d.ts +175 -1
- package/dist/index.js +1343 -915
- package/dist/json-snapshot-D7PE1NsU.cjs +2 -0
- package/dist/json-snapshot-DYmEe3sO.js +1779 -0
- package/dist/matrix-JLAXlux-.js +302 -0
- package/dist/matrix-gTHpDTGm.cjs +1 -0
- package/dist/{pdf-CvvrjPQg.cjs → pdf-B8JouyYv.cjs} +48 -50
- package/dist/{pdf-BwNyeGpt.js → pdf-l3ea86di.js} +2734 -2748
- package/dist/pdf.cjs +1 -1
- package/dist/pdf.d.cts +14 -0
- package/dist/pdf.d.ts +14 -0
- package/dist/pdf.js +2 -2
- package/dist/{plugin-Ca_XZG3l.js → plugin-BBp74CQZ.js} +1 -1
- package/dist/{plugin-DHO7X8z2.cjs → plugin-CtFX9PFG.cjs} +1 -1
- package/dist/prepared-CARicKYh.js +87 -0
- package/dist/prepared-Ch1x_Gog.cjs +1 -0
- package/dist/progress-BXzlVbIp.js +29 -0
- package/dist/progress-DJBd9Rb9.cjs +1 -0
- package/dist/{progress-D-OTpEav.js → progress-Hc2vxoCs.js} +2 -2
- package/dist/protocol-B5A2uom4.cjs +1 -0
- package/dist/protocol-BaiWjq5w.js +90 -0
- package/dist/record-bindings-B86Sur_y.cjs +1 -0
- package/dist/{record-bindings-Do_b3h4V.js → record-bindings-D4TuMzHs.js} +10 -11
- package/dist/{region-binding-workflow-BMhK_TjP.js → region-binding-workflow-BNasF5kz.js} +2 -2
- package/dist/{region-binding-workflow-DIYJdCUr.cjs → region-binding-workflow-O2Cni3mF.cjs} +1 -1
- package/dist/report-encoding-worker.cjs +1 -0
- package/dist/report-encoding-worker.d.ts +1 -0
- package/dist/report-encoding-worker.js +2 -0
- package/dist/rich-text-layout-ALlMoYOG.cjs +3 -0
- package/dist/rich-text-layout-Ct5WrY1g.js +102 -0
- package/dist/runtime-DakRXui3.js +170 -0
- package/dist/runtime-dL5ygIfa.cjs +1 -0
- package/dist/sbom.cdx.json +2 -2
- package/dist/server/node.d.cts +132 -1
- package/dist/server/node.d.ts +132 -1
- package/dist/server-node.cjs +5 -1
- package/dist/server-node.js +5177 -463
- package/dist/server.cjs +1 -1
- package/dist/server.d.cts +182 -2
- package/dist/server.d.ts +182 -2
- package/dist/server.js +918 -833
- package/dist/sha256-BshdOkCC.cjs +1 -0
- package/dist/sha256-DTG-Gq8i.js +157 -0
- package/dist/style-67OqfNed.js +73 -0
- package/dist/style-C22Pbv3T.cjs +1 -0
- package/dist/style.css +1 -1
- package/dist/template-catalog-Dua8h9ZA.cjs +1 -0
- package/dist/{template-catalog-j2B1MJlL.js → template-catalog-wT1fNeAP.js} +10 -10
- package/dist/{template-fragments-DcKeiylI.cjs → template-fragments-BajTajb4.cjs} +1 -1
- package/dist/{template-fragments-BGbQLGlV.js → template-fragments-DmX5XK4N.js} +2 -2
- package/dist/template-registry-CpysHAxy.cjs +1 -0
- package/dist/{template-registry-BtaKPELV.js → template-registry-u11fPd8D.js} +389 -321
- package/dist/{textwrap-DE1kgcJB.js → textwrap-BEIg2w8y.js} +1 -1
- package/dist/textwrap-BI-yJ6Wt.cjs +4 -0
- package/dist/{tree-BX380Rr7.cjs → tree-CLpxYbKa.cjs} +1 -1
- package/dist/{tree-CjVZLRw7.js → tree-DNJorJUf.js} +1 -1
- package/dist/vue/async.d.cts +174 -2
- package/dist/vue/async.d.ts +174 -2
- package/dist/vue/index.d.cts +218 -3
- package/dist/vue/index.d.ts +218 -3
- package/dist/vue-async.cjs +1 -1
- package/dist/vue-async.js +3 -3
- package/dist/vue.cjs +1 -1
- package/dist/vue.js +7 -7
- package/dist/{workbook-session-BvToI-Fd.js → workbook-session-B8pNW24X.js} +153 -140
- package/dist/{workbook-session-Bjv1YCRK.cjs → workbook-session-DN5LSA5C.cjs} +12 -12
- package/dist/worker.cjs +1 -1
- package/dist/worker.d.cts +84 -1
- package/dist/worker.d.ts +84 -1
- package/dist/worker.js +12 -157
- package/dist/xlsx-node.cjs +33 -33
- package/dist/xlsx-node.js +1282 -1289
- package/dist/xlsx.cjs +4 -3
- package/dist/xlsx.d.cts +90 -2
- package/dist/xlsx.d.ts +90 -2
- package/dist/xlsx.js +279 -259
- package/package.json +6 -3
- package/dist/ReportPreview-ChV19HBp.js +0 -4619
- package/dist/ReportPreview-DbLvvOUT.cjs +0 -6
- package/dist/RuleEditor-C_Clasvd.js +0 -2037
- package/dist/RuleEditor-XhGHK8DE.cjs +0 -1
- package/dist/assets-B9ImAi6_.cjs +0 -1
- package/dist/assets-DEaz4qsp.js +0 -124
- package/dist/batch-BaP6pWDE.cjs +0 -1
- package/dist/batch-CGyt-b2W.js +0 -273
- package/dist/capabilities-CAh2Nrue.cjs +0 -1
- package/dist/capabilities-DskCHs3V.js +0 -69
- package/dist/computed-C-4C2S5h.js +0 -521
- package/dist/computed-CGV2a809.cjs +0 -1
- package/dist/config-D10us76d.cjs +0 -1
- package/dist/data-explanation-B8MZRYVS.js +0 -16
- package/dist/data-explanation-DE55G30w.cjs +0 -1
- package/dist/dataset-BkRmwgeJ.cjs +0 -1
- package/dist/dataset-H5pFuQGU.js +0 -121
- package/dist/defaults-DXhiM1ZD.js +0 -10
- package/dist/defaults-xhmcLLrf.cjs +0 -1
- package/dist/designer-2bDlcNXQ.js +0 -5136
- package/dist/designer-BT7XCdbW.cjs +0 -2
- package/dist/drill-DYTxuL3A.cjs +0 -1
- package/dist/grid-strokes-Cr7DwUux.cjs +0 -1
- package/dist/grid-strokes-DyyG1q_o.js +0 -53
- package/dist/json-snapshot-DFb2eWkf.js +0 -1416
- package/dist/json-snapshot-WWSGlaHG.cjs +0 -2
- package/dist/matrix-CGRGkn5s.js +0 -112
- package/dist/matrix-gEO7ZM_u.cjs +0 -1
- package/dist/prepared-CFy9B75C.cjs +0 -1
- package/dist/prepared-ajM-H-9B.js +0 -69
- package/dist/record-bindings-By_UKZ2g.cjs +0 -1
- package/dist/render-plan-7xpGrCEl.cjs +0 -1
- package/dist/render-plan-Ck6koX9L.js +0 -13
- package/dist/sha256-ArEYjaTI.cjs +0 -1
- package/dist/sha256-DPEuJ3nh.js +0 -155
- package/dist/style-CQ1PK8ZB.js +0 -67
- package/dist/style-UgIJSA1F.cjs +0 -1
- package/dist/template-catalog-FJE_c9Qe.cjs +0 -1
- package/dist/template-registry-Co1zPq5e.cjs +0 -1
- package/dist/textwrap-CWHyzkBH.cjs +0 -4
package/dist/designer.d.cts
CHANGED
|
@@ -45,6 +45,8 @@ declare interface AssetRenderBudget {
|
|
|
45
45
|
}
|
|
46
46
|
declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
|
|
47
47
|
assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
|
|
48
|
+
/** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
|
|
49
|
+
assetRegistry?: ComponentAssetRegistry;
|
|
48
50
|
assetBudget?: AssetRenderBudget;
|
|
49
51
|
/** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
|
|
50
52
|
assetFailure?: "throw" | "placeholder";
|
|
@@ -85,6 +87,14 @@ declare const BASE_TEMPLATE_EDITOR_MESSAGES: {
|
|
|
85
87
|
note: string;
|
|
86
88
|
invalid: string;
|
|
87
89
|
};
|
|
90
|
+
declare interface BrowserReportWorker {
|
|
91
|
+
postMessage(value: unknown, transfer?: Transferable[]): void;
|
|
92
|
+
terminate(): void;
|
|
93
|
+
addEventListener(type: "message", listener: (event: MessageEvent) => void): void;
|
|
94
|
+
addEventListener(type: "error" | "messageerror", listener: (event: Event) => void): void;
|
|
95
|
+
removeEventListener(type: "message", listener: (event: MessageEvent) => void): void;
|
|
96
|
+
removeEventListener(type: "error" | "messageerror", listener: (event: Event) => void): void;
|
|
97
|
+
}
|
|
88
98
|
declare interface CanvasSelection {
|
|
89
99
|
/** Ctrl/Command/Shift toggles the selection without changing the report schema. */
|
|
90
100
|
additive?: boolean;
|
|
@@ -190,6 +200,10 @@ declare type ColumnFormat_3 = {
|
|
|
190
200
|
kind: "date";
|
|
191
201
|
pattern?: string;
|
|
192
202
|
};
|
|
203
|
+
declare interface ComponentAssetRegistry {
|
|
204
|
+
rendererFor(component: Readonly<PlanComponent>): ComponentImageRenderer | undefined;
|
|
205
|
+
hasExtension(id: string, version: string, kind: string): boolean;
|
|
206
|
+
}
|
|
193
207
|
/** A literal own field of the current label record; expressions and paths are not evaluated. */
|
|
194
208
|
declare interface ComponentBinding {
|
|
195
209
|
field: string;
|
|
@@ -655,6 +669,8 @@ declare interface ExpressionOptions_3 {
|
|
|
655
669
|
divisionByZero?: "null" | "error";
|
|
656
670
|
}
|
|
657
671
|
declare interface GridCell {
|
|
672
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
673
|
+
richParagraphs?: RichParagraph[];
|
|
658
674
|
text?: string;
|
|
659
675
|
rawText?: string;
|
|
660
676
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -678,6 +694,8 @@ declare interface GridCell {
|
|
|
678
694
|
style?: ComponentStyle;
|
|
679
695
|
}
|
|
680
696
|
declare interface GridCell_2 {
|
|
697
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
698
|
+
richParagraphs?: RichParagraph_2[];
|
|
681
699
|
text?: string;
|
|
682
700
|
rawText?: string;
|
|
683
701
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -701,6 +719,8 @@ declare interface GridCell_2 {
|
|
|
701
719
|
style?: ComponentStyle_2;
|
|
702
720
|
}
|
|
703
721
|
declare interface GridCell_3 {
|
|
722
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
723
|
+
richParagraphs?: RichParagraph_3[];
|
|
704
724
|
text?: string;
|
|
705
725
|
rawText?: string;
|
|
706
726
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -1092,6 +1112,8 @@ declare interface ListGroupBy_3 {
|
|
|
1092
1112
|
}
|
|
1093
1113
|
/** defaults 层可配置项(全部可选,均有内置缺省) */
|
|
1094
1114
|
declare interface MachReportDefaults {
|
|
1115
|
+
/** Small encodes stay local; optional Worker isolation uses the same prepared plan for large output. */
|
|
1116
|
+
exportExecution?: ReportExportExecutionOptions;
|
|
1095
1117
|
drill?: ReportDrillOptions;
|
|
1096
1118
|
loadParamOptions?: ReportParamOptionsLoader;
|
|
1097
1119
|
printOptions?: ReportPrintOptions;
|
|
@@ -1520,6 +1542,57 @@ declare interface MachReportToolbarOptions {
|
|
|
1520
1542
|
/** 未传时显示全部已有出口;空数组表示不提供导出工具。 */
|
|
1521
1543
|
exportFormats?: ReportExportFormat[];
|
|
1522
1544
|
}
|
|
1545
|
+
declare interface MatrixAxisOptions {
|
|
1546
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1547
|
+
labels?: readonly string[];
|
|
1548
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1549
|
+
sort?: readonly MatrixDimensionOrder[];
|
|
1550
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1551
|
+
subtotals?: readonly number[];
|
|
1552
|
+
}
|
|
1553
|
+
declare interface MatrixAxisOptions_2 {
|
|
1554
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1555
|
+
labels?: readonly string[];
|
|
1556
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1557
|
+
sort?: readonly MatrixDimensionOrder_2[];
|
|
1558
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1559
|
+
subtotals?: readonly number[];
|
|
1560
|
+
}
|
|
1561
|
+
declare interface MatrixAxisOptions_3 {
|
|
1562
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1563
|
+
labels?: readonly string[];
|
|
1564
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1565
|
+
sort?: readonly MatrixDimensionOrder_3[];
|
|
1566
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1567
|
+
subtotals?: readonly number[];
|
|
1568
|
+
}
|
|
1569
|
+
declare type MatrixDimensionOrder = "source" | "asc" | "desc";
|
|
1570
|
+
declare type MatrixDimensionOrder_2 = "source" | "asc" | "desc";
|
|
1571
|
+
declare type MatrixDimensionOrder_3 = "source" | "asc" | "desc";
|
|
1572
|
+
declare interface MatrixHierarchyOptions {
|
|
1573
|
+
row?: MatrixAxisOptions;
|
|
1574
|
+
column?: MatrixAxisOptions;
|
|
1575
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1576
|
+
emptyLabel?: string;
|
|
1577
|
+
subtotalLabel?: string;
|
|
1578
|
+
totalLabel?: string;
|
|
1579
|
+
}
|
|
1580
|
+
declare interface MatrixHierarchyOptions_2 {
|
|
1581
|
+
row?: MatrixAxisOptions_2;
|
|
1582
|
+
column?: MatrixAxisOptions_2;
|
|
1583
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1584
|
+
emptyLabel?: string;
|
|
1585
|
+
subtotalLabel?: string;
|
|
1586
|
+
totalLabel?: string;
|
|
1587
|
+
}
|
|
1588
|
+
declare interface MatrixHierarchyOptions_3 {
|
|
1589
|
+
row?: MatrixAxisOptions_3;
|
|
1590
|
+
column?: MatrixAxisOptions_3;
|
|
1591
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1592
|
+
emptyLabel?: string;
|
|
1593
|
+
subtotalLabel?: string;
|
|
1594
|
+
totalLabel?: string;
|
|
1595
|
+
}
|
|
1523
1596
|
declare interface MatrixTableOptions {
|
|
1524
1597
|
rowFields: readonly string[];
|
|
1525
1598
|
columnFields: readonly string[];
|
|
@@ -1534,6 +1607,10 @@ declare interface MatrixTableOptions {
|
|
|
1534
1607
|
maxColumns?: number;
|
|
1535
1608
|
maxInputRows?: number;
|
|
1536
1609
|
maxCells?: number;
|
|
1610
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1611
|
+
hierarchy?: MatrixHierarchyOptions;
|
|
1612
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1613
|
+
maxAggregateUpdates?: number;
|
|
1537
1614
|
}
|
|
1538
1615
|
declare interface MatrixTableOptions_2 {
|
|
1539
1616
|
rowFields: readonly string[];
|
|
@@ -1549,6 +1626,10 @@ declare interface MatrixTableOptions_2 {
|
|
|
1549
1626
|
maxColumns?: number;
|
|
1550
1627
|
maxInputRows?: number;
|
|
1551
1628
|
maxCells?: number;
|
|
1629
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1630
|
+
hierarchy?: MatrixHierarchyOptions_2;
|
|
1631
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1632
|
+
maxAggregateUpdates?: number;
|
|
1552
1633
|
}
|
|
1553
1634
|
declare interface MatrixTableOptions_3 {
|
|
1554
1635
|
rowFields: readonly string[];
|
|
@@ -1564,6 +1645,10 @@ declare interface MatrixTableOptions_3 {
|
|
|
1564
1645
|
maxColumns?: number;
|
|
1565
1646
|
maxInputRows?: number;
|
|
1566
1647
|
maxCells?: number;
|
|
1648
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1649
|
+
hierarchy?: MatrixHierarchyOptions_3;
|
|
1650
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1651
|
+
maxAggregateUpdates?: number;
|
|
1567
1652
|
}
|
|
1568
1653
|
declare interface OutputDiagnostic {
|
|
1569
1654
|
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";
|
|
@@ -1575,6 +1660,11 @@ declare interface OutputDiagnostic {
|
|
|
1575
1660
|
componentPath?: readonly number[];
|
|
1576
1661
|
kind: string;
|
|
1577
1662
|
nid?: string;
|
|
1663
|
+
/** Declarative extension identity only; no property values or business binding data enter diagnostics. */
|
|
1664
|
+
extension?: {
|
|
1665
|
+
id: string;
|
|
1666
|
+
version: string;
|
|
1667
|
+
};
|
|
1578
1668
|
message: string;
|
|
1579
1669
|
}
|
|
1580
1670
|
declare interface OutputDiagnostic_2 {
|
|
@@ -1587,6 +1677,11 @@ declare interface OutputDiagnostic_2 {
|
|
|
1587
1677
|
componentPath?: readonly number[];
|
|
1588
1678
|
kind: string;
|
|
1589
1679
|
nid?: string;
|
|
1680
|
+
/** Declarative extension identity only; no property values or business binding data enter diagnostics. */
|
|
1681
|
+
extension?: {
|
|
1682
|
+
id: string;
|
|
1683
|
+
version: string;
|
|
1684
|
+
};
|
|
1590
1685
|
message: string;
|
|
1591
1686
|
}
|
|
1592
1687
|
declare interface OutputDiagnosticOptions extends OutputTaskOptions {
|
|
@@ -2356,8 +2451,36 @@ declare interface ReportEditResult {
|
|
|
2356
2451
|
/** Any conflict rejects the entire client batch. A server must also transact atomically. */
|
|
2357
2452
|
conflicts?: readonly ReportEditConflict[];
|
|
2358
2453
|
}
|
|
2454
|
+
declare interface ReportExportDecision {
|
|
2455
|
+
mode: "local" | "worker";
|
|
2456
|
+
reason: ReportExportDecisionReason;
|
|
2457
|
+
/** Lower bounds: traversal stops as soon as isolation is warranted. No font or image hashing. */
|
|
2458
|
+
estimate: {
|
|
2459
|
+
pages: number;
|
|
2460
|
+
cells: number;
|
|
2461
|
+
bytes: number;
|
|
2462
|
+
};
|
|
2463
|
+
hardCancellation: boolean;
|
|
2464
|
+
}
|
|
2465
|
+
declare type ReportExportDecisionReason = "small-task" | "threshold" | "scan-limit" | "explicit-local" | "explicit-worker" | "worker-unavailable" | "worker-start-failed" | "nonserializable-options";
|
|
2466
|
+
declare interface ReportExportExecutionOptions {
|
|
2467
|
+
mode?: "auto" | "worker" | "local";
|
|
2468
|
+
/** A fresh bundler-managed module Worker for every call; never a shared worker. */
|
|
2469
|
+
workerFactory?: () => BrowserReportWorker;
|
|
2470
|
+
thresholds?: ReportExportThresholds;
|
|
2471
|
+
/** Auto only. Startup unavailability may use local; encoding failures never retry. */
|
|
2472
|
+
fallback?: "local" | "error";
|
|
2473
|
+
timeoutMs?: number;
|
|
2474
|
+
budget?: ReportRuntimeBudget;
|
|
2475
|
+
onDecision?: (decision: ReportExportDecision) => void;
|
|
2476
|
+
}
|
|
2359
2477
|
/** 输出能力仍由宿主授权;工具偏好只决定当前预览实例的可见与启用状态。 */
|
|
2360
2478
|
declare type ReportExportFormat = "html" | "pdf" | "xlsx" | "png" | "word";
|
|
2479
|
+
declare interface ReportExportThresholds {
|
|
2480
|
+
cells?: number;
|
|
2481
|
+
pages?: number;
|
|
2482
|
+
bytes?: number;
|
|
2483
|
+
}
|
|
2361
2484
|
declare type ReportExpression = {
|
|
2362
2485
|
field: string;
|
|
2363
2486
|
} | {
|
|
@@ -2394,7 +2517,19 @@ declare type ReportExpression_3 = {
|
|
|
2394
2517
|
op: "add" | "subtract" | "multiply" | "divide" | "coalesce";
|
|
2395
2518
|
args: readonly ReportExpression_3[];
|
|
2396
2519
|
};
|
|
2397
|
-
declare
|
|
2520
|
+
declare type ReportFieldAggregation = "sum" | "avg" | "min" | "max" | "count" | "none";
|
|
2521
|
+
declare type ReportFieldAggregation_2 = "sum" | "avg" | "min" | "max" | "count" | "none";
|
|
2522
|
+
declare interface ReportFieldCalculation {
|
|
2523
|
+
/** Business-owned explanation, never executable JavaScript or an inferred business formula. */
|
|
2524
|
+
description: string;
|
|
2525
|
+
dependsOn: readonly string[];
|
|
2526
|
+
}
|
|
2527
|
+
declare interface ReportFieldCalculation_2 {
|
|
2528
|
+
/** Business-owned explanation, never executable JavaScript or an inferred business formula. */
|
|
2529
|
+
description: string;
|
|
2530
|
+
dependsOn: readonly string[];
|
|
2531
|
+
}
|
|
2532
|
+
declare interface ReportFieldContract extends ReportFieldSemantics {
|
|
2398
2533
|
field: string;
|
|
2399
2534
|
label?: string;
|
|
2400
2535
|
type: "text" | "number" | "boolean" | "date" | "decimal";
|
|
@@ -2408,7 +2543,7 @@ declare interface ReportFieldContract {
|
|
|
2408
2543
|
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
2409
2544
|
unit?: string;
|
|
2410
2545
|
}
|
|
2411
|
-
declare interface ReportFieldContract_2 {
|
|
2546
|
+
declare interface ReportFieldContract_2 extends ReportFieldSemantics_2 {
|
|
2412
2547
|
field: string;
|
|
2413
2548
|
label?: string;
|
|
2414
2549
|
type: "text" | "number" | "boolean" | "date" | "decimal";
|
|
@@ -2422,6 +2557,26 @@ declare interface ReportFieldContract_2 {
|
|
|
2422
2557
|
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
2423
2558
|
unit?: string;
|
|
2424
2559
|
}
|
|
2560
|
+
declare interface ReportFieldSemantics {
|
|
2561
|
+
description?: string;
|
|
2562
|
+
/** Explicit meaning of null/missing; does not convert blanks into zero. */
|
|
2563
|
+
missingMeaning?: string;
|
|
2564
|
+
/** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
|
|
2565
|
+
aggregation?: ReportFieldAggregation;
|
|
2566
|
+
/** Shared presentation only; raw values and calculation precision remain unchanged. */
|
|
2567
|
+
format?: ColumnFormat;
|
|
2568
|
+
calculation?: ReportFieldCalculation;
|
|
2569
|
+
}
|
|
2570
|
+
declare interface ReportFieldSemantics_2 {
|
|
2571
|
+
description?: string;
|
|
2572
|
+
/** Explicit meaning of null/missing; does not convert blanks into zero. */
|
|
2573
|
+
missingMeaning?: string;
|
|
2574
|
+
/** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
|
|
2575
|
+
aggregation?: ReportFieldAggregation_2;
|
|
2576
|
+
/** Shared presentation only; raw values and calculation precision remain unchanged. */
|
|
2577
|
+
format?: ColumnFormat_2;
|
|
2578
|
+
calculation?: ReportFieldCalculation_2;
|
|
2579
|
+
}
|
|
2425
2580
|
declare interface ReportFlowBand {
|
|
2426
2581
|
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2427
2582
|
componentIds: string[];
|
|
@@ -2624,6 +2779,15 @@ declare interface ReportPrintOptions {
|
|
|
2624
2779
|
/** Physical translation only; no scaling or mutation of the report data/plan. */
|
|
2625
2780
|
calibration?: ReportPrintCalibration;
|
|
2626
2781
|
}
|
|
2782
|
+
declare interface ReportRuntimeBudget {
|
|
2783
|
+
maxRows?: number;
|
|
2784
|
+
maxPages?: number;
|
|
2785
|
+
maxCells?: number;
|
|
2786
|
+
maxOutputBytes?: number;
|
|
2787
|
+
/** Bound the plain JSON snapshot accepted by exportPrepared (default 64 MB). */
|
|
2788
|
+
maxPreparedBytes?: number;
|
|
2789
|
+
maxDurationMs?: number;
|
|
2790
|
+
}
|
|
2627
2791
|
declare interface ReportTemplate {
|
|
2628
2792
|
schemaVersion?: string;
|
|
2629
2793
|
/** 参数定义(可选;宿主也可经 ReportPreview 的 paramDefs prop 提供,prop 优先) */
|
|
@@ -2723,6 +2887,7 @@ export declare const ReportTemplateEditor: DefineComponent<TemplateEditorOptions
|
|
|
2723
2887
|
guardChanges: (reason?: TemplateEditorBeforeDiscardContext["reason"], replacement?: ReportTemplateDocument) => Promise<boolean>;
|
|
2724
2888
|
reset: () => Promise<void>;
|
|
2725
2889
|
save: () => Promise<void>;
|
|
2890
|
+
insertComponent: (component: TemplateComponent) => boolean;
|
|
2726
2891
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
2727
2892
|
"update:modelValue": (document: ReportTemplateDocument) => any;
|
|
2728
2893
|
saved: (document: ReportTemplateDocument) => any;
|
|
@@ -2849,6 +3014,14 @@ export declare const RULE_EDITOR_MESSAGES: {
|
|
|
2849
3014
|
pending: string;
|
|
2850
3015
|
detail: string;
|
|
2851
3016
|
matrix: string;
|
|
3017
|
+
matrixHierarchy: string;
|
|
3018
|
+
matrixHierarchyHint: string;
|
|
3019
|
+
matrixSort: string;
|
|
3020
|
+
matrixSourceOrder: string;
|
|
3021
|
+
matrixAscending: string;
|
|
3022
|
+
matrixDescending: string;
|
|
3023
|
+
matrixPrefixSubtotal: string;
|
|
3024
|
+
matrixEmptyLabel: string;
|
|
2852
3025
|
tree: string;
|
|
2853
3026
|
treeInput: string;
|
|
2854
3027
|
treeFlat: string;
|
|
@@ -3519,6 +3692,8 @@ export declare interface TemplateEditorConflictOptions {
|
|
|
3519
3692
|
keepCopy?: (document: ReportTemplateDocument, context: TemplateCopyContext) => Promise<void>;
|
|
3520
3693
|
}
|
|
3521
3694
|
export declare interface TemplateEditorController {
|
|
3695
|
+
/** Insert a native/registered component through validation, geometry constraints and undo history. */
|
|
3696
|
+
insertComponent(component: TemplateComponent): boolean;
|
|
3522
3697
|
readonly pendingLocalChanges: boolean;
|
|
3523
3698
|
readonly saving?: boolean;
|
|
3524
3699
|
readonly blocked?: boolean;
|
|
@@ -3743,7 +3918,7 @@ declare type XlsxImageOptions = ImageMediaOptions;
|
|
|
3743
3918
|
* 目标是"财务能直接用的对账表"而非复刻版面)
|
|
3744
3919
|
* - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
|
|
3745
3920
|
*/
|
|
3746
|
-
declare interface XlsxRenderOptions extends
|
|
3921
|
+
declare interface XlsxRenderOptions extends AssetRenderOptions, XlsxImageOptions {
|
|
3747
3922
|
/** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
|
|
3748
3923
|
sheetName?: (sheetIndex: number) => string;
|
|
3749
3924
|
/** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
|
package/dist/designer.d.ts
CHANGED
|
@@ -45,6 +45,8 @@ declare interface AssetRenderBudget {
|
|
|
45
45
|
}
|
|
46
46
|
declare interface AssetRenderOptions extends OutputDiagnosticOptions, ImageMediaOptions {
|
|
47
47
|
assetRenderers?: Partial<Record<ImageComponentKind, ComponentImageRenderer>>;
|
|
48
|
+
/** Explicit id/version registry; unbound components continue using assetRenderers by kind. */
|
|
49
|
+
assetRegistry?: ComponentAssetRegistry;
|
|
48
50
|
assetBudget?: AssetRenderBudget;
|
|
49
51
|
/** Default throw prevents an incomplete export; placeholder retains the component and emits diagnostics. */
|
|
50
52
|
assetFailure?: "throw" | "placeholder";
|
|
@@ -85,6 +87,14 @@ declare const BASE_TEMPLATE_EDITOR_MESSAGES: {
|
|
|
85
87
|
note: string;
|
|
86
88
|
invalid: string;
|
|
87
89
|
};
|
|
90
|
+
declare interface BrowserReportWorker {
|
|
91
|
+
postMessage(value: unknown, transfer?: Transferable[]): void;
|
|
92
|
+
terminate(): void;
|
|
93
|
+
addEventListener(type: "message", listener: (event: MessageEvent) => void): void;
|
|
94
|
+
addEventListener(type: "error" | "messageerror", listener: (event: Event) => void): void;
|
|
95
|
+
removeEventListener(type: "message", listener: (event: MessageEvent) => void): void;
|
|
96
|
+
removeEventListener(type: "error" | "messageerror", listener: (event: Event) => void): void;
|
|
97
|
+
}
|
|
88
98
|
declare interface CanvasSelection {
|
|
89
99
|
/** Ctrl/Command/Shift toggles the selection without changing the report schema. */
|
|
90
100
|
additive?: boolean;
|
|
@@ -190,6 +200,10 @@ declare type ColumnFormat_3 = {
|
|
|
190
200
|
kind: "date";
|
|
191
201
|
pattern?: string;
|
|
192
202
|
};
|
|
203
|
+
declare interface ComponentAssetRegistry {
|
|
204
|
+
rendererFor(component: Readonly<PlanComponent>): ComponentImageRenderer | undefined;
|
|
205
|
+
hasExtension(id: string, version: string, kind: string): boolean;
|
|
206
|
+
}
|
|
193
207
|
/** A literal own field of the current label record; expressions and paths are not evaluated. */
|
|
194
208
|
declare interface ComponentBinding {
|
|
195
209
|
field: string;
|
|
@@ -655,6 +669,8 @@ declare interface ExpressionOptions_3 {
|
|
|
655
669
|
divisionByZero?: "null" | "error";
|
|
656
670
|
}
|
|
657
671
|
declare interface GridCell {
|
|
672
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
673
|
+
richParagraphs?: RichParagraph[];
|
|
658
674
|
text?: string;
|
|
659
675
|
rawText?: string;
|
|
660
676
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -678,6 +694,8 @@ declare interface GridCell {
|
|
|
678
694
|
style?: ComponentStyle;
|
|
679
695
|
}
|
|
680
696
|
declare interface GridCell_2 {
|
|
697
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
698
|
+
richParagraphs?: RichParagraph_2[];
|
|
681
699
|
text?: string;
|
|
682
700
|
rawText?: string;
|
|
683
701
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -701,6 +719,8 @@ declare interface GridCell_2 {
|
|
|
701
719
|
style?: ComponentStyle_2;
|
|
702
720
|
}
|
|
703
721
|
declare interface GridCell_3 {
|
|
722
|
+
/** Styled cell content; text remains a plain-text fallback. Imported rich cells are read-only. */
|
|
723
|
+
richParagraphs?: RichParagraph_3[];
|
|
704
724
|
text?: string;
|
|
705
725
|
rawText?: string;
|
|
706
726
|
/** 原始值,仅供 Excel raw 模式消费;不参与预览、分页与 PDF 绘制。 */
|
|
@@ -1092,6 +1112,8 @@ declare interface ListGroupBy_3 {
|
|
|
1092
1112
|
}
|
|
1093
1113
|
/** defaults 层可配置项(全部可选,均有内置缺省) */
|
|
1094
1114
|
declare interface MachReportDefaults {
|
|
1115
|
+
/** Small encodes stay local; optional Worker isolation uses the same prepared plan for large output. */
|
|
1116
|
+
exportExecution?: ReportExportExecutionOptions;
|
|
1095
1117
|
drill?: ReportDrillOptions;
|
|
1096
1118
|
loadParamOptions?: ReportParamOptionsLoader;
|
|
1097
1119
|
printOptions?: ReportPrintOptions;
|
|
@@ -1520,6 +1542,57 @@ declare interface MachReportToolbarOptions {
|
|
|
1520
1542
|
/** 未传时显示全部已有出口;空数组表示不提供导出工具。 */
|
|
1521
1543
|
exportFormats?: ReportExportFormat[];
|
|
1522
1544
|
}
|
|
1545
|
+
declare interface MatrixAxisOptions {
|
|
1546
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1547
|
+
labels?: readonly string[];
|
|
1548
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1549
|
+
sort?: readonly MatrixDimensionOrder[];
|
|
1550
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1551
|
+
subtotals?: readonly number[];
|
|
1552
|
+
}
|
|
1553
|
+
declare interface MatrixAxisOptions_2 {
|
|
1554
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1555
|
+
labels?: readonly string[];
|
|
1556
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1557
|
+
sort?: readonly MatrixDimensionOrder_2[];
|
|
1558
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1559
|
+
subtotals?: readonly number[];
|
|
1560
|
+
}
|
|
1561
|
+
declare interface MatrixAxisOptions_3 {
|
|
1562
|
+
/** Display names in the same outer-to-inner order as the dimension fields. */
|
|
1563
|
+
labels?: readonly string[];
|
|
1564
|
+
/** Per-level sibling order; omitted levels retain first-seen order. */
|
|
1565
|
+
sort?: readonly MatrixDimensionOrder_3[];
|
|
1566
|
+
/** One-based prefix depths. Leaf depths are not subtotals. */
|
|
1567
|
+
subtotals?: readonly number[];
|
|
1568
|
+
}
|
|
1569
|
+
declare type MatrixDimensionOrder = "source" | "asc" | "desc";
|
|
1570
|
+
declare type MatrixDimensionOrder_2 = "source" | "asc" | "desc";
|
|
1571
|
+
declare type MatrixDimensionOrder_3 = "source" | "asc" | "desc";
|
|
1572
|
+
declare interface MatrixHierarchyOptions {
|
|
1573
|
+
row?: MatrixAxisOptions;
|
|
1574
|
+
column?: MatrixAxisOptions;
|
|
1575
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1576
|
+
emptyLabel?: string;
|
|
1577
|
+
subtotalLabel?: string;
|
|
1578
|
+
totalLabel?: string;
|
|
1579
|
+
}
|
|
1580
|
+
declare interface MatrixHierarchyOptions_2 {
|
|
1581
|
+
row?: MatrixAxisOptions_2;
|
|
1582
|
+
column?: MatrixAxisOptions_2;
|
|
1583
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1584
|
+
emptyLabel?: string;
|
|
1585
|
+
subtotalLabel?: string;
|
|
1586
|
+
totalLabel?: string;
|
|
1587
|
+
}
|
|
1588
|
+
declare interface MatrixHierarchyOptions_3 {
|
|
1589
|
+
row?: MatrixAxisOptions_3;
|
|
1590
|
+
column?: MatrixAxisOptions_3;
|
|
1591
|
+
/** Only null/missing values use this label; empty strings and zero stay distinct. */
|
|
1592
|
+
emptyLabel?: string;
|
|
1593
|
+
subtotalLabel?: string;
|
|
1594
|
+
totalLabel?: string;
|
|
1595
|
+
}
|
|
1523
1596
|
declare interface MatrixTableOptions {
|
|
1524
1597
|
rowFields: readonly string[];
|
|
1525
1598
|
columnFields: readonly string[];
|
|
@@ -1534,6 +1607,10 @@ declare interface MatrixTableOptions {
|
|
|
1534
1607
|
maxColumns?: number;
|
|
1535
1608
|
maxInputRows?: number;
|
|
1536
1609
|
maxCells?: number;
|
|
1610
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1611
|
+
hierarchy?: MatrixHierarchyOptions;
|
|
1612
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1613
|
+
maxAggregateUpdates?: number;
|
|
1537
1614
|
}
|
|
1538
1615
|
declare interface MatrixTableOptions_2 {
|
|
1539
1616
|
rowFields: readonly string[];
|
|
@@ -1549,6 +1626,10 @@ declare interface MatrixTableOptions_2 {
|
|
|
1549
1626
|
maxColumns?: number;
|
|
1550
1627
|
maxInputRows?: number;
|
|
1551
1628
|
maxCells?: number;
|
|
1629
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1630
|
+
hierarchy?: MatrixHierarchyOptions_2;
|
|
1631
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1632
|
+
maxAggregateUpdates?: number;
|
|
1552
1633
|
}
|
|
1553
1634
|
declare interface MatrixTableOptions_3 {
|
|
1554
1635
|
rowFields: readonly string[];
|
|
@@ -1564,6 +1645,10 @@ declare interface MatrixTableOptions_3 {
|
|
|
1564
1645
|
maxColumns?: number;
|
|
1565
1646
|
maxInputRows?: number;
|
|
1566
1647
|
maxCells?: number;
|
|
1648
|
+
/** Opt-in hierarchical dimensions, physical merged headers and prefix subtotals. */
|
|
1649
|
+
hierarchy?: MatrixHierarchyOptions_3;
|
|
1650
|
+
/** Hierarchical aggregate work, checked before measure reads; default 10 million updates. */
|
|
1651
|
+
maxAggregateUpdates?: number;
|
|
1567
1652
|
}
|
|
1568
1653
|
declare interface OutputDiagnostic {
|
|
1569
1654
|
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";
|
|
@@ -1575,6 +1660,11 @@ declare interface OutputDiagnostic {
|
|
|
1575
1660
|
componentPath?: readonly number[];
|
|
1576
1661
|
kind: string;
|
|
1577
1662
|
nid?: string;
|
|
1663
|
+
/** Declarative extension identity only; no property values or business binding data enter diagnostics. */
|
|
1664
|
+
extension?: {
|
|
1665
|
+
id: string;
|
|
1666
|
+
version: string;
|
|
1667
|
+
};
|
|
1578
1668
|
message: string;
|
|
1579
1669
|
}
|
|
1580
1670
|
declare interface OutputDiagnostic_2 {
|
|
@@ -1587,6 +1677,11 @@ declare interface OutputDiagnostic_2 {
|
|
|
1587
1677
|
componentPath?: readonly number[];
|
|
1588
1678
|
kind: string;
|
|
1589
1679
|
nid?: string;
|
|
1680
|
+
/** Declarative extension identity only; no property values or business binding data enter diagnostics. */
|
|
1681
|
+
extension?: {
|
|
1682
|
+
id: string;
|
|
1683
|
+
version: string;
|
|
1684
|
+
};
|
|
1590
1685
|
message: string;
|
|
1591
1686
|
}
|
|
1592
1687
|
declare interface OutputDiagnosticOptions extends OutputTaskOptions {
|
|
@@ -2356,8 +2451,36 @@ declare interface ReportEditResult {
|
|
|
2356
2451
|
/** Any conflict rejects the entire client batch. A server must also transact atomically. */
|
|
2357
2452
|
conflicts?: readonly ReportEditConflict[];
|
|
2358
2453
|
}
|
|
2454
|
+
declare interface ReportExportDecision {
|
|
2455
|
+
mode: "local" | "worker";
|
|
2456
|
+
reason: ReportExportDecisionReason;
|
|
2457
|
+
/** Lower bounds: traversal stops as soon as isolation is warranted. No font or image hashing. */
|
|
2458
|
+
estimate: {
|
|
2459
|
+
pages: number;
|
|
2460
|
+
cells: number;
|
|
2461
|
+
bytes: number;
|
|
2462
|
+
};
|
|
2463
|
+
hardCancellation: boolean;
|
|
2464
|
+
}
|
|
2465
|
+
declare type ReportExportDecisionReason = "small-task" | "threshold" | "scan-limit" | "explicit-local" | "explicit-worker" | "worker-unavailable" | "worker-start-failed" | "nonserializable-options";
|
|
2466
|
+
declare interface ReportExportExecutionOptions {
|
|
2467
|
+
mode?: "auto" | "worker" | "local";
|
|
2468
|
+
/** A fresh bundler-managed module Worker for every call; never a shared worker. */
|
|
2469
|
+
workerFactory?: () => BrowserReportWorker;
|
|
2470
|
+
thresholds?: ReportExportThresholds;
|
|
2471
|
+
/** Auto only. Startup unavailability may use local; encoding failures never retry. */
|
|
2472
|
+
fallback?: "local" | "error";
|
|
2473
|
+
timeoutMs?: number;
|
|
2474
|
+
budget?: ReportRuntimeBudget;
|
|
2475
|
+
onDecision?: (decision: ReportExportDecision) => void;
|
|
2476
|
+
}
|
|
2359
2477
|
/** 输出能力仍由宿主授权;工具偏好只决定当前预览实例的可见与启用状态。 */
|
|
2360
2478
|
declare type ReportExportFormat = "html" | "pdf" | "xlsx" | "png" | "word";
|
|
2479
|
+
declare interface ReportExportThresholds {
|
|
2480
|
+
cells?: number;
|
|
2481
|
+
pages?: number;
|
|
2482
|
+
bytes?: number;
|
|
2483
|
+
}
|
|
2361
2484
|
declare type ReportExpression = {
|
|
2362
2485
|
field: string;
|
|
2363
2486
|
} | {
|
|
@@ -2394,7 +2517,19 @@ declare type ReportExpression_3 = {
|
|
|
2394
2517
|
op: "add" | "subtract" | "multiply" | "divide" | "coalesce";
|
|
2395
2518
|
args: readonly ReportExpression_3[];
|
|
2396
2519
|
};
|
|
2397
|
-
declare
|
|
2520
|
+
declare type ReportFieldAggregation = "sum" | "avg" | "min" | "max" | "count" | "none";
|
|
2521
|
+
declare type ReportFieldAggregation_2 = "sum" | "avg" | "min" | "max" | "count" | "none";
|
|
2522
|
+
declare interface ReportFieldCalculation {
|
|
2523
|
+
/** Business-owned explanation, never executable JavaScript or an inferred business formula. */
|
|
2524
|
+
description: string;
|
|
2525
|
+
dependsOn: readonly string[];
|
|
2526
|
+
}
|
|
2527
|
+
declare interface ReportFieldCalculation_2 {
|
|
2528
|
+
/** Business-owned explanation, never executable JavaScript or an inferred business formula. */
|
|
2529
|
+
description: string;
|
|
2530
|
+
dependsOn: readonly string[];
|
|
2531
|
+
}
|
|
2532
|
+
declare interface ReportFieldContract extends ReportFieldSemantics {
|
|
2398
2533
|
field: string;
|
|
2399
2534
|
label?: string;
|
|
2400
2535
|
type: "text" | "number" | "boolean" | "date" | "decimal";
|
|
@@ -2408,7 +2543,7 @@ declare interface ReportFieldContract {
|
|
|
2408
2543
|
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
2409
2544
|
unit?: string;
|
|
2410
2545
|
}
|
|
2411
|
-
declare interface ReportFieldContract_2 {
|
|
2546
|
+
declare interface ReportFieldContract_2 extends ReportFieldSemantics_2 {
|
|
2412
2547
|
field: string;
|
|
2413
2548
|
label?: string;
|
|
2414
2549
|
type: "text" | "number" | "boolean" | "date" | "decimal";
|
|
@@ -2422,6 +2557,26 @@ declare interface ReportFieldContract_2 {
|
|
|
2422
2557
|
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
2423
2558
|
unit?: string;
|
|
2424
2559
|
}
|
|
2560
|
+
declare interface ReportFieldSemantics {
|
|
2561
|
+
description?: string;
|
|
2562
|
+
/** Explicit meaning of null/missing; does not convert blanks into zero. */
|
|
2563
|
+
missingMeaning?: string;
|
|
2564
|
+
/** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
|
|
2565
|
+
aggregation?: ReportFieldAggregation;
|
|
2566
|
+
/** Shared presentation only; raw values and calculation precision remain unchanged. */
|
|
2567
|
+
format?: ColumnFormat;
|
|
2568
|
+
calculation?: ReportFieldCalculation;
|
|
2569
|
+
}
|
|
2570
|
+
declare interface ReportFieldSemantics_2 {
|
|
2571
|
+
description?: string;
|
|
2572
|
+
/** Explicit meaning of null/missing; does not convert blanks into zero. */
|
|
2573
|
+
missingMeaning?: string;
|
|
2574
|
+
/** Recommended aggregation; none marks non-additive measures such as ratios. No aggregation runs implicitly. */
|
|
2575
|
+
aggregation?: ReportFieldAggregation_2;
|
|
2576
|
+
/** Shared presentation only; raw values and calculation precision remain unchanged. */
|
|
2577
|
+
format?: ColumnFormat_2;
|
|
2578
|
+
calculation?: ReportFieldCalculation_2;
|
|
2579
|
+
}
|
|
2425
2580
|
declare interface ReportFlowBand {
|
|
2426
2581
|
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2427
2582
|
componentIds: string[];
|
|
@@ -2624,6 +2779,15 @@ declare interface ReportPrintOptions {
|
|
|
2624
2779
|
/** Physical translation only; no scaling or mutation of the report data/plan. */
|
|
2625
2780
|
calibration?: ReportPrintCalibration;
|
|
2626
2781
|
}
|
|
2782
|
+
declare interface ReportRuntimeBudget {
|
|
2783
|
+
maxRows?: number;
|
|
2784
|
+
maxPages?: number;
|
|
2785
|
+
maxCells?: number;
|
|
2786
|
+
maxOutputBytes?: number;
|
|
2787
|
+
/** Bound the plain JSON snapshot accepted by exportPrepared (default 64 MB). */
|
|
2788
|
+
maxPreparedBytes?: number;
|
|
2789
|
+
maxDurationMs?: number;
|
|
2790
|
+
}
|
|
2627
2791
|
declare interface ReportTemplate {
|
|
2628
2792
|
schemaVersion?: string;
|
|
2629
2793
|
/** 参数定义(可选;宿主也可经 ReportPreview 的 paramDefs prop 提供,prop 优先) */
|
|
@@ -2723,6 +2887,7 @@ export declare const ReportTemplateEditor: DefineComponent<TemplateEditorOptions
|
|
|
2723
2887
|
guardChanges: (reason?: TemplateEditorBeforeDiscardContext["reason"], replacement?: ReportTemplateDocument) => Promise<boolean>;
|
|
2724
2888
|
reset: () => Promise<void>;
|
|
2725
2889
|
save: () => Promise<void>;
|
|
2890
|
+
insertComponent: (component: TemplateComponent) => boolean;
|
|
2726
2891
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
2727
2892
|
"update:modelValue": (document: ReportTemplateDocument) => any;
|
|
2728
2893
|
saved: (document: ReportTemplateDocument) => any;
|
|
@@ -2849,6 +3014,14 @@ export declare const RULE_EDITOR_MESSAGES: {
|
|
|
2849
3014
|
pending: string;
|
|
2850
3015
|
detail: string;
|
|
2851
3016
|
matrix: string;
|
|
3017
|
+
matrixHierarchy: string;
|
|
3018
|
+
matrixHierarchyHint: string;
|
|
3019
|
+
matrixSort: string;
|
|
3020
|
+
matrixSourceOrder: string;
|
|
3021
|
+
matrixAscending: string;
|
|
3022
|
+
matrixDescending: string;
|
|
3023
|
+
matrixPrefixSubtotal: string;
|
|
3024
|
+
matrixEmptyLabel: string;
|
|
2852
3025
|
tree: string;
|
|
2853
3026
|
treeInput: string;
|
|
2854
3027
|
treeFlat: string;
|
|
@@ -3519,6 +3692,8 @@ export declare interface TemplateEditorConflictOptions {
|
|
|
3519
3692
|
keepCopy?: (document: ReportTemplateDocument, context: TemplateCopyContext) => Promise<void>;
|
|
3520
3693
|
}
|
|
3521
3694
|
export declare interface TemplateEditorController {
|
|
3695
|
+
/** Insert a native/registered component through validation, geometry constraints and undo history. */
|
|
3696
|
+
insertComponent(component: TemplateComponent): boolean;
|
|
3522
3697
|
readonly pendingLocalChanges: boolean;
|
|
3523
3698
|
readonly saving?: boolean;
|
|
3524
3699
|
readonly blocked?: boolean;
|
|
@@ -3743,7 +3918,7 @@ declare type XlsxImageOptions = ImageMediaOptions;
|
|
|
3743
3918
|
* 目标是"财务能直接用的对账表"而非复刻版面)
|
|
3744
3919
|
* - 原生 richText 保留基础字形;未支持组件、段落专有排版与单元格嵌套组件计入 diagnostics / warnings
|
|
3745
3920
|
*/
|
|
3746
|
-
declare interface XlsxRenderOptions extends
|
|
3921
|
+
declare interface XlsxRenderOptions extends AssetRenderOptions, XlsxImageOptions {
|
|
3747
3922
|
/** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
|
|
3748
3923
|
sheetName?: (sheetIndex: number) => string;
|
|
3749
3924
|
/** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
|
package/dist/designer.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "vue";
|
|
2
|
-
import { E as S, c as T, P as s, d as R, R as t, D as A, e as _, f as r, g as M, h as l, i as P, a as i, b as p, j as m, T as o, k as G, l as L, m as n, n as D } from "./designer-
|
|
2
|
+
import { E as S, c as T, P as s, d as R, R as t, D as A, e as _, f as r, g as M, h as l, i as P, a as i, b as p, j as m, T as o, k as G, l as L, m as n, n as D } from "./designer-D9XAxqSc.js";
|
|
3
3
|
export {
|
|
4
4
|
S as EXCEL_BINDING_MESSAGES,
|
|
5
5
|
T as ExcelBindingWizard,
|