kordoc 3.4.0 → 3.4.1

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 (83) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +584 -584
  3. package/dist/{-56JCPGII.js → -YOQGQ22S.js} +5 -5
  4. package/dist/{chunk-MOL7MDBG.js → chunk-3TBUDJDE.js} +1 -1
  5. package/dist/chunk-3TBUDJDE.js.map +1 -0
  6. package/dist/{chunk-GE43BE46.js → chunk-AIQ3ISQU.js} +1 -1
  7. package/dist/chunk-AIQ3ISQU.js.map +1 -0
  8. package/dist/{chunk-MEPHGCPQ.js → chunk-CFQLK3LM.js} +1 -1
  9. package/dist/chunk-CFQLK3LM.js.map +1 -0
  10. package/dist/{chunk-YFNBHLLM.js → chunk-CGHPBI3X.js} +37 -24
  11. package/dist/chunk-CGHPBI3X.js.map +1 -0
  12. package/dist/{chunk-MHYDBT2Q.js → chunk-FPFB7AFX.js} +2 -2
  13. package/dist/chunk-FPFB7AFX.js.map +1 -0
  14. package/dist/chunk-GS7T56RP.cjs.map +1 -1
  15. package/dist/{chunk-ZPLRG2SJ.js → chunk-SE3KEL4G.js} +2 -2
  16. package/dist/chunk-SE3KEL4G.js.map +1 -0
  17. package/dist/{chunk-YYKQN7SA.cjs → chunk-W7JHJQ2O.cjs} +2 -2
  18. package/dist/chunk-W7JHJQ2O.cjs.map +1 -0
  19. package/dist/{chunk-DCZVOIEO.cjs → chunk-X34YWRL5.cjs} +1 -1
  20. package/dist/chunk-X34YWRL5.cjs.map +1 -0
  21. package/dist/cli.js +8 -8
  22. package/dist/cli.js.map +1 -1
  23. package/dist/{detect-RI2MQ33K.js → detect-NTR2FUEG.js} +2 -2
  24. package/dist/{formula-JCNF43NE.js → formula-KOQV353G.js} +1 -1
  25. package/dist/formula-KOQV353G.js.map +1 -0
  26. package/dist/{formula-RXVSQPXI.js → formula-MEDGYQXS.js} +1 -1
  27. package/dist/formula-MEDGYQXS.js.map +1 -0
  28. package/dist/{formula-5NKVS2LR.cjs → formula-ZYUDQHD3.cjs} +1 -1
  29. package/dist/formula-ZYUDQHD3.cjs.map +1 -0
  30. package/dist/index.cjs +206 -193
  31. package/dist/index.cjs.map +1 -1
  32. package/dist/index.js +35 -22
  33. package/dist/index.js.map +1 -1
  34. package/dist/mcp.js +6 -6
  35. package/dist/mcp.js.map +1 -1
  36. package/dist/page-range-CIRRJPXJ.js +7 -0
  37. package/dist/page-range-OF5I4PQY.js +8 -0
  38. package/dist/page-range-TPIRSA3J.cjs +8 -0
  39. package/dist/page-range-TPIRSA3J.cjs.map +1 -0
  40. package/dist/{parser-VZL3MK5X.js → parser-5HDZZWDH.js} +5 -5
  41. package/dist/parser-5HDZZWDH.js.map +1 -0
  42. package/dist/{parser-PQDICHD5.js → parser-ET64VEEX.js} +5 -5
  43. package/dist/parser-ET64VEEX.js.map +1 -0
  44. package/dist/{parser-XDW6I25C.cjs → parser-JAZCZJI6.cjs} +18 -18
  45. package/dist/parser-JAZCZJI6.cjs.map +1 -0
  46. package/dist/{provider-G4C2V2PD.cjs → provider-5K7O3Z2O.cjs} +1 -1
  47. package/dist/provider-5K7O3Z2O.cjs.map +1 -0
  48. package/dist/{provider-AKROB7WQ.js → provider-7H4CPZYS.js} +1 -1
  49. package/dist/provider-7H4CPZYS.js.map +1 -0
  50. package/dist/{provider-4ZJKV3DC.js → provider-H4WWSPOV.js} +1 -1
  51. package/dist/provider-H4WWSPOV.js.map +1 -0
  52. package/dist/{setup-57FB3LSP.js → setup-QSJ2INNS.js} +1 -1
  53. package/dist/setup-QSJ2INNS.js.map +1 -0
  54. package/dist/{watch-KERZCCNR.js → watch-56GNC2YN.js} +5 -5
  55. package/dist/watch-56GNC2YN.js.map +1 -0
  56. package/package.json +98 -98
  57. package/dist/chunk-DCZVOIEO.cjs.map +0 -1
  58. package/dist/chunk-GE43BE46.js.map +0 -1
  59. package/dist/chunk-MEPHGCPQ.js.map +0 -1
  60. package/dist/chunk-MHYDBT2Q.js.map +0 -1
  61. package/dist/chunk-MOL7MDBG.js.map +0 -1
  62. package/dist/chunk-YFNBHLLM.js.map +0 -1
  63. package/dist/chunk-YYKQN7SA.cjs.map +0 -1
  64. package/dist/chunk-ZPLRG2SJ.js.map +0 -1
  65. package/dist/formula-5NKVS2LR.cjs.map +0 -1
  66. package/dist/formula-JCNF43NE.js.map +0 -1
  67. package/dist/formula-RXVSQPXI.js.map +0 -1
  68. package/dist/page-range-737B4EZW.js +0 -8
  69. package/dist/page-range-LNMXJU6W.js +0 -7
  70. package/dist/page-range-P7SDW6LR.cjs +0 -8
  71. package/dist/page-range-P7SDW6LR.cjs.map +0 -1
  72. package/dist/parser-PQDICHD5.js.map +0 -1
  73. package/dist/parser-VZL3MK5X.js.map +0 -1
  74. package/dist/parser-XDW6I25C.cjs.map +0 -1
  75. package/dist/provider-4ZJKV3DC.js.map +0 -1
  76. package/dist/provider-AKROB7WQ.js.map +0 -1
  77. package/dist/provider-G4C2V2PD.cjs.map +0 -1
  78. package/dist/setup-57FB3LSP.js.map +0 -1
  79. package/dist/watch-KERZCCNR.js.map +0 -1
  80. /package/dist/{-56JCPGII.js.map → -YOQGQ22S.js.map} +0 -0
  81. /package/dist/{detect-RI2MQ33K.js.map → detect-NTR2FUEG.js.map} +0 -0
  82. /package/dist/{page-range-737B4EZW.js.map → page-range-CIRRJPXJ.js.map} +0 -0
  83. /package/dist/{page-range-LNMXJU6W.js.map → page-range-OF5I4PQY.js.map} +0 -0
