@agile-team/mach-report 1.2.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/LICENSE +2 -4
  2. package/LICENSING.md +15 -0
  3. package/README.md +240 -92
  4. package/dist/ReportPreview-Dwdsyk9b.js +1558 -0
  5. package/dist/ReportPreview-VHAIfsz1.cjs +6 -0
  6. package/dist/index.cjs +5 -5
  7. package/dist/index.d.cts +738 -14
  8. package/dist/index.d.ts +738 -14
  9. package/dist/index.js +858 -805
  10. package/dist/pdf.cjs +47 -47
  11. package/dist/pdf.d.cts +155 -6
  12. package/dist/pdf.d.ts +155 -6
  13. package/dist/pdf.js +3542 -3466
  14. package/dist/plugin-Bl00j_CP.cjs +1 -0
  15. package/dist/plugin-DVScnZ4C.js +25 -0
  16. package/dist/report-params-BB85g7mg.js +10 -0
  17. package/dist/report-params-D1NeY-eR.cjs +1 -0
  18. package/dist/sql.cjs +65 -64
  19. package/dist/sql.d.cts +109 -5
  20. package/dist/sql.d.ts +109 -5
  21. package/dist/sql.js +7947 -7922
  22. package/dist/style-CFZ-HE2s.cjs +3 -0
  23. package/dist/{style-6ihHKVCM.js → style-DnmtG7Gl.js} +69 -81
  24. package/dist/style.css +1 -1
  25. package/dist/vue/async.d.cts +769 -335
  26. package/dist/vue/async.d.ts +769 -335
  27. package/dist/vue/index.d.cts +1321 -14
  28. package/dist/vue/index.d.ts +1321 -14
  29. package/dist/vue-async.cjs +1 -1
  30. package/dist/vue-async.js +11 -12
  31. package/dist/vue.cjs +1 -1
  32. package/dist/vue.js +130 -50
  33. package/dist/xlsx.cjs +20 -20
  34. package/dist/xlsx.d.cts +2292 -5
  35. package/dist/xlsx.d.ts +2292 -5
  36. package/dist/xlsx.js +5452 -5443
  37. package/package.json +7 -13
  38. package/dist/ReportPreview-CJLvkTVn.cjs +0 -6
  39. package/dist/ReportPreview-mZiGtf0L.js +0 -1231
  40. package/dist/builder/template-builder.d.ts +0 -69
  41. package/dist/compat/jh4j-template.d.ts +0 -12
  42. package/dist/defaults.d.ts +0 -27
  43. package/dist/format.d.ts +0 -48
  44. package/dist/layout/paginate.d.ts +0 -97
  45. package/dist/layout/textwrap.d.ts +0 -36
  46. package/dist/manager/api.d.ts +0 -45
  47. package/dist/manager/index.d.ts +0 -2
  48. package/dist/manager/types.d.ts +0 -50
  49. package/dist/manager.cjs +0 -1
  50. package/dist/manager.d.cts +0 -5
  51. package/dist/manager.d.ts +0 -5
  52. package/dist/manager.js +0 -104
  53. package/dist/pdf/font-loader.d.ts +0 -6
  54. package/dist/pdf/index.d.ts +0 -2
  55. package/dist/pdf/render-pdf.d.ts +0 -25
  56. package/dist/plugin-C4qpbdMJ.cjs +0 -1
  57. package/dist/plugin-DcmAPK_K.js +0 -85
  58. package/dist/render/canvas.d.ts +0 -76
  59. package/dist/render/dom.d.ts +0 -10
  60. package/dist/render/grid-geometry.d.ts +0 -41
  61. package/dist/render/style.d.ts +0 -33
  62. package/dist/render/window.d.ts +0 -23
  63. package/dist/schema/render-plan.d.ts +0 -96
  64. package/dist/schema/validate.d.ts +0 -15
  65. package/dist/sql/ast-check.d.ts +0 -14
  66. package/dist/sql/compile.d.ts +0 -31
  67. package/dist/sql/expr.d.ts +0 -21
  68. package/dist/sql/index.d.ts +0 -4
  69. package/dist/sql/tokenizer.d.ts +0 -25
  70. package/dist/style-Xq08-IsV.cjs +0 -3
  71. package/dist/units.d.ts +0 -11
  72. package/dist/vue/ReportParamPanel.d.ts +0 -19
  73. package/dist/vue/ReportPreview.d.ts +0 -209
  74. package/dist/vue/ReportToolbar.d.ts +0 -42
  75. package/dist/vue/adapters.d.ts +0 -40
  76. package/dist/vue/composables/useHighlight.d.ts +0 -8
  77. package/dist/vue/composables/usePageWindow.d.ts +0 -25
  78. package/dist/vue/composables/usePrintExport.d.ts +0 -40
  79. package/dist/vue/composables/useReportSearch.d.ts +0 -73
  80. package/dist/vue/composables/useZoom.d.ts +0 -15
  81. package/dist/vue/config.d.ts +0 -108
  82. package/dist/vue/controller.d.ts +0 -29
  83. package/dist/vue/errors.d.ts +0 -16
  84. package/dist/vue/injection-keys.d.ts +0 -14
  85. package/dist/vue/local-adapter.d.ts +0 -12
  86. package/dist/vue/pdf-exporter.d.ts +0 -13
  87. package/dist/vue/plugin.d.ts +0 -354
  88. package/dist/xlsx/render-xlsx.d.ts +0 -20
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),i=require("./plugin-C4qpbdMJ.cjs"),r=n.defineAsyncComponent(()=>Promise.resolve().then(()=>require("./ReportPreview-CJLvkTVn.cjs")).then(e=>e.ReportPreview$1));function c(){return Promise.resolve().then(()=>require("./ReportPreview-CJLvkTVn.cjs")).then(e=>e.ReportPreview$1)}const t={install(e,o={}){i.machReportPlugin.install(e,o),e.component("MachReportPreview",r)}};exports.MachReportPreview=r;exports.default=t;exports.machReportAsyncPlugin=t;exports.preloadMachReport=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("./plugin-Bl00j_CP.cjs");function i(){return Promise.resolve().then(()=>require("./ReportPreview-VHAIfsz1.cjs")).then(e=>e.ReportPreview$1)}const t={install(e,o={}){r.machReportPlugin.install(e,o)}};exports.MachReportPreview=r.MachReportPreview;exports.default=t;exports.machReportAsyncPlugin=t;exports.preloadMachReport=i;
package/dist/vue-async.js CHANGED
@@ -1,17 +1,16 @@
1
- import { defineAsyncComponent as o } from "vue";
2
- import { m as e } from "./plugin-DcmAPK_K.js";
3
- const r = o(() => import("./ReportPreview-mZiGtf0L.js").then((t) => t.n));
4
- function m() {
5
- return import("./ReportPreview-mZiGtf0L.js").then((t) => t.n);
1
+ import { m as o } from "./plugin-DVScnZ4C.js";
2
+ import { M as l } from "./plugin-DVScnZ4C.js";
3
+ function a() {
4
+ return import("./ReportPreview-Dwdsyk9b.js").then((t) => t.s);
6
5
  }
7
- const p = {
8
- install(t, n = {}) {
9
- e.install(t, n), t.component("MachReportPreview", r);
6
+ const n = {
7
+ install(t, r = {}) {
8
+ o.install(t, r);
10
9
  }
11
10
  };
12
11
  export {
13
- r as MachReportPreview,
14
- p as default,
15
- p as machReportAsyncPlugin,
16
- m as preloadMachReport
12
+ l as MachReportPreview,
13
+ n as default,
14
+ n as machReportAsyncPlugin,
15
+ a as preloadMachReport
17
16
  };
package/dist/vue.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ReportPreview-CJLvkTVn.cjs"),r=require("./plugin-C4qpbdMJ.cjs"),c=require("@agile-team/mach-report"),s=require("vue");function l(R){return async({tempIds:t})=>{if(t.length===0)throw new r.PlanLoadError("缺少报表模板 ID");const a=[];for(const n of t){const o=R[n];if(!o)throw new r.PlanLoadError(`本地模板 ${n} 不存在`);const{plan:E,warnings:i}=c.paginateTemplate(o.template,o.datasets??{});i.length>0&&console.warn("[mach-report] 分页告警:",i),a.push(...E.pages)}return{schemaVersion:"mach-local",pages:a}}}function P(){return s.inject(r.MACH_REPORT_CONTROLLER_KEY,null)}exports.DEFAULT_MESSAGES=e.DEFAULT_MESSAGES;exports.DEFAULT_THEME=e.DEFAULT_THEME;exports.MachReportError=e.MachReportError;exports.ReportParamPanel=e.ReportParamPanel;exports.ReportPreview=e.ReportPreview;exports.ReportToolbar=e.ReportToolbar;exports.SILENT_LOGGER=e.SILENT_LOGGER;exports.buildPrintDocument=e.buildPrintDocument;exports.buildWordHtml=e.buildWordHtml;exports.createDefaultPdfExporter=e.createDefaultPdfExporter;exports.defineMachReportConfig=e.defineMachReportConfig;exports.defineMachReportPreset=e.defineMachReportPreset;exports.printPlans=e.printPlans;exports.provideMachReportConfig=e.provideMachReportConfig;exports.resolveConfig=e.resolveConfig;exports.themeToCssVars=e.themeToCssVars;exports.toErrorDetail=e.toErrorDetail;exports.useMachReportConfig=e.useMachReportConfig;exports.usePageWindow=e.usePageWindow;exports.usePrintExport=e.usePrintExport;exports.useZoom=e.useZoom;exports.MACH_REPORT_CONFIG_KEY=r.MACH_REPORT_CONFIG_KEY;exports.MACH_REPORT_CONTROLLER_KEY=r.MACH_REPORT_CONTROLLER_KEY;exports.MACH_REPORT_FETCHER_KEY=r.MACH_REPORT_FETCHER_KEY;exports.MACH_REPORT_PDF_EXPORTER_KEY=r.MACH_REPORT_PDF_EXPORTER_KEY;exports.MachReportPreview=r.MachReportPreview;exports.PlanLoadError=r.PlanLoadError;exports.createFetchRequest=r.createFetchRequest;exports.createJh4jGridPlanFetcher=r.createJh4jGridPlanFetcher;exports.joinTempIds=r.joinTempIds;exports.machReportPlugin=r.machReportPlugin;exports.normalizeTempIds=r.normalizeTempIds;exports.createLocalFetcher=l;exports.useReportPreview=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@agile-team/mach-report"),e=require("./ReportPreview-VHAIfsz1.cjs"),c=require("./plugin-Bl00j_CP.cjs"),s=require("vue");function p(r){const o=u.createReportSource(r),i=async n=>{if(n.reportIds.length===0)throw new e.PlanLoadError("缺少报表 ID");for(const t of n.reportIds)if(!Object.prototype.hasOwnProperty.call(r,t)||!r[t])throw new e.PlanLoadError(`本地模板 ${t} 不存在`);return o(n)};return i.getParamDefs=o.getParamDefs,i}const l=Object.freeze({loading:!1,hasPlan:!1,pageCount:0,currentPage:1,exporting:null,printing:!1,canExport:!1,canPrint:!1,error:null,pdfFont:Object.freeze({status:"unchecked",fontUrl:""})});function P(){const r=s.shallowRef(null),o=()=>r.value?.state??l,i=Object.freeze({get loading(){return o().loading},get hasPlan(){return o().hasPlan},get pageCount(){return o().pageCount},get currentPage(){return o().currentPage},get exporting(){return o().exporting},get printing(){return o().printing},get canExport(){return o().canExport},get canPrint(){return o().canPrint},get error(){return o().error},get pdfFont(){return o().pdfFont}});function n(){if(!r.value)throw new e.MachReportError("config","报表预览尚未挂载,请在 ready 后调用控制器");return r.value}return{ref(t){const a=t;r.value=a&&typeof a.reload=="function"&&typeof a.print=="function"&&typeof a.exportAs=="function"&&typeof a.openPdfWindow=="function"&&typeof a.gotoPage=="function"&&typeof a.setParams=="function"?a:null},ready:s.computed(()=>r.value!==null),state:i,async checkPdfFont(){const t=n();return t.checkPdfFont?t.checkPdfFont():{status:"unverified",fontUrl:"",message:"旧自定义控制器未提供字体检查,请由宿主确认字体配置"}},async reload(){await n().reload()},async print(){await n().print()},async exportAs(t){await n().exportAs(t)},openPdfWindow(){n().openPdfWindow()},gotoPage(t){n().gotoPage(t)},async setParams(t,a){await n().setParams(t,a)}}}function f(){return s.inject(c.MACH_REPORT_CONTROLLER_KEY,null)}exports.DEFAULT_MESSAGES=e.DEFAULT_MESSAGES;exports.DEFAULT_THEME=e.DEFAULT_THEME;exports.MachReportError=e.MachReportError;exports.PlanLoadError=e.PlanLoadError;exports.ReportParamPanel=e.ReportParamPanel;exports.ReportPreview=e.ReportPreview;exports.ReportToolbar=e.ReportToolbar;exports.SILENT_LOGGER=e.SILENT_LOGGER;exports.buildPrintDocument=e.buildPrintDocument;exports.buildWordHtml=e.buildWordHtml;exports.createDefaultPdfExporter=e.createDefaultPdfExporter;exports.createFetchRequest=e.createFetchRequest;exports.defineMachReportConfig=e.defineMachReportConfig;exports.defineMachReportPreset=e.defineMachReportPreset;exports.joinReportIds=e.joinReportIds;exports.normalizeReportIds=e.normalizeReportIds;exports.printPlans=e.printPlans;exports.provideMachReportConfig=e.provideMachReportConfig;exports.resolveConfig=e.resolveConfig;exports.themeToCssVars=e.themeToCssVars;exports.toErrorDetail=e.toErrorDetail;exports.useMachReportConfig=e.useMachReportConfig;exports.usePageWindow=e.usePageWindow;exports.usePrintExport=e.usePrintExport;exports.useZoom=e.useZoom;exports.MACH_REPORT_CONFIG_KEY=c.MACH_REPORT_CONFIG_KEY;exports.MACH_REPORT_CONTROLLER_KEY=c.MACH_REPORT_CONTROLLER_KEY;exports.MACH_REPORT_FETCHER_KEY=c.MACH_REPORT_FETCHER_KEY;exports.MACH_REPORT_PDF_EXPORTER_KEY=c.MACH_REPORT_PDF_EXPORTER_KEY;exports.MachReportPreview=c.MachReportPreview;exports.machReportPlugin=c.machReportPlugin;exports.createLocalFetcher=p;exports.useMachReport=P;exports.useReportPreview=f;Object.keys(u).forEach(r=>{r!=="default"&&!Object.prototype.hasOwnProperty.call(exports,r)&&Object.defineProperty(exports,r,{enumerable:!0,get:()=>u[r]})});
package/dist/vue.js CHANGED
@@ -1,57 +1,137 @@
1
- import { D as T, a as _, M as d, R as g, b as M, c as C, S as w, d as O, e as D, f as F, g as L, h as A, p as H, i as b, r as j, t as v, j as x, u as G, k as S, l as I, m as K } from "./ReportPreview-mZiGtf0L.js";
2
- import { P as t, M as c } from "./plugin-DcmAPK_K.js";
3
- import { a as N, b as y, c as U, d as V, e as W, f as k, j as q, m as z, n as J } from "./plugin-DcmAPK_K.js";
4
- import { paginateTemplate as p } from "@agile-team/mach-report";
5
- import { inject as l } from "vue";
6
- function f(n) {
7
- return async ({ tempIds: a }) => {
8
- if (a.length === 0) throw new t("缺少报表模板 ID");
9
- const r = [];
10
- for (const o of a) {
11
- const e = n[o];
12
- if (!e) throw new t(`本地模板 ${o} 不存在`);
13
- const { plan: i, warnings: s } = p(e.template, e.datasets ?? {});
14
- s.length > 0 && console.warn("[mach-report] 分页告警:", s), r.push(...i.pages);
1
+ import { createReportSource as c } from "@agile-team/mach-report";
2
+ export * from "@agile-team/mach-report";
3
+ import { P as s, M as i } from "./ReportPreview-Dwdsyk9b.js";
4
+ import { D as M, a as T, R as x, b as O, c as F, S as v, d as A, e as D, f as b, g as L, h as S, i as j, j as H, n as I, p as k, k as W, r as Y, t as z, l as G, u as K, m as U, o as N, q } from "./ReportPreview-Dwdsyk9b.js";
5
+ import { a as f } from "./plugin-DVScnZ4C.js";
6
+ import { b as X, c as Z, d as $, M as B, m as J } from "./plugin-DVScnZ4C.js";
7
+ import { shallowRef as u, computed as p, inject as l } from "vue";
8
+ function m(n) {
9
+ const t = c(n), a = async (r) => {
10
+ if (r.reportIds.length === 0) throw new s("缺少报表 ID");
11
+ for (const e of r.reportIds)
12
+ if (!Object.prototype.hasOwnProperty.call(n, e) || !n[e])
13
+ throw new s(`本地模板 ${e} 不存在`);
14
+ return t(r);
15
+ };
16
+ return a.getParamDefs = t.getParamDefs, a;
17
+ }
18
+ const P = Object.freeze({
19
+ loading: !1,
20
+ hasPlan: !1,
21
+ pageCount: 0,
22
+ currentPage: 1,
23
+ exporting: null,
24
+ printing: !1,
25
+ canExport: !1,
26
+ canPrint: !1,
27
+ error: null,
28
+ pdfFont: Object.freeze({ status: "unchecked", fontUrl: "" })
29
+ });
30
+ function h() {
31
+ const n = u(null), t = () => n.value?.state ?? P, a = Object.freeze({
32
+ get loading() {
33
+ return t().loading;
34
+ },
35
+ get hasPlan() {
36
+ return t().hasPlan;
37
+ },
38
+ get pageCount() {
39
+ return t().pageCount;
40
+ },
41
+ get currentPage() {
42
+ return t().currentPage;
43
+ },
44
+ get exporting() {
45
+ return t().exporting;
46
+ },
47
+ get printing() {
48
+ return t().printing;
49
+ },
50
+ get canExport() {
51
+ return t().canExport;
52
+ },
53
+ get canPrint() {
54
+ return t().canPrint;
55
+ },
56
+ get error() {
57
+ return t().error;
58
+ },
59
+ get pdfFont() {
60
+ return t().pdfFont;
61
+ }
62
+ });
63
+ function r() {
64
+ if (!n.value)
65
+ throw new i("config", "报表预览尚未挂载,请在 ready 后调用控制器");
66
+ return n.value;
67
+ }
68
+ return {
69
+ ref(e) {
70
+ const o = e;
71
+ n.value = o && typeof o.reload == "function" && typeof o.print == "function" && typeof o.exportAs == "function" && typeof o.openPdfWindow == "function" && typeof o.gotoPage == "function" && typeof o.setParams == "function" ? o : null;
72
+ },
73
+ ready: p(() => n.value !== null),
74
+ state: a,
75
+ async checkPdfFont() {
76
+ const e = r();
77
+ return e.checkPdfFont ? e.checkPdfFont() : { status: "unverified", fontUrl: "", message: "旧自定义控制器未提供字体检查,请由宿主确认字体配置" };
78
+ },
79
+ async reload() {
80
+ await r().reload();
81
+ },
82
+ async print() {
83
+ await r().print();
84
+ },
85
+ async exportAs(e) {
86
+ await r().exportAs(e);
87
+ },
88
+ openPdfWindow() {
89
+ r().openPdfWindow();
90
+ },
91
+ gotoPage(e) {
92
+ r().gotoPage(e);
93
+ },
94
+ async setParams(e, o) {
95
+ await r().setParams(e, o);
15
96
  }
16
- return { schemaVersion: "mach-local", pages: r };
17
97
  };
18
98
  }
19
- function P() {
20
- return l(c, null);
99
+ function w() {
100
+ return l(f, null);
21
101
  }
22
102
  export {
23
- T as DEFAULT_MESSAGES,
24
- _ as DEFAULT_THEME,
25
- N as MACH_REPORT_CONFIG_KEY,
26
- c as MACH_REPORT_CONTROLLER_KEY,
27
- y as MACH_REPORT_FETCHER_KEY,
28
- U as MACH_REPORT_PDF_EXPORTER_KEY,
29
- d as MachReportError,
30
- V as MachReportPreview,
31
- t as PlanLoadError,
32
- g as ReportParamPanel,
33
- M as ReportPreview,
34
- C as ReportToolbar,
35
- w as SILENT_LOGGER,
36
- O as buildPrintDocument,
103
+ M as DEFAULT_MESSAGES,
104
+ T as DEFAULT_THEME,
105
+ X as MACH_REPORT_CONFIG_KEY,
106
+ f as MACH_REPORT_CONTROLLER_KEY,
107
+ Z as MACH_REPORT_FETCHER_KEY,
108
+ $ as MACH_REPORT_PDF_EXPORTER_KEY,
109
+ i as MachReportError,
110
+ B as MachReportPreview,
111
+ s as PlanLoadError,
112
+ x as ReportParamPanel,
113
+ O as ReportPreview,
114
+ F as ReportToolbar,
115
+ v as SILENT_LOGGER,
116
+ A as buildPrintDocument,
37
117
  D as buildWordHtml,
38
- F as createDefaultPdfExporter,
39
- W as createFetchRequest,
40
- k as createJh4jGridPlanFetcher,
41
- f as createLocalFetcher,
42
- L as defineMachReportConfig,
43
- A as defineMachReportPreset,
44
- q as joinTempIds,
45
- z as machReportPlugin,
46
- J as normalizeTempIds,
47
- H as printPlans,
48
- b as provideMachReportConfig,
49
- j as resolveConfig,
50
- v as themeToCssVars,
51
- x as toErrorDetail,
52
- G as useMachReportConfig,
53
- S as usePageWindow,
54
- I as usePrintExport,
55
- P as useReportPreview,
56
- K as useZoom
118
+ b as createDefaultPdfExporter,
119
+ L as createFetchRequest,
120
+ m as createLocalFetcher,
121
+ S as defineMachReportConfig,
122
+ j as defineMachReportPreset,
123
+ H as joinReportIds,
124
+ J as machReportPlugin,
125
+ I as normalizeReportIds,
126
+ k as printPlans,
127
+ W as provideMachReportConfig,
128
+ Y as resolveConfig,
129
+ z as themeToCssVars,
130
+ G as toErrorDetail,
131
+ h as useMachReport,
132
+ K as useMachReportConfig,
133
+ U as usePageWindow,
134
+ N as usePrintExport,
135
+ w as useReportPreview,
136
+ q as useZoom
57
137
  };