kordoc 4.18.8 → 4.18.10

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 (120) hide show
  1. package/README.md +74 -561
  2. package/dist/{-TBEYOUTF.js → -VE5T6RQW.js} +11 -11
  3. package/dist/{chunk-RO3ALEGE.js → chunk-35ZMC4PU.js} +2 -2
  4. package/dist/{chunk-WCSLRLH6.js → chunk-4IKC7MON.js} +2 -2
  5. package/dist/{chunk-JAFG3W6G.js → chunk-7PSD7KCU.js} +4 -4
  6. package/dist/{chunk-OLW6GRNW.js → chunk-CRARTST7.js} +2 -2
  7. package/dist/{chunk-UDYQ7BIC.js → chunk-DQN33VHN.js} +32 -7
  8. package/dist/chunk-DQN33VHN.js.map +1 -0
  9. package/dist/{chunk-2UDRHJEC.js → chunk-E7LZVD5P.js} +2 -2
  10. package/dist/{chunk-SO5S46KH.js → chunk-EQJ2HSZP.js} +2 -2
  11. package/dist/{chunk-7ZXT2OEV.js → chunk-G3TSHCQC.js} +2 -2
  12. package/dist/{chunk-TNCW3J6S.js → chunk-GHTUC2HG.js} +6 -6
  13. package/dist/{chunk-MMZKVUL4.js → chunk-IIV3RVJ5.js} +2 -2
  14. package/dist/{chunk-LU7AVESZ.js → chunk-KKV433FL.js} +2 -2
  15. package/dist/{chunk-LU7AVESZ.js.map → chunk-KKV433FL.js.map} +1 -1
  16. package/dist/{chunk-H5PSOZD2.js → chunk-KPCMLJ2Q.js} +2 -2
  17. package/dist/{chunk-7OFYBGLQ.js → chunk-KRAV7GKW.js} +10 -10
  18. package/dist/{chunk-DKVYQ2UN.js → chunk-KTN2KZLU.js} +2 -2
  19. package/dist/{chunk-WQH4D2KL.cjs → chunk-KZWNZYBP.cjs} +51 -26
  20. package/dist/chunk-KZWNZYBP.cjs.map +1 -0
  21. package/dist/{chunk-3EUEOJJF.js → chunk-LEW4QI7B.js} +2 -2
  22. package/dist/{chunk-LXYCBD2K.cjs → chunk-PDLCHGUP.cjs} +3 -3
  23. package/dist/{chunk-LXYCBD2K.cjs.map → chunk-PDLCHGUP.cjs.map} +1 -1
  24. package/dist/{chunk-4Y3EZHTK.js → chunk-Q75JAM4G.js} +3 -3
  25. package/dist/{chunk-MXBO6HN2.cjs → chunk-QZ7SC7D2.cjs} +12 -12
  26. package/dist/{chunk-MXBO6HN2.cjs.map → chunk-QZ7SC7D2.cjs.map} +1 -1
  27. package/dist/{chunk-MECBEB7S.js → chunk-R3PY5Z67.js} +3 -3
  28. package/dist/{chunk-ISL2ZW7T.js → chunk-SM5PYAPC.js} +2 -2
  29. package/dist/{chunk-NB7INS65.js → chunk-SWNJAS7J.js} +31 -6
  30. package/dist/chunk-SWNJAS7J.js.map +1 -0
  31. package/dist/{chunk-OBRXCRG3.cjs → chunk-TRGD56ZV.cjs} +3 -3
  32. package/dist/{chunk-OBRXCRG3.cjs.map → chunk-TRGD56ZV.cjs.map} +1 -1
  33. package/dist/{chunk-PDL6U6AF.js → chunk-VR4ZBQSV.js} +2 -2
  34. package/dist/{chunk-FC26M34O.cjs → chunk-WEZHFPYM.cjs} +6 -6
  35. package/dist/{chunk-FC26M34O.cjs.map → chunk-WEZHFPYM.cjs.map} +1 -1
  36. package/dist/{chunk-SE3MI5UX.cjs → chunk-ZG6RZC33.cjs} +2 -2
  37. package/dist/{chunk-SE3MI5UX.cjs.map → chunk-ZG6RZC33.cjs.map} +1 -1
  38. package/dist/{chunk-H55E7T7E.js → chunk-ZPSTTVH4.js} +2 -2
  39. package/dist/{chunk-H55E7T7E.js.map → chunk-ZPSTTVH4.js.map} +1 -1
  40. package/dist/{chunk-ILFTSNAB.js → chunk-ZWWGUH44.js} +2 -2
  41. package/dist/chunks-PAMV6OSJ.js +10 -0
  42. package/dist/cli.js +26 -26
  43. package/dist/{formula-PUBZDZF2.cjs → formula-37RT4OU6.cjs} +9 -9
  44. package/dist/{formula-PUBZDZF2.cjs.map → formula-37RT4OU6.cjs.map} +1 -1
  45. package/dist/{formula-6UIPV4SA.js → formula-HFT7E7V3.js} +4 -4
  46. package/dist/{formula-IASEKD4T.js → formula-HIO2SUEF.js} +3 -3
  47. package/dist/{image-ocr-Y4XQGPDY.js → image-ocr-47OARLS4.js} +9 -9
  48. package/dist/{image-ocr-67A4FOF7.js → image-ocr-UUZW3JMN.js} +6 -6
  49. package/dist/{image-ocr-AG47WH2J.cjs → image-ocr-VBKMLKR2.cjs} +15 -15
  50. package/dist/{image-ocr-AG47WH2J.cjs.map → image-ocr-VBKMLKR2.cjs.map} +1 -1
  51. package/dist/index.cjs +277 -277
  52. package/dist/index.js +5 -5
  53. package/dist/mcp.js +22 -22
  54. package/dist/{model-bundle-NOZJVM3U.js → model-bundle-D4T3GPOO.js} +5 -5
  55. package/dist/{models-LPI23KGR.js → models-JFCTDIWD.js} +5 -5
  56. package/dist/{parser-H5H2U46P.js → parser-2ZTSTI4L.js} +10 -9
  57. package/dist/{parser-CX6X3TA3.js.map → parser-2ZTSTI4L.js.map} +1 -1
  58. package/dist/{parser-25AKNBZJ.cjs → parser-4WT66JD4.cjs} +127 -126
  59. package/dist/parser-4WT66JD4.cjs.map +1 -0
  60. package/dist/{parser-CX6X3TA3.js → parser-DCHWNMCB.js} +13 -12
  61. package/dist/{parser-H5H2U46P.js.map → parser-DCHWNMCB.js.map} +1 -1
  62. package/dist/pdf-ocr-AYBFWY2Q.js +16 -0
  63. package/dist/pdf-ocr-BZNEXS63.cjs +17 -0
  64. package/dist/{pdf-ocr-FVNHY2WG.cjs.map → pdf-ocr-BZNEXS63.cjs.map} +1 -1
  65. package/dist/pdf-ocr-L5AF5EJW.js +20 -0
  66. package/dist/{profile-io-T2AT74YH.js → profile-io-ZZQVBLVD.js} +3 -3
  67. package/dist/{rasterize-XOVABIYS.js → rasterize-HNMJIZ5R.js} +3 -3
  68. package/dist/{redact-doc-7AGO4IUN.js → redact-doc-NXAAIFDC.js} +11 -11
  69. package/dist/{render-7FBTU4AW.js → render-FWNABFLD.js} +7 -7
  70. package/dist/seal-V2IQRAHQ.js +10 -0
  71. package/dist/{setup-XNXUNIK4.js → setup-MVDYTOEG.js} +3 -3
  72. package/dist/visual-Q43BCCIQ.js +20 -0
  73. package/dist/{watch-A5SDGA7T.js → watch-RSHU77SE.js} +12 -12
  74. package/package.json +1 -1
  75. package/dist/chunk-NB7INS65.js.map +0 -1
  76. package/dist/chunk-UDYQ7BIC.js.map +0 -1
  77. package/dist/chunk-WQH4D2KL.cjs.map +0 -1
  78. package/dist/chunks-5L22YEVJ.js +0 -10
  79. package/dist/parser-25AKNBZJ.cjs.map +0 -1
  80. package/dist/pdf-ocr-6SMZ52YW.js +0 -16
  81. package/dist/pdf-ocr-FVNHY2WG.cjs +0 -17
  82. package/dist/pdf-ocr-TLXMNTAH.js +0 -20
  83. package/dist/seal-XLR6S42Z.js +0 -10
  84. package/dist/visual-QUXWVHOC.js +0 -20
  85. /package/dist/{-TBEYOUTF.js.map → -VE5T6RQW.js.map} +0 -0
  86. /package/dist/{chunk-RO3ALEGE.js.map → chunk-35ZMC4PU.js.map} +0 -0
  87. /package/dist/{chunk-WCSLRLH6.js.map → chunk-4IKC7MON.js.map} +0 -0
  88. /package/dist/{chunk-JAFG3W6G.js.map → chunk-7PSD7KCU.js.map} +0 -0
  89. /package/dist/{chunk-OLW6GRNW.js.map → chunk-CRARTST7.js.map} +0 -0
  90. /package/dist/{chunk-2UDRHJEC.js.map → chunk-E7LZVD5P.js.map} +0 -0
  91. /package/dist/{chunk-SO5S46KH.js.map → chunk-EQJ2HSZP.js.map} +0 -0
  92. /package/dist/{chunk-7ZXT2OEV.js.map → chunk-G3TSHCQC.js.map} +0 -0
  93. /package/dist/{chunk-TNCW3J6S.js.map → chunk-GHTUC2HG.js.map} +0 -0
  94. /package/dist/{chunk-MMZKVUL4.js.map → chunk-IIV3RVJ5.js.map} +0 -0
  95. /package/dist/{chunk-H5PSOZD2.js.map → chunk-KPCMLJ2Q.js.map} +0 -0
  96. /package/dist/{chunk-7OFYBGLQ.js.map → chunk-KRAV7GKW.js.map} +0 -0
  97. /package/dist/{chunk-DKVYQ2UN.js.map → chunk-KTN2KZLU.js.map} +0 -0
  98. /package/dist/{chunk-3EUEOJJF.js.map → chunk-LEW4QI7B.js.map} +0 -0
  99. /package/dist/{chunk-4Y3EZHTK.js.map → chunk-Q75JAM4G.js.map} +0 -0
  100. /package/dist/{chunk-MECBEB7S.js.map → chunk-R3PY5Z67.js.map} +0 -0
  101. /package/dist/{chunk-ISL2ZW7T.js.map → chunk-SM5PYAPC.js.map} +0 -0
  102. /package/dist/{chunk-PDL6U6AF.js.map → chunk-VR4ZBQSV.js.map} +0 -0
  103. /package/dist/{chunk-ILFTSNAB.js.map → chunk-ZWWGUH44.js.map} +0 -0
  104. /package/dist/{chunks-5L22YEVJ.js.map → chunks-PAMV6OSJ.js.map} +0 -0
  105. /package/dist/{formula-6UIPV4SA.js.map → formula-HFT7E7V3.js.map} +0 -0
  106. /package/dist/{formula-IASEKD4T.js.map → formula-HIO2SUEF.js.map} +0 -0
  107. /package/dist/{image-ocr-Y4XQGPDY.js.map → image-ocr-47OARLS4.js.map} +0 -0
  108. /package/dist/{image-ocr-67A4FOF7.js.map → image-ocr-UUZW3JMN.js.map} +0 -0
  109. /package/dist/{model-bundle-NOZJVM3U.js.map → model-bundle-D4T3GPOO.js.map} +0 -0
  110. /package/dist/{models-LPI23KGR.js.map → models-JFCTDIWD.js.map} +0 -0
  111. /package/dist/{pdf-ocr-6SMZ52YW.js.map → pdf-ocr-AYBFWY2Q.js.map} +0 -0
  112. /package/dist/{pdf-ocr-TLXMNTAH.js.map → pdf-ocr-L5AF5EJW.js.map} +0 -0
  113. /package/dist/{profile-io-T2AT74YH.js.map → profile-io-ZZQVBLVD.js.map} +0 -0
  114. /package/dist/{rasterize-XOVABIYS.js.map → rasterize-HNMJIZ5R.js.map} +0 -0
  115. /package/dist/{redact-doc-7AGO4IUN.js.map → redact-doc-NXAAIFDC.js.map} +0 -0
  116. /package/dist/{render-7FBTU4AW.js.map → render-FWNABFLD.js.map} +0 -0
  117. /package/dist/{seal-XLR6S42Z.js.map → seal-V2IQRAHQ.js.map} +0 -0
  118. /package/dist/{setup-XNXUNIK4.js.map → setup-MVDYTOEG.js.map} +0 -0
  119. /package/dist/{visual-QUXWVHOC.js.map → visual-Q43BCCIQ.js.map} +0 -0
  120. /package/dist/{watch-A5SDGA7T.js.map → watch-RSHU77SE.js.map} +0 -0
