@agile-team/mach-report 2.10.0 → 2.11.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 +6 -2
- package/dist/ExcelBindingWizard-CjIiVox-.cjs +1 -0
- package/dist/ExcelBindingWizard-Dxm-K5HL.js +1240 -0
- package/dist/ParamEditor-D-Hf5xfO.cjs +1 -0
- package/dist/ParamEditor-DRGxzxeO.js +381 -0
- package/dist/ReportBatchPanel-BYgg0EDB.cjs +1 -0
- package/dist/ReportBatchPanel-Bby5yLzU.js +287 -0
- package/dist/ReportPreview-DWXROHBP.cjs +6 -0
- package/dist/ReportPreview-DiNXhQI0.js +4138 -0
- package/dist/ReportTemplateLibrary-C6CO7YCT.cjs +1 -0
- package/dist/ReportTemplateLibrary-DfzDXRvr.js +260 -0
- package/dist/RuleEditor-C2QsOHOs.cjs +1 -0
- package/dist/RuleEditor-D9wQHrkf.js +2024 -0
- package/dist/TemplateReviewPanel-BKofGrV9.js +222 -0
- package/dist/TemplateReviewPanel-DwtOcLue.cjs +1 -0
- package/dist/analytics.cjs +1 -1
- package/dist/analytics.d.cts +2 -0
- package/dist/analytics.d.ts +2 -0
- package/dist/analytics.js +29 -29
- package/dist/batch-Bt3Fd27Z.cjs +1 -0
- package/dist/batch-mRqhhhjt.js +364 -0
- package/dist/computed-Bvk0W15F.js +521 -0
- package/dist/computed-CGV2a809.cjs +1 -0
- package/dist/config-B612mw0x.js +525 -0
- package/dist/config-BRoLo2oj.cjs +1 -0
- package/dist/designer.cjs +2 -2
- package/dist/designer.d.cts +659 -9
- package/dist/designer.d.ts +659 -9
- package/dist/designer.js +2030 -1824
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +147 -3
- package/dist/index.d.ts +147 -3
- package/dist/index.js +639 -592
- package/dist/injection-keys-Db_DyLkm.cjs +1 -0
- package/dist/injection-keys-e85udZCp.js +7 -0
- package/dist/list-cell-BuYn4tGF.cjs +1 -0
- package/dist/{list-cell-Dxyi7DOw.js → list-cell-ClFra1zS.js} +54 -40
- package/dist/matrix-DVyWiYsd.cjs +1 -0
- package/dist/matrix-yZsGnldA.js +227 -0
- package/dist/param-validation-BlHHXs6u.js +153 -0
- package/dist/param-validation-DCK039V1.cjs +1 -0
- package/dist/pdf.cjs +25 -25
- package/dist/pdf.d.cts +3 -0
- package/dist/pdf.d.ts +3 -0
- package/dist/pdf.js +677 -677
- package/dist/plugin-BDTU4D94.cjs +1 -0
- package/dist/plugin-Cd5G2QQn.js +22 -0
- package/dist/region-binding-workflow-CXDmt9Bs.js +977 -0
- package/dist/region-binding-workflow-DhQvu1co.cjs +3 -0
- package/dist/{report-params-B_VCihAh.js → report-params-B44imUd4.js} +1 -1
- package/dist/{report-params-CjWrjPl6.cjs → report-params-SJfhKgaX.cjs} +1 -1
- package/dist/server/node.d.cts +5 -2
- package/dist/server/node.d.ts +5 -2
- package/dist/server-node.cjs +1 -1
- package/dist/server-node.js +87 -87
- package/dist/server.cjs +1 -1
- package/dist/server.d.cts +201 -2
- package/dist/server.d.ts +201 -2
- package/dist/server.js +557 -658
- package/dist/style.css +1 -1
- package/dist/template-registry-WNXdkiET.js +506 -0
- package/dist/template-registry-ukBGlm8N.cjs +1 -0
- package/dist/template-review-BXp2oyqg.cjs +1 -0
- package/dist/template-review-BdcXSYbx.js +1616 -0
- package/dist/tree-BX380Rr7.cjs +1 -0
- package/dist/tree-CqcQ99NM.js +172 -0
- package/dist/{validate-UUy9yP4K.js → validate-7s0yn6ii.js} +44 -44
- package/dist/validate-DsRiNw8h.cjs +1 -0
- package/dist/vue/async.d.cts +93 -4
- package/dist/vue/async.d.ts +93 -4
- package/dist/vue/index.d.cts +145 -7
- package/dist/vue/index.d.ts +145 -7
- package/dist/vue-async.cjs +1 -1
- package/dist/vue-async.js +5 -5
- package/dist/vue.cjs +1 -1
- package/dist/vue.js +116 -113
- package/dist/{workbook-session-B-bW5_yR.js → workbook-session-BKOTwcoq.js} +1 -1
- package/dist/{workbook-session-D7RtdNo0.cjs → workbook-session-CLYLhZWu.cjs} +1 -1
- package/dist/worker.cjs +1 -1
- package/dist/worker.d.cts +5 -2
- package/dist/worker.d.ts +5 -2
- package/dist/worker.js +1 -1
- package/dist/xlsx.cjs +3 -3
- package/dist/xlsx.d.cts +129 -2
- package/dist/xlsx.d.ts +129 -2
- package/dist/xlsx.js +336 -242
- package/package.json +1 -1
- package/dist/ExcelBindingWizard-CF7RplWm.cjs +0 -1
- package/dist/ExcelBindingWizard-qhwEderR.js +0 -842
- package/dist/ReportPreview-BE1tCHqE.js +0 -4604
- package/dist/ReportPreview-QKRKQOe3.cjs +0 -6
- package/dist/RuleEditor-BA36yIV6.js +0 -1723
- package/dist/RuleEditor-CczJ6mJm.cjs +0 -1
- package/dist/TemplateReviewPanel-CHi4Alqa.cjs +0 -1
- package/dist/TemplateReviewPanel-Dz0G5o83.js +0 -217
- package/dist/binding-preview-BWsdf_z2.cjs +0 -2
- package/dist/binding-preview-DILq0-0f.js +0 -649
- package/dist/decimal-CI1OAczk.js +0 -87
- package/dist/decimal-CQA0xJex.cjs +0 -1
- package/dist/list-cell-CyM1ZlRN.cjs +0 -1
- package/dist/matrix-BbXarwyk.js +0 -661
- package/dist/matrix-Cm65WLLP.cjs +0 -1
- package/dist/param-validation-BWNjLcN0.js +0 -116
- package/dist/param-validation-CiTxFeZ8.cjs +0 -1
- package/dist/plugin-CThk42vJ.cjs +0 -1
- package/dist/plugin-tGn7-5oF.js +0 -25
- package/dist/template-registry-CGWTLtIA.cjs +0 -1
- package/dist/template-registry-DzlQs3OF.js +0 -434
- package/dist/template-review-D1RoNCPw.cjs +0 -1
- package/dist/template-review-fnteXRng.js +0 -1473
- package/dist/validate-Bf6ccFr2.cjs +0 -1
package/dist/vue/async.d.ts
CHANGED
|
@@ -290,6 +290,8 @@ declare interface GridCell {
|
|
|
290
290
|
value?: string | number | boolean | null;
|
|
291
291
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
292
292
|
numberFormat?: string;
|
|
293
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
294
|
+
indentMm?: number;
|
|
293
295
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
294
296
|
valueType?: "text" | "number" | "boolean";
|
|
295
297
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -311,6 +313,8 @@ declare interface GridCell_2 {
|
|
|
311
313
|
value?: string | number | boolean | null;
|
|
312
314
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
313
315
|
numberFormat?: string;
|
|
316
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
317
|
+
indentMm?: number;
|
|
314
318
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
315
319
|
valueType?: "text" | "number" | "boolean";
|
|
316
320
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -332,6 +336,8 @@ declare interface GridCell_3 {
|
|
|
332
336
|
value?: string | number | boolean | null;
|
|
333
337
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
334
338
|
numberFormat?: string;
|
|
339
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
340
|
+
indentMm?: number;
|
|
335
341
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
336
342
|
valueType?: "text" | "number" | "boolean";
|
|
337
343
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -403,6 +409,8 @@ declare interface ListColumn_2 {
|
|
|
403
409
|
}
|
|
404
410
|
declare interface ListComponent {
|
|
405
411
|
kind: "list";
|
|
412
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
413
|
+
meta?: Record<string, unknown>;
|
|
406
414
|
id?: string;
|
|
407
415
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
408
416
|
layout?: "page" | "wide";
|
|
@@ -412,6 +420,10 @@ declare interface ListComponent {
|
|
|
412
420
|
topMm: number;
|
|
413
421
|
widthMm: number;
|
|
414
422
|
dataset: string;
|
|
423
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
424
|
+
header?: boolean;
|
|
425
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
426
|
+
cardinality?: "record";
|
|
415
427
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
416
428
|
rowKey?: string;
|
|
417
429
|
revisionField?: string;
|
|
@@ -438,6 +450,8 @@ declare interface ListComponent {
|
|
|
438
450
|
computed?: ComputedField[];
|
|
439
451
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
440
452
|
matrix?: MatrixTableOptions;
|
|
453
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
454
|
+
tree?: TreeTableOptions;
|
|
441
455
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
442
456
|
rowVisibleWhen?: StyleRule["when"];
|
|
443
457
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -447,6 +461,8 @@ declare interface ListComponent {
|
|
|
447
461
|
}
|
|
448
462
|
declare interface ListComponent_2 {
|
|
449
463
|
kind: "list";
|
|
464
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
465
|
+
meta?: Record<string, unknown>;
|
|
450
466
|
id?: string;
|
|
451
467
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
452
468
|
layout?: "page" | "wide";
|
|
@@ -456,6 +472,10 @@ declare interface ListComponent_2 {
|
|
|
456
472
|
topMm: number;
|
|
457
473
|
widthMm: number;
|
|
458
474
|
dataset: string;
|
|
475
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
476
|
+
header?: boolean;
|
|
477
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
478
|
+
cardinality?: "record";
|
|
459
479
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
460
480
|
rowKey?: string;
|
|
461
481
|
revisionField?: string;
|
|
@@ -482,6 +502,8 @@ declare interface ListComponent_2 {
|
|
|
482
502
|
computed?: ComputedField_2[];
|
|
483
503
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
484
504
|
matrix?: MatrixTableOptions_2;
|
|
505
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
506
|
+
tree?: TreeTableOptions_2;
|
|
485
507
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
486
508
|
rowVisibleWhen?: StyleRule_2["when"];
|
|
487
509
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -689,6 +711,8 @@ declare interface MachReportMessages extends Partial<ReportCalculationMessages>
|
|
|
689
711
|
paramPromptDescription?: string;
|
|
690
712
|
paramSelectPlaceholder?: string;
|
|
691
713
|
paramTextPlaceholder?: string;
|
|
714
|
+
paramRangeStart?: string;
|
|
715
|
+
paramRangeEnd?: string;
|
|
692
716
|
/** 可选搜索进度文案,旧完整 messages 对象无需新增字段。 */
|
|
693
717
|
searching?: string;
|
|
694
718
|
importExcel?: string;
|
|
@@ -1086,6 +1110,7 @@ declare interface PlanGrid_3 {
|
|
|
1086
1110
|
paddingMm?: number;
|
|
1087
1111
|
}
|
|
1088
1112
|
declare interface PlanPage {
|
|
1113
|
+
meta?: Record<string, unknown>;
|
|
1089
1114
|
/** wide 表示完整自然列宽;页面仅为预览的垂直窗口分段。 */
|
|
1090
1115
|
layout?: "page" | "wide";
|
|
1091
1116
|
pageWidthMm: number;
|
|
@@ -1435,6 +1460,20 @@ declare interface ReportFieldTarget {
|
|
|
1435
1460
|
rowKey?: string | number;
|
|
1436
1461
|
tableId?: string;
|
|
1437
1462
|
}
|
|
1463
|
+
declare interface ReportFlowBand {
|
|
1464
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
1465
|
+
componentIds: string[];
|
|
1466
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
1467
|
+
topMm: number;
|
|
1468
|
+
heightMm: number;
|
|
1469
|
+
}
|
|
1470
|
+
declare interface ReportFlowBand_2 {
|
|
1471
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
1472
|
+
componentIds: string[];
|
|
1473
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
1474
|
+
topMm: number;
|
|
1475
|
+
heightMm: number;
|
|
1476
|
+
}
|
|
1438
1477
|
declare interface ReportInteractionOptions {
|
|
1439
1478
|
/** 只读选区计算,默认关闭;不写回业务值或执行导入的 Excel 公式。 */
|
|
1440
1479
|
calculations?: boolean;
|
|
@@ -1455,13 +1494,19 @@ declare interface ReportOutputOptions {
|
|
|
1455
1494
|
/** warn preserves supported output and shows diagnostics; strict rejects known fidelity loss. */
|
|
1456
1495
|
fidelity?: "warn" | "strict";
|
|
1457
1496
|
}
|
|
1497
|
+
declare interface ReportPageFlow {
|
|
1498
|
+
bands: ReportFlowBand[];
|
|
1499
|
+
}
|
|
1500
|
+
declare interface ReportPageFlow_2 {
|
|
1501
|
+
bands: ReportFlowBand_2[];
|
|
1502
|
+
}
|
|
1458
1503
|
/** 报表参数定义(声明式,模板自描述参数面:渲染组件据此生成查询面板) */
|
|
1459
1504
|
declare interface ReportParamDef {
|
|
1460
1505
|
/** 参数名(传入 params,与数据集 SQL #{field} 绑定对应) */
|
|
1461
1506
|
field: string;
|
|
1462
1507
|
/** 显示名(缺省用 field) */
|
|
1463
1508
|
label?: string;
|
|
1464
|
-
type?: "text" | "number" | "date" | "select";
|
|
1509
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
1465
1510
|
/** select 选项 */
|
|
1466
1511
|
options?: Array<{
|
|
1467
1512
|
label: string;
|
|
@@ -1470,7 +1515,7 @@ declare interface ReportParamDef {
|
|
|
1470
1515
|
defaultValue?: string;
|
|
1471
1516
|
required?: boolean;
|
|
1472
1517
|
placeholder?: string;
|
|
1473
|
-
/**
|
|
1518
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
1474
1519
|
min?: number | string;
|
|
1475
1520
|
max?: number | string;
|
|
1476
1521
|
minLength?: number;
|
|
@@ -1482,7 +1527,7 @@ declare interface ReportParamDef_2 {
|
|
|
1482
1527
|
field: string;
|
|
1483
1528
|
/** 显示名(缺省用 field) */
|
|
1484
1529
|
label?: string;
|
|
1485
|
-
type?: "text" | "number" | "date" | "select";
|
|
1530
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
1486
1531
|
/** select 选项 */
|
|
1487
1532
|
options?: Array<{
|
|
1488
1533
|
label: string;
|
|
@@ -1491,7 +1536,7 @@ declare interface ReportParamDef_2 {
|
|
|
1491
1536
|
defaultValue?: string;
|
|
1492
1537
|
required?: boolean;
|
|
1493
1538
|
placeholder?: string;
|
|
1494
|
-
/**
|
|
1539
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
1495
1540
|
min?: number | string;
|
|
1496
1541
|
max?: number | string;
|
|
1497
1542
|
minLength?: number;
|
|
@@ -1703,6 +1748,9 @@ declare interface TemplatePage {
|
|
|
1703
1748
|
marginLeftMm?: number;
|
|
1704
1749
|
marginRightMm?: number;
|
|
1705
1750
|
components: TemplateComponent[];
|
|
1751
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
1752
|
+
flow?: ReportPageFlow;
|
|
1753
|
+
meta?: Record<string, unknown>;
|
|
1706
1754
|
}
|
|
1707
1755
|
declare interface TemplatePage_2 {
|
|
1708
1756
|
widthMm: number;
|
|
@@ -1714,6 +1762,9 @@ declare interface TemplatePage_2 {
|
|
|
1714
1762
|
marginLeftMm?: number;
|
|
1715
1763
|
marginRightMm?: number;
|
|
1716
1764
|
components: TemplateComponent_2[];
|
|
1765
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
1766
|
+
flow?: ReportPageFlow_2;
|
|
1767
|
+
meta?: Record<string, unknown>;
|
|
1717
1768
|
}
|
|
1718
1769
|
/**
|
|
1719
1770
|
* 文本测量与折行(分页/Canvas/PDF 共用的唯一折行真相源)。
|
|
@@ -1733,6 +1784,44 @@ declare interface TextMeasureOptions {
|
|
|
1733
1784
|
declare interface TextMeasurer {
|
|
1734
1785
|
measureMm(text: string, options: TextMeasureOptions): number;
|
|
1735
1786
|
}
|
|
1787
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
1788
|
+
declare interface TreeTableOptions {
|
|
1789
|
+
input: "flat" | "nested";
|
|
1790
|
+
idField: string;
|
|
1791
|
+
/** Flat roots have null/undefined parent values. */
|
|
1792
|
+
parentField?: string;
|
|
1793
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
1794
|
+
childrenField?: string;
|
|
1795
|
+
labelField: string;
|
|
1796
|
+
indentMm?: number;
|
|
1797
|
+
orphan?: "error" | "root";
|
|
1798
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
1799
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
1800
|
+
aggregates?: AggregateDefinition[];
|
|
1801
|
+
maxRows?: number;
|
|
1802
|
+
maxDepth?: number;
|
|
1803
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
1804
|
+
maxAggregationVisits?: number;
|
|
1805
|
+
}
|
|
1806
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
1807
|
+
declare interface TreeTableOptions_2 {
|
|
1808
|
+
input: "flat" | "nested";
|
|
1809
|
+
idField: string;
|
|
1810
|
+
/** Flat roots have null/undefined parent values. */
|
|
1811
|
+
parentField?: string;
|
|
1812
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
1813
|
+
childrenField?: string;
|
|
1814
|
+
labelField: string;
|
|
1815
|
+
indentMm?: number;
|
|
1816
|
+
orphan?: "error" | "root";
|
|
1817
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
1818
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
1819
|
+
aggregates?: AggregateDefinition_2[];
|
|
1820
|
+
maxRows?: number;
|
|
1821
|
+
maxDepth?: number;
|
|
1822
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
1823
|
+
maxAggregationVisits?: number;
|
|
1824
|
+
}
|
|
1736
1825
|
declare interface XlsxImageOptions {
|
|
1737
1826
|
/** Decoded bytes per unique embedded image; default 16 MiB. */
|
|
1738
1827
|
maxImageBytes?: number;
|
package/dist/vue/index.d.cts
CHANGED
|
@@ -387,6 +387,10 @@ declare type __VLS_Props_3 = {
|
|
|
387
387
|
/** 触发过查询后才开始必填提示(避免首屏一片红) */
|
|
388
388
|
attempted: boolean;
|
|
389
389
|
issues?: readonly ReportParamIssue[];
|
|
390
|
+
/** Embedded batch forms reuse the same typed inputs without per-row query buttons. */
|
|
391
|
+
showActions?: boolean;
|
|
392
|
+
showTitle?: boolean;
|
|
393
|
+
disabled?: boolean;
|
|
390
394
|
};
|
|
391
395
|
declare function __VLS_template(): {
|
|
392
396
|
slots: {
|
|
@@ -821,6 +825,8 @@ declare interface GridCell {
|
|
|
821
825
|
value?: string | number | boolean | null;
|
|
822
826
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
823
827
|
numberFormat?: string;
|
|
828
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
829
|
+
indentMm?: number;
|
|
824
830
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
825
831
|
valueType?: "text" | "number" | "boolean";
|
|
826
832
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -842,6 +848,8 @@ declare interface GridCell_2 {
|
|
|
842
848
|
value?: string | number | boolean | null;
|
|
843
849
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
844
850
|
numberFormat?: string;
|
|
851
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
852
|
+
indentMm?: number;
|
|
845
853
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
846
854
|
valueType?: "text" | "number" | "boolean";
|
|
847
855
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -863,6 +871,8 @@ declare interface GridCell_3 {
|
|
|
863
871
|
value?: string | number | boolean | null;
|
|
864
872
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
865
873
|
numberFormat?: string;
|
|
874
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
875
|
+
indentMm?: number;
|
|
866
876
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
867
877
|
valueType?: "text" | "number" | "boolean";
|
|
868
878
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -970,6 +980,8 @@ declare interface ListColumn_3 {
|
|
|
970
980
|
}
|
|
971
981
|
declare interface ListComponent {
|
|
972
982
|
kind: "list";
|
|
983
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
984
|
+
meta?: Record<string, unknown>;
|
|
973
985
|
id?: string;
|
|
974
986
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
975
987
|
layout?: "page" | "wide";
|
|
@@ -979,6 +991,10 @@ declare interface ListComponent {
|
|
|
979
991
|
topMm: number;
|
|
980
992
|
widthMm: number;
|
|
981
993
|
dataset: string;
|
|
994
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
995
|
+
header?: boolean;
|
|
996
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
997
|
+
cardinality?: "record";
|
|
982
998
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
983
999
|
rowKey?: string;
|
|
984
1000
|
revisionField?: string;
|
|
@@ -1005,6 +1021,8 @@ declare interface ListComponent {
|
|
|
1005
1021
|
computed?: ComputedField[];
|
|
1006
1022
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
1007
1023
|
matrix?: MatrixTableOptions;
|
|
1024
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
1025
|
+
tree?: TreeTableOptions;
|
|
1008
1026
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
1009
1027
|
rowVisibleWhen?: StyleRule["when"];
|
|
1010
1028
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -1014,6 +1032,8 @@ declare interface ListComponent {
|
|
|
1014
1032
|
}
|
|
1015
1033
|
declare interface ListComponent_2 {
|
|
1016
1034
|
kind: "list";
|
|
1035
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
1036
|
+
meta?: Record<string, unknown>;
|
|
1017
1037
|
id?: string;
|
|
1018
1038
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
1019
1039
|
layout?: "page" | "wide";
|
|
@@ -1023,6 +1043,10 @@ declare interface ListComponent_2 {
|
|
|
1023
1043
|
topMm: number;
|
|
1024
1044
|
widthMm: number;
|
|
1025
1045
|
dataset: string;
|
|
1046
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
1047
|
+
header?: boolean;
|
|
1048
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
1049
|
+
cardinality?: "record";
|
|
1026
1050
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
1027
1051
|
rowKey?: string;
|
|
1028
1052
|
revisionField?: string;
|
|
@@ -1049,6 +1073,8 @@ declare interface ListComponent_2 {
|
|
|
1049
1073
|
computed?: ComputedField_2[];
|
|
1050
1074
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
1051
1075
|
matrix?: MatrixTableOptions_2;
|
|
1076
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
1077
|
+
tree?: TreeTableOptions_2;
|
|
1052
1078
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
1053
1079
|
rowVisibleWhen?: StyleRule_2["when"];
|
|
1054
1080
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -1058,6 +1084,8 @@ declare interface ListComponent_2 {
|
|
|
1058
1084
|
}
|
|
1059
1085
|
declare interface ListComponent_3 {
|
|
1060
1086
|
kind: "list";
|
|
1087
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
1088
|
+
meta?: Record<string, unknown>;
|
|
1061
1089
|
id?: string;
|
|
1062
1090
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
1063
1091
|
layout?: "page" | "wide";
|
|
@@ -1067,6 +1095,10 @@ declare interface ListComponent_3 {
|
|
|
1067
1095
|
topMm: number;
|
|
1068
1096
|
widthMm: number;
|
|
1069
1097
|
dataset: string;
|
|
1098
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
1099
|
+
header?: boolean;
|
|
1100
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
1101
|
+
cardinality?: "record";
|
|
1070
1102
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
1071
1103
|
rowKey?: string;
|
|
1072
1104
|
revisionField?: string;
|
|
@@ -1093,6 +1125,8 @@ declare interface ListComponent_3 {
|
|
|
1093
1125
|
computed?: ComputedField_3[];
|
|
1094
1126
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
1095
1127
|
matrix?: MatrixTableOptions_3;
|
|
1128
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
1129
|
+
tree?: TreeTableOptions_3;
|
|
1096
1130
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
1097
1131
|
rowVisibleWhen?: StyleRule_3["when"];
|
|
1098
1132
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -1421,6 +1455,8 @@ export declare interface MachReportMessages extends Partial<ReportCalculationMes
|
|
|
1421
1455
|
paramPromptDescription?: string;
|
|
1422
1456
|
paramSelectPlaceholder?: string;
|
|
1423
1457
|
paramTextPlaceholder?: string;
|
|
1458
|
+
paramRangeStart?: string;
|
|
1459
|
+
paramRangeEnd?: string;
|
|
1424
1460
|
/** 可选搜索进度文案,旧完整 messages 对象无需新增字段。 */
|
|
1425
1461
|
searching?: string;
|
|
1426
1462
|
importExcel?: string;
|
|
@@ -1858,6 +1894,7 @@ export declare class PlanLoadError extends Error {
|
|
|
1858
1894
|
constructor(message: string);
|
|
1859
1895
|
}
|
|
1860
1896
|
declare interface PlanPage {
|
|
1897
|
+
meta?: Record<string, unknown>;
|
|
1861
1898
|
/** wide 表示完整自然列宽;页面仅为预览的垂直窗口分段。 */
|
|
1862
1899
|
layout?: "page" | "wide";
|
|
1863
1900
|
pageWidthMm: number;
|
|
@@ -2255,6 +2292,27 @@ export declare interface ReportFieldTarget {
|
|
|
2255
2292
|
rowKey?: string | number;
|
|
2256
2293
|
tableId?: string;
|
|
2257
2294
|
}
|
|
2295
|
+
declare interface ReportFlowBand {
|
|
2296
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2297
|
+
componentIds: string[];
|
|
2298
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2299
|
+
topMm: number;
|
|
2300
|
+
heightMm: number;
|
|
2301
|
+
}
|
|
2302
|
+
declare interface ReportFlowBand_2 {
|
|
2303
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2304
|
+
componentIds: string[];
|
|
2305
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2306
|
+
topMm: number;
|
|
2307
|
+
heightMm: number;
|
|
2308
|
+
}
|
|
2309
|
+
declare interface ReportFlowBand_3 {
|
|
2310
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2311
|
+
componentIds: string[];
|
|
2312
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2313
|
+
topMm: number;
|
|
2314
|
+
heightMm: number;
|
|
2315
|
+
}
|
|
2258
2316
|
export declare type ReportIdInput = string | string[] | null | undefined;
|
|
2259
2317
|
export declare interface ReportInteractionOptions {
|
|
2260
2318
|
/** 只读选区计算,默认关闭;不写回业务值或执行导入的 Excel 公式。 */
|
|
@@ -2276,6 +2334,15 @@ export declare interface ReportOutputOptions {
|
|
|
2276
2334
|
/** warn preserves supported output and shows diagnostics; strict rejects known fidelity loss. */
|
|
2277
2335
|
fidelity?: "warn" | "strict";
|
|
2278
2336
|
}
|
|
2337
|
+
declare interface ReportPageFlow {
|
|
2338
|
+
bands: ReportFlowBand[];
|
|
2339
|
+
}
|
|
2340
|
+
declare interface ReportPageFlow_2 {
|
|
2341
|
+
bands: ReportFlowBand_2[];
|
|
2342
|
+
}
|
|
2343
|
+
declare interface ReportPageFlow_3 {
|
|
2344
|
+
bands: ReportFlowBand_3[];
|
|
2345
|
+
}
|
|
2279
2346
|
export declare const ReportPagination: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
2280
2347
|
goto: (page: number) => any;
|
|
2281
2348
|
}, string, MachReportVuePublicProps, Readonly<__VLS_Props_2> & Readonly<{
|
|
@@ -2287,7 +2354,7 @@ declare interface ReportParamDef {
|
|
|
2287
2354
|
field: string;
|
|
2288
2355
|
/** 显示名(缺省用 field) */
|
|
2289
2356
|
label?: string;
|
|
2290
|
-
type?: "text" | "number" | "date" | "select";
|
|
2357
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
2291
2358
|
/** select 选项 */
|
|
2292
2359
|
options?: Array<{
|
|
2293
2360
|
label: string;
|
|
@@ -2296,7 +2363,7 @@ declare interface ReportParamDef {
|
|
|
2296
2363
|
defaultValue?: string;
|
|
2297
2364
|
required?: boolean;
|
|
2298
2365
|
placeholder?: string;
|
|
2299
|
-
/**
|
|
2366
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
2300
2367
|
min?: number | string;
|
|
2301
2368
|
max?: number | string;
|
|
2302
2369
|
minLength?: number;
|
|
@@ -2308,7 +2375,7 @@ declare interface ReportParamDef_2 {
|
|
|
2308
2375
|
field: string;
|
|
2309
2376
|
/** 显示名(缺省用 field) */
|
|
2310
2377
|
label?: string;
|
|
2311
|
-
type?: "text" | "number" | "date" | "select";
|
|
2378
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
2312
2379
|
/** select 选项 */
|
|
2313
2380
|
options?: Array<{
|
|
2314
2381
|
label: string;
|
|
@@ -2317,7 +2384,7 @@ declare interface ReportParamDef_2 {
|
|
|
2317
2384
|
defaultValue?: string;
|
|
2318
2385
|
required?: boolean;
|
|
2319
2386
|
placeholder?: string;
|
|
2320
|
-
/**
|
|
2387
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
2321
2388
|
min?: number | string;
|
|
2322
2389
|
max?: number | string;
|
|
2323
2390
|
minLength?: number;
|
|
@@ -2329,7 +2396,7 @@ declare interface ReportParamDef_3 {
|
|
|
2329
2396
|
field: string;
|
|
2330
2397
|
/** 显示名(缺省用 field) */
|
|
2331
2398
|
label?: string;
|
|
2332
|
-
type?: "text" | "number" | "date" | "select";
|
|
2399
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
2333
2400
|
/** select 选项 */
|
|
2334
2401
|
options?: Array<{
|
|
2335
2402
|
label: string;
|
|
@@ -2338,7 +2405,7 @@ declare interface ReportParamDef_3 {
|
|
|
2338
2405
|
defaultValue?: string;
|
|
2339
2406
|
required?: boolean;
|
|
2340
2407
|
placeholder?: string;
|
|
2341
|
-
/**
|
|
2408
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
2342
2409
|
min?: number | string;
|
|
2343
2410
|
max?: number | string;
|
|
2344
2411
|
minLength?: number;
|
|
@@ -2361,7 +2428,12 @@ export declare const ReportParamPanel: DefineComponent<__VLS_Props_3, {
|
|
|
2361
2428
|
onReset?: (() => any) | undefined;
|
|
2362
2429
|
onQuery?: (() => any) | undefined;
|
|
2363
2430
|
"onUpdate:modelValue"?: ((value: Record<string, string>) => any) | undefined;
|
|
2364
|
-
}>, {
|
|
2431
|
+
}>, {
|
|
2432
|
+
disabled: boolean;
|
|
2433
|
+
issues: readonly ReportParamIssue[];
|
|
2434
|
+
showActions: boolean;
|
|
2435
|
+
showTitle: boolean;
|
|
2436
|
+
}>;
|
|
2365
2437
|
export declare interface ReportPreferencesAdapter {
|
|
2366
2438
|
load(key: string): Partial<ReportPreviewPreferences> | null | Promise<Partial<ReportPreviewPreferences> | null>;
|
|
2367
2439
|
save(key: string, value: Readonly<Partial<ReportPreviewPreferences>>): void | Promise<void>;
|
|
@@ -2607,6 +2679,9 @@ declare interface TemplatePage {
|
|
|
2607
2679
|
marginLeftMm?: number;
|
|
2608
2680
|
marginRightMm?: number;
|
|
2609
2681
|
components: TemplateComponent[];
|
|
2682
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2683
|
+
flow?: ReportPageFlow;
|
|
2684
|
+
meta?: Record<string, unknown>;
|
|
2610
2685
|
}
|
|
2611
2686
|
declare interface TemplatePage_2 {
|
|
2612
2687
|
widthMm: number;
|
|
@@ -2618,6 +2693,9 @@ declare interface TemplatePage_2 {
|
|
|
2618
2693
|
marginLeftMm?: number;
|
|
2619
2694
|
marginRightMm?: number;
|
|
2620
2695
|
components: TemplateComponent_2[];
|
|
2696
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2697
|
+
flow?: ReportPageFlow_2;
|
|
2698
|
+
meta?: Record<string, unknown>;
|
|
2621
2699
|
}
|
|
2622
2700
|
declare interface TemplatePage_3 {
|
|
2623
2701
|
widthMm: number;
|
|
@@ -2629,6 +2707,9 @@ declare interface TemplatePage_3 {
|
|
|
2629
2707
|
marginLeftMm?: number;
|
|
2630
2708
|
marginRightMm?: number;
|
|
2631
2709
|
components: TemplateComponent_3[];
|
|
2710
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2711
|
+
flow?: ReportPageFlow_3;
|
|
2712
|
+
meta?: Record<string, unknown>;
|
|
2632
2713
|
}
|
|
2633
2714
|
/**
|
|
2634
2715
|
* 文本测量与折行(分页/Canvas/PDF 共用的唯一折行真相源)。
|
|
@@ -2651,6 +2732,63 @@ declare interface TextMeasurer {
|
|
|
2651
2732
|
/** theme 对象 → CSS 自定义属性 style 对象(注入组件外壳) */
|
|
2652
2733
|
export declare function themeToCssVars(theme: Partial<MachReportTheme>): CSSProperties;
|
|
2653
2734
|
export declare function toErrorDetail(error: unknown): MachReportErrorDetail;
|
|
2735
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
2736
|
+
declare interface TreeTableOptions {
|
|
2737
|
+
input: "flat" | "nested";
|
|
2738
|
+
idField: string;
|
|
2739
|
+
/** Flat roots have null/undefined parent values. */
|
|
2740
|
+
parentField?: string;
|
|
2741
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
2742
|
+
childrenField?: string;
|
|
2743
|
+
labelField: string;
|
|
2744
|
+
indentMm?: number;
|
|
2745
|
+
orphan?: "error" | "root";
|
|
2746
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
2747
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
2748
|
+
aggregates?: AggregateDefinition[];
|
|
2749
|
+
maxRows?: number;
|
|
2750
|
+
maxDepth?: number;
|
|
2751
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
2752
|
+
maxAggregationVisits?: number;
|
|
2753
|
+
}
|
|
2754
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
2755
|
+
declare interface TreeTableOptions_2 {
|
|
2756
|
+
input: "flat" | "nested";
|
|
2757
|
+
idField: string;
|
|
2758
|
+
/** Flat roots have null/undefined parent values. */
|
|
2759
|
+
parentField?: string;
|
|
2760
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
2761
|
+
childrenField?: string;
|
|
2762
|
+
labelField: string;
|
|
2763
|
+
indentMm?: number;
|
|
2764
|
+
orphan?: "error" | "root";
|
|
2765
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
2766
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
2767
|
+
aggregates?: AggregateDefinition_2[];
|
|
2768
|
+
maxRows?: number;
|
|
2769
|
+
maxDepth?: number;
|
|
2770
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
2771
|
+
maxAggregationVisits?: number;
|
|
2772
|
+
}
|
|
2773
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
2774
|
+
declare interface TreeTableOptions_3 {
|
|
2775
|
+
input: "flat" | "nested";
|
|
2776
|
+
idField: string;
|
|
2777
|
+
/** Flat roots have null/undefined parent values. */
|
|
2778
|
+
parentField?: string;
|
|
2779
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
2780
|
+
childrenField?: string;
|
|
2781
|
+
labelField: string;
|
|
2782
|
+
indentMm?: number;
|
|
2783
|
+
orphan?: "error" | "root";
|
|
2784
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
2785
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
2786
|
+
aggregates?: AggregateDefinition_3[];
|
|
2787
|
+
maxRows?: number;
|
|
2788
|
+
maxDepth?: number;
|
|
2789
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
2790
|
+
maxAggregationVisits?: number;
|
|
2791
|
+
}
|
|
2654
2792
|
/**
|
|
2655
2793
|
* 父组件统一入口,无需手写组件实例类型或可选链:
|
|
2656
2794
|
* `const report = useMachReport()` → `<MachReportPreview :ref="report.ref" />`。
|