@pdfme/generator 5.5.10-dev.5 → 6.0.0-dev.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.
Files changed (96) hide show
  1. package/package.json +27 -62
  2. package/src/generate.ts +2 -3
  3. package/src/helper.ts +2 -2
  4. package/tsconfig.build.json +14 -0
  5. package/tsconfig.json +13 -15
  6. package/vite.config.mts +39 -0
  7. package/vitest.setup.ts +3 -0
  8. package/dist/cjs/__tests__/assets/templates/index.js +0 -49
  9. package/dist/cjs/__tests__/assets/templates/index.js.map +0 -1
  10. package/dist/cjs/__tests__/generate.test.js +0 -277
  11. package/dist/cjs/__tests__/generate.test.js.map +0 -1
  12. package/dist/cjs/__tests__/integration-other.test.js +0 -70
  13. package/dist/cjs/__tests__/integration-other.test.js.map +0 -1
  14. package/dist/cjs/__tests__/integration-playground.test.js +0 -148
  15. package/dist/cjs/__tests__/integration-playground.test.js.map +0 -1
  16. package/dist/cjs/__tests__/integration-segmenter.test.js +0 -50
  17. package/dist/cjs/__tests__/integration-segmenter.test.js.map +0 -1
  18. package/dist/cjs/__tests__/integration-textType.test.js +0 -50
  19. package/dist/cjs/__tests__/integration-textType.test.js.map +0 -1
  20. package/dist/cjs/__tests__/utils.js +0 -70
  21. package/dist/cjs/__tests__/utils.js.map +0 -1
  22. package/dist/cjs/src/constants.js +0 -5
  23. package/dist/cjs/src/constants.js.map +0 -1
  24. package/dist/cjs/src/generate.js +0 -163
  25. package/dist/cjs/src/generate.js.map +0 -1
  26. package/dist/cjs/src/helper.js +0 -144
  27. package/dist/cjs/src/helper.js.map +0 -1
  28. package/dist/cjs/src/index.js +0 -9
  29. package/dist/cjs/src/index.js.map +0 -1
  30. package/dist/cjs/src/types.js +0 -3
  31. package/dist/cjs/src/types.js.map +0 -1
  32. package/dist/esm/__tests__/assets/templates/index.js +0 -46
  33. package/dist/esm/__tests__/assets/templates/index.js.map +0 -1
  34. package/dist/esm/__tests__/generate.test.js +0 -272
  35. package/dist/esm/__tests__/generate.test.js.map +0 -1
  36. package/dist/esm/__tests__/integration-other.test.js +0 -65
  37. package/dist/esm/__tests__/integration-other.test.js.map +0 -1
  38. package/dist/esm/__tests__/integration-playground.test.js +0 -110
  39. package/dist/esm/__tests__/integration-playground.test.js.map +0 -1
  40. package/dist/esm/__tests__/integration-segmenter.test.js +0 -45
  41. package/dist/esm/__tests__/integration-segmenter.test.js.map +0 -1
  42. package/dist/esm/__tests__/integration-textType.test.js +0 -45
  43. package/dist/esm/__tests__/integration-textType.test.js.map +0 -1
  44. package/dist/esm/__tests__/utils.js +0 -32
  45. package/dist/esm/__tests__/utils.js.map +0 -1
  46. package/dist/esm/src/constants.js +0 -2
  47. package/dist/esm/src/constants.js.map +0 -1
  48. package/dist/esm/src/generate.js +0 -128
  49. package/dist/esm/src/generate.js.map +0 -1
  50. package/dist/esm/src/helper.js +0 -103
  51. package/dist/esm/src/helper.js.map +0 -1
  52. package/dist/esm/src/index.js +0 -3
  53. package/dist/esm/src/index.js.map +0 -1
  54. package/dist/esm/src/types.js +0 -2
  55. package/dist/esm/src/types.js.map +0 -1
  56. package/dist/node/__tests__/assets/templates/index.js +0 -49
  57. package/dist/node/__tests__/assets/templates/index.js.map +0 -1
  58. package/dist/node/__tests__/generate.test.js +0 -277
  59. package/dist/node/__tests__/generate.test.js.map +0 -1
  60. package/dist/node/__tests__/integration-other.test.js +0 -70
  61. package/dist/node/__tests__/integration-other.test.js.map +0 -1
  62. package/dist/node/__tests__/integration-playground.test.js +0 -148
  63. package/dist/node/__tests__/integration-playground.test.js.map +0 -1
  64. package/dist/node/__tests__/integration-segmenter.test.js +0 -50
  65. package/dist/node/__tests__/integration-segmenter.test.js.map +0 -1
  66. package/dist/node/__tests__/integration-textType.test.js +0 -50
  67. package/dist/node/__tests__/integration-textType.test.js.map +0 -1
  68. package/dist/node/__tests__/utils.js +0 -70
  69. package/dist/node/__tests__/utils.js.map +0 -1
  70. package/dist/node/src/constants.js +0 -5
  71. package/dist/node/src/constants.js.map +0 -1
  72. package/dist/node/src/generate.js +0 -163
  73. package/dist/node/src/generate.js.map +0 -1
  74. package/dist/node/src/helper.js +0 -144
  75. package/dist/node/src/helper.js.map +0 -1
  76. package/dist/node/src/index.js +0 -9
  77. package/dist/node/src/index.js.map +0 -1
  78. package/dist/node/src/types.js +0 -3
  79. package/dist/node/src/types.js.map +0 -1
  80. package/dist/types/__tests__/assets/templates/index.d.ts +0 -975
  81. package/dist/types/__tests__/generate.test.d.ts +0 -1
  82. package/dist/types/__tests__/integration-other.test.d.ts +0 -1
  83. package/dist/types/__tests__/integration-playground.test.d.ts +0 -1
  84. package/dist/types/__tests__/integration-segmenter.test.d.ts +0 -1
  85. package/dist/types/__tests__/integration-textType.test.d.ts +0 -1
  86. package/dist/types/__tests__/utils.d.ts +0 -3
  87. package/dist/types/src/constants.d.ts +0 -1
  88. package/dist/types/src/generate.d.ts +0 -3
  89. package/dist/types/src/helper.d.ts +0 -29
  90. package/dist/types/src/index.d.ts +0 -2
  91. package/dist/types/src/types.d.ts +0 -20
  92. package/eslint.config.mjs +0 -22
  93. package/jest.setup.js +0 -2
  94. package/tsconfig.cjs.json +0 -10
  95. package/tsconfig.esm.json +0 -11
  96. package/tsconfig.node.json +0 -11