@@ -51,17 +51,17 @@ import {
51
51
  unknownFontWarnings,
52
52
  usesGaejosikMunche,
53
53
  validateHwpx
54
- } from "./chunk-7OFYBGLQ.js";
54
+ } from "./chunk-KRAV7GKW.js";
55
55
  import {
56
56
  blocksToPages
57
- } from "./chunk-3EUEOJJF.js";
57
+ } from "./chunk-LEW4QI7B.js";
58
58
  import {
59
59
  applySplices,
60
60
  buildParagraphSplices,
61
61
  buildRangeSplices,
62
62
  placeSealHwpx,
63
63
  scanSectionXml
64
- } from "./chunk-4Y3EZHTK.js";
64
+ } from "./chunk-Q75JAM4G.js";
65
65
  import {
66
66
  DEFAULT_REDACT_RULES,
67
67
  redactMarkdown,
@@ -69,7 +69,7 @@ import {
69
69
  } from "./chunk-3WSNLH4B.js";
70
70
  import {
71
71
  blocksToChunks
72
- } from "./chunk-DKVYQ2UN.js";
72
+ } from "./chunk-KTN2KZLU.js";
73
73
  import {
74
74
  SPACE_EM_FIXED,
75
75
  SPACE_EM_FONT,
@@ -94,20 +94,20 @@ import {
94
94
  renderSceneToHtml,
95
95
  simulateWrap,
96
96
  simulateWrapKeepWord
97
- } from "./chunk-TNCW3J6S.js";
97
+ } from "./chunk-GHTUC2HG.js";
98
98
  import "./chunk-7FCNOKOR.js";
