@pdfme/generator 1.0.18 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/__tests__/assets/templates/index.js +111 -0
- package/dist/cjs/__tests__/assets/templates/index.js.map +1 -0
- package/dist/cjs/__tests__/generate.test.js +362 -0
- package/dist/cjs/__tests__/generate.test.js.map +1 -0
- package/dist/cjs/__tests__/helper.test.js +53 -0
- package/dist/cjs/__tests__/helper.test.js.map +1 -0
- package/dist/cjs/src/constants.js +5 -0
- package/dist/cjs/src/constants.js.map +1 -0
- package/dist/cjs/src/generate.js +75 -0
- package/dist/cjs/src/generate.js.map +1 -0
- package/dist/cjs/src/helper.js +296 -0
- package/dist/cjs/src/helper.js.map +1 -0
- package/dist/cjs/src/index.js +20 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/esm/__tests__/assets/templates/index.js +109 -0
- package/dist/esm/__tests__/assets/templates/index.js.map +1 -0
- package/dist/esm/__tests__/generate.test.js +334 -0
- package/dist/esm/__tests__/generate.test.js.map +1 -0
- package/dist/esm/__tests__/helper.test.js +48 -0
- package/dist/esm/__tests__/helper.test.js.map +1 -0
- package/dist/esm/src/constants.js +2 -0
- package/dist/esm/src/constants.js.map +1 -0
- package/dist/esm/src/generate.js +70 -0
- package/dist/esm/src/generate.js.map +1 -0
- package/dist/esm/src/helper.js +285 -0
- package/dist/esm/src/helper.js.map +1 -0
- package/dist/esm/src/index.js +4 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/types/__tests__/assets/templates/index.d.ts +1563 -0
- package/dist/types/__tests__/generate.test.d.ts +1 -0
- package/dist/types/__tests__/helper.test.d.ts +1 -0
- package/dist/types/{constants.d.ts → src/constants.d.ts} +0 -0
- package/dist/types/{generate.d.ts → src/generate.d.ts} +0 -0
- package/dist/types/{helper.d.ts → src/helper.d.ts} +1 -0
- package/dist/types/{index.d.ts → src/index.d.ts} +1 -1
- package/package.json +18 -12
- package/src/generate.ts +2 -2
- package/src/helper.ts +3 -5
- package/src/index.ts +1 -1
- package/tsconfig.cjs.json +9 -0
- package/tsconfig.esm.json +9 -0
- package/declaration.d.ts +0 -3
- package/dist/index.js +0 -3
- package/dist/index.js.LICENSE.txt +0 -43
- package/dist/index.js.map +0 -1
- package/tsconfig.json +0 -21
- package/webpack.config.js +0 -59
@@ -0,0 +1,296 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.drawEmbeddedPage = exports.drawInputByTemplateSchema = exports.getEmbeddedPagesAndEmbedPdfBoxes = exports.embedAndGetFontObj = exports.createBarCode = void 0;
|
16
|
+
const pdf_lib_1 = require("pdf-lib");
|
17
|
+
const bwip_js_1 = __importDefault(require("bwip-js"));
|
18
|
+
const common_1 = require("@pdfme/common");
|
19
|
+
const barCodeType2Bcid = (type) => (type === 'nw7' ? 'rationalizedCodabar' : type);
|
20
|
+
const createBarCode = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
21
|
+
const { type, input, width, height, backgroundColor } = arg;
|
22
|
+
const bcid = barCodeType2Bcid(type);
|
23
|
+
const includetext = true;
|
24
|
+
const scale = 5;
|
25
|
+
const bwipjsArg = { bcid, text: input, width, height, scale, includetext };
|
26
|
+
if (backgroundColor) {
|
27
|
+
bwipjsArg.backgroundcolor = backgroundColor;
|
28
|
+
}
|
29
|
+
let res;
|
30
|
+
if (typeof window !== 'undefined') {
|
31
|
+
const canvas = document.createElement('canvas');
|
32
|
+
bwip_js_1.default.toCanvas(canvas, bwipjsArg);
|
33
|
+
const dataUrl = canvas.toDataURL('image/png');
|
34
|
+
res = (0, common_1.b64toUint8Array)(dataUrl).buffer;
|
35
|
+
}
|
36
|
+
else {
|
37
|
+
res = yield bwip_js_1.default.toBuffer(bwipjsArg);
|
38
|
+
}
|
39
|
+
return res;
|
40
|
+
});
|
41
|
+
exports.createBarCode = createBarCode;
|
42
|
+
const embedAndGetFontObj = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
43
|
+
const { pdfDoc, font } = arg;
|
44
|
+
const fontValues = yield Promise.all(Object.values(font).map((v) => pdfDoc.embedFont(v.data, {
|
45
|
+
subset: typeof v.subset === 'undefined' ? true : v.subset,
|
46
|
+
})));
|
47
|
+
return Object.keys(font).reduce((acc, cur, i) => Object.assign(acc, { [cur]: fontValues[i] }), {});
|
48
|
+
});
|
49
|
+
exports.embedAndGetFontObj = embedAndGetFontObj;
|
50
|
+
const getEmbeddedPagesAndEmbedPdfBoxes = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
51
|
+
const { pdfDoc, basePdf } = arg;
|
52
|
+
let embeddedPages = [];
|
53
|
+
let embedPdfBoxes = [];
|
54
|
+
const willLoadPdf = typeof basePdf === 'string' ? yield (0, common_1.getB64BasePdf)(basePdf) : basePdf;
|
55
|
+
const embedPdf = yield pdf_lib_1.PDFDocument.load(willLoadPdf);
|
56
|
+
const embedPdfPages = embedPdf.getPages();
|
57
|
+
embedPdfBoxes = embedPdfPages.map((p) => ({
|
58
|
+
mediaBox: p.getMediaBox(),
|
59
|
+
bleedBox: p.getBleedBox(),
|
60
|
+
trimBox: p.getTrimBox(),
|
61
|
+
}));
|
62
|
+
const boundingBoxes = embedPdfPages.map((p) => {
|
63
|
+
const { x, y, width, height } = p.getMediaBox();
|
64
|
+
return { left: x, bottom: y, right: width, top: height + y };
|
65
|
+
});
|
66
|
+
const transformationMatrices = embedPdfPages.map(() => [1, 0, 0, 1, 0, 0]);
|
67
|
+
embeddedPages = yield pdfDoc.embedPages(embedPdfPages, boundingBoxes, transformationMatrices);
|
68
|
+
return { embeddedPages, embedPdfBoxes };
|
69
|
+
});
|
70
|
+
exports.getEmbeddedPagesAndEmbedPdfBoxes = getEmbeddedPagesAndEmbedPdfBoxes;
|
71
|
+
const mm2pt = (mm) => {
|
72
|
+
// https://www.ddc.co.jp/words/archives/20090701114500.html
|
73
|
+
const ptRatio = 2.8346;
|
74
|
+
return parseFloat(String(mm)) * ptRatio;
|
75
|
+
};
|
76
|
+
const getSchemaSizeAndRotate = (schema) => {
|
77
|
+
const width = mm2pt(schema.width);
|
78
|
+
const height = mm2pt(schema.height);
|
79
|
+
const rotate = (0, pdf_lib_1.degrees)(schema.rotate ? schema.rotate : 0);
|
80
|
+
return { width, height, rotate };
|
81
|
+
};
|
82
|
+
const hex2rgb = (hex) => {
|
83
|
+
if (hex.slice(0, 1) === '#')
|
84
|
+
hex = hex.slice(1);
|
85
|
+
if (hex.length === 3)
|
86
|
+
hex =
|
87
|
+
hex.slice(0, 1) +
|
88
|
+
hex.slice(0, 1) +
|
89
|
+
hex.slice(1, 2) +
|
90
|
+
hex.slice(1, 2) +
|
91
|
+
hex.slice(2, 3) +
|
92
|
+
hex.slice(2, 3);
|
93
|
+
return [hex.slice(0, 2), hex.slice(2, 4), hex.slice(4, 6)].map((str) => parseInt(str, 16));
|
94
|
+
};
|
95
|
+
const hex2RgbColor = (hexString) => {
|
96
|
+
if (hexString) {
|
97
|
+
const [r, g, b] = hex2rgb(hexString);
|
98
|
+
return (0, pdf_lib_1.rgb)(r / 255, g / 255, b / 255);
|
99
|
+
}
|
100
|
+
// eslint-disable-next-line no-undefined
|
101
|
+
return undefined;
|
102
|
+
};
|
103
|
+
const getFontProp = (schema) => {
|
104
|
+
var _a, _b, _c, _d, _e;
|
105
|
+
const size = (_a = schema.fontSize) !== null && _a !== void 0 ? _a : common_1.DEFAULT_FONT_SIZE;
|
106
|
+
const color = hex2RgbColor((_b = schema.fontColor) !== null && _b !== void 0 ? _b : common_1.DEFAULT_FONT_COLOR);
|
107
|
+
const alignment = (_c = schema.alignment) !== null && _c !== void 0 ? _c : common_1.DEFAULT_ALIGNMENT;
|
108
|
+
const lineHeight = (_d = schema.lineHeight) !== null && _d !== void 0 ? _d : common_1.DEFAULT_LINE_HEIGHT;
|
109
|
+
const characterSpacing = (_e = schema.characterSpacing) !== null && _e !== void 0 ? _e : common_1.DEFAULT_CHARACTER_SPACING;
|
110
|
+
return { size, color, alignment, lineHeight, characterSpacing };
|
111
|
+
};
|
112
|
+
const calcX = (x, alignment, boxWidth, textWidth) => {
|
113
|
+
let addition = 0;
|
114
|
+
if (alignment === 'center') {
|
115
|
+
addition = (boxWidth - textWidth) / 2;
|
116
|
+
}
|
117
|
+
else if (alignment === 'right') {
|
118
|
+
addition = boxWidth - textWidth;
|
119
|
+
}
|
120
|
+
return mm2pt(x) + addition;
|
121
|
+
};
|
122
|
+
const calcY = (y, height, itemHeight) => height - mm2pt(y) - itemHeight;
|
123
|
+
const drawBackgroundColor = (arg) => {
|
124
|
+
const { templateSchema, page, pageHeight } = arg;
|
125
|
+
if (!templateSchema.backgroundColor)
|
126
|
+
return;
|
127
|
+
const { width, height } = getSchemaSizeAndRotate(templateSchema);
|
128
|
+
const color = hex2RgbColor(templateSchema.backgroundColor);
|
129
|
+
page.drawRectangle({
|
130
|
+
x: calcX(templateSchema.position.x, 'left', width, width),
|
131
|
+
y: calcY(templateSchema.position.y, pageHeight, height),
|
132
|
+
width,
|
133
|
+
height,
|
134
|
+
color,
|
135
|
+
});
|
136
|
+
};
|
137
|
+
/**
|
138
|
+
* Incrementally check the current line for it's real length
|
139
|
+
* and return the position where it exceeds the box width.
|
140
|
+
*
|
141
|
+
* return `null` to indicate if inputLine is shorter as the available bbox
|
142
|
+
*/
|
143
|
+
const getOverPosition = (inputLine, isOverEval) => {
|
144
|
+
for (let i = 0; i <= inputLine.length; i += 1) {
|
145
|
+
if (isOverEval(inputLine.substr(0, i))) {
|
146
|
+
return i;
|
147
|
+
}
|
148
|
+
}
|
149
|
+
return null;
|
150
|
+
};
|
151
|
+
/**
|
152
|
+
* Get position of the split. Split the exceeding line at
|
153
|
+
* the last whitespace over it exceeds the bounding box width.
|
154
|
+
*/
|
155
|
+
const getSplitPosition = (inputLine, isOverEval) => {
|
156
|
+
const overPos = getOverPosition(inputLine, isOverEval);
|
157
|
+
/**
|
158
|
+
* if input line is shorter as the available space. We split at the end of the line
|
159
|
+
*/
|
160
|
+
if (overPos === null)
|
161
|
+
return inputLine.length;
|
162
|
+
let overPosTmp = overPos;
|
163
|
+
while (inputLine[overPosTmp] !== ' ' && overPosTmp >= 0)
|
164
|
+
overPosTmp -= 1;
|
165
|
+
/**
|
166
|
+
* for very long lines with no whitespace use the original overPos and
|
167
|
+
* split one char over so we do not overfill the box
|
168
|
+
*/
|
169
|
+
return overPosTmp > 0 ? overPosTmp : overPos - 1;
|
170
|
+
};
|
171
|
+
/**
|
172
|
+
* recursively split the line at getSplitPosition.
|
173
|
+
* If there is some leftover, split the rest again in the same manner.
|
174
|
+
*/
|
175
|
+
const getSplittedLines = (inputLine, isOverEval) => {
|
176
|
+
const splitPos = getSplitPosition(inputLine, isOverEval);
|
177
|
+
const splittedLine = inputLine.substr(0, splitPos);
|
178
|
+
const rest = inputLine.slice(splitPos).trimLeft();
|
179
|
+
/**
|
180
|
+
* end recursion if there is no rest, return single splitted line in an array
|
181
|
+
* so we can join them over the recursion
|
182
|
+
*/
|
183
|
+
if (rest.length === 0) {
|
184
|
+
return [splittedLine];
|
185
|
+
}
|
186
|
+
return [splittedLine, ...getSplittedLines(rest, isOverEval)];
|
187
|
+
};
|
188
|
+
const drawInputByTextSchema = (arg) => {
|
189
|
+
const { input, templateSchema, page, pageHeight, textSchemaSetting } = arg;
|
190
|
+
const { fontObj, fallbackFontName, splitThreshold } = textSchemaSetting;
|
191
|
+
const fontValue = fontObj[templateSchema.fontName ? templateSchema.fontName : fallbackFontName];
|
192
|
+
drawBackgroundColor({ templateSchema, page, pageHeight });
|
193
|
+
const { width, rotate } = getSchemaSizeAndRotate(templateSchema);
|
194
|
+
const { size, color, alignment, lineHeight, characterSpacing } = getFontProp(templateSchema);
|
195
|
+
page.pushOperators((0, pdf_lib_1.setCharacterSpacing)(characterSpacing));
|
196
|
+
let beforeLineOver = 0;
|
197
|
+
input.split(/\r|\n|\r\n/g).forEach((inputLine, inputLineIndex) => {
|
198
|
+
const isOverEval = (testString) => {
|
199
|
+
const testStringWidth = fontValue.widthOfTextAtSize(testString, size) + (testString.length - 1) * characterSpacing;
|
200
|
+
/**
|
201
|
+
* split if the difference is less then two pixel
|
202
|
+
* (found out / tested this threshold heuristically, most probably widthOfTextAtSize is unprecise)
|
203
|
+
**/
|
204
|
+
return width - testStringWidth <= splitThreshold;
|
205
|
+
};
|
206
|
+
const splitedLines = getSplittedLines(inputLine, isOverEval);
|
207
|
+
const drawLine = (splitedLine, splitedLineIndex) => {
|
208
|
+
const textWidth = fontValue.widthOfTextAtSize(splitedLine, size) +
|
209
|
+
(splitedLine.length - 1) * characterSpacing;
|
210
|
+
page.drawText(splitedLine, {
|
211
|
+
x: calcX(templateSchema.position.x, alignment, width, textWidth),
|
212
|
+
y: calcY(templateSchema.position.y, pageHeight, size) -
|
213
|
+
lineHeight * size * (inputLineIndex + splitedLineIndex + beforeLineOver) -
|
214
|
+
(lineHeight === 0 ? 0 : ((lineHeight - 1) * size) / 2),
|
215
|
+
rotate,
|
216
|
+
size,
|
217
|
+
color,
|
218
|
+
lineHeight: lineHeight * size,
|
219
|
+
maxWidth: width,
|
220
|
+
font: fontValue,
|
221
|
+
wordBreaks: [''],
|
222
|
+
});
|
223
|
+
if (splitedLines.length === splitedLineIndex + 1)
|
224
|
+
beforeLineOver += splitedLineIndex;
|
225
|
+
};
|
226
|
+
splitedLines.forEach(drawLine);
|
227
|
+
});
|
228
|
+
};
|
229
|
+
const getCacheKey = (templateSchema, input) => `${templateSchema.type}${input}`;
|
230
|
+
const drawInputByImageSchema = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
231
|
+
const { input, templateSchema, pageHeight, pdfDoc, page, inputImageCache } = arg;
|
232
|
+
const { width, height, rotate } = getSchemaSizeAndRotate(templateSchema);
|
233
|
+
const opt = {
|
234
|
+
x: calcX(templateSchema.position.x, 'left', width, width),
|
235
|
+
y: calcY(templateSchema.position.y, pageHeight, height),
|
236
|
+
rotate,
|
237
|
+
width,
|
238
|
+
height,
|
239
|
+
};
|
240
|
+
const inputImageCacheKey = getCacheKey(templateSchema, input);
|
241
|
+
let image = inputImageCache[inputImageCacheKey];
|
242
|
+
if (!image) {
|
243
|
+
const isPng = input.startsWith('data:image/png;');
|
244
|
+
image = yield (isPng ? pdfDoc.embedPng(input) : pdfDoc.embedJpg(input));
|
245
|
+
}
|
246
|
+
inputImageCache[inputImageCacheKey] = image;
|
247
|
+
page.drawImage(image, opt);
|
248
|
+
});
|
249
|
+
const drawInputByBarcodeSchema = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
250
|
+
const { input, templateSchema, pageHeight, pdfDoc, page, inputImageCache } = arg;
|
251
|
+
if (!(0, common_1.validateBarcodeInput)(templateSchema.type, input))
|
252
|
+
return;
|
253
|
+
const { width, height, rotate } = getSchemaSizeAndRotate(templateSchema);
|
254
|
+
const opt = {
|
255
|
+
x: calcX(templateSchema.position.x, 'left', width, width),
|
256
|
+
y: calcY(templateSchema.position.y, pageHeight, height),
|
257
|
+
rotate,
|
258
|
+
width,
|
259
|
+
height,
|
260
|
+
};
|
261
|
+
const inputBarcodeCacheKey = getCacheKey(templateSchema, input);
|
262
|
+
let image = inputImageCache[inputBarcodeCacheKey];
|
263
|
+
if (!image) {
|
264
|
+
const imageBuf = yield (0, exports.createBarCode)(Object.assign(templateSchema, { type: templateSchema.type, input }));
|
265
|
+
image = yield pdfDoc.embedPng(imageBuf);
|
266
|
+
}
|
267
|
+
inputImageCache[inputBarcodeCacheKey] = image;
|
268
|
+
page.drawImage(image, opt);
|
269
|
+
});
|
270
|
+
const drawInputByTemplateSchema = (arg) => __awaiter(void 0, void 0, void 0, function* () {
|
271
|
+
if (!arg.input || !arg.templateSchema)
|
272
|
+
return;
|
273
|
+
if ((0, common_1.isTextSchema)(arg.templateSchema)) {
|
274
|
+
const templateSchema = arg.templateSchema;
|
275
|
+
drawInputByTextSchema(Object.assign(Object.assign({}, arg), { templateSchema }));
|
276
|
+
}
|
277
|
+
else if ((0, common_1.isImageSchema)(arg.templateSchema)) {
|
278
|
+
const templateSchema = arg.templateSchema;
|
279
|
+
yield drawInputByImageSchema(Object.assign(Object.assign({}, arg), { templateSchema }));
|
280
|
+
}
|
281
|
+
else if ((0, common_1.isBarcodeSchema)(arg.templateSchema)) {
|
282
|
+
const templateSchema = arg.templateSchema;
|
283
|
+
yield drawInputByBarcodeSchema(Object.assign(Object.assign({}, arg), { templateSchema }));
|
284
|
+
}
|
285
|
+
});
|
286
|
+
exports.drawInputByTemplateSchema = drawInputByTemplateSchema;
|
287
|
+
const drawEmbeddedPage = (arg) => {
|
288
|
+
const { page, embeddedPage, embedPdfBox } = arg;
|
289
|
+
page.drawPage(embeddedPage);
|
290
|
+
const { mediaBox: mb, bleedBox: bb, trimBox: tb } = embedPdfBox;
|
291
|
+
page.setMediaBox(mb.x, mb.y, mb.width, mb.height);
|
292
|
+
page.setBleedBox(bb.x, bb.y, bb.width, bb.height);
|
293
|
+
page.setTrimBox(tb.x, tb.y, tb.width, tb.height);
|
294
|
+
};
|
295
|
+
exports.drawEmbeddedPage = drawEmbeddedPage;
|
296
|
+
//# sourceMappingURL=helper.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/helper.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,20 @@
|
|
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.validateBarcodeInput = exports.checkGenerateProps = exports.checkDesignerProps = exports.checkPreviewProps = exports.checkUIProps = exports.checkTemplate = exports.isBarcodeSchema = exports.isImageSchema = exports.isTextSchema = exports.BLANK_PDF = exports.generate = void 0;
|
7
|
+
const generate_js_1 = __importDefault(require("./generate.js"));
|
8
|
+
exports.generate = generate_js_1.default;
|
9
|
+
var common_1 = require("@pdfme/common");
|
10
|
+
Object.defineProperty(exports, "BLANK_PDF", { enumerable: true, get: function () { return common_1.BLANK_PDF; } });
|
11
|
+
Object.defineProperty(exports, "isTextSchema", { enumerable: true, get: function () { return common_1.isTextSchema; } });
|
12
|
+
Object.defineProperty(exports, "isImageSchema", { enumerable: true, get: function () { return common_1.isImageSchema; } });
|
13
|
+
Object.defineProperty(exports, "isBarcodeSchema", { enumerable: true, get: function () { return common_1.isBarcodeSchema; } });
|
14
|
+
Object.defineProperty(exports, "checkTemplate", { enumerable: true, get: function () { return common_1.checkTemplate; } });
|
15
|
+
Object.defineProperty(exports, "checkUIProps", { enumerable: true, get: function () { return common_1.checkUIProps; } });
|
16
|
+
Object.defineProperty(exports, "checkPreviewProps", { enumerable: true, get: function () { return common_1.checkPreviewProps; } });
|
17
|
+
Object.defineProperty(exports, "checkDesignerProps", { enumerable: true, get: function () { return common_1.checkDesignerProps; } });
|
18
|
+
Object.defineProperty(exports, "checkGenerateProps", { enumerable: true, get: function () { return common_1.checkGenerateProps; } });
|
19
|
+
Object.defineProperty(exports, "validateBarcodeInput", { enumerable: true, get: function () { return common_1.validateBarcodeInput; } });
|
20
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAE5B,mBAFF,qBAAQ,CAEE;AAyBjB,wCAWuB;AAVrB,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,uGAAA,aAAa,OAAA;AACb,yGAAA,eAAe,OAAA;AACf,uGAAA,aAAa,OAAA;AACb,sGAAA,YAAY,OAAA;AACZ,2GAAA,iBAAiB,OAAA;AACjB,4GAAA,kBAAkB,OAAA;AAClB,4GAAA,kBAAkB,OAAA;AAClB,8GAAA,oBAAoB,OAAA"}
|
@@ -0,0 +1,109 @@
|
|
1
|
+
import { BLANK_PDF } from '@pdfme/common';
|
2
|
+
/* eslint global-require: off*/
|
3
|
+
/* eslint @typescript-eslint/no-var-requires: off*/
|
4
|
+
const レターパック = require('./レターパック.json');
|
5
|
+
const レターパックライト = require('./レターパックライト.json');
|
6
|
+
const レターパックプラス = require('./レターパックプラス.json');
|
7
|
+
const 宛名8面 = require('./宛名8面.json');
|
8
|
+
const 装飾なしラベル24面 = require('./装飾なしラベル24面.json');
|
9
|
+
const 装飾なしラベル24面中央揃え = require('./装飾なしラベル24面中央揃え.json');
|
10
|
+
const スマートレター = require('./スマートレター.json');
|
11
|
+
const ストライプラベル24面 = require('./ストライプラベル24面.json');
|
12
|
+
const フレームラベル24面 = require('./フレームラベル24面.json');
|
13
|
+
const シンプルラベル24面 = require('./シンプルラベル24面.json');
|
14
|
+
const シンプルラベル24面BASE = require('./シンプルラベル24面BASE.json');
|
15
|
+
const 郵便はがき横書き = require('./郵便はがき横書き.json');
|
16
|
+
const 長形3号封筒 = require('./長形3号封筒.json');
|
17
|
+
const 洋長3号封筒 = require('./洋長3号封筒.json');
|
18
|
+
const 角形2号封筒 = require('./角形2号封筒.json');
|
19
|
+
const BASEロゴ入り洋長3号封筒 = require('./BASEロゴ入り洋長3号封筒.json');
|
20
|
+
const BASEロゴ入り1面 = require('./BASEロゴ入り1面.json');
|
21
|
+
const 名刺サイズの名札 = require('./名刺サイズの名札.json');
|
22
|
+
const connpass名札 = require('./connpass名札.json');
|
23
|
+
const ゆうパケット = require('./ゆうパケット.json');
|
24
|
+
const Aone31555QRコード = require('./Aone31555QRコード.json');
|
25
|
+
const Aone31553QRコード = require('./Aone31553QRコード.json');
|
26
|
+
const Aone72230JANコード短縮 = require('./Aone72230JANコード短縮.json');
|
27
|
+
const Aone72230JANコード標準 = require('./Aone72230JANコード標準.json');
|
28
|
+
const Aone72312宛名 = require('./Aone72312宛名.json');
|
29
|
+
const 領収書x4 = require('./領収書x4.json');
|
30
|
+
const 領収書 = require('./領収書.json');
|
31
|
+
const 表彰状 = require('./表彰状.json');
|
32
|
+
const 見積書 = require('./見積書.json');
|
33
|
+
const 請求書 = require('./請求書.json');
|
34
|
+
const 納品書 = require('./納品書.json');
|
35
|
+
const 書類送付状 = require('./書類送付状.json');
|
36
|
+
const 履歴書 = require('./履歴書.json');
|
37
|
+
const 労働条件通知書 = require('./労働条件通知書.json');
|
38
|
+
const z97mmx210mm = require('./z97mmx210mm.json');
|
39
|
+
const barcodes = require('./barcodes.json');
|
40
|
+
const canvasPdf = require('./canvasPdf.json');
|
41
|
+
const background = require('./background.json');
|
42
|
+
export default {
|
43
|
+
test: {
|
44
|
+
sampledata: [{ a: 'a1', b: 'b1', c: 'c1' }],
|
45
|
+
schemas: [
|
46
|
+
{
|
47
|
+
a: {
|
48
|
+
type: 'text',
|
49
|
+
position: { x: 0, y: 0 },
|
50
|
+
width: 10,
|
51
|
+
height: 10,
|
52
|
+
},
|
53
|
+
b: {
|
54
|
+
type: 'text',
|
55
|
+
position: { x: 10, y: 10 },
|
56
|
+
width: 10,
|
57
|
+
height: 10,
|
58
|
+
},
|
59
|
+
c: {
|
60
|
+
type: 'text',
|
61
|
+
position: { x: 20, y: 20 },
|
62
|
+
width: 10,
|
63
|
+
height: 10,
|
64
|
+
},
|
65
|
+
},
|
66
|
+
],
|
67
|
+
basePdf: BLANK_PDF,
|
68
|
+
fontName: 'SauceHanSansJP',
|
69
|
+
},
|
70
|
+
宛名8面,
|
71
|
+
シンプルラベル24面,
|
72
|
+
シンプルラベル24面BASE,
|
73
|
+
フレームラベル24面,
|
74
|
+
ストライプラベル24面,
|
75
|
+
装飾なしラベル24面,
|
76
|
+
装飾なしラベル24面中央揃え,
|
77
|
+
郵便はがき横書き,
|
78
|
+
レターパック,
|
79
|
+
レターパックライト,
|
80
|
+
レターパックプラス,
|
81
|
+
スマートレター,
|
82
|
+
長形3号封筒,
|
83
|
+
洋長3号封筒,
|
84
|
+
角形2号封筒,
|
85
|
+
BASEロゴ入り洋長3号封筒,
|
86
|
+
BASEロゴ入り1面,
|
87
|
+
名刺サイズの名札,
|
88
|
+
connpass名札,
|
89
|
+
ゆうパケット,
|
90
|
+
Aone31555QRコード,
|
91
|
+
Aone31553QRコード,
|
92
|
+
Aone72230JANコード短縮,
|
93
|
+
Aone72230JANコード標準,
|
94
|
+
Aone72312宛名,
|
95
|
+
領収書,
|
96
|
+
領収書x4,
|
97
|
+
表彰状,
|
98
|
+
見積書,
|
99
|
+
請求書,
|
100
|
+
納品書,
|
101
|
+
書類送付状,
|
102
|
+
履歴書,
|
103
|
+
労働条件通知書,
|
104
|
+
z97mmx210mm,
|
105
|
+
barcodes,
|
106
|
+
canvasPdf,
|
107
|
+
background,
|
108
|
+
};
|
109
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../__tests__/assets/templates/index.ts"],"names":[],"mappings":"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"}
|