@pdfme/generator 2.2.1 → 3.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -36
- package/dist/cjs/__tests__/assets/templates/index.js +2 -0
- package/dist/cjs/__tests__/assets/templates/index.js.map +1 -1
- package/dist/cjs/__tests__/generate.test.js +52 -25
- package/dist/cjs/__tests__/generate.test.js.map +1 -1
- package/dist/cjs/src/builtInRenderer.js +2 -5
- package/dist/cjs/src/builtInRenderer.js.map +1 -1
- package/dist/cjs/src/generate.js +10 -9
- package/dist/cjs/src/generate.js.map +1 -1
- package/dist/cjs/src/index.js +1 -13
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/pdfUtils.js +1 -21
- package/dist/cjs/src/pdfUtils.js.map +1 -1
- package/dist/esm/__tests__/assets/templates/index.js +2 -0
- package/dist/esm/__tests__/assets/templates/index.js.map +1 -1
- package/dist/esm/__tests__/generate.test.js +52 -25
- package/dist/esm/__tests__/generate.test.js.map +1 -1
- package/dist/esm/src/builtInRenderer.js +2 -5
- package/dist/esm/src/builtInRenderer.js.map +1 -1
- package/dist/esm/src/generate.js +12 -11
- package/dist/esm/src/generate.js.map +1 -1
- package/dist/esm/src/index.js +1 -2
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/pdfUtils.js +0 -19
- package/dist/esm/src/pdfUtils.js.map +1 -1
- package/dist/types/__tests__/assets/templates/index.d.ts +725 -1936
- package/dist/types/src/builtInRenderer.d.ts +2 -2
- package/dist/types/src/index.d.ts +1 -4
- package/dist/types/src/pdfUtils.d.ts +2 -6
- package/dist/types/src/types.d.ts +5 -16
- package/package.json +5 -3
- package/src/builtInRenderer.ts +4 -13
- package/src/generate.ts +22 -14
- package/src/index.ts +1 -71
- package/src/pdfUtils.ts +34 -62
- package/src/types.ts +9 -19
- package/tsconfig.cjs.json +3 -2
- package/tsconfig.esm.json +3 -2
- package/tsconfig.json +3 -0
- package/dist/cjs/src/renderUtils.js +0 -65
- package/dist/cjs/src/renderUtils.js.map +0 -1
- package/dist/cjs/src/renders/barcodes.js +0 -37
- package/dist/cjs/src/renders/barcodes.js.map +0 -1
- package/dist/cjs/src/renders/image.js +0 -34
- package/dist/cjs/src/renders/image.js.map +0 -1
- package/dist/cjs/src/renders/text.js +0 -86
- package/dist/cjs/src/renders/text.js.map +0 -1
- package/dist/esm/src/renderUtils.js +0 -56
- package/dist/esm/src/renderUtils.js.map +0 -1
- package/dist/esm/src/renders/barcodes.js +0 -33
- package/dist/esm/src/renders/barcodes.js.map +0 -1
- package/dist/esm/src/renders/image.js +0 -30
- package/dist/esm/src/renders/image.js.map +0 -1
- package/dist/esm/src/renders/text.js +0 -82
- package/dist/esm/src/renders/text.js.map +0 -1
- package/dist/types/src/renderUtils.d.ts +0 -16
- package/dist/types/src/renders/barcodes.d.ts +0 -2
- package/dist/types/src/renders/image.d.ts +0 -2
- package/dist/types/src/renders/text.d.ts +0 -2
- package/src/renderUtils.ts +0 -68
- package/src/renders/barcodes.ts +0 -32
- package/src/renders/image.ts +0 -24
- package/src/renders/text.ts +0 -114
package/README.md
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
# PDFME
|
2
|
+
|
2
3
|
<p>
|
3
4
|
<a href="https://github.com/pdfme/pdfme/blob/master/LICENSE.md">
|
4
5
|
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="pdfme is released under the MIT license." />
|
@@ -12,7 +13,7 @@
|
|
12
13
|
<a href="https://npmcharts.com/compare/@pdfme/generator?minimal=true">
|
13
14
|
<img src="https://img.shields.io/npm/dm/@pdfme/generator.svg" alt="Downloads per month on npm." />
|
14
15
|
</a>
|
15
|
-
<a href="https://pdfme.com/development-guide#contribution">
|
16
|
+
<a href="https://pdfme.com/docs/development-guide#contribution">
|
16
17
|
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg" alt="PRs welcome!" />
|
17
18
|
</a>
|
18
19
|
<a href="https://twitter.com/intent/tweet?text=Awesome+pdf+library%21&url=https://pdfme.com">
|
@@ -53,7 +54,7 @@ As an example, the author's service [https://labelmake.jp/](https://labelmake.jp
|
|
53
54
|
|
54
55
|
## Installation
|
55
56
|
|
56
|
-
The operating requirements should be the node environment `>=16`.
|
57
|
+
The operating requirements should be the node environment `>=16`.
|
57
58
|
There are two packages in pdfme, generator and UI.
|
58
59
|
|
59
60
|
The package for generating PDF can be installed with the following command.
|
@@ -68,31 +69,34 @@ The packages for using PDF designer, forms and viewers can be installed with the
|
|
68
69
|
npm i @pdfme/ui @pdfme/common
|
69
70
|
```
|
70
71
|
|
71
|
-
|
72
|
+
\*You must install `@pdfme/common` regardless of which package you use.
|
72
73
|
|
73
74
|
The following type, function and classes are available in pdfme.
|
74
75
|
|
76
|
+
`@pdfme/common`
|
77
|
+
|
78
|
+
- [Template](https://pdfme.com/docs/getting-started#template)
|
79
|
+
|
75
80
|
`@pdfme/generator`
|
76
81
|
|
77
82
|
- [generate](https://pdfme.com/docs/getting-started#generator)
|
78
|
-
- [Template](https://pdfme.com/docs/getting-started#template)
|
79
83
|
|
80
84
|
`@pdfme/ui`
|
81
85
|
|
82
86
|
- [Designer](https://pdfme.com/docs/getting-started#designer)
|
83
87
|
- [Form](https://pdfme.com/docs/getting-started#form)
|
84
88
|
- [Viewer](https://pdfme.com/docs/getting-started#viewer)
|
85
|
-
- [Template](https://pdfme.com/docs/getting-started#template)
|
86
89
|
|
87
90
|
If your environment uses webpack, import the necessary items as shown below.
|
88
91
|
|
89
|
-
|
90
|
-
import { Template
|
91
|
-
|
92
|
+
````ts
|
93
|
+
import type { Template } from '@pdfme/common';
|
94
|
+
import { generate } from '@pdfme/generator';```
|
92
95
|
|
93
96
|
```ts
|
94
|
-
import { Template
|
95
|
-
|
97
|
+
import type { Template } from '@pdfme/common';
|
98
|
+
import { Designer, Form, Viewer } from '@pdfme/ui';
|
99
|
+
````
|
96
100
|
|
97
101
|
**All objects use `Template`, which will be briefly explained in the next section.**
|
98
102
|
|
@@ -113,11 +117,9 @@ The following image is a good illustration of a template.
|
|
113
117
|
**basePdf** can be given a `string`(base64), `ArrayBuffer`, or `Uint8Array`.
|
114
118
|
A blank A4 PDF can be imported with `BLANK_PDF`. You can use it to check how it works.
|
115
119
|
|
116
|
-
**schemas**
|
117
|
-
|
118
|
-
-
|
119
|
-
- image
|
120
|
-
- Various types of barcodes
|
120
|
+
**schemas** can only utilize text by default, but you can load images and various barcodes like QR codes as plugins from the `@pdfme/schemas` package.
|
121
|
+
Additionally, you can create your own schemas, allowing you to render types other than the ones mentioned above.
|
122
|
+
Check detail about [Custom Schemas](https://pdfme.com/docs/custom-schemas) from here
|
121
123
|
|
122
124
|
Let's take a look at some specific data.
|
123
125
|
(If you are using TypeScript, you can import the Template type.)
|
@@ -125,8 +127,7 @@ Let's take a look at some specific data.
|
|
125
127
|
### Minimal Template
|
126
128
|
|
127
129
|
```ts
|
128
|
-
import { Template, BLANK_PDF } from '@pdfme/
|
129
|
-
// import { Template, BLANK_PDF } from '@pdfme/ui'; <- Template types and BLANK_PDF can also be imported from @pdfme/ui.
|
130
|
+
import { Template, BLANK_PDF } from '@pdfme/common';
|
130
131
|
|
131
132
|
const template: Template = {
|
132
133
|
basePdf: BLANK_PDF,
|
@@ -155,8 +156,6 @@ const template: Template = {
|
|
155
156
|
};
|
156
157
|
```
|
157
158
|
|
158
|
-
[For more information, please refer to the API documentation of the Template type here](https://pdfme.com/docs/api/common/#template).
|
159
|
-
|
160
159
|
You can create a template from [Template Design page](https://pdfme.com/template-design). Or, if you want to integrate the template creation feature into your application, check out the [Designer section](https://pdfme.com/docs/getting-started#designer).
|
161
160
|
|
162
161
|
## Generator
|
@@ -166,7 +165,8 @@ The PDF generator function, `generate`, takes 2 arguments of `template` and `inp
|
|
166
165
|
The code to generate a PDF file using the [template created above](https://pdfme.com/docs/getting-started#sample-template) is shown below.
|
167
166
|
|
168
167
|
```ts
|
169
|
-
import { Template
|
168
|
+
import type { Template } from '@pdfme/common';
|
169
|
+
import { generate } from '@pdfme/generator';
|
170
170
|
|
171
171
|
const template: Template = {
|
172
172
|
// skip... Check the Template section.
|
@@ -187,14 +187,14 @@ generate({ template, inputs }).then((pdf) => {
|
|
187
187
|
|
188
188
|
You can create a PDF file like the below.
|
189
189
|
|
190
|
-

|
191
191
|
|
192
192
|
Also, each element in the inputs array corresponds to a page in the PDF, you can create a multi-page PDF file by providing multiple elements of inputs.
|
193
193
|
|
194
|
-
[For more information, please refer to the API documentation of the generate function here](https://pdfme.com/docs/api/generator/#generate).
|
195
|
-
|
196
194
|
## UI
|
197
195
|
|
196
|
+
The UI is composed of the Designer, Form, and Viewer classes.
|
197
|
+
|
198
198
|
### Designer
|
199
199
|
|
200
200
|
The Designer allows you to edit the Template schemas, making it easy for anyone to create Template json objects.
|
@@ -204,7 +204,8 @@ You can design your own template from [Template Design page](https://pdfme.com/t
|
|
204
204
|
Let's integrate the designer using the template created above as the default template.
|
205
205
|
|
206
206
|
```ts
|
207
|
-
import { Template
|
207
|
+
import type { Template } from '@pdfme/common';
|
208
|
+
import { Designer } from '@pdfme/ui';
|
208
209
|
|
209
210
|
const domContainer = document.getElementById('container');
|
210
211
|
const template: Template = {
|
@@ -228,8 +229,6 @@ The designer instance can be manipulated with the following methods.
|
|
228
229
|
- `onSaveTemplate`
|
229
230
|
- `destroy`
|
230
231
|
|
231
|
-
[For more information, please refer to the API documentation of the Designer class here](https://pdfme.com/docs/api/ui/classes/Designer).
|
232
|
-
|
233
232
|
### Form
|
234
233
|
|
235
234
|
You can use templates to create forms and PDF viewers.
|
@@ -237,7 +236,8 @@ You can use templates to create forms and PDF viewers.
|
|
237
236
|
The Form creates a UI for the user to enter schemas based on the template.
|
238
237
|
|
239
238
|
```ts
|
240
|
-
import { Template
|
239
|
+
import type { Template } from '@pdfme/common';
|
240
|
+
import { Form } from '@pdfme/ui';
|
241
241
|
|
242
242
|
const domContainer = document.getElementById('container');
|
243
243
|
const template: Template = {
|
@@ -262,8 +262,6 @@ generate({ template, inputs: form.getInputs() }).then((pdf) => {
|
|
262
262
|
});
|
263
263
|
```
|
264
264
|
|
265
|
-
[For more information, please refer to the API documentation of the Form class here](https://pdfme.com/docs/api/ui/classes/Form).
|
266
|
-
|
267
265
|
### Viewer
|
268
266
|
|
269
267
|
Viewing a PDF file in a mobile browser is a pain, because it doesn't display well in an iframe.
|
@@ -273,7 +271,8 @@ The Viewer is a byproduct of the Form development process, but it allows you to
|
|
273
271
|
Using the Viewer is basically the same as using the Form, except that user cannot edit it.
|
274
272
|
|
275
273
|
```ts
|
276
|
-
import { Template
|
274
|
+
import type { Template } from '@pdfme/common';
|
275
|
+
import { Viewer } from '@pdfme/ui';
|
277
276
|
|
278
277
|
const domContainer = document.getElementById('container');
|
279
278
|
const template: Template = {
|
@@ -286,20 +285,18 @@ const viewer = new Viewer({ domContainer, template, inputs });
|
|
286
285
|
|
287
286
|

|
288
287
|
|
289
|
-
[For more information, please refer to the API documentation of the Viewer class here](https://pdfme.com/docs/api/ui/classes/Viewer).
|
290
|
-
|
291
288
|
## Special Thanks
|
292
289
|
|
293
290
|
- [pdf-lib](https://pdf-lib.js.org/): Used in PDF generation.
|
294
291
|
- [fontkit](https://github.com/foliojs/fontkit): Used in font rendering.
|
295
292
|
- [PDF.js](https://mozilla.github.io/pdf.js/): Used in PDF viewing.
|
296
293
|
- [React](https://reactjs.org/): Used in building the UI.
|
294
|
+
- [form-render](https://xrender.fun/form-render): Used in building the UI.
|
295
|
+
- [antd](https://ant.design/): Used in building the UI.
|
297
296
|
- [react-moveable](https://daybrush.com/moveable/), [react-selecto](https://github.com/daybrush/selecto), [@scena/react-guides](https://daybrush.com/guides/): Used in Designer UI.
|
298
297
|
- [dnd-kit](https://github.com/clauderic/dnd-kit): Used in Designer UI.
|
299
|
-
- [bwip-js](https://github.com/metafloor/bwip-js): Used in barcode generation.
|
300
|
-
- [zod](https://github.com/colinhacks/zod): Used in Validation.
|
301
298
|
|
302
299
|
I definitely could not have created pdfme without these libraries. I am grateful to the developers of these libraries.
|
303
300
|
|
304
|
-
If you want to contribute to pdfme, please check the [Development Guide](https://pdfme.com/development-guide) page.
|
305
|
-
We look forward to your contribution!
|
301
|
+
If you want to contribute to pdfme, please check the [Development Guide](https://pdfme.com/docs/development-guide) page.
|
302
|
+
We look forward to your contribution!
|
@@ -43,6 +43,7 @@ const canvasPdf = require('./canvasPdf.json');
|
|
43
43
|
const background = require('./background.json');
|
44
44
|
const dynamicFontSizeHorizontal = require('./dynamicFontSizeHorizontal.json');
|
45
45
|
const dynamicFontSizeVertical = require('./dynamicFontSizeVertical.json');
|
46
|
+
const rotation = require('./rotation.json');
|
46
47
|
const verticalAlignmentTop = require('./verticalAlignmentTop.json');
|
47
48
|
const verticalAlignmentMiddle = require('./verticalAlignmentMiddle.json');
|
48
49
|
const verticalAlignmentBottom = require('./verticalAlignmentBottom.json');
|
@@ -114,6 +115,7 @@ exports.default = {
|
|
114
115
|
background,
|
115
116
|
dynamicFontSizeHorizontal,
|
116
117
|
dynamicFontSizeVertical,
|
118
|
+
rotation,
|
117
119
|
verticalAlignmentTop,
|
118
120
|
verticalAlignmentMiddle,
|
119
121
|
verticalAlignmentBottom,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../__tests__/assets/templates/index.ts"],"names":[],"mappings":";;AAAA,0CAAoD;AAEpD,+BAA+B;AAC/B,mDAAmD;AACnD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAa,CAAC;AAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAa,CAAC;AAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAa,CAAC;AAChD,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,uBAAuB,CAAa,CAAC;AACpE,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAa,CAAC;AACtD,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAa,CAAC;AAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,uBAAuB,CAAa,CAAC;AACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAa,CAAC;AACxD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,cAAc,GAAG,OAAO,CAAC,uBAAuB,CAAa,CAAC;AACpE,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAa,CAAC;AACxD,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAa,CAAC;AAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAa,CAAC;AACpD,MAAM,cAAc,GAAG,OAAO,CAAC,uBAAuB,CAAa,CAAC;AACpE,MAAM,cAAc,GAAG,OAAO,CAAC,uBAAuB,CAAa,CAAC;AACpE,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAa,CAAC;AAC1E,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAa,CAAC;AAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAa,CAAC;AAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAa,CAAC;AAClD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAa,CAAC;AAClD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAa,CAAC;AAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAa,CAAC;AACtD,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,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;AAEtF,kBAAe;IACb,IAAI,EAAE;QACJ,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;QAC3C,OAAO,EAAE;YACP;gBACE,CAAC,EAAE;oBACD,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;oBACxB,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;iBACX;gBACD,CAAC,EAAE;oBACD,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;oBAC1B,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;iBACX;gBACD,CAAC,EAAE;oBACD,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;oBAC1B,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;iBACX;aACF;SACF;QACD,OAAO,EAAE,kBAAS;QAClB,QAAQ,EAAE,gBAAgB;KACf;IACb,IAAI;IACJ,UAAU;IACV,cAAc;IACd,UAAU;IACV,WAAW;IACX,UAAU;IACV,cAAc;IACd,QAAQ;IACR,MAAM;IACN,SAAS;IACT,SAAS;IACT,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,cAAc;IACd,UAAU;IACV,QAAQ;IACR,UAAU;IACV,MAAM;IACN,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,WAAW;IACX,GAAG;IACH,KAAK;IACL,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,KAAK;IACL,GAAG;IACH,OAAO;IACP,WAAW;IACX,QAAQ;IACR,SAAS;IACT,UAAU;IACV,yBAAyB;IACzB,uBAAuB;IACvB,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;CACxB,CAAC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../__tests__/assets/templates/index.ts"],"names":[],"mappings":"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"}
|
@@ -40,6 +40,7 @@ const path = __importStar(require("path"));
|
|
40
40
|
const generate_1 = __importDefault(require("../src/generate"));
|
41
41
|
const templates_1 = __importDefault(require("./assets/templates"));
|
42
42
|
const common_1 = require("@pdfme/common");
|
43
|
+
const schemas_1 = require("@pdfme/schemas");
|
43
44
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
44
45
|
const PDFParser = require('pdf2json');
|
45
46
|
const SauceHanSansJPData = (0, fs_1.readFileSync)(path.join(__dirname, `/assets/fonts/SauceHanSansJP.ttf`));
|
@@ -88,44 +89,66 @@ describe('generate integrate test', () => {
|
|
88
89
|
});
|
89
90
|
describe('basic generator', () => {
|
90
91
|
const textObject = (x, y) => ({
|
91
|
-
type: 'text',
|
92
|
+
type: 'text',
|
93
|
+
position: { x, y },
|
94
|
+
width: 100,
|
95
|
+
height: 100,
|
96
|
+
fontSize: 13,
|
92
97
|
});
|
93
98
|
const singleSchemaTemplate = {
|
94
99
|
basePdf: common_1.BLANK_PDF,
|
95
|
-
schemas: [
|
100
|
+
schemas: [
|
101
|
+
{
|
96
102
|
a: textObject(0, 0),
|
97
103
|
b: textObject(25, 25),
|
98
|
-
}
|
104
|
+
},
|
105
|
+
],
|
99
106
|
};
|
100
107
|
const multiSchemasTemplate = {
|
101
|
-
basePdf:
|
102
|
-
schemas: [
|
103
|
-
{ a: textObject(0, 0) },
|
104
|
-
{ b: textObject(25, 25) },
|
105
|
-
],
|
108
|
+
basePdf: 'data:application/pdf;base64,JVBERi0xLjcNJeLjz9MNCjYgMCBvYmoNPDwvTGluZWFyaXplZCAxL0wgMTg0NC9PIDgvRSAxMTEwL04gMi9UIDE1NzAvSCBbIDQyMyAxMzFdPj4NZW5kb2JqDSAgICAgICAgICAgICAgICAgICAgICAgDQoxMSAwIG9iag08PC9EZWNvZGVQYXJtczw8L0NvbHVtbnMgMy9QcmVkaWN0b3IgMTI+Pi9GaWx0ZXIvRmxhdGVEZWNvZGUvSURbPEJBMTk5MUY0MThCN0IyMTEwQTAwNjc0NThCNkJDNjIzPjxGOEE4OEZEMzMzNjQ2OTQ2QkE1ODMzM0M4MEFEMDFFNj5dL0luZGV4WzYgN10vTGVuZ3RoIDM2L1ByZXYgMTU3MS9Sb290IDcgMCBSL1NpemUgMTMvVHlwZS9YUmVmL1dbMSAyIDBdPj5zdHJlYW0NCmjeYmJkEGBiYJJiYmDQZWJgvA+k45gY/j4Aso0BAgwAISQDuA0KZW5kc3RyZWFtDWVuZG9iag1zdGFydHhyZWYNCjANCiUlRU9GDQogICAgICAgIA0KMTIgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0xlbmd0aCA1Ny9TIDQ0Pj5zdHJlYW0NCmjeYmBgYGJgYLzCwAgkbRk4GBCAAyjGxMDCwNFwiOGAQvkhJCkGZihmYIhj4GhkSGEACDAAvy4F4g0KZW5kc3RyZWFtDWVuZG9iag03IDAgb2JqDTw8L1BhZ2VzIDUgMCBSL1R5cGUvQ2F0YWxvZz4+DWVuZG9iag04IDAgb2JqDTw8L0Fubm90c1tdL0JsZWVkQm94WzAgMCA1OTUuNDQgODQxLjkyXS9Db250ZW50cyA5IDAgUi9Dcm9wQm94WzAgMCA1OTUuNDQgODQxLjkyXS9NZWRpYUJveFswIDAgNTk1LjQ0IDg0MS45Ml0vUGFyZW50IDUgMCBSL1Jlc291cmNlczw8L1hPYmplY3Q8PC9GbTAgMTAgMCBSPj4+Pi9Sb3RhdGUgMC9UcmltQm94WzAgMCA1OTUuNDQgODQxLjkyXS9UeXBlL1BhZ2U+Pg1lbmRvYmoNOSAwIG9iag08PC9GaWx0ZXIvRmxhdGVEZWNvZGUvTGVuZ3RoIDI2Pj5zdHJlYW0NCkiJKlQwUAjx0XfLNVBwyVcIVAAIMAAiagP4DQplbmRzdHJlYW0NZW5kb2JqDTEwIDAgb2JqDTw8L0JCb3hbMzI3NjguMCAzMjc2OC4wIC0zMjc2OC4wIC0zMjc2OC4wXS9GaWx0ZXIvRmxhdGVEZWNvZGUvRm9ybVR5cGUgMS9MZW5ndGggMTQvTWF0cml4WzEgMCAwIDEgMCAwXS9SZXNvdXJjZXM8PD4+L1N1YnR5cGUvRm9ybS9UeXBlL1hPYmplY3Q+PnN0cmVhbQ0KSIkq5ArkAggwAAKSANcNCmVuZHN0cmVhbQ1lbmRvYmoNMSAwIG9iag08PC9Bbm5vdHNbXS9CbGVlZEJveFswIDAgNTk1LjQ0IDg0MS45Ml0vQ29udGVudHMgMiAwIFIvQ3JvcEJveFswIDAgNTk1LjQ0IDg0MS45Ml0vTWVkaWFCb3hbMCAwIDU5NS40NCA4NDEuOTJdL1BhcmVudCA1IDAgUi9SZXNvdXJjZXM8PC9YT2JqZWN0PDwvRm0wIDEwIDAgUj4+Pj4vUm90YXRlIDAvVHJpbUJveFswIDAgNTk1LjQ0IDg0MS45Ml0vVHlwZS9QYWdlPj4NZW5kb2JqDTIgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0xlbmd0aCAyNj4+c3RyZWFtDQpIiSpUMFAI8dF3yzVQcMlXCFQACDAAImoD+A0KZW5kc3RyZWFtDWVuZG9iag0zIDAgb2JqDTw8L0ZpbHRlci9GbGF0ZURlY29kZS9GaXJzdCA0L0xlbmd0aCA1Mi9OIDEvVHlwZS9PYmpTdG0+PnN0cmVhbQ0KaN4yVTBQsLHRd84vzStRMNL3zkwpjrYAigUpGILIWP2QyoJU/YDE9NRiOzuAAAMAETgMkw0KZW5kc3RyZWFtDWVuZG9iag00IDAgb2JqDTw8L0RlY29kZVBhcm1zPDwvQ29sdW1ucyAzL1ByZWRpY3RvciAxMj4+L0ZpbHRlci9GbGF0ZURlY29kZS9JRFs8QkExOTkxRjQxOEI3QjIxMTBBMDA2NzQ1OEI2QkM2MjM+PEY4QTg4RkQzMzM2NDY5NDZCQTU4MzMzQzgwQUQwMUU2Pl0vTGVuZ3RoIDMzL1Jvb3QgNyAwIFIvU2l6ZSA2L1R5cGUvWFJlZi9XWzEgMiAwXT4+c3RyZWFtDQpo3mJiYGBgYmQJY2JgvM/EwBAHpCcwMf56ABBgABstBBINCmVuZHN0cmVhbQ1lbmRvYmoNc3RhcnR4cmVmDQoxMTYNCiUlRU9GDQo=',
|
109
|
+
schemas: [{ a: textObject(0, 0) }, { b: textObject(25, 25) }],
|
106
110
|
};
|
107
|
-
const singleInputs = [{ a: 'a', b:
|
108
|
-
const multiInputs = [
|
111
|
+
const singleInputs = [{ a: 'a', b: 'b' }];
|
112
|
+
const multiInputs = [
|
113
|
+
{ a: 'a-1', b: 'b-1' },
|
114
|
+
{ a: 'a-2', b: 'b-2' },
|
115
|
+
];
|
109
116
|
const testCases = [
|
110
|
-
{
|
111
|
-
|
112
|
-
|
113
|
-
|
117
|
+
{
|
118
|
+
template: singleSchemaTemplate,
|
119
|
+
inputs: singleInputs,
|
120
|
+
testName: 'singleSchemaTemplate with singleInputs',
|
121
|
+
},
|
122
|
+
{
|
123
|
+
template: singleSchemaTemplate,
|
124
|
+
inputs: multiInputs,
|
125
|
+
testName: 'singleSchemaTemplate with multiInputs',
|
126
|
+
},
|
127
|
+
{
|
128
|
+
template: multiSchemasTemplate,
|
129
|
+
inputs: singleInputs,
|
130
|
+
testName: 'multiSchemasTemplate with singleInputs',
|
131
|
+
},
|
132
|
+
{
|
133
|
+
template: multiSchemasTemplate,
|
134
|
+
inputs: multiInputs,
|
135
|
+
testName: 'multiSchemasTemplate with multiInputs',
|
136
|
+
},
|
114
137
|
];
|
115
|
-
testCases
|
138
|
+
// testCases for
|
139
|
+
for (let i = 0; i < testCases.length; i += 1) {
|
140
|
+
const { template, inputs, testName } = testCases[i];
|
141
|
+
// eslint-disable-next-line no-loop-func
|
116
142
|
test(testName, () => __awaiter(void 0, void 0, void 0, function* () {
|
117
143
|
const pdf = yield (0, generate_1.default)({ inputs, template });
|
118
144
|
const tmpFile = getPdfTmpPath(`${testName}.pdf`);
|
119
145
|
const assertFile = getPdfAssertPath(`${testName}.pdf`);
|
120
146
|
(0, fs_1.writeFileSync)(tmpFile, pdf);
|
121
|
-
const [actualPdf, expectedPdf] = yield Promise.all([
|
122
|
-
getPdf(tmpFile),
|
123
|
-
getPdf(assertFile),
|
124
|
-
]);
|
147
|
+
const [actualPdf, expectedPdf] = yield Promise.all([getPdf(tmpFile), getPdf(assertFile)]);
|
125
148
|
// @ts-ignore
|
126
149
|
expect(actualPdf.Pages).toEqual(expectedPdf.Pages);
|
127
150
|
}));
|
128
|
-
}
|
151
|
+
}
|
129
152
|
});
|
130
153
|
// TODO Slow test... need speed up, use Promise.all?
|
131
154
|
describe('use labelmake.jp template', () => {
|
@@ -145,6 +168,7 @@ describe('generate integrate test', () => {
|
|
145
168
|
const pdf = yield (0, generate_1.default)({
|
146
169
|
inputs,
|
147
170
|
template,
|
171
|
+
plugins: Object.assign({ text: schemas_1.text, image: schemas_1.image }, schemas_1.barcodes),
|
148
172
|
options: { font },
|
149
173
|
});
|
150
174
|
const hrend = process.hrtime(hrstart);
|
@@ -256,7 +280,7 @@ describe('check validation', () => {
|
|
256
280
|
fail();
|
257
281
|
}
|
258
282
|
catch (e) {
|
259
|
-
expect(e.message).toEqual(`Invalid argument:
|
283
|
+
expect(e.message).toEqual(`[@pdfme/common] Invalid argument:
|
260
284
|
--------------------------
|
261
285
|
ERROR POSITION: inputs
|
262
286
|
ERROR MESSAGE: Array must contain at least 1 element(s)
|
@@ -286,7 +310,8 @@ ERROR MESSAGE: Array must contain at least 1 element(s)
|
|
286
310
|
fail();
|
287
311
|
}
|
288
312
|
catch (e) {
|
289
|
-
expect(e.message).toEqual(
|
313
|
+
expect(e.message).toEqual(`[@pdfme/common] fallback flag is not found in font. true fallback flag must be only one.
|
314
|
+
Check this document: https://pdfme.com/docs/custom-fonts#about-font-type`);
|
290
315
|
}
|
291
316
|
}));
|
292
317
|
test(`too many fallback font`, () => __awaiter(void 0, void 0, void 0, function* () {
|
@@ -312,7 +337,8 @@ ERROR MESSAGE: Array must contain at least 1 element(s)
|
|
312
337
|
fail();
|
313
338
|
}
|
314
339
|
catch (e) {
|
315
|
-
expect(e.message).toEqual(
|
340
|
+
expect(e.message).toEqual(`[@pdfme/common] 2 fallback flags found in font. true fallback flag must be only one.
|
341
|
+
Check this document: https://pdfme.com/docs/custom-fonts#about-font-type`);
|
316
342
|
}
|
317
343
|
}));
|
318
344
|
test(`missing font in template.schemas`, () => __awaiter(void 0, void 0, void 0, function* () {
|
@@ -342,7 +368,8 @@ ERROR MESSAGE: Array must contain at least 1 element(s)
|
|
342
368
|
fail();
|
343
369
|
}
|
344
370
|
catch (e) {
|
345
|
-
expect(e.message).toEqual(
|
371
|
+
expect(e.message).toEqual(`[@pdfme/common] SauceHanSansJP2 of template.schemas is not found in font.
|
372
|
+
Check this document: https://pdfme.com/docs/custom-fonts`);
|
346
373
|
}
|
347
374
|
}));
|
348
375
|
test(`check digit error`, () => __awaiter(void 0, void 0, void 0, function* () {
|
@@ -373,7 +400,7 @@ ERROR MESSAGE: Array must contain at least 1 element(s)
|
|
373
400
|
],
|
374
401
|
};
|
375
402
|
try {
|
376
|
-
yield (0, generate_1.default)({ inputs, template });
|
403
|
+
yield (0, generate_1.default)({ inputs, template, plugins: Object.assign({}, schemas_1.barcodes) });
|
377
404
|
}
|
378
405
|
catch (e) {
|
379
406
|
fail();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../../__tests__/generate.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAAkE;AAClE,2CAA6B;AAC7B,+DAAuC;AACvC,mEAA8C;AAC9C,0CAAsE;AACtE,8DAA8D;AAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,kBAAkB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC,CAAC;AAClG,MAAM,mBAAmB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,mCAAmC,CAAC,CAAC,CAAC;AACpG,MAAM,sBAAsB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uCAAuC,CAAC,CAAC,CAAC;AAC3G,MAAM,2BAA2B,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4CAA4C,CAAC,CAAC,CAAC;AACrH,MAAM,qBAAqB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC,CAAC;AACzG,MAAM,wBAAwB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC,CAAC;AAE/G,MAAM,OAAO,GAAG,GAAS,EAAE,CAAC,CAAC;IAC3B,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5D,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;IAC9C,qBAAqB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;IACvD,0BAA0B,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE;IACjE,oBAAoB,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACrD,uBAAuB,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE;CAC5D,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,CAAC,WAAmB,EAAE,EAAE;IACrC,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;IAElC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,CAAC,EAAE,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC5C,SAAS,CAAC,EAAE,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC7C,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,QAAgB,EAAE,EAAE,CACnD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAC;AACzD,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACxE,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAE9E,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,QAAQ,CAAC,GAAG,EAAE;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,CAAC,IAAS,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,UAAU,EAAE;gBACvB,IAAA,WAAM,EAAC,GAAG,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC,CAAM,EAAE,EAAE;oBAClC,IAAI,CAAC,EAAE;wBACL,MAAM,CAAC,CAAC;qBACT;gBACH,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QACF,IAAA,YAAO,EAAC,GAAG,EAAE,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE;YACpC,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,CAAC;aACX;YACD,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS,EAAc,EAAE,CAAC,CAAC;YACxD,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;SACxE,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAa;YACrC,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE,CAAC;oBACR,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;oBACnB,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC;iBACtB,CAAC;SACH,CAAC;QAEF,MAAM,oBAAoB,GAAa;YACrC,OAAO,EAAE,07EAA07E;YACn8E,OAAO,EAAE;gBACP,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;gBACvB,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;aAC1B;SACF,CAAC;QAEF,MAAM,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAErE,MAAM,SAAS,GAAG;YAChB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,wCAAwC,EAAE;YAC5G,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,uCAAuC,EAAE;YAC1G,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,wCAAwC,EAAE;YAC5G,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,uCAAuC,EAAE;SAC3G,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;YACnD,IAAI,CAAC,QAAQ,EAAE,GAAS,EAAE;gBACxB,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACjD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,QAAQ,MAAM,CAAC,CAAC;gBACjD,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,QAAQ,MAAM,CAAC,CAAC;gBACvD,IAAA,kBAAa,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC5B,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACjD,MAAM,CAAC,OAAO,CAAC;oBACf,MAAM,CAAC,UAAU,CAAC;iBACnB,CAAC,CAAC;gBACH,aAAa;gBACb,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACrD,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAGH,oDAAoD;IACpD,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAY,CAAC,CAAC;QAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC1C,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAEnC,wCAAwC;YACxC,IAAI,CAAC,YAAY,GAAG,EAAE,EAAE,GAAS,EAAE;gBACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAW,CAAC;gBAEpC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACrC,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtC,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;gBAC7C,aAAa;gBACb,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAExC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEjC,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAQ,EAAC;oBACzB,MAAM;oBACN,QAAQ;oBACR,OAAO,EAAE,EAAE,IAAI,EAAE;iBAClB,CAAC,CAAC;gBAEH,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;gBAExC,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBAC5C,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBAElD,IAAA,kBAAa,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC5B,MAAM,GAAG,GAAQ,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC1E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;gBACnB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC,CAAA,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IAGH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,IAAI,CAAC,QAAQ,EAAE,GAAS,EAAE;YACxB,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAa;gBACzB,OAAO,EAAE,kBAAS;gBAClB,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE;4BACJ,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;4BAC1B,KAAK,EAAE,GAAG;4BACV,MAAM,EAAE,EAAE;4BACV,SAAS,EAAE,SAAS;yBACrB;qBACF;iBACF;aACF,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;YACrD,IAAA,kBAAa,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAQ,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC1E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;YACnB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,IAAI,CAAC,QAAQ,EAAE,GAAS,EAAE;YACxB,MAAM,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAa;gBACzB,OAAO,EAAE,kBAAS;gBAClB,OAAO,EAAE;oBACP;wBACE,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;4BAC1B,KAAK,EAAE,GAAG;4BACV,MAAM,EAAE,EAAE;4BACV,QAAQ,EAAE,gBAAgB;yBAC3B;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;4BAC1B,KAAK,EAAE,GAAG;4BACV,MAAM,EAAE,EAAE;4BACV,QAAQ,EAAE,iBAAiB;yBAC5B;qBACF;iBACF;aACF,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAQ,EAAC;gBACzB,MAAM;gBACN,QAAQ;gBACR,OAAO,EAAE;oBACP,IAAI,EAAE;wBACJ,cAAc,EAAE;4BACd,IAAI,EAAE,kBAAkB;4BACxB,QAAQ,EAAE,IAAI;4BACd,MAAM,EAAE,KAAK;yBACd;wBACD,eAAe,EAAE;4BACf,IAAI,EAAE,mBAAmB;4BACzB,MAAM,EAAE,KAAK;yBACd;qBACF;iBACF;aACF,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC;YAChD,MAAM,UAAU,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;YACtD,IAAA,kBAAa,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAQ,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC1E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;YACnB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAA,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,CAAC,oBAAoB,EAAE,GAAS,EAAE;QACpC,MAAM,MAAM,GAAgC,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE;gBACP;oBACE,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,CAAC;QACF,IAAI;YACF,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAM,EAAE;YACf,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;;;;2BAIL,CAAC,CAAC;SACxB;IACH,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,uBAAuB,EAAE,GAAS,EAAE;QACvC,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE;gBACP;oBACE,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtC,IAAI;YACF,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACxD,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAM,EAAE;YACf,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CACvB,0EAA0E,CAC3E,CAAC;SACH;IACH,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,wBAAwB,EAAE,GAAS,EAAE;QACxC,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE;gBACP;oBACE,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrC,IAAI;YACF,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACxD,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAM,EAAE;YACf,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CACvB,sEAAsE,CACvE,CAAC;SACH;IACH,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,kCAAkC,EAAE,GAAS,EAAE;QAClD,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE;gBACP;oBACE,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,iBAAiB;wBAC3B,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;oBACD,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,CAAC;QACF,IAAI;YACF,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAM,EAAE;YACf,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAAC;SACxF;IACH,CAAC,CAAA,CAAC,CAAC;IAEH,IAAI,CAAC,mBAAmB,EAAE,GAAS,EAAE;QACnC,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,kBAAS;YAClB,OAAO,EAAE;gBACP;oBACE,CAAC,EAAE;wBACD,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACxB,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;oBACD,CAAC,EAAE;wBACD,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;wBAC1B,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;oBACD,CAAC,EAAE;wBACD,IAAI,EAAE,KAAK;wBACX,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;wBAC1B,KAAK,EAAE,GAAG;wBACV,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,CAAC;QACF,IAAI;YACF,MAAM,IAAA,kBAAQ,EAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;SACtC;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,EAAE,CAAC;SACR;QACD,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
1
|
+
{"version":3,"file":"generate.test.js","sourceRoot":"","sources":["../../../__tests__/generate.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,9 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
const
|
4
|
-
const
|
5
|
-
const barcodes_1 = require("./renders/barcodes");
|
6
|
-
const barCodeTypes = ['qrcode', 'japanpost', 'ean13', 'ean8', 'code39', 'code128', 'nw7', 'itf14', 'upca', 'upce', 'gs1datamatrix'];
|
7
|
-
const renderer = Object.assign({ text: { render: text_1.renderText, }, image: { render: image_1.renderImage, } }, barCodeTypes.reduce((acc, barcodeType) => Object.assign(acc, { [barcodeType]: { render: barcodes_1.renderBarcode } }), {}));
|
3
|
+
const schemas_1 = require("@pdfme/schemas");
|
4
|
+
const renderer = { text: schemas_1.text.pdf };
|
8
5
|
exports.default = renderer;
|
9
6
|
//# sourceMappingURL=builtInRenderer.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"builtInRenderer.js","sourceRoot":"","sources":["../../../src/builtInRenderer.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"builtInRenderer.js","sourceRoot":"","sources":["../../../src/builtInRenderer.ts"],"names":[],"mappings":";;AAAA,4CAAsC;AAGtC,MAAM,QAAQ,GAAgB,EAAE,IAAI,EAAE,cAAI,CAAC,GAAgB,EAAE,CAAC;AAC9D,kBAAe,QAAQ,CAAC"}
|
package/dist/cjs/src/generate.js
CHANGED
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
35
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
36
36
|
};
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
38
|
-
const
|
38
|
+
const pdfLib = __importStar(require("@pdfme/pdf-lib"));
|
39
39
|
const fontkit = __importStar(require("fontkit"));
|
40
40
|
const common_1 = require("@pdfme/common");
|
41
41
|
const builtInRenderer_1 = __importDefault(require("./builtInRenderer"));
|
@@ -43,7 +43,7 @@ const pdfUtils_1 = require("./pdfUtils");
|
|
43
43
|
const constants_1 = require("./constants");
|
44
44
|
const preprocessing = ({ template }) => __awaiter(void 0, void 0, void 0, function* () {
|
45
45
|
const { basePdf } = template;
|
46
|
-
const pdfDoc = yield
|
46
|
+
const pdfDoc = yield pdfLib.PDFDocument.create();
|
47
47
|
// @ts-ignore
|
48
48
|
pdfDoc.registerFontkit(fontkit);
|
49
49
|
const pagesAndBoxes = yield (0, pdfUtils_1.getEmbeddedPagesAndEmbedPdfBoxes)({ pdfDoc, basePdf });
|
@@ -56,10 +56,10 @@ const postProcessing = ({ pdfDoc }) => {
|
|
56
56
|
};
|
57
57
|
const generate = (props) => __awaiter(void 0, void 0, void 0, function* () {
|
58
58
|
(0, common_1.checkGenerateProps)(props);
|
59
|
-
const { inputs, template, options = {} } = props;
|
59
|
+
const { inputs, template, options = {}, plugins = {} } = props;
|
60
60
|
const { pdfDoc, embeddedPages, embedPdfBoxes } = yield preprocessing({ template });
|
61
|
-
|
62
|
-
const rendererRegistry = Object.
|
61
|
+
const customRenderer = Object.entries(plugins).reduce((acc, [key, { pdf }]) => Object.assign(acc, { [key]: pdf }), {});
|
62
|
+
const rendererRegistry = Object.keys(customRenderer).length > 0 ? customRenderer : builtInRenderer_1.default;
|
63
63
|
const _cache = new Map();
|
64
64
|
for (let i = 0; i < inputs.length; i += 1) {
|
65
65
|
const inputObj = inputs[i];
|
@@ -78,11 +78,12 @@ const generate = (props) => __awaiter(void 0, void 0, void 0, function* () {
|
|
78
78
|
if (!schema || !value) {
|
79
79
|
continue;
|
80
80
|
}
|
81
|
-
const
|
82
|
-
if (!
|
83
|
-
throw new Error(`Renderer for type ${schema.type} not found
|
81
|
+
const render = rendererRegistry[schema.type];
|
82
|
+
if (!render) {
|
83
|
+
throw new Error(`[@pdfme/generator] Renderer for type ${schema.type} not found.
|
84
|
+
Check this document: https://pdfme.com/docs/custom-schemas`);
|
84
85
|
}
|
85
|
-
yield
|
86
|
+
yield render({ value, schema, pdfLib, pdfDoc, page, options, _cache });
|
86
87
|
}
|
87
88
|
}
|
88
89
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/generate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/generate.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/src/index.js
CHANGED
@@ -3,19 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.
|
6
|
+
exports.generate = void 0;
|
7
7
|
const generate_js_1 = __importDefault(require("./generate.js"));
|
8
8
|
exports.generate = generate_js_1.default;
|
9
|
-
const common_1 = require("@pdfme/common");
|
10
|
-
Object.defineProperty(exports, "BLANK_PDF", { enumerable: true, get: function () { return common_1.BLANK_PDF; } });
|
11
|
-
Object.defineProperty(exports, "DEFAULT_FONT_VALUE", { enumerable: true, get: function () { return common_1.DEFAULT_FONT_VALUE; } });
|
12
|
-
Object.defineProperty(exports, "isTextSchema", { enumerable: true, get: function () { return common_1.isTextSchema; } });
|
13
|
-
Object.defineProperty(exports, "isImageSchema", { enumerable: true, get: function () { return common_1.isImageSchema; } });
|
14
|
-
Object.defineProperty(exports, "isBarcodeSchema", { enumerable: true, get: function () { return common_1.isBarcodeSchema; } });
|
15
|
-
Object.defineProperty(exports, "checkTemplate", { enumerable: true, get: function () { return common_1.checkTemplate; } });
|
16
|
-
Object.defineProperty(exports, "checkUIProps", { enumerable: true, get: function () { return common_1.checkUIProps; } });
|
17
|
-
Object.defineProperty(exports, "checkPreviewProps", { enumerable: true, get: function () { return common_1.checkPreviewProps; } });
|
18
|
-
Object.defineProperty(exports, "checkDesignerProps", { enumerable: true, get: function () { return common_1.checkDesignerProps; } });
|
19
|
-
Object.defineProperty(exports, "checkGenerateProps", { enumerable: true, get: function () { return common_1.checkGenerateProps; } });
|
20
|
-
Object.defineProperty(exports, "validateBarcodeInput", { enumerable: true, get: function () { return common_1.validateBarcodeInput; } });
|
21
9
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAE5B,mBAFF,qBAAQ,CAEE"}
|
package/dist/cjs/src/pdfUtils.js
CHANGED
@@ -9,29 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
9
9
|
});
|
10
10
|
};
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
-
exports.drawEmbeddedPage = exports.getEmbeddedPagesAndEmbedPdfBoxes =
|
12
|
+
exports.drawEmbeddedPage = exports.getEmbeddedPagesAndEmbedPdfBoxes = void 0;
|
13
13
|
const pdf_lib_1 = require("@pdfme/pdf-lib");
|
14
14
|
const common_1 = require("@pdfme/common");
|
15
|
-
const embedAndGetFontObjCache = new WeakMap();
|
16
|
-
const embedAndGetFontObj = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
17
|
-
const { pdfDoc, font } = arg;
|
18
|
-
if (embedAndGetFontObjCache.has(pdfDoc)) {
|
19
|
-
return embedAndGetFontObjCache.get(pdfDoc);
|
20
|
-
}
|
21
|
-
const fontValues = yield Promise.all(Object.values(font).map((v) => __awaiter(void 0, void 0, void 0, function* () {
|
22
|
-
let fontData = v.data;
|
23
|
-
if (typeof fontData === 'string' && fontData.startsWith('http')) {
|
24
|
-
fontData = yield fetch(fontData).then((res) => res.arrayBuffer());
|
25
|
-
}
|
26
|
-
return pdfDoc.embedFont(fontData, {
|
27
|
-
subset: typeof v.subset === 'undefined' ? true : v.subset,
|
28
|
-
});
|
29
|
-
})));
|
30
|
-
const fontObj = Object.keys(font).reduce((acc, cur, i) => Object.assign(acc, { [cur]: fontValues[i] }), {});
|
31
|
-
embedAndGetFontObjCache.set(pdfDoc, fontObj);
|
32
|
-
return fontObj;
|
33
|
-
});
|
34
|
-
exports.embedAndGetFontObj = embedAndGetFontObj;
|
35
15
|
const getEmbeddedPagesAndEmbedPdfBoxes = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
36
16
|
const { pdfDoc, basePdf } = arg;
|
37
17
|
let embeddedPages = [];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pdfUtils.js","sourceRoot":"","sources":["../../../src/pdfUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
1
|
+
{"version":3,"file":"pdfUtils.js","sourceRoot":"","sources":["../../../src/pdfUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA6F;AAC7F,0CAAuD;AAGhD,MAAM,gCAAgC,GAAG,CAAO,GAGtD,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IAChC,IAAI,aAAa,GAAsB,EAAE,CAAC;IAC1C,IAAI,aAAa,GAAkB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACzF,MAAM,QAAQ,GAAG,MAAM,qBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAE1C,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE;QACzB,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE;QACzB,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE;KACxB,CAAC,CAAC,CAAC;IAEJ,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAEhD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,aAAa,CAAC,GAAG,CAC9C,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAyB,CACjD,CAAC;IAEF,aAAa,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,aAAa,EAAE,sBAAsB,CAAC,CAAC;IAE9F,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AAC1C,CAAC,CAAA,CAAC;AA9BW,QAAA,gCAAgC,oCA8B3C;AAEK,MAAM,gBAAgB,GAAG,CAAC,GAIhC,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5B,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC;IAChE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC,CAAC;AAXW,QAAA,gBAAgB,oBAW3B"}
|
@@ -41,6 +41,7 @@ const canvasPdf = require('./canvasPdf.json');
|
|
41
41
|
const background = require('./background.json');
|
42
42
|
const dynamicFontSizeHorizontal = require('./dynamicFontSizeHorizontal.json');
|
43
43
|
const dynamicFontSizeVertical = require('./dynamicFontSizeVertical.json');
|
44
|
+
const rotation = require('./rotation.json');
|
44
45
|
const verticalAlignmentTop = require('./verticalAlignmentTop.json');
|
45
46
|
const verticalAlignmentMiddle = require('./verticalAlignmentMiddle.json');
|
46
47
|
const verticalAlignmentBottom = require('./verticalAlignmentBottom.json');
|
@@ -112,6 +113,7 @@ export default {
|
|
112
113
|
background,
|
113
114
|
dynamicFontSizeHorizontal,
|
114
115
|
dynamicFontSizeVertical,
|
116
|
+
rotation,
|
115
117
|
verticalAlignmentTop,
|
116
118
|
verticalAlignmentMiddle,
|
117
119
|
verticalAlignmentBottom,
|