kordoc 4.19.0 → 4.19.2

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 (127) hide show
  1. package/README.md +3 -1
  2. package/dist/{-I3DEUQUC.js → -3JIHF2AL.js} +11 -11
  3. package/dist/{chunk-CR4RXHXO.js → chunk-4CS7XE2Q.js} +2 -2
  4. package/dist/{chunk-UCTD3BXH.js → chunk-56ZWAREM.js} +2 -2
  5. package/dist/{chunk-YV4PWWRW.cjs → chunk-5PGOZBEQ.cjs} +22 -22
  6. package/dist/{chunk-YV4PWWRW.cjs.map → chunk-5PGOZBEQ.cjs.map} +1 -1
  7. package/dist/{chunk-OMJWAJBD.js → chunk-6ZBORHFB.js} +2 -2
  8. package/dist/{chunk-DH75ZUYF.js → chunk-AKSCTGKG.js} +10 -4
  9. package/dist/chunk-AKSCTGKG.js.map +1 -0
  10. package/dist/{chunk-L5KNWOGR.js → chunk-AOVMOCTK.js} +10 -4
  11. package/dist/chunk-AOVMOCTK.js.map +1 -0
  12. package/dist/{chunk-XXUXQHUC.js → chunk-B4R443MV.js} +2 -2
  13. package/dist/{chunk-RYKNAYKC.js → chunk-EUCBMW6C.js} +3 -3
  14. package/dist/{chunk-XIWGPC3V.js → chunk-GNUGD4RO.js} +2 -2
  15. package/dist/{chunk-AMDDV4CI.js → chunk-I2TBI7PN.js} +2 -2
  16. package/dist/{chunk-5B55S4JU.js → chunk-J75TVRJB.js} +2 -2
  17. package/dist/{chunk-VZSOPECZ.js → chunk-JK7N4R4K.js} +2 -2
  18. package/dist/{chunk-DEYCTP2S.js → chunk-JXJDXDOU.js} +3 -3
  19. package/dist/{chunk-34RIECIF.cjs → chunk-MZ6XNFZL.cjs} +2 -2
  20. package/dist/{chunk-34RIECIF.cjs.map → chunk-MZ6XNFZL.cjs.map} +1 -1
  21. package/dist/{chunk-C4JHZNRL.js → chunk-NV46IWKF.js} +27 -21
  22. package/dist/chunk-NV46IWKF.js.map +1 -0
  23. package/dist/{chunk-UTVNSCEI.js → chunk-OKHKEYTL.js} +2 -2
  24. package/dist/{chunk-LNU54ZKV.cjs → chunk-ORGWGR4K.cjs} +15 -9
  25. package/dist/chunk-ORGWGR4K.cjs.map +1 -0
  26. package/dist/{chunk-AAE765MK.js → chunk-PWQ2BVAT.js} +3 -3
  27. package/dist/{chunk-FJE3TMZ7.js → chunk-QYJPU4FZ.js} +30 -2
  28. package/dist/chunk-QYJPU4FZ.js.map +1 -0
  29. package/dist/{chunk-DGXGVC4Z.js → chunk-QZ63HXEG.js} +51 -20
  30. package/dist/chunk-QZ63HXEG.js.map +1 -0
  31. package/dist/{chunk-GCYLNOTJ.js → chunk-R2JM2HOJ.js} +4 -4
  32. package/dist/{chunk-LLVF6X5W.cjs → chunk-RVBQT2PD.cjs} +3 -3
  33. package/dist/{chunk-LLVF6X5W.cjs.map → chunk-RVBQT2PD.cjs.map} +1 -1
  34. package/dist/{chunk-7TVRQJXI.cjs → chunk-T2DZTOGG.cjs} +12 -12
  35. package/dist/{chunk-7TVRQJXI.cjs.map → chunk-T2DZTOGG.cjs.map} +1 -1
  36. package/dist/{chunk-GYQVQF2J.js → chunk-TM4T4NYJ.js} +2 -2
  37. package/dist/{chunk-W5XX2GKO.js → chunk-U6AJU2VD.js} +2 -2
  38. package/dist/{chunk-QHN7N2QA.js → chunk-VO22VAR3.js} +2 -2
  39. package/dist/{chunk-5ZSQ2ZIH.cjs → chunk-WQAGDJIP.cjs} +3 -3
  40. package/dist/{chunk-5ZSQ2ZIH.cjs.map → chunk-WQAGDJIP.cjs.map} +1 -1
  41. package/dist/{chunk-HFMIAMEO.js → chunk-XPM7WC54.js} +4 -4
  42. package/dist/chunks-2EC2R7PY.js +10 -0
  43. package/dist/cli.js +26 -26
  44. package/dist/{formula-L2BKGA4J.cjs → formula-RNATQ3FQ.cjs} +9 -9
  45. package/dist/{formula-L2BKGA4J.cjs.map → formula-RNATQ3FQ.cjs.map} +1 -1
  46. package/dist/{formula-DUEAYGIG.js → formula-RSTTP626.js} +4 -4
  47. package/dist/{formula-I4MAHCTZ.js → formula-STIFIS57.js} +3 -3
  48. package/dist/{image-ocr-ZWRJZKYR.cjs → image-ocr-7L5TBBPA.cjs} +15 -15
  49. package/dist/{image-ocr-ZWRJZKYR.cjs.map → image-ocr-7L5TBBPA.cjs.map} +1 -1
  50. package/dist/{image-ocr-B32G24XW.js → image-ocr-R6ZDFBAN.js} +6 -6
  51. package/dist/{image-ocr-NUL3JKXM.js → image-ocr-XKSAEEXP.js} +9 -9
  52. package/dist/index.cjs +824 -761
  53. package/dist/index.cjs.map +1 -1
  54. package/dist/index.js +94 -31
  55. package/dist/index.js.map +1 -1
  56. package/dist/mcp.js +22 -22
  57. package/dist/{model-bundle-OBIKG4K5.js → model-bundle-NGTKULP7.js} +5 -5
  58. package/dist/{models-2OZHOPPM.js → models-QOSU5SYL.js} +5 -5
  59. package/dist/{parser-FDE6GQST.js → parser-3G4G6SST.js} +176 -12
  60. package/dist/parser-3G4G6SST.js.map +1 -0
  61. package/dist/{parser-YW3NMSJE.js → parser-5GUEP6EK.js} +173 -9
  62. package/dist/parser-5GUEP6EK.js.map +1 -0
  63. package/dist/{parser-DMWCXX7A.cjs → parser-AIQBU7FS.cjs} +392 -228
  64. package/dist/parser-AIQBU7FS.cjs.map +1 -0
  65. package/dist/pdf-ocr-7OAFUDM4.cjs +17 -0
  66. package/dist/{pdf-ocr-K2OK7FNQ.cjs.map → pdf-ocr-7OAFUDM4.cjs.map} +1 -1
  67. package/dist/pdf-ocr-DAXS5RX4.js +16 -0
  68. package/dist/pdf-ocr-R3VGX6F2.js +20 -0
  69. package/dist/{profile-io-6WCU4KHY.js → profile-io-ZVNMDLLS.js} +3 -3
  70. package/dist/{rasterize-X3I7SWXF.js → rasterize-Y2RLMVCL.js} +3 -3
  71. package/dist/{redact-doc-6H7WPUQD.js → redact-doc-PNRDDBI3.js} +11 -11
  72. package/dist/{render-PBQJGZT3.js → render-S3ALARVO.js} +7 -7
  73. package/dist/seal-EJWPS5VK.js +10 -0
  74. package/dist/{setup-UORJSR3M.js → setup-JH66VSFZ.js} +3 -3
  75. package/dist/visual-GDXMKDVY.js +20 -0
  76. package/dist/{watch-S2ZMDDZU.js → watch-KMB2FTOD.js} +12 -12
  77. package/package.json +1 -1
  78. package/dist/chunk-C4JHZNRL.js.map +0 -1
  79. package/dist/chunk-DGXGVC4Z.js.map +0 -1
  80. package/dist/chunk-DH75ZUYF.js.map +0 -1
  81. package/dist/chunk-FJE3TMZ7.js.map +0 -1
  82. package/dist/chunk-L5KNWOGR.js.map +0 -1
  83. package/dist/chunk-LNU54ZKV.cjs.map +0 -1
  84. package/dist/chunks-JPNLQOVD.js +0 -10
  85. package/dist/parser-DMWCXX7A.cjs.map +0 -1
  86. package/dist/parser-FDE6GQST.js.map +0 -1
  87. package/dist/parser-YW3NMSJE.js.map +0 -1
  88. package/dist/pdf-ocr-7MR56U4P.js +0 -16
  89. package/dist/pdf-ocr-K2OK7FNQ.cjs +0 -17
  90. package/dist/pdf-ocr-YHC4X67W.js +0 -20
  91. package/dist/seal-E2E7CFZJ.js +0 -10
  92. package/dist/visual-4GDT5BRH.js +0 -20
  93. /package/dist/{-I3DEUQUC.js.map → -3JIHF2AL.js.map} +0 -0
  94. /package/dist/{chunk-CR4RXHXO.js.map → chunk-4CS7XE2Q.js.map} +0 -0
  95. /package/dist/{chunk-UCTD3BXH.js.map → chunk-56ZWAREM.js.map} +0 -0
  96. /package/dist/{chunk-OMJWAJBD.js.map → chunk-6ZBORHFB.js.map} +0 -0
  97. /package/dist/{chunk-XXUXQHUC.js.map → chunk-B4R443MV.js.map} +0 -0
  98. /package/dist/{chunk-RYKNAYKC.js.map → chunk-EUCBMW6C.js.map} +0 -0
  99. /package/dist/{chunk-XIWGPC3V.js.map → chunk-GNUGD4RO.js.map} +0 -0
  100. /package/dist/{chunk-AMDDV4CI.js.map → chunk-I2TBI7PN.js.map} +0 -0
  101. /package/dist/{chunk-5B55S4JU.js.map → chunk-J75TVRJB.js.map} +0 -0
  102. /package/dist/{chunk-VZSOPECZ.js.map → chunk-JK7N4R4K.js.map} +0 -0
  103. /package/dist/{chunk-DEYCTP2S.js.map → chunk-JXJDXDOU.js.map} +0 -0
  104. /package/dist/{chunk-UTVNSCEI.js.map → chunk-OKHKEYTL.js.map} +0 -0
  105. /package/dist/{chunk-AAE765MK.js.map → chunk-PWQ2BVAT.js.map} +0 -0
  106. /package/dist/{chunk-GCYLNOTJ.js.map → chunk-R2JM2HOJ.js.map} +0 -0
  107. /package/dist/{chunk-GYQVQF2J.js.map → chunk-TM4T4NYJ.js.map} +0 -0
  108. /package/dist/{chunk-W5XX2GKO.js.map → chunk-U6AJU2VD.js.map} +0 -0
  109. /package/dist/{chunk-QHN7N2QA.js.map → chunk-VO22VAR3.js.map} +0 -0
  110. /package/dist/{chunk-HFMIAMEO.js.map → chunk-XPM7WC54.js.map} +0 -0
  111. /package/dist/{chunks-JPNLQOVD.js.map → chunks-2EC2R7PY.js.map} +0 -0
  112. /package/dist/{formula-DUEAYGIG.js.map → formula-RSTTP626.js.map} +0 -0
  113. /package/dist/{formula-I4MAHCTZ.js.map → formula-STIFIS57.js.map} +0 -0
  114. /package/dist/{image-ocr-B32G24XW.js.map → image-ocr-R6ZDFBAN.js.map} +0 -0
  115. /package/dist/{image-ocr-NUL3JKXM.js.map → image-ocr-XKSAEEXP.js.map} +0 -0
  116. /package/dist/{model-bundle-OBIKG4K5.js.map → model-bundle-NGTKULP7.js.map} +0 -0
  117. /package/dist/{models-2OZHOPPM.js.map → models-QOSU5SYL.js.map} +0 -0
  118. /package/dist/{pdf-ocr-7MR56U4P.js.map → pdf-ocr-DAXS5RX4.js.map} +0 -0
  119. /package/dist/{pdf-ocr-YHC4X67W.js.map → pdf-ocr-R3VGX6F2.js.map} +0 -0
  120. /package/dist/{profile-io-6WCU4KHY.js.map → profile-io-ZVNMDLLS.js.map} +0 -0
  121. /package/dist/{rasterize-X3I7SWXF.js.map → rasterize-Y2RLMVCL.js.map} +0 -0
  122. /package/dist/{redact-doc-6H7WPUQD.js.map → redact-doc-PNRDDBI3.js.map} +0 -0
  123. /package/dist/{render-PBQJGZT3.js.map → render-S3ALARVO.js.map} +0 -0
  124. /package/dist/{seal-E2E7CFZJ.js.map → seal-EJWPS5VK.js.map} +0 -0
  125. /package/dist/{setup-UORJSR3M.js.map → setup-JH66VSFZ.js.map} +0 -0
  126. /package/dist/{visual-4GDT5BRH.js.map → visual-GDXMKDVY.js.map} +0 -0
  127. /package/dist/{watch-S2ZMDDZU.js.map → watch-KMB2FTOD.js.map} +0 -0
