av6-pdf-engine 1.0.0

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 (173) hide show
  1. package/dist/index.d.ts +3 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +19 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/renderer-engine/blocks/barcode.d.ts +3 -0
  6. package/dist/renderer-engine/blocks/barcode.d.ts.map +1 -0
  7. package/dist/renderer-engine/blocks/barcode.js +47 -0
  8. package/dist/renderer-engine/blocks/barcode.js.map +1 -0
  9. package/dist/renderer-engine/blocks/columns.d.ts +3 -0
  10. package/dist/renderer-engine/blocks/columns.d.ts.map +1 -0
  11. package/dist/renderer-engine/blocks/columns.js +105 -0
  12. package/dist/renderer-engine/blocks/columns.js.map +1 -0
  13. package/dist/renderer-engine/blocks/image.d.ts +4 -0
  14. package/dist/renderer-engine/blocks/image.d.ts.map +1 -0
  15. package/dist/renderer-engine/blocks/image.js +57 -0
  16. package/dist/renderer-engine/blocks/image.js.map +1 -0
  17. package/dist/renderer-engine/blocks/index.d.ts +8 -0
  18. package/dist/renderer-engine/blocks/index.d.ts.map +1 -0
  19. package/dist/renderer-engine/blocks/index.js +24 -0
  20. package/dist/renderer-engine/blocks/index.js.map +1 -0
  21. package/dist/renderer-engine/blocks/key-value-grid.d.ts +3 -0
  22. package/dist/renderer-engine/blocks/key-value-grid.d.ts.map +1 -0
  23. package/dist/renderer-engine/blocks/key-value-grid.js +245 -0
  24. package/dist/renderer-engine/blocks/key-value-grid.js.map +1 -0
  25. package/dist/renderer-engine/blocks/line.d.ts +3 -0
  26. package/dist/renderer-engine/blocks/line.d.ts.map +1 -0
  27. package/dist/renderer-engine/blocks/line.js +35 -0
  28. package/dist/renderer-engine/blocks/line.js.map +1 -0
  29. package/dist/renderer-engine/blocks/table.d.ts +4 -0
  30. package/dist/renderer-engine/blocks/table.d.ts.map +1 -0
  31. package/dist/renderer-engine/blocks/table.js +201 -0
  32. package/dist/renderer-engine/blocks/table.js.map +1 -0
  33. package/dist/renderer-engine/blocks/text.d.ts +3 -0
  34. package/dist/renderer-engine/blocks/text.d.ts.map +1 -0
  35. package/dist/renderer-engine/blocks/text.js +52 -0
  36. package/dist/renderer-engine/blocks/text.js.map +1 -0
  37. package/dist/renderer-engine/index.d.ts +4 -0
  38. package/dist/renderer-engine/index.d.ts.map +1 -0
  39. package/dist/renderer-engine/index.js +215 -0
  40. package/dist/renderer-engine/index.js.map +1 -0
  41. package/dist/renderer-engine/utils/block-renderer.d.ts +17 -0
  42. package/dist/renderer-engine/utils/block-renderer.d.ts.map +1 -0
  43. package/dist/renderer-engine/utils/block-renderer.js +86 -0
  44. package/dist/renderer-engine/utils/block-renderer.js.map +1 -0
  45. package/dist/renderer-engine/utils/context.d.ts +3 -0
  46. package/dist/renderer-engine/utils/context.d.ts.map +1 -0
  47. package/dist/renderer-engine/utils/context.js +16 -0
  48. package/dist/renderer-engine/utils/context.js.map +1 -0
  49. package/dist/renderer-engine/utils/ensure-space.d.ts +9 -0
  50. package/dist/renderer-engine/utils/ensure-space.d.ts.map +1 -0
  51. package/dist/renderer-engine/utils/ensure-space.js +18 -0
  52. package/dist/renderer-engine/utils/ensure-space.js.map +1 -0
  53. package/dist/renderer-engine/utils/env.d.ts +3 -0
  54. package/dist/renderer-engine/utils/env.d.ts.map +1 -0
  55. package/dist/renderer-engine/utils/env.js +10 -0
  56. package/dist/renderer-engine/utils/env.js.map +1 -0
  57. package/dist/renderer-engine/utils/finish-page.d.ts +13 -0
  58. package/dist/renderer-engine/utils/finish-page.d.ts.map +1 -0
  59. package/dist/renderer-engine/utils/finish-page.js +27 -0
  60. package/dist/renderer-engine/utils/finish-page.js.map +1 -0
  61. package/dist/renderer-engine/utils/footer.d.ts +3 -0
  62. package/dist/renderer-engine/utils/footer.d.ts.map +1 -0
  63. package/dist/renderer-engine/utils/footer.js +89 -0
  64. package/dist/renderer-engine/utils/footer.js.map +1 -0
  65. package/dist/renderer-engine/utils/header.d.ts +3 -0
  66. package/dist/renderer-engine/utils/header.d.ts.map +1 -0
  67. package/dist/renderer-engine/utils/header.js +47 -0
  68. package/dist/renderer-engine/utils/header.js.map +1 -0
  69. package/dist/renderer-engine/utils/image-loader.d.ts +4 -0
  70. package/dist/renderer-engine/utils/image-loader.d.ts.map +1 -0
  71. package/dist/renderer-engine/utils/image-loader.js +52 -0
  72. package/dist/renderer-engine/utils/image-loader.js.map +1 -0
  73. package/dist/renderer-engine/utils/index.d.ts +19 -0
  74. package/dist/renderer-engine/utils/index.d.ts.map +1 -0
  75. package/dist/renderer-engine/utils/index.js +35 -0
  76. package/dist/renderer-engine/utils/index.js.map +1 -0
  77. package/dist/renderer-engine/utils/layout.d.ts +8 -0
  78. package/dist/renderer-engine/utils/layout.d.ts.map +1 -0
  79. package/dist/renderer-engine/utils/layout.js +22 -0
  80. package/dist/renderer-engine/utils/layout.js.map +1 -0
  81. package/dist/renderer-engine/utils/measure-block-height.d.ts +8 -0
  82. package/dist/renderer-engine/utils/measure-block-height.d.ts.map +1 -0
  83. package/dist/renderer-engine/utils/measure-block-height.js +220 -0
  84. package/dist/renderer-engine/utils/measure-block-height.js.map +1 -0
  85. package/dist/renderer-engine/utils/page-background.d.ts +6 -0
  86. package/dist/renderer-engine/utils/page-background.d.ts.map +1 -0
  87. package/dist/renderer-engine/utils/page-background.js +30 -0
  88. package/dist/renderer-engine/utils/page-background.js.map +1 -0
  89. package/dist/renderer-engine/utils/page-flow.d.ts +3 -0
  90. package/dist/renderer-engine/utils/page-flow.d.ts.map +1 -0
  91. package/dist/renderer-engine/utils/page-flow.js +9 -0
  92. package/dist/renderer-engine/utils/page-flow.js.map +1 -0
  93. package/dist/renderer-engine/utils/page-limit.d.ts +8 -0
  94. package/dist/renderer-engine/utils/page-limit.d.ts.map +1 -0
  95. package/dist/renderer-engine/utils/page-limit.js +15 -0
  96. package/dist/renderer-engine/utils/page-limit.js.map +1 -0
  97. package/dist/renderer-engine/utils/qr-bar-code.d.ts +17 -0
  98. package/dist/renderer-engine/utils/qr-bar-code.d.ts.map +1 -0
  99. package/dist/renderer-engine/utils/qr-bar-code.js +141 -0
  100. package/dist/renderer-engine/utils/qr-bar-code.js.map +1 -0
  101. package/dist/renderer-engine/utils/signature.d.ts +20 -0
  102. package/dist/renderer-engine/utils/signature.d.ts.map +1 -0
  103. package/dist/renderer-engine/utils/signature.js +214 -0
  104. package/dist/renderer-engine/utils/signature.js.map +1 -0
  105. package/dist/renderer-engine/utils/start-page-layout.d.ts +20 -0
  106. package/dist/renderer-engine/utils/start-page-layout.d.ts.map +1 -0
  107. package/dist/renderer-engine/utils/start-page-layout.js +34 -0
  108. package/dist/renderer-engine/utils/start-page-layout.js.map +1 -0
  109. package/dist/renderer-engine/utils/styles.d.ts +7 -0
  110. package/dist/renderer-engine/utils/styles.d.ts.map +1 -0
  111. package/dist/renderer-engine/utils/styles.js +124 -0
  112. package/dist/renderer-engine/utils/styles.js.map +1 -0
  113. package/dist/renderer-engine/utils/watermark.d.ts +11 -0
  114. package/dist/renderer-engine/utils/watermark.d.ts.map +1 -0
  115. package/dist/renderer-engine/utils/watermark.js +57 -0
  116. package/dist/renderer-engine/utils/watermark.js.map +1 -0
  117. package/dist/types/barcode.d.ts +23 -0
  118. package/dist/types/barcode.d.ts.map +1 -0
  119. package/dist/types/barcode.js +11 -0
  120. package/dist/types/barcode.js.map +1 -0
  121. package/dist/types/columns.d.ts +14 -0
  122. package/dist/types/columns.d.ts.map +1 -0
  123. package/dist/types/columns.js +3 -0
  124. package/dist/types/columns.js.map +1 -0
  125. package/dist/types/common.d.ts +102 -0
  126. package/dist/types/common.d.ts.map +1 -0
  127. package/dist/types/common.js +3 -0
  128. package/dist/types/common.js.map +1 -0
  129. package/dist/types/context.d.ts +17 -0
  130. package/dist/types/context.d.ts.map +1 -0
  131. package/dist/types/context.js +3 -0
  132. package/dist/types/context.js.map +1 -0
  133. package/dist/types/image.d.ts +13 -0
  134. package/dist/types/image.d.ts.map +1 -0
  135. package/dist/types/image.js +3 -0
  136. package/dist/types/image.js.map +1 -0
  137. package/dist/types/index.d.ts +13 -0
  138. package/dist/types/index.d.ts.map +1 -0
  139. package/dist/types/index.js +29 -0
  140. package/dist/types/index.js.map +1 -0
  141. package/dist/types/key-value-grid.d.ts +34 -0
  142. package/dist/types/key-value-grid.d.ts.map +1 -0
  143. package/dist/types/key-value-grid.js +3 -0
  144. package/dist/types/key-value-grid.js.map +1 -0
  145. package/dist/types/line.d.ts +11 -0
  146. package/dist/types/line.d.ts.map +1 -0
  147. package/dist/types/line.js +3 -0
  148. package/dist/types/line.js.map +1 -0
  149. package/dist/types/page-break.d.ts +5 -0
  150. package/dist/types/page-break.d.ts.map +1 -0
  151. package/dist/types/page-break.js +3 -0
  152. package/dist/types/page-break.js.map +1 -0
  153. package/dist/types/qr.d.ts +22 -0
  154. package/dist/types/qr.d.ts.map +1 -0
  155. package/dist/types/qr.js +10 -0
  156. package/dist/types/qr.js.map +1 -0
  157. package/dist/types/signature.d.ts +12 -0
  158. package/dist/types/signature.d.ts.map +1 -0
  159. package/dist/types/signature.js +3 -0
  160. package/dist/types/signature.js.map +1 -0
  161. package/dist/types/table.d.ts +32 -0
  162. package/dist/types/table.d.ts.map +1 -0
  163. package/dist/types/table.js +3 -0
  164. package/dist/types/table.js.map +1 -0
  165. package/dist/types/text.d.ts +19 -0
  166. package/dist/types/text.d.ts.map +1 -0
  167. package/dist/types/text.js +3 -0
  168. package/dist/types/text.js.map +1 -0
  169. package/dist/types/utility.d.ts +1 -0
  170. package/dist/types/utility.d.ts.map +1 -0
  171. package/dist/types/utility.js +2 -0
  172. package/dist/types/utility.js.map +1 -0
  173. package/package.json +42 -0
