@pdfme/schemas 5.3.6 → 5.3.7-dev.3
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__/multiVariableText.test.js +8 -2
- package/dist/cjs/__tests__/multiVariableText.test.js.map +1 -1
- package/dist/cjs/src/multiVariableText/helper.js +1 -1
- package/dist/cjs/src/multiVariableText/helper.js.map +1 -1
- package/dist/cjs/src/multiVariableText/uiRender.js +1 -1
- package/dist/cjs/src/multiVariableText/uiRender.js.map +1 -1
- package/dist/esm/__tests__/multiVariableText.test.js +8 -2
- package/dist/esm/__tests__/multiVariableText.test.js.map +1 -1
- package/dist/esm/src/multiVariableText/helper.js +1 -1
- package/dist/esm/src/multiVariableText/helper.js.map +1 -1
- package/dist/esm/src/multiVariableText/uiRender.js +1 -1
- package/dist/esm/src/multiVariableText/uiRender.js.map +1 -1
- package/dist/node/__tests__/barcode.test.js +332 -0
- package/dist/node/__tests__/barcode.test.js.map +1 -0
- package/dist/node/__tests__/multiVariableText.test.js +102 -0
- package/dist/node/__tests__/multiVariableText.test.js.map +1 -0
- package/dist/node/__tests__/text.test.js +409 -0
- package/dist/node/__tests__/text.test.js.map +1 -0
- package/dist/node/__tests__/utils.test.js +132 -0
- package/dist/node/__tests__/utils.test.js.map +1 -0
- package/dist/node/src/barcodes/constants.js +20 -0
- package/dist/node/src/barcodes/constants.js.map +1 -0
- package/dist/node/src/barcodes/helper.js +145 -0
- package/dist/node/src/barcodes/helper.js.map +1 -0
- package/dist/node/src/barcodes/index.js +18 -0
- package/dist/node/src/barcodes/index.js.map +1 -0
- package/dist/node/src/barcodes/pdfRender.js +25 -0
- package/dist/node/src/barcodes/pdfRender.js.map +1 -0
- package/dist/node/src/barcodes/propPanel.js +228 -0
- package/dist/node/src/barcodes/propPanel.js.map +1 -0
- package/dist/node/src/barcodes/types.js +3 -0
- package/dist/node/src/barcodes/types.js.map +1 -0
- package/dist/node/src/barcodes/uiRender.js +89 -0
- package/dist/node/src/barcodes/uiRender.js.map +1 -0
- package/dist/node/src/checkbox/index.js +61 -0
- package/dist/node/src/checkbox/index.js.map +1 -0
- package/dist/node/src/constants.js +6 -0
- package/dist/node/src/constants.js.map +1 -0
- package/dist/node/src/date/date.js +9 -0
- package/dist/node/src/date/date.js.map +1 -0
- package/dist/node/src/date/dateTime.js +9 -0
- package/dist/node/src/date/dateTime.js.map +1 -0
- package/dist/node/src/date/helper.js +420 -0
- package/dist/node/src/date/helper.js.map +1 -0
- package/dist/node/src/date/time.js +9 -0
- package/dist/node/src/date/time.js.map +1 -0
- package/dist/node/src/date/types.js +3 -0
- package/dist/node/src/date/types.js.map +1 -0
- package/dist/node/src/graphics/cacheKey.js +6 -0
- package/dist/node/src/graphics/cacheKey.js.map +1 -0
- package/dist/node/src/graphics/image.js +167 -0
- package/dist/node/src/graphics/image.js.map +1 -0
- package/dist/node/src/graphics/imagehelper.js +124 -0
- package/dist/node/src/graphics/imagehelper.js.map +1 -0
- package/dist/node/src/graphics/svg.js +85 -0
- package/dist/node/src/graphics/svg.js.map +1 -0
- package/dist/node/src/index.js +38 -0
- package/dist/node/src/index.js.map +1 -0
- package/dist/node/src/multiVariableText/helper.js +46 -0
- package/dist/node/src/multiVariableText/helper.js.map +1 -0
- package/dist/node/src/multiVariableText/index.js +16 -0
- package/dist/node/src/multiVariableText/index.js.map +1 -0
- package/dist/node/src/multiVariableText/pdfRender.js +20 -0
- package/dist/node/src/multiVariableText/pdfRender.js.map +1 -0
- package/dist/node/src/multiVariableText/propPanel.js +130 -0
- package/dist/node/src/multiVariableText/propPanel.js.map +1 -0
- package/dist/node/src/multiVariableText/types.js +3 -0
- package/dist/node/src/multiVariableText/types.js.map +1 -0
- package/dist/node/src/multiVariableText/uiRender.js +138 -0
- package/dist/node/src/multiVariableText/uiRender.js.map +1 -0
- package/dist/node/src/radioGroup/index.js +93 -0
- package/dist/node/src/radioGroup/index.js.map +1 -0
- package/dist/node/src/select/index.js +164 -0
- package/dist/node/src/select/index.js.map +1 -0
- package/dist/node/src/shapes/line.js +60 -0
- package/dist/node/src/shapes/line.js.map +1 -0
- package/dist/node/src/shapes/rectAndEllipse.js +122 -0
- package/dist/node/src/shapes/rectAndEllipse.js.map +1 -0
- package/dist/node/src/tables/cell.js +126 -0
- package/dist/node/src/tables/cell.js.map +1 -0
- package/dist/node/src/tables/classes.js +467 -0
- package/dist/node/src/tables/classes.js.map +1 -0
- package/dist/node/src/tables/dynamicTemplate.js +17 -0
- package/dist/node/src/tables/dynamicTemplate.js.map +1 -0
- package/dist/node/src/tables/helper.js +189 -0
- package/dist/node/src/tables/helper.js.map +1 -0
- package/dist/node/src/tables/index.js +15 -0
- package/dist/node/src/tables/index.js.map +1 -0
- package/dist/node/src/tables/pdfRender.js +95 -0
- package/dist/node/src/tables/pdfRender.js.map +1 -0
- package/dist/node/src/tables/propPanel.js +101 -0
- package/dist/node/src/tables/propPanel.js.map +1 -0
- package/dist/node/src/tables/tableHelper.js +196 -0
- package/dist/node/src/tables/tableHelper.js.map +1 -0
- package/dist/node/src/tables/types.js +3 -0
- package/dist/node/src/tables/types.js.map +1 -0
- package/dist/node/src/tables/uiRender.js +367 -0
- package/dist/node/src/tables/uiRender.js.map +1 -0
- package/dist/node/src/text/constants.js +97 -0
- package/dist/node/src/text/constants.js.map +1 -0
- package/dist/node/src/text/extraFormatter.js +48 -0
- package/dist/node/src/text/extraFormatter.js.map +1 -0
- package/dist/node/src/text/helper.js +472 -0
- package/dist/node/src/text/helper.js.map +1 -0
- package/dist/node/src/text/icons/index.js +16 -0
- package/dist/node/src/text/icons/index.js.map +1 -0
- package/dist/node/src/text/index.js +15 -0
- package/dist/node/src/text/index.js.map +1 -0
- package/dist/node/src/text/pdfRender.js +156 -0
- package/dist/node/src/text/pdfRender.js.map +1 -0
- package/dist/node/src/text/propPanel.js +161 -0
- package/dist/node/src/text/propPanel.js.map +1 -0
- package/dist/node/src/text/types.js +3 -0
- package/dist/node/src/text/types.js.map +1 -0
- package/dist/node/src/text/uiRender.js +223 -0
- package/dist/node/src/text/uiRender.js.map +1 -0
- package/dist/node/src/utils.js +190 -0
- package/dist/node/src/utils.js.map +1 -0
- package/package.json +11 -4
- package/src/multiVariableText/helper.ts +1 -1
- package/src/multiVariableText/uiRender.ts +1 -1
- package/tsconfig.node.json +10 -0
@@ -0,0 +1,122 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ellipse = exports.rectangle = void 0;
|
4
|
+
const common_1 = require("@pdfme/common");
|
5
|
+
const constants_js_1 = require("../constants.js");
|
6
|
+
const utils_js_1 = require("../utils.js");
|
7
|
+
const pdf_lib_1 = require("@pdfme/pdf-lib");
|
8
|
+
const lucide_1 = require("lucide");
|
9
|
+
const shape = {
|
10
|
+
ui: (arg) => {
|
11
|
+
const { schema, rootElement } = arg;
|
12
|
+
const div = document.createElement('div');
|
13
|
+
div.style.width = '100%';
|
14
|
+
div.style.height = '100%';
|
15
|
+
div.style.boxSizing = 'border-box';
|
16
|
+
if (schema.type === 'ellipse') {
|
17
|
+
div.style.borderRadius = '50%';
|
18
|
+
}
|
19
|
+
div.style.borderWidth = `${schema.borderWidth ?? 0}mm`;
|
20
|
+
div.style.borderStyle = schema.borderWidth && schema.borderColor ? 'solid' : 'none';
|
21
|
+
div.style.borderColor = schema.borderColor ?? 'transparent';
|
22
|
+
div.style.backgroundColor = schema.color ?? 'transparent';
|
23
|
+
rootElement.appendChild(div);
|
24
|
+
},
|
25
|
+
pdf: (arg) => {
|
26
|
+
const { schema, page, options } = arg;
|
27
|
+
if (!schema.color && !schema.borderColor)
|
28
|
+
return;
|
29
|
+
const { colorType } = options;
|
30
|
+
const pageHeight = page.getHeight();
|
31
|
+
const cArg = { schema, pageHeight };
|
32
|
+
const { position, width, height, rotate, opacity } = (0, utils_js_1.convertForPdfLayoutProps)(cArg);
|
33
|
+
const { position: { x: x4Ellipse, y: y4Ellipse }, } = (0, utils_js_1.convertForPdfLayoutProps)({ ...cArg, applyRotateTranslate: false });
|
34
|
+
const borderWidth = schema.borderWidth ? (0, common_1.mm2pt)(schema.borderWidth) : 0;
|
35
|
+
const drawOptions = {
|
36
|
+
rotate,
|
37
|
+
borderWidth,
|
38
|
+
borderColor: (0, utils_js_1.hex2PrintingColor)(schema.borderColor, colorType),
|
39
|
+
color: (0, utils_js_1.hex2PrintingColor)(schema.color, colorType),
|
40
|
+
opacity,
|
41
|
+
borderOpacity: opacity,
|
42
|
+
};
|
43
|
+
if (schema.type === 'ellipse') {
|
44
|
+
page.drawEllipse({
|
45
|
+
x: x4Ellipse + width / 2,
|
46
|
+
y: y4Ellipse + height / 2,
|
47
|
+
xScale: width / 2 - borderWidth / 2,
|
48
|
+
yScale: height / 2 - borderWidth / 2,
|
49
|
+
...drawOptions,
|
50
|
+
});
|
51
|
+
}
|
52
|
+
else if (schema.type === 'rectangle') {
|
53
|
+
page.drawRectangle({
|
54
|
+
x: position.x + borderWidth * ((1 - Math.sin((0, pdf_lib_1.toRadians)(rotate))) / 2) + Math.tan((0, pdf_lib_1.toRadians)(rotate)) * (Math.PI ** 2),
|
55
|
+
y: position.y + borderWidth * ((1 + Math.sin((0, pdf_lib_1.toRadians)(rotate))) / 2) + Math.tan((0, pdf_lib_1.toRadians)(rotate)) * (Math.PI ** 2),
|
56
|
+
width: width - borderWidth,
|
57
|
+
height: height - borderWidth,
|
58
|
+
...drawOptions,
|
59
|
+
});
|
60
|
+
}
|
61
|
+
},
|
62
|
+
propPanel: {
|
63
|
+
schema: ({ i18n }) => ({
|
64
|
+
borderWidth: {
|
65
|
+
title: i18n('schemas.borderWidth'),
|
66
|
+
type: 'number',
|
67
|
+
widget: 'inputNumber',
|
68
|
+
props: { min: 0 },
|
69
|
+
step: 1,
|
70
|
+
},
|
71
|
+
borderColor: {
|
72
|
+
title: i18n('schemas.borderColor'),
|
73
|
+
type: 'string',
|
74
|
+
widget: 'color',
|
75
|
+
props: {
|
76
|
+
disabledAlpha: true
|
77
|
+
},
|
78
|
+
rules: [{ pattern: constants_js_1.HEX_COLOR_PATTERN, message: i18n('validation.hexColor') }],
|
79
|
+
},
|
80
|
+
color: {
|
81
|
+
title: i18n('schemas.color'),
|
82
|
+
type: 'string',
|
83
|
+
widget: 'color',
|
84
|
+
props: {
|
85
|
+
disabledAlpha: true
|
86
|
+
},
|
87
|
+
rules: [{ pattern: constants_js_1.HEX_COLOR_PATTERN, message: i18n('validation.hexColor') }],
|
88
|
+
},
|
89
|
+
}),
|
90
|
+
defaultSchema: {
|
91
|
+
name: '',
|
92
|
+
type: 'rectangle',
|
93
|
+
position: { x: 0, y: 0 },
|
94
|
+
width: 62.5,
|
95
|
+
height: 37.5,
|
96
|
+
rotate: 0,
|
97
|
+
opacity: 1,
|
98
|
+
borderWidth: 1,
|
99
|
+
borderColor: '#000000',
|
100
|
+
color: '',
|
101
|
+
readOnly: true,
|
102
|
+
},
|
103
|
+
},
|
104
|
+
};
|
105
|
+
const getPropPanelSchema = (type) => ({
|
106
|
+
...shape.propPanel,
|
107
|
+
defaultSchema: {
|
108
|
+
...shape.propPanel.defaultSchema,
|
109
|
+
type,
|
110
|
+
},
|
111
|
+
});
|
112
|
+
exports.rectangle = {
|
113
|
+
...shape,
|
114
|
+
propPanel: getPropPanelSchema('rectangle'),
|
115
|
+
icon: (0, utils_js_1.createSvgStr)(lucide_1.Square),
|
116
|
+
};
|
117
|
+
exports.ellipse = {
|
118
|
+
...shape,
|
119
|
+
propPanel: getPropPanelSchema('ellipse'),
|
120
|
+
icon: (0, utils_js_1.createSvgStr)(lucide_1.Circle),
|
121
|
+
};
|
122
|
+
//# sourceMappingURL=rectAndEllipse.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"rectAndEllipse.js","sourceRoot":"","sources":["../../../../src/shapes/rectAndEllipse.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,126 @@
|
|
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
|
+
const common_1 = require("@pdfme/common");
|
7
|
+
const uiRender_js_1 = require("../text/uiRender.js");
|
8
|
+
const pdfRender_js_1 = require("../text/pdfRender.js");
|
9
|
+
const line_js_1 = __importDefault(require("../shapes/line.js"));
|
10
|
+
const rectAndEllipse_js_1 = require("../shapes/rectAndEllipse.js");
|
11
|
+
const helper_js_1 = require("./helper.js");
|
12
|
+
const linePdfRender = line_js_1.default.pdf;
|
13
|
+
const rectanglePdfRender = rectAndEllipse_js_1.rectangle.pdf;
|
14
|
+
const renderLine = async (arg, schema, position, width, height) => linePdfRender({
|
15
|
+
...arg,
|
16
|
+
schema: { ...schema, type: 'line', position, width, height, color: schema.borderColor },
|
17
|
+
});
|
18
|
+
const createTextDiv = (schema) => {
|
19
|
+
const { borderWidth: bw, width, height, padding: pd } = schema;
|
20
|
+
const textDiv = document.createElement('div');
|
21
|
+
textDiv.style.position = 'absolute';
|
22
|
+
textDiv.style.zIndex = '1';
|
23
|
+
textDiv.style.width = `${width - bw.left - bw.right - pd.left - pd.right}mm`;
|
24
|
+
textDiv.style.height = `${height - bw.top - bw.bottom - pd.top - pd.bottom}mm`;
|
25
|
+
textDiv.style.top = `${bw.top + pd.top}mm`;
|
26
|
+
textDiv.style.left = `${bw.left + pd.left}mm`;
|
27
|
+
return textDiv;
|
28
|
+
};
|
29
|
+
const createLineDiv = (width, height, top, right, bottom, left, borderColor) => {
|
30
|
+
const div = document.createElement('div');
|
31
|
+
div.style.width = width;
|
32
|
+
div.style.height = height;
|
33
|
+
div.style.position = 'absolute';
|
34
|
+
if (top !== null)
|
35
|
+
div.style.top = top;
|
36
|
+
if (right !== null)
|
37
|
+
div.style.right = right;
|
38
|
+
if (bottom !== null)
|
39
|
+
div.style.bottom = bottom;
|
40
|
+
if (left !== null)
|
41
|
+
div.style.left = left;
|
42
|
+
div.style.backgroundColor = borderColor;
|
43
|
+
return div;
|
44
|
+
};
|
45
|
+
const cellSchema = {
|
46
|
+
pdf: async (arg) => {
|
47
|
+
const { schema } = arg;
|
48
|
+
const { position, width, height, borderWidth, padding } = schema;
|
49
|
+
await Promise.all([
|
50
|
+
// BACKGROUND
|
51
|
+
rectanglePdfRender({
|
52
|
+
...arg,
|
53
|
+
schema: {
|
54
|
+
...schema,
|
55
|
+
type: 'rectangle',
|
56
|
+
width: schema.width,
|
57
|
+
height: schema.height,
|
58
|
+
borderWidth: 0,
|
59
|
+
borderColor: '',
|
60
|
+
color: schema.backgroundColor,
|
61
|
+
},
|
62
|
+
}),
|
63
|
+
// TOP
|
64
|
+
renderLine(arg, schema, { x: position.x, y: position.y }, width, borderWidth.top),
|
65
|
+
// RIGHT
|
66
|
+
renderLine(arg, schema, { x: position.x + width - borderWidth.right, y: position.y }, borderWidth.right, height),
|
67
|
+
// BOTTOM
|
68
|
+
renderLine(arg, schema, { x: position.x, y: position.y + height - borderWidth.bottom }, width, borderWidth.bottom),
|
69
|
+
// LEFT
|
70
|
+
renderLine(arg, schema, { x: position.x, y: position.y }, borderWidth.left, height),
|
71
|
+
]);
|
72
|
+
// TEXT
|
73
|
+
await (0, pdfRender_js_1.pdfRender)({
|
74
|
+
...arg,
|
75
|
+
schema: {
|
76
|
+
...schema,
|
77
|
+
type: 'text',
|
78
|
+
backgroundColor: '',
|
79
|
+
position: {
|
80
|
+
x: position.x + borderWidth.left + padding.left,
|
81
|
+
y: position.y + borderWidth.top + padding.top,
|
82
|
+
},
|
83
|
+
width: width - borderWidth.left - borderWidth.right - padding.left - padding.right,
|
84
|
+
height: height - borderWidth.top - borderWidth.bottom - padding.top - padding.bottom,
|
85
|
+
},
|
86
|
+
});
|
87
|
+
},
|
88
|
+
ui: async (arg) => {
|
89
|
+
const { schema, rootElement } = arg;
|
90
|
+
const { borderWidth, width, height, borderColor, backgroundColor } = schema;
|
91
|
+
rootElement.style.backgroundColor = backgroundColor;
|
92
|
+
const textDiv = createTextDiv(schema);
|
93
|
+
await (0, uiRender_js_1.uiRender)({
|
94
|
+
...arg,
|
95
|
+
schema: { ...schema, backgroundColor: '' },
|
96
|
+
rootElement: textDiv,
|
97
|
+
});
|
98
|
+
rootElement.appendChild(textDiv);
|
99
|
+
const lines = [
|
100
|
+
createLineDiv(`${width}mm`, `${borderWidth.top}mm`, '0mm', null, null, '0mm', borderColor),
|
101
|
+
createLineDiv(`${width}mm`, `${borderWidth.bottom}mm`, null, null, '0mm', '0mm', borderColor),
|
102
|
+
createLineDiv(`${borderWidth.left}mm`, `${height}mm`, '0mm', null, null, '0mm', borderColor),
|
103
|
+
createLineDiv(`${borderWidth.right}mm`, `${height}mm`, '0mm', '0mm', null, null, borderColor),
|
104
|
+
];
|
105
|
+
lines.forEach((line) => rootElement.appendChild(line));
|
106
|
+
},
|
107
|
+
propPanel: {
|
108
|
+
schema: ({ options, i18n }) => {
|
109
|
+
const font = options.font || { [common_1.DEFAULT_FONT_NAME]: { data: '', fallback: true } };
|
110
|
+
const fontNames = Object.keys(font);
|
111
|
+
const fallbackFontName = (0, common_1.getFallbackFontName)(font);
|
112
|
+
return (0, helper_js_1.getCellPropPanelSchema)({ i18n, fontNames, fallbackFontName });
|
113
|
+
},
|
114
|
+
defaultSchema: {
|
115
|
+
name: '',
|
116
|
+
type: 'cell',
|
117
|
+
content: 'Type Something...',
|
118
|
+
position: { x: 0, y: 0 },
|
119
|
+
width: 50,
|
120
|
+
height: 15,
|
121
|
+
...(0, helper_js_1.getDefaultCellStyles)(),
|
122
|
+
},
|
123
|
+
},
|
124
|
+
};
|
125
|
+
exports.default = cellSchema;
|
126
|
+
//# sourceMappingURL=cell.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cell.js","sourceRoot":"","sources":["../../../../src/tables/cell.ts"],"names":[],"mappings":"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"}
|