@@ -9,7 +9,7 @@ import {
9
9
  HEADING_RATIO_H3,
10
10
  tidyScriptTags,
11
11
  unframeLayoutTables
12
- } from "./chunk-L5KNWOGR.js";
12
+ } from "./chunk-AOVMOCTK.js";
13
13
  import {
14
14
  parsePageRange
15
15
  } from "./chunk-VQFA55IC.js";
@@ -22,7 +22,7 @@ import {
22
22
  findChildByLocalName,
23
23
  hwpFaceToCssStack,
24
24
  parseRenderStyles
25
- } from "./chunk-FJE3TMZ7.js";
25
+ } from "./chunk-QYJPU4FZ.js";
26
26
  import {
27
27
  MAX_COLS,
28
28
  MAX_ROWS,
@@ -33,18 +33,18 @@ import {
33
33
  flattenLayoutTables,
34
34
  mapPuaText,
35
35
  markNonLayoutTable
36
- } from "./chunk-XXUXQHUC.js";
36
+ } from "./chunk-B4R443MV.js";
37
37
  import {
38
38
  loadSharp,
39
39
  rasterizePageSvg
40
- } from "./chunk-OMJWAJBD.js";
40
+ } from "./chunk-6ZBORHFB.js";
41
41
  import {
42
42
  KordocError,
43
43
  escapeHtml,
44
44
  precheckZipSize,
45
45
  sanitizeHref,
46
46
  toArrayBuffer
47
- } from "./chunk-UTVNSCEI.js";
47
+ } from "./chunk-OKHKEYTL.js";
48
48
 