99
- import "./chunk-OLW6GRNW.js";
99
+ import "./chunk-CRARTST7.js";
100
100
  import "./chunk-VQFA55IC.js";
101
- import "./chunk-ISL2ZW7T.js";
101
+ import "./chunk-SM5PYAPC.js";
102
102
  import {
103
103
  blocksToMarkdown,
104
104
  flattenLayoutTables,
105
105
  hasStructuredCellContent
106
- } from "./chunk-H5PSOZD2.js";
107
- import "./chunk-WCSLRLH6.js";
106
+ } from "./chunk-KPCMLJ2Q.js";
107
+ import "./chunk-4IKC7MON.js";
108
108
  import {
109
109
  VERSION
110
- } from "./chunk-LU7AVESZ.js";
110
+ } from "./chunk-KKV433FL.js";
111
111
  export {
112
112
  BUILTIN_TEMPLATES,
113
113
  DEFAULT_REDACT_RULES,
@@ -198,4 +198,4 @@ export {
198
198
  usesGaejosikMunche,
199
199
  validateHwpx
200
200
  };
201
- //# sourceMappingURL=-TBEYOUTF.js.map
201
+ //# sourceMappingURL=-VE5T6RQW.js.map
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  KordocError
4
- } from "./chunk-LU7AVESZ.js";
4
+ } from "./chunk-KKV433FL.js";
5
5
 
