@pdfme/generator 1.0.17 → 1.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 (47) hide show
  1. package/dist/cjs/__tests__/assets/templates/index.js +111 -0
  2. package/dist/cjs/__tests__/assets/templates/index.js.map +1 -0
  3. package/dist/cjs/__tests__/generate.test.js +362 -0
  4. package/dist/cjs/__tests__/generate.test.js.map +1 -0
  5. package/dist/cjs/__tests__/helper.test.js +53 -0
  6. package/dist/cjs/__tests__/helper.test.js.map +1 -0
  7. package/dist/cjs/src/constants.js +5 -0
  8. package/dist/cjs/src/constants.js.map +1 -0
  9. package/dist/cjs/src/generate.js +75 -0
  10. package/dist/cjs/src/generate.js.map +1 -0
  11. package/dist/cjs/src/helper.js +296 -0
  12. package/dist/cjs/src/helper.js.map +1 -0
  13. package/dist/cjs/src/index.js +20 -0
  14. package/dist/cjs/src/index.js.map +1 -0
  15. package/dist/esm/__tests__/assets/templates/index.js +109 -0
  16. package/dist/esm/__tests__/assets/templates/index.js.map +1 -0
  17. package/dist/esm/__tests__/generate.test.js +334 -0
  18. package/dist/esm/__tests__/generate.test.js.map +1 -0
  19. package/dist/esm/__tests__/helper.test.js +48 -0
  20. package/dist/esm/__tests__/helper.test.js.map +1 -0
  21. package/dist/esm/src/constants.js +2 -0
  22. package/dist/esm/src/constants.js.map +1 -0
  23. package/dist/esm/src/generate.js +70 -0
  24. package/dist/esm/src/generate.js.map +1 -0
  25. package/dist/esm/src/helper.js +285 -0
  26. package/dist/esm/src/helper.js.map +1 -0
  27. package/dist/esm/src/index.js +4 -0
  28. package/dist/esm/src/index.js.map +1 -0
  29. package/dist/types/__tests__/assets/templates/index.d.ts +1563 -0
  30. package/dist/types/__tests__/generate.test.d.ts +1 -0
  31. package/dist/types/__tests__/helper.test.d.ts +1 -0
  32. package/dist/types/{constants.d.ts → src/constants.d.ts} +0 -0
  33. package/dist/types/{generate.d.ts → src/generate.d.ts} +0 -0
  34. package/dist/types/{helper.d.ts → src/helper.d.ts} +1 -0
  35. package/dist/types/{index.d.ts → src/index.d.ts} +1 -1
  36. package/package.json +18 -12
  37. package/src/generate.ts +2 -2
  38. package/src/helper.ts +3 -5
  39. package/src/index.ts +1 -1
  40. package/tsconfig.cjs.json +9 -0
  41. package/tsconfig.esm.json +9 -0
  42. package/declaration.d.ts +0 -3
  43. package/dist/index.js +0 -3
  44. package/dist/index.js.LICENSE.txt +0 -43
  45. package/dist/index.js.map +0 -1
  46. package/tsconfig.json +0 -21
  47. package/webpack.config.js +0 -59
