@ottoai/documents 1.2.5 → 1.3.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.
- package/dist/create/pdf/united-states/w9-form/index.js +5 -4
- package/dist/create/pdf/united-states/w9-form/index.js.map +1 -1
- package/dist/create/pdf/util/pdfme/generator/constants.d.ts +1 -0
- package/dist/create/pdf/util/pdfme/generator/constants.js +5 -0
- package/dist/create/pdf/util/pdfme/generator/constants.js.map +1 -0
- package/dist/create/pdf/util/pdfme/generator/generate.d.ts +3 -0
- package/dist/create/pdf/util/pdfme/generator/generate.js +84 -0
- package/dist/create/pdf/util/pdfme/generator/generate.js.map +1 -0
- package/dist/create/pdf/util/pdfme/generator/helper.d.ts +27 -0
- package/dist/create/pdf/util/pdfme/generator/helper.js +132 -0
- package/dist/create/pdf/util/pdfme/generator/helper.js.map +1 -0
- package/dist/create/pdf/util/pdfme/generator/index.d.ts +2 -0
- package/dist/create/pdf/util/pdfme/generator/index.js +9 -0
- package/dist/create/pdf/util/pdfme/generator/index.js.map +1 -0
- package/dist/create/pdf/util/pdfme/generator/types.d.ts +20 -0
- package/dist/create/pdf/util/pdfme/generator/types.js +3 -0
- package/dist/create/pdf/util/pdfme/generator/types.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/constants.d.ts +2 -0
- package/dist/create/pdf/util/pdfme/schemas/constants.js +6 -0
- package/dist/create/pdf/util/pdfme/schemas/constants.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/cacheKey.d.ts +2 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/cacheKey.js +6 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/cacheKey.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/image.d.ts +6 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/image.js +168 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/image.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/imagehelper.d.ts +4 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/imagehelper.js +111 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/imagehelper.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/pdfHelper.d.ts +4 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/pdfHelper.js +40 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/pdfHelper.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/svg.d.ts +5 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/svg.js +84 -0
- package/dist/create/pdf/util/pdfme/schemas/graphics/svg.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/constants.d.ts +20 -0
- package/dist/create/pdf/util/pdfme/schemas/text/constants.js +23 -0
- package/dist/create/pdf/util/pdfme/schemas/text/constants.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/extraFormatter.d.ts +26 -0
- package/dist/create/pdf/util/pdfme/schemas/text/extraFormatter.js +47 -0
- package/dist/create/pdf/util/pdfme/schemas/text/extraFormatter.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/helper.d.ts +28 -0
- package/dist/create/pdf/util/pdfme/schemas/text/helper.js +245 -0
- package/dist/create/pdf/util/pdfme/schemas/text/helper.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/icons/index.d.ts +8 -0
- package/dist/create/pdf/util/pdfme/schemas/text/icons/index.js +12 -0
- package/dist/create/pdf/util/pdfme/schemas/text/icons/index.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/index.d.ts +4 -0
- package/dist/create/pdf/util/pdfme/schemas/text/index.js +13 -0
- package/dist/create/pdf/util/pdfme/schemas/text/index.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/pdfRender.d.ts +3 -0
- package/dist/create/pdf/util/pdfme/schemas/text/pdfRender.js +137 -0
- package/dist/create/pdf/util/pdfme/schemas/text/pdfRender.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/propPanel.d.ts +3 -0
- package/dist/create/pdf/util/pdfme/schemas/text/propPanel.js +152 -0
- package/dist/create/pdf/util/pdfme/schemas/text/propPanel.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/types.d.ts +28 -0
- package/dist/create/pdf/util/pdfme/schemas/text/types.js +3 -0
- package/dist/create/pdf/util/pdfme/schemas/text/types.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/text/uiRender.d.ts +9 -0
- package/dist/create/pdf/util/pdfme/schemas/text/uiRender.js +218 -0
- package/dist/create/pdf/util/pdfme/schemas/text/uiRender.js.map +1 -0
- package/dist/create/pdf/util/pdfme/schemas/utils.d.ts +31 -0
- package/dist/create/pdf/util/pdfme/schemas/utils.js +159 -0
- package/dist/create/pdf/util/pdfme/schemas/utils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -3
|
@@ -8,8 +8,9 @@ const fs_1 = require("fs");
|
|
|
8
8
|
const util_1 = require("util");
|
|
9
9
|
const path_1 = require("path");
|
|
10
10
|
const date_fns_1 = require("date-fns");
|
|
11
|
-
const generator_1 = require("
|
|
12
|
-
const
|
|
11
|
+
const generator_1 = require("../../util/pdfme/generator");
|
|
12
|
+
const text_1 = __importDefault(require("../../util/pdfme/schemas/text"));
|
|
13
|
+
const image_1 = __importDefault(require("../../util/pdfme/schemas/graphics/image"));
|
|
13
14
|
const buffer_1 = require("../../util/buffer");
|
|
14
15
|
const constants_1 = require("../constants");
|
|
15
16
|
const schema_json_1 = __importDefault(require("./schema.json"));
|
|
@@ -42,8 +43,8 @@ const w9Form = async (data) => {
|
|
|
42
43
|
schemas: [schema_json_1.default],
|
|
43
44
|
};
|
|
44
45
|
const plugins = {
|
|
45
|
-
Text:
|
|
46
|
-
Image:
|
|
46
|
+
Text: text_1.default,
|
|
47
|
+
Image: image_1.default,
|
|
47
48
|
};
|
|
48
49
|
const inputs = w9FormCoordinates(data);
|
|
49
50
|
return (0, generator_1.generate)({ template, inputs, plugins }).then((pdf) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/create/pdf/united-states/w9-form/index.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8B;AAC9B,+BAAiC;AACjC,+BAA+B;AAC/B,uCAAkC;AAElC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/create/pdf/united-states/w9-form/index.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8B;AAC9B,+BAAiC;AACjC,+BAA+B;AAC/B,uCAAkC;AAElC,0DAAsD;AACtD,yEAAuD;AACvD,oFAAkE;AAElE,8CAA4D;AAC5D,4CAAoE;AACpE,gEAAyC;AAGzC,MAAM,eAAe,GAAG,IAAA,gBAAS,EAAC,aAAQ,CAAC,CAAC;AAE5C,MAAM,iBAAiB,GAAG,CAAC,IAAmB,EAA4B,EAAE;IAC1E,MAAM,KAAK,GAAG,IAAA,iBAAM,EAAC,IAAI,IAAI,EAAE,EAAE,iCAAqB,CAAC,CAAC;IACxD,OAAO;QACL;YACE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE;YACpB,YAAY,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE;YACpC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YACzC,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YAC1F,IAAI,EAAE,GAAG,KAAK,EAAE;YAChB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,CAAC,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE,yBAAa;SACvD;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,IAAI,iBAAyB,CAAC;AAC9B,MAAM,cAAc,GAAG,KAAK,IAAqB,EAAE;IACjD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,iBAAiB,GAAG,MAAM,eAAe,CACvC,IAAA,cAAO,EAAC,SAAS,EAAE,gBAAgB,CAAC,CACrC,CAAC;IACJ,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAKK,MAAM,MAAM,GAAG,KAAK,EAAE,IAAmB,EAAmB,EAAE;IACnE,MAAM,SAAS,GAAG,MAAM,cAAc,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAa;QACzB,OAAO,EAAE,IAAA,sBAAa,EAAC,SAAS,CAAC;QACjC,OAAO,EAAE,CAAC,qBAAY,CAAC;KACxB,CAAC;IAEF,MAAM,OAAO,GAAG;QACd,IAAI,EAAE,cAAU;QAChB,KAAK,EAAE,eAAW;KACnB,CAAC;IACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1D,OAAO,IAAA,iBAAQ,EAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAfW,QAAA,MAAM,UAejB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const TOOL_NAME: "pdfme (https://pdfme.com/)";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/generator/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,4BAAqC,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
const pdfLib = __importStar(require("@pdfme/pdf-lib"));
|
|
27
|
+
const common_1 = require("@pdfme/common");
|
|
28
|
+
const helper_1 = require("./helper");
|
|
29
|
+
const generate = async (props) => {
|
|
30
|
+
(0, common_1.checkGenerateProps)(props);
|
|
31
|
+
const { inputs, template, options = {}, plugins: userPlugins = {} } = props;
|
|
32
|
+
const basePdf = template.basePdf;
|
|
33
|
+
if (inputs.length === 0) {
|
|
34
|
+
throw new Error('[@pdfme/generator] inputs should not be empty, pass at least an empty object in the array');
|
|
35
|
+
}
|
|
36
|
+
(0, helper_1.validateRequiredFields)(template, inputs);
|
|
37
|
+
const { pdfDoc, renderObj } = await (0, helper_1.preprocessing)({ template, userPlugins });
|
|
38
|
+
const _cache = new Map();
|
|
39
|
+
for (let i = 0; i < inputs.length; i += 1) {
|
|
40
|
+
const input = inputs[i];
|
|
41
|
+
const dynamicTemplate = await (0, common_1.getDynamicTemplate)({
|
|
42
|
+
template,
|
|
43
|
+
input,
|
|
44
|
+
options,
|
|
45
|
+
_cache,
|
|
46
|
+
getDynamicHeights: (value, args) => {
|
|
47
|
+
switch (args.schema.type) {
|
|
48
|
+
default:
|
|
49
|
+
return Promise.resolve([args.schema.height]);
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
const { basePages, embedPdfBoxes } = await (0, helper_1.getEmbedPdfPages)({
|
|
54
|
+
template: dynamicTemplate,
|
|
55
|
+
pdfDoc,
|
|
56
|
+
});
|
|
57
|
+
const schemaNames = [
|
|
58
|
+
...new Set(dynamicTemplate.schemas.flatMap((page) => page.map((schema) => schema.name))),
|
|
59
|
+
];
|
|
60
|
+
for (let j = 0; j < basePages.length; j += 1) {
|
|
61
|
+
const basePage = basePages[j];
|
|
62
|
+
const embedPdfBox = embedPdfBoxes[j];
|
|
63
|
+
const page = (0, helper_1.insertPage)({ basePage, embedPdfBox, pdfDoc });
|
|
64
|
+
for (let l = 0; l < schemaNames.length; l += 1) {
|
|
65
|
+
const name = schemaNames[l];
|
|
66
|
+
const schemaPage = dynamicTemplate.schemas[j] || [];
|
|
67
|
+
const schema = schemaPage.find((s) => s.name == name);
|
|
68
|
+
if (!schema) {
|
|
69
|
+
continue;
|
|
70
|
+
}
|
|
71
|
+
const render = renderObj[schema.type];
|
|
72
|
+
if (!render) {
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
const value = schema.readOnly ? schema.content || '' : input[name];
|
|
76
|
+
await render({ value, schema, basePdf, pdfLib, pdfDoc, page, options, _cache });
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
(0, helper_1.postProcessing)({ pdfDoc, options });
|
|
81
|
+
return pdfDoc.save();
|
|
82
|
+
};
|
|
83
|
+
exports.default = generate;
|
|
84
|
+
//# sourceMappingURL=generate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/generator/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Schema, Plugins, GeneratorOptions, Template, PDFRenderProps } from '@pdfme/common';
|
|
2
|
+
import { PDFPage, PDFDocument, PDFEmbeddedPage } from '@pdfme/pdf-lib';
|
|
3
|
+
import type { EmbedPdfBox } from './types';
|
|
4
|
+
export declare const getEmbedPdfPages: (arg: {
|
|
5
|
+
template: Template;
|
|
6
|
+
pdfDoc: PDFDocument;
|
|
7
|
+
}) => Promise<{
|
|
8
|
+
basePages: (PDFPage | PDFEmbeddedPage)[];
|
|
9
|
+
embedPdfBoxes: EmbedPdfBox[];
|
|
10
|
+
}>;
|
|
11
|
+
export declare const validateRequiredFields: (template: Template, inputs: Record<string, any>[]) => void;
|
|
12
|
+
export declare const preprocessing: (arg: {
|
|
13
|
+
template: Template;
|
|
14
|
+
userPlugins: Plugins;
|
|
15
|
+
}) => Promise<{
|
|
16
|
+
pdfDoc: PDFDocument;
|
|
17
|
+
renderObj: Record<string, (arg: PDFRenderProps<Schema>) => Promise<void> | void>;
|
|
18
|
+
}>;
|
|
19
|
+
export declare const postProcessing: (props: {
|
|
20
|
+
pdfDoc: PDFDocument;
|
|
21
|
+
options: GeneratorOptions;
|
|
22
|
+
}) => void;
|
|
23
|
+
export declare const insertPage: (arg: {
|
|
24
|
+
basePage: PDFEmbeddedPage | PDFPage;
|
|
25
|
+
embedPdfBox: EmbedPdfBox;
|
|
26
|
+
pdfDoc: PDFDocument;
|
|
27
|
+
}) => PDFPage;
|
|
@@ -0,0 +1,132 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.insertPage = exports.postProcessing = exports.preprocessing = exports.validateRequiredFields = exports.getEmbedPdfPages = void 0;
|
|
30
|
+
const fontkit = __importStar(require("fontkit"));
|
|
31
|
+
const common_1 = require("@pdfme/common");
|
|
32
|
+
const pdf_lib_1 = require("@pdfme/pdf-lib");
|
|
33
|
+
const text_1 = __importDefault(require("../schemas/text"));
|
|
34
|
+
const constants_1 = require("./constants");
|
|
35
|
+
const builtInPlugins = { Text: text_1.default };
|
|
36
|
+
const getEmbedPdfPages = async (arg) => {
|
|
37
|
+
const { template: { schemas, basePdf }, pdfDoc, } = arg;
|
|
38
|
+
let basePages = [];
|
|
39
|
+
let embedPdfBoxes = [];
|
|
40
|
+
if ((0, common_1.isBlankPdf)(basePdf)) {
|
|
41
|
+
const { width: _width, height: _height } = basePdf;
|
|
42
|
+
const width = (0, common_1.mm2pt)(_width);
|
|
43
|
+
const height = (0, common_1.mm2pt)(_height);
|
|
44
|
+
basePages = schemas.map(() => {
|
|
45
|
+
const page = pdf_lib_1.PDFPage.create(pdfDoc);
|
|
46
|
+
page.setSize(width, height);
|
|
47
|
+
return page;
|
|
48
|
+
});
|
|
49
|
+
embedPdfBoxes = schemas.map(() => ({
|
|
50
|
+
mediaBox: { x: 0, y: 0, width, height },
|
|
51
|
+
bleedBox: { x: 0, y: 0, width, height },
|
|
52
|
+
trimBox: { x: 0, y: 0, width, height },
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
const willLoadPdf = typeof basePdf === 'string' ? await (0, common_1.getB64BasePdf)(basePdf) : basePdf;
|
|
57
|
+
const embedPdf = await pdf_lib_1.PDFDocument.load(willLoadPdf);
|
|
58
|
+
const embedPdfPages = embedPdf.getPages();
|
|
59
|
+
embedPdfBoxes = embedPdfPages.map((p) => ({
|
|
60
|
+
mediaBox: p.getMediaBox(),
|
|
61
|
+
bleedBox: p.getBleedBox(),
|
|
62
|
+
trimBox: p.getTrimBox(),
|
|
63
|
+
}));
|
|
64
|
+
const boundingBoxes = embedPdfPages.map((p) => {
|
|
65
|
+
const { x, y, width, height } = p.getMediaBox();
|
|
66
|
+
return { left: x, bottom: y, right: width, top: height + y };
|
|
67
|
+
});
|
|
68
|
+
const transformationMatrices = embedPdfPages.map(() => [1, 0, 0, 1, 0, 0]);
|
|
69
|
+
basePages = await pdfDoc.embedPages(embedPdfPages, boundingBoxes, transformationMatrices);
|
|
70
|
+
}
|
|
71
|
+
return { basePages, embedPdfBoxes };
|
|
72
|
+
};
|
|
73
|
+
exports.getEmbedPdfPages = getEmbedPdfPages;
|
|
74
|
+
const validateRequiredFields = (template, inputs) => {
|
|
75
|
+
template.schemas.forEach((schemaPage) => schemaPage.forEach(schema => {
|
|
76
|
+
if (schema.required && !schema.readOnly && !inputs.some((input) => input[schema.name])) {
|
|
77
|
+
throw new Error(`[@pdfme/generator] input for '${schema.name}' is required to generate this PDF`);
|
|
78
|
+
}
|
|
79
|
+
}));
|
|
80
|
+
};
|
|
81
|
+
exports.validateRequiredFields = validateRequiredFields;
|
|
82
|
+
const preprocessing = async (arg) => {
|
|
83
|
+
const { template, userPlugins } = arg;
|
|
84
|
+
const { schemas } = template;
|
|
85
|
+
const pdfDoc = await pdf_lib_1.PDFDocument.create();
|
|
86
|
+
pdfDoc.registerFontkit(fontkit);
|
|
87
|
+
const pluginValues = (Object.values(userPlugins).length > 0
|
|
88
|
+
? Object.values(userPlugins)
|
|
89
|
+
: Object.values(builtInPlugins));
|
|
90
|
+
const schemaTypes = schemas.flatMap(schemaPage => schemaPage.map((schema) => schema.type));
|
|
91
|
+
const renderObj = schemaTypes.reduce((acc, type) => {
|
|
92
|
+
const render = pluginValues.find((pv) => pv.propPanel.defaultSchema.type === type);
|
|
93
|
+
if (!render) {
|
|
94
|
+
throw new Error(`[@pdfme/generator] Renderer for type ${type} not found.
|
|
95
|
+
Check this document: https://pdfme.com/docs/custom-schemas`);
|
|
96
|
+
}
|
|
97
|
+
return { ...acc, [type]: render.pdf };
|
|
98
|
+
}, {});
|
|
99
|
+
return { pdfDoc, renderObj };
|
|
100
|
+
};
|
|
101
|
+
exports.preprocessing = preprocessing;
|
|
102
|
+
const postProcessing = (props) => {
|
|
103
|
+
const { pdfDoc, options } = props;
|
|
104
|
+
const { author = constants_1.TOOL_NAME, creationDate = new Date(), creator = constants_1.TOOL_NAME, keywords = [], lang = 'en', modificationDate = new Date(), producer = constants_1.TOOL_NAME, subject = '', title = '', } = options;
|
|
105
|
+
pdfDoc.setAuthor(author);
|
|
106
|
+
pdfDoc.setCreationDate(creationDate);
|
|
107
|
+
pdfDoc.setCreator(creator);
|
|
108
|
+
pdfDoc.setKeywords(keywords);
|
|
109
|
+
pdfDoc.setLanguage(lang);
|
|
110
|
+
pdfDoc.setModificationDate(modificationDate);
|
|
111
|
+
pdfDoc.setProducer(producer);
|
|
112
|
+
pdfDoc.setSubject(subject);
|
|
113
|
+
pdfDoc.setTitle(title);
|
|
114
|
+
};
|
|
115
|
+
exports.postProcessing = postProcessing;
|
|
116
|
+
const insertPage = (arg) => {
|
|
117
|
+
const { basePage, embedPdfBox, pdfDoc } = arg;
|
|
118
|
+
const size = basePage instanceof pdf_lib_1.PDFEmbeddedPage ? basePage.size() : basePage.getSize();
|
|
119
|
+
const insertedPage = basePage instanceof pdf_lib_1.PDFEmbeddedPage
|
|
120
|
+
? pdfDoc.addPage([size.width, size.height])
|
|
121
|
+
: pdfDoc.addPage(basePage);
|
|
122
|
+
if (basePage instanceof pdf_lib_1.PDFEmbeddedPage) {
|
|
123
|
+
insertedPage.drawPage(basePage);
|
|
124
|
+
const { mediaBox, bleedBox, trimBox } = embedPdfBox;
|
|
125
|
+
insertedPage.setMediaBox(mediaBox.x, mediaBox.y, mediaBox.width, mediaBox.height);
|
|
126
|
+
insertedPage.setBleedBox(bleedBox.x, bleedBox.y, bleedBox.width, bleedBox.height);
|
|
127
|
+
insertedPage.setTrimBox(trimBox.x, trimBox.y, trimBox.width, trimBox.height);
|
|
128
|
+
}
|
|
129
|
+
return insertedPage;
|
|
130
|
+
};
|
|
131
|
+
exports.insertPage = insertPage;
|
|
132
|
+
//# sourceMappingURL=helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/generator/helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
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_1 = __importDefault(require("./generate"));
|
|
8
|
+
exports.generate = generate_1.default;
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/generator/index.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAEzB,mBAFF,kBAAQ,CAEE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export type EmbedPdfBox = {
|
|
2
|
+
mediaBox: {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
bleedBox: {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
13
|
+
};
|
|
14
|
+
trimBox: {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/generator/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/create/pdf/util/pdfme/schemas/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,CAAC,CAAC;AACpB,QAAA,iBAAiB,GAAG,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cacheKey.js","sourceRoot":"","sources":["../../../../../../../src/create/pdf/util/pdfme/schemas/graphics/cacheKey.ts"],"names":[],"mappings":";;;AAEO,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;AAA1E,QAAA,WAAW,eAA+D"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const common_1 = require("@pdfme/common");
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
const imagehelper_1 = require("./imagehelper");
|
|
7
|
+
const pdfHelper_1 = require("./pdfHelper");
|
|
8
|
+
const getCacheKey = (schema, input) => `${schema.type}${input}`;
|
|
9
|
+
const fullSize = { width: '100%', height: '100%' };
|
|
10
|
+
const defaultValue = 'data:image/png;base64,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';
|
|
11
|
+
const imageSchema = {
|
|
12
|
+
pdf: async (arg) => {
|
|
13
|
+
const { value, schema, pdfDoc, page, _cache } = arg;
|
|
14
|
+
if (!value)
|
|
15
|
+
return;
|
|
16
|
+
const isGraphicPdf = (0, pdfHelper_1.isPdf)(value);
|
|
17
|
+
const isImageOrPdf = value.startsWith('data:image/') || isGraphicPdf;
|
|
18
|
+
if (!isImageOrPdf)
|
|
19
|
+
return;
|
|
20
|
+
const inputImageCacheKey = getCacheKey(schema, value);
|
|
21
|
+
let image = _cache.get(inputImageCacheKey);
|
|
22
|
+
if (!image) {
|
|
23
|
+
if (isGraphicPdf) {
|
|
24
|
+
[image] = await pdfDoc.embedPdf(value);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
const isPng = value.startsWith('data:image/png;');
|
|
28
|
+
image = await (isPng ? pdfDoc.embedPng(value) : pdfDoc.embedJpg(value));
|
|
29
|
+
}
|
|
30
|
+
_cache.set(inputImageCacheKey, image);
|
|
31
|
+
}
|
|
32
|
+
const _schema = { ...schema, position: { ...schema.position } };
|
|
33
|
+
const dimension = isGraphicPdf ? image.scale(1) : (0, imagehelper_1.getImageDimension)(value);
|
|
34
|
+
const imageWidth = (0, common_1.px2mm)(dimension.width);
|
|
35
|
+
const imageHeight = (0, common_1.px2mm)(dimension.height);
|
|
36
|
+
const boxWidth = _schema.width;
|
|
37
|
+
const boxHeight = _schema.height;
|
|
38
|
+
const imageRatio = imageWidth / imageHeight;
|
|
39
|
+
const boxRatio = boxWidth / boxHeight;
|
|
40
|
+
if (imageRatio > boxRatio) {
|
|
41
|
+
_schema.width = boxWidth;
|
|
42
|
+
_schema.height = boxWidth / imageRatio;
|
|
43
|
+
_schema.position.y += (boxHeight - _schema.height) / 2;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
_schema.width = boxHeight * imageRatio;
|
|
47
|
+
_schema.height = boxHeight;
|
|
48
|
+
_schema.position.x += (boxWidth - _schema.width) / 2;
|
|
49
|
+
}
|
|
50
|
+
const pageHeight = page.getHeight();
|
|
51
|
+
const lProps = (0, utils_1.convertForPdfLayoutProps)({ schema: _schema, pageHeight });
|
|
52
|
+
const { width, height, rotate, position, opacity } = lProps;
|
|
53
|
+
const { x, y } = position;
|
|
54
|
+
const drawOptions = { x, y, rotate, width, height, opacity };
|
|
55
|
+
isGraphicPdf
|
|
56
|
+
? page.drawPage(image, drawOptions)
|
|
57
|
+
: page.drawImage(image, drawOptions);
|
|
58
|
+
},
|
|
59
|
+
ui: async (arg) => {
|
|
60
|
+
const { value, rootElement, mode, onChange, stopEditing, tabIndex, placeholder, theme, schema, } = arg;
|
|
61
|
+
const editable = (0, utils_1.isEditable)(mode, schema);
|
|
62
|
+
const isDefault = value === defaultValue;
|
|
63
|
+
const container = document.createElement('div');
|
|
64
|
+
const backgroundStyle = placeholder ? `url(${placeholder})` : 'none';
|
|
65
|
+
const containerStyle = {
|
|
66
|
+
...fullSize,
|
|
67
|
+
backgroundImage: value ? 'none' : backgroundStyle,
|
|
68
|
+
backgroundSize: `contain`,
|
|
69
|
+
backgroundRepeat: 'no-repeat',
|
|
70
|
+
backgroundPosition: 'center',
|
|
71
|
+
};
|
|
72
|
+
Object.assign(container.style, containerStyle);
|
|
73
|
+
container.addEventListener('click', (e) => {
|
|
74
|
+
if (editable) {
|
|
75
|
+
e.stopPropagation();
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
rootElement.appendChild(container);
|
|
79
|
+
if (value) {
|
|
80
|
+
const src = (0, pdfHelper_1.isPdf)(value) ? await (0, pdfHelper_1.pdfToImage)(arg) : value;
|
|
81
|
+
const img = document.createElement('img');
|
|
82
|
+
const imgStyle = {
|
|
83
|
+
height: '100%',
|
|
84
|
+
width: '100%',
|
|
85
|
+
borderRadius: 0,
|
|
86
|
+
objectFit: 'contain',
|
|
87
|
+
};
|
|
88
|
+
Object.assign(img.style, imgStyle);
|
|
89
|
+
img.src = src;
|
|
90
|
+
container.appendChild(img);
|
|
91
|
+
}
|
|
92
|
+
if (value && !isDefault && editable) {
|
|
93
|
+
const button = document.createElement('button');
|
|
94
|
+
button.textContent = 'x';
|
|
95
|
+
const buttonStyle = {
|
|
96
|
+
position: 'absolute',
|
|
97
|
+
top: 0,
|
|
98
|
+
left: 0,
|
|
99
|
+
zIndex: 1,
|
|
100
|
+
display: 'flex',
|
|
101
|
+
justifyContent: 'center',
|
|
102
|
+
alignItems: 'center',
|
|
103
|
+
color: '#333',
|
|
104
|
+
background: '#f2f2f2',
|
|
105
|
+
borderRadius: '2px',
|
|
106
|
+
border: '1px solid #767676',
|
|
107
|
+
cursor: 'pointer',
|
|
108
|
+
height: '24px',
|
|
109
|
+
width: '24px',
|
|
110
|
+
};
|
|
111
|
+
Object.assign(button.style, buttonStyle);
|
|
112
|
+
button.addEventListener('click', () => {
|
|
113
|
+
onChange && onChange({ key: 'content', value: '' });
|
|
114
|
+
});
|
|
115
|
+
container.appendChild(button);
|
|
116
|
+
}
|
|
117
|
+
if ((!value || isDefault) && editable) {
|
|
118
|
+
const label = document.createElement('label');
|
|
119
|
+
const labelStyle = {
|
|
120
|
+
...fullSize,
|
|
121
|
+
display: editable ? 'flex' : 'none',
|
|
122
|
+
position: 'absolute',
|
|
123
|
+
top: 0,
|
|
124
|
+
backgroundColor: editable || value ? (0, utils_1.addAlphaToHex)(theme.colorPrimaryBg, 30) : 'none',
|
|
125
|
+
cursor: 'pointer',
|
|
126
|
+
};
|
|
127
|
+
Object.assign(label.style, labelStyle);
|
|
128
|
+
container.appendChild(label);
|
|
129
|
+
const input = document.createElement('input');
|
|
130
|
+
const inputStyle = {
|
|
131
|
+
...fullSize,
|
|
132
|
+
position: 'absolute',
|
|
133
|
+
top: '50%',
|
|
134
|
+
left: '50%',
|
|
135
|
+
width: '180px',
|
|
136
|
+
height: '30px',
|
|
137
|
+
marginLeft: '-90px',
|
|
138
|
+
marginTop: '-15px',
|
|
139
|
+
};
|
|
140
|
+
Object.assign(input.style, inputStyle);
|
|
141
|
+
input.tabIndex = tabIndex || 0;
|
|
142
|
+
input.type = 'file';
|
|
143
|
+
input.accept = 'image/jpeg, image/png, application/pdf';
|
|
144
|
+
input.addEventListener('change', (event) => {
|
|
145
|
+
const changeEvent = event;
|
|
146
|
+
(0, utils_1.readFile)(changeEvent.target.files).then((result) => onChange && onChange({ key: 'content', value: result }));
|
|
147
|
+
});
|
|
148
|
+
input.addEventListener('blur', () => stopEditing && stopEditing());
|
|
149
|
+
label.appendChild(input);
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
propPanel: {
|
|
153
|
+
schema: {},
|
|
154
|
+
defaultSchema: {
|
|
155
|
+
name: '',
|
|
156
|
+
type: 'image',
|
|
157
|
+
content: defaultValue,
|
|
158
|
+
position: { x: 0, y: 0 },
|
|
159
|
+
width: 40,
|
|
160
|
+
height: 40,
|
|
161
|
+
rotate: 0,
|
|
162
|
+
opacity: constants_1.DEFAULT_OPACITY,
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
icon: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-image"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"/></svg>',
|
|
166
|
+
};
|
|
167
|
+
exports.default = imageSchema;
|
|
168
|
+
//# sourceMappingURL=image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../../../../../../src/create/pdf/util/pdfme/schemas/graphics/image.ts"],"names":[],"mappings":"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"}
|