6
6
  // src/shared/offline.ts
7
7
  import { realpathSync } from "fs";
@@ -49,4 +49,4 @@ export {
49
49
  getAccessRoot,
50
50
  assertWithinRoot
51
51
  };
52
- //# sourceMappingURL=chunk-RO3ALEGE.js.map
52
+ //# sourceMappingURL=chunk-35ZMC4PU.js.map
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  KordocError,
4
4
  OPTIONAL_DEP_INSTALL_HINT
5
- } from "./chunk-LU7AVESZ.js";
5
+ } from "./chunk-KKV433FL.js";
6
6
 
7
7
  // src/render/rasterize.ts
8
8
  var densityExponent = null;
@@ -88,4 +88,4 @@ export {
88
88
  rasterizeSvg,
89
89
  rasterizePageSvg
90
90
  };
91
- //# sourceMappingURL=chunk-WCSLRLH6.js.map
91
+ //# sourceMappingURL=chunk-4IKC7MON.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-6H25SXDI.js";
5
5
  import {
6
6
  extractPageBlocksWithLines
7
- } from "./chunk-NB7INS65.js";
7
+ } from "./chunk-SWNJAS7J.js";
8
8
  import {
9
9
  OCR_DET_MODEL,
10
10
  OCR_REC_DICT,
@@ -12,10 +12,10 @@ import {
12
12
  ensureOcrModels,
13
13
  getOcrModelsDir,
14
14
  parseCharacterDict
15
- } from "./chunk-PDL6U6AF.js";
15
+ } from "./chunk-VR4ZBQSV.js";
16
16
  import {
17
17
  OPTIONAL_DEP_INSTALL_HINT
18
- } from "./chunk-LU7AVESZ.js";
18
+ } from "./chunk-KKV433FL.js";
19
19
 
