kordoc 4.12.2 → 4.13.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 (137) hide show
  1. package/README.md +32 -1
  2. package/dist/{-EZH6NKTE.js → -UZDRUWTX.js} +43 -22
  3. package/dist/{chunk-FBLMVHDK.js → chunk-27QN27I3.js} +2 -2
  4. package/dist/{chunk-MUYU4JI5.js → chunk-2B45S7FM.js} +2 -2
  5. package/dist/{chunk-LD2K4K5V.js → chunk-2RREQZ44.js} +1662 -652
  6. package/dist/chunk-2RREQZ44.js.map +1 -0
  7. package/dist/{chunk-OEYECZGV.js → chunk-3ABHPKYA.js} +10 -6
  8. package/dist/chunk-3ABHPKYA.js.map +1 -0
  9. package/dist/{chunk-QM2RSJ2S.js → chunk-3MCFJIN2.js} +5 -5
  10. package/dist/{chunk-JCMBQC5N.js → chunk-5VHLKNCE.js} +2 -2
  11. package/dist/{chunk-FVBR7SC3.js → chunk-6JXMIX3G.js} +2 -2
  12. package/dist/chunk-6JXMIX3G.js.map +1 -0
  13. package/dist/{chunk-5RPYBC2Q.js → chunk-6NLXGGNH.js} +37 -6
  14. package/dist/chunk-6NLXGGNH.js.map +1 -0
  15. package/dist/{chunk-2B7OIEJJ.js → chunk-AGBFCFQY.js} +10 -6
  16. package/dist/chunk-AGBFCFQY.js.map +1 -0
  17. package/dist/{rasterize-NRWP2C6L.js → chunk-BQLZOQES.js} +22 -6
  18. package/dist/chunk-BQLZOQES.js.map +1 -0
  19. package/dist/{chunk-ONNAHSPV.cjs → chunk-CKMK42FV.cjs} +18 -14
  20. package/dist/chunk-CKMK42FV.cjs.map +1 -0
  21. package/dist/{chunk-T7GRHAIW.cjs → chunk-COUGOFT3.cjs} +1 -1
  22. package/dist/chunk-COUGOFT3.cjs.map +1 -0
  23. package/dist/{chunk-2LO525TL.js → chunk-F3FEIYI7.js} +2 -2
  24. package/dist/{chunk-Q6ETEJFK.js → chunk-GWFX5ZD7.js} +11 -7
  25. package/dist/chunk-GWFX5ZD7.js.map +1 -0
  26. package/dist/{chunk-2HBYWA5X.js → chunk-H5JWPWQP.js} +2 -2
  27. package/dist/{chunk-N3DLQ2YH.js → chunk-HG5LXXCC.js} +1 -1
  28. package/dist/chunk-HG5LXXCC.js.map +1 -0
  29. package/dist/{chunk-KX7IYCCZ.js → chunk-IEJR23OA.js} +3 -3
  30. package/dist/{chunk-7XUXSDH5.js → chunk-ILDTN72S.js} +10 -6
  31. package/dist/chunk-ILDTN72S.js.map +1 -0
  32. package/dist/{chunk-QBCMFNHS.js → chunk-L3CEPNQS.js} +2 -2
  33. package/dist/{chunk-XXDZ2KTW.js → chunk-LP5RTYFM.js} +2 -2
  34. package/dist/{chunk-2LKYJ4G3.cjs → chunk-MCD45IHO.cjs} +6 -6
  35. package/dist/{chunk-2LKYJ4G3.cjs.map → chunk-MCD45IHO.cjs.map} +1 -1
  36. package/dist/{chunk-V5BUPZ6I.cjs → chunk-OJV7HNGJ.cjs} +13 -9
  37. package/dist/chunk-OJV7HNGJ.cjs.map +1 -0
  38. package/dist/{chunk-DBGEUDBY.js → chunk-OSLJ3A6D.js} +2 -2
  39. package/dist/{chunk-2LPBIW2B.cjs → chunk-S2VKZKUX.cjs} +3 -3
  40. package/dist/{chunk-2LPBIW2B.cjs.map → chunk-S2VKZKUX.cjs.map} +1 -1
  41. package/dist/{chunk-IOJX4Q63.js → chunk-T7AFLXGA.js} +786 -19
  42. package/dist/chunk-T7AFLXGA.js.map +1 -0
  43. package/dist/{chunk-UL2MDA5C.js → chunk-TA2LEFOF.js} +3 -3
  44. package/dist/{chunk-62IU4NV3.cjs → chunk-TAYCQE6K.cjs} +2 -2
  45. package/dist/{chunk-62IU4NV3.cjs.map → chunk-TAYCQE6K.cjs.map} +1 -1
  46. package/dist/{chunk-ONQHGZTS.js → chunk-XVIJLHCW.js} +1 -1
  47. package/dist/chunk-XVIJLHCW.js.map +1 -0
  48. package/dist/chunks-G3GK536Y.js +10 -0
  49. package/dist/cli.js +187 -38
  50. package/dist/cli.js.map +1 -1
  51. package/dist/{formula-6RQX4NMJ.js → formula-3T7HQA4O.js} +4 -4
  52. package/dist/{formula-NW33S4TA.js → formula-FWVAOSIK.js} +3 -3
  53. package/dist/{formula-NBEO6CFC.cjs → formula-YALEMZMF.cjs} +9 -9
  54. package/dist/{formula-NBEO6CFC.cjs.map → formula-YALEMZMF.cjs.map} +1 -1
  55. package/dist/{image-ocr-SO56VETS.js → image-ocr-2M7K3CE5.js} +8 -8
  56. package/dist/{image-ocr-V4KY373B.cjs → image-ocr-4EUZIF6M.cjs} +12 -12
  57. package/dist/{image-ocr-V4KY373B.cjs.map → image-ocr-4EUZIF6M.cjs.map} +1 -1
  58. package/dist/{image-ocr-CAVU2TNZ.js → image-ocr-X3I2HUK2.js} +6 -6
  59. package/dist/index.cjs +2349 -576
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.cts +305 -12
  62. package/dist/index.d.ts +305 -12
  63. package/dist/index.js +1980 -207
  64. package/dist/index.js.map +1 -1
  65. package/dist/mcp.js +109 -35
  66. package/dist/mcp.js.map +1 -1
  67. package/dist/{model-bundle-EIJF34DR.js → model-bundle-XXYZ6ELQ.js} +5 -5
  68. package/dist/{models-6V4CPQXC.js → models-APDSXJW7.js} +5 -5
  69. package/dist/{parser-OMT25WH2.cjs → parser-4KE2FR5F.cjs} +60 -39
  70. package/dist/parser-4KE2FR5F.cjs.map +1 -0
  71. package/dist/{parser-OBHNXEQM.js → parser-T5R4YVZS.js} +32 -11
  72. package/dist/parser-T5R4YVZS.js.map +1 -0
  73. package/dist/{parser-GIREMEPD.js → parser-XKSOS6GY.js} +32 -11
  74. package/dist/parser-XKSOS6GY.js.map +1 -0
  75. package/dist/pdf-ocr-JZKCEKWX.cjs +14 -0
  76. package/dist/{pdf-ocr-TFYVK4FI.cjs.map → pdf-ocr-JZKCEKWX.cjs.map} +1 -1
  77. package/dist/pdf-ocr-X62B7YDV.js +13 -0
  78. package/dist/pdf-ocr-YDJQEGDS.js +16 -0
  79. package/dist/{profile-io-PZVMM66V.js → profile-io-Y24GOHWM.js} +3 -3
  80. package/dist/rasterize-QCOBWHAG.js +13 -0
  81. package/dist/render-DHFQQCSV.js +38 -0
  82. package/dist/seal-UTHFQPLO.js +10 -0
  83. package/dist/seal-UTHFQPLO.js.map +1 -0
  84. package/dist/{setup-V55AJP6H.js → setup-UWX3KH3G.js} +3 -3
  85. package/dist/visual-DF2KSPEC.js +19 -0
  86. package/dist/visual-DF2KSPEC.js.map +1 -0
  87. package/dist/{watch-7CQSMDDP.js → watch-4ZUTMC3Q.js} +15 -13
  88. package/dist/{watch-7CQSMDDP.js.map → watch-4ZUTMC3Q.js.map} +1 -1
  89. package/package.json +1 -1
  90. package/dist/chunk-2B7OIEJJ.js.map +0 -1
  91. package/dist/chunk-5RPYBC2Q.js.map +0 -1
  92. package/dist/chunk-7XUXSDH5.js.map +0 -1
  93. package/dist/chunk-FVBR7SC3.js.map +0 -1
  94. package/dist/chunk-IOJX4Q63.js.map +0 -1
  95. package/dist/chunk-LD2K4K5V.js.map +0 -1
  96. package/dist/chunk-N3DLQ2YH.js.map +0 -1
  97. package/dist/chunk-OEYECZGV.js.map +0 -1
  98. package/dist/chunk-ONNAHSPV.cjs.map +0 -1
  99. package/dist/chunk-ONQHGZTS.js.map +0 -1
  100. package/dist/chunk-Q6ETEJFK.js.map +0 -1
  101. package/dist/chunk-T7GRHAIW.cjs.map +0 -1
  102. package/dist/chunk-V5BUPZ6I.cjs.map +0 -1
  103. package/dist/chunks-TT7ZE5QQ.js +0 -10
  104. package/dist/parser-GIREMEPD.js.map +0 -1
  105. package/dist/parser-OBHNXEQM.js.map +0 -1
  106. package/dist/parser-OMT25WH2.cjs.map +0 -1
  107. package/dist/pdf-ocr-IRXQ5GBM.js +0 -13
  108. package/dist/pdf-ocr-SL4GCOGS.js +0 -16
  109. package/dist/pdf-ocr-TFYVK4FI.cjs +0 -14
  110. package/dist/rasterize-NRWP2C6L.js.map +0 -1
  111. package/dist/render-V5ZPTZQ7.js +0 -10
  112. package/dist/seal-LVG2DGAB.js +0 -10
  113. /package/dist/{-EZH6NKTE.js.map → -UZDRUWTX.js.map} +0 -0
  114. /package/dist/{chunk-FBLMVHDK.js.map → chunk-27QN27I3.js.map} +0 -0
  115. /package/dist/{chunk-MUYU4JI5.js.map → chunk-2B45S7FM.js.map} +0 -0
  116. /package/dist/{chunk-QM2RSJ2S.js.map → chunk-3MCFJIN2.js.map} +0 -0
  117. /package/dist/{chunk-JCMBQC5N.js.map → chunk-5VHLKNCE.js.map} +0 -0
  118. /package/dist/{chunk-2LO525TL.js.map → chunk-F3FEIYI7.js.map} +0 -0
  119. /package/dist/{chunk-2HBYWA5X.js.map → chunk-H5JWPWQP.js.map} +0 -0
  120. /package/dist/{chunk-KX7IYCCZ.js.map → chunk-IEJR23OA.js.map} +0 -0
  121. /package/dist/{chunk-QBCMFNHS.js.map → chunk-L3CEPNQS.js.map} +0 -0
  122. /package/dist/{chunk-XXDZ2KTW.js.map → chunk-LP5RTYFM.js.map} +0 -0
  123. /package/dist/{chunk-DBGEUDBY.js.map → chunk-OSLJ3A6D.js.map} +0 -0
  124. /package/dist/{chunk-UL2MDA5C.js.map → chunk-TA2LEFOF.js.map} +0 -0
  125. /package/dist/{chunks-TT7ZE5QQ.js.map → chunks-G3GK536Y.js.map} +0 -0
  126. /package/dist/{formula-6RQX4NMJ.js.map → formula-3T7HQA4O.js.map} +0 -0
  127. /package/dist/{formula-NW33S4TA.js.map → formula-FWVAOSIK.js.map} +0 -0
  128. /package/dist/{image-ocr-SO56VETS.js.map → image-ocr-2M7K3CE5.js.map} +0 -0
  129. /package/dist/{image-ocr-CAVU2TNZ.js.map → image-ocr-X3I2HUK2.js.map} +0 -0
  130. /package/dist/{model-bundle-EIJF34DR.js.map → model-bundle-XXYZ6ELQ.js.map} +0 -0
  131. /package/dist/{models-6V4CPQXC.js.map → models-APDSXJW7.js.map} +0 -0
  132. /package/dist/{pdf-ocr-IRXQ5GBM.js.map → pdf-ocr-X62B7YDV.js.map} +0 -0
  133. /package/dist/{pdf-ocr-SL4GCOGS.js.map → pdf-ocr-YDJQEGDS.js.map} +0 -0
  134. /package/dist/{profile-io-PZVMM66V.js.map → profile-io-Y24GOHWM.js.map} +0 -0
  135. /package/dist/{render-V5ZPTZQ7.js.map → rasterize-QCOBWHAG.js.map} +0 -0
  136. /package/dist/{seal-LVG2DGAB.js.map → render-DHFQQCSV.js.map} +0 -0
  137. /package/dist/{setup-V55AJP6H.js.map → setup-UWX3KH3G.js.map} +0 -0
