@pdfme/schemas 5.3.8-dev.4 → 5.3.8-dev.41

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.
Files changed (221) hide show
  1. package/dist/cjs/__tests__/barcode.test.js +115 -113
  2. package/dist/cjs/__tests__/barcode.test.js.map +1 -1
  3. package/dist/cjs/__tests__/multiVariableText.test.js +15 -15
  4. package/dist/cjs/__tests__/multiVariableText.test.js.map +1 -1
  5. package/dist/cjs/__tests__/text.test.js +71 -71
  6. package/dist/cjs/__tests__/text.test.js.map +1 -1
  7. package/dist/cjs/__tests__/utils.test.js +76 -15
  8. package/dist/cjs/__tests__/utils.test.js.map +1 -1
  9. package/dist/cjs/src/checkbox/index.js +3 -3
  10. package/dist/cjs/src/checkbox/index.js.map +1 -1
  11. package/dist/cjs/src/date/date.js +2 -2
  12. package/dist/cjs/src/date/date.js.map +1 -1
  13. package/dist/cjs/src/date/dateTime.js +2 -2
  14. package/dist/cjs/src/date/dateTime.js.map +1 -1
  15. package/dist/cjs/src/date/helper.js +110 -78
  16. package/dist/cjs/src/date/helper.js.map +1 -1
  17. package/dist/cjs/src/date/time.js +2 -2
  18. package/dist/cjs/src/date/time.js.map +1 -1
  19. package/dist/cjs/src/graphics/svg.js +25 -2
  20. package/dist/cjs/src/graphics/svg.js.map +1 -1
  21. package/dist/cjs/src/index.js +30 -30
  22. package/dist/cjs/src/index.js.map +1 -1
  23. package/dist/cjs/src/multiVariableText/helper.js +2 -2
  24. package/dist/cjs/src/multiVariableText/helper.js.map +1 -1
  25. package/dist/cjs/src/multiVariableText/pdfRender.js +5 -5
  26. package/dist/cjs/src/multiVariableText/pdfRender.js.map +1 -1
  27. package/dist/cjs/src/multiVariableText/propPanel.js +5 -5
  28. package/dist/cjs/src/multiVariableText/propPanel.js.map +1 -1
  29. package/dist/cjs/src/multiVariableText/uiRender.js +10 -10
  30. package/dist/cjs/src/multiVariableText/uiRender.js.map +1 -1
  31. package/dist/cjs/src/radioGroup/index.js +3 -3
  32. package/dist/cjs/src/radioGroup/index.js.map +1 -1
  33. package/dist/cjs/src/select/index.js +9 -9
  34. package/dist/cjs/src/select/index.js.map +1 -1
  35. package/dist/cjs/src/tables/classes.js +4 -4
  36. package/dist/cjs/src/tables/classes.js.map +1 -1
  37. package/dist/cjs/src/tables/dynamicTemplate.js +2 -2
  38. package/dist/cjs/src/tables/dynamicTemplate.js.map +1 -1
  39. package/dist/cjs/src/tables/helper.js +21 -21
  40. package/dist/cjs/src/tables/helper.js.map +1 -1
  41. package/dist/cjs/src/tables/pdfRender.js +8 -8
  42. package/dist/cjs/src/tables/pdfRender.js.map +1 -1
  43. package/dist/cjs/src/tables/tableHelper.js +5 -5
  44. package/dist/cjs/src/tables/tableHelper.js.map +1 -1
  45. package/dist/cjs/src/text/extraFormatter.js +14 -14
  46. package/dist/cjs/src/text/extraFormatter.js.map +1 -1
  47. package/dist/cjs/src/text/propPanel.js +2 -2
  48. package/dist/cjs/src/text/propPanel.js.map +1 -1
  49. package/dist/cjs/src/utils.js +53 -9
  50. package/dist/cjs/src/utils.js.map +1 -1
  51. package/dist/esm/__tests__/barcode.test.js +8 -6
  52. package/dist/esm/__tests__/barcode.test.js.map +1 -1
  53. package/dist/esm/__tests__/multiVariableText.test.js +1 -1
  54. package/dist/esm/__tests__/multiVariableText.test.js.map +1 -1
  55. package/dist/esm/__tests__/text.test.js +2 -2
  56. package/dist/esm/__tests__/text.test.js.map +1 -1
  57. package/dist/esm/__tests__/utils.test.js +65 -4
  58. package/dist/esm/__tests__/utils.test.js.map +1 -1
  59. package/dist/esm/src/checkbox/index.js +1 -1
  60. package/dist/esm/src/checkbox/index.js.map +1 -1
  61. package/dist/esm/src/date/date.js +1 -1
  62. package/dist/esm/src/date/date.js.map +1 -1
  63. package/dist/esm/src/date/dateTime.js +1 -1
  64. package/dist/esm/src/date/dateTime.js.map +1 -1
  65. package/dist/esm/src/date/helper.js +70 -38
  66. package/dist/esm/src/date/helper.js.map +1 -1
  67. package/dist/esm/src/date/time.js +1 -1
  68. package/dist/esm/src/date/time.js.map +1 -1
  69. package/dist/esm/src/graphics/svg.js +25 -2
  70. package/dist/esm/src/graphics/svg.js.map +1 -1
  71. package/dist/esm/src/index.js +14 -14
  72. package/dist/esm/src/index.js.map +1 -1
  73. package/dist/esm/src/multiVariableText/helper.js +2 -2
  74. package/dist/esm/src/multiVariableText/helper.js.map +1 -1
  75. package/dist/esm/src/multiVariableText/pdfRender.js +2 -2
  76. package/dist/esm/src/multiVariableText/pdfRender.js.map +1 -1
  77. package/dist/esm/src/multiVariableText/propPanel.js +1 -1
  78. package/dist/esm/src/multiVariableText/propPanel.js.map +1 -1
  79. package/dist/esm/src/multiVariableText/uiRender.js +4 -4
  80. package/dist/esm/src/multiVariableText/uiRender.js.map +1 -1
  81. package/dist/esm/src/radioGroup/index.js +1 -1
  82. package/dist/esm/src/radioGroup/index.js.map +1 -1
  83. package/dist/esm/src/select/index.js +2 -2
  84. package/dist/esm/src/select/index.js.map +1 -1
  85. package/dist/esm/src/tables/classes.js +1 -1
  86. package/dist/esm/src/tables/classes.js.map +1 -1
  87. package/dist/esm/src/tables/dynamicTemplate.js +1 -1
  88. package/dist/esm/src/tables/dynamicTemplate.js.map +1 -1
  89. package/dist/esm/src/tables/helper.js +1 -1
  90. package/dist/esm/src/tables/helper.js.map +1 -1
  91. package/dist/esm/src/tables/pdfRender.js +4 -4
  92. package/dist/esm/src/tables/pdfRender.js.map +1 -1
  93. package/dist/esm/src/tables/tableHelper.js +1 -1
  94. package/dist/esm/src/tables/tableHelper.js.map +1 -1
  95. package/dist/esm/src/text/extraFormatter.js +2 -2
  96. package/dist/esm/src/text/extraFormatter.js.map +1 -1
  97. package/dist/esm/src/text/propPanel.js +1 -1
  98. package/dist/esm/src/text/propPanel.js.map +1 -1
  99. package/dist/esm/src/utils.js +53 -9
  100. package/dist/esm/src/utils.js.map +1 -1
  101. package/dist/node/__tests__/barcode.test.js +115 -113
  102. package/dist/node/__tests__/barcode.test.js.map +1 -1
  103. package/dist/node/__tests__/multiVariableText.test.js +15 -15
  104. package/dist/node/__tests__/multiVariableText.test.js.map +1 -1
  105. package/dist/node/__tests__/text.test.js +71 -71
  106. package/dist/node/__tests__/text.test.js.map +1 -1
  107. package/dist/node/__tests__/utils.test.js +76 -15
  108. package/dist/node/__tests__/utils.test.js.map +1 -1
  109. package/dist/node/src/checkbox/index.js +3 -3
  110. package/dist/node/src/checkbox/index.js.map +1 -1
  111. package/dist/node/src/date/date.js +2 -2
  112. package/dist/node/src/date/date.js.map +1 -1
  113. package/dist/node/src/date/dateTime.js +2 -2
  114. package/dist/node/src/date/dateTime.js.map +1 -1
  115. package/dist/node/src/date/helper.js +110 -78
  116. package/dist/node/src/date/helper.js.map +1 -1
  117. package/dist/node/src/date/time.js +2 -2
  118. package/dist/node/src/date/time.js.map +1 -1
  119. package/dist/node/src/graphics/svg.js +25 -2
  120. package/dist/node/src/graphics/svg.js.map +1 -1
  121. package/dist/node/src/index.js +30 -30
  122. package/dist/node/src/index.js.map +1 -1
  123. package/dist/node/src/multiVariableText/helper.js +2 -2
  124. package/dist/node/src/multiVariableText/helper.js.map +1 -1
  125. package/dist/node/src/multiVariableText/pdfRender.js +5 -5
  126. package/dist/node/src/multiVariableText/pdfRender.js.map +1 -1
  127. package/dist/node/src/multiVariableText/propPanel.js +5 -5
  128. package/dist/node/src/multiVariableText/propPanel.js.map +1 -1
  129. package/dist/node/src/multiVariableText/uiRender.js +10 -10
  130. package/dist/node/src/multiVariableText/uiRender.js.map +1 -1
  131. package/dist/node/src/radioGroup/index.js +3 -3
  132. package/dist/node/src/radioGroup/index.js.map +1 -1
  133. package/dist/node/src/select/index.js +9 -9
  134. package/dist/node/src/select/index.js.map +1 -1
  135. package/dist/node/src/tables/classes.js +4 -4
  136. package/dist/node/src/tables/classes.js.map +1 -1
  137. package/dist/node/src/tables/dynamicTemplate.js +2 -2
  138. package/dist/node/src/tables/dynamicTemplate.js.map +1 -1
  139. package/dist/node/src/tables/helper.js +21 -21
  140. package/dist/node/src/tables/helper.js.map +1 -1
  141. package/dist/node/src/tables/pdfRender.js +8 -8
  142. package/dist/node/src/tables/pdfRender.js.map +1 -1
  143. package/dist/node/src/tables/tableHelper.js +5 -5
  144. package/dist/node/src/tables/tableHelper.js.map +1 -1
  145. package/dist/node/src/text/extraFormatter.js +14 -14
  146. package/dist/node/src/text/extraFormatter.js.map +1 -1
  147. package/dist/node/src/text/propPanel.js +2 -2
  148. package/dist/node/src/text/propPanel.js.map +1 -1
  149. package/dist/node/src/utils.js +53 -9
  150. package/dist/node/src/utils.js.map +1 -1
  151. package/dist/types/src/barcodes/helper.d.ts +1 -1
  152. package/dist/types/src/barcodes/index.d.ts +1 -1
  153. package/dist/types/src/barcodes/pdfRender.d.ts +1 -1
  154. package/dist/types/src/barcodes/propPanel.d.ts +1 -1
  155. package/dist/types/src/barcodes/uiRender.d.ts +1 -1
  156. package/dist/types/src/date/date.d.ts +1 -1
  157. package/dist/types/src/date/dateTime.d.ts +1 -1
  158. package/dist/types/src/date/helper.d.ts +1 -1
  159. package/dist/types/src/date/time.d.ts +1 -1
  160. package/dist/types/src/date/types.d.ts +6 -1
  161. package/dist/types/src/index.d.ts +15 -15
  162. package/dist/types/src/multiVariableText/helper.d.ts +1 -1
  163. package/dist/types/src/multiVariableText/index.d.ts +1 -1
  164. package/dist/types/src/multiVariableText/pdfRender.d.ts +1 -1
  165. package/dist/types/src/multiVariableText/propPanel.d.ts +1 -1
  166. package/dist/types/src/multiVariableText/types.d.ts +1 -1
  167. package/dist/types/src/multiVariableText/uiRender.d.ts +1 -1
  168. package/dist/types/src/select/index.d.ts +1 -1
  169. package/dist/types/src/tables/cell.d.ts +1 -1
  170. package/dist/types/src/tables/classes.d.ts +1 -1
  171. package/dist/types/src/tables/helper.d.ts +4 -4
  172. package/dist/types/src/tables/pdfRender.d.ts +1 -1
  173. package/dist/types/src/tables/propPanel.d.ts +1 -1
  174. package/dist/types/src/tables/tableHelper.d.ts +1 -1
  175. package/dist/types/src/tables/types.d.ts +1 -1
  176. package/dist/types/src/text/constants.d.ts +1 -1
  177. package/dist/types/src/text/helper.d.ts +1 -1
  178. package/dist/types/src/text/index.d.ts +1 -1
  179. package/dist/types/src/text/pdfRender.d.ts +1 -1
  180. package/dist/types/src/text/propPanel.d.ts +1 -1
  181. package/dist/types/src/text/uiRender.d.ts +1 -1
  182. package/package.json +2 -3
  183. package/src/barcodes/helper.ts +1 -1
  184. package/src/barcodes/index.ts +1 -1
  185. package/src/barcodes/pdfRender.ts +1 -1
  186. package/src/barcodes/propPanel.ts +1 -1
  187. package/src/barcodes/uiRender.ts +1 -1
  188. package/src/checkbox/index.ts +1 -1
  189. package/src/date/date.ts +1 -1
  190. package/src/date/dateTime.ts +1 -1
  191. package/src/date/helper.ts +84 -43
  192. package/src/date/time.ts +1 -1
  193. package/src/date/types.ts +7 -1
  194. package/src/graphics/svg.ts +27 -2
  195. package/src/index.ts +14 -14
  196. package/src/multiVariableText/helper.ts +15 -7
  197. package/src/multiVariableText/index.ts +1 -1
  198. package/src/multiVariableText/pdfRender.ts +3 -3
  199. package/src/multiVariableText/propPanel.ts +2 -2
  200. package/src/multiVariableText/types.ts +1 -1
  201. package/src/multiVariableText/uiRender.ts +5 -5
  202. package/src/radioGroup/index.ts +1 -1
  203. package/src/select/index.ts +3 -3
  204. package/src/tables/cell.ts +1 -1
  205. package/src/tables/classes.ts +2 -2
  206. package/src/tables/dynamicTemplate.ts +2 -2
  207. package/src/tables/helper.ts +1 -1
  208. package/src/tables/pdfRender.ts +6 -6
  209. package/src/tables/propPanel.ts +1 -1
  210. package/src/tables/tableHelper.ts +2 -2
  211. package/src/tables/types.ts +1 -1
  212. package/src/tables/uiRender.ts +1 -1
  213. package/src/text/constants.ts +1 -1
  214. package/src/text/extraFormatter.ts +2 -2
  215. package/src/text/helper.ts +1 -1
  216. package/src/text/index.ts +1 -1
  217. package/src/text/pdfRender.ts +1 -1
  218. package/src/text/propPanel.ts +2 -2
  219. package/src/text/uiRender.ts +1 -1
  220. package/src/utils.ts +64 -15
  221. 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 helper_1 = require("../src/text/helper");
