@pdfme/schemas 3.1.5-dev.1 → 3.1.5-dev.10
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 +303 -0
- package/dist/cjs/src/barcodes/propPanel.js +27 -29
- package/dist/cjs/src/barcodes/propPanel.js.map +1 -1
- package/dist/cjs/src/barcodes/uiRender.js +8 -10
- package/dist/cjs/src/barcodes/uiRender.js.map +1 -1
- package/dist/cjs/src/image/pdfRender.js +2 -0
- package/dist/cjs/src/image/pdfRender.js.map +1 -1
- package/dist/cjs/src/image/uiRender.js +3 -3
- package/dist/cjs/src/image/uiRender.js.map +1 -1
- package/dist/cjs/src/index.js +3 -1
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/line/constants.js +5 -0
- package/dist/cjs/src/line/constants.js.map +1 -0
- package/dist/cjs/src/line/index.js +8 -0
- package/dist/cjs/src/line/index.js.map +1 -0
- package/dist/cjs/src/line/pdfRender.js +20 -0
- package/dist/cjs/src/line/pdfRender.js.map +1 -0
- package/dist/cjs/src/line/propPanel.js +35 -0
- package/dist/cjs/src/line/propPanel.js.map +1 -0
- package/dist/cjs/src/line/types.js +3 -0
- package/dist/cjs/src/line/types.js.map +1 -0
- package/dist/cjs/src/line/uiRender.js +14 -0
- package/dist/cjs/src/line/uiRender.js.map +1 -0
- package/dist/cjs/src/renderUtils.js +28 -1
- package/dist/cjs/src/renderUtils.js.map +1 -1
- package/dist/cjs/src/text/index.js.map +1 -1
- package/dist/cjs/src/text/pdfRender.js +6 -29
- package/dist/cjs/src/text/pdfRender.js.map +1 -1
- package/dist/cjs/src/text/propPanel.js +2 -2
- package/dist/cjs/src/text/propPanel.js.map +1 -1
- package/dist/cjs/src/text/uiRender.js +11 -17
- package/dist/cjs/src/text/uiRender.js.map +1 -1
- package/dist/esm/src/barcodes/propPanel.js +27 -29
- package/dist/esm/src/barcodes/propPanel.js.map +1 -1
- package/dist/esm/src/barcodes/uiRender.js +9 -11
- package/dist/esm/src/barcodes/uiRender.js.map +1 -1
- package/dist/esm/src/image/pdfRender.js +2 -0
- package/dist/esm/src/image/pdfRender.js.map +1 -1
- package/dist/esm/src/image/uiRender.js +4 -4
- package/dist/esm/src/image/uiRender.js.map +1 -1
- package/dist/esm/src/index.js +2 -1
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/line/constants.js +2 -0
- package/dist/esm/src/line/constants.js.map +1 -0
- package/dist/esm/src/line/index.js +6 -0
- package/dist/esm/src/line/index.js.map +1 -0
- package/dist/esm/src/line/pdfRender.js +16 -0
- package/dist/esm/src/line/pdfRender.js.map +1 -0
- package/dist/esm/src/line/propPanel.js +32 -0
- package/dist/esm/src/line/propPanel.js.map +1 -0
- package/dist/esm/src/line/types.js +2 -0
- package/dist/esm/src/line/types.js.map +1 -0
- package/dist/esm/src/line/uiRender.js +10 -0
- package/dist/esm/src/line/uiRender.js.map +1 -0
- package/dist/esm/src/renderUtils.js +27 -2
- package/dist/esm/src/renderUtils.js.map +1 -1
- package/dist/esm/src/text/index.js.map +1 -1
- package/dist/esm/src/text/pdfRender.js +6 -29
- package/dist/esm/src/text/pdfRender.js.map +1 -1
- package/dist/esm/src/text/propPanel.js +2 -2
- package/dist/esm/src/text/propPanel.js.map +1 -1
- package/dist/esm/src/text/uiRender.js +12 -18
- package/dist/esm/src/text/uiRender.js.map +1 -1
- package/dist/types/src/index.d.ts +2 -1
- package/dist/types/src/line/constants.d.ts +1 -0
- package/dist/types/src/line/index.d.ts +4 -0
- package/dist/types/src/line/pdfRender.d.ts +3 -0
- package/dist/types/src/line/propPanel.d.ts +3 -0
- package/dist/types/src/line/types.d.ts +4 -0
- package/dist/types/src/line/uiRender.d.ts +3 -0
- package/dist/types/src/renderUtils.d.ts +3 -1
- package/package.json +1 -1
- package/src/barcodes/propPanel.ts +27 -29
- package/src/barcodes/uiRender.ts +9 -11
- package/src/image/pdfRender.ts +1 -0
- package/src/image/uiRender.ts +4 -4
- package/src/index.ts +2 -1
- package/src/line/constants.ts +1 -0
- package/src/line/index.ts +8 -0
- package/src/line/pdfRender.ts +24 -0
- package/src/line/propPanel.ts +34 -0
- package/src/line/types.ts +5 -0
- package/src/line/uiRender.ts +12 -0
- package/src/renderUtils.ts +34 -2
- package/src/text/index.ts +0 -1
- package/src/text/pdfRender.ts +6 -42
- package/src/text/propPanel.ts +2 -2
- package/src/text/uiRender.ts +11 -27
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pdfRender.js","sourceRoot":"","sources":["../../../../src/line/pdfRender.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAA+B,EAAE,EAAE;IAC3D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EACJ,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAClB,OAAO,GACR,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;IAClF,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;IACtD,IAAI,CAAC,QAAQ,CAAC;QACZ,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;QACjE,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;QAC1E,SAAS,EAAE,MAAM;QACjB,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,kBAAkB,CAAC;QACvD,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;AACL,CAAC,CAAC"}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import { HEX_COLOR_PATTERN } from '../constants.js';
|
2
|
+
import { DEFAULT_LINE_COLOR } from './constants.js';
|
3
|
+
export const propPanel = {
|
4
|
+
schema: ({ i18n }) => {
|
5
|
+
return {
|
6
|
+
color: {
|
7
|
+
title: i18n('schemas.line.color'),
|
8
|
+
type: 'string',
|
9
|
+
widget: 'color',
|
10
|
+
required: true,
|
11
|
+
rules: [
|
12
|
+
{
|
13
|
+
pattern: HEX_COLOR_PATTERN,
|
14
|
+
message: i18n('hexColorPrompt'),
|
15
|
+
},
|
16
|
+
],
|
17
|
+
},
|
18
|
+
};
|
19
|
+
},
|
20
|
+
defaultValue: '',
|
21
|
+
defaultSchema: {
|
22
|
+
type: 'line',
|
23
|
+
position: { x: 0, y: 0 },
|
24
|
+
width: 50,
|
25
|
+
height: 1,
|
26
|
+
rotate: 0,
|
27
|
+
opacity: 1,
|
28
|
+
readOnly: true,
|
29
|
+
color: DEFAULT_LINE_COLOR,
|
30
|
+
},
|
31
|
+
};
|
32
|
+
//# sourceMappingURL=propPanel.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"propPanel.js","sourceRoot":"","sources":["../../../../src/line/propPanel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,SAAS,GAA0B;IAC9C,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;QACnB,OAAO;YACL,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE;oBACL;wBACE,OAAO,EAAE,iBAAiB;wBAC1B,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC;qBAChC;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IACD,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACxB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,kBAAkB;KAC1B;CACF,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/line/types.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { DEFAULT_LINE_COLOR } from './constants.js';
|
2
|
+
export const uiRender = (arg) => {
|
3
|
+
const { schema, rootElement } = arg;
|
4
|
+
const div = document.createElement('div');
|
5
|
+
div.style.backgroundColor = schema.color ?? DEFAULT_LINE_COLOR;
|
6
|
+
div.style.width = '100%';
|
7
|
+
div.style.height = '100%';
|
8
|
+
rootElement.appendChild(div);
|
9
|
+
};
|
10
|
+
//# sourceMappingURL=uiRender.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"uiRender.js","sourceRoot":"","sources":["../../../../src/line/uiRender.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAA8B,EAAE,EAAE;IACzD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,IAAI,kBAAkB,CAAC;IAC/D,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1B,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC"}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { degrees, degreesToRadians } from '@pdfme/pdf-lib';
|
2
|
-
import { mm2pt } from '@pdfme/common';
|
1
|
+
import { degrees, degreesToRadians, rgb } from '@pdfme/pdf-lib';
|
2
|
+
import { mm2pt, isHexValid } from '@pdfme/common';
|
3
3
|
export const convertForPdfLayoutProps = ({ schema, pageHeight, applyRotateTranslate = true, }) => {
|
4
4
|
const { width: mmWidth, height: mmHeight, position, rotate, opacity } = schema;
|
5
5
|
const { x: mmX, y: mmY } = position;
|
@@ -50,4 +50,29 @@ export const addAlphaToHex = (hex, alphaPercentage) => {
|
|
50
50
|
alphaHex = '0' + alphaHex;
|
51
51
|
return hex + alphaHex;
|
52
52
|
};
|
53
|
+
export const isEditable = (mode) => mode === 'form' || mode === 'designer';
|
54
|
+
const hex2rgb = (hex) => {
|
55
|
+
if (hex.slice(0, 1) === '#')
|
56
|
+
hex = hex.slice(1);
|
57
|
+
if (hex.length === 3)
|
58
|
+
hex =
|
59
|
+
hex.slice(0, 1) +
|
60
|
+
hex.slice(0, 1) +
|
61
|
+
hex.slice(1, 2) +
|
62
|
+
hex.slice(1, 2) +
|
63
|
+
hex.slice(2, 3) +
|
64
|
+
hex.slice(2, 3);
|
65
|
+
return [hex.slice(0, 2), hex.slice(2, 4), hex.slice(4, 6)].map((str) => parseInt(str, 16));
|
66
|
+
};
|
67
|
+
export const hex2RgbColor = (hexString) => {
|
68
|
+
if (hexString) {
|
69
|
+
const isValid = isHexValid(hexString);
|
70
|
+
if (!isValid) {
|
71
|
+
throw new Error(`Invalid hex color value ${hexString}`);
|
72
|
+
}
|
73
|
+
const [r, g, b] = hex2rgb(hexString);
|
74
|
+
return rgb(r / 255, g / 255, b / 255);
|
75
|
+
}
|
76
|
+
return undefined;
|
77
|
+
};
|
53
78
|
//# sourceMappingURL=renderUtils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"renderUtils.js","sourceRoot":"","sources":["../../../src/renderUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
1
|
+
{"version":3,"file":"renderUtils.js","sourceRoot":"","sources":["../../../src/renderUtils.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/text/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,MAAM,MAAM,GAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/text/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,MAAM,MAAM,GAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAC/E,eAAe,MAAM,CAAC"}
|
@@ -1,32 +1,7 @@
|
|
1
|
-
import {
|
2
|
-
import { getDefaultFont, getFallbackFontName, mm2pt, isHexValid, } from '@pdfme/common';
|
1
|
+
import { getDefaultFont, getFallbackFontName, mm2pt } from '@pdfme/common';
|
3
2
|
import { VERTICAL_ALIGN_TOP, VERTICAL_ALIGN_MIDDLE, VERTICAL_ALIGN_BOTTOM, DEFAULT_FONT_SIZE, DEFAULT_ALIGNMENT, DEFAULT_VERTICAL_ALIGNMENT, DEFAULT_LINE_HEIGHT, DEFAULT_CHARACTER_SPACING, DEFAULT_FONT_COLOR, } from './constants.js';
|
4
3
|
import { calculateDynamicFontSize, heightOfFontAtSize, getFontDescentInPt, getFontKitFont, getSplittedLines, widthOfTextAtSize, } from './helper.js';
|
5
|
-
import { convertForPdfLayoutProps, rotatePoint } from '../renderUtils.js';
|
6
|
-
const hex2rgb = (hex) => {
|
7
|
-
if (hex.slice(0, 1) === '#')
|
8
|
-
hex = hex.slice(1);
|
9
|
-
if (hex.length === 3)
|
10
|
-
hex =
|
11
|
-
hex.slice(0, 1) +
|
12
|
-
hex.slice(0, 1) +
|
13
|
-
hex.slice(1, 2) +
|
14
|
-
hex.slice(1, 2) +
|
15
|
-
hex.slice(2, 3) +
|
16
|
-
hex.slice(2, 3);
|
17
|
-
return [hex.slice(0, 2), hex.slice(2, 4), hex.slice(4, 6)].map((str) => parseInt(str, 16));
|
18
|
-
};
|
19
|
-
const hex2RgbColor = (hexString) => {
|
20
|
-
if (hexString) {
|
21
|
-
const isValid = isHexValid(hexString);
|
22
|
-
if (!isValid) {
|
23
|
-
throw new Error(`Invalid hex color value ${hexString}`);
|
24
|
-
}
|
25
|
-
const [r, g, b] = hex2rgb(hexString);
|
26
|
-
return rgb(r / 255, g / 255, b / 255);
|
27
|
-
}
|
28
|
-
return undefined;
|
29
|
-
};
|
4
|
+
import { convertForPdfLayoutProps, rotatePoint, hex2RgbColor } from '../renderUtils.js';
|
30
5
|
const embedAndGetFontObj = async (arg) => {
|
31
6
|
const { pdfDoc, font, _cache } = arg;
|
32
7
|
if (_cache.has(pdfDoc)) {
|
@@ -61,6 +36,8 @@ const getFontProp = async ({ value, font, schema, _cache, }) => {
|
|
61
36
|
};
|
62
37
|
export const pdfRender = async (arg) => {
|
63
38
|
const { value, pdfDoc, pdfLib, page, options, schema, _cache } = arg;
|
39
|
+
if (!value)
|
40
|
+
return;
|
64
41
|
const { font = getDefaultFont() } = options;
|
65
42
|
const [pdfFontObj, fontKitFont, fontProp] = await Promise.all([
|
66
43
|
embedAndGetFontObj({ pdfDoc, font, _cache }),
|
@@ -69,7 +46,7 @@ export const pdfRender = async (arg) => {
|
|
69
46
|
]);
|
70
47
|
const { fontSize, color, alignment, verticalAlignment, lineHeight, characterSpacing } = fontProp;
|
71
48
|
const fontName = (schema.fontName ? schema.fontName : getFallbackFontName(font));
|
72
|
-
const pdfFontValue = pdfFontObj[fontName];
|
49
|
+
const pdfFontValue = pdfFontObj && pdfFontObj[fontName];
|
73
50
|
const pageHeight = page.getHeight();
|
74
51
|
const { width, height, rotate, position: { x, y }, opacity, } = convertForPdfLayoutProps({ schema, pageHeight, applyRotateTranslate: false });
|
75
52
|
if (schema.backgroundColor) {
|
@@ -87,7 +64,7 @@ export const pdfRender = async (arg) => {
|
|
87
64
|
boxWidthInPt: width,
|
88
65
|
};
|
89
66
|
let lines = [];
|
90
|
-
value.split(/\r
|
67
|
+
value.split(/\r\n|\r|\n/g).forEach((line) => {
|
91
68
|
lines = lines.concat(getSplittedLines(line, fontWidthCalcValues));
|
92
69
|
});
|
93
70
|
// Text lines are rendered from the bottom upwards, we need to adjust the position down
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pdfRender.js","sourceRoot":"","sources":["../../../../src/text/pdfRender.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"pdfRender.js","sourceRoot":"","sources":["../../../../src/text/pdfRender.ts"],"names":[],"mappings":"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"}
|
@@ -124,7 +124,7 @@ export const propPanel = {
|
|
124
124
|
rules: [
|
125
125
|
{
|
126
126
|
pattern: HEX_COLOR_PATTERN,
|
127
|
-
message: '
|
127
|
+
message: i18n('hexColorPrompt'),
|
128
128
|
},
|
129
129
|
],
|
130
130
|
},
|
@@ -135,7 +135,7 @@ export const propPanel = {
|
|
135
135
|
rules: [
|
136
136
|
{
|
137
137
|
pattern: HEX_COLOR_PATTERN,
|
138
|
-
message: '
|
138
|
+
message: i18n('hexColorPrompt'),
|
139
139
|
},
|
140
140
|
],
|
141
141
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"propPanel.js","sourceRoot":"","sources":["../../../../src/text/propPanel.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"propPanel.js","sourceRoot":"","sources":["../../../../src/text/propPanel.ts"],"names":[],"mappings":"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"}
|
@@ -1,8 +1,7 @@
|
|
1
1
|
import { getDefaultFont } from '@pdfme/common';
|
2
2
|
import { DEFAULT_FONT_SIZE, DEFAULT_ALIGNMENT, VERTICAL_ALIGN_TOP, VERTICAL_ALIGN_MIDDLE, VERTICAL_ALIGN_BOTTOM, DEFAULT_VERTICAL_ALIGNMENT, DEFAULT_LINE_HEIGHT, DEFAULT_CHARACTER_SPACING, DEFAULT_FONT_COLOR, PLACEHOLDER_FONT_COLOR, } from './constants.js';
|
3
3
|
import { calculateDynamicFontSize, getFontKitFont, getBrowserVerticalFontAdjustments, } from './helper.js';
|
4
|
-
import { addAlphaToHex } from '../renderUtils.js';
|
5
|
-
import { DEFAULT_OPACITY } from '../constants.js';
|
4
|
+
import { addAlphaToHex, isEditable } from '../renderUtils.js';
|
6
5
|
const mapVerticalAlignToFlex = (verticalAlignmentValue) => {
|
7
6
|
switch (verticalAlignmentValue) {
|
8
7
|
case VERTICAL_ALIGN_TOP:
|
@@ -14,16 +13,12 @@ const mapVerticalAlignToFlex = (verticalAlignmentValue) => {
|
|
14
13
|
}
|
15
14
|
return 'flex-start';
|
16
15
|
};
|
17
|
-
const getBackgroundColor = (
|
18
|
-
if (
|
16
|
+
const getBackgroundColor = (value, schema, defaultBackgroundColor) => {
|
17
|
+
if (!value)
|
18
|
+
return 'transparent';
|
19
|
+
if (schema.backgroundColor)
|
19
20
|
return schema.backgroundColor;
|
20
|
-
|
21
|
-
else if (mode === 'viewer') {
|
22
|
-
return schema.backgroundColor ?? 'transparent';
|
23
|
-
}
|
24
|
-
else {
|
25
|
-
return defaultBackgroundColor;
|
26
|
-
}
|
21
|
+
return defaultBackgroundColor;
|
27
22
|
};
|
28
23
|
export const uiRender = async (arg) => {
|
29
24
|
const { value, schema, rootElement, mode, onChange, stopEditing, tabIndex, placeholder, options, theme, _cache, } = arg;
|
@@ -49,14 +44,13 @@ export const uiRender = async (arg) => {
|
|
49
44
|
const containerStyle = {
|
50
45
|
padding: 0,
|
51
46
|
resize: 'none',
|
52
|
-
backgroundColor: getBackgroundColor(
|
47
|
+
backgroundColor: getBackgroundColor(value, schema, addAlphaToHex(theme.colorPrimaryBg, 30)),
|
53
48
|
border: 'none',
|
54
49
|
display: 'flex',
|
55
50
|
flexDirection: 'column',
|
56
51
|
justifyContent: mapVerticalAlignToFlex(schema.verticalAlignment),
|
57
52
|
width: '100%',
|
58
53
|
height: '100%',
|
59
|
-
opacity: schema.opacity ?? DEFAULT_OPACITY,
|
60
54
|
};
|
61
55
|
Object.assign(container.style, containerStyle);
|
62
56
|
rootElement.innerHTML = '';
|
@@ -75,13 +69,13 @@ export const uiRender = async (arg) => {
|
|
75
69
|
resize: 'none',
|
76
70
|
border: 'none',
|
77
71
|
outline: 'none',
|
78
|
-
marginBottom: bottomAdjustment
|
79
|
-
paddingTop: topAdjustment
|
72
|
+
marginBottom: `${bottomAdjustment}px`,
|
73
|
+
paddingTop: `${topAdjustment}px`,
|
80
74
|
backgroundColor: 'transparent',
|
81
75
|
};
|
82
76
|
const textBlock = document.createElement('div');
|
83
77
|
Object.assign(textBlock.style, textBlockStyle);
|
84
|
-
if (mode
|
78
|
+
if (isEditable(mode)) {
|
85
79
|
textBlock.contentEditable = 'plaintext-only';
|
86
80
|
textBlock.tabIndex = tabIndex || 0;
|
87
81
|
textBlock.innerText = value;
|
@@ -98,8 +92,8 @@ export const uiRender = async (arg) => {
|
|
98
92
|
dynamicFontSize = await calculateDynamicFontSize(getCdfArg(textBlock.textContent));
|
99
93
|
textBlock.style.fontSize = `${dynamicFontSize}pt`;
|
100
94
|
const { topAdj: newTopAdj, bottomAdj: newBottomAdj } = getBrowserVerticalFontAdjustments(fontKitFont, dynamicFontSize ?? schema.fontSize ?? DEFAULT_FONT_SIZE, schema.lineHeight ?? DEFAULT_LINE_HEIGHT, schema.verticalAlignment ?? DEFAULT_VERTICAL_ALIGNMENT);
|
101
|
-
textBlock.style.paddingTop = newTopAdj
|
102
|
-
textBlock.style.marginBottom = newBottomAdj
|
95
|
+
textBlock.style.paddingTop = `${newTopAdj}px`;
|
96
|
+
textBlock.style.marginBottom = `${newBottomAdj}px`;
|
103
97
|
})();
|
104
98
|
}, 0);
|
105
99
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"uiRender.js","sourceRoot":"","sources":["../../../../src/text/uiRender.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,cAAc,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,iCAAiC,GAClC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,
|
1
|
+
{"version":3,"file":"uiRender.js","sourceRoot":"","sources":["../../../../src/text/uiRender.ts"],"names":[],"mappings":"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"}
|
@@ -1,8 +1,9 @@
|
|
1
1
|
import text from './text/index.js';
|
2
2
|
import image from './image/index.js';
|
3
3
|
import barcodes from './barcodes/index.js';
|
4
|
+
import line from './line/index.js';
|
4
5
|
import { convertForPdfLayoutProps, rotatePoint } from './renderUtils.js';
|
5
6
|
declare const builtInPlugins: {
|
6
7
|
Text: import("@pdfme/common").Plugin<import("./text/types.js").TextSchema>;
|
7
8
|
};
|
8
|
-
export { text, image, barcodes, builtInPlugins, convertForPdfLayoutProps, rotatePoint };
|
9
|
+
export { text, image, barcodes, line, builtInPlugins, convertForPdfLayoutProps, rotatePoint };
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const DEFAULT_LINE_COLOR = "#000000";
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Schema } from '@pdfme/common';
|
1
|
+
import { Schema, Mode } from '@pdfme/common';
|
2
2
|
export declare const convertForPdfLayoutProps: ({ schema, pageHeight, applyRotateTranslate, }: {
|
3
3
|
schema: Schema;
|
4
4
|
pageHeight: number;
|
@@ -24,3 +24,5 @@ export declare const rotatePoint: (point: {
|
|
24
24
|
y: number;
|
25
25
|
};
|
26
26
|
export declare const addAlphaToHex: (hex: string, alphaPercentage: number) => string;
|
27
|
+
export declare const isEditable: (mode: Mode) => boolean;
|
28
|
+
export declare const hex2RgbColor: (hexString: string | undefined) => import("@pdfme/pdf-lib").RGB | undefined;
|
package/package.json
CHANGED
@@ -157,35 +157,33 @@ export const getPropPanelByBarcodeType = (barcodeType: string): PropPanel<Barcod
|
|
157
157
|
if (!defaults) throw new Error(`[@pdfme/schemas] No default for barcode type ${barcodeType}`);
|
158
158
|
|
159
159
|
return {
|
160
|
-
schema: ({ i18n }) => {
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
};
|
188
|
-
},
|
160
|
+
schema: ({ i18n }) => ({
|
161
|
+
barColor: {
|
162
|
+
title: i18n('schemas.barcodes.barColor'),
|
163
|
+
type: 'string',
|
164
|
+
widget: 'color',
|
165
|
+
rules: [
|
166
|
+
{
|
167
|
+
pattern: HEX_COLOR_PATTERN,
|
168
|
+
message: i18n('hexColorPrompt'),
|
169
|
+
},
|
170
|
+
],
|
171
|
+
},
|
172
|
+
backgroundColor: {
|
173
|
+
title: i18n('schemas.bgColor'),
|
174
|
+
type: 'string',
|
175
|
+
widget: 'color',
|
176
|
+
rules: [
|
177
|
+
{
|
178
|
+
pattern: HEX_COLOR_PATTERN,
|
179
|
+
message: i18n('hexColorPrompt'),
|
180
|
+
},
|
181
|
+
],
|
182
|
+
},
|
183
|
+
...(barcodeHasText
|
184
|
+
? { textColor: { title: i18n('schemas.textColor'), type: 'string', widget: 'color' } }
|
185
|
+
: {}),
|
186
|
+
}),
|
189
187
|
...defaults,
|
190
188
|
};
|
191
189
|
};
|
package/src/barcodes/uiRender.ts
CHANGED
@@ -2,7 +2,7 @@ import type * as CSS from 'csstype';
|
|
2
2
|
import { UIRenderProps } from '@pdfme/common';
|
3
3
|
import type { BarcodeSchema } from './types';
|
4
4
|
import { validateBarcodeInput, createBarCode } from './helper.js';
|
5
|
-
import { addAlphaToHex } from '../renderUtils.js';
|
5
|
+
import { addAlphaToHex, isEditable } from '../renderUtils.js';
|
6
6
|
|
7
7
|
const fullSize = { width: '100%', height: '100%' };
|
8
8
|
|
@@ -71,20 +71,20 @@ export const uiRender = async (arg: UIRenderProps<BarcodeSchema>) => {
|
|
71
71
|
alignItems: 'center',
|
72
72
|
justifyContent: 'center',
|
73
73
|
fontFamily: "'Open Sans', sans-serif",
|
74
|
-
opacity: schema.opacity,
|
75
74
|
};
|
76
75
|
Object.assign(container.style, containerStyle);
|
77
76
|
rootElement.appendChild(container);
|
78
|
-
const editable = mode
|
77
|
+
const editable = isEditable(mode);
|
79
78
|
if (editable) {
|
80
79
|
const input = document.createElement('input');
|
81
80
|
const inputStyle: CSS.Properties = {
|
82
|
-
|
81
|
+
width: '100%',
|
83
82
|
position: 'absolute',
|
84
83
|
textAlign: 'center',
|
85
|
-
fontSize: '
|
86
|
-
|
87
|
-
|
84
|
+
fontSize: '12pt',
|
85
|
+
fontWeight: 'bold',
|
86
|
+
color: theme.colorWhite,
|
87
|
+
backgroundColor: editable || value ? addAlphaToHex('#000000', 80) : 'none',
|
88
88
|
border: 'none',
|
89
89
|
display: 'flex',
|
90
90
|
alignItems: 'center',
|
@@ -102,10 +102,8 @@ export const uiRender = async (arg: UIRenderProps<BarcodeSchema>) => {
|
|
102
102
|
stopEditing && stopEditing();
|
103
103
|
});
|
104
104
|
container.appendChild(input);
|
105
|
-
|
106
|
-
|
107
|
-
input.focus();
|
108
|
-
}
|
105
|
+
input.setSelectionRange(value.length, value.length);
|
106
|
+
input.focus();
|
109
107
|
}
|
110
108
|
|
111
109
|
if (!value) return;
|
package/src/image/pdfRender.ts
CHANGED
@@ -6,6 +6,7 @@ const getCacheKey = (schema: Schema, input: string) => `${schema.type}${input}`;
|
|
6
6
|
|
7
7
|
export const pdfRender = async (arg: PDFRenderProps<ImageSchema>) => {
|
8
8
|
const { value, schema, pdfDoc, page, _cache } = arg;
|
9
|
+
if (!value || !value.startsWith('data:image/')) return;
|
9
10
|
|
10
11
|
const inputImageCacheKey = getCacheKey(schema, value);
|
11
12
|
let image = _cache.get(inputImageCacheKey);
|
package/src/image/uiRender.ts
CHANGED
@@ -2,7 +2,7 @@ import type { ChangeEvent } from 'react';
|
|
2
2
|
import type * as CSS from 'csstype';
|
3
3
|
import type { ImageSchema } from './types';
|
4
4
|
import { UIRenderProps, ZOOM } from '@pdfme/common';
|
5
|
-
import { addAlphaToHex } from '../renderUtils.js';
|
5
|
+
import { addAlphaToHex, isEditable } from '../renderUtils.js';
|
6
6
|
|
7
7
|
const fullSize = { width: '100%', height: '100%' };
|
8
8
|
|
@@ -37,16 +37,16 @@ const readFile = (input: File | FileList | null): Promise<string | ArrayBuffer>
|
|
37
37
|
export const uiRender = async (arg: UIRenderProps<ImageSchema>) => {
|
38
38
|
const { value, rootElement, mode, onChange, stopEditing, tabIndex, placeholder, schema, theme } =
|
39
39
|
arg;
|
40
|
-
const editable = mode
|
40
|
+
const editable = isEditable(mode);
|
41
41
|
|
42
42
|
const size = { width: schema.width * ZOOM, height: schema.height * ZOOM };
|
43
43
|
|
44
44
|
const container = document.createElement('div');
|
45
|
+
const backgroundStyle = placeholder ? `url(${placeholder})` : 'none';
|
45
46
|
const containerStyle: CSS.Properties = {
|
46
47
|
...fullSize,
|
47
|
-
backgroundImage: value ? 'none' :
|
48
|
+
backgroundImage: value ? 'none' : backgroundStyle,
|
48
49
|
backgroundSize: `${size.width}px ${size.height}px`,
|
49
|
-
opacity: schema.opacity,
|
50
50
|
};
|
51
51
|
Object.assign(container.style, containerStyle);
|
52
52
|
container.addEventListener('click', (e) => {
|
package/src/index.ts
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
import text from './text/index.js';
|
2
2
|
import image from './image/index.js';
|
3
3
|
import barcodes from './barcodes/index.js';
|
4
|
+
import line from './line/index.js';
|
4
5
|
import { convertForPdfLayoutProps, rotatePoint } from './renderUtils.js';
|
5
6
|
|
6
7
|
const builtInPlugins = { Text: text };
|
7
8
|
|
8
|
-
export { text, image, barcodes, builtInPlugins, convertForPdfLayoutProps, rotatePoint };
|
9
|
+
export { text, image, barcodes, line, builtInPlugins, convertForPdfLayoutProps, rotatePoint };
|
@@ -0,0 +1 @@
|
|
1
|
+
export const DEFAULT_LINE_COLOR = '#000000';
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { Plugin } from '@pdfme/common';
|
2
|
+
import { pdfRender } from './pdfRender.js';
|
3
|
+
import { propPanel } from './propPanel.js';
|
4
|
+
import { uiRender } from './uiRender.js';
|
5
|
+
import type { LineSchema } from './types.js';
|
6
|
+
|
7
|
+
const schema: Plugin<LineSchema> = { pdf: pdfRender, ui: uiRender, propPanel };
|
8
|
+
export default schema;
|