@pdfme/schemas 5.3.8-dev.3 → 5.3.8-dev.36
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__/barcode.test.js +115 -113
- package/dist/cjs/__tests__/barcode.test.js.map +1 -1
- package/dist/cjs/__tests__/multiVariableText.test.js +15 -15
- package/dist/cjs/__tests__/multiVariableText.test.js.map +1 -1
- package/dist/cjs/__tests__/text.test.js +71 -71
- package/dist/cjs/__tests__/text.test.js.map +1 -1
- package/dist/cjs/__tests__/utils.test.js +76 -15
- package/dist/cjs/__tests__/utils.test.js.map +1 -1
- package/dist/cjs/src/checkbox/index.js +3 -3
- package/dist/cjs/src/checkbox/index.js.map +1 -1
- package/dist/cjs/src/date/date.js +2 -2
- package/dist/cjs/src/date/date.js.map +1 -1
- package/dist/cjs/src/date/dateTime.js +2 -2
- package/dist/cjs/src/date/dateTime.js.map +1 -1
- package/dist/cjs/src/date/helper.js +110 -78
- package/dist/cjs/src/date/helper.js.map +1 -1
- package/dist/cjs/src/date/time.js +2 -2
- package/dist/cjs/src/date/time.js.map +1 -1
- package/dist/cjs/src/graphics/svg.js +25 -2
- package/dist/cjs/src/graphics/svg.js.map +1 -1
- package/dist/cjs/src/index.js +30 -30
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/multiVariableText/helper.js +2 -2
- package/dist/cjs/src/multiVariableText/helper.js.map +1 -1
- package/dist/cjs/src/multiVariableText/pdfRender.js +5 -5
- package/dist/cjs/src/multiVariableText/pdfRender.js.map +1 -1
- package/dist/cjs/src/multiVariableText/propPanel.js +5 -5
- package/dist/cjs/src/multiVariableText/propPanel.js.map +1 -1
- package/dist/cjs/src/multiVariableText/uiRender.js +10 -10
- package/dist/cjs/src/multiVariableText/uiRender.js.map +1 -1
- package/dist/cjs/src/radioGroup/index.js +3 -3
- package/dist/cjs/src/radioGroup/index.js.map +1 -1
- package/dist/cjs/src/select/index.js +9 -9
- package/dist/cjs/src/select/index.js.map +1 -1
- package/dist/cjs/src/tables/classes.js +4 -4
- package/dist/cjs/src/tables/classes.js.map +1 -1
- package/dist/cjs/src/tables/dynamicTemplate.js +2 -2
- package/dist/cjs/src/tables/dynamicTemplate.js.map +1 -1
- package/dist/cjs/src/tables/helper.js +21 -21
- package/dist/cjs/src/tables/helper.js.map +1 -1
- package/dist/cjs/src/tables/pdfRender.js +8 -8
- package/dist/cjs/src/tables/pdfRender.js.map +1 -1
- package/dist/cjs/src/tables/tableHelper.js +5 -5
- package/dist/cjs/src/tables/tableHelper.js.map +1 -1
- package/dist/cjs/src/text/extraFormatter.js +14 -14
- package/dist/cjs/src/text/extraFormatter.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/utils.js +53 -9
- package/dist/cjs/src/utils.js.map +1 -1
- package/dist/esm/__tests__/barcode.test.js +8 -6
- package/dist/esm/__tests__/barcode.test.js.map +1 -1
- package/dist/esm/__tests__/multiVariableText.test.js +1 -1
- package/dist/esm/__tests__/multiVariableText.test.js.map +1 -1
- package/dist/esm/__tests__/text.test.js +2 -2
- package/dist/esm/__tests__/text.test.js.map +1 -1
- package/dist/esm/__tests__/utils.test.js +65 -4
- package/dist/esm/__tests__/utils.test.js.map +1 -1
- package/dist/esm/src/checkbox/index.js +1 -1
- package/dist/esm/src/checkbox/index.js.map +1 -1
- package/dist/esm/src/date/date.js +1 -1
- package/dist/esm/src/date/date.js.map +1 -1
- package/dist/esm/src/date/dateTime.js +1 -1
- package/dist/esm/src/date/dateTime.js.map +1 -1
- package/dist/esm/src/date/helper.js +70 -38
- package/dist/esm/src/date/helper.js.map +1 -1
- package/dist/esm/src/date/time.js +1 -1
- package/dist/esm/src/date/time.js.map +1 -1
- package/dist/esm/src/graphics/svg.js +25 -2
- package/dist/esm/src/graphics/svg.js.map +1 -1
- package/dist/esm/src/index.js +14 -14
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/multiVariableText/helper.js +2 -2
- package/dist/esm/src/multiVariableText/helper.js.map +1 -1
- package/dist/esm/src/multiVariableText/pdfRender.js +2 -2
- package/dist/esm/src/multiVariableText/pdfRender.js.map +1 -1
- package/dist/esm/src/multiVariableText/propPanel.js +1 -1
- package/dist/esm/src/multiVariableText/propPanel.js.map +1 -1
- package/dist/esm/src/multiVariableText/uiRender.js +4 -4
- package/dist/esm/src/multiVariableText/uiRender.js.map +1 -1
- package/dist/esm/src/radioGroup/index.js +1 -1
- package/dist/esm/src/radioGroup/index.js.map +1 -1
- package/dist/esm/src/select/index.js +2 -2
- package/dist/esm/src/select/index.js.map +1 -1
- package/dist/esm/src/tables/classes.js +1 -1
- package/dist/esm/src/tables/classes.js.map +1 -1
- package/dist/esm/src/tables/dynamicTemplate.js +1 -1
- package/dist/esm/src/tables/dynamicTemplate.js.map +1 -1
- package/dist/esm/src/tables/helper.js +1 -1
- package/dist/esm/src/tables/helper.js.map +1 -1
- package/dist/esm/src/tables/pdfRender.js +4 -4
- package/dist/esm/src/tables/pdfRender.js.map +1 -1
- package/dist/esm/src/tables/tableHelper.js +1 -1
- package/dist/esm/src/tables/tableHelper.js.map +1 -1
- package/dist/esm/src/text/extraFormatter.js +2 -2
- package/dist/esm/src/text/extraFormatter.js.map +1 -1
- package/dist/esm/src/text/propPanel.js +1 -1
- package/dist/esm/src/text/propPanel.js.map +1 -1
- package/dist/esm/src/utils.js +53 -9
- package/dist/esm/src/utils.js.map +1 -1
- package/dist/node/__tests__/barcode.test.js +121 -124
- package/dist/node/__tests__/barcode.test.js.map +1 -1
- package/dist/node/__tests__/multiVariableText.test.js +15 -17
- package/dist/node/__tests__/multiVariableText.test.js.map +1 -1
- package/dist/node/__tests__/text.test.js +77 -102
- package/dist/node/__tests__/text.test.js.map +1 -1
- package/dist/node/__tests__/utils.test.js +90 -31
- package/dist/node/__tests__/utils.test.js.map +1 -1
- package/dist/node/src/barcodes/constants.js +4 -7
- package/dist/node/src/barcodes/constants.js.map +1 -1
- package/dist/node/src/barcodes/helper.js +16 -26
- package/dist/node/src/barcodes/helper.js.map +1 -1
- package/dist/node/src/barcodes/index.js +12 -14
- package/dist/node/src/barcodes/index.js.map +1 -1
- package/dist/node/src/barcodes/pdfRender.js +6 -10
- package/dist/node/src/barcodes/pdfRender.js.map +1 -1
- package/dist/node/src/barcodes/propPanel.js +20 -24
- package/dist/node/src/barcodes/propPanel.js.map +1 -1
- package/dist/node/src/barcodes/types.js +1 -2
- package/dist/node/src/barcodes/uiRender.js +8 -12
- package/dist/node/src/barcodes/uiRender.js.map +1 -1
- package/dist/node/src/checkbox/index.js +12 -17
- package/dist/node/src/checkbox/index.js.map +1 -1
- package/dist/node/src/constants.js +2 -5
- package/dist/node/src/constants.js.map +1 -1
- package/dist/node/src/date/date.js +5 -7
- package/dist/node/src/date/date.js.map +1 -1
- package/dist/node/src/date/dateTime.js +5 -7
- package/dist/node/src/date/dateTime.js.map +1 -1
- package/dist/node/src/date/helper.js +135 -133
- package/dist/node/src/date/helper.js.map +1 -1
- package/dist/node/src/date/time.js +5 -7
- package/dist/node/src/date/time.js.map +1 -1
- package/dist/node/src/date/types.js +1 -2
- package/dist/node/src/graphics/cacheKey.js +1 -5
- package/dist/node/src/graphics/cacheKey.js.map +1 -1
- package/dist/node/src/graphics/image.js +15 -17
- package/dist/node/src/graphics/image.js.map +1 -1
- package/dist/node/src/graphics/imagehelper.js +3 -7
- package/dist/node/src/graphics/imagehelper.js.map +1 -1
- package/dist/node/src/graphics/svg.js +35 -14
- package/dist/node/src/graphics/svg.js.map +1 -1
- package/dist/node/src/index.js +18 -37
- package/dist/node/src/index.js.map +1 -1
- package/dist/node/src/multiVariableText/helper.js +4 -9
- package/dist/node/src/multiVariableText/helper.js.map +1 -1
- package/dist/node/src/multiVariableText/index.js +10 -12
- package/dist/node/src/multiVariableText/index.js.map +1 -1
- package/dist/node/src/multiVariableText/pdfRender.js +6 -10
- package/dist/node/src/multiVariableText/pdfRender.js.map +1 -1
- package/dist/node/src/multiVariableText/propPanel.js +6 -9
- package/dist/node/src/multiVariableText/propPanel.js.map +1 -1
- package/dist/node/src/multiVariableText/types.js +1 -2
- package/dist/node/src/multiVariableText/uiRender.js +13 -17
- package/dist/node/src/multiVariableText/uiRender.js.map +1 -1
- package/dist/node/src/radioGroup/index.js +11 -16
- package/dist/node/src/radioGroup/index.js.map +1 -1
- package/dist/node/src/select/index.js +13 -18
- package/dist/node/src/select/index.js.map +1 -1
- package/dist/node/src/shapes/line.js +10 -12
- package/dist/node/src/shapes/line.js.map +1 -1
- package/dist/node/src/shapes/rectAndEllipse.js +18 -21
- package/dist/node/src/shapes/rectAndEllipse.js.map +1 -1
- package/dist/node/src/tables/cell.js +15 -20
- package/dist/node/src/tables/cell.js.map +1 -1
- package/dist/node/src/tables/classes.js +11 -18
- package/dist/node/src/tables/classes.js.map +1 -1
- package/dist/node/src/tables/dynamicTemplate.js +5 -9
- package/dist/node/src/tables/dynamicTemplate.js.map +1 -1
- package/dist/node/src/tables/helper.js +27 -35
- package/dist/node/src/tables/helper.js.map +1 -1
- package/dist/node/src/tables/index.js +10 -12
- package/dist/node/src/tables/index.js.map +1 -1
- package/dist/node/src/tables/pdfRender.js +9 -16
- package/dist/node/src/tables/pdfRender.js.map +1 -1
- package/dist/node/src/tables/propPanel.js +12 -15
- package/dist/node/src/tables/propPanel.js.map +1 -1
- package/dist/node/src/tables/tableHelper.js +11 -15
- package/dist/node/src/tables/tableHelper.js.map +1 -1
- package/dist/node/src/tables/types.js +1 -2
- package/dist/node/src/tables/uiRender.js +15 -22
- package/dist/node/src/tables/uiRender.js.map +1 -1
- package/dist/node/src/text/constants.js +22 -25
- package/dist/node/src/text/constants.js.map +1 -1
- package/dist/node/src/text/extraFormatter.js +17 -21
- package/dist/node/src/text/extraFormatter.js.map +1 -1
- package/dist/node/src/text/helper.js +48 -85
- package/dist/node/src/text/helper.js.map +1 -1
- package/dist/node/src/text/icons/index.js +11 -14
- package/dist/node/src/text/icons/index.js.map +1 -1
- package/dist/node/src/text/index.js +10 -12
- package/dist/node/src/text/index.js.map +1 -1
- package/dist/node/src/text/pdfRender.js +32 -36
- package/dist/node/src/text/pdfRender.js.map +1 -1
- package/dist/node/src/text/propPanel.js +22 -25
- package/dist/node/src/text/propPanel.js.map +1 -1
- package/dist/node/src/text/types.js +1 -2
- package/dist/node/src/text/uiRender.js +34 -42
- package/dist/node/src/text/uiRender.js.map +1 -1
- package/dist/node/src/utils.js +79 -47
- package/dist/node/src/utils.js.map +1 -1
- package/dist/types/src/barcodes/helper.d.ts +1 -1
- package/dist/types/src/barcodes/index.d.ts +1 -1
- package/dist/types/src/barcodes/pdfRender.d.ts +1 -1
- package/dist/types/src/barcodes/propPanel.d.ts +1 -1
- package/dist/types/src/barcodes/uiRender.d.ts +1 -1
- package/dist/types/src/date/date.d.ts +1 -1
- package/dist/types/src/date/dateTime.d.ts +1 -1
- package/dist/types/src/date/helper.d.ts +1 -1
- package/dist/types/src/date/time.d.ts +1 -1
- package/dist/types/src/date/types.d.ts +6 -1
- package/dist/types/src/index.d.ts +15 -15
- package/dist/types/src/multiVariableText/helper.d.ts +1 -1
- package/dist/types/src/multiVariableText/index.d.ts +1 -1
- package/dist/types/src/multiVariableText/pdfRender.d.ts +1 -1
- package/dist/types/src/multiVariableText/propPanel.d.ts +1 -1
- package/dist/types/src/multiVariableText/types.d.ts +1 -1
- package/dist/types/src/multiVariableText/uiRender.d.ts +1 -1
- package/dist/types/src/select/index.d.ts +1 -1
- package/dist/types/src/tables/cell.d.ts +1 -1
- package/dist/types/src/tables/classes.d.ts +1 -1
- package/dist/types/src/tables/helper.d.ts +4 -4
- package/dist/types/src/tables/pdfRender.d.ts +1 -1
- package/dist/types/src/tables/propPanel.d.ts +1 -1
- package/dist/types/src/tables/tableHelper.d.ts +1 -1
- package/dist/types/src/tables/types.d.ts +1 -1
- package/dist/types/src/text/constants.d.ts +1 -1
- package/dist/types/src/text/helper.d.ts +1 -1
- package/dist/types/src/text/index.d.ts +1 -1
- package/dist/types/src/text/pdfRender.d.ts +1 -1
- package/dist/types/src/text/propPanel.d.ts +1 -1
- package/dist/types/src/text/uiRender.d.ts +1 -1
- package/package.json +3 -3
- package/src/barcodes/helper.ts +1 -1
- package/src/barcodes/index.ts +1 -1
- package/src/barcodes/pdfRender.ts +1 -1
- package/src/barcodes/propPanel.ts +1 -1
- package/src/barcodes/uiRender.ts +1 -1
- package/src/checkbox/index.ts +1 -1
- package/src/date/date.ts +1 -1
- package/src/date/dateTime.ts +1 -1
- package/src/date/helper.ts +84 -43
- package/src/date/time.ts +1 -1
- package/src/date/types.ts +7 -1
- package/src/graphics/svg.ts +27 -2
- package/src/index.ts +14 -14
- package/src/multiVariableText/helper.ts +15 -7
- package/src/multiVariableText/index.ts +1 -1
- package/src/multiVariableText/pdfRender.ts +3 -3
- package/src/multiVariableText/propPanel.ts +2 -2
- package/src/multiVariableText/types.ts +1 -1
- package/src/multiVariableText/uiRender.ts +5 -5
- package/src/radioGroup/index.ts +1 -1
- package/src/select/index.ts +3 -3
- package/src/tables/cell.ts +1 -1
- package/src/tables/classes.ts +2 -2
- package/src/tables/dynamicTemplate.ts +2 -2
- package/src/tables/helper.ts +1 -1
- package/src/tables/pdfRender.ts +6 -6
- package/src/tables/propPanel.ts +1 -1
- package/src/tables/tableHelper.ts +2 -2
- package/src/tables/types.ts +1 -1
- package/src/tables/uiRender.ts +1 -1
- package/src/text/constants.ts +1 -1
- package/src/text/extraFormatter.ts +2 -2
- package/src/text/helper.ts +1 -1
- package/src/text/index.ts +1 -1
- package/src/text/pdfRender.ts +1 -1
- package/src/text/propPanel.ts +2 -2
- package/src/text/uiRender.ts +1 -1
- package/src/utils.ts +64 -15
- package/tsconfig.esm.json +2 -1
@@ -26,8 +26,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
const fs_1 = require("fs");
|
27
27
|
const path = __importStar(require("path"));
|
28
28
|
const common_1 = require("@pdfme/common");
|
29
|
-
const
|
30
|
-
const
|
29
|
+
const helper_js_1 = require("../src/text/helper.js");
|
30
|
+
const constants_js_1 = require("../src/text/constants.js");
|
31
31
|
const sansData = (0, fs_1.readFileSync)(path.join(__dirname, `/assets/fonts/SauceHanSansJP.ttf`));
|
32
32
|
const serifData = (0, fs_1.readFileSync)(path.join(__dirname, `/assets/fonts/SauceHanSerifJP.ttf`));
|
33
33
|
const getSampleFont = () => ({
|
@@ -77,35 +77,35 @@ describe('getSplitPosition test with mocked font width calculations', () => {
|
|
77
77
|
boxWidthInPt: 5,
|
78
78
|
};
|
79
79
|
it('does not split an empty string', () => {
|
80
|
-
expect((0,
|
80
|
+
expect((0, helper_js_1.getSplittedLines)('', mockCalcValues)).toEqual(['']);
|
81
81
|
});
|
82
82
|
it('does not split a short line', () => {
|
83
|
-
expect((0,
|
84
|
-
expect((0,
|
83
|
+
expect((0, helper_js_1.getSplittedLines)('a', mockCalcValues)).toEqual(['a']);
|
84
|
+
expect((0, helper_js_1.getSplittedLines)('aaaa', mockCalcValues)).toEqual(['aaaa']);
|
85
85
|
});
|
86
86
|
it('splits a line to the nearest previous breakable char', () => {
|
87
|
-
expect((0,
|
88
|
-
expect((0,
|
89
|
-
expect((0,
|
90
|
-
expect((0,
|
87
|
+
expect((0, helper_js_1.getSplittedLines)('aaa bbb', mockCalcValues)).toEqual(['aaa', 'bbb']);
|
88
|
+
expect((0, helper_js_1.getSplittedLines)('top-hat', mockCalcValues)).toEqual(['top-', 'hat']);
|
89
|
+
expect((0, helper_js_1.getSplittedLines)('top—hat', mockCalcValues)).toEqual(['top—', 'hat']); // em dash
|
90
|
+
expect((0, helper_js_1.getSplittedLines)('top–hat', mockCalcValues)).toEqual(['top–', 'hat']); // en dash
|
91
91
|
});
|
92
92
|
it('splits a line where the split point is on a breakable char', () => {
|
93
|
-
expect((0,
|
94
|
-
expect((0,
|
93
|
+
expect((0, helper_js_1.getSplittedLines)('aaaaa bbbbb', mockCalcValues)).toEqual(['aaaaa', 'bbbbb']);
|
94
|
+
expect((0, helper_js_1.getSplittedLines)('left-hand', mockCalcValues)).toEqual(['left-', 'hand']);
|
95
95
|
});
|
96
96
|
it('splits a long line in the middle of a word if too long', () => {
|
97
|
-
expect((0,
|
98
|
-
expect((0,
|
99
|
-
expect((0,
|
97
|
+
expect((0, helper_js_1.getSplittedLines)('aaaaaa bbb', mockCalcValues)).toEqual(['aaaaa', 'a bbb']);
|
98
|
+
expect((0, helper_js_1.getSplittedLines)('aaaaaa-a b', mockCalcValues)).toEqual(['aaaaa', 'a-a b']);
|
99
|
+
expect((0, helper_js_1.getSplittedLines)('aaaaa-aa b', mockCalcValues)).toEqual(['aaaaa', '-aa b']);
|
100
100
|
});
|
101
101
|
it('splits a long line without breakable chars at exactly 5 chars', () => {
|
102
|
-
expect((0,
|
102
|
+
expect((0, helper_js_1.getSplittedLines)('abcdef', mockCalcValues)).toEqual(['abcde', 'f']);
|
103
103
|
});
|
104
104
|
it('splits a very long line without breakable chars at exactly 5 chars', () => {
|
105
|
-
expect((0,
|
105
|
+
expect((0, helper_js_1.getSplittedLines)('abcdefghijklmn', mockCalcValues)).toEqual(['abcde', 'fghij', 'klmn']);
|
106
106
|
});
|
107
107
|
it('splits a line with lots of words', () => {
|
108
|
-
expect((0,
|
108
|
+
expect((0, helper_js_1.getSplittedLines)('a b c d e', mockCalcValues)).toEqual(['a b c', 'd e']);
|
109
109
|
});
|
110
110
|
});
|
111
111
|
describe('getSplittedLines test with real font width calculations', () => {
|
@@ -117,34 +117,34 @@ describe('getSplittedLines test with real font width calculations', () => {
|
|
117
117
|
};
|
118
118
|
it('should not split a line when the text is shorter than the width', async () => {
|
119
119
|
const _cache = new Map();
|
120
|
-
await (0,
|
120
|
+
await (0, helper_js_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
|
121
121
|
const fontWidthCalcs = Object.assign({}, baseCalcValues, { font: fontKitFont });
|
122
|
-
const result = (0,
|
122
|
+
const result = (0, helper_js_1.getSplittedLines)('short', fontWidthCalcs);
|
123
123
|
expect(result).toEqual(['short']);
|
124
124
|
});
|
125
125
|
});
|
126
126
|
it('should split a line when the text is longer than the width', async () => {
|
127
127
|
const _cache = new Map();
|
128
|
-
await (0,
|
128
|
+
await (0, helper_js_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
|
129
129
|
const fontWidthCalcs = Object.assign({}, baseCalcValues, { font: fontKitFont });
|
130
|
-
const result = (0,
|
130
|
+
const result = (0, helper_js_1.getSplittedLines)('this will wrap', fontWidthCalcs);
|
131
131
|
expect(result).toEqual(['this', 'will', 'wrap']);
|
132
132
|
});
|
133
133
|
});
|
134
134
|
it('should split a line in the middle when unspaced text will not fit on a line', async () => {
|
135
135
|
const _cache = new Map();
|
136
|
-
await (0,
|
136
|
+
await (0, helper_js_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
|
137
137
|
const fontWidthCalcs = Object.assign({}, baseCalcValues, { font: fontKitFont });
|
138
|
-
const result = (0,
|
138
|
+
const result = (0, helper_js_1.getSplittedLines)('thiswillbecut', fontWidthCalcs);
|
139
139
|
expect(result).toEqual(['thiswi', 'llbecu', 't']);
|
140
140
|
});
|
141
141
|
});
|
142
142
|
it('should not split text when it is impossible due to size constraints', async () => {
|
143
143
|
const _cache = new Map();
|
144
|
-
await (0,
|
144
|
+
await (0, helper_js_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
|
145
145
|
const fontWidthCalcs = Object.assign({}, baseCalcValues, { font: fontKitFont });
|
146
146
|
fontWidthCalcs.boxWidthInPt = 2;
|
147
|
-
const result = (0,
|
147
|
+
const result = (0, helper_js_1.getSplittedLines)('thiswillnotbecut', fontWidthCalcs);
|
148
148
|
expect(result).toEqual(['thiswillnotbecut']);
|
149
149
|
});
|
150
150
|
});
|
@@ -152,31 +152,31 @@ describe('getSplittedLines test with real font width calculations', () => {
|
|
152
152
|
describe('calculateDynamicFontSize with Default font', () => {
|
153
153
|
let fontKitFont;
|
154
154
|
beforeAll(async () => {
|
155
|
-
fontKitFont = await (0,
|
155
|
+
fontKitFont = await (0, helper_js_1.getFontKitFont)('SauceHanSansJP', (0, common_1.getDefaultFont)(), new Map());
|
156
156
|
});
|
157
157
|
it('should return default font size when dynamicFontSizeSetting is not provided', async () => {
|
158
158
|
const textSchema = getTextSchema();
|
159
|
-
const result = (0,
|
159
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value: 'test' });
|
160
160
|
expect(result).toBe(14);
|
161
161
|
});
|
162
162
|
it('should return default font size when dynamicFontSizeSetting max is less than min', async () => {
|
163
163
|
const textSchema = getTextSchema();
|
164
164
|
textSchema.dynamicFontSize = { min: 11, max: 10, fit: 'vertical' };
|
165
|
-
const result = (0,
|
165
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value: 'test' });
|
166
166
|
expect(result).toBe(14);
|
167
167
|
});
|
168
168
|
it('should calculate a dynamic font size of vertical fit between min and max', async () => {
|
169
169
|
const textSchema = getTextSchema();
|
170
170
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
171
171
|
const value = 'test with a length string\n and a new line';
|
172
|
-
const result = (0,
|
172
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
173
173
|
expect(result).toBe(19.25);
|
174
174
|
});
|
175
175
|
it('should calculate a dynamic font size of horizontal fit between min and max', async () => {
|
176
176
|
const textSchema = getTextSchema();
|
177
177
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
|
178
178
|
const value = 'test with a length string\n and a new line';
|
179
|
-
const result = (0,
|
179
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
180
180
|
expect(result).toBe(11.25);
|
181
181
|
});
|
182
182
|
it('should calculate a dynamic font size between min and max regardless of current font size', async () => {
|
@@ -184,10 +184,10 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
184
184
|
textSchema.fontSize = 2;
|
185
185
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
186
186
|
const value = 'test with a length string\n and a new line';
|
187
|
-
let result = (0,
|
187
|
+
let result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
188
188
|
expect(result).toBe(19.25);
|
189
189
|
textSchema.fontSize = 40;
|
190
|
-
result = (0,
|
190
|
+
result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
191
191
|
expect(result).toBe(19.25);
|
192
192
|
});
|
193
193
|
it('should return min font size when content is too big to fit given constraints', async () => {
|
@@ -195,7 +195,7 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
195
195
|
textSchema.width = 10;
|
196
196
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
197
197
|
const value = 'test with a length string\n and a new line';
|
198
|
-
const result = (0,
|
198
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
199
199
|
expect(result).toBe(10);
|
200
200
|
});
|
201
201
|
it('should return max font size when content is too small to fit given constraints', async () => {
|
@@ -204,7 +204,7 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
204
204
|
textSchema.height = 200;
|
205
205
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
206
206
|
const value = 'test with a length string\n and a new line';
|
207
|
-
const result = (0,
|
207
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
208
208
|
expect(result).toBe(30);
|
209
209
|
});
|
210
210
|
it('should not reduce font size below 0', async () => {
|
@@ -213,7 +213,7 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
213
213
|
textSchema.width = 4;
|
214
214
|
textSchema.height = 1;
|
215
215
|
const value = 'a very \nlong \nmulti-line \nstring\nto';
|
216
|
-
const result = (0,
|
216
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
217
217
|
expect(result).toBeGreaterThan(0);
|
218
218
|
});
|
219
219
|
it('should calculate a dynamic font size when a starting font size is passed that is lower than the eventual', async () => {
|
@@ -221,7 +221,7 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
221
221
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
222
222
|
const value = 'test with a length string\n and a new line';
|
223
223
|
const startingFontSize = 18;
|
224
|
-
const result = (0,
|
224
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value, startingFontSize });
|
225
225
|
expect(result).toBe(19.25);
|
226
226
|
});
|
227
227
|
it('should calculate a dynamic font size when a starting font size is passed that is higher than the eventual', async () => {
|
@@ -229,97 +229,97 @@ describe('calculateDynamicFontSize with Default font', () => {
|
|
229
229
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
|
230
230
|
const value = 'test with a length string\n and a new line';
|
231
231
|
const startingFontSize = 36;
|
232
|
-
const result = (0,
|
232
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value, startingFontSize });
|
233
233
|
expect(result).toBe(11.25);
|
234
234
|
});
|
235
235
|
it('should calculate a dynamic font size using vertical fit as a default if no fit provided', async () => {
|
236
236
|
const textSchema = getTextSchema();
|
237
237
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
238
238
|
const value = 'test with a length string\n and a new line';
|
239
|
-
const result = (0,
|
239
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
240
240
|
expect(result).toBe(19.25);
|
241
241
|
});
|
242
242
|
});
|
243
243
|
describe('calculateDynamicFontSize with Custom font', () => {
|
244
244
|
let fontKitFont;
|
245
245
|
beforeAll(async () => {
|
246
|
-
fontKitFont = await (0,
|
246
|
+
fontKitFont = await (0, helper_js_1.getFontKitFont)('SauceHanSansJP', getSampleFont(), new Map());
|
247
247
|
});
|
248
248
|
it('should return smaller font size when dynamicFontSizeSetting is provided with horizontal fit', async () => {
|
249
249
|
const textSchema = getTextSchema();
|
250
250
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
|
251
251
|
const value = 'あいうあいうあい';
|
252
|
-
const result = (0,
|
252
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
253
253
|
expect(result).toBe(16.75);
|
254
254
|
});
|
255
255
|
it('should return smaller font size when dynamicFontSizeSetting is provided with vertical fit', async () => {
|
256
256
|
const textSchema = getTextSchema();
|
257
257
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
258
258
|
const value = 'あいうあいうあい';
|
259
|
-
const result = (0,
|
259
|
+
const result = (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
260
260
|
expect(result).toBe(26);
|
261
261
|
});
|
262
262
|
it('should return min font size when content is too big to fit given constraints', async () => {
|
263
263
|
const textSchema = getTextSchema();
|
264
264
|
textSchema.dynamicFontSize = { min: 20, max: 30, fit: 'vertical' };
|
265
265
|
const value = 'あいうあいうあいうあいうあいうあいうあいうあいうあいう';
|
266
|
-
const result = await (0,
|
266
|
+
const result = await (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
267
267
|
expect(result).toBe(20);
|
268
268
|
});
|
269
269
|
it('should return max font size when content is too small to fit given constraints', async () => {
|
270
270
|
const textSchema = getTextSchema();
|
271
271
|
textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
|
272
272
|
const value = 'あ';
|
273
|
-
const result = await (0,
|
273
|
+
const result = await (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
274
274
|
expect(result).toBe(30);
|
275
275
|
});
|
276
276
|
it('should return min font size when content is multi-line with too many lines for the container', async () => {
|
277
277
|
const textSchema = getTextSchema();
|
278
278
|
textSchema.dynamicFontSize = { min: 5, max: 20, fit: 'vertical' };
|
279
279
|
const value = 'あ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう';
|
280
|
-
const result = await (0,
|
280
|
+
const result = await (0, helper_js_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
|
281
281
|
expect(result).toBe(5);
|
282
282
|
});
|
283
283
|
});
|
284
284
|
describe('getFontDescentInPt test', () => {
|
285
285
|
test('it gets a descent size relative to the font size', () => {
|
286
|
-
expect((0,
|
287
|
-
expect((0,
|
288
|
-
expect((0,
|
286
|
+
expect((0, helper_js_1.getFontDescentInPt)({ descent: -400, unitsPerEm: 1000 }, 12)).toBe(-4.800000000000001);
|
287
|
+
expect((0, helper_js_1.getFontDescentInPt)({ descent: 54, unitsPerEm: 1000 }, 20)).toBe(1.08);
|
288
|
+
expect((0, helper_js_1.getFontDescentInPt)({ descent: -512, unitsPerEm: 2048 }, 54)).toBe(-13.5);
|
289
289
|
});
|
290
290
|
});
|
291
291
|
describe('getBrowserVerticalFontAdjustments test', () => {
|
292
292
|
// Font with a base line-height of 1.349
|
293
293
|
const font = { ascent: 1037, descent: -312, unitsPerEm: 1000 };
|
294
294
|
test('it gets a top adjustment when vertically aligning top', () => {
|
295
|
-
expect((0,
|
295
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(font, 12, 1.0, 'top')).toEqual({
|
296
296
|
topAdj: 2.791301999999999,
|
297
297
|
bottomAdj: 0,
|
298
298
|
});
|
299
|
-
expect((0,
|
299
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(font, 36, 2.0, 'top')).toEqual({
|
300
300
|
topAdj: 8.373906,
|
301
301
|
bottomAdj: 0,
|
302
302
|
});
|
303
303
|
});
|
304
304
|
test('it gets a bottom adjustment when vertically aligning middle or bottom', () => {
|
305
|
-
expect((0,
|
305
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(font, 12, 1.0, 'bottom')).toEqual({
|
306
306
|
topAdj: 0,
|
307
307
|
bottomAdj: 2.791302,
|
308
308
|
});
|
309
|
-
expect((0,
|
309
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(font, 12, 1.15, 'middle')).toEqual({
|
310
310
|
topAdj: 0,
|
311
311
|
bottomAdj: 1.5916020000000004,
|
312
312
|
});
|
313
313
|
});
|
314
314
|
test('it does not get a bottom adjustment if the line height exceeds that of the font', () => {
|
315
|
-
expect((0,
|
315
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(font, 12, 1.35, 'bottom')).toEqual({
|
316
316
|
topAdj: 0,
|
317
317
|
bottomAdj: 0,
|
318
318
|
});
|
319
319
|
});
|
320
320
|
test('it does not get a bottom adjustment if the font base line-height is 1.0 or less', () => {
|
321
321
|
const thisFont = { ascent: 900, descent: -50, unitsPerEm: 1000 };
|
322
|
-
expect((0,
|
322
|
+
expect((0, helper_js_1.getBrowserVerticalFontAdjustments)(thisFont, 20, 1.0, 'bottom')).toEqual({
|
323
323
|
topAdj: 0,
|
324
324
|
bottomAdj: 0,
|
325
325
|
});
|
@@ -327,59 +327,59 @@ describe('getBrowserVerticalFontAdjustments test', () => {
|
|
327
327
|
});
|
328
328
|
describe('filterStartJP', () => {
|
329
329
|
test('空の配列を渡すと空の配列を返す', () => {
|
330
|
-
expect((0,
|
330
|
+
expect((0, helper_js_1.filterStartJP)([])).toEqual([]);
|
331
331
|
});
|
332
332
|
test('禁則文字を含まない行はそのまま返す', () => {
|
333
333
|
const input = ['これは', '普通の', '文章です。'];
|
334
|
-
expect((0,
|
334
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(input);
|
335
335
|
});
|
336
336
|
test('行頭の禁則文字を前の行の末尾に移動する', () => {
|
337
337
|
const input = ['これは', '。文章', 'です'];
|
338
338
|
const expected = ['これは。', '文章', 'です'];
|
339
|
-
expect((0,
|
339
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
|
340
340
|
});
|
341
341
|
test('複数の禁則文字を正しく処理する', () => {
|
342
342
|
const input = ['これは', '。とても', '、長い', '」文章', 'です'];
|
343
343
|
const expected = ['これは。', 'とても、', '長い」', '文章', 'です'];
|
344
|
-
expect((0,
|
344
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
|
345
345
|
});
|
346
346
|
test('空の行を保持する', () => {
|
347
347
|
const input = ['これは', '', '。文章', 'です'];
|
348
348
|
const expected = ['これは。', '', '文章', 'です'];
|
349
|
-
expect((0,
|
349
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
|
350
350
|
});
|
351
351
|
test('1文字の行(禁則文字のみ)はそのまま保持する', () => {
|
352
352
|
const input = ['これは', '。', '文章', 'です'];
|
353
353
|
// const expected = ['これは。', '文章', 'です'];
|
354
354
|
const expected = ['これは', '。', '文章', 'です'];
|
355
|
-
expect((0,
|
355
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
|
356
356
|
});
|
357
357
|
test('すべての禁則文字を正しく処理する', () => {
|
358
|
-
const input =
|
359
|
-
const expected =
|
358
|
+
const input = constants_js_1.LINE_START_FORBIDDEN_CHARS.map((char) => ['この', char + '文字']).flat();
|
359
|
+
const expected = constants_js_1.LINE_START_FORBIDDEN_CHARS.map((char) => [
|
360
360
|
'この' + char,
|
361
361
|
'文字',
|
362
362
|
]).flat();
|
363
|
-
expect((0,
|
363
|
+
expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
|
364
364
|
});
|
365
365
|
});
|
366
366
|
describe('filterEndJP', () => {
|
367
367
|
test('空の配列を渡すと空の配列を返す', () => {
|
368
|
-
expect((0,
|
368
|
+
expect((0, helper_js_1.filterEndJP)([])).toEqual([]);
|
369
369
|
});
|
370
370
|
test('禁則文字を含まない行はそのまま返す', () => {
|
371
371
|
const input = ['これは', '普通の', '文章です。'];
|
372
|
-
expect((0,
|
372
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(input);
|
373
373
|
});
|
374
374
|
test('行末の禁則文字を次の行の先頭に移動する', () => {
|
375
375
|
const input = ['これは「', '文章', 'です。'];
|
376
376
|
const expected = ['これは', '「文章', 'です。'];
|
377
|
-
expect((0,
|
377
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
|
378
378
|
});
|
379
379
|
test('複数の禁則文字を正しく処理する', () => {
|
380
380
|
const input = ['これは「', '長い『', '文章(', 'です。'];
|
381
381
|
const expected = ['これは', '「長い', '『文章', '(です。'];
|
382
|
-
expect((0,
|
382
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
|
383
383
|
});
|
384
384
|
// Cant understand purpose of this test...
|
385
385
|
// test('空の行を保持する', () => {
|
@@ -390,20 +390,20 @@ describe('filterEndJP', () => {
|
|
390
390
|
test('1文字の行(禁則文字のみ)はそのまま保持する', () => {
|
391
391
|
const input = ['これは', '「', '文章', 'です。'];
|
392
392
|
const expected = ['これは', '「', '文章', 'です。'];
|
393
|
-
expect((0,
|
393
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
|
394
394
|
});
|
395
395
|
test('すべての禁則文字を正しく処理する', () => {
|
396
|
-
const input =
|
397
|
-
const expected =
|
396
|
+
const input = constants_js_1.LINE_END_FORBIDDEN_CHARS.map((char) => ['これは' + char, '文章']).flat();
|
397
|
+
const expected = constants_js_1.LINE_END_FORBIDDEN_CHARS.map((char) => [
|
398
398
|
'これは',
|
399
399
|
char + '文章',
|
400
400
|
]).flat();
|
401
|
-
expect((0,
|
401
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
|
402
402
|
});
|
403
403
|
test('最後の行の禁則文字は移動しない', () => {
|
404
404
|
const input = ['これは「', '文章「', 'です「'];
|
405
405
|
const expected = ['これは', '「文章', '「です「'];
|
406
|
-
expect((0,
|
406
|
+
expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
|
407
407
|
});
|
408
408
|
});
|
409
409
|
//# sourceMappingURL=text.test.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"text.test.js","sourceRoot":"","sources":["../../../__tests__/text.test.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"text.test.js","sourceRoot":"","sources":["../../../__tests__/text.test.ts"],"names":[],"mappings":"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"}
|