49
49
  // src/render/svg-render.ts
50
50
  import JSZip from "jszip";
@@ -3386,6 +3386,14 @@ function appendParaText(state, data, resolveControl) {
3386
3386
  if (want) result += `<${want}>`;
3387
3387
  state.script = want;
3388
3388
  };
3389
+ if (state.loneHighAt !== void 0) {
3390
+ const lo = data.length >= 2 ? data.readUInt16LE(0) : 0;
3391
+ if (lo >= 56320 && lo <= 57343 && state.loneHighAt === state.text.length - 1) {
3392
+ state.text = state.text.slice(0, -1) + String.fromCharCode(state.loneHigh, lo);
3393
+ i = 2;
3394
+ }
3395
+ state.loneHighAt = void 0;
3396
+ }
3389
3397
  const base = state.text.length;
3390
3398
  const resolveAt = (byteOffset, extended) => {
3391
3399
  const ctrlId = data.readUInt32LE(byteOffset);
@@ -3465,6 +3473,14 @@ function appendParaText(state, data, resolveControl) {
3465
3473
  break;
3466
3474
  }
3467
3475
  }
3476
+ if (ch >= 55296 && ch <= 57343) {
3477
+ result += "\u25A1";
3478
+ if (ch <= 56319 && i >= data.length) {
3479
+ state.loneHigh = ch;
3480
+ state.loneHighAt = base + result.length - 1;
3481
+ }
3482
+ break;
3483
+ }
3468
3484
  result += !state.dollarMark ? String.fromCharCode(ch) : ch === 36 ? LITERAL_DOLLAR_MARK : ch === 60 ? LITERAL_LT_MARK : String.fromCharCode(ch);
