@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.
Files changed (272) 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 +121 -124
  102. package/dist/node/__tests__/barcode.test.js.map +1 -1
  103. package/dist/node/__tests__/multiVariableText.test.js +15 -17
  104. package/dist/node/__tests__/multiVariableText.test.js.map +1 -1
  105. package/dist/node/__tests__/text.test.js +77 -102
  106. package/dist/node/__tests__/text.test.js.map +1 -1
  107. package/dist/node/__tests__/utils.test.js +90 -31
  108. package/dist/node/__tests__/utils.test.js.map +1 -1
  109. package/dist/node/src/barcodes/constants.js +4 -7
  110. package/dist/node/src/barcodes/constants.js.map +1 -1
  111. package/dist/node/src/barcodes/helper.js +16 -26
  112. package/dist/node/src/barcodes/helper.js.map +1 -1
  113. package/dist/node/src/barcodes/index.js +12 -14
  114. package/dist/node/src/barcodes/index.js.map +1 -1
  115. package/dist/node/src/barcodes/pdfRender.js +6 -10
  116. package/dist/node/src/barcodes/pdfRender.js.map +1 -1
  117. package/dist/node/src/barcodes/propPanel.js +20 -24
  118. package/dist/node/src/barcodes/propPanel.js.map +1 -1
  119. package/dist/node/src/barcodes/types.js +1 -2
  120. package/dist/node/src/barcodes/uiRender.js +8 -12
  121. package/dist/node/src/barcodes/uiRender.js.map +1 -1
  122. package/dist/node/src/checkbox/index.js +12 -17
  123. package/dist/node/src/checkbox/index.js.map +1 -1
  124. package/dist/node/src/constants.js +2 -5
  125. package/dist/node/src/constants.js.map +1 -1
  126. package/dist/node/src/date/date.js +5 -7
  127. package/dist/node/src/date/date.js.map +1 -1
  128. package/dist/node/src/date/dateTime.js +5 -7
  129. package/dist/node/src/date/dateTime.js.map +1 -1
  130. package/dist/node/src/date/helper.js +135 -133
  131. package/dist/node/src/date/helper.js.map +1 -1
  132. package/dist/node/src/date/time.js +5 -7
  133. package/dist/node/src/date/time.js.map +1 -1
  134. package/dist/node/src/date/types.js +1 -2
  135. package/dist/node/src/graphics/cacheKey.js +1 -5
  136. package/dist/node/src/graphics/cacheKey.js.map +1 -1
  137. package/dist/node/src/graphics/image.js +15 -17
  138. package/dist/node/src/graphics/image.js.map +1 -1
  139. package/dist/node/src/graphics/imagehelper.js +3 -7
  140. package/dist/node/src/graphics/imagehelper.js.map +1 -1
  141. package/dist/node/src/graphics/svg.js +35 -14
  142. package/dist/node/src/graphics/svg.js.map +1 -1
  143. package/dist/node/src/index.js +18 -37
  144. package/dist/node/src/index.js.map +1 -1
  145. package/dist/node/src/multiVariableText/helper.js +4 -9
  146. package/dist/node/src/multiVariableText/helper.js.map +1 -1
  147. package/dist/node/src/multiVariableText/index.js +10 -12
  148. package/dist/node/src/multiVariableText/index.js.map +1 -1
  149. package/dist/node/src/multiVariableText/pdfRender.js +6 -10
  150. package/dist/node/src/multiVariableText/pdfRender.js.map +1 -1
  151. package/dist/node/src/multiVariableText/propPanel.js +6 -9
  152. package/dist/node/src/multiVariableText/propPanel.js.map +1 -1
  153. package/dist/node/src/multiVariableText/types.js +1 -2
  154. package/dist/node/src/multiVariableText/uiRender.js +13 -17
  155. package/dist/node/src/multiVariableText/uiRender.js.map +1 -1
  156. package/dist/node/src/radioGroup/index.js +11 -16
  157. package/dist/node/src/radioGroup/index.js.map +1 -1
  158. package/dist/node/src/select/index.js +13 -18
  159. package/dist/node/src/select/index.js.map +1 -1
  160. package/dist/node/src/shapes/line.js +10 -12
  161. package/dist/node/src/shapes/line.js.map +1 -1
  162. package/dist/node/src/shapes/rectAndEllipse.js +18 -21
  163. package/dist/node/src/shapes/rectAndEllipse.js.map +1 -1
  164. package/dist/node/src/tables/cell.js +15 -20
  165. package/dist/node/src/tables/cell.js.map +1 -1
  166. package/dist/node/src/tables/classes.js +11 -18
  167. package/dist/node/src/tables/classes.js.map +1 -1
  168. package/dist/node/src/tables/dynamicTemplate.js +5 -9
  169. package/dist/node/src/tables/dynamicTemplate.js.map +1 -1
  170. package/dist/node/src/tables/helper.js +27 -35
  171. package/dist/node/src/tables/helper.js.map +1 -1
  172. package/dist/node/src/tables/index.js +10 -12
  173. package/dist/node/src/tables/index.js.map +1 -1
  174. package/dist/node/src/tables/pdfRender.js +9 -16
  175. package/dist/node/src/tables/pdfRender.js.map +1 -1
  176. package/dist/node/src/tables/propPanel.js +12 -15
  177. package/dist/node/src/tables/propPanel.js.map +1 -1
  178. package/dist/node/src/tables/tableHelper.js +11 -15
  179. package/dist/node/src/tables/tableHelper.js.map +1 -1
  180. package/dist/node/src/tables/types.js +1 -2
  181. package/dist/node/src/tables/uiRender.js +15 -22
  182. package/dist/node/src/tables/uiRender.js.map +1 -1
  183. package/dist/node/src/text/constants.js +22 -25
  184. package/dist/node/src/text/constants.js.map +1 -1
  185. package/dist/node/src/text/extraFormatter.js +17 -21
  186. package/dist/node/src/text/extraFormatter.js.map +1 -1
  187. package/dist/node/src/text/helper.js +48 -85
  188. package/dist/node/src/text/helper.js.map +1 -1
  189. package/dist/node/src/text/icons/index.js +11 -14
  190. package/dist/node/src/text/icons/index.js.map +1 -1
  191. package/dist/node/src/text/index.js +10 -12
  192. package/dist/node/src/text/index.js.map +1 -1
  193. package/dist/node/src/text/pdfRender.js +32 -36
  194. package/dist/node/src/text/pdfRender.js.map +1 -1
  195. package/dist/node/src/text/propPanel.js +22 -25
  196. package/dist/node/src/text/propPanel.js.map +1 -1
  197. package/dist/node/src/text/types.js +1 -2
  198. package/dist/node/src/text/uiRender.js +34 -42
  199. package/dist/node/src/text/uiRender.js.map +1 -1
  200. package/dist/node/src/utils.js +79 -47
  201. package/dist/node/src/utils.js.map +1 -1
  202. package/dist/types/src/barcodes/helper.d.ts +1 -1
  203. package/dist/types/src/barcodes/index.d.ts +1 -1
  204. package/dist/types/src/barcodes/pdfRender.d.ts +1 -1
  205. package/dist/types/src/barcodes/propPanel.d.ts +1 -1
  206. package/dist/types/src/barcodes/uiRender.d.ts +1 -1
  207. package/dist/types/src/date/date.d.ts +1 -1
  208. package/dist/types/src/date/dateTime.d.ts +1 -1
  209. package/dist/types/src/date/helper.d.ts +1 -1
  210. package/dist/types/src/date/time.d.ts +1 -1
  211. package/dist/types/src/date/types.d.ts +6 -1
  212. package/dist/types/src/index.d.ts +15 -15
  213. package/dist/types/src/multiVariableText/helper.d.ts +1 -1
  214. package/dist/types/src/multiVariableText/index.d.ts +1 -1
  215. package/dist/types/src/multiVariableText/pdfRender.d.ts +1 -1
  216. package/dist/types/src/multiVariableText/propPanel.d.ts +1 -1
  217. package/dist/types/src/multiVariableText/types.d.ts +1 -1
  218. package/dist/types/src/multiVariableText/uiRender.d.ts +1 -1
  219. package/dist/types/src/select/index.d.ts +1 -1
  220. package/dist/types/src/tables/cell.d.ts +1 -1
  221. package/dist/types/src/tables/classes.d.ts +1 -1
  222. package/dist/types/src/tables/helper.d.ts +4 -4
  223. package/dist/types/src/tables/pdfRender.d.ts +1 -1
  224. package/dist/types/src/tables/propPanel.d.ts +1 -1
  225. package/dist/types/src/tables/tableHelper.d.ts +1 -1
  226. package/dist/types/src/tables/types.d.ts +1 -1
  227. package/dist/types/src/text/constants.d.ts +1 -1
  228. package/dist/types/src/text/helper.d.ts +1 -1
  229. package/dist/types/src/text/index.d.ts +1 -1
  230. package/dist/types/src/text/pdfRender.d.ts +1 -1
  231. package/dist/types/src/text/propPanel.d.ts +1 -1
  232. package/dist/types/src/text/uiRender.d.ts +1 -1
  233. package/package.json +3 -3
  234. package/src/barcodes/helper.ts +1 -1
  235. package/src/barcodes/index.ts +1 -1
  236. package/src/barcodes/pdfRender.ts +1 -1
  237. package/src/barcodes/propPanel.ts +1 -1
  238. package/src/barcodes/uiRender.ts +1 -1
  239. package/src/checkbox/index.ts +1 -1
  240. package/src/date/date.ts +1 -1
  241. package/src/date/dateTime.ts +1 -1
  242. package/src/date/helper.ts +84 -43
  243. package/src/date/time.ts +1 -1
  244. package/src/date/types.ts +7 -1
  245. package/src/graphics/svg.ts +27 -2
  246. package/src/index.ts +14 -14
  247. package/src/multiVariableText/helper.ts +15 -7
  248. package/src/multiVariableText/index.ts +1 -1
  249. package/src/multiVariableText/pdfRender.ts +3 -3
  250. package/src/multiVariableText/propPanel.ts +2 -2
  251. package/src/multiVariableText/types.ts +1 -1
  252. package/src/multiVariableText/uiRender.ts +5 -5
  253. package/src/radioGroup/index.ts +1 -1
  254. package/src/select/index.ts +3 -3
  255. package/src/tables/cell.ts +1 -1
  256. package/src/tables/classes.ts +2 -2
  257. package/src/tables/dynamicTemplate.ts +2 -2
  258. package/src/tables/helper.ts +1 -1
  259. package/src/tables/pdfRender.ts +6 -6
  260. package/src/tables/propPanel.ts +1 -1
  261. package/src/tables/tableHelper.ts +2 -2
  262. package/src/tables/types.ts +1 -1
  263. package/src/tables/uiRender.ts +1 -1
  264. package/src/text/constants.ts +1 -1
  265. package/src/text/extraFormatter.ts +2 -2
  266. package/src/text/helper.ts +1 -1
  267. package/src/text/index.ts +1 -1
  268. package/src/text/pdfRender.ts +1 -1
  269. package/src/text/propPanel.ts +2 -2
  270. package/src/text/uiRender.ts +1 -1
  271. package/src/utils.ts +64 -15
  272. package/tsconfig.esm.json +2 -1