@@ -3,11 +3,11 @@ import {
3
3
  HEADING_RATIO_H1,
4
4
  HEADING_RATIO_H2,
5
5
  HEADING_RATIO_H3
6
- } from "./chunk-N3DLQ2YH.js";
6
+ } from "./chunk-HG5LXXCC.js";
7
7
  import {
8
8
  safeMax,
9
9
  safeMin
10
- } from "./chunk-FBLMVHDK.js";
10
+ } from "./chunk-27QN27I3.js";
11
11
 
12
12
  // src/pdf/image-regions.ts
13
13
  import { OPS } from "pdfjs-dist/legacy/build/pdf.mjs";
@@ -963,6 +963,9 @@ function linesIntersect(a, b) {
963
963
  var CLIP_EDGE_TOL = 1.5;
964
964
  var CLIP_MIN_GROUP = 2;
965
965
  var CLIP_MAX_PAGE_FRAC = 0.75;
966
+ var TITLED_FRAME_MIN_TOP = 0.2;
967
+ var TITLED_FRAME_MIN_WIDTH = 0.6;
968
+ var HEADER_BAND = 0.08;
966
969
  var CLIP_MIN_W2 = 4;
967
970
  var CLIP_MIN_H2 = 2;
968
971
  var STROKE_NEAR = 2;
@@ -1008,7 +1011,7 @@ function edgeStroked(lines, dir, pos, a1, a2) {
1008
1011
  }
1009
1012
  return false;
1010
1013
  }