package/dist/index.js CHANGED
@@ -17,10 +17,10 @@ import {
17
17
  sanitizeHref,
18
18
  stripDtd,
19
19
  toArrayBuffer
20
- } from "./chunk-ZPLRG2SJ.js";
20
+ } from "./chunk-SE3KEL4G.js";
21
21
  import {
22
22
  parsePageRange
23
- } from "./chunk-GE43BE46.js";
23
+ } from "./chunk-AIQ3ISQU.js";
24
24
 
25
25
  // src/index.ts
26
26
  import { readFile } from "fs/promises";
@@ -16907,7 +16907,7 @@ async function parseXlsxDocument(buffer, options) {
16907
16907
  }
16908
16908
  let pageFilter = null;
16909
16909
  if (options?.pages) {
16910
- const { parsePageRange: parsePageRange2 } = await import("./page-range-LNMXJU6W.js");
16910
+ const { parsePageRange: parsePageRange2 } = await import("./page-range-CIRRJPXJ.js");
16911
16911
  pageFilter = parsePageRange2(options.pages, sheets.length);
16912
16912
  }
16913
16913
  const blocks = [];
@@ -17545,7 +17545,7 @@ async function parseXlsDocument(buffer, options) {
17545
17545
  const totalSheets = Math.min(globals.sheets.length, MAX_SHEETS2);
17546
17546
  let pageFilter = null;
17547
17547
  if (options?.pages) {
17548
- const { parsePageRange: parsePageRange2 } = await import("./page-range-LNMXJU6W.js");
17548
+ const { parsePageRange: parsePageRange2 } = await import("./page-range-CIRRJPXJ.js");
17549
17549
  pageFilter = parsePageRange2(options.pages, totalSheets);
17550
17550
  }
17551
17551
  const allBlocks = [];
@@ -17968,20 +17968,32 @@ function isDisplayMath(el) {
17968
17968
 
17969
17969
  // src/docx/parser.ts
17970
17970
  var MAX_DECOMPRESS_SIZE4 = 100 * 1024 * 1024;
17971
- function getChildElements(parent, localName2) {
17971
+ function matchesLocal(el, localName2) {
17972
+ return el.localName === localName2 || (el.tagName?.endsWith(`:${localName2}`) ?? false);
17973
+ }
17974
+ function effectiveChildElements(parent) {
17972
17975
  const result = [];
17973
17976
  const children = parent.childNodes;
17974
17977
  for (let i = 0; i < children.length; i++) {
17975
17978
  const node = children[i];
17976
- if (node.nodeType === 1) {
17977
- const el = node;
17978
- if (el.localName === localName2 || el.tagName?.endsWith(`:${localName2}`)) {
17979
- result.push(el);
17979
+ if (node.nodeType !== 1) continue;
17980
+ const el = node;
17981
+ if (matchesLocal(el, "sdt")) {
17982
+ for (let j = 0; j < el.childNodes.length; j++) {
17983
+ const c = el.childNodes[j];
17984
+ if (c.nodeType === 1 && matchesLocal(c, "sdtContent")) {
17985
+ result.push(...effectiveChildElements(c));
17986
+ }
17980
17987
  }
17988
+ } else {
17989
+ result.push(el);
17981
17990
  }
17982
17991
  }
17983
17992
  return result;
17984
17993
  }
17994
+ function getChildElements(parent, localName2) {
17995
+ return effectiveChildElements(parent).filter((el) => matchesLocal(el, localName2));
17996
+ }
17985
17997
  function findElements(parent, localName2) {
17986
17998
  const result = [];
17987
17999
  const walk = (node) => {
@@ -18372,11 +18384,8 @@ async function parseDocxDocument(buffer, options) {
18372
18384
  }
18373
18385
  const blocks = [];
18374
18386
  const bodyEl = body[0];
18375
- const children = bodyEl.childNodes;
18376
- for (let i = 0; i < children.length; i++) {
18377
- const node = children[i];
18378
- if (node.nodeType !== 1) continue;
18379
- const el = node;
18387
+ const topLevel = effectiveChildElements(bodyEl);
18388
+ for (const el of topLevel) {
18380
18389
  const localName2 = el.localName ?? el.tagName?.split(":").pop();
18381
18390
  if (localName2 === "p") {
18382
18391
  const block = parseParagraph2(el, styles, numbering, footnotes, rels);
@@ -18882,8 +18891,9 @@ function extractFromTable(table) {
18882
18891
  if (table.cols >= 2) {
18883
18892
  for (let r = 0; r < table.rows; r++) {
18884
18893
  for (let c = 0; c < table.cols - 1; c++) {
18885
- const labelCell = table.cells[r][c];
18886
- const valueCell = table.cells[r][c + 1];
18894
+ const labelCell = table.cells[r]?.[c];
18895
+ const valueCell = table.cells[r]?.[c + 1];
18896
+ if (!labelCell || !valueCell) continue;
18887
18897
  if (isLabelCell(labelCell.text)) {
18888
18898
  fields.push({
18889
18899
  label: labelCell.text.trim().replace(/[::]\s*$/, ""),
@@ -18904,8 +18914,8 @@ function extractFromTable(table) {
18904
18914
  if (allLabels) {
18905
18915
  for (let r = 1; r < table.rows; r++) {
18906
18916
  for (let c = 0; c < table.cols; c++) {
18907
- const label = headerRow[c].text.trim();
18908
- const value = table.cells[r][c].text.trim();
18917
+ const label = headerRow[c]?.text.trim() ?? "";
18918
+ const value = table.cells[r]?.[c]?.text.trim() ?? "";
18909
18919
  if (label && value) {
18910
18920
  fields.push({ label, value, row: r, col: c });
18911
18921
  }
@@ -19059,15 +19069,18 @@ function fillTable(table, values, filled, matchedLabels, patternFilledCells) {
19059
19069
  if (!allLabels) return;
19060
19070
  for (let r = 1; r < table.rows; r++) {
19061
19071
  for (let c = 0; c < table.cols; c++) {
19062
- const headerLabel = normalizeLabel(headerRow[c].text);
19072
+ const headerCell = headerRow[c];
19073
+ const valueCell = table.cells[r]?.[c];
19074
+ if (!headerCell || !valueCell) continue;
19075
+ const headerLabel = normalizeLabel(headerCell.text);
19063
19076
  const matchKey = findMatchingKey(headerLabel, values);
19064
19077
  if (matchKey === void 0) continue;
19065
19078
  if (matchedLabels.has(matchKey)) continue;
19066
19079
  const newValue = values.get(matchKey);
19067
- table.cells[r][c].text = newValue;
19080
+ valueCell.text = newValue;
19068
19081
  matchedLabels.add(matchKey);
19069
19082
  filled.push({
19070
- label: headerRow[c].text.trim(),
19083
+ label: headerCell.text.trim(),
19071
19084
  value: newValue,
19072
19085
  row: r,
19073
19086
  col: c
@@ -23338,7 +23351,7 @@ async function parseHwp(buffer, options) {
23338
23351
  async function parsePdf(buffer, options) {
23339
23352
  let parsePdfDocument;
23340
23353
  try {
23341
- const mod = await import("./parser-VZL3MK5X.js");
23354
+ const mod = await import("./parser-5HDZZWDH.js");
23342
23355
  parsePdfDocument = mod.parsePdfDocument;
23343
23356
  } catch {
23344
23357
  return {