@@ -1,34 +1,8 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.filterEndJP = exports.filterStartJP = exports.isFirefox = exports.splitTextToSize = exports.calculateDynamicFontSize = exports.getSplittedLines = exports.getFontKitFont = exports.widthOfTextAtSize = exports.heightOfFontAtSize = exports.getFontDescentInPt = exports.getBrowserVerticalFontAdjustments = void 0;
27
- const fontkit = __importStar(require("fontkit"));
28
- const common_1 = require("@pdfme/common");
29
- const buffer_1 = require("buffer");
30
- const constants_js_1 = require("./constants.js");
31
- const getBrowserVerticalFontAdjustments = (fontKitFont, fontSize, lineHeight, verticalAlignment) => {
1
+ import * as fontkit from 'fontkit';
2
+ import { b64toUint8Array, mm2pt, pt2mm, pt2px, getFallbackFontName, getDefaultFont, DEFAULT_FONT_NAME, } from '@pdfme/common';
3
+ import { Buffer } from 'buffer';
4
+ import { DEFAULT_FONT_SIZE, DEFAULT_CHARACTER_SPACING, DEFAULT_LINE_HEIGHT, FONT_SIZE_ADJUSTMENT, DEFAULT_DYNAMIC_FIT, DYNAMIC_FIT_HORIZONTAL, DYNAMIC_FIT_VERTICAL, VERTICAL_ALIGN_TOP, LINE_END_FORBIDDEN_CHARS, LINE_START_FORBIDDEN_CHARS, } from './constants.js';
5
+ export const getBrowserVerticalFontAdjustments = (fontKitFont, fontSize, lineHeight, verticalAlignment) => {
32
6
  const { ascent, descent, unitsPerEm } = fontKitFont;
33
7
  // Fonts have a designed line height that the browser renders when using `line-height: normal`
34
8
  const fontBaseLineHeight = (ascent - descent) / unitsPerEm;
@@ -38,8 +12,8 @@ const getBrowserVerticalFontAdjustments = (fontKitFont, fontSize, lineHeight, ve
38
12
  // Browsers middle the font within this height, so we only need half of it to apply to the top.
39
13
  // This means the font renders a bit lower in the browser, but achieves PDF alignment
40
14
  const topAdjustment = (fontBaseLineHeight * fontSize - fontSize) / 2;
41
- if (verticalAlignment === constants_js_1.VERTICAL_ALIGN_TOP) {
42
- return { topAdj: (0, common_1.pt2px)(topAdjustment), bottomAdj: 0 };
15
+ if (verticalAlignment === VERTICAL_ALIGN_TOP) {
16
+ return { topAdj: pt2px(topAdjustment), bottomAdj: 0 };
43
17
  }
44
18
  // For vertical alignment bottom and middle
45
19
  // When browsers render text in a non-form element (such as a <div>), some of the text may be
@@ -55,15 +29,13 @@ const getBrowserVerticalFontAdjustments = (fontKitFont, fontSize, lineHeight, ve
55
29
  if (lineHeight < fontBaseLineHeight) {
56
30
  bottomAdjustment = ((fontBaseLineHeight - lineHeight) * fontSize) / 2;
57
31
  }
58
- return { topAdj: 0, bottomAdj: (0, common_1.pt2px)(bottomAdjustment) };
32
+ return { topAdj: 0, bottomAdj: pt2px(bottomAdjustment) };
59
33
  };
60
- exports.getBrowserVerticalFontAdjustments = getBrowserVerticalFontAdjustments;
61
- const getFontDescentInPt = (fontKitFont, fontSize) => {
34
+ export const getFontDescentInPt = (fontKitFont, fontSize) => {
62
35
  const { descent, unitsPerEm } = fontKitFont;
63
36
  return (descent / unitsPerEm) * fontSize;
64
37
  };
65
- exports.getFontDescentInPt = getFontDescentInPt;
66
- const heightOfFontAtSize = (fontKitFont, fontSize) => {
38
+ export const heightOfFontAtSize = (fontKitFont, fontSize) => {
67
39
  const { ascent, descent, bbox, unitsPerEm } = fontKitFont;
68
40
  const scale = 1000 / unitsPerEm;
69
41
  const yTop = (ascent || bbox.maxY) * scale;
@@ -72,44 +44,41 @@ const heightOfFontAtSize = (fontKitFont, fontSize) => {
72
44
  height -= Math.abs(descent * scale) || 0;
73
45
  return (height / 1000) * fontSize;
74
46
  };
75
- exports.heightOfFontAtSize = heightOfFontAtSize;
76
47
  const calculateCharacterSpacing = (textContent, textCharacterSpacing) => {
77
48
  return (textContent.length - 1) * textCharacterSpacing;
78
49
  };
79
- const widthOfTextAtSize = (text, fontKitFont, fontSize, characterSpacing) => {
50
+ export const widthOfTextAtSize = (text, fontKitFont, fontSize, characterSpacing) => {
80
51
  const { glyphs } = fontKitFont.layout(text);
81
52
  const scale = 1000 / fontKitFont.unitsPerEm;
82
53
  const standardWidth = glyphs.reduce((totalWidth, glyph) => totalWidth + glyph.advanceWidth * scale, 0) *
83
54
  (fontSize / 1000);
84
55
  return standardWidth + calculateCharacterSpacing(text, characterSpacing);
85
56
  };
86
- exports.widthOfTextAtSize = widthOfTextAtSize;
87
57
  const getFallbackFont = (font) => {
88
- const fallbackFontName = (0, common_1.getFallbackFontName)(font);
58
+ const fallbackFontName = getFallbackFontName(font);
89
59
  return font[fallbackFontName];
90
60
  };
91
61
  const getCacheKey = (fontName) => `getFontKitFont-${fontName}`;
92
- const getFontKitFont = async (fontName, font, _cache) => {
93
- const fntNm = fontName || (0, common_1.getFallbackFontName)(font);
62
+ export const getFontKitFont = async (fontName, font, _cache) => {
63
+ const fntNm = fontName || getFallbackFontName(font);
94
64
  const cacheKey = getCacheKey(fntNm);
95
65
  if (_cache.has(cacheKey)) {
96
66
  return _cache.get(cacheKey);
97
67
  }
98
- const currentFont = font[fntNm] || getFallbackFont(font) || (0, common_1.getDefaultFont)()[common_1.DEFAULT_FONT_NAME];
68
+ const currentFont = font[fntNm] || getFallbackFont(font) || getDefaultFont()[DEFAULT_FONT_NAME];
99
69
  let fontData = currentFont.data;
100
70
  if (typeof fontData === 'string') {
101
71
  fontData = fontData.startsWith('http')
102
72
  ? await fetch(fontData).then((res) => res.arrayBuffer())
103
- : (0, common_1.b64toUint8Array)(fontData);
73
+ : b64toUint8Array(fontData);
104
74
  }
105
- const fontKitFont = fontkit.create(fontData instanceof buffer_1.Buffer ? fontData : buffer_1.Buffer.from(fontData));
75
+ const fontKitFont = fontkit.create(fontData instanceof Buffer ? fontData : Buffer.from(fontData));
106
76
  _cache.set(cacheKey, fontKitFont);
107
77
  return fontKitFont;
108
78
  };
109
- exports.getFontKitFont = getFontKitFont;
110
79
  const isTextExceedingBoxWidth = (text, calcValues) => {
111
80
  const { font, fontSize, characterSpacing, boxWidthInPt } = calcValues;
112
- const textWidth = (0, exports.widthOfTextAtSize)(text, font, fontSize, characterSpacing);
81
+ const textWidth = widthOfTextAtSize(text, font, fontSize, characterSpacing);
113
82
  return textWidth > boxWidthInPt;
114
83
  };
115
84
  /**
@@ -162,7 +131,7 @@ const getSplitPosition = (textLine, calcValues) => {
162
131
  * Recursively splits the line at getSplitPosition.
163
132
  * If there is some leftover, split the rest again in the same manner.
164
133
  */
165
- const getSplittedLines = (textLine, calcValues) => {
134
+ export const getSplittedLines = (textLine, calcValues) => {
166
135
  const splitPos = getSplitPosition(textLine, calcValues);
167
136
  const splittedLine = textLine.substring(0, splitPos).trimEnd();
168
137
  const rest = textLine.substring(splitPos).trimStart();
@@ -175,23 +144,22 @@ const getSplittedLines = (textLine, calcValues) => {
175
144
  // end recursion if there is no leftover
176
145
  return [splittedLine];
177
146
  }
178
- return [splittedLine, ...(0, exports.getSplittedLines)(rest, calcValues)];
147
+ return [splittedLine, ...getSplittedLines(rest, calcValues)];
179
148
  };
180
- exports.getSplittedLines = getSplittedLines;
181
149
  /**
182
150
  * If using dynamic font size, iteratively increment or decrement the
183
151
  * font size to fit the containing box.
184
152
  * Calculating space usage involves splitting lines where they exceed
185
153
  * the box width based on the proposed size.
186
154
  */
187
- const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFontSize, }) => {
188
- const { fontSize: schemaFontSize, dynamicFontSize: dynamicFontSizeSetting, characterSpacing: schemaCharacterSpacing, width: boxWidth, height: boxHeight, lineHeight = constants_js_1.DEFAULT_LINE_HEIGHT, } = textSchema;
189
- const fontSize = startingFontSize || schemaFontSize || constants_js_1.DEFAULT_FONT_SIZE;
155
+ export const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFontSize, }) => {
156
+ const { fontSize: schemaFontSize, dynamicFontSize: dynamicFontSizeSetting, characterSpacing: schemaCharacterSpacing, width: boxWidth, height: boxHeight, lineHeight = DEFAULT_LINE_HEIGHT, } = textSchema;
157
+ const fontSize = startingFontSize || schemaFontSize || DEFAULT_FONT_SIZE;
190
158
  if (!dynamicFontSizeSetting)
191
159
  return fontSize;
192
160
  if (dynamicFontSizeSetting.max < dynamicFontSizeSetting.min)
193
161
  return fontSize;
194
- const characterSpacing = schemaCharacterSpacing ?? constants_js_1.DEFAULT_CHARACTER_SPACING;
162
+ const characterSpacing = schemaCharacterSpacing ?? DEFAULT_CHARACTER_SPACING;
195
163
  const paragraphs = value.split('\n');
196
164
  let dynamicFontSize = fontSize;
197
165
  if (dynamicFontSize < dynamicFontSizeSetting.min) {
@@ -200,14 +168,14 @@ const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFont
200
168
  else if (dynamicFontSize > dynamicFontSizeSetting.max) {
201
169
  dynamicFontSize = dynamicFontSizeSetting.max;
202
170
  }
203
- const dynamicFontFit = dynamicFontSizeSetting.fit ?? constants_js_1.DEFAULT_DYNAMIC_FIT;
171
+ const dynamicFontFit = dynamicFontSizeSetting.fit ?? DEFAULT_DYNAMIC_FIT;
204
172
  const calculateConstraints = (size) => {
205
173
  let totalWidthInMm = 0;
206
174
  let totalHeightInMm = 0;
207
- const boxWidthInPt = (0, common_1.mm2pt)(boxWidth);
208
- const firstLineTextHeight = (0, exports.heightOfFontAtSize)(fontKitFont, size);
209
- const firstLineHeightInMm = (0, common_1.pt2mm)(firstLineTextHeight * lineHeight);
210
- const otherRowHeightInMm = (0, common_1.pt2mm)(size * lineHeight);
175
+ const boxWidthInPt = mm2pt(boxWidth);
176
+ const firstLineTextHeight = heightOfFontAtSize(fontKitFont, size);
177
+ const firstLineHeightInMm = pt2mm(firstLineTextHeight * lineHeight);
178
+ const otherRowHeightInMm = pt2mm(size * lineHeight);
211
179
  paragraphs.forEach((paragraph, paraIndex) => {
212
180
  const lines = getSplittedLinesBySegmenter(paragraph, {
213
181
  font: fontKitFont,
@@ -216,10 +184,10 @@ const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFont
216
184
  boxWidthInPt,
217
185
  });
218
186
  lines.forEach((line, lineIndex) => {
219
- if (dynamicFontFit === constants_js_1.DYNAMIC_FIT_VERTICAL) {
187
+ if (dynamicFontFit === DYNAMIC_FIT_VERTICAL) {
220
188
  // For vertical fit we want to consider the width of text lines where we detect a split
221
- const textWidth = (0, exports.widthOfTextAtSize)(line.replace('\n', ''), fontKitFont, size, characterSpacing);
222
- const textWidthInMm = (0, common_1.pt2mm)(textWidth);
189
+ const textWidth = widthOfTextAtSize(line.replace('\n', ''), fontKitFont, size, characterSpacing);
190
+ const textWidthInMm = pt2mm(textWidth);
223
191
  totalWidthInMm = Math.max(totalWidthInMm, textWidthInMm);
224
192
  }
225
193
  if (paraIndex + lineIndex === 0) {
@@ -229,10 +197,10 @@ const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFont
229
197
  totalHeightInMm += otherRowHeightInMm;
230
198
  }
231
199
  });
232
- if (dynamicFontFit === constants_js_1.DYNAMIC_FIT_HORIZONTAL) {
200
+ if (dynamicFontFit === DYNAMIC_FIT_HORIZONTAL) {
233
201
  // For horizontal fit we want to consider the line's width 'unsplit'
234
- const textWidth = (0, exports.widthOfTextAtSize)(paragraph, fontKitFont, size, characterSpacing);
235
- const textWidthInMm = (0, common_1.pt2mm)(textWidth);
202
+ const textWidth = widthOfTextAtSize(paragraph, fontKitFont, size, characterSpacing);
203
+ const textWidthInMm = pt2mm(textWidth);
236
204
  totalWidthInMm = Math.max(totalWidthInMm, textWidthInMm);
237
205
  }
238
206
  });
@@ -242,7 +210,7 @@ const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFont
242
210
  if (dynamicFontSize >= dynamicFontSizeSetting.max) {
243
211
  return false;
244
212
  }
245
- if (dynamicFontFit === constants_js_1.DYNAMIC_FIT_HORIZONTAL) {
213
+ if (dynamicFontFit === DYNAMIC_FIT_HORIZONTAL) {
246
214
  return totalWidthInMm < boxWidth;
247
215
  }
248
216
  return totalHeightInMm < boxHeight;
@@ -256,26 +224,25 @@ const calculateDynamicFontSize = ({ textSchema, fontKitFont, value, startingFont
256
224
  let { totalWidthInMm, totalHeightInMm } = calculateConstraints(dynamicFontSize);
257
225
  // Attempt to increase the font size up to desired fit
258
226
  while (shouldFontGrowToFit(totalWidthInMm, totalHeightInMm)) {
259
- dynamicFontSize += constants_js_1.FONT_SIZE_ADJUSTMENT;
227
+ dynamicFontSize += FONT_SIZE_ADJUSTMENT;
260
228
  const { totalWidthInMm: newWidth, totalHeightInMm: newHeight } = calculateConstraints(dynamicFontSize);
261
229
  if (newHeight < boxHeight) {
262
230
  totalWidthInMm = newWidth;
263
231
  totalHeightInMm = newHeight;
264
232
  }
265
233
  else {
266
- dynamicFontSize -= constants_js_1.FONT_SIZE_ADJUSTMENT;
234
+ dynamicFontSize -= FONT_SIZE_ADJUSTMENT;
267
235
  break;
268
236
  }
269
237
  }
270
238
  // Attempt to decrease the font size down to desired fit
271
239
  while (shouldFontShrinkToFit(totalWidthInMm, totalHeightInMm)) {
272
- dynamicFontSize -= constants_js_1.FONT_SIZE_ADJUSTMENT;
240
+ dynamicFontSize -= FONT_SIZE_ADJUSTMENT;
273
241
  ({ totalWidthInMm, totalHeightInMm } = calculateConstraints(dynamicFontSize));
274
242
  }
275
243
  return dynamicFontSize;
276
244
  };
277
- exports.calculateDynamicFontSize = calculateDynamicFontSize;
278
- const splitTextToSize = (arg) => {
245
+ export const splitTextToSize = (arg) => {
279
246
  const { value, characterSpacing, fontSize, fontKitFont, boxWidthInPt } = arg;
280
247
  const fontWidthCalcValues = {
281
248
  font: fontKitFont,
@@ -289,9 +256,7 @@ const splitTextToSize = (arg) => {
289
256
  });
290
257
  return lines;
291
258
  };
292
- exports.splitTextToSize = splitTextToSize;
293
- const isFirefox = () => navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
294
- exports.isFirefox = isFirefox;
259
+ export const isFirefox = () => navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
295
260
  const getSplittedLinesBySegmenter = (line, calcValues) => {
296
261
  // nothing to process but need to keep this for new lines.
297
262
  if (line.trim() === '') {
@@ -308,7 +273,7 @@ const getSplittedLinesBySegmenter = (line, calcValues) => {
308
273
  if (chunk.done)
309
274
  break;
310
275
  const segment = chunk.value.segment;
311
- const textWidth = (0, exports.widthOfTextAtSize)(segment, font, fontSize, characterSpacing);
276
+ const textWidth = widthOfTextAtSize(segment, font, fontSize, characterSpacing);
312
277
  if (currentTextSize + textWidth <= boxWidthInPt) {
313
278
  // the size of boxWidth is large enough to add the segment
314
279
  if (lines[lineCounter]) {
@@ -334,7 +299,7 @@ const getSplittedLinesBySegmenter = (line, calcValues) => {
334
299
  else {
335
300
  // the segment is too large to fit in the boxWidth, we wrap the segment
336
301
  for (const char of segment) {
337
- const size = (0, exports.widthOfTextAtSize)(char, font, fontSize, characterSpacing);
302
+ const size = widthOfTextAtSize(char, font, fontSize, characterSpacing);
338
303
  if (currentTextSize + size <= boxWidthInPt) {
339
304
  if (lines[lineCounter]) {
340
305
  lines[lineCounter] += char;
@@ -353,7 +318,7 @@ const getSplittedLinesBySegmenter = (line, calcValues) => {
353
318
  }
354
319
  }
355
320
  if (lines.some(containsJapanese)) {
356
- return adjustEndOfLine((0, exports.filterEndJP)((0, exports.filterStartJP)(lines)));
321
+ return adjustEndOfLine(filterEndJP(filterStartJP(lines)));
357
322
  }
358
323
  else {
359
324
  return adjustEndOfLine(lines);
@@ -379,7 +344,7 @@ function containsJapanese(text) {
379
344
  // https://www.morisawa.co.jp/blogs/MVP/8760
380
345
  //
381
346
  // 行頭禁則
382
- const filterStartJP = (lines) => {
347
+ export const filterStartJP = (lines) => {
383
348
  const filtered = [];
384
349
  let charToAppend = null;
385
350
  lines
@@ -391,7 +356,7 @@ const filterStartJP = (lines) => {
391
356
  }
392
357
  else {
393
358
  const charAtStart = line.charAt(0);
394
- if (constants_js_1.LINE_START_FORBIDDEN_CHARS.includes(charAtStart)) {
359
+ if (LINE_START_FORBIDDEN_CHARS.includes(charAtStart)) {
395
360
  if (line.trim().length === 1) {
396
361
  filtered.push(line);
397
362
  charToAppend = null;
@@ -424,9 +389,8 @@ const filterStartJP = (lines) => {
424
389
  return filtered.reverse();
425
390
  }
426
391
  };
427
- exports.filterStartJP = filterStartJP;
428
392
  // 行末禁則
429
- const filterEndJP = (lines) => {
393
+ export const filterEndJP = (lines) => {
430
394
  const filtered = [];
431
395
  let charToPrepend = null;
432
396
  lines.forEach((line) => {
@@ -435,7 +399,7 @@ const filterEndJP = (lines) => {
435
399
  }
436
400
  else {
437
401
  const chartAtEnd = line.slice(-1);
438
- if (constants_js_1.LINE_END_FORBIDDEN_CHARS.includes(chartAtEnd)) {
402
+ if (LINE_END_FORBIDDEN_CHARS.includes(chartAtEnd)) {
439
403
  if (line.trim().length === 1) {
440
404
  filtered.push(line);
441
405
  charToPrepend = null;
@@ -468,5 +432,4 @@ const filterEndJP = (lines) => {
468
432
  return filtered;
469
433
  }
470
434
  };
471
- exports.filterEndJP = filterEndJP;
472
435
  //# sourceMappingURL=helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/text/helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/text/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,OAAO,EACL,eAAe,EACf,KAAK,EACL,KAAK,EACL,KAAK,EAEL,mBAAmB,EACnB,cAAc,EACd,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAC/C,WAAwB,EACxB,QAAgB,EAChB,UAAkB,EAClB,iBAAyB,EACzB,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IAEpD,8FAA8F;IAC9F,MAAM,kBAAkB,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,UAAU,CAAC;IAE3D,6BAA6B;IAC7B,6FAA6F;IAC7F,wDAAwD;IACxD,+FAA+F;IAC/F,qFAAqF;IACrF,MAAM,aAAa,GAAG,CAAC,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAErE,IAAI,iBAAiB,KAAK,kBAAkB,EAAE;QAC5C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;KACvD;IAED,2CAA2C;IAC3C,6FAA6F;IAC7F,wFAAwF;IACxF,oCAAoC;IACpC,8FAA8F;IAC9F,gFAAgF;IAChF,2FAA2F;IAC3F,4FAA4F;IAC5F,+DAA+D;IAC/D,2FAA2F;IAC3F,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,UAAU,GAAG,kBAAkB,EAAE;QACnC,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,GAAG,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;KACvE;IAED,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;AAC3D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,WAAwB,EAAE,QAAgB,EAAE,EAAE;IAC/E,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IAE5C,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,QAAQ,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,WAAwB,EAAE,QAAgB,EAAE,EAAE;IAC/E,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IAE1D,MAAM,KAAK,GAAG,IAAI,GAAG,UAAU,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAC3C,MAAM,OAAO,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAE/C,IAAI,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;IAC5B,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,WAAmB,EAAE,oBAA4B,EAAE,EAAE;IACtF,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,oBAAoB,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,IAAY,EACZ,WAAwB,EACxB,QAAgB,EAChB,gBAAwB,EACxB,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC;IAC5C,MAAM,aAAa,GACjB,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,GAAG,KAAK,CAAC,YAAY,GAAG,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IACpB,OAAO,aAAa,GAAG,yBAAyB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAU,EAAE,EAAE;IACrC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,kBAAkB,QAAQ,EAAE,CAAC;AAEvE,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,QAA4B,EAC5B,IAAU,EACV,MAAqB,EACrB,EAAE;IACF,MAAM,KAAK,GAAG,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAiB,CAAC;KAC7C;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC,iBAAiB,CAAC,CAAC;IAChG,IAAI,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC;IAChC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;YACpC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACxD,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;KAC/B;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAChC,QAAQ,YAAY,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAuB,CAAC,CAC7D,CAAC;IAClB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAElC,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,IAAY,EAAE,UAA+B,EAAE,EAAE;IAChF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC;IACtE,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAC5E,OAAO,SAAS,GAAG,YAAY,CAAC;AAClC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,UAA+B,EAAE,EAAE;IAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE;YACjE,OAAO,CAAC,CAAC;SACV;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1D,OAAO,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,UAA+B,EAAE,EAAE;IAC7E,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACtD,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,iDAAiD;IAE/F,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;QAC7B,qEAAqE;QACrE,OAAO,OAAO,CAAC;KAChB;IAED,IAAI,UAAU,GAAG,OAAO,GAAG,CAAC,CAAC;IAC7B,OAAO,UAAU,IAAI,CAAC,EAAE;QACtB,IAAI,mBAAmB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE;YAC7C,OAAO,UAAU,GAAG,CAAC,CAAC;SACvB;QACD,UAAU,EAAE,CAAC;KACd;IAED,uEAAuE;IACvE,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,UAA+B,EAAY,EAAE;IAC9F,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;IAEtD,IAAI,IAAI,KAAK,QAAQ,EAAE;QACrB,8DAA8D;QAC9D,4CAA4C;QAC5C,OAAO,CAAC,QAAQ,CAAC,CAAC;KACnB;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,wCAAwC;QACxC,OAAO,CAAC,YAAY,CAAC,CAAC;KACvB;IAED,OAAO,CAAC,YAAY,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,UAAU,EACV,WAAW,EACX,KAAK,EACL,gBAAgB,GAMjB,EAAE,EAAE;IACH,MAAM,EACJ,QAAQ,EAAE,cAAc,EACxB,eAAe,EAAE,sBAAsB,EACvC,gBAAgB,EAAE,sBAAsB,EACxC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,SAAS,EACjB,UAAU,GAAG,mBAAmB,GACjC,GAAG,UAAU,CAAC;IACf,MAAM,QAAQ,GAAG,gBAAgB,IAAI,cAAc,IAAI,iBAAiB,CAAC;IACzE,IAAI,CAAC,sBAAsB;QAAE,OAAO,QAAQ,CAAC;IAC7C,IAAI,sBAAsB,CAAC,GAAG,GAAG,sBAAsB,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC;IAE7E,MAAM,gBAAgB,GAAG,sBAAsB,IAAI,yBAAyB,CAAC;IAC7E,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,eAAe,GAAG,QAAQ,CAAC;IAC/B,IAAI,eAAe,GAAG,sBAAsB,CAAC,GAAG,EAAE;QAChD,eAAe,GAAG,sBAAsB,CAAC,GAAG,CAAC;KAC9C;SAAM,IAAI,eAAe,GAAG,sBAAsB,CAAC,GAAG,EAAE;QACvD,eAAe,GAAG,sBAAsB,CAAC,GAAG,CAAC;KAC9C;IACD,MAAM,cAAc,GAAG,sBAAsB,CAAC,GAAG,IAAI,mBAAmB,CAAC;IAEzE,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,EAAE;QAC5C,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,eAAe,GAAG,CAAC,CAAC;QAExB,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,GAAG,UAAU,CAAC,CAAC;QACpE,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;QAEpD,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,2BAA2B,CAAC,SAAS,EAAE;gBACnD,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,IAAI;gBACd,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC;YAEH,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;gBAChC,IAAI,cAAc,KAAK,oBAAoB,EAAE;oBAC3C,uFAAuF;oBACvF,MAAM,SAAS,GAAG,iBAAiB,CACjC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EACtB,WAAW,EACX,IAAI,EACJ,gBAAgB,CACjB,CAAC;oBACF,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;oBACvC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;iBAC1D;gBAED,IAAI,SAAS,GAAG,SAAS,KAAK,CAAC,EAAE;oBAC/B,eAAe,IAAI,mBAAmB,CAAC;iBACxC;qBAAM;oBACL,eAAe,IAAI,kBAAkB,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,cAAc,KAAK,sBAAsB,EAAE;gBAC7C,oEAAoE;gBACpE,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;gBACpF,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;gBACvC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;aAC1D;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;IAC7C,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,CAAC,cAAsB,EAAE,eAAuB,EAAE,EAAE;QAC9E,IAAI,eAAe,IAAI,sBAAsB,CAAC,GAAG,EAAE;YACjD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,cAAc,KAAK,sBAAsB,EAAE;YAC7C,OAAO,cAAc,GAAG,QAAQ,CAAC;SAClC;QACD,OAAO,eAAe,GAAG,SAAS,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAAC,cAAsB,EAAE,eAAuB,EAAE,EAAE;QAChF,IAAI,eAAe,IAAI,sBAAsB,CAAC,GAAG,IAAI,eAAe,IAAI,CAAC,EAAE;YACzE,OAAO,KAAK,CAAC;SACd;QACD,OAAO,cAAc,GAAG,QAAQ,IAAI,eAAe,GAAG,SAAS,CAAC;IAClE,CAAC,CAAC;IAEF,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;IAEhF,sDAAsD;IACtD,OAAO,mBAAmB,CAAC,cAAc,EAAE,eAAe,CAAC,EAAE;QAC3D,eAAe,IAAI,oBAAoB,CAAC;QACxC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,GAC5D,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAExC,IAAI,SAAS,GAAG,SAAS,EAAE;YACzB,cAAc,GAAG,QAAQ,CAAC;YAC1B,eAAe,GAAG,SAAS,CAAC;SAC7B;aAAM;YACL,eAAe,IAAI,oBAAoB,CAAC;YACxC,MAAM;SACP;KACF;IAED,wDAAwD;IACxD,OAAO,qBAAqB,CAAC,cAAc,EAAE,eAAe,CAAC,EAAE;QAC7D,eAAe,IAAI,oBAAoB,CAAC;QACxC,CAAC,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;KAC/E;IAED,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAM/B,EAAE,EAAE;IACH,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAC7E,MAAM,mBAAmB,GAAwB;QAC/C,IAAI,EAAE,WAAW;QACjB,QAAQ;QACR,gBAAgB;QAChB,YAAY;KACb,CAAC;IACF,IAAI,KAAK,GAAa,EAAE,CAAC;IACzB,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;QAC5D,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAEzF,MAAM,2BAA2B,GAAG,CAAC,IAAY,EAAE,UAA+B,EAAY,EAAE;IAC9F,0DAA0D;IAC1D,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACtB,OAAO,CAAC,EAAE,CAAC,CAAC;KACb;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC;IACtE,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEtE,IAAI,KAAK,GAAa,EAAE,CAAC;IACzB,IAAI,WAAW,GAAW,CAAC,CAAC;IAC5B,IAAI,eAAe,GAAW,CAAC,CAAC;IAEhC,OAAO,IAAI,EAAE;QACX,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QACpC,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC/E,IAAI,eAAe,GAAG,SAAS,IAAI,YAAY,EAAE;YAC/C,0DAA0D;YAC1D,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE;gBACtB,KAAK,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC;gBAC9B,eAAe,IAAI,SAAS,GAAG,gBAAgB,CAAC;aACjD;iBAAM;gBACL,KAAK,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;gBAC7B,eAAe,GAAG,SAAS,GAAG,gBAAgB,CAAC;aAChD;SACF;aAAM,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAChC,2DAA2D;YAC3D,iFAAiF;YACjF,KAAK,CAAC,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC;YAC1B,eAAe,GAAG,CAAC,CAAC;SACrB;aAAM,IAAI,SAAS,IAAI,YAAY,EAAE;YACpC,2DAA2D;YAC3D,KAAK,CAAC,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC;YAC/B,eAAe,GAAG,SAAS,GAAG,gBAAgB,CAAC;SAChD;aAAM;YACL,uEAAuE;YACvE,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;gBAC1B,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;gBACvE,IAAI,eAAe,GAAG,IAAI,IAAI,YAAY,EAAE;oBAC1C,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE;wBACtB,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;wBAC3B,eAAe,IAAI,IAAI,GAAG,gBAAgB,CAAC;qBAC5C;yBAAM;wBACL,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;wBAC1B,eAAe,GAAG,IAAI,GAAG,gBAAgB,CAAC;qBAC3C;iBACF;qBAAM;oBACL,KAAK,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC;oBAC5B,eAAe,GAAG,IAAI,GAAG,gBAAgB,CAAC;iBAC3C;aACF;SACF;KACF;IAED,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;QAChC,OAAO,eAAe,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC3D;SAAM;QACL,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;KAC/B;AACH,CAAC,CAAC;AAEF,wDAAwD;AACxD,MAAM,eAAe,GAAG,CAAC,KAAe,EAAY,EAAE;IACpD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/B,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;SAC9B;aAAM;YACL,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;SACvB;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,yDAAyD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9E,CAAC;AACD,EAAE;AACF,UAAU;AACV,EAAE;AACF,4CAA4C;AAC5C,EAAE;AACF,OAAO;AACP,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAe,EAAY,EAAE;IACzD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,YAAY,GAAkB,IAAI,CAAC;IAEvC,KAAK;SACF,KAAK,EAAE;SACP,OAAO,EAAE;SACT,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAChB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACnB;aAAM;YACL,MAAM,WAAW,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,0BAA0B,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBACpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,YAAY,GAAG,IAAI,CAAC;iBACrB;qBAAM;oBACL,IAAI,YAAY,EAAE;wBAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC;qBAC7C;yBAAM;wBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC9B;oBACD,YAAY,GAAG,WAAW,CAAC;iBAC5B;aACF;iBAAM;gBACL,IAAI,YAAY,EAAE;oBAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC;oBACnC,YAAY,GAAG,IAAI,CAAC;iBACrB;qBAAM;oBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACrB;aACF;SACF;IACH,CAAC,CAAC,CAAC;IAEL,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;KACjF;SAAM;QACL,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC3B;AACH,CAAC,CAAC;AAEF,OAAO;AACP,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAe,EAAY,EAAE;IACvD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,aAAa,GAAkB,IAAI,CAAC;IAExC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACnB;aAAM;YACL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAElC,IAAI,wBAAwB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBACjD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,aAAa,GAAG,IAAI,CAAC;iBACtB;qBAAM;oBACL,IAAI,aAAa,EAAE;wBACjB,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClD;yBAAM;wBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClC;oBACD,aAAa,GAAG,UAAU,CAAC;iBAC5B;aACF;iBAAM;gBACL,IAAI,aAAa,EAAE;oBACjB,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;oBACpC,aAAa,GAAG,IAAI,CAAC;iBACtB;qBAAM;oBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACrB;aACF;SACF;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,aAAa,EAAE;QACjB,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC;KAC1E;SAAM;QACL,OAAO,QAAQ,CAAC;KACjB;AACH,CAAC,CAAC"}
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextVerticalAlignBottomIcon = exports.TextVerticalAlignMiddleIcon = exports.TextVerticalAlignTopIcon = exports.TextAlignJustifyIcon = exports.TextAlignRightIcon = exports.TextAlignCenterIcon = exports.TextAlignLeftIcon = exports.TextUnderlineIcon = exports.TextStrikethroughIcon = void 0;
4
- const lucide_1 = require("lucide");
5
- const utils_js_1 = require("../../utils.js");
6
- exports.TextStrikethroughIcon = (0, utils_js_1.createSvgStr)(lucide_1.Strikethrough);
7
- exports.TextUnderlineIcon = (0, utils_js_1.createSvgStr)(lucide_1.Underline);
8
- exports.TextAlignLeftIcon = (0, utils_js_1.createSvgStr)(lucide_1.AlignLeft);
9
- exports.TextAlignCenterIcon = (0, utils_js_1.createSvgStr)(lucide_1.AlignCenter);
10
- exports.TextAlignRightIcon = (0, utils_js_1.createSvgStr)(lucide_1.AlignRight);
11
- exports.TextAlignJustifyIcon = (0, utils_js_1.createSvgStr)(lucide_1.AlignJustify);
12
- exports.TextVerticalAlignTopIcon = (0, utils_js_1.createSvgStr)(lucide_1.ArrowUpToLine);
1
+ import { Strikethrough, Underline, AlignLeft, AlignCenter, AlignRight, ArrowUpToLine, ArrowDownToLine, AlignJustify, } from 'lucide';
2
+ import { createSvgStr } from '../../utils.js';
3
+ export const TextStrikethroughIcon = createSvgStr(Strikethrough);
4
+ export const TextUnderlineIcon = createSvgStr(Underline);
5
+ export const TextAlignLeftIcon = createSvgStr(AlignLeft);
6
+ export const TextAlignCenterIcon = createSvgStr(AlignCenter);
7
+ export const TextAlignRightIcon = createSvgStr(AlignRight);
8
+ export const TextAlignJustifyIcon = createSvgStr(AlignJustify);
9
+ export const TextVerticalAlignTopIcon = createSvgStr(ArrowUpToLine);
13
10
  // svg icons are material icons from https://www.xicons.org
14
- exports.TextVerticalAlignMiddleIcon = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24"><path d="M8 19h3v4h2v-4h3l-4-4l-4 4zm8-14h-3V1h-2v4H8l4 4l4-4zM4 11v2h16v-2H4z" fill="currentColor"></path></svg>`;
15
- exports.TextVerticalAlignBottomIcon = (0, utils_js_1.createSvgStr)(lucide_1.ArrowDownToLine);
11
+ export const TextVerticalAlignMiddleIcon = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24"><path d="M8 19h3v4h2v-4h3l-4-4l-4 4zm8-14h-3V1h-2v4H8l4 4l4-4zM4 11v2h16v-2H4z" fill="currentColor"></path></svg>`;
12
+ export const TextVerticalAlignBottomIcon = createSvgStr(ArrowDownToLine);
16
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/text/icons/index.ts"],"names":[],"mappings":";;;AAAA,mCASgB;AAChB,6CAA8C;AAEjC,QAAA,qBAAqB,GAAG,IAAA,uBAAY,EAAC,sBAAa,CAAC,CAAC;AAEpD,QAAA,iBAAiB,GAAG,IAAA,uBAAY,EAAC,kBAAS,CAAC,CAAC;AAE5C,QAAA,iBAAiB,GAAG,IAAA,uBAAY,EAAC,kBAAS,CAAC,CAAC;AAE5C,QAAA,mBAAmB,GAAG,IAAA,uBAAY,EAAC,oBAAW,CAAC,CAAC;AAEhD,QAAA,kBAAkB,GAAG,IAAA,uBAAY,EAAC,mBAAU,CAAC,CAAC;AAE9C,QAAA,oBAAoB,GAAG,IAAA,uBAAY,EAAC,qBAAY,CAAC,CAAC;AAElD,QAAA,wBAAwB,GAAG,IAAA,uBAAY,EAAC,sBAAa,CAAC,CAAC;AAEpE,2DAA2D;AAC9C,QAAA,2BAA2B,GAAG,0NAA0N,CAAC;AAEzP,QAAA,2BAA2B,GAAG,IAAA,uBAAY,EAAC,wBAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/text/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,WAAW,EACX,UAAU,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAEjE,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;AAE7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAEpE,2DAA2D;AAC3D,MAAM,CAAC,MAAM,2BAA2B,GAAG,0NAA0N,CAAC;AAEtQ,MAAM,CAAC,MAAM,2BAA2B,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC"}
@@ -1,15 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const pdfRender_js_1 = require("./pdfRender.js");
4
- const propPanel_js_1 = require("./propPanel.js");
5
- const uiRender_js_1 = require("./uiRender.js");
6
- const lucide_1 = require("lucide");
7
- const utils_js_1 = require("../utils.js");
1
+ import { pdfRender } from './pdfRender.js';
2
+ import { propPanel } from './propPanel.js';
3
+ import { uiRender } from './uiRender.js';
4
+ import { TextCursorInput } from 'lucide';
5
+ import { createSvgStr } from '../utils.js';
8
6
  const textSchema = {
9
- pdf: pdfRender_js_1.pdfRender,
10
- ui: uiRender_js_1.uiRender,
11
- propPanel: propPanel_js_1.propPanel,
12
- icon: (0, utils_js_1.createSvgStr)(lucide_1.TextCursorInput),
7
+ pdf: pdfRender,
8
+ ui: uiRender,
9
+ propPanel,
10
+ icon: createSvgStr(TextCursorInput),
13
11
  };
14
- exports.default = textSchema;
12
+ export default textSchema;
15
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/text/index.ts"],"names":[],"mappings":";;AACA,iDAA2C;AAC3C,iDAA2C;AAC3C,+CAAyC;AAEzC,mCAAyC;AACzC,0CAA2C;AAE3C,MAAM,UAAU,GAAuB;IACrC,GAAG,EAAE,wBAAS;IACd,EAAE,EAAE,sBAAQ;IACZ,SAAS,EAAT,wBAAS;IACT,IAAI,EAAE,IAAA,uBAAY,EAAC,wBAAe,CAAC;CACpC,CAAC;AAEF,kBAAe,UAAU,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;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,UAAU,GAAuB;IACrC,GAAG,EAAE,SAAS;IACd,EAAE,EAAE,QAAQ;IACZ,SAAS;IACT,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC;CACpC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.pdfRender = void 0;
4
- const common_1 = require("@pdfme/common");
5
- const constants_js_1 = require("./constants.js");
6
- const helper_js_1 = require("./helper.js");
7
- const utils_js_1 = require("../utils.js");
1
+ import { getDefaultFont, getFallbackFontName, mm2pt, } from '@pdfme/common';
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';
3
+ import { calculateDynamicFontSize, heightOfFontAtSize, getFontDescentInPt, getFontKitFont, widthOfTextAtSize, splitTextToSize, } from './helper.js';
4
+ import { convertForPdfLayoutProps, rotatePoint, hex2PrintingColor } from '../utils.js';
8
5
  const embedAndGetFontObj = async (arg) => {
9
6
  const { pdfDoc, font, _cache } = arg;
10
7
  if (_cache.has(pdfDoc)) {
@@ -25,41 +22,41 @@ const embedAndGetFontObj = async (arg) => {
25
22
  };
26
23
  const getFontProp = ({ value, fontKitFont, schema, colorType, }) => {
27
24
  const fontSize = schema.dynamicFontSize
28
- ? (0, helper_js_1.calculateDynamicFontSize)({ textSchema: schema, fontKitFont, value })
29
- : schema.fontSize ?? constants_js_1.DEFAULT_FONT_SIZE;
30
- const color = (0, utils_js_1.hex2PrintingColor)(schema.fontColor || constants_js_1.DEFAULT_FONT_COLOR, colorType);
25
+ ? calculateDynamicFontSize({ textSchema: schema, fontKitFont, value })
26
+ : schema.fontSize ?? DEFAULT_FONT_SIZE;
27
+ const color = hex2PrintingColor(schema.fontColor || DEFAULT_FONT_COLOR, colorType);
31
28
  return {
32
- alignment: schema.alignment ?? constants_js_1.DEFAULT_ALIGNMENT,
33
- verticalAlignment: schema.verticalAlignment ?? constants_js_1.DEFAULT_VERTICAL_ALIGNMENT,
34
- lineHeight: schema.lineHeight ?? constants_js_1.DEFAULT_LINE_HEIGHT,
35
- characterSpacing: schema.characterSpacing ?? constants_js_1.DEFAULT_CHARACTER_SPACING,
29
+ alignment: schema.alignment ?? DEFAULT_ALIGNMENT,
30
+ verticalAlignment: schema.verticalAlignment ?? DEFAULT_VERTICAL_ALIGNMENT,
31
+ lineHeight: schema.lineHeight ?? DEFAULT_LINE_HEIGHT,
32
+ characterSpacing: schema.characterSpacing ?? DEFAULT_CHARACTER_SPACING,
36
33
  fontSize,
37
34
  color,
38
35
  };
39
36
  };
40
- const pdfRender = async (arg) => {
37
+ export const pdfRender = async (arg) => {
41
38
  const { value, pdfDoc, pdfLib, page, options, schema, _cache } = arg;
42
39
  if (!value)
43
40
  return;
44
- const { font = (0, common_1.getDefaultFont)(), colorType } = options;
41
+ const { font = getDefaultFont(), colorType } = options;
45
42
  const [pdfFontObj, fontKitFont] = await Promise.all([
46
43
  embedAndGetFontObj({ pdfDoc, font, _cache }),
47
- (0, helper_js_1.getFontKitFont)(schema.fontName, font, _cache),
44
+ getFontKitFont(schema.fontName, font, _cache),
48
45
  ]);
49
46
  const fontProp = getFontProp({ value, fontKitFont, schema, colorType });
50
47
  const { fontSize, color, alignment, verticalAlignment, lineHeight, characterSpacing } = fontProp;
51
- const fontName = (schema.fontName ? schema.fontName : (0, common_1.getFallbackFontName)(font));
48
+ const fontName = (schema.fontName ? schema.fontName : getFallbackFontName(font));
52
49
  const pdfFontValue = pdfFontObj && pdfFontObj[fontName];
53
50
  const pageHeight = page.getHeight();
54
- const { width, height, rotate, position: { x, y }, opacity, } = (0, utils_js_1.convertForPdfLayoutProps)({ schema, pageHeight, applyRotateTranslate: false });
51
+ const { width, height, rotate, position: { x, y }, opacity, } = convertForPdfLayoutProps({ schema, pageHeight, applyRotateTranslate: false });
55
52
  if (schema.backgroundColor) {
56
- const color = (0, utils_js_1.hex2PrintingColor)(schema.backgroundColor, colorType);
53
+ const color = hex2PrintingColor(schema.backgroundColor, colorType);
57
54
  page.drawRectangle({ x, y, width, height, rotate, color });
58
55
  }
59
- const firstLineTextHeight = (0, helper_js_1.heightOfFontAtSize)(fontKitFont, fontSize);
60
- const descent = (0, helper_js_1.getFontDescentInPt)(fontKitFont, fontSize);
56
+ const firstLineTextHeight = heightOfFontAtSize(fontKitFont, fontSize);
57
+ const descent = getFontDescentInPt(fontKitFont, fontSize);
61
58
  const halfLineHeightAdjustment = lineHeight === 0 ? 0 : ((lineHeight - 1) * fontSize) / 2;
62
- const lines = (0, helper_js_1.splitTextToSize)({
59
+ const lines = splitTextToSize({
63
60
  value,
64
61
  characterSpacing,
65
62
  fontSize,
@@ -68,25 +65,25 @@ const pdfRender = async (arg) => {
68
65
  });
69
66
  // Text lines are rendered from the bottom upwards, we need to adjust the position down
70
67
  let yOffset = 0;
71
- if (verticalAlignment === constants_js_1.VERTICAL_ALIGN_TOP) {
68
+ if (verticalAlignment === VERTICAL_ALIGN_TOP) {
72
69
  yOffset = firstLineTextHeight + halfLineHeightAdjustment;
73
70
  }
74
71
  else {
75
72
  const otherLinesHeight = lineHeight * fontSize * (lines.length - 1);
76
- if (verticalAlignment === constants_js_1.VERTICAL_ALIGN_BOTTOM) {
73
+ if (verticalAlignment === VERTICAL_ALIGN_BOTTOM) {
77
74
  yOffset = height - otherLinesHeight + descent - halfLineHeightAdjustment;
78
75
  }
79
- else if (verticalAlignment === constants_js_1.VERTICAL_ALIGN_MIDDLE) {
76
+ else if (verticalAlignment === VERTICAL_ALIGN_MIDDLE) {
80
77
  yOffset =
81
78
  (height - otherLinesHeight - firstLineTextHeight + descent) / 2 + firstLineTextHeight;
82
79
  }
83
80
  }
84
- const pivotPoint = { x: x + width / 2, y: pageHeight - (0, common_1.mm2pt)(schema.position.y) - height / 2 };
81
+ const pivotPoint = { x: x + width / 2, y: pageHeight - mm2pt(schema.position.y) - height / 2 };
85
82
  const segmenter = new Intl.Segmenter(undefined, { granularity: 'grapheme' });
86
83
  lines.forEach((line, rowIndex) => {
87
84
  const trimmed = line.replace('\n', '');
88
- const textWidth = (0, helper_js_1.widthOfTextAtSize)(trimmed, fontKitFont, fontSize, characterSpacing);
89
- const textHeight = (0, helper_js_1.heightOfFontAtSize)(fontKitFont, fontSize);
85
+ const textWidth = widthOfTextAtSize(trimmed, fontKitFont, fontSize, characterSpacing);
86
+ const textHeight = heightOfFontAtSize(fontKitFont, fontSize);
90
87
  const rowYOffset = lineHeight * fontSize * rowIndex;
91
88
  // Adobe Acrobat Reader shows an error if `drawText` is called with an empty text
92
89
  if (line === '') {
@@ -100,14 +97,14 @@ const pdfRender = async (arg) => {
100
97
  else if (alignment === 'right') {
101
98
  xLine += width - textWidth;
102
99
  }
103
- let yLine = pageHeight - (0, common_1.mm2pt)(schema.position.y) - yOffset - rowYOffset;
100
+ let yLine = pageHeight - mm2pt(schema.position.y) - yOffset - rowYOffset;
104
101
  // draw strikethrough
105
102
  if (schema.strikethrough && textWidth > 0) {
106
103
  const _x = xLine + textWidth + 1;
107
104
  const _y = yLine + textHeight / 3;
108
105
  page.drawLine({
109
- start: (0, utils_js_1.rotatePoint)({ x: xLine, y: _y }, pivotPoint, rotate.angle),
110
- end: (0, utils_js_1.rotatePoint)({ x: _x, y: _y }, pivotPoint, rotate.angle),
106
+ start: rotatePoint({ x: xLine, y: _y }, pivotPoint, rotate.angle),
107
+ end: rotatePoint({ x: _x, y: _y }, pivotPoint, rotate.angle),
111
108
  thickness: (1 / 12) * fontSize,
112
109
  color: color,
113
110
  opacity,
@@ -118,8 +115,8 @@ const pdfRender = async (arg) => {
118
115
  const _x = xLine + textWidth + 1;
119
116
  const _y = yLine - textHeight / 12;
120
117
  page.drawLine({
121
- start: (0, utils_js_1.rotatePoint)({ x: xLine, y: _y }, pivotPoint, rotate.angle),
122
- end: (0, utils_js_1.rotatePoint)({ x: _x, y: _y }, pivotPoint, rotate.angle),
118
+ start: rotatePoint({ x: xLine, y: _y }, pivotPoint, rotate.angle),
119
+ end: rotatePoint({ x: _x, y: _y }, pivotPoint, rotate.angle),
123
120
  thickness: (1 / 12) * fontSize,
124
121
  color: color,
125
122
  opacity,
@@ -128,7 +125,7 @@ const pdfRender = async (arg) => {
128
125
  if (rotate.angle !== 0) {
129
126
  // As we draw each line individually from different points, we must translate each lines position
130
127
  // relative to the UI rotation pivot point. see comments in convertForPdfLayoutProps() for more info.
131
- const rotatedPoint = (0, utils_js_1.rotatePoint)({ x: xLine, y: yLine }, pivotPoint, rotate.angle);
128
+ const rotatedPoint = rotatePoint({ x: xLine, y: yLine }, pivotPoint, rotate.angle);
132
129
  xLine = rotatedPoint.x;
133
130
  yLine = rotatedPoint.y;
134
131
  }
@@ -152,5 +149,4 @@ const pdfRender = async (arg) => {
152
149
  });
153
150
  });
154
151
  };
155
- exports.pdfRender = pdfRender;
156
152
  //# sourceMappingURL=pdfRender.js.map