@agile-team/mach-report 2.5.0 → 2.7.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 +126 -16
- package/dist/ReportPreview-BdvoqdOd.cjs +6 -0
- package/dist/ReportPreview-COFkbeEM.js +3719 -0
- package/dist/_plugin-vue_export-helper-BHFhmbuH.cjs +1 -0
- package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
- package/dist/analytics.cjs +1 -0
- package/dist/analytics.d.cts +276 -0
- package/dist/analytics.d.ts +276 -0
- package/dist/analytics.js +223 -0
- package/dist/assets-B9qJku3V.js +160 -0
- package/dist/assets-RZan7EyL.cjs +1 -0
- package/dist/capabilities-joSutDF8.js +63 -0
- package/dist/capabilities-xGTpnPjJ.cjs +1 -0
- package/dist/designer.cjs +1 -0
- package/dist/designer.d.cts +869 -0
- package/dist/designer.d.ts +869 -0
- package/dist/designer.js +628 -0
- package/dist/index.cjs +8 -5
- package/dist/index.d.cts +497 -9
- package/dist/index.d.ts +497 -9
- package/dist/index.js +1088 -1499
- package/dist/param-validation-BWNjLcN0.js +116 -0
- package/dist/param-validation-CiTxFeZ8.cjs +1 -0
- package/dist/pdf.cjs +48 -48
- package/dist/pdf.d.cts +119 -1
- package/dist/pdf.d.ts +119 -1
- package/dist/pdf.js +3932 -3868
- package/dist/{plugin-DMPLDpBY.cjs → plugin-9t_ZFwhz.cjs} +1 -1
- package/dist/{plugin-DDLcFWlk.js → plugin-s8Ay8kKk.js} +2 -2
- package/dist/progress-DD964VAB.js +102 -0
- package/dist/progress-KvhwXZ1Q.cjs +1 -0
- package/dist/render-plan-CckPEQyf.cjs +1 -0
- package/dist/{render-plan-CXBWRog4.js → render-plan-uzZYYSy1.js} +11 -10
- package/dist/report-params-B_VCihAh.js +12 -0
- package/dist/report-params-CjWrjPl6.cjs +1 -0
- package/dist/report-source-BXHNy_AD.js +755 -0
- package/dist/report-source-CCAvFE3t.cjs +1 -0
- package/dist/server/node.d.cts +320 -0
- package/dist/server/node.d.ts +320 -0
- package/dist/server-node.cjs +1 -0
- package/dist/server-node.js +303 -0
- package/dist/server.cjs +1 -0
- package/dist/server.d.cts +668 -0
- package/dist/server.d.ts +668 -0
- package/dist/server.js +245 -0
- package/dist/style-CpwiOPyB.cjs +1 -0
- package/dist/style-Dv5o_x6b.js +67 -0
- package/dist/style.css +1 -1
- package/dist/task-events-DQ276fn2.cjs +1 -0
- package/dist/task-events-Dpsvf_t2.js +47 -0
- package/dist/template-registry-DWExx0gU.cjs +1 -0
- package/dist/template-registry-NpOakidD.js +354 -0
- package/dist/textwrap-CnGsEum6.cjs +4 -0
- package/dist/textwrap-DOl04hCQ.js +110 -0
- package/dist/validate-DfHPD8wX.cjs +1 -0
- package/dist/validate-S6CgIm5d.js +148 -0
- package/dist/vue/async.d.cts +1507 -1538
- package/dist/vue/async.d.ts +1507 -1538
- package/dist/vue/index.d.cts +2376 -2347
- package/dist/vue/index.d.ts +2376 -2347
- package/dist/vue-async.cjs +1 -1
- package/dist/vue-async.js +3 -3
- package/dist/vue.cjs +1 -1
- package/dist/vue.js +184 -75
- package/dist/worker.cjs +1 -0
- package/dist/worker.d.cts +325 -0
- package/dist/worker.d.ts +325 -0
- package/dist/worker.js +158 -0
- package/dist/xlsx/node.d.cts +47 -0
- package/dist/xlsx/node.d.ts +47 -0
- package/dist/xlsx-node.cjs +221 -0
- package/dist/xlsx-node.js +36409 -0
- package/dist/xlsx.cjs +20 -20
- package/dist/xlsx.d.cts +87 -2
- package/dist/xlsx.d.ts +87 -2
- package/dist/xlsx.js +5987 -5840
- package/package.json +63 -3
- package/dist/ReportPreview-CBKLI--k.js +0 -2188
- package/dist/ReportPreview-ClM8h0pM.cjs +0 -6
- package/dist/grid-geometry-BNIvw52m.cjs +0 -1
- package/dist/grid-geometry-C8hGoe9o.js +0 -130
- package/dist/render-plan-CCTL4F9v.cjs +0 -1
- package/dist/report-params-B3Fia6JO.js +0 -10
- package/dist/report-params-D1gZ1DME.cjs +0 -1
- package/dist/textwrap-nH0UYU6D.js +0 -108
- package/dist/textwrap-oD-t4b4B.cjs +0 -4
package/dist/xlsx.d.cts
CHANGED
|
@@ -53,6 +53,9 @@ declare type AutoFilter = string | {
|
|
|
53
53
|
to: string | { row: number; column: number };
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
+
/** 将明确声明的 Excel 表区域变成可反复取数的业务模板;不保留样例明细值,不猜接口。 */
|
|
57
|
+
export declare function bindExcelTemplate(imported: ExcelImportResult, bindings: readonly ExcelTableBinding[]): ExcelTemplateBindingResult;
|
|
58
|
+
|
|
56
59
|
declare interface Border {
|
|
57
60
|
style: BorderStyle;
|
|
58
61
|
color: Partial<Color>;
|
|
@@ -563,6 +566,10 @@ declare enum ErrorValue {
|
|
|
563
566
|
Num = '#NUM!',
|
|
564
567
|
}
|
|
565
568
|
|
|
569
|
+
export declare type ExcelBindingColumn = string | (Omit<ListColumn, "widthMm" | "header"> & {
|
|
570
|
+
header?: string;
|
|
571
|
+
});
|
|
572
|
+
|
|
566
573
|
export declare interface ExcelImportedSheet {
|
|
567
574
|
name: string;
|
|
568
575
|
/** Original, one-based workbook position. */
|
|
@@ -591,7 +598,7 @@ export declare interface ExcelImportLimits {
|
|
|
591
598
|
maxSheets?: number;
|
|
592
599
|
}
|
|
593
600
|
|
|
594
|
-
export declare interface ExcelImportOptions {
|
|
601
|
+
export declare interface ExcelImportOptions extends OutputTaskOptions {
|
|
595
602
|
/** Sheet names or one-based workbook positions. Default: all visible sheets. */
|
|
596
603
|
sheets?: Array<string | number>;
|
|
597
604
|
/** A1 range for every sheet, or ranges keyed by exact sheet name. */
|
|
@@ -738,6 +745,26 @@ declare namespace ExcelJS {
|
|
|
738
745
|
}
|
|
739
746
|
}
|
|
740
747
|
|
|
748
|
+
export declare interface ExcelTableBinding {
|
|
749
|
+
sheet: string;
|
|
750
|
+
dataset?: string;
|
|
751
|
+
/** 完整列宽的表头范围,允许多行合并。 */
|
|
752
|
+
header: string;
|
|
753
|
+
/** 将整个样例明细区域替换为动态数据;缺省为表头下方全部行。 */
|
|
754
|
+
detail?: string;
|
|
755
|
+
columns: readonly ExcelBindingColumn[];
|
|
756
|
+
rowKey?: string;
|
|
757
|
+
revisionField?: string;
|
|
758
|
+
sourceTokenField?: string;
|
|
759
|
+
groupBy?: ListComponent["groupBy"];
|
|
760
|
+
grandTotal?: ListComponent["grandTotal"];
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
export declare interface ExcelTemplateBindingResult {
|
|
764
|
+
template: ReportTemplate;
|
|
765
|
+
warnings: string[];
|
|
766
|
+
}
|
|
767
|
+
|
|
741
768
|
declare interface ExpressionRuleType extends ConditionalFormattingBaseRule {
|
|
742
769
|
type: 'expression';
|
|
743
770
|
formulae?: any[];
|
|
@@ -866,6 +893,7 @@ declare interface GridCell {
|
|
|
866
893
|
valueType?: "text" | "number" | "boolean";
|
|
867
894
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
868
895
|
editable?: boolean;
|
|
896
|
+
source?: ReportCellSource;
|
|
869
897
|
/** Excel 公式保留元数据;当前引擎不计算公式,公式格始终只读。 */
|
|
870
898
|
formula?: string;
|
|
871
899
|
children?: PlanComponent[];
|
|
@@ -998,6 +1026,8 @@ declare interface ListColumn {
|
|
|
998
1026
|
editable?: boolean;
|
|
999
1027
|
/** 空值列或特殊数据类型可显式声明编辑输入类型。 */
|
|
1000
1028
|
valueType?: GridCell["valueType"];
|
|
1029
|
+
/** 字段语义用于 auto 对齐;明确声明编号,避免把数字编号当成度量。 */
|
|
1030
|
+
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
1001
1031
|
}
|
|
1002
1032
|
|
|
1003
1033
|
declare interface ListComponent {
|
|
@@ -1011,6 +1041,10 @@ declare interface ListComponent {
|
|
|
1011
1041
|
topMm: number;
|
|
1012
1042
|
widthMm: number;
|
|
1013
1043
|
dataset: string;
|
|
1044
|
+
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
1045
|
+
rowKey?: string;
|
|
1046
|
+
revisionField?: string;
|
|
1047
|
+
sourceTokenField?: string;
|
|
1014
1048
|
columns: ListColumn[];
|
|
1015
1049
|
fontSizePt?: number;
|
|
1016
1050
|
headerBold?: boolean;
|
|
@@ -1023,6 +1057,8 @@ declare interface ListComponent {
|
|
|
1023
1057
|
/** 表头默认对齐,列配置可覆盖。 */
|
|
1024
1058
|
headerAlign?: ComponentStyle["align"];
|
|
1025
1059
|
headerStyle?: ComponentStyle;
|
|
1060
|
+
/** 可选多行合并表头;列宽按列表物理列对齐,供 Excel 业务模板复用。 */
|
|
1061
|
+
headerGrid?: PlanGrid;
|
|
1026
1062
|
border?: boolean;
|
|
1027
1063
|
/** 分组小计(组头/组尾小计/组头防孤行) */
|
|
1028
1064
|
groupBy?: ListGroupBy;
|
|
@@ -1075,6 +1111,34 @@ declare interface Media {
|
|
|
1075
1111
|
buffer: Buffer_2;
|
|
1076
1112
|
}
|
|
1077
1113
|
|
|
1114
|
+
declare interface OutputDiagnostic {
|
|
1115
|
+
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";
|
|
1116
|
+
severity: "warning";
|
|
1117
|
+
format: OutputFormat;
|
|
1118
|
+
pageIndex: number;
|
|
1119
|
+
componentIndex: number;
|
|
1120
|
+
/** Nested grid child location as repeating [rowIndex, columnIndex, childIndex] triples. */
|
|
1121
|
+
componentPath?: readonly number[];
|
|
1122
|
+
kind: string;
|
|
1123
|
+
nid?: string;
|
|
1124
|
+
message: string;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
declare interface OutputDiagnosticOptions extends OutputTaskOptions {
|
|
1128
|
+
/** Structured fidelity diagnostics; rendering never silently invents missing content. */
|
|
1129
|
+
onDiagnostic?: (diagnostic: OutputDiagnostic) => void;
|
|
1130
|
+
/** Reject known unsupported content before creating an incomplete file. Default warn. */
|
|
1131
|
+
fidelity?: "warn" | "strict";
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
declare type OutputFormat = "dom" | "canvas" | "pdf" | "xlsx";
|
|
1135
|
+
|
|
1136
|
+
/** Stage counts are exact completed units; encoding libraries may remain indeterminate. */
|
|
1137
|
+
declare interface OutputTaskOptions {
|
|
1138
|
+
signal?: AbortSignal;
|
|
1139
|
+
onProgress?: (completed: number, total: number) => void;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1078
1142
|
declare interface PageSetup {
|
|
1079
1143
|
/**
|
|
1080
1144
|
* Whitespace on the borders of the page. Units are inches.
|
|
@@ -1252,6 +1316,8 @@ declare interface PlanComponent {
|
|
|
1252
1316
|
lines?: string[];
|
|
1253
1317
|
richParagraphs?: RichParagraph[];
|
|
1254
1318
|
imageData?: string;
|
|
1319
|
+
/** 明确指定线段方向;省略保持历史水平线行为。 */
|
|
1320
|
+
lineDirection?: "down" | "up";
|
|
1255
1321
|
grid?: PlanGrid;
|
|
1256
1322
|
table?: PlanTableFragment;
|
|
1257
1323
|
style?: ComponentStyle;
|
|
@@ -1293,6 +1359,10 @@ declare interface PlanTableFragment {
|
|
|
1293
1359
|
columnKeys: string[];
|
|
1294
1360
|
layout?: "page" | "wide";
|
|
1295
1361
|
title?: string;
|
|
1362
|
+
/** 只有宿主声明稳定 rowKey 时生成,不能用显示顺序替代业务主键。 */
|
|
1363
|
+
source?: Omit<ReportCellSource, "field" | "rowKey"> & {
|
|
1364
|
+
rowKey?: string | number;
|
|
1365
|
+
};
|
|
1296
1366
|
}
|
|
1297
1367
|
|
|
1298
1368
|
declare interface Protection {
|
|
@@ -1376,6 +1446,15 @@ declare interface RenderPlan {
|
|
|
1376
1446
|
|
|
1377
1447
|
export declare function renderPlanToXlsx(plan: RenderPlan, options?: XlsxRenderOptions): Promise<XlsxRenderResult>;
|
|
1378
1448
|
|
|
1449
|
+
/** 可持久化的业务身份与计划坐标独立;权限及并发校验仍由业务服务器执行。 */
|
|
1450
|
+
declare interface ReportCellSource {
|
|
1451
|
+
datasetId: string;
|
|
1452
|
+
rowKey: string | number;
|
|
1453
|
+
field: string;
|
|
1454
|
+
revision?: string | number;
|
|
1455
|
+
sourceToken?: string;
|
|
1456
|
+
}
|
|
1457
|
+
|
|
1379
1458
|
/** 报表参数定义(声明式,模板自描述参数面:渲染组件据此生成查询面板) */
|
|
1380
1459
|
declare interface ReportParamDef {
|
|
1381
1460
|
/** 参数名(传入 params,与数据集 SQL #{field} 绑定对应) */
|
|
@@ -1391,6 +1470,11 @@ declare interface ReportParamDef {
|
|
|
1391
1470
|
defaultValue?: string;
|
|
1392
1471
|
required?: boolean;
|
|
1393
1472
|
placeholder?: string;
|
|
1473
|
+
/** 数字上下界;date 参数使用 YYYY-MM-DD 字符串(含边界)。 */
|
|
1474
|
+
min?: number | string;
|
|
1475
|
+
max?: number | string;
|
|
1476
|
+
minLength?: number;
|
|
1477
|
+
maxLength?: number;
|
|
1394
1478
|
}
|
|
1395
1479
|
|
|
1396
1480
|
declare interface ReportTemplate {
|
|
@@ -2502,7 +2586,7 @@ declare interface XlsxReadOptions {
|
|
|
2502
2586
|
* 目标是"财务能直接用的对账表"而非复刻版面)
|
|
2503
2587
|
* - 未支持组件、富文本专有内容与单元格嵌套组件跳过并计入 warnings
|
|
2504
2588
|
*/
|
|
2505
|
-
export declare interface XlsxRenderOptions {
|
|
2589
|
+
export declare interface XlsxRenderOptions extends OutputDiagnosticOptions {
|
|
2506
2590
|
/** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
|
|
2507
2591
|
sheetName?: (sheetIndex: number) => string;
|
|
2508
2592
|
/** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
|
|
@@ -2517,6 +2601,7 @@ export declare interface XlsxRenderResult {
|
|
|
2517
2601
|
workbook: ExcelJS.Workbook;
|
|
2518
2602
|
buffer: ExcelJS.Buffer;
|
|
2519
2603
|
warnings: string[];
|
|
2604
|
+
diagnostics?: OutputDiagnostic[];
|
|
2520
2605
|
}
|
|
2521
2606
|
|
|
2522
2607
|
declare interface XlsxWriteOptions extends stream.xlsx.WorkbookWriterOptions {
|
package/dist/xlsx.d.ts
CHANGED
|
@@ -53,6 +53,9 @@ declare type AutoFilter = string | {
|
|
|
53
53
|
to: string | { row: number; column: number };
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
+
/** 将明确声明的 Excel 表区域变成可反复取数的业务模板;不保留样例明细值,不猜接口。 */
|
|
57
|
+
export declare function bindExcelTemplate(imported: ExcelImportResult, bindings: readonly ExcelTableBinding[]): ExcelTemplateBindingResult;
|
|
58
|
+
|
|
56
59
|
declare interface Border {
|
|
57
60
|
style: BorderStyle;
|
|
58
61
|
color: Partial<Color>;
|
|
@@ -563,6 +566,10 @@ declare enum ErrorValue {
|
|
|
563
566
|
Num = '#NUM!',
|
|
564
567
|
}
|
|
565
568
|
|
|
569
|
+
export declare type ExcelBindingColumn = string | (Omit<ListColumn, "widthMm" | "header"> & {
|
|
570
|
+
header?: string;
|
|
571
|
+
});
|
|
572
|
+
|
|
566
573
|
export declare interface ExcelImportedSheet {
|
|
567
574
|
name: string;
|
|
568
575
|
/** Original, one-based workbook position. */
|
|
@@ -591,7 +598,7 @@ export declare interface ExcelImportLimits {
|
|
|
591
598
|
maxSheets?: number;
|
|
592
599
|
}
|
|
593
600
|
|
|
594
|
-
export declare interface ExcelImportOptions {
|
|
601
|
+
export declare interface ExcelImportOptions extends OutputTaskOptions {
|
|
595
602
|
/** Sheet names or one-based workbook positions. Default: all visible sheets. */
|
|
596
603
|
sheets?: Array<string | number>;
|
|
597
604
|
/** A1 range for every sheet, or ranges keyed by exact sheet name. */
|
|
@@ -738,6 +745,26 @@ declare namespace ExcelJS {
|
|
|
738
745
|
}
|
|
739
746
|
}
|
|
740
747
|
|
|
748
|
+
export declare interface ExcelTableBinding {
|
|
749
|
+
sheet: string;
|
|
750
|
+
dataset?: string;
|
|
751
|
+
/** 完整列宽的表头范围,允许多行合并。 */
|
|
752
|
+
header: string;
|
|
753
|
+
/** 将整个样例明细区域替换为动态数据;缺省为表头下方全部行。 */
|
|
754
|
+
detail?: string;
|
|
755
|
+
columns: readonly ExcelBindingColumn[];
|
|
756
|
+
rowKey?: string;
|
|
757
|
+
revisionField?: string;
|
|
758
|
+
sourceTokenField?: string;
|
|
759
|
+
groupBy?: ListComponent["groupBy"];
|
|
760
|
+
grandTotal?: ListComponent["grandTotal"];
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
export declare interface ExcelTemplateBindingResult {
|
|
764
|
+
template: ReportTemplate;
|
|
765
|
+
warnings: string[];
|
|
766
|
+
}
|
|
767
|
+
|
|
741
768
|
declare interface ExpressionRuleType extends ConditionalFormattingBaseRule {
|
|
742
769
|
type: 'expression';
|
|
743
770
|
formulae?: any[];
|
|
@@ -866,6 +893,7 @@ declare interface GridCell {
|
|
|
866
893
|
valueType?: "text" | "number" | "boolean";
|
|
867
894
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
868
895
|
editable?: boolean;
|
|
896
|
+
source?: ReportCellSource;
|
|
869
897
|
/** Excel 公式保留元数据;当前引擎不计算公式,公式格始终只读。 */
|
|
870
898
|
formula?: string;
|
|
871
899
|
children?: PlanComponent[];
|
|
@@ -998,6 +1026,8 @@ declare interface ListColumn {
|
|
|
998
1026
|
editable?: boolean;
|
|
999
1027
|
/** 空值列或特殊数据类型可显式声明编辑输入类型。 */
|
|
1000
1028
|
valueType?: GridCell["valueType"];
|
|
1029
|
+
/** 字段语义用于 auto 对齐;明确声明编号,避免把数字编号当成度量。 */
|
|
1030
|
+
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
1001
1031
|
}
|
|
1002
1032
|
|
|
1003
1033
|
declare interface ListComponent {
|
|
@@ -1011,6 +1041,10 @@ declare interface ListComponent {
|
|
|
1011
1041
|
topMm: number;
|
|
1012
1042
|
widthMm: number;
|
|
1013
1043
|
dataset: string;
|
|
1044
|
+
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
1045
|
+
rowKey?: string;
|
|
1046
|
+
revisionField?: string;
|
|
1047
|
+
sourceTokenField?: string;
|
|
1014
1048
|
columns: ListColumn[];
|
|
1015
1049
|
fontSizePt?: number;
|
|
1016
1050
|
headerBold?: boolean;
|
|
@@ -1023,6 +1057,8 @@ declare interface ListComponent {
|
|
|
1023
1057
|
/** 表头默认对齐,列配置可覆盖。 */
|
|
1024
1058
|
headerAlign?: ComponentStyle["align"];
|
|
1025
1059
|
headerStyle?: ComponentStyle;
|
|
1060
|
+
/** 可选多行合并表头;列宽按列表物理列对齐,供 Excel 业务模板复用。 */
|
|
1061
|
+
headerGrid?: PlanGrid;
|
|
1026
1062
|
border?: boolean;
|
|
1027
1063
|
/** 分组小计(组头/组尾小计/组头防孤行) */
|
|
1028
1064
|
groupBy?: ListGroupBy;
|
|
@@ -1075,6 +1111,34 @@ declare interface Media {
|
|
|
1075
1111
|
buffer: Buffer_2;
|
|
1076
1112
|
}
|
|
1077
1113
|
|
|
1114
|
+
declare interface OutputDiagnostic {
|
|
1115
|
+
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";
|
|
1116
|
+
severity: "warning";
|
|
1117
|
+
format: OutputFormat;
|
|
1118
|
+
pageIndex: number;
|
|
1119
|
+
componentIndex: number;
|
|
1120
|
+
/** Nested grid child location as repeating [rowIndex, columnIndex, childIndex] triples. */
|
|
1121
|
+
componentPath?: readonly number[];
|
|
1122
|
+
kind: string;
|
|
1123
|
+
nid?: string;
|
|
1124
|
+
message: string;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
declare interface OutputDiagnosticOptions extends OutputTaskOptions {
|
|
1128
|
+
/** Structured fidelity diagnostics; rendering never silently invents missing content. */
|
|
1129
|
+
onDiagnostic?: (diagnostic: OutputDiagnostic) => void;
|
|
1130
|
+
/** Reject known unsupported content before creating an incomplete file. Default warn. */
|
|
1131
|
+
fidelity?: "warn" | "strict";
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
declare type OutputFormat = "dom" | "canvas" | "pdf" | "xlsx";
|
|
1135
|
+
|
|
1136
|
+
/** Stage counts are exact completed units; encoding libraries may remain indeterminate. */
|
|
1137
|
+
declare interface OutputTaskOptions {
|
|
1138
|
+
signal?: AbortSignal;
|
|
1139
|
+
onProgress?: (completed: number, total: number) => void;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1078
1142
|
declare interface PageSetup {
|
|
1079
1143
|
/**
|
|
1080
1144
|
* Whitespace on the borders of the page. Units are inches.
|
|
@@ -1252,6 +1316,8 @@ declare interface PlanComponent {
|
|
|
1252
1316
|
lines?: string[];
|
|
1253
1317
|
richParagraphs?: RichParagraph[];
|
|
1254
1318
|
imageData?: string;
|
|
1319
|
+
/** 明确指定线段方向;省略保持历史水平线行为。 */
|
|
1320
|
+
lineDirection?: "down" | "up";
|
|
1255
1321
|
grid?: PlanGrid;
|
|
1256
1322
|
table?: PlanTableFragment;
|
|
1257
1323
|
style?: ComponentStyle;
|
|
@@ -1293,6 +1359,10 @@ declare interface PlanTableFragment {
|
|
|
1293
1359
|
columnKeys: string[];
|
|
1294
1360
|
layout?: "page" | "wide";
|
|
1295
1361
|
title?: string;
|
|
1362
|
+
/** 只有宿主声明稳定 rowKey 时生成,不能用显示顺序替代业务主键。 */
|
|
1363
|
+
source?: Omit<ReportCellSource, "field" | "rowKey"> & {
|
|
1364
|
+
rowKey?: string | number;
|
|
1365
|
+
};
|
|
1296
1366
|
}
|
|
1297
1367
|
|
|
1298
1368
|
declare interface Protection {
|
|
@@ -1376,6 +1446,15 @@ declare interface RenderPlan {
|
|
|
1376
1446
|
|
|
1377
1447
|
export declare function renderPlanToXlsx(plan: RenderPlan, options?: XlsxRenderOptions): Promise<XlsxRenderResult>;
|
|
1378
1448
|
|
|
1449
|
+
/** 可持久化的业务身份与计划坐标独立;权限及并发校验仍由业务服务器执行。 */
|
|
1450
|
+
declare interface ReportCellSource {
|
|
1451
|
+
datasetId: string;
|
|
1452
|
+
rowKey: string | number;
|
|
1453
|
+
field: string;
|
|
1454
|
+
revision?: string | number;
|
|
1455
|
+
sourceToken?: string;
|
|
1456
|
+
}
|
|
1457
|
+
|
|
1379
1458
|
/** 报表参数定义(声明式,模板自描述参数面:渲染组件据此生成查询面板) */
|
|
1380
1459
|
declare interface ReportParamDef {
|
|
1381
1460
|
/** 参数名(传入 params,与数据集 SQL #{field} 绑定对应) */
|
|
@@ -1391,6 +1470,11 @@ declare interface ReportParamDef {
|
|
|
1391
1470
|
defaultValue?: string;
|
|
1392
1471
|
required?: boolean;
|
|
1393
1472
|
placeholder?: string;
|
|
1473
|
+
/** 数字上下界;date 参数使用 YYYY-MM-DD 字符串(含边界)。 */
|
|
1474
|
+
min?: number | string;
|
|
1475
|
+
max?: number | string;
|
|
1476
|
+
minLength?: number;
|
|
1477
|
+
maxLength?: number;
|
|
1394
1478
|
}
|
|
1395
1479
|
|
|
1396
1480
|
declare interface ReportTemplate {
|
|
@@ -2502,7 +2586,7 @@ declare interface XlsxReadOptions {
|
|
|
2502
2586
|
* 目标是"财务能直接用的对账表"而非复刻版面)
|
|
2503
2587
|
* - 未支持组件、富文本专有内容与单元格嵌套组件跳过并计入 warnings
|
|
2504
2588
|
*/
|
|
2505
|
-
export declare interface XlsxRenderOptions {
|
|
2589
|
+
export declare interface XlsxRenderOptions extends OutputDiagnosticOptions {
|
|
2506
2590
|
/** 工作表命名(连续表默认使用标题,其余默认 "Sheet1" 起序)。 */
|
|
2507
2591
|
sheetName?: (sheetIndex: number) => string;
|
|
2508
2592
|
/** auto 默认将 wide 逻辑表合并为连续 Sheet;pages 保留逐页;continuous 要求明确的表来源。 */
|
|
@@ -2517,6 +2601,7 @@ export declare interface XlsxRenderResult {
|
|
|
2517
2601
|
workbook: ExcelJS.Workbook;
|
|
2518
2602
|
buffer: ExcelJS.Buffer;
|
|
2519
2603
|
warnings: string[];
|
|
2604
|
+
diagnostics?: OutputDiagnostic[];
|
|
2520
2605
|
}
|
|
2521
2606
|
|
|
2522
2607
|
declare interface XlsxWriteOptions extends stream.xlsx.WorkbookWriterOptions {
|