20
20
  // src/ocr/ruling-lines.ts
21
21
  var INK_LUMA_MAX = 205;
@@ -2065,4 +2065,4 @@ export {
2065
2065
  runPdfOcr,
2066
2066
  ocrItemsToBlocks
2067
2067
  };
2068
- //# sourceMappingURL=chunk-JAFG3W6G.js.map
2068
+ //# sourceMappingURL=chunk-7PSD7KCU.js.map
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  visibleText
4
- } from "./chunk-H5PSOZD2.js";
4
+ } from "./chunk-KPCMLJ2Q.js";
5
5
 
6
6
  // src/script-tags.ts
7
7
  var LITERAL_TAG = /<(?=\/?(?:u|sup|sub)>)/g;
@@ -274,4 +274,4 @@ export {
274
274
  HEADING_RATIO_H2,
275
275
  HEADING_RATIO_H3
276
276
  };
277
- //# sourceMappingURL=chunk-OLW6GRNW.js.map
277
+ //# sourceMappingURL=chunk-CRARTST7.js.map
@@ -4,15 +4,15 @@ import {
4
4
  HEADING_RATIO_H2,
5
5
  HEADING_RATIO_H3,
6
6
  tidyScriptTags
7
- } from "./chunk-7ZXT2OEV.js";
7
+ } from "./chunk-G3TSHCQC.js";
8
8
  import {
9
9
  ensureModelsIn,
10
10
  getModelsDir
11
- } from "./chunk-SO5S46KH.js";
11
+ } from "./chunk-EQJ2HSZP.js";
12
12
  import {
13
13
  safeMax,
14
14
  safeMin
15
- } from "./chunk-H55E7T7E.js";
15
+ } from "./chunk-ZPSTTVH4.js";
16
16
 
17
17
  // src/ocr/models.ts
18
18
  import { join } from "path";
@@ -2242,6 +2242,9 @@ function wrapJoiner(prevText, nextText, lex) {
2242
2242
  return " ";
2243
2243
  }
2244
2244
  var PARA_LAST_LINE = /* @__PURE__ */ new WeakMap();
