@sme.up/doc-alchemist 1.6.0-SNAPSHOT-20251212084649 → 1.6.0-SNAPSHOT-20251212094904
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/dist/converters/images/charts-converter-types.d.ts +15 -0
- package/dist/converters/images/charts-converter-types.js +11 -0
- package/dist/converters/images/charts-converter-types.js.map +1 -0
- package/dist/converters/images/{charts-generator.d.ts → charts-converter.d.ts} +4 -4
- package/dist/converters/images/charts-converter.js +82 -0
- package/dist/converters/images/charts-converter.js.map +1 -0
- package/dist/converters/images/charts-data-converter.d.ts +7 -0
- package/dist/converters/images/charts-data-converter.js +94 -0
- package/dist/converters/images/charts-data-converter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/adapters/chart-adapter.d.ts +38 -0
- package/dist/converters/pdf/pdfmake/adapters/chart-adapter.js +117 -0
- package/dist/converters/pdf/pdfmake/adapters/chart-adapter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/{image-adapter.d.ts → adapters/image-adapter.d.ts} +1 -1
- package/dist/converters/pdf/pdfmake/adapters/image-adapter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/{layout-adapter.d.ts → adapters/layout-adapter.d.ts} +1 -1
- package/dist/converters/pdf/pdfmake/adapters/layout-adapter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/adapters/page-element-adapter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/{table-adapter.d.ts → adapters/table-adapter.d.ts} +1 -1
- package/dist/converters/pdf/pdfmake/{table-adapter.js → adapters/table-adapter.js} +5 -5
- package/dist/converters/pdf/pdfmake/adapters/table-adapter.js.map +1 -0
- package/dist/converters/pdf/pdfmake/pdfmake.types.d.ts +10 -2
- package/dist/converters/pdf/pdfmake/pdfmake.types.js.map +1 -1
- package/dist/converters/pdf-converter.d.ts +0 -2
- package/dist/converters/pdf-converter.js +12 -12
- package/dist/converters/pdf-converter.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +5 -6
- package/dist/index.js.map +1 -1
- package/dist/types/component.d.ts +2 -2
- package/dist/types/component.js.map +1 -1
- package/dist/types/data-structures/smeupSch.d.ts +1 -1
- package/dist/types/data-structures/smeupSch.js.map +1 -1
- package/dist/types/general.d.ts +4 -0
- package/dist/types/general.js +6 -1
- package/dist/types/general.js.map +1 -1
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.js.map +1 -1
- package/dist/utils/datastructure-utility.js.map +1 -1
- package/package.json +1 -2
- package/dist/converters/images/charts-generator.js +0 -287
- package/dist/converters/images/charts-generator.js.map +0 -1
- package/dist/converters/pdf/pdfmake/image-adapter.js.map +0 -1
- package/dist/converters/pdf/pdfmake/layout-adapter.js.map +0 -1
- package/dist/converters/pdf/pdfmake/page-element-adapter.js.map +0 -1
- package/dist/converters/pdf/pdfmake/table-adapter.js.map +0 -1
- package/dist/converters/pdf/sch-converter.d.ts +0 -3
- package/dist/converters/pdf/sch-converter.js +0 -136
- package/dist/converters/pdf/sch-converter.js.map +0 -1
- package/dist/types/helpers.d.ts +0 -4
- package/dist/types/helpers.js +0 -9
- package/dist/types/helpers.js.map +0 -1
- /package/dist/converters/pdf/pdfmake/{image-adapter.js → adapters/image-adapter.js} +0 -0
- /package/dist/converters/pdf/pdfmake/{layout-adapter.js → adapters/layout-adapter.js} +0 -0
- /package/dist/converters/pdf/pdfmake/{page-element-adapter.d.ts → adapters/page-element-adapter.d.ts} +0 -0
- /package/dist/converters/pdf/pdfmake/{page-element-adapter.js → adapters/page-element-adapter.js} +0 -0
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { SmeupDataTable } from "../types/data-structures/smeupDataTable";
|
|
2
|
-
import { SmeupSch } from "../types/data-structures/smeupSch";
|
|
3
2
|
import { WebupManagerData, GenericObject } from "../types/index";
|
|
4
3
|
import type { PdfMakeConverterContext } from "./pdf/pdfmake/pdfmake.types";
|
|
5
4
|
import type { TDocumentDefinitions } from "pdfmake/interfaces";
|
|
6
5
|
import { fillPdfForm, FillPdfFormOptions } from "./pdf/form-filler";
|
|
7
|
-
export declare const schedaToPdfData: (sch: SmeupSch, webupManagerData: WebupManagerData) => Promise<Buffer>;
|
|
8
6
|
export declare const dataTableToPdfData: (component: {
|
|
9
7
|
smeupDataTable: SmeupDataTable;
|
|
10
8
|
props: GenericObject;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.fillPdfForm = exports.pdfmakeDocumentToPdfData = exports.dataTableToPdfData =
|
|
4
|
+
exports.fillPdfForm = exports.pdfmakeDocumentToPdfData = exports.dataTableToPdfData = void 0;
|
|
5
5
|
const index_1 = require("../types/index");
|
|
6
6
|
const commons_utility_1 = require("../utils/commons-utility");
|
|
7
7
|
const matrix_converter_1 = require("./excel/matrix-converter");
|
|
8
8
|
const matrix_converter_2 = require("./pdf/matrix-converter");
|
|
9
|
-
const sch_converter_1 = require("./pdf/sch-converter");
|
|
10
9
|
const pdf_lib_1 = require("pdf-lib");
|
|
11
10
|
const cover_renderer_1 = require("./pdf/cover-renderer");
|
|
12
11
|
const gfx_data_1 = require("../assets/gfx-data");
|
|
@@ -15,15 +14,12 @@ const form_filler_1 = require("./pdf/form-filler");
|
|
|
15
14
|
Object.defineProperty(exports, "fillPdfForm", { enumerable: true, get: function () { return form_filler_1.fillPdfForm; } });
|
|
16
15
|
const adapter_processor_1 = require("./pdf/pdfmake/adapter-processor");
|
|
17
16
|
const adapter_registry_1 = require("./pdf/pdfmake/adapter-registry");
|
|
18
|
-
const table_adapter_1 = require("./pdf/pdfmake/table-adapter");
|
|
19
|
-
const image_adapter_1 = require("./pdf/pdfmake/image-adapter");
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
return Buffer.from(doc.output("arraybuffer"));
|
|
25
|
-
};
|
|
26
|
-
exports.schedaToPdfData = schedaToPdfData;
|
|
17
|
+
const table_adapter_1 = require("./pdf/pdfmake/adapters/table-adapter");
|
|
18
|
+
const image_adapter_1 = require("./pdf/pdfmake/adapters/image-adapter");
|
|
19
|
+
const chart_adapter_1 = require("./pdf/pdfmake/adapters/chart-adapter");
|
|
20
|
+
const page_element_adapter_1 = require("./pdf/pdfmake/adapters/page-element-adapter");
|
|
21
|
+
const layout_adapter_1 = require("./pdf/pdfmake/adapters/layout-adapter");
|
|
22
|
+
// `schedaToPdfData` removed: `sch-converter.ts` deleted and references removed
|
|
27
23
|
const dataTableToPdfData = async (component, webupManagerData) => {
|
|
28
24
|
const workbook = (0, matrix_converter_1.dataTableToExcelWorkbook)(component, index_1.SupportedExportFormats.XLSX, webupManagerData);
|
|
29
25
|
const worksheet = workbook.getWorksheet(1);
|
|
@@ -52,13 +48,17 @@ const pdfmakeDocumentToPdfData = async (documentDefinition, context) => {
|
|
|
52
48
|
const registry = (0, adapter_registry_1.createAdapterRegistry)();
|
|
53
49
|
registry.register("table", (0, table_adapter_1.dataTableAdapter)());
|
|
54
50
|
registry.register("image", (0, image_adapter_1.imageAdapter)());
|
|
51
|
+
registry.register("chart", (0, chart_adapter_1.chartAdapter)());
|
|
55
52
|
registry.register("footer", (0, page_element_adapter_1.footerAdapter)());
|
|
56
53
|
registry.register("header", (0, page_element_adapter_1.headerAdapter)());
|
|
57
54
|
registry.register("layout", (0, layout_adapter_1.layoutAdapter)());
|
|
58
55
|
context.pdfDocument = documentDefinition;
|
|
59
56
|
// Pre-process document with adapters
|
|
60
57
|
const processedDoc = await (0, adapter_processor_1.preProcessPdfMakeDocument)(documentDefinition, context, registry);
|
|
61
|
-
console.debug(
|
|
58
|
+
// console.debug(
|
|
59
|
+
// "Processed pdfmake document:",
|
|
60
|
+
// JSON.stringify(processedDoc, null, 2),
|
|
61
|
+
// );
|
|
62
62
|
// Render the document using pdfmake
|
|
63
63
|
return (0, pdfmake_renderer_1.renderPdfMakeDocument)(processedDoc);
|
|
64
64
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf-converter.js","sourceRoot":"","sources":["../../src/converters/pdf-converter.ts"],"names":[],"mappings":";AAAA,sDAAsD;;;AAItD,0CAIwB;AACxB,8DAA2D;AAC3D,+DAAoE;AACpE,6DAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"pdf-converter.js","sourceRoot":"","sources":["../../src/converters/pdf-converter.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport { SmeupDataTable } from \"../types/data-structures/smeupDataTable\";\nimport { SmeupSch } from \"../types/data-structures/smeupSch\";\nimport {\n WebupManagerData,\n GenericObject,\n SupportedExportFormats,\n} from \"../types/index\";\nimport { convertToBuffer } from \"../utils/commons-utility\";\nimport { dataTableToExcelWorkbook } from \"./excel/matrix-converter\";\nimport { dataTableToPdfDoc } from \"./pdf/matrix-converter\";\nimport { PDFDocument } from \"pdf-lib\";\nimport { createCoverPdf } from \"./pdf/cover-renderer\";\nimport { logoBase64 } from \"../assets/gfx-data\";\nimport { renderPdfMakeDocument } from \"./pdf/pdfmake-renderer\";\nimport type { PdfMakeConverterContext } from \"./pdf/pdfmake/pdfmake.types\";\nimport type { TDocumentDefinitions } from \"pdfmake/interfaces\";\nimport { fillPdfForm, FillPdfFormOptions } from \"./pdf/form-filler\";\nimport { preProcessPdfMakeDocument } from \"./pdf/pdfmake/adapter-processor\";\nimport { createAdapterRegistry } from \"./pdf/pdfmake/adapter-registry\";\nimport { dataTableAdapter } from \"./pdf/pdfmake/adapters/table-adapter\";\nimport { imageAdapter } from \"./pdf/pdfmake/adapters/image-adapter\";\nimport { chartAdapter } from \"./pdf/pdfmake/adapters/chart-adapter\";\nimport {\n footerAdapter,\n headerAdapter,\n} from \"./pdf/pdfmake/adapters/page-element-adapter\";\nimport { layoutAdapter } from \"./pdf/pdfmake/adapters/layout-adapter\";\n\n// `schedaToPdfData` removed: `sch-converter.ts` deleted and references removed\n\nexport const dataTableToPdfData = async (\n component: {\n smeupDataTable: SmeupDataTable;\n props: GenericObject;\n },\n webupManagerData: WebupManagerData,\n): Promise<Buffer | Uint8Array> => {\n const workbook = dataTableToExcelWorkbook(\n component,\n SupportedExportFormats.XLSX,\n webupManagerData,\n );\n\n const worksheet = workbook.getWorksheet(1);\n if (worksheet) {\n const title = component.smeupDataTable.cover?.titles?.[\"T01\"] ?? \"\";\n const subtitle = component.smeupDataTable.cover?.titles?.[\"T02\"] ?? \"\";\n const subtitle2 = component.smeupDataTable.cover?.titles?.[\"T03\"] ?? \"\";\n const image = component.smeupDataTable.cover?.image ?? \"\";\n const logo = component.smeupDataTable.cover?.logo ?? logoBase64;\n const cover = createCoverPdf(image, logo, title, subtitle, subtitle2);\n const pdfDoc = await dataTableToPdfDoc(worksheet, webupManagerData, {\n logoBase64: logo,\n title: title,\n subtitle: subtitle,\n });\n const pdfBuffer = pdfDoc.output(\"arraybuffer\");\n return convertToBuffer(await appendPdfDocs([cover, pdfBuffer]));\n } else {\n throw new Error(\"Worksheet not found in the workbook\");\n }\n};\n\nexport const pdfmakeDocumentToPdfData = async (\n documentDefinition: TDocumentDefinitions,\n context: Partial<PdfMakeConverterContext>,\n): Promise<Buffer> => {\n // Register adapters\n const registry = createAdapterRegistry();\n registry.register(\"table\", dataTableAdapter());\n registry.register(\"image\", imageAdapter());\n registry.register(\"chart\", chartAdapter());\n registry.register(\"footer\", footerAdapter());\n registry.register(\"header\", headerAdapter());\n registry.register(\"layout\", layoutAdapter());\n\n context.pdfDocument = documentDefinition;\n\n // Pre-process document with adapters\n const processedDoc = await preProcessPdfMakeDocument(\n documentDefinition,\n context,\n registry,\n );\n\n // console.debug(\n // \"Processed pdfmake document:\",\n // JSON.stringify(processedDoc, null, 2),\n // );\n // Render the document using pdfmake\n return renderPdfMakeDocument(processedDoc);\n};\n\n/**\n * Unisce più PDF (in formato ArrayBuffer/Uint8Array/Buffer) in un unico PDF.\n * @param pdfBuffers Array di buffer PDF (es. ottenuti da jsPDF.output(\"arraybuffer\"))\n * @returns Buffer del PDF unito\n */\nconst appendPdfDocs = async (\n pdfBuffers: (Uint8Array | ArrayBuffer | Buffer)[],\n): Promise<Uint8Array> => {\n if (!pdfBuffers.length) throw new Error(\"No PDF buffers to append\");\n\n // Crea un nuovo documento PDF vuoto\n const mergedPdf = await PDFDocument.create();\n\n for (const pdfBytes of pdfBuffers) {\n const srcPdf = await PDFDocument.load(pdfBytes);\n const copiedPages = await mergedPdf.copyPages(\n srcPdf,\n srcPdf.getPageIndices(),\n );\n copiedPages.forEach(page => mergedPdf.addPage(page));\n }\n\n const mergedBytes = await mergedPdf.save();\n return mergedBytes;\n};\n\n// Re-export form filler function and types\nexport { fillPdfForm };\nexport type { FillPdfFormOptions };\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { dataTableToExcelData, dataTreeToExcelData, } from "./converters/excel-converter";
|
|
2
|
-
export {
|
|
2
|
+
export { dataTableToPdfData, pdfmakeDocumentToPdfData, fillPdfForm, } from "./converters/pdf-converter";
|
|
3
3
|
export type { FillPdfFormOptions } from "./converters/pdf-converter";
|
|
4
|
-
export { dataTableToChart } from "./converters/images/charts-
|
|
4
|
+
export { dataTableToChart } from "./converters/images/charts-converter";
|
|
5
5
|
export { createAdapterRegistry } from "./converters/pdf/pdfmake/adapter-registry";
|
|
6
|
-
export { funToSmeupTableAdapter } from "./converters/pdf/pdfmake/table-adapter";
|
|
7
|
-
export { smeupTableToPdfMakeTableAdapter } from "./converters/pdf/pdfmake/table-adapter";
|
|
6
|
+
export { funToSmeupTableAdapter } from "./converters/pdf/pdfmake/adapters/table-adapter";
|
|
7
|
+
export { smeupTableToPdfMakeTableAdapter } from "./converters/pdf/pdfmake/adapters/table-adapter";
|
|
8
8
|
export { preProcessPdfMakeDocument } from "./converters/pdf/pdfmake/adapter-processor";
|
|
9
9
|
export type { PdfmakeAdapter, PdfMakeConverterContext, AdapterRegistry, AdapterError, } from "./converters/pdf/pdfmake/pdfmake.types";
|
|
10
10
|
export type { WebupManagerData, GenericObject } from "./types/index";
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SupportedExportFormats = exports.preProcessPdfMakeDocument = exports.smeupTableToPdfMakeTableAdapter = exports.funToSmeupTableAdapter = exports.createAdapterRegistry = exports.dataTableToChart = exports.fillPdfForm = exports.pdfmakeDocumentToPdfData = exports.dataTableToPdfData = exports.
|
|
3
|
+
exports.SupportedExportFormats = exports.preProcessPdfMakeDocument = exports.smeupTableToPdfMakeTableAdapter = exports.funToSmeupTableAdapter = exports.createAdapterRegistry = exports.dataTableToChart = exports.fillPdfForm = exports.pdfmakeDocumentToPdfData = exports.dataTableToPdfData = exports.dataTreeToExcelData = exports.dataTableToExcelData = void 0;
|
|
4
4
|
// Public API exports
|
|
5
5
|
var excel_converter_1 = require("./converters/excel-converter");
|
|
6
6
|
Object.defineProperty(exports, "dataTableToExcelData", { enumerable: true, get: function () { return excel_converter_1.dataTableToExcelData; } });
|
|
7
7
|
Object.defineProperty(exports, "dataTreeToExcelData", { enumerable: true, get: function () { return excel_converter_1.dataTreeToExcelData; } });
|
|
8
8
|
var pdf_converter_1 = require("./converters/pdf-converter");
|
|
9
|
-
Object.defineProperty(exports, "schedaToPdfData", { enumerable: true, get: function () { return pdf_converter_1.schedaToPdfData; } });
|
|
10
9
|
Object.defineProperty(exports, "dataTableToPdfData", { enumerable: true, get: function () { return pdf_converter_1.dataTableToPdfData; } });
|
|
11
10
|
Object.defineProperty(exports, "pdfmakeDocumentToPdfData", { enumerable: true, get: function () { return pdf_converter_1.pdfmakeDocumentToPdfData; } });
|
|
12
11
|
Object.defineProperty(exports, "fillPdfForm", { enumerable: true, get: function () { return pdf_converter_1.fillPdfForm; } });
|
|
13
|
-
var
|
|
14
|
-
Object.defineProperty(exports, "dataTableToChart", { enumerable: true, get: function () { return
|
|
12
|
+
var charts_converter_1 = require("./converters/images/charts-converter");
|
|
13
|
+
Object.defineProperty(exports, "dataTableToChart", { enumerable: true, get: function () { return charts_converter_1.dataTableToChart; } });
|
|
15
14
|
// Pdfmake adapter system
|
|
16
15
|
var adapter_registry_1 = require("./converters/pdf/pdfmake/adapter-registry");
|
|
17
16
|
Object.defineProperty(exports, "createAdapterRegistry", { enumerable: true, get: function () { return adapter_registry_1.createAdapterRegistry; } });
|
|
18
|
-
var table_adapter_1 = require("./converters/pdf/pdfmake/table-adapter");
|
|
17
|
+
var table_adapter_1 = require("./converters/pdf/pdfmake/adapters/table-adapter");
|
|
19
18
|
Object.defineProperty(exports, "funToSmeupTableAdapter", { enumerable: true, get: function () { return table_adapter_1.funToSmeupTableAdapter; } });
|
|
20
|
-
var table_adapter_2 = require("./converters/pdf/pdfmake/table-adapter");
|
|
19
|
+
var table_adapter_2 = require("./converters/pdf/pdfmake/adapters/table-adapter");
|
|
21
20
|
Object.defineProperty(exports, "smeupTableToPdfMakeTableAdapter", { enumerable: true, get: function () { return table_adapter_2.smeupTableToPdfMakeTableAdapter; } });
|
|
22
21
|
var adapter_processor_1 = require("./converters/pdf/pdfmake/adapter-processor");
|
|
23
22
|
Object.defineProperty(exports, "preProcessPdfMakeDocument", { enumerable: true, get: function () { return adapter_processor_1.preProcessPdfMakeDocument; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qBAAqB;AACrB,gEAGsC;AAFpC,uHAAA,oBAAoB,OAAA;AACpB,sHAAA,mBAAmB,OAAA;AAGrB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qBAAqB;AACrB,gEAGsC;AAFpC,uHAAA,oBAAoB,OAAA;AACpB,sHAAA,mBAAmB,OAAA;AAGrB,4DAIoC;AAHlC,mHAAA,kBAAkB,OAAA;AAClB,yHAAA,wBAAwB,OAAA;AACxB,4GAAA,WAAW,OAAA;AAIb,yEAAwE;AAA/D,oHAAA,gBAAgB,OAAA;AAEzB,yBAAyB;AACzB,8EAAkF;AAAzE,yHAAA,qBAAqB,OAAA;AAC9B,iFAAyF;AAAhF,uHAAA,sBAAsB,OAAA;AAC/B,iFAAkG;AAAzF,gIAAA,+BAA+B,OAAA;AACxC,gFAAuF;AAA9E,8HAAA,yBAAyB,OAAA;AAWlC,uCAAuD;AAA9C,+GAAA,sBAAsB,OAAA","sourcesContent":["// Public API exports\nexport {\n dataTableToExcelData,\n dataTreeToExcelData,\n} from \"./converters/excel-converter\";\n\nexport {\n dataTableToPdfData,\n pdfmakeDocumentToPdfData,\n fillPdfForm,\n} from \"./converters/pdf-converter\";\nexport type { FillPdfFormOptions } from \"./converters/pdf-converter\";\n\nexport { dataTableToChart } from \"./converters/images/charts-converter\";\n\n// Pdfmake adapter system\nexport { createAdapterRegistry } from \"./converters/pdf/pdfmake/adapter-registry\";\nexport { funToSmeupTableAdapter } from \"./converters/pdf/pdfmake/adapters/table-adapter\";\nexport { smeupTableToPdfMakeTableAdapter } from \"./converters/pdf/pdfmake/adapters/table-adapter\";\nexport { preProcessPdfMakeDocument } from \"./converters/pdf/pdfmake/adapter-processor\";\n\nexport type {\n PdfmakeAdapter,\n PdfMakeConverterContext,\n AdapterRegistry,\n AdapterError,\n} from \"./converters/pdf/pdfmake/pdfmake.types\";\n\n// Export types that users might need\nexport type { WebupManagerData, GenericObject } from \"./types/index\";\nexport { SupportedExportFormats } from \"./types/index\";\nexport type { SmeupDataTable } from \"./types/data-structures/smeupDataTable\";\nexport type { SmeupDataTree } from \"./types/data-structures/smeupDataTree\";\n\nexport type ColumnGroup = {\n column: string;\n visible: boolean;\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/types/component.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,MAsCX;AAtCD,WAAY,MAAM;IAChB,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;AACb,CAAC,EAtCW,MAAM,sBAAN,MAAM,QAsCjB;AAED;;GAEG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,uCAAuB,CAAA;AACzB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB","sourcesContent":["/**\n * Supported shapes.\n */\nexport enum Shapes {\n ACC = \"ACC\",\n ACT = \"ACT\",\n ATM = \"ATM\",\n BOX = \"BOX\",\n BTN = \"BTN\",\n CAL = \"CAL\",\n CHA = \"CHA\", // = EXA\n DFT = \"DFT\",\n DYN = \"DYN\",\n DSH = \"DSH\",\n EML = \"EML\",\n EXA = \"EXA\", // = CHA\n EXB = \"EXB\", // = MAT\n EXD = \"EXD\", // = SCH\n EXU = \"EXU\",\n FBK = \"FBK\",\n FLD = \"FLD\",\n FOR = \"FOR\",\n GNT = \"GNT\",\n HTM = \"HTM\",\n IML = \"IML\",\n IMG = \"IMG\",\n INT = \"INT\",\n INP = \"INP\",\n JSO = \"JSO\",\n LAB = \"LAB\",\n MAT = \"MAT\", // = EXB\n PLN = \"PLN\",\n PDF = \"PDF\",\n SCH = \"SCH\", // = EXD\n SPL = \"SPL\",\n TED = \"TED\",\n TRE = \"TRE\",\n TXT = \"TXT\",\n CND = \"CND\",\n UNK = \"UNK\",\n OGN = \"OGN\",\n}\n\n/**\n * ToolbarState Info.\n */\nexport enum ToolbarState {\n EXPANDED = \"Expanded\",\n COLLAPSED = \"Collapsed\",\n INVISIBLE = \"Invisible\",\n}\n\nexport interface ComponentOptions
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/types/component.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,MAsCX;AAtCD,WAAY,MAAM;IAChB,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;IACX,qBAAW,CAAA;AACb,CAAC,EAtCW,MAAM,sBAAN,MAAM,QAsCjB;AAED;;GAEG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,uCAAuB,CAAA;AACzB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB","sourcesContent":["/**\n * Supported shapes.\n */\nexport enum Shapes {\n ACC = \"ACC\",\n ACT = \"ACT\",\n ATM = \"ATM\",\n BOX = \"BOX\",\n BTN = \"BTN\",\n CAL = \"CAL\",\n CHA = \"CHA\", // = EXA\n DFT = \"DFT\",\n DYN = \"DYN\",\n DSH = \"DSH\",\n EML = \"EML\",\n EXA = \"EXA\", // = CHA\n EXB = \"EXB\", // = MAT\n EXD = \"EXD\", // = SCH\n EXU = \"EXU\",\n FBK = \"FBK\",\n FLD = \"FLD\",\n FOR = \"FOR\",\n GNT = \"GNT\",\n HTM = \"HTM\",\n IML = \"IML\",\n IMG = \"IMG\",\n INT = \"INT\",\n INP = \"INP\",\n JSO = \"JSO\",\n LAB = \"LAB\",\n MAT = \"MAT\", // = EXB\n PLN = \"PLN\",\n PDF = \"PDF\",\n SCH = \"SCH\", // = EXD\n SPL = \"SPL\",\n TED = \"TED\",\n TRE = \"TRE\",\n TXT = \"TXT\",\n CND = \"CND\",\n UNK = \"UNK\",\n OGN = \"OGN\",\n}\n\n/**\n * ToolbarState Info.\n */\nexport enum ToolbarState {\n EXPANDED = \"Expanded\",\n COLLAPSED = \"Collapsed\",\n INVISIBLE = \"Invisible\",\n}\n\nexport interface ComponentOptions {\n Name?: string;\n}\n"]}
|
|
@@ -2,8 +2,8 @@ import { SmeupDataStructure, SmeupDataStructureType, SmeupSetupBase, SmeupVariab
|
|
|
2
2
|
import { SmeupDataTable } from "./smeupDataTable";
|
|
3
3
|
import { SmeupDataTree, SmeupDataNode } from "./smeupDataTree";
|
|
4
4
|
import { Shapes, ToolbarState } from "../component";
|
|
5
|
-
import { YesNo } from "../helpers";
|
|
6
5
|
import { RawDynamism } from "../dynamism";
|
|
6
|
+
import { YesNo } from "../general";
|
|
7
7
|
export interface SmeupSch extends SmeupDataStructure {
|
|
8
8
|
type: SmeupDataStructureType.SmeupScheda;
|
|
9
9
|
title: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smeupSch.js","sourceRoot":"","sources":["../../../src/types/data-structures/smeupSch.ts"],"names":[],"mappings":";;;AA0EA,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,2BAAW,CAAA;IACX,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,6BAAa,CAAA;AACf,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB","sourcesContent":["import {\n SmeupDataStructure,\n SmeupDataStructureType,\n SmeupSetupBase,\n SmeupVariable,\n} from \"./smeupDataStructure\";\nimport { SmeupDataTable } from \"./smeupDataTable\";\nimport { SmeupDataTree, SmeupDataNode } from \"./smeupDataTree\";\nimport { Shapes, ToolbarState } from \"../component\";\nimport {
|
|
1
|
+
{"version":3,"file":"smeupSch.js","sourceRoot":"","sources":["../../../src/types/data-structures/smeupSch.ts"],"names":[],"mappings":";;;AA0EA,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,2BAAW,CAAA;IACX,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,6BAAa,CAAA;AACf,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB","sourcesContent":["import {\n SmeupDataStructure,\n SmeupDataStructureType,\n SmeupSetupBase,\n SmeupVariable,\n} from \"./smeupDataStructure\";\nimport { SmeupDataTable } from \"./smeupDataTable\";\nimport { SmeupDataTree, SmeupDataNode } from \"./smeupDataTree\";\nimport { Shapes, ToolbarState } from \"../component\";\nimport { RawDynamism } from \"../dynamism\";\nimport { YesNo } from \"../general\";\n\nexport interface SmeupSch extends SmeupDataStructure {\n type: SmeupDataStructureType.SmeupScheda;\n title: string;\n sections: SmeupSchSection[];\n info?: string;\n id?: string;\n styles?: SmeupStyle[];\n layout?: string;\n /** other setup: for example \"Menu\", left menù */\n laySetup?: unknown;\n dynamisms?: RawDynamism[];\n}\n\nexport interface SmeupSchSection {\n id: string;\n layout: string;\n dim?: string;\n variables?: SmeupVariable[];\n sections?: SmeupSchSection[];\n components?: SmeupSchComponent[];\n type?: SectionTypes;\n}\n\nexport interface SmeupSchComponent {\n type: Shapes;\n title: string;\n load?: boolean;\n subNote?: string;\n id?: string;\n fun?: string;\n data?: SmeupDataTree | SmeupDataTable;\n dynamisms?: RawDynamism[];\n variables?: {\n [key: string]: SmeupVariable;\n };\n options?: SmeupSetupBase;\n icon?: string;\n buttons?: SmeupDataNode[];\n toolbarState?: ToolbarState;\n context?: string;\n}\n\nexport interface SmeupStyle {\n name: string;\n value: SmeupStyleOptions;\n}\n\nexport interface SmeupStyleOptions {\n Align?: string;\n FontBold?: YesNo;\n FontItalic?: YesNo;\n FontName?: string;\n FontSize?: string;\n FontULine?: YesNo;\n FontUnder?: YesNo;\n FontColor?: string;\n BackColor?: string;\n Padding?: string;\n Border?: string;\n TxtOri?: string;\n}\n\nexport enum SectionTypes {\n Acc = \"Acc\",\n Tab = \"Tab\",\n TabVer = \"TabVer\",\n Radio = \"Radio\",\n Combo = \"Combo\",\n OneBut = \"OneBut\",\n Menu = \"Menu\",\n}\n"]}
|
package/dist/types/general.d.ts
CHANGED
package/dist/types/general.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Fun = exports.FunObject = void 0;
|
|
3
|
+
exports.YesNo = exports.Fun = exports.FunObject = void 0;
|
|
4
4
|
class FunObject {
|
|
5
5
|
t;
|
|
6
6
|
p;
|
|
@@ -26,4 +26,9 @@ class Fun {
|
|
|
26
26
|
SS;
|
|
27
27
|
}
|
|
28
28
|
exports.Fun = Fun;
|
|
29
|
+
var YesNo;
|
|
30
|
+
(function (YesNo) {
|
|
31
|
+
YesNo["Yes"] = "Yes";
|
|
32
|
+
YesNo["No"] = "No";
|
|
33
|
+
})(YesNo || (exports.YesNo = YesNo = {}));
|
|
29
34
|
//# sourceMappingURL=general.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/types/general.ts"],"names":[],"mappings":";;;AAAA,MAAa,SAAS;IACpB,CAAC,CAAU;
|
|
1
|
+
{"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/types/general.ts"],"names":[],"mappings":";;;AAAA,MAAa,SAAS;IACpB,CAAC,CAAU;IACX,CAAC,CAAU;IACX,CAAC,CAAU;CACZ;AAJD,8BAIC;AAED;;GAEG;AACH,MAAa,GAAG;IACd,SAAS,CAAU;IACnB,OAAO,CAAU;IACjB,QAAQ,CAAU;IAElB,IAAI,CAAa;IACjB,IAAI,CAAa;IACjB,IAAI,CAAa;IACjB,IAAI,CAAa;IACjB,IAAI,CAAa;IACjB,IAAI,CAAa;IAEjB,CAAC,CAAU;IACX,KAAK,CAAU;IAEf,gEAAgE;IAChE,EAAE,CAAU;CACb;AAjBD,kBAiBC;AAED,IAAY,KAGX;AAHD,WAAY,KAAK;IACf,oBAAW,CAAA;IACX,kBAAS,CAAA;AACX,CAAC,EAHW,KAAK,qBAAL,KAAK,QAGhB","sourcesContent":["export class FunObject {\n t!: string;\n p!: string;\n k!: string;\n}\n\n/**\n * Fun\n */\nexport class Fun {\n component!: string;\n service!: string;\n function!: string;\n\n obj1?: FunObject;\n obj2?: FunObject;\n obj3?: FunObject;\n obj4?: FunObject;\n obj5?: FunObject;\n obj6?: FunObject;\n\n P?: string;\n INPUT?: string;\n\n // The implementation of java FunDTO expects SS to be uppercased\n SS?: string;\n}\n\nexport enum YesNo {\n Yes = \"Yes\",\n No = \"No\",\n}\n"]}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { Properties as CSSProperties } from "csstype";
|
|
2
|
-
import { ComponentOptions } from "./component";
|
|
3
2
|
import { SmeupDataCell } from "./data-structures/smeupDataTable";
|
|
4
3
|
export interface SmeupDataObj {
|
|
5
4
|
t: string;
|
|
@@ -40,7 +39,3 @@ export declare enum SupportedExportFormats {
|
|
|
40
39
|
PDF_SCHEDA = "pdf_scheda",
|
|
41
40
|
PDF = "pdf"
|
|
42
41
|
}
|
|
43
|
-
export interface ChartOptions extends ComponentOptions {
|
|
44
|
-
Width: string;
|
|
45
|
-
Height: string;
|
|
46
|
-
}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;AASA,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,uCAAuB,CAAA;IACvB,qDAAqC,CAAA;IACrC,qCAAqB,CAAA;IACrB,kDAAkC,CAAA;AACpC,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAwBD,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,qCAAW,CAAA;IACX,qCAAW,CAAA;IACX,uCAAa,CAAA;IACb,mDAAyB,CAAA;IACzB,qCAAW,CAAA;AACb,CAAC,EAPW,sBAAsB,sCAAtB,sBAAsB,QAOjC","sourcesContent":["import type { Properties as CSSProperties } from \"csstype\";\nimport { SmeupDataCell } from \"./data-structures/smeupDataTable\";\n\nexport interface SmeupDataObj {\n t: string;\n p: string;\n k: string;\n}\n\nexport enum DatesFormats {\n ISO_DATE = \"YYYY-MM-DD\",\n ISO_DATE_TIME = \"YYYY-MM-DD HH:mm:ss\",\n ISO_TIME = \"HH:mm:ss\",\n ISO_TIME_WITHOUT_SECONDS = \"HH:mm\",\n}\n\nexport interface GenericObject {\n [index: string]: unknown;\n}\n\nexport interface WebupManagerData {\n mathLocale: string;\n datesLocale: string;\n themeBackground: string;\n}\n\n/**\n * Applies dataTable filters to the excel table rows\n */\nexport type ColumnFilter = {\n checkBoxes?: { value: string }[];\n textField?: string;\n};\n\nexport interface SmeupDataCellStyled extends SmeupDataCell {\n style?: CSSProperties;\n}\n\nexport enum SupportedExportFormats {\n XLSX = \"xlsx\",\n CSV = \"csv\",\n TXT = \"txt\",\n FILE = \"file\",\n PDF_SCHEDA = \"pdf_scheda\",\n PDF = \"pdf\",\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datastructure-utility.js","sourceRoot":"","sources":["../../src/utils/datastructure-utility.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,CAAC,MAAuB,EAAW,EAAE;IACjE,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC;QACvD,MAAM,CAAC,OAAO,KAAK,KAAK,CACzB,CAAC;AACJ,CAAC,CAAC;AALW,QAAA,cAAc,kBAKzB","sourcesContent":["import { SmeupDataColumn } from \"../types/data-structures/smeupDataTable\";\n\nexport const isColumnHidden = (column: SmeupDataColumn): boolean => {\n return (\n Object.prototype.hasOwnProperty.call(column, \"visible\") &&\n column.visible === false\n );\n};\n
|
|
1
|
+
{"version":3,"file":"datastructure-utility.js","sourceRoot":"","sources":["../../src/utils/datastructure-utility.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,CAAC,MAAuB,EAAW,EAAE;IACjE,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC;QACvD,MAAM,CAAC,OAAO,KAAK,KAAK,CACzB,CAAC;AACJ,CAAC,CAAC;AALW,QAAA,cAAc,kBAKzB","sourcesContent":["import { SmeupDataColumn } from \"../types/data-structures/smeupDataTable\";\n\nexport const isColumnHidden = (column: SmeupDataColumn): boolean => {\n return (\n Object.prototype.hasOwnProperty.call(column, \"visible\") &&\n column.visible === false\n );\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sme.up/doc-alchemist",
|
|
3
|
-
"version": "1.6.0-SNAPSHOT-
|
|
3
|
+
"version": "1.6.0-SNAPSHOT-20251212094904",
|
|
4
4
|
"description": "Library for generating documents in various formats, including Excel and PDF.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Smeup LAB <info@smeup.com> (https://www.smeup.com/)",
|
|
@@ -38,7 +38,6 @@
|
|
|
38
38
|
"typescript-eslint": "^8.33.1"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"canvas": "^3.1.1",
|
|
42
41
|
"echarts": "^5.6.0",
|
|
43
42
|
"exceljs": "^4.4.0",
|
|
44
43
|
"image-size": "^2.0.2",
|
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.dataTableToChart = void 0;
|
|
37
|
-
const echarts = __importStar(require("echarts"));
|
|
38
|
-
/**
|
|
39
|
-
* Converts SmeupDataTable to chart image buffer
|
|
40
|
-
* @param dataTable - SmeupDataTable containing the data
|
|
41
|
-
* @param chartType - Type of chart (bar, line, pie, scatter)
|
|
42
|
-
* @returns Promise<Buffer> containing the chart image
|
|
43
|
-
*/
|
|
44
|
-
const dataTableToChart = async (dataTable, chartType, chartOptions) => {
|
|
45
|
-
// Check if we're in Node.js or browser environment
|
|
46
|
-
const isNode = typeof process !== "undefined" && process.versions && process.versions.node;
|
|
47
|
-
if (isNode) {
|
|
48
|
-
return await generateChartInNode(dataTable, chartType, chartOptions);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
return generateChartInBrowser(dataTable, chartType, chartOptions);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
exports.dataTableToChart = dataTableToChart;
|
|
55
|
-
/**
|
|
56
|
-
* Generate chart in Node.js environment using canvas
|
|
57
|
-
*/
|
|
58
|
-
async function generateChartInNode(dataTable, chartType, chartOptions) {
|
|
59
|
-
try {
|
|
60
|
-
// Dynamic import for Node.js canvas
|
|
61
|
-
const { createCanvas } = await Promise.resolve().then(() => __importStar(require("canvas")));
|
|
62
|
-
const width = Number(chartOptions.Width);
|
|
63
|
-
const height = Number(chartOptions.Height);
|
|
64
|
-
// Create canvas
|
|
65
|
-
const canvas = createCanvas(width, height);
|
|
66
|
-
// Create a minimal DOM-like environment for ECharts
|
|
67
|
-
const mockElement = {
|
|
68
|
-
clientWidth: width,
|
|
69
|
-
clientHeight: width,
|
|
70
|
-
style: {},
|
|
71
|
-
addEventListener: () => { },
|
|
72
|
-
removeEventListener: () => { },
|
|
73
|
-
getAttribute: () => null,
|
|
74
|
-
setAttribute: () => { },
|
|
75
|
-
getContext: (type) => {
|
|
76
|
-
if (type === "2d") {
|
|
77
|
-
return canvas.getContext("2d");
|
|
78
|
-
}
|
|
79
|
-
return null;
|
|
80
|
-
},
|
|
81
|
-
appendChild: () => { },
|
|
82
|
-
removeChild: () => { },
|
|
83
|
-
ownerDocument: {
|
|
84
|
-
createElement: (tagName) => {
|
|
85
|
-
if (tagName === "canvas") {
|
|
86
|
-
return createCanvas(width, height);
|
|
87
|
-
}
|
|
88
|
-
return mockElement;
|
|
89
|
-
},
|
|
90
|
-
createElementNS: () => mockElement,
|
|
91
|
-
defaultView: {
|
|
92
|
-
getComputedStyle: () => ({ getPropertyValue: () => "" }),
|
|
93
|
-
},
|
|
94
|
-
},
|
|
95
|
-
};
|
|
96
|
-
// Initialize ECharts with the mock element
|
|
97
|
-
const chart = echarts.init(mockElement, null, {
|
|
98
|
-
renderer: "canvas",
|
|
99
|
-
useDirtyRect: false,
|
|
100
|
-
width: width,
|
|
101
|
-
height: height,
|
|
102
|
-
});
|
|
103
|
-
// Convert data table to chart configuration
|
|
104
|
-
const config = convertDataTableToChartConfig(dataTable, chartType, chartOptions);
|
|
105
|
-
// Set chart options
|
|
106
|
-
chart.setOption(config);
|
|
107
|
-
// Force render by calling resize
|
|
108
|
-
chart.resize();
|
|
109
|
-
// Get image buffer from canvas
|
|
110
|
-
const imageBuffer = canvas.toBuffer("image/jpeg");
|
|
111
|
-
// Cleanup
|
|
112
|
-
chart.dispose();
|
|
113
|
-
return imageBuffer;
|
|
114
|
-
}
|
|
115
|
-
catch (error) {
|
|
116
|
-
console.error("Error generating chart in Node.js:", error);
|
|
117
|
-
throw new Error(`Failed to generate chart: ${error instanceof Error ? error.message : "Unknown error"}`);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Generate chart in browser environment
|
|
122
|
-
*/
|
|
123
|
-
function generateChartInBrowser(dataTable, chartType, chartOptions) {
|
|
124
|
-
try {
|
|
125
|
-
const width = Number(chartOptions.Width);
|
|
126
|
-
const height = Number(chartOptions.height);
|
|
127
|
-
// Create temporary canvas element
|
|
128
|
-
const canvas = document.createElement("canvas");
|
|
129
|
-
canvas.width = width;
|
|
130
|
-
canvas.height = height;
|
|
131
|
-
canvas.style.position = "absolute";
|
|
132
|
-
canvas.style.left = "-9999px";
|
|
133
|
-
document.body.appendChild(canvas);
|
|
134
|
-
// Initialize ECharts with canvas
|
|
135
|
-
const chart = echarts.init(canvas, null, {
|
|
136
|
-
renderer: "canvas",
|
|
137
|
-
useDirtyRect: false,
|
|
138
|
-
width: width,
|
|
139
|
-
height: height,
|
|
140
|
-
});
|
|
141
|
-
// Convert data table to chart configuration
|
|
142
|
-
const config = convertDataTableToChartConfig(dataTable, chartType, chartOptions);
|
|
143
|
-
// Set chart options
|
|
144
|
-
chart.setOption(config);
|
|
145
|
-
// Get image data
|
|
146
|
-
const imageDataUrl = chart.getDataURL({
|
|
147
|
-
type: "jpeg",
|
|
148
|
-
pixelRatio: 1,
|
|
149
|
-
backgroundColor: "#fff",
|
|
150
|
-
});
|
|
151
|
-
// Convert data URL to buffer
|
|
152
|
-
const base64Data = imageDataUrl.replace(/^data:image\/jpeg;base64,/, "");
|
|
153
|
-
const imageBuffer = Buffer.from(base64Data, "base64");
|
|
154
|
-
// Cleanup
|
|
155
|
-
chart.dispose();
|
|
156
|
-
document.body.removeChild(canvas);
|
|
157
|
-
return imageBuffer;
|
|
158
|
-
}
|
|
159
|
-
catch (error) {
|
|
160
|
-
console.error("Error generating chart in browser:", error);
|
|
161
|
-
throw new Error(`Failed to generate chart: ${error instanceof Error ? error.message : "Unknown error"}`);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Convert SmeupDataTable to ECharts configuration
|
|
166
|
-
*/
|
|
167
|
-
function convertDataTableToChartConfig(dataTable, chartType, chartOptions) {
|
|
168
|
-
if (!dataTable.columns || !dataTable.rows || dataTable.rows.length === 0) {
|
|
169
|
-
throw new Error("Invalid data table: missing columns or rows");
|
|
170
|
-
}
|
|
171
|
-
// Get visible columns
|
|
172
|
-
const visibleColumns = dataTable.columns.filter(col => col.visible !== false);
|
|
173
|
-
if (visibleColumns.length < 2) {
|
|
174
|
-
throw new Error("Data table must have at least 2 visible columns for chart generation");
|
|
175
|
-
}
|
|
176
|
-
// First column is typically used for categories/labels
|
|
177
|
-
const categoryColumn = visibleColumns[0];
|
|
178
|
-
const seriesColumns = chartOptions.Series?.split("|");
|
|
179
|
-
if (!seriesColumns || seriesColumns.length === 0) {
|
|
180
|
-
throw new Error("Chart options must specify at least one series");
|
|
181
|
-
}
|
|
182
|
-
const dataColumns = seriesColumns
|
|
183
|
-
.map(name => visibleColumns.find(col => col.name === name))
|
|
184
|
-
.filter((column) => column !== undefined);
|
|
185
|
-
if (dataColumns.length === 0) {
|
|
186
|
-
throw new Error("No valid data columns found for chart series");
|
|
187
|
-
}
|
|
188
|
-
// Extract categories from first column
|
|
189
|
-
const categories = dataTable.rows.map(row => row.cells?.[categoryColumn.name]?.value?.toString() || "");
|
|
190
|
-
// Extract data series from remaining columns
|
|
191
|
-
const normalizedType = normalizeChartType(chartType);
|
|
192
|
-
const series = dataColumns.map(column => {
|
|
193
|
-
const data = dataTable.rows.map(row => {
|
|
194
|
-
const cellValue = row.cells?.[column.name]?.value;
|
|
195
|
-
return parseFloat(cellValue?.toString() || "0") || 0;
|
|
196
|
-
});
|
|
197
|
-
const seriesData = chartType.toLowerCase() === "pie"
|
|
198
|
-
? data.map((value, index) => ({ value, name: categories[index] }))
|
|
199
|
-
: data;
|
|
200
|
-
// Create properly typed series based on chart type
|
|
201
|
-
switch (normalizedType) {
|
|
202
|
-
case "pie":
|
|
203
|
-
return {
|
|
204
|
-
name: column.title || column.name,
|
|
205
|
-
type: "pie",
|
|
206
|
-
data: seriesData,
|
|
207
|
-
};
|
|
208
|
-
case "line":
|
|
209
|
-
return {
|
|
210
|
-
name: column.title || column.name,
|
|
211
|
-
type: "line",
|
|
212
|
-
data: seriesData,
|
|
213
|
-
lineStyle: { width: 8 },
|
|
214
|
-
};
|
|
215
|
-
case "bar":
|
|
216
|
-
return {
|
|
217
|
-
name: column.title || column.name,
|
|
218
|
-
type: "bar",
|
|
219
|
-
data: seriesData,
|
|
220
|
-
};
|
|
221
|
-
case "scatter":
|
|
222
|
-
return {
|
|
223
|
-
name: column.title || column.name,
|
|
224
|
-
type: "scatter",
|
|
225
|
-
data: seriesData,
|
|
226
|
-
};
|
|
227
|
-
default:
|
|
228
|
-
return {
|
|
229
|
-
name: column.title || column.name,
|
|
230
|
-
type: "bar",
|
|
231
|
-
data: seriesData,
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
});
|
|
235
|
-
// Build chart configuration based on type
|
|
236
|
-
const config = {
|
|
237
|
-
tooltip: {
|
|
238
|
-
trigger: chartType.toLowerCase() === "pie" ? "item" : "axis",
|
|
239
|
-
},
|
|
240
|
-
series,
|
|
241
|
-
backgroundColor: "#fff",
|
|
242
|
-
textStyle: {
|
|
243
|
-
fontSize: 36,
|
|
244
|
-
},
|
|
245
|
-
};
|
|
246
|
-
// Add legend for multiple series or pie charts
|
|
247
|
-
if (series.length > 1 || chartType.toLowerCase() === "pie") {
|
|
248
|
-
config.legend = {
|
|
249
|
-
data: series.map(s => s.name),
|
|
250
|
-
textStyle: { fontSize: 32 },
|
|
251
|
-
};
|
|
252
|
-
}
|
|
253
|
-
// Add axes for non-pie charts
|
|
254
|
-
if (chartType.toLowerCase() !== "pie") {
|
|
255
|
-
config.xAxis = {
|
|
256
|
-
type: "category",
|
|
257
|
-
data: categories,
|
|
258
|
-
axisLabel: { fontSize: 32 },
|
|
259
|
-
};
|
|
260
|
-
config.yAxis = {
|
|
261
|
-
type: "value",
|
|
262
|
-
axisLabel: { fontSize: 32 },
|
|
263
|
-
};
|
|
264
|
-
}
|
|
265
|
-
return config;
|
|
266
|
-
}
|
|
267
|
-
/**
|
|
268
|
-
* Normalize chart type to ECharts supported types
|
|
269
|
-
*/
|
|
270
|
-
function normalizeChartType(chartType) {
|
|
271
|
-
const type = chartType.toLowerCase();
|
|
272
|
-
switch (type) {
|
|
273
|
-
case "bar":
|
|
274
|
-
case "column":
|
|
275
|
-
return "bar";
|
|
276
|
-
case "line":
|
|
277
|
-
return "line";
|
|
278
|
-
case "pie":
|
|
279
|
-
return "pie";
|
|
280
|
-
case "scatter":
|
|
281
|
-
return "scatter";
|
|
282
|
-
default:
|
|
283
|
-
console.warn(`Unknown chart type: ${chartType}, defaulting to bar`);
|
|
284
|
-
return "bar";
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
//# sourceMappingURL=charts-generator.js.map
|