3469
3485
  }
3470
3486
  break;
@@ -3636,7 +3652,7 @@ function collectHwp5BinDataLenient(lcfb, readStream = lcfb.findStream) {
3636
3652
  const match = e.name.match(binRe);
3637
3653
  if (!match) continue;
3638
3654
  const idx = parseInt(match[1], 16);
3639
- const raw = readStream(e.name);
3655
+ const raw = readStream(`/BinData/${e.name}`) ?? readStream(e.name);
3640
3656
  if (!raw) continue;
3641
3657
  binDataMap.set(idx, { data: normalizeBinPayload(raw), name: e.name });
3642
3658
  }
@@ -4465,7 +4481,7 @@ function parseLenientCfb(data) {
4465
4481
  for (let offset = 0; offset + 128 <= dirData.length && dirEntries.length < MAX_DIR_ENTRIES; offset += 128) {
4466
4482
  const nameLen = dirData.readUInt16LE(offset + 64);
4467
4483
  if (nameLen <= 0 || nameLen > 64) {
4468
- dirEntries.push({ name: "", type: 0, startSector: 0, size: 0 });
4484
+ dirEntries.push({ name: "", type: 0, startSector: 0, size: 0, left: FREE_SECT, right: FREE_SECT, child: FREE_SECT });
4469
4485
  continue;
4470
4486
  }
4471
4487
  const nameBytes = nameLen - 2;
@@ -4473,7 +4489,7 @@ function parseLenientCfb(data) {
4473
4489
  const type = dirData[offset + 66];
4474
4490
  const startSector = dirData.readUInt32LE(offset + 116);
4475
4491
  const size = dirData.readUInt32LE(offset + 120);
4476
- dirEntries.push({ name, type, startSector, size });
4492
+ dirEntries.push({ name, type, startSector, size, left: dirData.readUInt32LE(offset + 68), right: dirData.readUInt32LE(offset + 72), child: dirData.readUInt32LE(offset + 76) });
4477
4493
  }
4478
4494
  let miniStreamData = null;
4479
4495
  function getMiniStream() {
@@ -4517,20 +4533,35 @@ function parseLenientCfb(data) {
4517
4533
  }
4518
4534
  return readChain(entry.startSector, entry.size);
4519
4535
  }
4536
+ function findChild(parent, name) {
4537
+ const pending = [parent.child];
4538
+ const visited = /* @__PURE__ */ new Set();
4539
+ while (pending.length) {
4540
+ const id = pending.pop();
4541
+ if (id === END_OF_CHAIN || id === FREE_SECT || id >= dirEntries.length || visited.has(id)) continue;
4542
+ visited.add(id);
4543
+ const e = dirEntries[id];
4544
+ if (e.name === name) return e;
4545
+ pending.push(e.left, e.right);
4546
+ }
4547
+ return null;
4548
+ }
4520
4549
  function findEntryByPath(path) {
4521
- const parts = path.replace(/^\//, "").split("/");
4522
- if (parts.length === 1) {
4523
- return dirEntries.find((e) => e.name === parts[0] && e.type === 2) ?? null;
4524
- }
4525
- const storageName = parts[0];
4526
- const streamName = parts.slice(1).join("/");
4527
- for (const e of dirEntries) {
4528
- if (e.type === 2 && e.name === streamName) {
4529
- return e;
4550
+ const parts = path.replace(/^\//, "").split("/").filter(Boolean);
4551
+ const last = parts.pop();
4552
+ if (last === void 0) return null;
4553
+ const root = dirEntries.find((e) => e.type === 5);
4554
+ if (root) {
4555
+ let current = root;
4556
+ for (const part of parts) {
4557
+ const next = current ? findChild(current, part) : null;
4558
+ current = next && next.type === 1 ? next : null;
4530
4559
  }
4560
+ const hit = current ? findChild(current, last) : null;
4561
+ if (hit && (hit.type === 1 || hit.type === 2 || hit.type === 5)) return hit;
4531
4562
  }
4532
- const lastPart = parts[parts.length - 1];
4533
- return dirEntries.find((e) => e.type === 2 && e.name === lastPart) ?? null;
4563
+ const named = dirEntries.filter((e) => e.name === last && (e.type === 1 || e.type === 2 || e.type === 5));
4564
+ return named.length === 1 ? named[0] : null;
4534
4565
  }
4535
4566
  return {
4536
4567
  findStream(path) {
@@ -7770,4 +7801,4 @@ export {
7770
7801
  cropRect,
7771
7802
  extractRenderedRegions
7772
7803
  };
7773
- //# sourceMappingURL=chunk-DGXGVC4Z.js.map
7804
+ //# sourceMappingURL=chunk-QZ63HXEG.js.map