2245
+ var PAGE_REF_TAIL = /(?:\t|…|·{2}|\.{3})\s*\d{1,4}(?:\s*\/\s*\d{1,4})?\s*$/;
2246
+ var PAGE_HEAD_MARK = /^(?:[\u0000-\u001f\ue000-\uf8ff\u25a0-\u25ff\u2750-\u275f<〈《〔\[]|ㅇ\s)/;
2247
+ var PAGE_BREAK_JOINS = /* @__PURE__ */ new WeakMap();
2245
2248
  function joinPageBreakWraps(blocks, lex) {
2246
2249
  const pageRight = /* @__PURE__ */ new Map();
2247
2250
  for (const b of blocks) {
@@ -2254,15 +2257,36 @@ function joinPageBreakWraps(blocks, lex) {
2254
2257
  if (a.type !== "paragraph" && a.type !== "list" || b.type !== "paragraph") continue;
2255
2258
  const last = a.bbox && PARA_LAST_LINE.get(a.bbox), fs = last ? last.fontSize : 0;
2256
2259
  if (!last || fs <= 0 || (pageRight.get(a.pageNumber) ?? Infinity) - last.right >= BODY_FULL_TOL * fs) continue;
2257
- if (last.width < BODY_MIN_WIDTH_EM * fs || Math.abs((b.style?.fontSize ?? 0) - fs) > 0.15 * fs) continue;
2258
- if (startsNewItem(a.text, b.text)) continue;
2259
- a.text += wrapJoiner(a.text, b.text, lex) + b.text;
2260
+ if (last.width < BODY_MIN_WIDTH_EM * fs || Math.round(b.style?.fontSize ?? 0) !== Math.round(fs)) continue;
2261
+ if (startsNewItem(a.text, b.text) || PAGE_REF_TAIL.test(a.text) || PAGE_HEAD_MARK.test(b.text.replace(MARKUP, ""))) continue;
2262
+ const head = a.text, joiner = wrapJoiner(a.text, b.text, lex);
2263
+ a.text += joiner + b.text;
2264
+ const later = b.bbox && PAGE_BREAK_JOINS.get(b.bbox) || [];
2265
+ PAGE_BREAK_JOINS.set(a.bbox, [{ head, gap: joiner.length, tail: b }, ...later.map((c) => ({ ...c, head: head + joiner + c.head }))]);
2260
2266
  const bl = b.bbox && PARA_LAST_LINE.get(b.bbox);
2261
2267
  if (bl) PARA_LAST_LINE.set(a.bbox, bl);
2262
2268
  else PARA_LAST_LINE.delete(a.bbox);
2263
2269
  blocks.splice(i, 1);
2264
2270
  }
2265
2271
  }
2272
+ function splitPageBreakWraps(blocks) {
2273
+ return blocks.flatMap((b) => {
2274
+ const cuts = b.bbox && PAGE_BREAK_JOINS.get(b.bbox);
2275
+ const text = b.text;
2276
+ if (!cuts || !text) return [b];
2277
+ const out = [];
2278
+ let from = 0, cur = b;
2279
+ for (const c of cuts) {
2280
+ if (c.head.length < from || !text.startsWith(c.head)) break;
2281
+ out.push({ ...cur, text: text.slice(from, c.head.length) });
2282
+ from = c.head.length + c.gap;
2283
+ cur = c.tail;
2284
+ }
2285
+ if (!out.length) return [b];
2286
+ out.push({ ...cur, text: text.slice(from) });
2287
+ return out;
2288
+ });
2289
+ }
2266
2290
  var HANGING = /[,。、:;!?)」』】〕》〉.]\s*$/;
2267
2291
  var MULTI_LEVEL_NUMBER = /^\d{1,2}(?:\.\d{1,3})+\.?\s/;
2268
2292
  var BODY_FULL_TOL = 0.25;
@@ -8295,6 +8319,7 @@ export {
8295
8319
  startsNewItem,
8296
8320
  wrapJoiner,
8297
8321
  joinPageBreakWraps,
8322
+ splitPageBreakWraps,
8298
8323
  latinSoftWrap,
8299
8324
  TOC_BLOCKS,
8300
8325
  computeMedianFontSizeFromFreq,
@@ -8332,4 +8357,4 @@ export {
8332
8357
  removeSideTabs,
8333
8358
  extractPageBlocksWithLines
8334
8359
  };
8335
- //# sourceMappingURL=chunk-UDYQ7BIC.js.map
8360
+ //# sourceMappingURL=chunk-DQN33VHN.js.map