30
- const constants_1 = require("../src/text/constants");
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, helper_1.getSplittedLines)('', mockCalcValues)).toEqual(['']);
80
+ expect((0, helper_js_1.getSplittedLines)('', mockCalcValues)).toEqual(['']);
81
81
  });
82
82
  it('does not split a short line', () => {
83
- expect((0, helper_1.getSplittedLines)('a', mockCalcValues)).toEqual(['a']);
84
- expect((0, helper_1.getSplittedLines)('aaaa', mockCalcValues)).toEqual(['aaaa']);
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, helper_1.getSplittedLines)('aaa bbb', mockCalcValues)).toEqual(['aaa', 'bbb']);
88
- expect((0, helper_1.getSplittedLines)('top-hat', mockCalcValues)).toEqual(['top-', 'hat']);
89
- expect((0, helper_1.getSplittedLines)('top—hat', mockCalcValues)).toEqual(['top—', 'hat']); // em dash
90
- expect((0, helper_1.getSplittedLines)('top–hat', mockCalcValues)).toEqual(['top–', 'hat']); // en dash
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, helper_1.getSplittedLines)('aaaaa bbbbb', mockCalcValues)).toEqual(['aaaaa', 'bbbbb']);
94
- expect((0, helper_1.getSplittedLines)('left-hand', mockCalcValues)).toEqual(['left-', 'hand']);
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, helper_1.getSplittedLines)('aaaaaa bbb', mockCalcValues)).toEqual(['aaaaa', 'a bbb']);
98
- expect((0, helper_1.getSplittedLines)('aaaaaa-a b', mockCalcValues)).toEqual(['aaaaa', 'a-a b']);
99
- expect((0, helper_1.getSplittedLines)('aaaaa-aa b', mockCalcValues)).toEqual(['aaaaa', '-aa b']);
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, helper_1.getSplittedLines)('abcdef', mockCalcValues)).toEqual(['abcde', 'f']);
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, helper_1.getSplittedLines)('abcdefghijklmn', mockCalcValues)).toEqual(['abcde', 'fghij', 'klmn']);
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, helper_1.getSplittedLines)('a b c d e', mockCalcValues)).toEqual(['a b c', 'd e']);
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, helper_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
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, helper_1.getSplittedLines)('short', fontWidthCalcs);
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, helper_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
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, helper_1.getSplittedLines)('this will wrap', fontWidthCalcs);
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, helper_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
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, helper_1.getSplittedLines)('thiswillbecut', fontWidthCalcs);
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, helper_1.getFontKitFont)(getTextSchema().fontName, font, _cache).then((fontKitFont) => {
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, helper_1.getSplittedLines)('thiswillnotbecut', fontWidthCalcs);
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, helper_1.getFontKitFont)('SauceHanSansJP', (0, common_1.getDefaultFont)(), new Map());
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value: 'test' });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value: 'test' });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value, startingFontSize });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value, startingFontSize });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.getFontKitFont)('SauceHanSansJP', getSampleFont(), new Map());
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.calculateDynamicFontSize)({ textSchema, fontKitFont, value });
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, helper_1.getFontDescentInPt)({ descent: -400, unitsPerEm: 1000 }, 12)).toBe(-4.800000000000001);
287
- expect((0, helper_1.getFontDescentInPt)({ descent: 54, unitsPerEm: 1000 }, 20)).toBe(1.08);
288
- expect((0, helper_1.getFontDescentInPt)({ descent: -512, unitsPerEm: 2048 }, 54)).toBe(-13.5);
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, helper_1.getBrowserVerticalFontAdjustments)(font, 12, 1.0, 'top')).toEqual({
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, helper_1.getBrowserVerticalFontAdjustments)(font, 36, 2.0, 'top')).toEqual({
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, helper_1.getBrowserVerticalFontAdjustments)(font, 12, 1.0, 'bottom')).toEqual({
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, helper_1.getBrowserVerticalFontAdjustments)(font, 12, 1.15, 'middle')).toEqual({
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, helper_1.getBrowserVerticalFontAdjustments)(font, 12, 1.35, 'bottom')).toEqual({
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, helper_1.getBrowserVerticalFontAdjustments)(thisFont, 20, 1.0, 'bottom')).toEqual({
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, helper_1.filterStartJP)([])).toEqual([]);
330
+ expect((0, helper_js_1.filterStartJP)([])).toEqual([]);
331
331
  });