1011
- function buildClipCellGrids(rects, strokedH, strokedV, pageWidth, pageHeight) {
1014
+ function buildClipCellGrids(rects, strokedH, strokedV, pageWidth, pageHeight, textPoints = []) {
1012
1015
  const pageArea = pageWidth * pageHeight;
1013
1016
  const sameRect = (a, b) => Math.abs(a.x1 - b.x1) <= CLIP_EDGE_TOL && Math.abs(a.x2 - b.x2) <= CLIP_EDGE_TOL && Math.abs(a.y1 - b.y1) <= CLIP_EDGE_TOL && Math.abs(a.y2 - b.y2) <= CLIP_EDGE_TOL;
1014
1017
  const cells = [];
@@ -1056,7 +1059,8 @@ function buildClipCellGrids(rects, strokedH, strokedV, pageWidth, pageHeight) {
1056
1059
  const groupSize = (i) => groups.get(find(i))?.length ?? 0;
1057
1060
  const isGridMember = (i) => groupSize(i) >= CLIP_MIN_GROUP;
1058
1061
  const framed = (r) => edgeStroked(strokedH, "h", r.y1, r.x1, r.x2) && edgeStroked(strokedH, "h", r.y2, r.x1, r.x2) && edgeStroked(strokedV, "v", r.x1, r.y1, r.y2) && edgeStroked(strokedV, "v", r.x2, r.y1, r.y2);
1059
- const loneFrame = (i) => isContainer[i] && !isGridMember(i) && framed(cells[i]);
1062
+ const titledFrame = (r) => r.y1 >= pageHeight * TITLED_FRAME_MIN_TOP && r.x2 - r.x1 >= pageWidth * TITLED_FRAME_MIN_WIDTH && textPoints.some((p) => p.y < r.y1 && p.y > pageHeight * HEADER_BAND && p.x >= r.x1 - CLIP_EDGE_TOL && p.x <= r.x2 + CLIP_EDGE_TOL) && textPoints.some((p) => p.x > r.x1 && p.x < r.x2 && p.y > r.y1 && p.y < r.y2);
1063
+ const loneFrame = (i) => isContainer[i] && !isGridMember(i) && (framed(cells[i]) || titledFrame(cells[i]));
1060
1064
  const parentAttachable = (i) => parent[i] >= 0 && (isGridMember(parent[i]) || loneFrame(parent[i]));
1061
1065
  const onlyChild = (i) => parent[i] >= 0 && parent.filter((p) => p === parent[i]).length === 1;
1062
1066
  const grids = [];
@@ -3373,7 +3377,7 @@ function extractPageBlocksWithLines(items, pageNum, opList, pageWidth, pageHeigh
3373
3377
  if (items.length === 0) return [];
3374
3378
  const extracted = extractLines(opList.fnArray, opList.argsArray);
3375
3379
  let { horizontals, verticals } = extracted;
3376
- const clipResult = detectTables ? buildClipCellGrids(extracted.clipRects, horizontals, verticals, pageWidth, pageHeight) : { grids: [], containers: [] };
3380
+ const clipResult = detectTables ? buildClipCellGrids(extracted.clipRects, horizontals, verticals, pageWidth, pageHeight, items.map((it) => ({ x: it.x + it.w / 2, y: it.y + it.h / 2 }))) : { grids: [], containers: [] };
3377
3381
  const clipGrids = clipResult.grids;
3378
3382
  if (extraLines) {
3379
3383
  horizontals = horizontals.concat(extraLines.horizontals);
@@ -3942,4 +3946,4 @@ export {
3942
3946
  extractPageBlocksWithLines,
3943
3947
  mergeCrossPageTables
3944
3948
  };
3945
- //# sourceMappingURL=chunk-OEYECZGV.js.map
3949
+ //# sourceMappingURL=chunk-3ABHPKYA.js.map