@@ -0,0 +1,334 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { writeFileSync, readFileSync, readdir, unlink } from 'fs';
11
+ import * as path from 'path';
12
+ import generate from '../src/generate';
13
+ import templateData from './assets/templates';
14
+ import { BLANK_PDF } from '@pdfme/common';
15
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
16
+ const PDFParser = require('pdf2json');
17
+ const SauceHanSansJPData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSansJP.ttf`));
18
+ const SauceHanSerifJPData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSerifJP.ttf`));
19
+ const getFont = () => ({
20
+ SauceHanSansJP: { fallback: true, data: SauceHanSansJPData },
21
+ SauceHanSerifJP: { data: SauceHanSerifJPData },
22
+ });
23
+ const getPdf = (pdfFilePath) => {
24
+ const pdfParser = new PDFParser();
25
+ return new Promise((resolve, reject) => {
26
+ pdfParser.on('pdfParser_dataError', reject);
27
+ pdfParser.on('pdfParser_dataReady', resolve);
28
+ pdfParser.loadPDF(pdfFilePath);
29
+ });
30
+ };
31
+ const getPdfPath = (dir, fileName) => path.join(__dirname, `assets/pdfs/${dir}/${fileName}`);
32
+ const getPdfTmpPath = (fileName) => getPdfPath('tmp', fileName);
33
+ const getPdfAssertPath = (fileName) => getPdfPath('assert', fileName);
34
+ describe('generate integrate test', () => {
35
+ afterAll(() => {
36
+ const dir = path.join(__dirname, 'assets/pdfs/tmp');
37
+ const unLinkFile = (file) => {
38
+ if (file !== '.gitkeep') {
39
+ unlink(`${dir}/${file}`, (e) => {
40
+ if (e) {
41
+ throw e;
42
+ }
43
+ });
44
+ }
45
+ };
46
+ readdir(dir, (err, files) => {
47
+ if (err) {
48
+ throw err;
49
+ }
50
+ files.forEach(unLinkFile);
51
+ });
52
+ });
53
+ // TODO Slow test... need speed up, use Promise.all?
54
+ describe('use labelmake.jp template', () => {
55
+ const entries = Object.entries(templateData);
56
+ for (let l = 0; l < entries.length; l += 1) {
57
+ const [key, template] = entries[l];
58
+ // eslint-disable-next-line no-loop-func
59
+ test(`snapshot ${key}`, () => __awaiter(void 0, void 0, void 0, function* () {
60
+ const inputs = template.sampledata;
61
+ const font = getFont();
62
+ font.SauceHanSansJP.fallback = false;
63
+ font.SauceHanSerifJP.fallback = false;
64
+ // @ts-ignore
65
+ font[template.fontName].fallback = true;
66
+ const hrstart = process.hrtime();
67
+ const pdf = yield generate({
68
+ inputs,
69
+ template,
70
+ options: {
71
+ font,
72
+ splitThreshold: 0,
73
+ },
74
+ });
75
+ const hrend = process.hrtime(hrstart);
76
+ expect(hrend[0]).toBeLessThanOrEqual(1);
77
+ const tmpFile = getPdfTmpPath(`${key}.pdf`);
78
+ const assertFile = getPdfAssertPath(`${key}.pdf`);
79
+ writeFileSync(tmpFile, pdf);
80
+ const res = yield Promise.all([getPdf(tmpFile), getPdf(assertFile)]);
81
+ const [a, e] = res;
82
+ expect(a.Pages).toEqual(e.Pages);
83
+ }));
84
+ }
85
+ });
86
+ describe('use nofont template', () => {
87
+ test(`sample`, () => __awaiter(void 0, void 0, void 0, function* () {
88
+ const inputs = [{ a: 'here is Helvetica' }];
89
+ const template = {
90
+ basePdf: BLANK_PDF,
91
+ schemas: [
92
+ {
93
+ a: {
94
+ type: 'text',
95
+ position: { x: 0, y: 0 },
96
+ width: 100,
97
+ height: 100,
98
+ },
99
+ },
100
+ ],
101
+ };
102
+ const pdf = yield generate({ inputs, template });
103
+ const tmpFile = getPdfTmpPath(`nofont.pdf`);
104
+ const assertFile = getPdfAssertPath(`nofont.pdf`);
105
+ writeFileSync(tmpFile, pdf);
106
+ const res = yield Promise.all([getPdf(tmpFile), getPdf(assertFile)]);
107
+ const [a, e] = res;
108
+ expect(a.Pages).toEqual(e.Pages);
109
+ }));
110
+ describe('use fontColor template', () => {
111
+ test(`sample`, () => __awaiter(void 0, void 0, void 0, function* () {
112
+ const inputs = [{ name: 'here is purple color' }];
113
+ const template = {
114
+ basePdf: BLANK_PDF,
115
+ schemas: [
116
+ {
117
+ name: {
118
+ type: 'text',
119
+ position: { x: 30, y: 30 },
120
+ width: 100,
121
+ height: 20,
122
+ fontColor: '#7d2ae8',
123
+ },
124
+ },
125
+ ],
126
+ };
127
+ const pdf = yield generate({ inputs, template });
128
+ const tmpFile = getPdfTmpPath(`fontColor.pdf`);
129
+ const assertFile = getPdfAssertPath(`fontColor.pdf`);
130
+ writeFileSync(tmpFile, pdf);
131
+ const res = yield Promise.all([getPdf(tmpFile), getPdf(assertFile)]);
132
+ const [a, e] = res;
133
+ expect(a.Pages).toEqual(e.Pages);
134
+ }));
135
+ });
136
+ describe('use fontSubset template', () => {
137
+ test(`sample`, () => __awaiter(void 0, void 0, void 0, function* () {
138
+ const inputs = [{ field1: 'SauceHanSansJP', field2: 'SauceHanSerifJP' }];
139
+ const template = {
140
+ basePdf: BLANK_PDF,
141
+ schemas: [
142
+ {
143
+ field1: {
144
+ type: 'text',
145
+ position: { x: 30, y: 30 },
146
+ width: 100,
147
+ height: 20,
148
+ fontName: 'SauceHanSansJP',
149
+ },
150
+ field2: {
151
+ type: 'text',
152
+ position: { x: 60, y: 60 },
153
+ width: 100,
154
+ height: 20,
155
+ fontName: 'SauceHanSerifJP',
156
+ },
157
+ },
158
+ ],
159
+ };
160
+ jest.setTimeout(30000);
161
+ const pdf = yield generate({
162
+ inputs,
163
+ template,
164
+ options: {
165
+ font: {
166
+ SauceHanSansJP: {
167
+ data: SauceHanSansJPData,
168
+ fallback: true,
169
+ subset: false,
170
+ },
171
+ SauceHanSerifJP: {
172
+ data: SauceHanSerifJPData,
173
+ subset: false,
174
+ },
175
+ },
176
+ },
177
+ });
178
+ const tmpFile = getPdfTmpPath(`fontSubset.pdf`);
179
+ const assertFile = getPdfAssertPath(`fontSubset.pdf`);
180
+ writeFileSync(tmpFile, pdf);
181
+ const res = yield Promise.all([getPdf(tmpFile), getPdf(assertFile)]);
182
+ const [a, e] = res;
183
+ expect(a.Pages).toEqual(e.Pages);
184
+ }), 10000);
185
+ });
186
+ });
187
+ });
188
+ describe('check validation', () => {
189
+ test(`inputs length is 0`, () => __awaiter(void 0, void 0, void 0, function* () {
190
+ const inputs = [];
191
+ const template = {
192
+ basePdf: BLANK_PDF,
193
+ schemas: [
194
+ {
195
+ a: {
196
+ type: 'text',
197
+ position: { x: 0, y: 0 },
198
+ width: 100,
199
+ height: 100,
200
+ },
201
+ },
202
+ ],
203
+ };
204
+ try {
205
+ yield generate({ inputs, template, options: { font: getFont() } });
206
+ fail();
207
+ }
208
+ catch (e) {
209
+ expect(e.message).toEqual(`Invalid argument:
210
+ --------------------------
211
+ ERROR POSITION: inputs
212
+ ERROR MESSAGE: Array must contain at least 1 element(s)
213
+ --------------------------`);
214
+ }
215
+ }));
216
+ test(`missing fallback font`, () => __awaiter(void 0, void 0, void 0, function* () {
217
+ const inputs = [{ a: 'test' }];
218
+ const template = {
219
+ basePdf: BLANK_PDF,
220
+ schemas: [
221
+ {
222
+ a: {
223
+ type: 'text',
224
+ position: { x: 0, y: 0 },
225
+ width: 100,
226
+ height: 100,
227
+ },
228
+ },
229
+ ],
230
+ };
231
+ const font = getFont();
232
+ font.SauceHanSansJP.fallback = false;
233
+ font.SauceHanSerifJP.fallback = false;
234
+ try {
235
+ yield generate({ inputs, template, options: { font } });
236
+ fail();
237
+ }
238
+ catch (e) {
239
+ expect(e.message).toEqual('fallback flag is not found in font. true fallback flag must be only one.');
240
+ }
241
+ }));
242
+ test(`too many fallback font`, () => __awaiter(void 0, void 0, void 0, function* () {
243
+ const inputs = [{ a: 'test' }];
244
+ const template = {
245
+ basePdf: BLANK_PDF,
246
+ schemas: [
247
+ {
248
+ a: {
249
+ type: 'text',
250
+ position: { x: 0, y: 0 },
251
+ width: 100,
252
+ height: 100,
253
+ },
254
+ },
255
+ ],
256
+ };
257
+ const font = getFont();
258
+ font.SauceHanSansJP.fallback = true;
259
+ font.SauceHanSerifJP.fallback = true;
260
+ try {
261
+ yield generate({ inputs, template, options: { font } });
262
+ fail();
263
+ }
264
+ catch (e) {
265
+ expect(e.message).toEqual('2 fallback flags found in font. true fallback flag must be only one.');
266
+ }
267
+ }));
268
+ test(`missing font in template.schemas`, () => __awaiter(void 0, void 0, void 0, function* () {
269
+ const inputs = [{ a: 'test' }];
270
+ const template = {
271
+ basePdf: BLANK_PDF,
272
+ schemas: [
273
+ {
274
+ a: {
275
+ type: 'text',
276
+ fontName: 'SauceHanSansJP2',
277
+ position: { x: 0, y: 0 },
278
+ width: 100,
279
+ height: 100,
280
+ },
281
+ b: {
282
+ type: 'text',
283
+ position: { x: 0, y: 0 },
284
+ width: 100,
285
+ height: 100,
286
+ },
287
+ },
288
+ ],
289
+ };
290
+ try {
291
+ yield generate({ inputs, template, options: { font: getFont() } });
292
+ fail();
293
+ }
294
+ catch (e) {
295
+ expect(e.message).toEqual('SauceHanSansJP2 of template.schemas is not found in font.');
296
+ }
297
+ }));
298
+ test(`check digit error`, () => __awaiter(void 0, void 0, void 0, function* () {
299
+ const inputs = [{ a: 'worng text', b: 'worng text', c: 'worng text' }];
300
+ const template = {
301
+ basePdf: BLANK_PDF,
302
+ schemas: [
303
+ {
304
+ a: {
305
+ type: 'ean8',
306
+ position: { x: 0, y: 0 },
307
+ width: 100,
308
+ height: 100,
309
+ },
310
+ b: {
311
+ type: 'ean13',
312
+ position: { x: 0, y: 100 },
313
+ width: 100,
314
+ height: 100,
315
+ },
316
+ c: {
317
+ type: 'nw7',
318
+ position: { x: 0, y: 200 },
319
+ width: 100,
320
+ height: 100,
321
+ },
322
+ },
323
+ ],
324
+ };
325
+ try {
326
+ yield generate({ inputs, template });
327
+ }
328
+ catch (e) {
329
+ fail();
330
+ }
331
+ expect(true).toEqual(true);
332
+ }));
333
+ });
334
+ //# sourceMappingURL=generate.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../../__tests__/generate.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { createBarCode } from '../src/helper';
11
+ import jsQR from 'jsqr';
12
+ import { PNG } from 'pngjs';
13
+ /**
14
+ * 生成したQRコード(png)画像から入力データが正常に読み取れるかをテスト
15
+ */
16
+ describe('createBarCode', () => {
17
+ describe('qrcode', () => {
18
+ // テスト名, input, expected
19
+ const tests = [
20
+ ['URL', 'https://www.google.com/', 'https://www.google.com/'],
21
+ ['ひらがな', 'てすとです', 'てすとです'],
22
+ ['ひらがな2', 'あいうえおあいうえお2', 'あいうえおあいうえお2'],
23
+ ['カタカナ', 'テストです', 'テストです'],
24
+ ['漢字', 'お正月', 'お正月'],
25
+ ['中国語', '新年快乐', '新年快乐'],
26
+ ['タイ語', 'สวัสดีปีใหม่', 'สวัสดีปีใหม่'],
27
+ ];
28
+ for (const t of tests) {
29
+ // eslint-disable-next-line no-loop-func
30
+ test(`${t[0]}: ${t[1]}`, () => __awaiter(void 0, void 0, void 0, function* () {
31
+ const buffer = (yield createBarCode({
32
+ type: 'qrcode',
33
+ input: t[1],
34
+ width: 10,
35
+ height: 10,
36
+ backgroundColor: '00000000', // 背景色を指定しないとjsQRでうまく解析できない
37
+ }));
38
+ const png = PNG.sync.read(buffer);
39
+ const pngData = new Uint8ClampedArray(png.data);
40
+ const qr = jsQR(pngData, png.width, png.height);
41
+ expect(qr).not.toBeNull();
42
+ const dataBuffer = Buffer.from(qr.binaryData);
43
+ expect(dataBuffer.toString('utf8')).toEqual(t[2]);
44
+ }));
45
+ }
46
+ });
47
+ });
48
+ //# sourceMappingURL=helper.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helper.test.js","sourceRoot":"","sources":["../../../__tests__/helper.test.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,IAAgB,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B;;GAEG;AACH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,wBAAwB;QACxB,MAAM,KAAK,GAAG;YACZ,CAAC,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,CAAC;YAC7D,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;YAC1B,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC;YACvC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;YAC1B,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;YACpB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;YACvB,CAAC,KAAK,EAAE,cAAc,EAAE,cAAc,CAAC;SACxC,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;YACrB,wCAAwC;YACxC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAS,EAAE;gBAClC,MAAM,MAAM,GAAG,CAAC,MAAM,aAAa,CAAC;oBAClC,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;oBACX,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;oBACV,eAAe,EAAE,UAAU,EAAE,2BAA2B;iBACzD,CAAC,CAAW,CAAC;gBACd,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClC,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChD,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAW,CAAC;gBAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;gBAC9C,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC,CAAA,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const TOOL_NAME = 'pdfme (https://github.com/hand-dot/pdfme)';
2
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,2CAAoD,CAAC"}
@@ -0,0 +1,70 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { PDFDocument } from 'pdf-lib';
11
+ import fontkit from '@pdf-lib/fontkit';
12
+ import { getDefaultFont, getFallbackFontName, checkGenerateProps } from '@pdfme/common';
13
+ import { getEmbeddedPagesAndEmbedPdfBoxes, drawInputByTemplateSchema, drawEmbeddedPage, embedAndGetFontObj, } from './helper.js';
14
+ import { TOOL_NAME } from './constants.js';
15
+ const preprocessing = (arg) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const { template, font } = arg;
17
+ const { basePdf } = template;
18
+ const pdfDoc = yield PDFDocument.create();
19
+ pdfDoc.registerFontkit(fontkit);
20
+ const fallbackFontName = getFallbackFontName(font);
21
+ const fontObj = yield embedAndGetFontObj({ pdfDoc, font });
22
+ const pagesAndBoxes = yield getEmbeddedPagesAndEmbedPdfBoxes({ pdfDoc, basePdf });
23
+ const { embeddedPages, embedPdfBoxes } = pagesAndBoxes;
24
+ return { pdfDoc, fontObj, fallbackFontName, embeddedPages, embedPdfBoxes };
25
+ });
26
+ const postProcessing = (pdfDoc) => {
27
+ pdfDoc.setProducer(TOOL_NAME);
28
+ pdfDoc.setCreator(TOOL_NAME);
29
+ };
30
+ const generate = (props) => __awaiter(void 0, void 0, void 0, function* () {
31
+ checkGenerateProps(props);
32
+ const { inputs, template, options = {} } = props;
33
+ const { font = getDefaultFont(), splitThreshold = 3 } = options;
34
+ const { schemas } = template;
35
+ const preRes = yield preprocessing({ inputs, template, font });
36
+ const { pdfDoc, fontObj, fallbackFontName, embeddedPages, embedPdfBoxes } = preRes;
37
+ const inputImageCache = {};
38
+ for (let i = 0; i < inputs.length; i += 1) {
39
+ const inputObj = inputs[i];
40
+ const keys = Object.keys(inputObj);
41
+ for (let j = 0; j < embeddedPages.length; j += 1) {
42
+ const embeddedPage = embeddedPages[j];
43
+ const { width: pageWidth, height: pageHeight } = embeddedPage;
44
+ const embedPdfBox = embedPdfBoxes[j];
45
+ const page = pdfDoc.addPage([pageWidth, pageHeight]);
46
+ drawEmbeddedPage({ page, embeddedPage, embedPdfBox });
47
+ for (let l = 0; l < keys.length; l += 1) {
48
+ const key = keys[l];
49
+ const schema = schemas[j];
50
+ const templateSchema = schema[key];
51
+ const input = inputObj[key];
52
+ const textSchemaSetting = { fontObj, fallbackFontName, splitThreshold };
53
+ // eslint-disable-next-line no-await-in-loop
54
+ yield drawInputByTemplateSchema({
55
+ input,
56
+ templateSchema,
57
+ pdfDoc,
58
+ page,
59
+ pageHeight,
60
+ textSchemaSetting,
61
+ inputImageCache,
62
+ });
63
+ }
64
+ }
65
+ }
66
+ postProcessing(pdfDoc);
67
+ return pdfDoc.save();
68
+ });
69
+ export default generate;
70
+ //# sourceMappingURL=generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/generate.ts"],"names":[],"mappings":"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"}