332
332
  test('禁則文字を含まない行はそのまま返す', () => {
333
333
  const input = ['これは', '普通の', '文章です。'];
334
- expect((0, helper_1.filterStartJP)(input)).toEqual(input);
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, helper_1.filterStartJP)(input)).toEqual(expected);
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, helper_1.filterStartJP)(input)).toEqual(expected);
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, helper_1.filterStartJP)(input)).toEqual(expected);
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, helper_1.filterStartJP)(input)).toEqual(expected);
355
+ expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
356
356
  });
357
357
  test('すべての禁則文字を正しく処理する', () => {
358
- const input = constants_1.LINE_START_FORBIDDEN_CHARS.map((char) => ['この', char + '文字']).flat();
359
- const expected = constants_1.LINE_START_FORBIDDEN_CHARS.map((char) => [
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, helper_1.filterStartJP)(input)).toEqual(expected);
363
+ expect((0, helper_js_1.filterStartJP)(input)).toEqual(expected);
364
364
  });
365
365
  });
366
366
  describe('filterEndJP', () => {
367
367
  test('空の配列を渡すと空の配列を返す', () => {
368
- expect((0, helper_1.filterEndJP)([])).toEqual([]);
368
+ expect((0, helper_js_1.filterEndJP)([])).toEqual([]);
369
369
  });
370
370
  test('禁則文字を含まない行はそのまま返す', () => {
371
371
  const input = ['これは', '普通の', '文章です。'];
372
- expect((0, helper_1.filterEndJP)(input)).toEqual(input);
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, helper_1.filterEndJP)(input)).toEqual(expected);
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, helper_1.filterEndJP)(input)).toEqual(expected);
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, helper_1.filterEndJP)(input)).toEqual(expected);
393
+ expect((0, helper_js_1.filterEndJP)(input)).toEqual(expected);
394
394
  });
395
395
  test('すべての禁則文字を正しく処理する', () => {
396
- const input = constants_1.LINE_END_FORBIDDEN_CHARS.map((char) => ['これは' + char, '文章']).flat();
397
- const expected = constants_1.LINE_END_FORBIDDEN_CHARS.map((char) => [
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, helper_1.filterEndJP)(input)).toEqual(expected);
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, helper_1.filterEndJP)(input)).toEqual(expected);
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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"}