@@ -1,144 +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.insertPage = exports.postProcessing = exports.preprocessing = exports.validateRequiredFields = exports.getEmbedPdfPages = void 0;
37
- const fontkit = __importStar(require("fontkit"));
38
- const common_1 = require("@pdfme/common");
39
- const schemas_1 = require("@pdfme/schemas");
40
- const pdf_lib_1 = require("@pdfme/pdf-lib");
41
- const constants_js_1 = require("./constants.js");
42
- const getEmbedPdfPages = async (arg) => {
43
- const { template: { schemas, basePdf }, pdfDoc, } = arg;
44
- let basePages = [];
45
- let embedPdfBoxes = [];
46
- if ((0, common_1.isBlankPdf)(basePdf)) {
47
- const { width: _width, height: _height } = basePdf;
48
- const width = (0, common_1.mm2pt)(_width);
49
- const height = (0, common_1.mm2pt)(_height);
50
- basePages = schemas.map(() => {
51
- const page = pdf_lib_1.PDFPage.create(pdfDoc);
52
- page.setSize(width, height);
53
- return page;
54
- });
55
- embedPdfBoxes = schemas.map(() => ({
56
- mediaBox: { x: 0, y: 0, width, height },
57
- bleedBox: { x: 0, y: 0, width, height },
58
- trimBox: { x: 0, y: 0, width, height },
59
- }));
60
- }
61
- else {
62
- const willLoadPdf = await (0, common_1.getB64BasePdf)(basePdf);
63
- const embedPdf = await pdf_lib_1.PDFDocument.load(willLoadPdf);
64
- const embedPdfPages = embedPdf.getPages();
65
- embedPdfBoxes = embedPdfPages.map((p) => ({
66
- mediaBox: p.getMediaBox(),
67
- bleedBox: p.getBleedBox(),
68
- trimBox: p.getTrimBox(),
69
- }));
70
- const boundingBoxes = embedPdfPages.map((p) => {
71
- const { x, y, width, height } = p.getMediaBox();
72
- return { left: x, bottom: y, right: width, top: height + y };
73
- });
74
- const transformationMatrices = embedPdfPages.map(() => [1, 0, 0, 1, 0, 0]);
75
- basePages = await pdfDoc.embedPages(embedPdfPages, boundingBoxes, transformationMatrices);
76
- }
77
- return { basePages, embedPdfBoxes };
78
- };
79
- exports.getEmbedPdfPages = getEmbedPdfPages;
80
- const validateRequiredFields = (template, inputs) => {
81
- template.schemas.forEach((schemaPage) => schemaPage.forEach((schema) => {
82
- if (schema.required && !schema.readOnly && !inputs.some((input) => input[schema.name])) {
83
- throw new Error(`[@pdfme/generator] input for '${schema.name}' is required to generate this PDF`);
84
- }
85
- }));
86
- };
87
- exports.validateRequiredFields = validateRequiredFields;
88
- const preprocessing = async (arg) => {
89
- const { template, userPlugins } = arg;
90
- const { schemas, basePdf } = template;
91
- const staticSchema = (0, common_1.isBlankPdf)(basePdf) ? (basePdf.staticSchema ?? []) : [];
92
- const pdfDoc = await pdf_lib_1.PDFDocument.create();
93
- // @ts-expect-error registerFontkit method is not in type definitions but exists at runtime
94
- pdfDoc.registerFontkit(fontkit);
95
- const plugins = (0, common_1.pluginRegistry)(Object.values(userPlugins).length > 0 ? userPlugins : schemas_1.builtInPlugins);
96
- const schemaTypes = Array.from(new Set(schemas
97
- .flatMap((schemaPage) => schemaPage.map((schema) => schema.type))
98
- .concat(staticSchema.map((schema) => schema.type))));
99
- const renderObj = schemaTypes.reduce((acc, type) => {
100
- const plugin = plugins.findByType(type);
101
- if (!plugin || !plugin.pdf) {
102
- throw new Error(`[@pdfme/generator] Plugin or renderer for type ${type} not found.
103
- Check this document: https://pdfme.com/docs/custom-schemas`);
104
- }
105
- // Use type assertion to handle the pdf function with schema type
106
- return {
107
- ...acc,
108
- [type]: plugin.pdf,
109
- };
110
- }, {});
111
- return { pdfDoc, renderObj };
112
- };
113
- exports.preprocessing = preprocessing;
114
- const postProcessing = (props) => {
115
- const { pdfDoc, options } = props;
116
- const { author = constants_js_1.TOOL_NAME, creationDate = new Date(), creator = constants_js_1.TOOL_NAME, keywords = [], lang = 'en', modificationDate = new Date(), producer = constants_js_1.TOOL_NAME, subject = '', title = '', } = options;
117
- pdfDoc.setAuthor(author);
118
- pdfDoc.setCreationDate(creationDate);
119
- pdfDoc.setCreator(creator);
120
- pdfDoc.setKeywords(keywords);
121
- pdfDoc.setLanguage(lang);
122
- pdfDoc.setModificationDate(modificationDate);
123
- pdfDoc.setProducer(producer);
124
- pdfDoc.setSubject(subject);
125
- pdfDoc.setTitle(title);
126
- };
127
- exports.postProcessing = postProcessing;
128
- const insertPage = (arg) => {
129
- const { basePage, embedPdfBox, pdfDoc } = arg;
130
- const size = basePage instanceof pdf_lib_1.PDFEmbeddedPage ? basePage.size() : basePage.getSize();
131
- const insertedPage = basePage instanceof pdf_lib_1.PDFEmbeddedPage
132
- ? pdfDoc.addPage([size.width, size.height])
133
- : pdfDoc.addPage(basePage);
134
- if (basePage instanceof pdf_lib_1.PDFEmbeddedPage) {
135
- insertedPage.drawPage(basePage);
136
- const { mediaBox, bleedBox, trimBox } = embedPdfBox;
137
- insertedPage.setMediaBox(mediaBox.x, mediaBox.y, mediaBox.width, mediaBox.height);
138
- insertedPage.setBleedBox(bleedBox.x, bleedBox.y, bleedBox.width, bleedBox.height);
139
- insertedPage.setTrimBox(trimBox.x, trimBox.y, trimBox.width, trimBox.height);
140
- }
141
- return insertedPage;
142
- };
143
- exports.insertPage = insertPage;
144
- //# sourceMappingURL=helper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/helper.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generate = void 0;
7
- const generate_js_1 = __importDefault(require("./generate.js"));
8
- exports.generate = generate_js_1.default;
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAE5B,mBAFF,qBAAQ,CAEE"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":""}
@@ -1,46 +0,0 @@
1
- const z97mmx210mm = require('./z97mmx210mm.json');
2
- const barcodes = require('./barcodes.json');
3
- const canvasPdf = require('./canvasPdf.json');
4
- const background = require('./background.json');
5
- const dynamicFontSizeHorizontal = require('./dynamicFontSizeHorizontal.json');
6
- const dynamicFontSizeVertical = require('./dynamicFontSizeVertical.json');
7
- const rotation = require('./rotation.json');
8
- const verticalAlignmentTop = require('./verticalAlignmentTop.json');
9
- const verticalAlignmentMiddle = require('./verticalAlignmentMiddle.json');
10
- const verticalAlignmentBottom = require('./verticalAlignmentBottom.json');
11
- const test = require('./test.json');
12
- const shapes = require('./shapes.json');
13
- const pet = require('./pet.json');
14
- const pdfImage = require('./pdfImage.json');
15
- const underlineStrikethrough = require('./underlineStrikethrough.json');
16
- const multiVariableText = require('./multiVariableText.json');
17
- const preVersion5Format = require('./preVersion5Format.json');
18
- const segmenterEnglish = require('./segmenterEnglish.json');
19
- const segmenterJapanese = require('./segmenterJapanese.json');
20
- // These tests are slower, so we allow more time for them to pass
21
- export const textType = {
22
- dynamicFontSizeHorizontal,
23
- dynamicFontSizeVertical,
24
- verticalAlignmentTop,
25
- verticalAlignmentMiddle,
26
- verticalAlignmentBottom,
27
- underlineStrikethrough,
28
- multiVariableText,
29
- };
30
- export const other = {
31
- barcodes,
32
- shapes,
33
- test,
34
- preVersion5Format,
35
- z97mmx210mm,
36
- canvasPdf,
37
- background,
38
- rotation,
39
- pet,
40
- pdfImage,
41
- };
42
- export const segmenter = {
43
- segmenterEnglish,
44
- segmenterJapanese,
45
- };
46
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../__tests__/assets/templates/index.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAa,CAAC;AAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAa,CAAC;AACxD,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAa,CAAC;AAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,yBAAyB,GAAG,OAAO,CAAC,kCAAkC,CAAa,CAAC;AAC1F,MAAM,uBAAuB,GAAG,OAAO,CAAC,gCAAgC,CAAa,CAAC;AACtF,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAa,CAAC;AACxD,MAAM,oBAAoB,GAAG,OAAO,CAAC,6BAA6B,CAAa,CAAC;AAChF,MAAM,uBAAuB,GAAG,OAAO,CAAC,gCAAgC,CAAa,CAAC;AACtF,MAAM,uBAAuB,GAAG,OAAO,CAAC,gCAAgC,CAAa,CAAC;AACtF,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAa,CAAC;AAChD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAa,CAAC;AACxD,MAAM,sBAAsB,GAAG,OAAO,CAAC,+BAA+B,CAAa,CAAC;AACpF,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAa,CAAC;AAC1E,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAa,CAAC;AAC1E,MAAM,gBAAgB,GAAG,OAAO,CAAC,yBAAyB,CAAa,CAAC;AACxE,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAa,CAAC;AAE1E,iEAAiE;AACjE,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,yBAAyB;IACzB,uBAAuB;IACvB,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,iBAAiB;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,QAAQ;IACR,MAAM;IACN,IAAI;IACJ,iBAAiB;IACjB,WAAW;IACX,SAAS;IACT,UAAU;IACV,QAAQ;IACR,GAAG;IACH,QAAQ;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,gBAAgB;IAChB,iBAAiB;CAClB,CAAC"}
@@ -1,272 +0,0 @@
1
- import generate from '../src/generate.js';
2
- import { BLANK_PDF } from '@pdfme/common';
3
- import { getFont, pdfToImages } from './utils.js';
4
- import 'jest-image-snapshot';
5
- describe('generate integrate test', () => {
6
- describe('basic generator', () => {
7
- const textObject = (x, y, name = 'a') => ({
8
- name,
9
- type: 'text',
10
- content: '',
11
- position: { x, y },
12
- width: 100,
13
- height: 100,
14
- fontSize: 13,
15
- });
16
- const singleSchemaTemplate = {
17
- basePdf: BLANK_PDF,
18
- schemas: [[textObject(0, 0), textObject(25, 25, 'b')]],
19
- };
20
- const multiSchemasTemplate = {
21
- basePdf: 'data:application/pdf;base64,JVBERi0xLjcNJeLjz9MNCjYgMCBvYmoNPDwvTGluZWFyaXplZCAxL0wgMTg0NC9PIDgvRSAxMTEwL04gMi9UIDE1NzAvSCBbIDQyMyAxMzFdPj4NZW5kb2JqDSAgICAgICAgICAgICAgICAgICAgICAgDQoxMSAwIG9iag08PC9EZWNvZGVQYXJtczw8L0NvbHVtbnMgMy9QcmVkaWN0b3IgMTI+Pi9GaWx0ZXIvRmxhdGVEZWNvZGUvSURbPEJBMTk5MUY0MThCN0IyMTEwQTAwNjc0NThCNkJDNjIzPjxGOEE4OEZEMzMzNjQ2OTQ2QkE1ODMzM0M4MEFEMDFFNj5dL0luZGV4WzYgN10vTGVuZ3RoIDM2L1ByZXYgMTU3MS9Sb290IDcgMCBSL1NpemUgMTMvVHlwZS9YUmVmL1dbMSAyIDBdPj5zdHJlYW0NCmjeYmJkEGBiYJJiYmDQZWJgvA+k45gY/j4Aso0BAgwAISQDuA0KZW5kc3RyZWFtDWVuZG9iag1zdGFydHhyZWYNCjANCiUlRU9GDQogICAgICAgIA0KMTIgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0xlbmd0aCA1Ny9TIDQ0Pj5zdHJlYW0NCmjeYmBgYGJgYLzCwAgkbRk4GBCAAyjGxMDCwNFwiOGAQvkhJCkGZihmYIhj4GhkSGEACDAAvy4F4g0KZW5kc3RyZWFtDWVuZG9iag03IDAgb2JqDTw8L1BhZ2VzIDUgMCBSL1R5cGUvQ2F0YWxvZz4+DWVuZG9iag04IDAgb2JqDTw8L0Fubm90c1tdL0JsZWVkQm94WzAgMCA1OTUuNDQgODQxLjkyXS9Db250ZW50cyA5IDAgUi9Dcm9wQm94WzAgMCA1OTUuNDQgODQxLjkyXS9NZWRpYUJveFswIDAgNTk1LjQ0IDg0MS45Ml0vUGFyZW50IDUgMCBSL1Jlc291cmNlczw8L1hPYmplY3Q8PC9GbTAgMTAgMCBSPj4+Pi9Sb3RhdGUgMC9UcmltQm94WzAgMCA1OTUuNDQgODQxLjkyXS9UeXBlL1BhZ2U+Pg1lbmRvYmoNOSAwIG9iag08PC9GaWx0ZXIvRmxhdGVEZWNvZGUvTGVuZ3RoIDI2Pj5zdHJlYW0NCkiJKlQwUAjx0XfLNVBwyVcIVAAIMAAiagP4DQplbmRzdHJlYW0NZW5kb2JqDTEwIDAgb2JqDTw8L0JCb3hbMzI3NjguMCAzMjc2OC4wIC0zMjc2OC4wIC0zMjc2OC4wXS9GaWx0ZXIvRmxhdGVEZWNvZGUvRm9ybVR5cGUgMS9MZW5ndGggMTQvTWF0cml4WzEgMCAwIDEgMCAwXS9SZXNvdXJjZXM8PD4+L1N1YnR5cGUvRm9ybS9UeXBlL1hPYmplY3Q+PnN0cmVhbQ0KSIkq5ArkAggwAAKSANcNCmVuZHN0cmVhbQ1lbmRvYmoNMSAwIG9iag08PC9Bbm5vdHNbXS9CbGVlZEJveFswIDAgNTk1LjQ0IDg0MS45Ml0vQ29udGVudHMgMiAwIFIvQ3JvcEJveFswIDAgNTk1LjQ0IDg0MS45Ml0vTWVkaWFCb3hbMCAwIDU5NS40NCA4NDEuOTJdL1BhcmVudCA1IDAgUi9SZXNvdXJjZXM8PC9YT2JqZWN0PDwvRm0wIDEwIDAgUj4+Pj4vUm90YXRlIDAvVHJpbUJveFswIDAgNTk1LjQ0IDg0MS45Ml0vVHlwZS9QYWdlPj4NZW5kb2JqDTIgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0xlbmd0aCAyNj4+c3RyZWFtDQpIiSpUMFAI8dF3yzVQcMlXCFQACDAAImoD+A0KZW5kc3RyZWFtDWVuZG9iag0zIDAgb2JqDTw8L0ZpbHRlci9GbGF0ZURlY29kZS9GaXJzdCA0L0xlbmd0aCA1Mi9OIDEvVHlwZS9PYmpTdG0+PnN0cmVhbQ0KaN4yVTBQsLHRd84vzStRMNL3zkwpjrYAigUpGILIWP2QyoJU/YDE9NRiOzuAAAMAETgMkw0KZW5kc3RyZWFtDWVuZG9iag00IDAgb2JqDTw8L0RlY29kZVBhcm1zPDwvQ29sdW1ucyAzL1ByZWRpY3RvciAxMj4+L0ZpbHRlci9GbGF0ZURlY29kZS9JRFs8QkExOTkxRjQxOEI3QjIxMTBBMDA2NzQ1OEI2QkM2MjM+PEY4QTg4RkQzMzM2NDY5NDZCQTU4MzMzQzgwQUQwMUU2Pl0vTGVuZ3RoIDMzL1Jvb3QgNyAwIFIvU2l6ZSA2L1R5cGUvWFJlZi9XWzEgMiAwXT4+c3RyZWFtDQpo3mJiYGBgYmQJY2JgvM/EwBAHpCcwMf56ABBgABstBBINCmVuZHN0cmVhbQ1lbmRvYmoNc3RhcnR4cmVmDQoxMTYNCiUlRU9GDQo=',
22
- schemas: [[textObject(0, 0)], [textObject(25, 25, 'b')]],
23
- };
24
- const singleInputs = [{ a: 'a', b: 'b' }];
25
- const multiInputs = [
26
- { a: 'a-1', b: 'b-1' },
27
- { a: 'a-2', b: 'b-2' },
28
- ];
29
- const testCases = [
30
- {
31
- template: singleSchemaTemplate,
32
- inputs: singleInputs,
33
- testName: 'singleSchemaTemplate with singleInputs',
34
- },
35
- {
36
- template: singleSchemaTemplate,
37
- inputs: multiInputs,
38
- testName: 'singleSchemaTemplate with multiInputs',
39
- },
40
- {
41
- template: multiSchemasTemplate,
42
- inputs: singleInputs,
43
- testName: 'multiSchemasTemplate with singleInputs',
44
- },
45
- {
46
- template: multiSchemasTemplate,
47
- inputs: multiInputs,
48
- testName: 'multiSchemasTemplate with multiInputs',
49
- },
50
- ];
51
- // testCases for
52
- for (let i = 0; i < testCases.length; i += 1) {
53
- const { template, inputs, testName } = testCases[i];
54
- test(testName, async () => {
55
- const pdf = await generate({ inputs, template });
56
- const images = await pdfToImages(pdf);
57
- for (let i = 0; i < images.length; i++) {
58
- expect(images[i]).toMatchImageSnapshot({
59
- customSnapshotIdentifier: `${testName}-${i + 1}`,
60
- });
61
- }
62
- });
63
- }
64
- });
65
- describe('use fontColor template', () => {
66
- test(`sample`, async () => {
67
- const inputs = [{ name: 'here is purple color' }];
68
- const template = {
69
- basePdf: BLANK_PDF,
70
- schemas: [
71
- [
72
- {
73
- name: 'name',
74
- type: 'text',
75
- content: '',
76
- position: { x: 30, y: 30 },
77
- width: 100,
78
- height: 20,
79
- fontColor: '#7d2ae8',
80
- },
81
- ],
82
- ],
83
- };
84
- const pdf = await generate({ inputs, template });
85
- const images = await pdfToImages(pdf);
86
- for (let i = 0; i < images.length; i++) {
87
- expect(images[i]).toMatchImageSnapshot({
88
- customSnapshotIdentifier: `fontColor-${i + 1}`,
89
- });
90
- }
91
- });
92
- });
93
- describe('use fontSubset template', () => {
94
- test(`sample`, async () => {
95
- const inputs = [{ field1: 'NotoSansJP', field2: 'NotoSerifJP' }];
96
- const template = {
97
- basePdf: BLANK_PDF,
98
- schemas: [
99
- [
100
- {
101
- name: 'field1',
102
- type: 'text',
103
- content: '',
104
- position: { x: 30, y: 30 },
105
- width: 100,
106
- height: 20,
107
- fontName: 'NotoSansJP',
108
- },
109
- {
110
- name: 'field2',
111
- type: 'text',
112
- content: '',
113
- position: { x: 60, y: 60 },
114
- width: 100,
115
- height: 20,
116
- fontName: 'NotoSerifJP',
117
- },
118
- ],
119
- ],
120
- };
121
- const font = getFont();
122
- const pdf = await generate({
123
- inputs,
124
- template,
125
- options: {
126
- font: {
127
- NotoSansJP: {
128
- ...font.NotoSansJP,
129
- fallback: true,
130
- subset: false,
131
- },
132
- NotoSerifJP: {
133
- ...font.NotoSerifJP,
134
- subset: false,
135
- },
136
- },
137
- },
138
- });
139
- const images = await pdfToImages(pdf);
140
- for (let i = 0; i < images.length; i++) {
141
- expect(images[i]).toMatchImageSnapshot({
142
- customSnapshotIdentifier: `fontSubset-${i + 1}`,
143
- });
144
- }
145
- }, 10000);
146
- });
147
- });
148
- describe('check validation', () => {
149
- test(`inputs length is 0`, async () => {
150
- const inputs = [];
151
- const template = {
152
- basePdf: BLANK_PDF,
153
- schemas: [
154
- [
155
- {
156
- name: 'a',
157
- type: 'text',
158
- content: '',
159
- position: { x: 0, y: 0 },
160
- width: 100,
161
- height: 100,
162
- },
163
- ],
164
- ],
165
- };
166
- try {
167
- await generate({ inputs, template, options: { font: getFont() } });
168
- fail();
169
- }
170
- catch (e) {
171
- expect(e.message).toEqual(`[@pdfme/common] Invalid argument:
172
- --------------------------
173
- ERROR POSITION: inputs
174
- ERROR MESSAGE: Too small: expected array to have >=1 items
175
- --------------------------`);
176
- }
177
- });
178
- test(`missing fallback font`, async () => {
179
- const inputs = [{ a: 'test' }];
180
- const template = {
181
- basePdf: BLANK_PDF,
182
- schemas: [
183
- [
184
- {
185
- name: 'a',
186
- type: 'text',
187
- content: '',
188
- position: { x: 0, y: 0 },
189
- width: 100,
190
- height: 100,
191
- },
192
- ],
193
- ],
194
- };
195
- const font = getFont();
196
- font.Roboto.fallback = false;
197
- try {
198
- await generate({ inputs, template, options: { font } });
199
- fail();
200
- }
201
- catch (e) {
202
- expect(e.message).toEqual(`[@pdfme/common] fallback flag is not found in font. true fallback flag must be only one.
203
- Check this document: https://pdfme.com/docs/custom-fonts#about-font-type`);
204
- }
205
- });
206
- test(`too many fallback font`, async () => {
207
- const inputs = [{ a: 'test' }];
208
- const template = {
209
- basePdf: BLANK_PDF,
210
- schemas: [
211
- [
212
- {
213
- name: 'a',
214
- type: 'text',
215
- content: '',
216
- position: { x: 0, y: 0 },
217
- width: 100,
218
- height: 100,
219
- },
220
- ],
221
- ],
222
- };
223
- const font = getFont();
224
- // Set multiple fonts to have fallback = true to test the error
225
- font.Roboto.fallback = true;
226
- font.NotoSansJP = { ...font.NotoSansJP, fallback: true };
227
- try {
228
- await generate({ inputs, template, options: { font } });
229
- fail();
230
- }
231
- catch (e) {
232
- expect(e.message).toEqual(`[@pdfme/common] 2 fallback flags found in font. true fallback flag must be only one.
233
- Check this document: https://pdfme.com/docs/custom-fonts#about-font-type`);
234
- }
235
- });
236
- test(`missing font in template.schemas`, async () => {
237
- const inputs = [{ a: 'test' }];
238
- const template = {
239
- basePdf: BLANK_PDF,
240
- schemas: [
241
- [
242
- {
243
- name: 'a',
244
- type: 'text',
245
- content: '',
246
- fontName: 'DUMMY_FONT',
247
- position: { x: 0, y: 0 },
248
- width: 100,
249
- height: 100,
250
- },
251
- {
252
- name: 'b',
253
- type: 'text',
254
- content: '',
255
- position: { x: 0, y: 0 },
256
- width: 100,
257
- height: 100,
258
- },
259
- ],
260
- ],
261
- };
262
- try {
263
- await generate({ inputs, template, options: { font: getFont() } });
264
- fail();
265
- }
266
- catch (e) {
267
- expect(e.message).toEqual(`[@pdfme/common] DUMMY_FONT of template.schemas is not found in font.
268
- Check this document: https://pdfme.com/docs/custom-fonts`);
269
- }
270
- });
271
- });
272
- //# sourceMappingURL=generate.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../../__tests__/generate.test.ts"],"names":[],"mappings":"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"}
@@ -1,65 +0,0 @@
1
- import generate from '../src/generate.js';
2
- import { other } from './assets/templates/index.js';
3
- import { getInputFromTemplate } from '@pdfme/common';
4
- import { text, image, svg, line, rectangle, ellipse, barcodes } from '@pdfme/schemas';
5
- import { getFont, pdfToImages } from './utils.js';
6
- import 'jest-image-snapshot';
7
- const signature = {
8
- pdf: image.pdf,
9
- ui: () => { },
10
- propPanel: {
11
- ...image.propPanel,
12
- defaultSchema: {
13
- ...image.propPanel.defaultSchema,
14
- type: 'signature',
15
- },
16
- },
17
- };
18
- const PERFORMANCE_THRESHOLD = parseFloat(process.env.PERFORMANCE_THRESHOLD || '1.5');
19
- describe('generate integration test(other)', () => {
20
- describe.each([other])('%s', (templateData) => {
21
- const entries = Object.entries(templateData);
22
- for (let l = 0; l < entries.length; l += 1) {
23
- const [key, template] = entries[l];
24
- // eslint-disable-next-line no-loop-func
25
- test(`snapshot ${key}`, async () => {
26
- const inputs = getInputFromTemplate(template);
27
- const font = getFont();
28
- font['NotoSerifJP-Regular'].fallback = false;
29
- font.NotoSerifJP.fallback = false;
30
- font.NotoSansJP.fallback = false;
31
- const hrstart = process.hrtime();
32
- const pdf = await generate({
33
- inputs,
34
- template,
35
- plugins: {
36
- text,
37
- image,
38
- svg,
39
- line,
40
- rectangle,
41
- ellipse,
42
- signature,
43
- ...barcodes,
44
- },
45
- options: { font },
46
- });
47
- const hrend = process.hrtime(hrstart);
48
- const execSeconds = hrend[0] + hrend[1] / 1000000000;
49
- if (process.env.CI) {
50
- expect(execSeconds).toBeLessThan(PERFORMANCE_THRESHOLD);
51
- }
52
- else if (execSeconds >= PERFORMANCE_THRESHOLD) {
53
- console.warn(`Warning: Execution time for ${key} is ${execSeconds} seconds, which is above the threshold of ${PERFORMANCE_THRESHOLD} seconds.`);
54
- }
55
- const images = await pdfToImages(pdf);
56
- for (let i = 0; i < images.length; i++) {
57
- expect(images[i]).toMatchImageSnapshot({
58
- customSnapshotIdentifier: `${key}-${i + 1}`,
59
- });
60
- }
61
- });
62
- }
63
- });
64
- });
65
- //# sourceMappingURL=integration-other.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"integration-other.test.js","sourceRoot":"","sources":["../../../__tests__/integration-other.test.ts"],"names":[],"mappings":"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"}