@agile-team/mach-report 2.10.0 → 2.11.1
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-LWX6G1A2.js +1465 -0
- package/dist/ExcelBindingWizard-a4kslPHF.cjs +1 -0
- package/dist/ParamEditor-BLaE5q5W.js +522 -0
- package/dist/ParamEditor-MBBC7lUE.cjs +1 -0
- package/dist/ReportBatchPanel-B5ClP9tm.js +350 -0
- package/dist/ReportBatchPanel-Dc-SDkYA.cjs +1 -0
- package/dist/ReportPreview-DWXROHBP.cjs +6 -0
- package/dist/ReportPreview-DiNXhQI0.js +4138 -0
- package/dist/ReportTemplateLibrary-5fk5CQBO.cjs +1 -0
- package/dist/ReportTemplateLibrary-BZB-XWjj.js +311 -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 +730 -9
- package/dist/designer.d.ts +730 -9
- package/dist/designer.js +2093 -1785
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +161 -3
- package/dist/index.d.ts +161 -3
- package/dist/index.js +486 -431
- 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/designer.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ComponentOptionsMixin } from 'vue';
|
|
2
|
+
import { ComputedRef } from 'vue';
|
|
2
3
|
import { DefineComponent } from 'vue';
|
|
3
4
|
declare interface AggregateDefinition {
|
|
4
5
|
/** Output column; valueField defaults to this field. */
|
|
@@ -30,6 +31,8 @@ declare interface AggregateDefinition_3 {
|
|
|
30
31
|
declare type AggregateOperation = "sum" | "count" | "avg" | "min" | "max" | "weightedAvg";
|
|
31
32
|
declare type AggregateOperation_2 = "sum" | "count" | "avg" | "min" | "max" | "weightedAvg";
|
|
32
33
|
declare type AggregateOperation_3 = "sum" | "count" | "avg" | "min" | "max" | "weightedAvg";
|
|
34
|
+
declare type AnyExcelBindingDocumentResult = ExcelBindingDocumentResult | ExcelRegionBindingDocumentResult;
|
|
35
|
+
declare type AnyExcelBindingSession = ExcelBindingSession | ExcelRegionBindingSession;
|
|
33
36
|
declare interface AssetRenderBudget {
|
|
34
37
|
/** Maximum newly rendered assets, default 1000. Existing imageData is kept unchanged. */
|
|
35
38
|
maxAssets?: number;
|
|
@@ -267,6 +270,50 @@ declare type DatasetRows = Record<string, Record<string, unknown>[]>;
|
|
|
267
270
|
declare type DatasetRows_2 = Record<string, Record<string, unknown>[]>;
|
|
268
271
|
/** Optional wizard labels remain independent of the general designer configuration. */
|
|
269
272
|
export declare const EXCEL_BINDING_MESSAGES: {
|
|
273
|
+
tableMode: string;
|
|
274
|
+
multiRegions: string;
|
|
275
|
+
multiHint: string;
|
|
276
|
+
addRegion: string;
|
|
277
|
+
removeRegion: string;
|
|
278
|
+
regionProperties: string;
|
|
279
|
+
regionReady: string;
|
|
280
|
+
regionPending: string;
|
|
281
|
+
regionError: string;
|
|
282
|
+
locateIssue: string;
|
|
283
|
+
nextDataset: string;
|
|
284
|
+
nextRowKey: string;
|
|
285
|
+
nextField: string;
|
|
286
|
+
nextRange: string;
|
|
287
|
+
nextRegion: string;
|
|
288
|
+
nextHeader: string;
|
|
289
|
+
nextFooter: string;
|
|
290
|
+
nextContract: string;
|
|
291
|
+
dataContract: string;
|
|
292
|
+
inspectIssues: string;
|
|
293
|
+
previousIssues: string;
|
|
294
|
+
nextIssues: string;
|
|
295
|
+
noCellSelection: string;
|
|
296
|
+
limitRegions: string;
|
|
297
|
+
applying: string;
|
|
298
|
+
regionCoordinates: string;
|
|
299
|
+
regionMode: string;
|
|
300
|
+
recordMode: string;
|
|
301
|
+
repeatMode: string;
|
|
302
|
+
recordHint: string;
|
|
303
|
+
repeatHint: string;
|
|
304
|
+
bindRegionHeader: string;
|
|
305
|
+
noRegionHeader: string;
|
|
306
|
+
clearHeader: string;
|
|
307
|
+
flowFooter: string;
|
|
308
|
+
flowFooterHint: string;
|
|
309
|
+
bindFooter: string;
|
|
310
|
+
clearFooter: string;
|
|
311
|
+
concurrency: string;
|
|
312
|
+
revisionField: string;
|
|
313
|
+
sourceTokenField: string;
|
|
314
|
+
selectionCellLabel: string;
|
|
315
|
+
searchFields: string;
|
|
316
|
+
fieldLimit: string;
|
|
270
317
|
restoreDraft: string;
|
|
271
318
|
title: string;
|
|
272
319
|
intro: string;
|
|
@@ -392,15 +439,15 @@ export declare const ExcelBindingWizard: DefineComponent<ExcelBindingWizardOptio
|
|
|
392
439
|
onDirty?: ((value: boolean) => any) | undefined;
|
|
393
440
|
onApply?: ((result: ExcelBindingWizardApply) => any) | undefined;
|
|
394
441
|
}>, {}>;
|
|
395
|
-
export declare
|
|
396
|
-
session:
|
|
397
|
-
}
|
|
442
|
+
export declare type ExcelBindingWizardApply = AnyExcelBindingDocumentResult & {
|
|
443
|
+
session: AnyExcelBindingSession;
|
|
444
|
+
};
|
|
398
445
|
export declare interface ExcelBindingWizardOptions {
|
|
399
446
|
datasets: readonly ExcelBindingDataset[];
|
|
400
447
|
/** An embedded editor can decline replacement; success is shown only after acceptance. */
|
|
401
448
|
accept?: (result: ExcelBindingWizardApply) => boolean | Promise<boolean>;
|
|
402
449
|
/** Source + exact coordinates + mappings. No File, functions, network credentials, or live result rows. */
|
|
403
|
-
session?:
|
|
450
|
+
session?: AnyExcelBindingSession;
|
|
404
451
|
identity?: {
|
|
405
452
|
id: string;
|
|
406
453
|
name: string;
|
|
@@ -485,6 +532,43 @@ declare interface ExcelImportResult {
|
|
|
485
532
|
warnings: string[];
|
|
486
533
|
sheets: ExcelImportedSheet[];
|
|
487
534
|
}
|
|
535
|
+
/** A row prototype is replaced, never copied into a generated business report. */
|
|
536
|
+
declare interface ExcelRegionBinding {
|
|
537
|
+
id: string;
|
|
538
|
+
/** One physical source row, with any contiguous subset of the sheet columns. */
|
|
539
|
+
range: string;
|
|
540
|
+
dataset: string;
|
|
541
|
+
/** record accepts zero or one row; repeat expands vertically and shifts following bands. */
|
|
542
|
+
mode: "record" | "repeat";
|
|
543
|
+
fields: string[];
|
|
544
|
+
rowKey: string;
|
|
545
|
+
revisionField?: string;
|
|
546
|
+
sourceTokenField?: string;
|
|
547
|
+
/** Optional immediately preceding header, with the same physical columns. */
|
|
548
|
+
headerRange?: string;
|
|
549
|
+
}
|
|
550
|
+
declare interface ExcelRegionBindingDocumentResult {
|
|
551
|
+
document: ReportTemplateDocument_2;
|
|
552
|
+
recipe: ExcelRegionBindingRecipe;
|
|
553
|
+
warnings: string[];
|
|
554
|
+
}
|
|
555
|
+
/** Version 2 describes several independent, vertically ordered data regions on one Sheet. */
|
|
556
|
+
declare interface ExcelRegionBindingRecipe {
|
|
557
|
+
version: "2.0";
|
|
558
|
+
sheet: string;
|
|
559
|
+
regions: ExcelRegionBinding[];
|
|
560
|
+
/** Full-width source rows reserved on every page; excluded from flowing content. */
|
|
561
|
+
footerRange?: string;
|
|
562
|
+
}
|
|
563
|
+
declare interface ExcelRegionBindingSession {
|
|
564
|
+
version: "2.0";
|
|
565
|
+
source: ExcelImportResult;
|
|
566
|
+
recipe: ExcelRegionBindingRecipe;
|
|
567
|
+
identity: {
|
|
568
|
+
id: string;
|
|
569
|
+
name: string;
|
|
570
|
+
};
|
|
571
|
+
}
|
|
488
572
|
declare interface ExpressionOptions {
|
|
489
573
|
numeric?: "number" | "decimal";
|
|
490
574
|
digits?: number;
|
|
@@ -510,6 +594,8 @@ declare interface GridCell {
|
|
|
510
594
|
value?: string | number | boolean | null;
|
|
511
595
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
512
596
|
numberFormat?: string;
|
|
597
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
598
|
+
indentMm?: number;
|
|
513
599
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
514
600
|
valueType?: "text" | "number" | "boolean";
|
|
515
601
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -531,6 +617,8 @@ declare interface GridCell_2 {
|
|
|
531
617
|
value?: string | number | boolean | null;
|
|
532
618
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
533
619
|
numberFormat?: string;
|
|
620
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
621
|
+
indentMm?: number;
|
|
534
622
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
535
623
|
valueType?: "text" | "number" | "boolean";
|
|
536
624
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -552,6 +640,8 @@ declare interface GridCell_3 {
|
|
|
552
640
|
value?: string | number | boolean | null;
|
|
553
641
|
/** Excel 数字格式(例如 #,##0.00 / 0.00%),不改变 text。 */
|
|
554
642
|
numberFormat?: string;
|
|
643
|
+
/** Physical left inset for hierarchical labels; raw value stays unchanged. */
|
|
644
|
+
indentMm?: number;
|
|
555
645
|
/** 编辑输入类型;省略时只按原始值推断,数字字符串不会被转换为数值。 */
|
|
556
646
|
valueType?: "text" | "number" | "boolean";
|
|
557
647
|
/** 单元格级编辑控制;预览仍需显式开启 editing。 */
|
|
@@ -650,6 +740,8 @@ declare interface ListColumn_3 {
|
|
|
650
740
|
}
|
|
651
741
|
declare interface ListComponent {
|
|
652
742
|
kind: "list";
|
|
743
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
744
|
+
meta?: Record<string, unknown>;
|
|
653
745
|
id?: string;
|
|
654
746
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
655
747
|
layout?: "page" | "wide";
|
|
@@ -659,6 +751,10 @@ declare interface ListComponent {
|
|
|
659
751
|
topMm: number;
|
|
660
752
|
widthMm: number;
|
|
661
753
|
dataset: string;
|
|
754
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
755
|
+
header?: boolean;
|
|
756
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
757
|
+
cardinality?: "record";
|
|
662
758
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
663
759
|
rowKey?: string;
|
|
664
760
|
revisionField?: string;
|
|
@@ -685,6 +781,8 @@ declare interface ListComponent {
|
|
|
685
781
|
computed?: ComputedField[];
|
|
686
782
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
687
783
|
matrix?: MatrixTableOptions;
|
|
784
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
785
|
+
tree?: TreeTableOptions;
|
|
688
786
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
689
787
|
rowVisibleWhen?: StyleRule["when"];
|
|
690
788
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -694,6 +792,8 @@ declare interface ListComponent {
|
|
|
694
792
|
}
|
|
695
793
|
declare interface ListComponent_2 {
|
|
696
794
|
kind: "list";
|
|
795
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
796
|
+
meta?: Record<string, unknown>;
|
|
697
797
|
id?: string;
|
|
698
798
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
699
799
|
layout?: "page" | "wide";
|
|
@@ -703,6 +803,10 @@ declare interface ListComponent_2 {
|
|
|
703
803
|
topMm: number;
|
|
704
804
|
widthMm: number;
|
|
705
805
|
dataset: string;
|
|
806
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
807
|
+
header?: boolean;
|
|
808
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
809
|
+
cardinality?: "record";
|
|
706
810
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
707
811
|
rowKey?: string;
|
|
708
812
|
revisionField?: string;
|
|
@@ -729,6 +833,8 @@ declare interface ListComponent_2 {
|
|
|
729
833
|
computed?: ComputedField_2[];
|
|
730
834
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
731
835
|
matrix?: MatrixTableOptions_2;
|
|
836
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
837
|
+
tree?: TreeTableOptions_2;
|
|
732
838
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
733
839
|
rowVisibleWhen?: StyleRule_2["when"];
|
|
734
840
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -738,6 +844,8 @@ declare interface ListComponent_2 {
|
|
|
738
844
|
}
|
|
739
845
|
declare interface ListComponent_3 {
|
|
740
846
|
kind: "list";
|
|
847
|
+
/** Opaque serializable layout annotations; interpreted only by explicit optional adapters. */
|
|
848
|
+
meta?: Record<string, unknown>;
|
|
741
849
|
id?: string;
|
|
742
850
|
/** 宽表标记用于连续 Excel;不改变低层列表的列宽和分页算法。 */
|
|
743
851
|
layout?: "page" | "wide";
|
|
@@ -747,6 +855,10 @@ declare interface ListComponent_3 {
|
|
|
747
855
|
topMm: number;
|
|
748
856
|
widthMm: number;
|
|
749
857
|
dataset: string;
|
|
858
|
+
/** Headerless record/region bindings do not allocate a synthetic list header. */
|
|
859
|
+
header?: boolean;
|
|
860
|
+
/** A fixed record region rejects multiple rows instead of dropping source data. */
|
|
861
|
+
cardinality?: "record";
|
|
750
862
|
/** 数据集中稳定业务主键的字段名;省略时编辑仅有计划内坐标。 */
|
|
751
863
|
rowKey?: string;
|
|
752
864
|
revisionField?: string;
|
|
@@ -773,6 +885,8 @@ declare interface ListComponent_3 {
|
|
|
773
885
|
computed?: ComputedField_3[];
|
|
774
886
|
/** Dynamic pivot of the current source dataset, with read-only derived identities. */
|
|
775
887
|
matrix?: MatrixTableOptions_3;
|
|
888
|
+
/** Full ordered hierarchy; source parent values and descendant-leaf rollups are explicit. */
|
|
889
|
+
tree?: TreeTableOptions_3;
|
|
776
890
|
/** Explicit row visibility; hidden rows do not participate in summaries. */
|
|
777
891
|
rowVisibleWhen?: StyleRule_3["when"];
|
|
778
892
|
/** Master/detail relation is keyed by business identity, never by display row index. */
|
|
@@ -1003,6 +1117,172 @@ declare interface MachReportMessages extends Partial<ReportCalculationMessages>
|
|
|
1003
1117
|
paramPromptDescription?: string;
|
|
1004
1118
|
paramSelectPlaceholder?: string;
|
|
1005
1119
|
paramTextPlaceholder?: string;
|
|
1120
|
+
paramRangeStart?: string;
|
|
1121
|
+
paramRangeEnd?: string;
|
|
1122
|
+
/** 可选搜索进度文案,旧完整 messages 对象无需新增字段。 */
|
|
1123
|
+
searching?: string;
|
|
1124
|
+
importExcel?: string;
|
|
1125
|
+
importing?: string;
|
|
1126
|
+
editCell?: string;
|
|
1127
|
+
editingHint?: string;
|
|
1128
|
+
saving?: string;
|
|
1129
|
+
editInvalidNumber?: string;
|
|
1130
|
+
editInvalidBoolean?: string;
|
|
1131
|
+
editConflict?: string;
|
|
1132
|
+
settings?: string;
|
|
1133
|
+
settingsDisplay?: string;
|
|
1134
|
+
settingsExport?: string;
|
|
1135
|
+
settingsData?: string;
|
|
1136
|
+
settingsUnavailable?: string;
|
|
1137
|
+
settingsReset?: string;
|
|
1138
|
+
settingsClose?: string;
|
|
1139
|
+
search?: string;
|
|
1140
|
+
closeSearch?: string;
|
|
1141
|
+
prevSearchMatch?: string;
|
|
1142
|
+
nextSearchMatch?: string;
|
|
1143
|
+
zoom?: string;
|
|
1144
|
+
settingsLocal?: string;
|
|
1145
|
+
editingLocal?: string;
|
|
1146
|
+
editingSaved?: string;
|
|
1147
|
+
importLocal?: string;
|
|
1148
|
+
emptyDescription?: string;
|
|
1149
|
+
undo?: string;
|
|
1150
|
+
redo?: string;
|
|
1151
|
+
restoreChanges?: string;
|
|
1152
|
+
changes?: string;
|
|
1153
|
+
changesCount?: string;
|
|
1154
|
+
changesEmpty?: string;
|
|
1155
|
+
changesBefore?: string;
|
|
1156
|
+
changesAfter?: string;
|
|
1157
|
+
editAtomicRequired?: string;
|
|
1158
|
+
clipboardLimit?: string;
|
|
1159
|
+
preferencesError?: string;
|
|
1160
|
+
freezeHeaders?: string;
|
|
1161
|
+
frozenColumns?: string;
|
|
1162
|
+
sections?: string;
|
|
1163
|
+
locateField?: string;
|
|
1164
|
+
locateFieldPlaceholder?: string;
|
|
1165
|
+
locateFieldMissing?: string;
|
|
1166
|
+
importSummary?: string;
|
|
1167
|
+
importPreserved?: string;
|
|
1168
|
+
importWarnings?: string;
|
|
1169
|
+
importReadOnly?: string;
|
|
1170
|
+
conflicts?: string;
|
|
1171
|
+
editReadOnly?: string;
|
|
1172
|
+
editMissing?: string;
|
|
1173
|
+
editRecalculationUnavailable?: string;
|
|
1174
|
+
editDuplicate?: string;
|
|
1175
|
+
clipboardInvalid?: string;
|
|
1176
|
+
editSaved?: string;
|
|
1177
|
+
settingsPanes?: string;
|
|
1178
|
+
columnDirectory?: string;
|
|
1179
|
+
columnSearch?: string;
|
|
1180
|
+
columnNoMatches?: string;
|
|
1181
|
+
columnResults?: string;
|
|
1182
|
+
columnGroup?: string;
|
|
1183
|
+
discardTitle?: string;
|
|
1184
|
+
discardDescription?: string;
|
|
1185
|
+
discardKeep?: string;
|
|
1186
|
+
discardProceed?: string;
|
|
1187
|
+
taskQuery?: string;
|
|
1188
|
+
taskValidate?: string;
|
|
1189
|
+
taskLayout?: string;
|
|
1190
|
+
taskAssets?: string;
|
|
1191
|
+
taskEncode?: string;
|
|
1192
|
+
taskDownload?: string;
|
|
1193
|
+
taskPrint?: string;
|
|
1194
|
+
taskCancel?: string;
|
|
1195
|
+
taskCancelled?: string;
|
|
1196
|
+
diagnosticsTitle?: string;
|
|
1197
|
+
diagnosticsSearch?: string;
|
|
1198
|
+
diagnosticsMore?: string;
|
|
1199
|
+
diagnosticsLocate?: string;
|
|
1200
|
+
diagnosticsLocation?: string;
|
|
1201
|
+
diagnosticsStrict?: string;
|
|
1202
|
+
diagnosticsDetails?: string;
|
|
1203
|
+
diagnosticMissingImage?: string;
|
|
1204
|
+
diagnosticUnsupported?: string;
|
|
1205
|
+
diagnosticUnsupportedStyle?: string;
|
|
1206
|
+
diagnosticImageFormat?: string;
|
|
1207
|
+
diagnosticRichText?: string;
|
|
1208
|
+
diagnosticNested?: string;
|
|
1209
|
+
diagnosticImageAsync?: string;
|
|
1210
|
+
diagnosticImageDecode?: string;
|
|
1211
|
+
diagnosticAssetFailed?: string;
|
|
1212
|
+
diagnosticAssetBudget?: string;
|
|
1213
|
+
}
|
|
1214
|
+
/**
|
|
1215
|
+
* 配置中心(对齐 mach-table 的 defineMachTableConfig 体验):
|
|
1216
|
+
* - 应用级:app.use(machReportPlugin, { config: defineMachReportConfig({...}) })
|
|
1217
|
+
* - 路由级叠加:provideMachReportConfig(overlay)(响应式,就近覆盖)
|
|
1218
|
+
* - 优先级:组件 props > 路由级叠加 > preset > defaults(props 永远最高)
|
|
1219
|
+
*/
|
|
1220
|
+
/** 工具栏与状态文案(默认简体中文;出海场景覆写) */
|
|
1221
|
+
declare interface MachReportMessages_2 extends Partial<ReportCalculationMessages_2> {
|
|
1222
|
+
exportMenu?: string;
|
|
1223
|
+
exportMenuDescription?: string;
|
|
1224
|
+
clearSearch?: string;
|
|
1225
|
+
searchHint?: string;
|
|
1226
|
+
searchNoMatches?: string;
|
|
1227
|
+
pageJump?: string;
|
|
1228
|
+
pageJumpInvalid?: string;
|
|
1229
|
+
pageJumpHint?: string;
|
|
1230
|
+
pagination?: string;
|
|
1231
|
+
columnSearchHint?: string;
|
|
1232
|
+
columnSearchShortcut?: string;
|
|
1233
|
+
closeColumnDirectory?: string;
|
|
1234
|
+
columnResultsMore?: string;
|
|
1235
|
+
columnCount?: string;
|
|
1236
|
+
settingsGeneral?: string;
|
|
1237
|
+
settingsTools?: string;
|
|
1238
|
+
settingsAdvanced?: string;
|
|
1239
|
+
settingsAdvancedDescription?: string;
|
|
1240
|
+
settingsCalculations?: string;
|
|
1241
|
+
settingsCalculationsDescription?: string;
|
|
1242
|
+
title: string;
|
|
1243
|
+
prevPage: string;
|
|
1244
|
+
nextPage: string;
|
|
1245
|
+
/** 页码显示模板,{cur}/{total} 占位 */
|
|
1246
|
+
pageInfo: string;
|
|
1247
|
+
fitWidth: string;
|
|
1248
|
+
exportHtml: string;
|
|
1249
|
+
exportPdf: string;
|
|
1250
|
+
exportExcel: string;
|
|
1251
|
+
exportImage: string;
|
|
1252
|
+
exportWord: string;
|
|
1253
|
+
/** 导出进行中提示,{format} 占位 */
|
|
1254
|
+
exporting: string;
|
|
1255
|
+
print: string;
|
|
1256
|
+
pdfWindow: string;
|
|
1257
|
+
loading: string;
|
|
1258
|
+
empty: string;
|
|
1259
|
+
/** @deprecated 未被组件消费,将在下个大版本移除(保留仅为类型兼容) */
|
|
1260
|
+
errorPrefix: string;
|
|
1261
|
+
retry: string;
|
|
1262
|
+
/** 可选新增文案,保留旧完整文案对象兼容。 */
|
|
1263
|
+
pdfFontUnavailable?: string;
|
|
1264
|
+
/** 搜索框占位文案 */
|
|
1265
|
+
searchPlaceholder: string;
|
|
1266
|
+
/** 搜索命中计数,{cur}/{total} 占位 */
|
|
1267
|
+
matchInfo: string;
|
|
1268
|
+
/** 上/下一个命中 */
|
|
1269
|
+
prevMatch: string;
|
|
1270
|
+
nextMatch: string;
|
|
1271
|
+
/** 缩略图侧栏开关 */
|
|
1272
|
+
thumbnails: string;
|
|
1273
|
+
/** 参数面板 */
|
|
1274
|
+
paramsTitle: string;
|
|
1275
|
+
query: string;
|
|
1276
|
+
reset: string;
|
|
1277
|
+
/** 必填缺失提示({label} 占位) */
|
|
1278
|
+
paramRequired: string;
|
|
1279
|
+
paramInvalid?: string;
|
|
1280
|
+
paramPrompt?: string;
|
|
1281
|
+
paramPromptDescription?: string;
|
|
1282
|
+
paramSelectPlaceholder?: string;
|
|
1283
|
+
paramTextPlaceholder?: string;
|
|
1284
|
+
paramRangeStart?: string;
|
|
1285
|
+
paramRangeEnd?: string;
|
|
1006
1286
|
/** 可选搜索进度文案,旧完整 messages 对象无需新增字段。 */
|
|
1007
1287
|
searching?: string;
|
|
1008
1288
|
importExcel?: string;
|
|
@@ -1202,6 +1482,77 @@ declare interface OutputTaskOptions_2 {
|
|
|
1202
1482
|
signal?: AbortSignal;
|
|
1203
1483
|
onProgress?: (completed: number, total: number) => void;
|
|
1204
1484
|
}
|
|
1485
|
+
export declare const PARAM_EDITOR_MESSAGES: {
|
|
1486
|
+
paramsTool: string;
|
|
1487
|
+
paramsDescription: string;
|
|
1488
|
+
paramsDirectory: string;
|
|
1489
|
+
paramAdd: string;
|
|
1490
|
+
paramEmpty: string;
|
|
1491
|
+
paramEmptyHint: string;
|
|
1492
|
+
paramField: string;
|
|
1493
|
+
paramLabel: string;
|
|
1494
|
+
paramType: string;
|
|
1495
|
+
paramRequired: string;
|
|
1496
|
+
paramPlaceholder: string;
|
|
1497
|
+
paramDefaultEnabled: string;
|
|
1498
|
+
paramDefault: string;
|
|
1499
|
+
paramMinimum: string;
|
|
1500
|
+
paramMaximum: string;
|
|
1501
|
+
paramMinLength: string;
|
|
1502
|
+
paramMaxLength: string;
|
|
1503
|
+
paramOptions: string;
|
|
1504
|
+
paramOptionValue: string;
|
|
1505
|
+
paramOptionLabel: string;
|
|
1506
|
+
paramOptionAdd: string;
|
|
1507
|
+
paramRemove: string;
|
|
1508
|
+
paramOptionRemove: string;
|
|
1509
|
+
paramMoveUp: string;
|
|
1510
|
+
paramMoveDown: string;
|
|
1511
|
+
paramApply: string;
|
|
1512
|
+
paramRestore: string;
|
|
1513
|
+
paramPending: string;
|
|
1514
|
+
paramReady: string;
|
|
1515
|
+
paramInvalid: string;
|
|
1516
|
+
paramIssueCount: string;
|
|
1517
|
+
paramLocateFirst: string;
|
|
1518
|
+
paramUnnamed: string;
|
|
1519
|
+
paramRangeStart: string;
|
|
1520
|
+
paramRangeEnd: string;
|
|
1521
|
+
paramConflict: string;
|
|
1522
|
+
paramApplyFailed: string;
|
|
1523
|
+
paramRenameHint: string;
|
|
1524
|
+
paramChanges: string;
|
|
1525
|
+
paramAdded: string;
|
|
1526
|
+
paramRemoved: string;
|
|
1527
|
+
paramWire: string;
|
|
1528
|
+
paramNoDefault: string;
|
|
1529
|
+
paramRangeHint: string;
|
|
1530
|
+
paramText: string;
|
|
1531
|
+
paramNumber: string;
|
|
1532
|
+
paramDate: string;
|
|
1533
|
+
paramMonth: string;
|
|
1534
|
+
paramYear: string;
|
|
1535
|
+
paramDateRange: string;
|
|
1536
|
+
paramSelect: string;
|
|
1537
|
+
};
|
|
1538
|
+
export declare const ParamEditor: DefineComponent<ParamEditorOptions, {
|
|
1539
|
+
pending: ComputedRef<boolean>;
|
|
1540
|
+
reset: () => void;
|
|
1541
|
+
apply: () => boolean;
|
|
1542
|
+
locateIssue: () => Promise<void>;
|
|
1543
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
1544
|
+
dirty: (pending: boolean) => any;
|
|
1545
|
+
}, string, MachReportVuePublicProps, Readonly<ParamEditorOptions> & Readonly<{
|
|
1546
|
+
onDirty?: ((pending: boolean) => any) | undefined;
|
|
1547
|
+
}>, {}>;
|
|
1548
|
+
export declare type ParamEditorMessages = typeof PARAM_EDITOR_MESSAGES;
|
|
1549
|
+
export declare interface ParamEditorOptions {
|
|
1550
|
+
document: ReportTemplateDocument;
|
|
1551
|
+
readonly?: boolean;
|
|
1552
|
+
messages?: Partial<ParamEditorMessages>;
|
|
1553
|
+
/** Return false when the enclosing template transaction rejects the change. */
|
|
1554
|
+
accept(definitions: ReportParamDef[]): boolean;
|
|
1555
|
+
}
|
|
1205
1556
|
declare interface PlanComponent {
|
|
1206
1557
|
/** Template page furniture repeats per page and reserves its vertical band. */
|
|
1207
1558
|
pageAnchor?: "header" | "footer";
|
|
@@ -1369,6 +1720,7 @@ declare const PRODUCT_TEMPLATE_EDITOR_MESSAGES: {
|
|
|
1369
1720
|
canvasHint: string;
|
|
1370
1721
|
zoom: string;
|
|
1371
1722
|
sampleRows: string;
|
|
1723
|
+
treeSampleHint: string;
|
|
1372
1724
|
resizeComponent: string;
|
|
1373
1725
|
resizeColumn: string;
|
|
1374
1726
|
insertComponent: string;
|
|
@@ -1403,10 +1755,21 @@ declare const PRODUCT_TEMPLATE_EDITOR_MESSAGES: {
|
|
|
1403
1755
|
headerRow: string;
|
|
1404
1756
|
headerFirst: string;
|
|
1405
1757
|
headerLast: string;
|
|
1758
|
+
flowLayout: string;
|
|
1759
|
+
paramsTool: string;
|
|
1406
1760
|
excelTool: string;
|
|
1407
1761
|
rulesTool: string;
|
|
1408
1762
|
reviewTool: string;
|
|
1409
1763
|
toolsDescription: string;
|
|
1764
|
+
unapplied: string;
|
|
1765
|
+
pendingToolsLabel: string;
|
|
1766
|
+
pendingToolsHint: string;
|
|
1767
|
+
saveReadonly: string;
|
|
1768
|
+
saveConfirmation: string;
|
|
1769
|
+
saveUnchanged: string;
|
|
1770
|
+
saveInvalid: string;
|
|
1771
|
+
saveJsonPending: string;
|
|
1772
|
+
returnToConfiguration: string;
|
|
1410
1773
|
rulesNeedList: string;
|
|
1411
1774
|
undo: string;
|
|
1412
1775
|
redo: string;
|
|
@@ -1450,6 +1813,68 @@ declare const PRODUCT_TEMPLATE_EDITOR_MESSAGES: {
|
|
|
1450
1813
|
fieldPosition: string;
|
|
1451
1814
|
previewFieldDirectory: string;
|
|
1452
1815
|
};
|
|
1816
|
+
export declare const REPORT_BATCH_MESSAGES: {
|
|
1817
|
+
batchTitle: string;
|
|
1818
|
+
batchDescription: string;
|
|
1819
|
+
batchAdd: string;
|
|
1820
|
+
batchDuplicate: string;
|
|
1821
|
+
batchDuplicateCompleted: string;
|
|
1822
|
+
batchRemove: string;
|
|
1823
|
+
batchRun: string;
|
|
1824
|
+
batchContinue: string;
|
|
1825
|
+
batchRunning: string;
|
|
1826
|
+
batchRetry: string;
|
|
1827
|
+
batchCancel: string;
|
|
1828
|
+
batchCancelling: string;
|
|
1829
|
+
batchPending: string;
|
|
1830
|
+
batchCompleted: string;
|
|
1831
|
+
batchCompletedHint: string;
|
|
1832
|
+
batchFailed: string;
|
|
1833
|
+
batchCancelled: string;
|
|
1834
|
+
batchCase: string;
|
|
1835
|
+
batchProgress: string;
|
|
1836
|
+
batchInvalid: string;
|
|
1837
|
+
batchEmpty: string;
|
|
1838
|
+
batchNoMatches: string;
|
|
1839
|
+
batchFilter: string;
|
|
1840
|
+
batchAll: string;
|
|
1841
|
+
batchNextFailure: string;
|
|
1842
|
+
batchNoInstance: string;
|
|
1843
|
+
batchOpen: string;
|
|
1844
|
+
batchLimit: string;
|
|
1845
|
+
batchChanged: string;
|
|
1846
|
+
batchPages: string;
|
|
1847
|
+
batchPrevious: string;
|
|
1848
|
+
batchNext: string;
|
|
1849
|
+
batchPage: string;
|
|
1850
|
+
};
|
|
1851
|
+
declare interface ReportBatchCase {
|
|
1852
|
+
id: string;
|
|
1853
|
+
params: Record<string, string>;
|
|
1854
|
+
}
|
|
1855
|
+
export declare type ReportBatchMessages = typeof REPORT_BATCH_MESSAGES;
|
|
1856
|
+
export declare const ReportBatchPanel: DefineComponent<ReportBatchPanelOptions, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
1857
|
+
"open-instance": (receipt: ReportBatchReceipt) => any;
|
|
1858
|
+
}, string, MachReportVuePublicProps, Readonly<ReportBatchPanelOptions> & Readonly<{
|
|
1859
|
+
"onOpen-instance"?: ((receipt: ReportBatchReceipt) => any) | undefined;
|
|
1860
|
+
}>, {}>;
|
|
1861
|
+
export declare interface ReportBatchPanelOptions {
|
|
1862
|
+
paramDefs: ReportParamDef[];
|
|
1863
|
+
execute(item: ReportBatchCase, context: {
|
|
1864
|
+
index: number;
|
|
1865
|
+
signal: AbortSignal;
|
|
1866
|
+
}): Promise<ReportBatchReceipt>;
|
|
1867
|
+
initialCases?: ReportBatchCase[];
|
|
1868
|
+
readonly?: boolean;
|
|
1869
|
+
concurrency?: number;
|
|
1870
|
+
maxCases?: number;
|
|
1871
|
+
messages?: Partial<ReportBatchMessages>;
|
|
1872
|
+
paramMessages?: Partial<MachReportMessages_2>;
|
|
1873
|
+
}
|
|
1874
|
+
export declare interface ReportBatchReceipt {
|
|
1875
|
+
instanceId?: string;
|
|
1876
|
+
label?: string;
|
|
1877
|
+
}
|
|
1453
1878
|
/** Return false to keep the current report. Without a hook the preview asks inline. */
|
|
1454
1879
|
declare type ReportBeforeDiscard = (context: Readonly<ReportBeforeDiscardContext>) => boolean | Promise<boolean>;
|
|
1455
1880
|
declare interface ReportBeforeDiscardContext {
|
|
@@ -1487,6 +1912,35 @@ declare interface ReportCalculationMessages {
|
|
|
1487
1912
|
calculationErrorOverflow: string;
|
|
1488
1913
|
calculationErrorPrecision: string;
|
|
1489
1914
|
}
|
|
1915
|
+
declare interface ReportCalculationMessages_2 {
|
|
1916
|
+
calculationTitle: string;
|
|
1917
|
+
calculationLocal: string;
|
|
1918
|
+
calculationHint: string;
|
|
1919
|
+
calculationFormula: string;
|
|
1920
|
+
calculationExpression: string;
|
|
1921
|
+
calculationExpressionHint: string;
|
|
1922
|
+
calculationPrecision: string;
|
|
1923
|
+
calculationRun: string;
|
|
1924
|
+
calculationCancel: string;
|
|
1925
|
+
calculationResult: string;
|
|
1926
|
+
calculationIncluded: string;
|
|
1927
|
+
calculationExcluded: string;
|
|
1928
|
+
calculationEmpty: string;
|
|
1929
|
+
calculationNoSelection: string;
|
|
1930
|
+
calculationSum: string;
|
|
1931
|
+
calculationAverage: string;
|
|
1932
|
+
calculationMin: string;
|
|
1933
|
+
calculationMax: string;
|
|
1934
|
+
calculationCount: string;
|
|
1935
|
+
calculationMedian: string;
|
|
1936
|
+
calculationCustom: string;
|
|
1937
|
+
calculationErrorSelection: string;
|
|
1938
|
+
calculationErrorLimit: string;
|
|
1939
|
+
calculationErrorExpression: string;
|
|
1940
|
+
calculationErrorDivision: string;
|
|
1941
|
+
calculationErrorOverflow: string;
|
|
1942
|
+
calculationErrorPrecision: string;
|
|
1943
|
+
}
|
|
1490
1944
|
/** 预览中的物理坐标;合并单元格使用左上角坐标。 */
|
|
1491
1945
|
declare interface ReportCellAddress {
|
|
1492
1946
|
pageIndex: number;
|
|
@@ -1686,6 +2140,27 @@ declare interface ReportFieldContract_2 {
|
|
|
1686
2140
|
semanticRole?: "identifier" | "dimension" | "measure" | "date" | "text";
|
|
1687
2141
|
unit?: string;
|
|
1688
2142
|
}
|
|
2143
|
+
declare interface ReportFlowBand {
|
|
2144
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2145
|
+
componentIds: string[];
|
|
2146
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2147
|
+
topMm: number;
|
|
2148
|
+
heightMm: number;
|
|
2149
|
+
}
|
|
2150
|
+
declare interface ReportFlowBand_2 {
|
|
2151
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2152
|
+
componentIds: string[];
|
|
2153
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2154
|
+
topMm: number;
|
|
2155
|
+
heightMm: number;
|
|
2156
|
+
}
|
|
2157
|
+
declare interface ReportFlowBand_3 {
|
|
2158
|
+
/** Exact stable component IDs. Static components use nid, lists use id. */
|
|
2159
|
+
componentIds: string[];
|
|
2160
|
+
/** Source-template coordinates; following bands keep their original gap. */
|
|
2161
|
+
topMm: number;
|
|
2162
|
+
heightMm: number;
|
|
2163
|
+
}
|
|
1689
2164
|
declare interface ReportInteractionOptions {
|
|
1690
2165
|
/** 只读选区计算,默认关闭;不写回业务值或执行导入的 Excel 公式。 */
|
|
1691
2166
|
calculations?: boolean;
|
|
@@ -1700,13 +2175,22 @@ declare interface ReportOutputOptions {
|
|
|
1700
2175
|
/** warn preserves supported output and shows diagnostics; strict rejects known fidelity loss. */
|
|
1701
2176
|
fidelity?: "warn" | "strict";
|
|
1702
2177
|
}
|
|
2178
|
+
declare interface ReportPageFlow {
|
|
2179
|
+
bands: ReportFlowBand[];
|
|
2180
|
+
}
|
|
2181
|
+
declare interface ReportPageFlow_2 {
|
|
2182
|
+
bands: ReportFlowBand_2[];
|
|
2183
|
+
}
|
|
2184
|
+
declare interface ReportPageFlow_3 {
|
|
2185
|
+
bands: ReportFlowBand_3[];
|
|
2186
|
+
}
|
|
1703
2187
|
/** 报表参数定义(声明式,模板自描述参数面:渲染组件据此生成查询面板) */
|
|
1704
2188
|
declare interface ReportParamDef {
|
|
1705
2189
|
/** 参数名(传入 params,与数据集 SQL #{field} 绑定对应) */
|
|
1706
2190
|
field: string;
|
|
1707
2191
|
/** 显示名(缺省用 field) */
|
|
1708
2192
|
label?: string;
|
|
1709
|
-
type?: "text" | "number" | "date" | "select";
|
|
2193
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
1710
2194
|
/** select 选项 */
|
|
1711
2195
|
options?: Array<{
|
|
1712
2196
|
label: string;
|
|
@@ -1715,7 +2199,7 @@ declare interface ReportParamDef {
|
|
|
1715
2199
|
defaultValue?: string;
|
|
1716
2200
|
required?: boolean;
|
|
1717
2201
|
placeholder?: string;
|
|
1718
|
-
/**
|
|
2202
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
1719
2203
|
min?: number | string;
|
|
1720
2204
|
max?: number | string;
|
|
1721
2205
|
minLength?: number;
|
|
@@ -1727,7 +2211,28 @@ declare interface ReportParamDef_2 {
|
|
|
1727
2211
|
field: string;
|
|
1728
2212
|
/** 显示名(缺省用 field) */
|
|
1729
2213
|
label?: string;
|
|
1730
|
-
type?: "text" | "number" | "date" | "select";
|
|
2214
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
2215
|
+
/** select 选项 */
|
|
2216
|
+
options?: Array<{
|
|
2217
|
+
label: string;
|
|
2218
|
+
value: string;
|
|
2219
|
+
}>;
|
|
2220
|
+
defaultValue?: string;
|
|
2221
|
+
required?: boolean;
|
|
2222
|
+
placeholder?: string;
|
|
2223
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
2224
|
+
min?: number | string;
|
|
2225
|
+
max?: number | string;
|
|
2226
|
+
minLength?: number;
|
|
2227
|
+
maxLength?: number;
|
|
2228
|
+
}
|
|
2229
|
+
/** 报表参数定义(声明式,模板自描述参数面:渲染组件据此生成查询面板) */
|
|
2230
|
+
declare interface ReportParamDef_3 {
|
|
2231
|
+
/** 参数名(传入 params,与数据集 SQL #{field} 绑定对应) */
|
|
2232
|
+
field: string;
|
|
2233
|
+
/** 显示名(缺省用 field) */
|
|
2234
|
+
label?: string;
|
|
2235
|
+
type?: "text" | "number" | "date" | "month" | "year" | "dateRange" | "select";
|
|
1731
2236
|
/** select 选项 */
|
|
1732
2237
|
options?: Array<{
|
|
1733
2238
|
label: string;
|
|
@@ -1736,7 +2241,7 @@ declare interface ReportParamDef_2 {
|
|
|
1736
2241
|
defaultValue?: string;
|
|
1737
2242
|
required?: boolean;
|
|
1738
2243
|
placeholder?: string;
|
|
1739
|
-
/**
|
|
2244
|
+
/** 数字上下界;日期/月/年使用对应规范字符串;dateRange 对两端使用 YYYY-MM-DD 边界(含边界)。 */
|
|
1740
2245
|
min?: number | string;
|
|
1741
2246
|
max?: number | string;
|
|
1742
2247
|
minLength?: number;
|
|
@@ -1766,6 +2271,50 @@ declare interface ReportTemplate_2 {
|
|
|
1766
2271
|
params?: ReportParamDef_2[];
|
|
1767
2272
|
pages: TemplatePage_2[];
|
|
1768
2273
|
}
|
|
2274
|
+
declare interface ReportTemplate_3 {
|
|
2275
|
+
schemaVersion?: string;
|
|
2276
|
+
/** 参数定义(可选;宿主也可经 ReportPreview 的 paramDefs prop 提供,prop 优先) */
|
|
2277
|
+
params?: ReportParamDef_3[];
|
|
2278
|
+
pages: TemplatePage_3[];
|
|
2279
|
+
}
|
|
2280
|
+
declare interface ReportTemplateCatalogEntry extends ReportTemplateSummary {
|
|
2281
|
+
category?: string;
|
|
2282
|
+
tags?: string[];
|
|
2283
|
+
updatedAt?: string;
|
|
2284
|
+
/** Optional lifecycle metadata. revision continues to identify the editable document. */
|
|
2285
|
+
draftRevision?: string;
|
|
2286
|
+
publishedRevision?: string;
|
|
2287
|
+
}
|
|
2288
|
+
declare interface ReportTemplateCatalogOpenContext {
|
|
2289
|
+
mode: "edit" | "published";
|
|
2290
|
+
}
|
|
2291
|
+
declare interface ReportTemplateCatalogOpenContext_2 {
|
|
2292
|
+
mode: "edit" | "published";
|
|
2293
|
+
}
|
|
2294
|
+
declare interface ReportTemplateCatalogPage {
|
|
2295
|
+
items: ReportTemplateCatalogEntry[];
|
|
2296
|
+
next?: string;
|
|
2297
|
+
categories?: Array<{
|
|
2298
|
+
id: string;
|
|
2299
|
+
label: string;
|
|
2300
|
+
count?: number;
|
|
2301
|
+
}>;
|
|
2302
|
+
}
|
|
2303
|
+
/** Discovery metadata is separate from executable templates and from enterprise account authorization. */
|
|
2304
|
+
declare interface ReportTemplateCatalogProvider {
|
|
2305
|
+
search(request: ReportTemplateCatalogQuery): Promise<ReportTemplateCatalogPage>;
|
|
2306
|
+
get(id: string, context: {
|
|
2307
|
+
signal?: AbortSignal;
|
|
2308
|
+
mode?: ReportTemplateCatalogOpenContext["mode"];
|
|
2309
|
+
}): Promise<ReportTemplateDocument | undefined>;
|
|
2310
|
+
}
|
|
2311
|
+
declare interface ReportTemplateCatalogQuery {
|
|
2312
|
+
query?: string;
|
|
2313
|
+
category?: string;
|
|
2314
|
+
cursor?: string;
|
|
2315
|
+
limit?: number;
|
|
2316
|
+
signal?: AbortSignal;
|
|
2317
|
+
}
|
|
1769
2318
|
/** 可存入数据库/文件的纯 JSON 模板;数据、接口与鉴权仍由宿主提供。 */
|
|
1770
2319
|
declare interface ReportTemplateDocument {
|
|
1771
2320
|
schemaVersion: "1.0";
|
|
@@ -1786,6 +2335,16 @@ declare interface ReportTemplateDocument_2 {
|
|
|
1786
2335
|
description?: string;
|
|
1787
2336
|
template: ReportTemplate_2;
|
|
1788
2337
|
}
|
|
2338
|
+
/** 可存入数据库/文件的纯 JSON 模板;数据、接口与鉴权仍由宿主提供。 */
|
|
2339
|
+
declare interface ReportTemplateDocument_3 {
|
|
2340
|
+
schemaVersion: "1.0";
|
|
2341
|
+
id: string;
|
|
2342
|
+
name: string;
|
|
2343
|
+
/** 宿主的发布版本/乐观锁标识,不由引擎自动递增。 */
|
|
2344
|
+
revision?: string;
|
|
2345
|
+
description?: string;
|
|
2346
|
+
template: ReportTemplate_3;
|
|
2347
|
+
}
|
|
1789
2348
|
export declare const ReportTemplateEditor: DefineComponent<TemplateEditorOptions, {
|
|
1790
2349
|
pendingLocalChanges: boolean;
|
|
1791
2350
|
saving: boolean;
|
|
@@ -1802,6 +2361,11 @@ export declare const ReportTemplateEditor: DefineComponent<TemplateEditorOptions
|
|
|
1802
2361
|
onSaved?: ((document: ReportTemplateDocument) => any) | undefined;
|
|
1803
2362
|
"onExcel-bound"?: ((result: ExcelBindingWizardApply) => any) | undefined;
|
|
1804
2363
|
}>, {}>;
|
|
2364
|
+
export declare const ReportTemplateLibrary: DefineComponent<TemplateLibraryOptions, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
2365
|
+
open: (document: ReportTemplateDocument_3, context?: ReportTemplateCatalogOpenContext_2 | undefined) => any;
|
|
2366
|
+
}, string, MachReportVuePublicProps, Readonly<TemplateLibraryOptions> & Readonly<{
|
|
2367
|
+
onOpen?: ((document: ReportTemplateDocument_3, context?: ReportTemplateCatalogOpenContext_2 | undefined) => any) | undefined;
|
|
2368
|
+
}>, {}>;
|
|
1805
2369
|
declare interface ReportTemplateReviewIssue {
|
|
1806
2370
|
code: "template" | "compatibility" | "dataset" | "field" | "sample" | "layout" | "output" | "params";
|
|
1807
2371
|
severity: "error" | "warning";
|
|
@@ -1812,6 +2376,7 @@ declare interface ReportTemplateReviewIssue {
|
|
|
1812
2376
|
componentIndex?: number;
|
|
1813
2377
|
field?: string;
|
|
1814
2378
|
}
|
|
2379
|
+
declare type ReportTemplateSummary = Omit<ReportTemplateDocument, "template">;
|
|
1815
2380
|
declare interface RichParagraph {
|
|
1816
2381
|
segments: RichSegment[];
|
|
1817
2382
|
align?: ComponentStyle["align"];
|
|
@@ -1871,6 +2436,25 @@ export declare const RULE_EDITOR_MESSAGES: {
|
|
|
1871
2436
|
pending: string;
|
|
1872
2437
|
detail: string;
|
|
1873
2438
|
matrix: string;
|
|
2439
|
+
tree: string;
|
|
2440
|
+
treeInput: string;
|
|
2441
|
+
treeFlat: string;
|
|
2442
|
+
treeNested: string;
|
|
2443
|
+
treeId: string;
|
|
2444
|
+
treeParent: string;
|
|
2445
|
+
treeChildren: string;
|
|
2446
|
+
treeLabel: string;
|
|
2447
|
+
treeIndent: string;
|
|
2448
|
+
treeOrphan: string;
|
|
2449
|
+
treeAsRoot: string;
|
|
2450
|
+
treeValues: string;
|
|
2451
|
+
treeSource: string;
|
|
2452
|
+
treeLeaves: string;
|
|
2453
|
+
treeRows: string;
|
|
2454
|
+
treeDepth: string;
|
|
2455
|
+
treeHint: string;
|
|
2456
|
+
treeReadonly: string;
|
|
2457
|
+
treeBudget: string;
|
|
1874
2458
|
measureLabel: string;
|
|
1875
2459
|
childDataset: string;
|
|
1876
2460
|
parentKey: string;
|
|
@@ -2058,6 +2642,7 @@ export declare const TEMPLATE_EDITOR_MESSAGES: {
|
|
|
2058
2642
|
canvasHint: string;
|
|
2059
2643
|
zoom: string;
|
|
2060
2644
|
sampleRows: string;
|
|
2645
|
+
treeSampleHint: string;
|
|
2061
2646
|
resizeComponent: string;
|
|
2062
2647
|
resizeColumn: string;
|
|
2063
2648
|
insertComponent: string;
|
|
@@ -2092,10 +2677,21 @@ export declare const TEMPLATE_EDITOR_MESSAGES: {
|
|
|
2092
2677
|
headerRow: string;
|
|
2093
2678
|
headerFirst: string;
|
|
2094
2679
|
headerLast: string;
|
|
2680
|
+
flowLayout: string;
|
|
2681
|
+
paramsTool: string;
|
|
2095
2682
|
excelTool: string;
|
|
2096
2683
|
rulesTool: string;
|
|
2097
2684
|
reviewTool: string;
|
|
2098
2685
|
toolsDescription: string;
|
|
2686
|
+
unapplied: string;
|
|
2687
|
+
pendingToolsLabel: string;
|
|
2688
|
+
pendingToolsHint: string;
|
|
2689
|
+
saveReadonly: string;
|
|
2690
|
+
saveConfirmation: string;
|
|
2691
|
+
saveUnchanged: string;
|
|
2692
|
+
saveInvalid: string;
|
|
2693
|
+
saveJsonPending: string;
|
|
2694
|
+
returnToConfiguration: string;
|
|
2099
2695
|
rulesNeedList: string;
|
|
2100
2696
|
undo: string;
|
|
2101
2697
|
redo: string;
|
|
@@ -2188,10 +2784,48 @@ export declare const TEMPLATE_EDITOR_MESSAGES: {
|
|
|
2188
2784
|
sessionLock: string;
|
|
2189
2785
|
toolsPending: string;
|
|
2190
2786
|
};
|
|
2787
|
+
export declare const TEMPLATE_LIBRARY_MESSAGES: {
|
|
2788
|
+
publicationChanged: string;
|
|
2789
|
+
continueDraft: string;
|
|
2790
|
+
viewPublished: string;
|
|
2791
|
+
draft: string;
|
|
2792
|
+
published: string;
|
|
2793
|
+
draftPending: string;
|
|
2794
|
+
retrySearch: string;
|
|
2795
|
+
retryOpen: string;
|
|
2796
|
+
retryCopy: string;
|
|
2797
|
+
openingTarget: string;
|
|
2798
|
+
creatingTarget: string;
|
|
2799
|
+
title: string;
|
|
2800
|
+
subtitle: string;
|
|
2801
|
+
search: string;
|
|
2802
|
+
all: string;
|
|
2803
|
+
refresh: string;
|
|
2804
|
+
open: string;
|
|
2805
|
+
copy: string;
|
|
2806
|
+
empty: string;
|
|
2807
|
+
emptyHint: string;
|
|
2808
|
+
loadMore: string;
|
|
2809
|
+
previous: string;
|
|
2810
|
+
page: string;
|
|
2811
|
+
loading: string;
|
|
2812
|
+
retry: string;
|
|
2813
|
+
revision: string;
|
|
2814
|
+
copyTitle: string;
|
|
2815
|
+
newId: string;
|
|
2816
|
+
newName: string;
|
|
2817
|
+
create: string;
|
|
2818
|
+
cancel: string;
|
|
2819
|
+
count: string;
|
|
2820
|
+
missing: string;
|
|
2821
|
+
stale: string;
|
|
2822
|
+
invalid: string;
|
|
2823
|
+
};
|
|
2191
2824
|
export declare const TEMPLATE_REVIEW_MESSAGES: {
|
|
2192
2825
|
stale: string;
|
|
2193
2826
|
scope: string;
|
|
2194
2827
|
datasets: string;
|
|
2828
|
+
treeHint: string;
|
|
2195
2829
|
title: string;
|
|
2196
2830
|
run: string;
|
|
2197
2831
|
running: string;
|
|
@@ -2234,6 +2868,7 @@ export declare const TEMPLATE_REVIEW_MESSAGES: {
|
|
|
2234
2868
|
};
|
|
2235
2869
|
declare type TemplateComponent = PlanComponent | ListComponent;
|
|
2236
2870
|
declare type TemplateComponent_2 = PlanComponent_2 | ListComponent_2;
|
|
2871
|
+
declare type TemplateComponent_3 = PlanComponent_3 | ListComponent_3;
|
|
2237
2872
|
export declare type TemplateEditorBeforeDiscard = (context: TemplateEditorBeforeDiscardContext) => boolean | Promise<boolean>;
|
|
2238
2873
|
export declare interface TemplateEditorBeforeDiscardContext {
|
|
2239
2874
|
reason: "reset" | "replace";
|
|
@@ -2258,7 +2893,7 @@ export declare interface TemplateEditorOptions {
|
|
|
2258
2893
|
dataSchemas?: Record<string, DatasetContract>;
|
|
2259
2894
|
bindingDatasets?: ExcelBindingDataset[];
|
|
2260
2895
|
/** Optional independently persisted Excel source and binding recipe. */
|
|
2261
|
-
bindingSession?:
|
|
2896
|
+
bindingSession?: AnyExcelBindingSession;
|
|
2262
2897
|
readonly?: boolean;
|
|
2263
2898
|
messages?: Partial<TemplateEditorMessages>;
|
|
2264
2899
|
preview?: Pick<MachReportDefaults, "showExport" | "showPrint" | "showPdfWindow" | "theme" | "assets" | "pdfFontUrl" | "toolbar">;
|
|
@@ -2269,6 +2904,15 @@ export declare interface TemplateEditorSaveContext {
|
|
|
2269
2904
|
expectedRevision?: string;
|
|
2270
2905
|
signal: AbortSignal;
|
|
2271
2906
|
}
|
|
2907
|
+
export declare type TemplateLibraryMessages = typeof TEMPLATE_LIBRARY_MESSAGES;
|
|
2908
|
+
export declare interface TemplateLibraryOptions {
|
|
2909
|
+
provider: ReportTemplateCatalogProvider;
|
|
2910
|
+
messages?: Partial<TemplateLibraryMessages>;
|
|
2911
|
+
/** Optional real persistence action. No copy button is shown without it. */
|
|
2912
|
+
create?: (document: ReportTemplateDocument, context: {
|
|
2913
|
+
signal: AbortSignal;
|
|
2914
|
+
}) => Promise<ReportTemplateDocument>;
|
|
2915
|
+
}
|
|
2272
2916
|
declare interface TemplatePage {
|
|
2273
2917
|
widthMm: number;
|
|
2274
2918
|
heightMm: number;
|
|
@@ -2279,6 +2923,9 @@ declare interface TemplatePage {
|
|
|
2279
2923
|
marginLeftMm?: number;
|
|
2280
2924
|
marginRightMm?: number;
|
|
2281
2925
|
components: TemplateComponent[];
|
|
2926
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2927
|
+
flow?: ReportPageFlow;
|
|
2928
|
+
meta?: Record<string, unknown>;
|
|
2282
2929
|
}
|
|
2283
2930
|
declare interface TemplatePage_2 {
|
|
2284
2931
|
widthMm: number;
|
|
@@ -2290,6 +2937,23 @@ declare interface TemplatePage_2 {
|
|
|
2290
2937
|
marginLeftMm?: number;
|
|
2291
2938
|
marginRightMm?: number;
|
|
2292
2939
|
components: TemplateComponent_2[];
|
|
2940
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2941
|
+
flow?: ReportPageFlow_2;
|
|
2942
|
+
meta?: Record<string, unknown>;
|
|
2943
|
+
}
|
|
2944
|
+
declare interface TemplatePage_3 {
|
|
2945
|
+
widthMm: number;
|
|
2946
|
+
heightMm: number;
|
|
2947
|
+
/** 宽表保持全列自然宽度,页高只控制内部纵向分段。 */
|
|
2948
|
+
layout?: "page" | "wide";
|
|
2949
|
+
marginTopMm?: number;
|
|
2950
|
+
marginBottomMm?: number;
|
|
2951
|
+
marginLeftMm?: number;
|
|
2952
|
+
marginRightMm?: number;
|
|
2953
|
+
components: TemplateComponent_3[];
|
|
2954
|
+
/** Explicit vertical bands preserve source gaps as dynamic regions expand. */
|
|
2955
|
+
flow?: ReportPageFlow_3;
|
|
2956
|
+
meta?: Record<string, unknown>;
|
|
2293
2957
|
}
|
|
2294
2958
|
export declare type TemplateReviewMessages = typeof TEMPLATE_REVIEW_MESSAGES;
|
|
2295
2959
|
declare interface TemplateReviewOptions {
|
|
@@ -2308,6 +2972,63 @@ export declare const TemplateReviewPanel: DefineComponent<TemplateReviewOptions
|
|
|
2308
2972
|
}> & Readonly<{
|
|
2309
2973
|
onLocate?: ((value: Pick<ReportTemplateReviewIssue, "field" | "path" | "pageIndex" | "componentIndex">) => any) | undefined;
|
|
2310
2974
|
}>, {}>;
|
|
2975
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
2976
|
+
declare interface TreeTableOptions {
|
|
2977
|
+
input: "flat" | "nested";
|
|
2978
|
+
idField: string;
|
|
2979
|
+
/** Flat roots have null/undefined parent values. */
|
|
2980
|
+
parentField?: string;
|
|
2981
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
2982
|
+
childrenField?: string;
|
|
2983
|
+
labelField: string;
|
|
2984
|
+
indentMm?: number;
|
|
2985
|
+
orphan?: "error" | "root";
|
|
2986
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
2987
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
2988
|
+
aggregates?: AggregateDefinition[];
|
|
2989
|
+
maxRows?: number;
|
|
2990
|
+
maxDepth?: number;
|
|
2991
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
2992
|
+
maxAggregationVisits?: number;
|
|
2993
|
+
}
|
|
2994
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
2995
|
+
declare interface TreeTableOptions_2 {
|
|
2996
|
+
input: "flat" | "nested";
|
|
2997
|
+
idField: string;
|
|
2998
|
+
/** Flat roots have null/undefined parent values. */
|
|
2999
|
+
parentField?: string;
|
|
3000
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
3001
|
+
childrenField?: string;
|
|
3002
|
+
labelField: string;
|
|
3003
|
+
indentMm?: number;
|
|
3004
|
+
orphan?: "error" | "root";
|
|
3005
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
3006
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
3007
|
+
aggregates?: AggregateDefinition_2[];
|
|
3008
|
+
maxRows?: number;
|
|
3009
|
+
maxDepth?: number;
|
|
3010
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
3011
|
+
maxAggregationVisits?: number;
|
|
3012
|
+
}
|
|
3013
|
+
/** A serialized tree contract. Sibling and root order follow input order. */
|
|
3014
|
+
declare interface TreeTableOptions_3 {
|
|
3015
|
+
input: "flat" | "nested";
|
|
3016
|
+
idField: string;
|
|
3017
|
+
/** Flat roots have null/undefined parent values. */
|
|
3018
|
+
parentField?: string;
|
|
3019
|
+
/** Nested child arrays, defaults to children. Every node still needs an ID. */
|
|
3020
|
+
childrenField?: string;
|
|
3021
|
+
labelField: string;
|
|
3022
|
+
indentMm?: number;
|
|
3023
|
+
orphan?: "error" | "root";
|
|
3024
|
+
/** Source preserves parent values; leaf-aggregate derives only parents from descendant leaves. */
|
|
3025
|
+
parentValues?: "source" | "leaf-aggregate";
|
|
3026
|
+
aggregates?: AggregateDefinition_3[];
|
|
3027
|
+
maxRows?: number;
|
|
3028
|
+
maxDepth?: number;
|
|
3029
|
+
/** Bounded leaf-to-ancestor aggregate work; default one million. */
|
|
3030
|
+
maxAggregationVisits?: number;
|
|
3031
|
+
}
|
|
2311
3032
|
declare interface XlsxImageOptions {
|
|
2312
3033
|
/** Decoded bytes per unique embedded image; default 16 MiB. */
|
|
2313
3034
|
maxImageBytes?: number;
|