@@ -0,0 +1,3 @@
1
+ export * from "./renderer-engine";
2
+ export * from "./types";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,19 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./renderer-engine"), exports);
18
+ __exportStar(require("./types"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,0CAAwB"}
@@ -0,0 +1,3 @@
1
+ import { BarcodeBlock, PageContext, RenderEnv } from "../../types";
2
+ export declare const processBarcodeBlock: (doc: PDFKit.PDFDocument, ctx: PageContext, block: BarcodeBlock, y: number | null, env: RenderEnv, ensureSpaceFor: (heightNeeded: number, env: RenderEnv) => void) => number;
3
+ //# sourceMappingURL=barcode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"barcode.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/barcode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnE,eAAO,MAAM,mBAAmB,GAC9B,KAAK,MAAM,CAAC,WAAW,EACvB,KAAK,WAAW,EAChB,OAAO,YAAY,EACnB,GAAG,MAAM,GAAG,IAAI,EAChB,KAAK,SAAS,EACd,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,IAAI,KAC7D,MA4CF,CAAC"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processBarcodeBlock = void 0;
4
+ const _1 = require("./");
5
+ const processBarcodeBlock = (doc, ctx, block, y, env, ensureSpaceFor) => {
6
+ var _a, _b, _c, _d, _e, _f;
7
+ const imgSource = block.src;
8
+ const imgWidth = (_a = block.width) !== null && _a !== void 0 ? _a : 120;
9
+ const imgHeight = (_b = block.height) !== null && _b !== void 0 ? _b : 40;
10
+ const localLeft = (_c = block.marginLeft) !== null && _c !== void 0 ? _c : 0;
11
+ const localRight = (_d = block.marginRight) !== null && _d !== void 0 ? _d : 0;
12
+ const baseLeft = env.marginLeft + localLeft;
13
+ const availableWidth = Math.max(env.innerWidth - localLeft - localRight, 1);
14
+ const mt = (_e = block.marginTop) !== null && _e !== void 0 ? _e : 0;
15
+ const mb = (_f = block.marginBottom) !== null && _f !== void 0 ? _f : 0;
16
+ const baseY = y !== null && y !== void 0 ? y : ctx.currentY;
17
+ const startY = baseY + mt;
18
+ const heightNeeded = mt + imgHeight + mb;
19
+ if (y === null) {
20
+ ensureSpaceFor(heightNeeded, env);
21
+ }
22
+ let x = baseLeft;
23
+ if (block.align === "center") {
24
+ x = baseLeft + (availableWidth - imgWidth) / 2;
25
+ }
26
+ else if (block.align === "right") {
27
+ x = baseLeft + availableWidth - imgWidth;
28
+ }
29
+ const rotation = typeof block.rotate === "number"
30
+ ? block.rotate
31
+ : block.orientation === "vertical"
32
+ ? 90
33
+ : 0;
34
+ try {
35
+ (0, _1.drawRotatedImage)(doc, imgSource, x, startY, imgWidth, imgHeight, rotation);
36
+ }
37
+ catch (e) {
38
+ // eslint-disable-next-line no-console
39
+ console.warn("Failed to load barcode image:", e);
40
+ }
41
+ const newY = startY + imgHeight + mb;
42
+ if (y === null)
43
+ ctx.currentY = newY;
44
+ return newY;
45
+ };
46
+ exports.processBarcodeBlock = processBarcodeBlock;
47
+ //# sourceMappingURL=barcode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"barcode.js","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/barcode.ts"],"names":[],"mappings":";;;AACA,yBAAsC;AAE/B,MAAM,mBAAmB,GAAG,CACjC,GAAuB,EACvB,GAAgB,EAChB,KAAmB,EACnB,CAAgB,EAChB,GAAc,EACd,cAA8D,EACtD,EAAE;;IACV,MAAM,SAAS,GAAG,KAAK,CAAC,GAAI,CAAC;IAC7B,MAAM,QAAQ,GAAG,MAAA,KAAK,CAAC,KAAK,mCAAI,GAAG,CAAC;IACpC,MAAM,SAAS,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,EAAE,CAAC;IAErC,MAAM,SAAS,GAAG,MAAA,KAAK,CAAC,UAAU,mCAAI,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,MAAA,KAAK,CAAC,WAAW,mCAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,SAAS,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;IAE5E,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,SAAS,mCAAI,CAAC,CAAC;IAChC,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,YAAY,mCAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,GAAG,CAAC,QAAQ,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,GAAG,EAAE,CAAC;IAC1B,MAAM,YAAY,GAAG,EAAE,GAAG,SAAS,GAAG,EAAE,CAAC;IAEzC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACf,cAAc,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,GAAG,QAAQ,CAAC;IACjB,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC7B,CAAC,GAAG,QAAQ,GAAG,CAAC,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QACnC,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC3C,CAAC;IAED,MAAM,QAAQ,GACZ,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK,CAAC,MAAM;QACd,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,UAAU;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,CAAC;IAER,IAAI,CAAC;QACH,IAAA,mBAAgB,EAAC,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,EAAE,CAAC;IACrC,IAAI,CAAC,KAAK,IAAI;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAnDW,QAAA,mBAAmB,uBAmD9B"}
@@ -0,0 +1,3 @@
1
+ import { Block, ColumnsBlock, PageContext, RenderEnv } from "../../types";
2
+ export declare const processColumnsBlock: (ctx: PageContext, block: ColumnsBlock, y: number | null, env: RenderEnv, computeColumnPixelWidths: (widths: (number | "*")[], totalWidth: number) => number[], renderBlock: (block: Block, y: number | null, env: RenderEnv) => number, ensureSpaceFor: (heightNeeded: number, env: RenderEnv) => void, measureBlockHeight: (block: Block, env: RenderEnv) => number) => number;
3
+ //# sourceMappingURL=columns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/columns.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,mBAAmB,GAC9B,KAAK,WAAW,EAChB,OAAO,YAAY,EACnB,GAAG,MAAM,GAAG,IAAI,EAChB,KAAK,SAAS,EACd,0BAA0B,CACxB,MAAM,EAAE,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,EACxB,UAAU,EAAE,MAAM,KACf,MAAM,EAAE,EACb,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,SAAS,KAAK,MAAM,EACvE,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,IAAI,EAC9D,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,KAAK,MAAM,KAC3D,MA6GF,CAAC"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processColumnsBlock = void 0;
4
+ const processColumnsBlock = (ctx, block, y, env, computeColumnPixelWidths, renderBlock, ensureSpaceFor, measureBlockHeight) => {
5
+ var _a, _b, _c, _d, _e, _f, _g;
6
+ const blockLeft = (_a = block.marginLeft) !== null && _a !== void 0 ? _a : 0;
7
+ const blockRight = (_b = block.marginRight) !== null && _b !== void 0 ? _b : 0;
8
+ const baseLeft = env.marginLeft + blockLeft;
9
+ const totalWidth = Math.max(env.innerWidth - blockLeft - blockRight, 1);
10
+ const mt = (_c = block.marginTop) !== null && _c !== void 0 ? _c : 0;
11
+ const mb = (_d = block.marginBottom) !== null && _d !== void 0 ? _d : 0;
12
+ const cols = (_e = block.columns) !== null && _e !== void 0 ? _e : [];
13
+ const n = cols.length;
14
+ // Empty columns
15
+ if (!n) {
16
+ const baseY0 = y !== null && y !== void 0 ? y : ctx.currentY;
17
+ const endY = baseY0 + mt + mb;
18
+ if (y === null)
19
+ ctx.currentY = endY;
20
+ return endY;
21
+ }
22
+ // Compute column widths + gap
23
+ let colWidths;
24
+ const mode = (_f = block.mode) !== null && _f !== void 0 ? _f : "fixedGap";
25
+ let gap;
26
+ if (mode === "spaceBetween" && n > 1) {
27
+ if (block.widths && block.widths.length === n) {
28
+ colWidths = computeColumnPixelWidths(block.widths, totalWidth);
29
+ }
30
+ else {
31
+ colWidths = Array(n).fill(totalWidth / n);
32
+ }
33
+ const totalColsWidth = colWidths.reduce((a, b) => a + b, 0);
34
+ const remaining = Math.max(totalWidth - totalColsWidth, 0);
35
+ gap = remaining / (n - 1);
36
+ }
37
+ else {
38
+ gap = (_g = block.gap) !== null && _g !== void 0 ? _g : 20;
39
+ const totalGapsWidth = gap * (n - 1);
40
+ const widthForCols = Math.max(totalWidth - totalGapsWidth, 1);
41
+ if (block.widths && block.widths.length === n) {
42
+ colWidths = computeColumnPixelWidths(block.widths, widthForCols);
43
+ }
44
+ else {
45
+ colWidths = Array(n).fill(widthForCols / n);
46
+ }
47
+ }
48
+ // X origins
49
+ const xBases = [];
50
+ {
51
+ let x = baseLeft;
52
+ for (let i = 0; i < n; i++) {
53
+ xBases.push(x);
54
+ x += colWidths[i] + (i < n - 1 ? gap : 0);
55
+ }
56
+ }
57
+ // ✅ PRE-MEASURE TOTAL HEIGHT (max of column heights)
58
+ const measureColHeights = [];
59
+ for (let colIndex = 0; colIndex < n; colIndex++) {
60
+ const colEnvMeasure = {
61
+ marginLeft: 0,
62
+ innerWidth: colWidths[colIndex],
63
+ allowPageBreak: false, // measure as keep-together
64
+ };
65
+ let h = 0;
66
+ for (const b of cols[colIndex]) {
67
+ if (b.visible === false)
68
+ continue;
69
+ h += measureBlockHeight(b, colEnvMeasure);
70
+ }
71
+ measureColHeights.push(h);
72
+ }
73
+ const maxColHeight = Math.max(...measureColHeights, 0);
74
+ const totalHeightNeeded = mt + maxColHeight + mb;
75
+ // ✅ IMPORTANT: call ensureSpaceFor BEFORE computing baseY/startY
76
+ if (y === null) {
77
+ ensureSpaceFor(totalHeightNeeded, env);
78
+ }
79
+ // Now recompute after potential page break
80
+ const baseY = y !== null && y !== void 0 ? y : ctx.currentY;
81
+ const startY = baseY + mt;
82
+ // ✅ Render columns WITHOUT allowing breaks inside columns
83
+ const heights = [];
84
+ for (let colIndex = 0; colIndex < n; colIndex++) {
85
+ const colEnv = {
86
+ marginLeft: xBases[colIndex],
87
+ innerWidth: colWidths[colIndex],
88
+ allowPageBreak: false, // keep whole column block intact on one page
89
+ };
90
+ let colY = startY;
91
+ for (const b of cols[colIndex]) {
92
+ if (b.visible === false)
93
+ continue;
94
+ colY = renderBlock(b, colY, colEnv);
95
+ }
96
+ heights.push(colY - startY);
97
+ }
98
+ const maxHeight = Math.max(...heights, 0);
99
+ const newY = startY + maxHeight + mb;
100
+ if (y === null)
101
+ ctx.currentY = newY;
102
+ return newY;
103
+ };
104
+ exports.processColumnsBlock = processColumnsBlock;
105
+ //# sourceMappingURL=columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/columns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { ImageBlock, PageContext, RenderEnv } from "../../types";
2
+ export declare const drawRotatedImage: (doc: PDFKit.PDFDocument, src: string | Buffer, x: number, y: number, width: number, height: number, rotationDeg: number) => void;
3
+ export declare const processImageBlock: (doc: PDFKit.PDFDocument, ctx: PageContext, block: ImageBlock, y: number | null, env: RenderEnv, ensureSpaceFor: (heightNeeded: number, env: RenderEnv) => void) => number;
4
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,eAAO,MAAM,gBAAgB,GAC3B,KAAK,MAAM,CAAC,WAAW,EACvB,KAAK,MAAM,GAAG,MAAM,EACpB,GAAG,MAAM,EACT,GAAG,MAAM,EACT,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,aAAa,MAAM,SAcpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,KAAK,MAAM,CAAC,WAAW,EACvB,KAAK,WAAW,EAChB,OAAO,UAAU,EACjB,GAAG,MAAM,GAAG,IAAI,EAChB,KAAK,SAAS,EACd,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,IAAI,KAC7D,MAwCF,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processImageBlock = exports.drawRotatedImage = void 0;
4
+ const drawRotatedImage = (doc, src, x, y, width, height, rotationDeg) => {
5
+ if (!rotationDeg) {
6
+ doc.image(src, x, y, { width, height });
7
+ return;
8
+ }
9
+ const cx = x + width / 2;
10
+ const cy = y + height / 2;
11
+ doc.save();
12
+ doc.rotate(rotationDeg, { origin: [cx, cy] });
13
+ doc.image(src, x, y, { width, height });
14
+ doc.restore();
15
+ };
16
+ exports.drawRotatedImage = drawRotatedImage;
17
+ const processImageBlock = (doc, ctx, block, y, env, ensureSpaceFor) => {
18
+ var _a, _b, _c, _d, _e, _f;
19
+ const imgSource = block.src;
20
+ const imgWidth = (_a = block.width) !== null && _a !== void 0 ? _a : 80;
21
+ const imgHeight = (_b = block.height) !== null && _b !== void 0 ? _b : 50;
22
+ const localLeft = (_c = block.marginLeft) !== null && _c !== void 0 ? _c : 0;
23
+ const localRight = (_d = block.marginRight) !== null && _d !== void 0 ? _d : 0;
24
+ const baseLeft = env.marginLeft + localLeft;
25
+ const availableWidth = Math.max(env.innerWidth - localLeft - localRight, 1);
26
+ const mt = (_e = block.marginTop) !== null && _e !== void 0 ? _e : 0;
27
+ const mb = (_f = block.marginBottom) !== null && _f !== void 0 ? _f : 0;
28
+ const baseY = y !== null && y !== void 0 ? y : ctx.currentY;
29
+ const startY = baseY + mt;
30
+ const heightNeeded = mt + imgHeight + mb;
31
+ if (y === null) {
32
+ ensureSpaceFor(heightNeeded, env);
33
+ }
34
+ let x = baseLeft;
35
+ if (block.align === "center") {
36
+ x = baseLeft + (availableWidth - imgWidth) / 2;
37
+ }
38
+ else if (block.align === "right") {
39
+ x = baseLeft + availableWidth - imgWidth;
40
+ }
41
+ try {
42
+ doc.image(imgSource, x, startY, {
43
+ width: imgWidth,
44
+ height: imgHeight,
45
+ });
46
+ }
47
+ catch (e) {
48
+ // eslint-disable-next-line no-console
49
+ console.warn("Failed to load image:", e);
50
+ }
51
+ const newY = startY + imgHeight + mb;
52
+ if (y === null)
53
+ ctx.currentY = newY;
54
+ return newY;
55
+ };
56
+ exports.processImageBlock = processImageBlock;
57
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/image.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export * from "./barcode";
2
+ export * from "./columns";
3
+ export * from "./image";
4
+ export * from "./key-value-grid";
5
+ export * from "./line";
6
+ export * from "./table";
7
+ export * from "./text";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,24 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./barcode"), exports);
18
+ __exportStar(require("./columns"), exports);
19
+ __exportStar(require("./image"), exports);
20
+ __exportStar(require("./key-value-grid"), exports);
21
+ __exportStar(require("./line"), exports);
22
+ __exportStar(require("./table"), exports);
23
+ __exportStar(require("./text"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B;AAC1B,0CAAwB;AACxB,mDAAiC;AACjC,yCAAuB;AACvB,0CAAwB;AACxB,yCAAuB"}
@@ -0,0 +1,3 @@
1
+ import { KeyValueGridBlock, PageContext, RenderEnv, StyleDef } from "../../types";
2
+ export declare const processKeyValueGridBlock: (doc: PDFKit.PDFDocument, ctx: PageContext, styles: Record<string, StyleDef> | undefined, block: KeyValueGridBlock, y: number | null, env: RenderEnv, computeColumnPixelWidths: (widths: (number | "*")[], totalWidth: number) => number[], ensureSpaceFor: (heightNeeded: number, env: RenderEnv) => void) => number;
3
+ //# sourceMappingURL=key-value-grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-value-grid.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/key-value-grid.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,QAAQ,EAET,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,wBAAwB,GACnC,KAAK,MAAM,CAAC,WAAW,EACvB,KAAK,WAAW,EAChB,QAAQ,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,EAC5C,OAAO,iBAAiB,EACxB,GAAG,MAAM,GAAG,IAAI,EAChB,KAAK,SAAS,EACd,0BAA0B,CACxB,MAAM,EAAE,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,EACxB,UAAU,EAAE,MAAM,KACf,MAAM,EAAE,EACb,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,IAAI,KAC7D,MA4SF,CAAC"}
@@ -0,0 +1,245 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processKeyValueGridBlock = void 0;
4
+ const utils_1 = require("../utils");
5
+ const processKeyValueGridBlock = (doc, ctx, styles, block, y, env, computeColumnPixelWidths, ensureSpaceFor) => {
6
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8;
7
+ const mt = (_a = block.marginTop) !== null && _a !== void 0 ? _a : 0;
8
+ const mb = (_b = block.marginBottom) !== null && _b !== void 0 ? _b : 0;
9
+ const rowGap = (_c = block.rowGap) !== null && _c !== void 0 ? _c : 4;
10
+ const orientation = (_d = block.orientation) !== null && _d !== void 0 ? _d : "horizontal";
11
+ const cols = (_e = block.columns) !== null && _e !== void 0 ? _e : [];
12
+ const colCount = cols.length;
13
+ if (!colCount) {
14
+ const baseY = y !== null && y !== void 0 ? y : ctx.currentY;
15
+ const endY = baseY + mt + mb;
16
+ if (y === null)
17
+ ctx.currentY = endY;
18
+ return endY;
19
+ }
20
+ const blockLeft = (_f = block.marginLeft) !== null && _f !== void 0 ? _f : 0;
21
+ const blockRight = (_g = block.marginRight) !== null && _g !== void 0 ? _g : 0;
22
+ const baseLeft = env.marginLeft + blockLeft;
23
+ // total area available for this grid (including gaps between columns)
24
+ const totalWidth = Math.max(env.innerWidth - blockLeft - blockRight, 1);
25
+ // gap between columns
26
+ const columnGap = (_h = block.columnGap) !== null && _h !== void 0 ? _h : 30;
27
+ const totalGapWidth = columnGap * (colCount - 1);
28
+ // actual width available for the columns themselves
29
+ const widthForCols = Math.max(totalWidth - totalGapWidth, 1);
30
+ let colWidths;
31
+ if (block.columnWidths && block.columnWidths.length === colCount) {
32
+ const safeWidths = block.columnWidths.map((w) => w === undefined ? "*" : w);
33
+ colWidths = computeColumnPixelWidths(safeWidths, widthForCols);
34
+ }
35
+ else {
36
+ const equal = widthForCols / colCount;
37
+ colWidths = Array(colCount).fill(equal);
38
+ }
39
+ // compute each column's X
40
+ const xBases = [];
41
+ {
42
+ let x = baseLeft;
43
+ for (let i = 0; i < colCount; i++) {
44
+ xBases.push(x);
45
+ x += colWidths[i] + columnGap;
46
+ }
47
+ }
48
+ const maxRows = Math.max(...cols.map((c) => c.length));
49
+ const separatorText = block.separator;
50
+ const sepBoxWidth = separatorText ? 10 : 0;
51
+ const baseKeyWidthRatio = 0.35;
52
+ const resolveStyled = (base, styleNames) => (0, utils_1.resolveTextBlock)(styles, {
53
+ ...base,
54
+ style: styleNames,
55
+ });
56
+ const measureTextHeight = (tb, width) => {
57
+ var _a, _b;
58
+ const fontName = (0, utils_1.getFontNameForText)(tb);
59
+ doc.font(fontName);
60
+ doc.fontSize((_a = tb.fontSize) !== null && _a !== void 0 ? _a : 10);
61
+ return doc.heightOfString((_b = tb.text) !== null && _b !== void 0 ? _b : "", { width });
62
+ };
63
+ // NEW: helpers to build base TextBlock with inline styles
64
+ const buildKeyBlock = (item) => {
65
+ var _a, _b, _c, _d;
66
+ return ({
67
+ type: "text",
68
+ text: (_a = item.key) !== null && _a !== void 0 ? _a : "",
69
+ align: (_b = block.keyAlign) !== null && _b !== void 0 ? _b : "left",
70
+ ...((_c = block.keyTextStyle) !== null && _c !== void 0 ? _c : {}),
71
+ ...((_d = item.keyTextStyle) !== null && _d !== void 0 ? _d : {}),
72
+ });
73
+ };
74
+ const buildValueBlock = (item) => {
75
+ var _a, _b, _c, _d;
76
+ return ({
77
+ type: "text",
78
+ text: (_a = item.value) !== null && _a !== void 0 ? _a : "",
79
+ align: (_b = block.valueAlign) !== null && _b !== void 0 ? _b : "left",
80
+ ...((_c = block.valueTextStyle) !== null && _c !== void 0 ? _c : {}),
81
+ ...((_d = item.valueTextStyle) !== null && _d !== void 0 ? _d : {}),
82
+ });
83
+ };
84
+ // ---------- height estimation ----------
85
+ let totalHeight = mt;
86
+ if (orientation === "vertical") {
87
+ const keyValueGap = (_j = block.verticalKeyValueGap) !== null && _j !== void 0 ? _j : 2;
88
+ let maxColHeight = 0;
89
+ for (let colIndex = 0; colIndex < colCount; colIndex++) {
90
+ const col = cols[colIndex];
91
+ const colWidth = colWidths[colIndex];
92
+ let colHeight = 0;
93
+ for (const item of col) {
94
+ const keyStyleNames = (_l = (_k = item.keyStyle) !== null && _k !== void 0 ? _k : block.keyStyle) !== null && _l !== void 0 ? _l : undefined;
95
+ const valueStyleNames = (_o = (_m = item.valueStyle) !== null && _m !== void 0 ? _m : block.valueStyle) !== null && _o !== void 0 ? _o : undefined;
96
+ const keyBase = buildKeyBlock(item);
97
+ const keyResolved = resolveStyled(keyBase, keyStyleNames);
98
+ const keyHeight = measureTextHeight(keyResolved, colWidth);
99
+ const valueBase = buildValueBlock(item);
100
+ const valueResolved = resolveStyled(valueBase, valueStyleNames);
101
+ const valueHeight = measureTextHeight(valueResolved, colWidth);
102
+ const rowHeight = keyHeight + keyValueGap + valueHeight;
103
+ colHeight += rowHeight + rowGap;
104
+ }
105
+ if (colHeight > maxColHeight)
106
+ maxColHeight = colHeight;
107
+ }
108
+ totalHeight += maxColHeight;
109
+ }
110
+ else {
111
+ for (let rowIndex = 0; rowIndex < maxRows; rowIndex++) {
112
+ let rowHeight = 0;
113
+ for (let colIndex = 0; colIndex < colCount; colIndex++) {
114
+ const col = cols[colIndex];
115
+ const item = col[rowIndex];
116
+ if (!item)
117
+ continue;
118
+ const colWidth = colWidths[colIndex];
119
+ const keyWidthPx = block.keyWidth === "*"
120
+ ? Math.max(colWidth * baseKeyWidthRatio, 20)
121
+ : (_p = block.keyWidth) !== null && _p !== void 0 ? _p : 80;
122
+ const keyStyleNames = (_r = (_q = item.keyStyle) !== null && _q !== void 0 ? _q : block.keyStyle) !== null && _r !== void 0 ? _r : undefined;
123
+ const valueStyleNames = (_t = (_s = item.valueStyle) !== null && _s !== void 0 ? _s : block.valueStyle) !== null && _t !== void 0 ? _t : undefined;
124
+ const keyBase = buildKeyBlock(item);
125
+ const keyResolved = resolveStyled(keyBase, keyStyleNames);
126
+ const keyHeight = measureTextHeight(keyResolved, keyWidthPx);
127
+ const valueBase = buildValueBlock(item);
128
+ const valueResolved = resolveStyled(valueBase, valueStyleNames);
129
+ const valueXInsideCol = keyWidthPx + (separatorText ? sepBoxWidth + 4 : 4);
130
+ const valueWidth = Math.max(colWidth - valueXInsideCol, 1);
131
+ const valueHeight = measureTextHeight(valueResolved, valueWidth);
132
+ const cellHeight = Math.max(keyHeight, valueHeight);
133
+ if (cellHeight > rowHeight)
134
+ rowHeight = cellHeight;
135
+ }
136
+ if (rowHeight > 0) {
137
+ totalHeight += rowHeight + rowGap;
138
+ }
139
+ }
140
+ }
141
+ totalHeight += mb;
142
+ if (y === null) {
143
+ ensureSpaceFor(totalHeight, env);
144
+ }
145
+ const baseY = y !== null && y !== void 0 ? y : ctx.currentY;
146
+ let rowY = baseY + mt;
147
+ // ---------- actual drawing ----------
148
+ if (orientation === "vertical") {
149
+ const keyValueGap = (_u = block.verticalKeyValueGap) !== null && _u !== void 0 ? _u : 2;
150
+ let maxColBottom = rowY;
151
+ for (let colIndex = 0; colIndex < colCount; colIndex++) {
152
+ const col = cols[colIndex];
153
+ const colWidth = colWidths[colIndex];
154
+ const colX = xBases[colIndex];
155
+ let colY = rowY;
156
+ for (const item of col) {
157
+ const keyStyleNames = (_w = (_v = item.keyStyle) !== null && _v !== void 0 ? _v : block.keyStyle) !== null && _w !== void 0 ? _w : undefined;
158
+ const valueStyleNames = (_y = (_x = item.valueStyle) !== null && _x !== void 0 ? _x : block.valueStyle) !== null && _y !== void 0 ? _y : undefined;
159
+ const keyBlock = buildKeyBlock(item);
160
+ const keyResolved = resolveStyled(keyBlock, keyStyleNames);
161
+ const keyHeight = measureTextHeight(keyResolved, colWidth);
162
+ (0, utils_1.drawStyledText)(doc, keyResolved, colX, colY, colWidth);
163
+ colY += keyHeight + keyValueGap;
164
+ const valueBlock = buildValueBlock(item);
165
+ const valueResolved = resolveStyled(valueBlock, valueStyleNames);
166
+ const valueHeight = measureTextHeight(valueResolved, colWidth);
167
+ (0, utils_1.drawStyledText)(doc, valueResolved, colX, colY, colWidth);
168
+ colY += valueHeight + rowGap;
169
+ }
170
+ if (colY > maxColBottom)
171
+ maxColBottom = colY;
172
+ }
173
+ rowY = maxColBottom;
174
+ }
175
+ else {
176
+ for (let rowIndex = 0; rowIndex < maxRows; rowIndex++) {
177
+ let rowHeight = 0;
178
+ // measure this row
179
+ for (let colIndex = 0; colIndex < colCount; colIndex++) {
180
+ const col = cols[colIndex];
181
+ const item = col[rowIndex];
182
+ if (!item)
183
+ continue;
184
+ const colWidth = colWidths[colIndex];
185
+ const keyWidthPx = block.keyWidth === "*"
186
+ ? Math.max(colWidth * baseKeyWidthRatio, 20)
187
+ : (_z = block.keyWidth) !== null && _z !== void 0 ? _z : 80;
188
+ const keyStyleNames = (_1 = (_0 = item.keyStyle) !== null && _0 !== void 0 ? _0 : block.keyStyle) !== null && _1 !== void 0 ? _1 : undefined;
189
+ const valueStyleNames = (_3 = (_2 = item.valueStyle) !== null && _2 !== void 0 ? _2 : block.valueStyle) !== null && _3 !== void 0 ? _3 : undefined;
190
+ const keyBase = buildKeyBlock(item);
191
+ const keyResolved = resolveStyled(keyBase, keyStyleNames);
192
+ const keyHeight = measureTextHeight(keyResolved, keyWidthPx);
193
+ const valueBase = buildValueBlock(item);
194
+ const valueResolved = resolveStyled(valueBase, valueStyleNames);
195
+ const valueXInsideCol = keyWidthPx + (separatorText ? sepBoxWidth + 4 : 4);
196
+ const valueWidth = Math.max(colWidth - valueXInsideCol, 1);
197
+ const valueHeight = measureTextHeight(valueResolved, valueWidth);
198
+ const cellHeight = Math.max(keyHeight, valueHeight);
199
+ if (cellHeight > rowHeight)
200
+ rowHeight = cellHeight;
201
+ }
202
+ if (rowHeight === 0)
203
+ continue;
204
+ // draw this row
205
+ for (let colIndex = 0; colIndex < colCount; colIndex++) {
206
+ const col = cols[colIndex];
207
+ const item = col[rowIndex];
208
+ if (!item)
209
+ continue;
210
+ const colX = xBases[colIndex];
211
+ const colWidth = colWidths[colIndex];
212
+ const keyWidthPx = block.keyWidth === "*"
213
+ ? Math.max(colWidth * baseKeyWidthRatio, 20)
214
+ : (_4 = block.keyWidth) !== null && _4 !== void 0 ? _4 : 80;
215
+ const keyStyleNames = (_6 = (_5 = item.keyStyle) !== null && _5 !== void 0 ? _5 : block.keyStyle) !== null && _6 !== void 0 ? _6 : undefined;
216
+ const valueStyleNames = (_8 = (_7 = item.valueStyle) !== null && _7 !== void 0 ? _7 : block.valueStyle) !== null && _8 !== void 0 ? _8 : undefined;
217
+ const keyBlock = buildKeyBlock(item);
218
+ const keyResolved = resolveStyled(keyBlock, keyStyleNames);
219
+ (0, utils_1.drawStyledText)(doc, keyResolved, colX, rowY, keyWidthPx);
220
+ if (separatorText) {
221
+ const sepBlock = {
222
+ type: "text",
223
+ text: separatorText,
224
+ align: "left",
225
+ };
226
+ const sepResolved = resolveStyled(sepBlock, keyStyleNames);
227
+ const sepX = colX + keyWidthPx + 2;
228
+ (0, utils_1.drawStyledText)(doc, sepResolved, sepX, rowY, sepBoxWidth);
229
+ }
230
+ const valueX = colX + keyWidthPx + (separatorText ? sepBoxWidth + 4 : 4);
231
+ const valueWidth = Math.max(colWidth - (valueX - colX), 1);
232
+ const valueBlock = buildValueBlock(item);
233
+ const valueResolved = resolveStyled(valueBlock, valueStyleNames);
234
+ (0, utils_1.drawStyledText)(doc, valueResolved, valueX, rowY, valueWidth);
235
+ }
236
+ rowY += rowHeight + rowGap;
237
+ }
238
+ }
239
+ const endY = rowY + mb;
240
+ if (y === null)
241
+ ctx.currentY = endY;
242
+ return endY;
243
+ };
244
+ exports.processKeyValueGridBlock = processKeyValueGridBlock;
245
+ //# sourceMappingURL=key-value-grid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-value-grid.js","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/key-value-grid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { LineBlock, PageContext, RenderEnv } from "../../types";
2
+ export declare const processLineBlock: (doc: PDFKit.PDFDocument, ctx: PageContext, block: LineBlock, y: number | null, env: RenderEnv, ensureSpaceFor: (heightNeeded: number, env: RenderEnv) => void) => number;
3
+ //# sourceMappingURL=line.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../../src/renderer-engine/blocks/line.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhE,eAAO,MAAM,gBAAgB,GAC3B,KAAK,MAAM,CAAC,WAAW,EACvB,KAAK,WAAW,EAChB,OAAO,SAAS,EAChB,GAAG,MAAM,GAAG,IAAI,EAChB,KAAK,SAAS,EACd,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,IAAI,KAC7D,MA+BF,CAAC"}