kordoc 4.12.0 → 4.12.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.
- package/README.md +26 -5
- package/dist/{-B3EUUBPV.js → -EZH6NKTE.js} +8 -8
- package/dist/{chunk-HGUNWAXK.js → chunk-2B7OIEJJ.js} +9 -5
- package/dist/chunk-2B7OIEJJ.js.map +1 -0
- package/dist/{chunk-QKFCGJJY.js → chunk-2HBYWA5X.js} +2 -2
- package/dist/{chunk-HFJWCAJ2.cjs → chunk-2LKYJ4G3.cjs} +6 -6
- package/dist/chunk-2LKYJ4G3.cjs.map +1 -0
- package/dist/{chunk-COGFPMEB.js → chunk-2LO525TL.js} +2 -2
- package/dist/{chunk-TROD36DK.cjs → chunk-2LPBIW2B.cjs} +3 -3
- package/dist/chunk-2LPBIW2B.cjs.map +1 -0
- package/dist/{chunk-BQSWSMRG.cjs → chunk-62IU4NV3.cjs} +2 -2
- package/dist/chunk-62IU4NV3.cjs.map +1 -0
- package/dist/{chunk-SMGSCP57.js → chunk-7XUXSDH5.js} +308 -53
- package/dist/chunk-7XUXSDH5.js.map +1 -0
- package/dist/{chunk-YASFVKDT.js → chunk-DBGEUDBY.js} +2 -2
- package/dist/chunk-DCZVOIEO.cjs.map +1 -1
- package/dist/{chunk-4PKNWBXJ.js → chunk-FBLMVHDK.js} +2 -2
- package/dist/{chunk-I2OETEEL.js → chunk-FVBR7SC3.js} +2 -2
- package/dist/chunk-GS7T56RP.cjs.map +1 -1
- package/dist/{chunk-46UDI56N.js → chunk-IOJX4Q63.js} +3 -3
- package/dist/{chunk-BQE7AMFS.js → chunk-JCMBQC5N.js} +2 -2
- package/dist/{chunk-TF5DS74F.js → chunk-KX7IYCCZ.js} +3 -3
- package/dist/{chunk-PFUW4I4I.js → chunk-LD2K4K5V.js} +170 -18
- package/dist/chunk-LD2K4K5V.js.map +1 -0
- package/dist/{chunk-MJPRWCI5.js → chunk-MUYU4JI5.js} +2 -2
- package/dist/{chunk-SKGYPM6L.js → chunk-OEYECZGV.js} +308 -53
- package/dist/chunk-OEYECZGV.js.map +1 -0
- package/dist/{chunk-AT23GFSK.cjs → chunk-ONNAHSPV.cjs} +323 -68
- package/dist/chunk-ONNAHSPV.cjs.map +1 -0
- package/dist/{chunk-GHVXLV52.js → chunk-Q6ETEJFK.js} +9 -5
- package/dist/chunk-Q6ETEJFK.js.map +1 -0
- package/dist/{chunk-2IR3PEZU.js → chunk-QBCMFNHS.js} +2 -2
- package/dist/{chunk-DRLKMFDV.js → chunk-QM2RSJ2S.js} +3 -3
- package/dist/chunk-T7GRHAIW.cjs.map +1 -1
- package/dist/{chunk-TJYZY2O6.js → chunk-UL2MDA5C.js} +3 -3
- package/dist/{chunk-TYYJSOZS.cjs → chunk-V5BUPZ6I.cjs} +23 -19
- package/dist/chunk-V5BUPZ6I.cjs.map +1 -0
- package/dist/{chunk-7JQ2ITT2.js → chunk-XXDZ2KTW.js} +2 -2
- package/dist/chunks-TT7ZE5QQ.js +10 -0
- package/dist/cli.js +21 -21
- package/dist/cli.js.map +1 -1
- package/dist/{formula-WGKKR5OQ.js → formula-6RQX4NMJ.js} +4 -4
- package/dist/{formula-YMGXXRBQ.cjs → formula-NBEO6CFC.cjs} +9 -9
- package/dist/formula-NBEO6CFC.cjs.map +1 -0
- package/dist/{formula-G4CD5KQ6.js → formula-NW33S4TA.js} +3 -3
- package/dist/{image-ocr-MBWZK3ZT.js → image-ocr-CAVU2TNZ.js} +5 -5
- package/dist/{image-ocr-M4RP4INO.js → image-ocr-SO56VETS.js} +7 -7
- package/dist/{image-ocr-BE2HHMVN.cjs → image-ocr-V4KY373B.cjs} +11 -11
- package/dist/image-ocr-V4KY373B.cjs.map +1 -0
- package/dist/index.cjs +547 -395
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js +166 -14
- package/dist/index.js.map +1 -1
- package/dist/mcp.js +15 -15
- package/dist/{model-bundle-BIMP5DIH.js → model-bundle-EIJF34DR.js} +5 -5
- package/dist/{models-QPOEGHVA.js → models-6V4CPQXC.js} +5 -5
- package/dist/page-range-P7SDW6LR.cjs.map +1 -1
- package/dist/{parser-CMNHBVTL.js → parser-GIREMEPD.js} +307 -6
- package/dist/parser-GIREMEPD.js.map +1 -0
- package/dist/{parser-NR3XO4SM.js → parser-OBHNXEQM.js} +307 -6
- package/dist/parser-OBHNXEQM.js.map +1 -0
- package/dist/{parser-QJY5W47V.cjs → parser-OMT25WH2.cjs} +334 -33
- package/dist/parser-OMT25WH2.cjs.map +1 -0
- package/dist/pdf-ocr-IRXQ5GBM.js +13 -0
- package/dist/pdf-ocr-SL4GCOGS.js +16 -0
- package/dist/pdf-ocr-TFYVK4FI.cjs +14 -0
- package/dist/pdf-ocr-TFYVK4FI.cjs.map +1 -0
- package/dist/{profile-io-UZ43CLWX.js → profile-io-PZVMM66V.js} +3 -3
- package/dist/{rasterize-JC2JVVOF.js → rasterize-NRWP2C6L.js} +2 -2
- package/dist/render-V5ZPTZQ7.js +10 -0
- package/dist/seal-LVG2DGAB.js +10 -0
- package/dist/{setup-WDUVPFX3.js → setup-V55AJP6H.js} +3 -3
- package/dist/{watch-UI7OXIES.js → watch-7CQSMDDP.js} +9 -9
- package/package.json +1 -1
- package/dist/chunk-AT23GFSK.cjs.map +0 -1
- package/dist/chunk-BQSWSMRG.cjs.map +0 -1
- package/dist/chunk-GHVXLV52.js.map +0 -1
- package/dist/chunk-HFJWCAJ2.cjs.map +0 -1
- package/dist/chunk-HGUNWAXK.js.map +0 -1
- package/dist/chunk-PFUW4I4I.js.map +0 -1
- package/dist/chunk-SKGYPM6L.js.map +0 -1
- package/dist/chunk-SMGSCP57.js.map +0 -1
- package/dist/chunk-TROD36DK.cjs.map +0 -1
- package/dist/chunk-TYYJSOZS.cjs.map +0 -1
- package/dist/chunks-Q4GCPRRU.js +0 -10
- package/dist/formula-YMGXXRBQ.cjs.map +0 -1
- package/dist/image-ocr-BE2HHMVN.cjs.map +0 -1
- package/dist/parser-CMNHBVTL.js.map +0 -1
- package/dist/parser-NR3XO4SM.js.map +0 -1
- package/dist/parser-QJY5W47V.cjs.map +0 -1
- package/dist/pdf-ocr-DF3OTBKH.js +0 -13
- package/dist/pdf-ocr-R4DIKF4Q.js +0 -16
- package/dist/pdf-ocr-T3RHIZKY.cjs +0 -14
- package/dist/pdf-ocr-T3RHIZKY.cjs.map +0 -1
- package/dist/render-KSQ6UGCP.js +0 -10
- package/dist/seal-EOFFQ4JR.js +0 -10
- /package/dist/{-B3EUUBPV.js.map → -EZH6NKTE.js.map} +0 -0
- /package/dist/{chunk-QKFCGJJY.js.map → chunk-2HBYWA5X.js.map} +0 -0
- /package/dist/{chunk-COGFPMEB.js.map → chunk-2LO525TL.js.map} +0 -0
- /package/dist/{chunk-YASFVKDT.js.map → chunk-DBGEUDBY.js.map} +0 -0
- /package/dist/{chunk-4PKNWBXJ.js.map → chunk-FBLMVHDK.js.map} +0 -0
- /package/dist/{chunk-I2OETEEL.js.map → chunk-FVBR7SC3.js.map} +0 -0
- /package/dist/{chunk-46UDI56N.js.map → chunk-IOJX4Q63.js.map} +0 -0
- /package/dist/{chunk-BQE7AMFS.js.map → chunk-JCMBQC5N.js.map} +0 -0
- /package/dist/{chunk-TF5DS74F.js.map → chunk-KX7IYCCZ.js.map} +0 -0
- /package/dist/{chunk-MJPRWCI5.js.map → chunk-MUYU4JI5.js.map} +0 -0
- /package/dist/{chunk-2IR3PEZU.js.map → chunk-QBCMFNHS.js.map} +0 -0
- /package/dist/{chunk-DRLKMFDV.js.map → chunk-QM2RSJ2S.js.map} +0 -0
- /package/dist/{chunk-TJYZY2O6.js.map → chunk-UL2MDA5C.js.map} +0 -0
- /package/dist/{chunk-7JQ2ITT2.js.map → chunk-XXDZ2KTW.js.map} +0 -0
- /package/dist/{chunks-Q4GCPRRU.js.map → chunks-TT7ZE5QQ.js.map} +0 -0
- /package/dist/{formula-WGKKR5OQ.js.map → formula-6RQX4NMJ.js.map} +0 -0
- /package/dist/{formula-G4CD5KQ6.js.map → formula-NW33S4TA.js.map} +0 -0
- /package/dist/{image-ocr-MBWZK3ZT.js.map → image-ocr-CAVU2TNZ.js.map} +0 -0
- /package/dist/{image-ocr-M4RP4INO.js.map → image-ocr-SO56VETS.js.map} +0 -0
- /package/dist/{model-bundle-BIMP5DIH.js.map → model-bundle-EIJF34DR.js.map} +0 -0
- /package/dist/{models-QPOEGHVA.js.map → models-6V4CPQXC.js.map} +0 -0
- /package/dist/{pdf-ocr-DF3OTBKH.js.map → pdf-ocr-IRXQ5GBM.js.map} +0 -0
- /package/dist/{pdf-ocr-R4DIKF4Q.js.map → pdf-ocr-SL4GCOGS.js.map} +0 -0
- /package/dist/{profile-io-UZ43CLWX.js.map → profile-io-PZVMM66V.js.map} +0 -0
- /package/dist/{rasterize-JC2JVVOF.js.map → rasterize-NRWP2C6L.js.map} +0 -0
- /package/dist/{render-KSQ6UGCP.js.map → render-V5ZPTZQ7.js.map} +0 -0
- /package/dist/{seal-EOFFQ4JR.js.map → seal-LVG2DGAB.js.map} +0 -0
- /package/dist/{setup-WDUVPFX3.js.map → setup-V55AJP6H.js.map} +0 -0
- /package/dist/{watch-UI7OXIES.js.map → watch-7CQSMDDP.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
blocksToMarkdown
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-Q6ETEJFK.js";
|
|
5
5
|
|
|
6
6
|
// src/chunks.ts
|
|
7
7
|
var LIST_MARKER_RE = /^(?:[□■◇◆○◎●◦ㅇ•▪▸▶※-]|\d{1,3}[.)]|[가나다라마바사아자차카타파하][.)]|\([가나다라마바사아자차카타파하0-9]{1,3}\)|[①-⑳㉮-㉻㈎-㈛])\s/;
|
|
@@ -79,4 +79,4 @@ function blocksToChunks(blocks, options) {
|
|
|
79
79
|
export {
|
|
80
80
|
blocksToChunks
|
|
81
81
|
};
|
|
82
|
-
//# sourceMappingURL=chunk-
|
|
82
|
+
//# sourceMappingURL=chunk-DBGEUDBY.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/chris_gomdori/workspace/kordoc/dist/chunk-DCZVOIEO.cjs","../src/page-range.ts"],"names":[],"mappings":"AAAA;ACSO,SAAS,cAAA,CAAe,IAAA,EAAyB,QAAA,EAA+B;AACrF,EAAA,MAAM,OAAA,kBAAS,IAAI,GAAA,CAAY,CAAA;AAC/B,EAAA,GAAA,CAAI,SAAA,GAAY,CAAA,EAAG,OAAO,MAAA;AAE1B,EAAA,GAAA,CAAI,KAAA,CAAM,OAAA,CAAQ,IAAI,CAAA,EAAG;AACvB,IAAA,IAAA,CAAA,MAAW,EAAA,GAAK,IAAA,EAAM;AACpB,MAAA,MAAM,KAAA,EAAO,IAAA,CAAK,KAAA,CAAM,CAAC,CAAA;AACzB,MAAA,GAAA,CAAI,KAAA,GAAQ,EAAA,GAAK,KAAA,GAAQ,QAAA,EAAU,MAAA,CAAO,GAAA,CAAI,IAAI,CAAA;AAAA,IACpD;AACA,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,GAAA,CAAI,OAAO,KAAA,IAAS,SAAA,GAAY,IAAA,CAAK,IAAA,CAAK,EAAA,IAAM,EAAA,EAAI,OAAO,MAAA;AAE3D,EAAA,MAAM,MAAA,EAAQ,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA;AAC5B,EAAA,IAAA,CAAA,MAAW,KAAA,GAAQ,KAAA,EAAO;AACxB,IAAA,MAAM,QAAA,EAAU,IAAA,CAAK,IAAA,CAAK,CAAA;AAC1B,IAAA,GAAA,CAAI,CAAC,OAAA,EAAS,QAAA;AAEd,IAAA,MAAM,WAAA,EAAa,OAAA,CAAQ,KAAA,CAAM,qBAAqB,CAAA;AACtD,IAAA,GAAA,CAAI,UAAA,EAAY;AACd,MAAA,MAAM,MAAA,EAAQ,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,QAAA,CAAS,UAAA,CAAW,CAAC,CAAA,EAAG,EAAE,CAAC,CAAA;AACrD,MAAA,MAAM,IAAA,EAAM,IAAA,CAAK,GAAA,CAAI,QAAA,EAAU,QAAA,CAAS,UAAA,CAAW,CAAC,CAAA,EAAG,EAAE,CAAC,CAAA;AAC1D,MAAA,IAAA,CAAA,IAAS,EAAA,EAAI,KAAA,EAAO,EAAA,GAAK,GAAA,EAAK,CAAA,EAAA,EAAK,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA;AAAA,IACjD,EAAA,KAAO;AACL,MAAA,MAAM,KAAA,EAAO,QAAA,CAAS,OAAA,EAAS,EAAE,CAAA;AACjC,MAAA,GAAA,CAAI,CAAC,KAAA,CAAM,IAAI,EAAA,GAAK,KAAA,GAAQ,EAAA,GAAK,KAAA,GAAQ,QAAA,EAAU,MAAA,CAAO,GAAA,CAAI,IAAI,CAAA;AAAA,IACpE;AAAA,EACF;AAEA,EAAA,OAAO,MAAA;AACT;ADZA;AACA;AACE;AACF,wCAAC","file":"/Users/chris_gomdori/workspace/kordoc/dist/chunk-DCZVOIEO.cjs","sourcesContent":[null,"/** 페이지/섹션 범위 파싱 유틸리티 */\n\n/**\n * 페이지 범위 지정을 1-based Set<number>로 변환.\n *\n * @param spec - [1,2,3] 또는 \"1-3\" 또는 \"1,3,5-7\"\n * @param maxPages - 최대 페이지 수 (클램핑 상한)\n * @returns 1-based 페이지 번호 Set\n */\nexport function parsePageRange(spec: number[] | string, maxPages: number): Set<number> {\n const result = new Set<number>()\n if (maxPages <= 0) return result\n\n if (Array.isArray(spec)) {\n for (const n of spec) {\n const page = Math.round(n)\n if (page >= 1 && page <= maxPages) result.add(page)\n }\n return result\n }\n\n if (typeof spec !== \"string\" || spec.trim() === \"\") return result\n\n const parts = spec.split(\",\")\n for (const part of parts) {\n const trimmed = part.trim()\n if (!trimmed) continue\n\n const rangeMatch = trimmed.match(/^(\\d+)\\s*-\\s*(\\d+)$/)\n if (rangeMatch) {\n const start = Math.max(1, parseInt(rangeMatch[1], 10))\n const end = Math.min(maxPages, parseInt(rangeMatch[2], 10))\n for (let i = start; i <= end; i++) result.add(i)\n } else {\n const page = parseInt(trimmed, 10)\n if (!isNaN(page) && page >= 1 && page <= maxPages) result.add(page)\n }\n }\n\n return result\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
// src/utils.ts
|
|
4
|
-
var VERSION = true ? "4.12.
|
|
4
|
+
var VERSION = true ? "4.12.2" : "0.0.0-dev";
|
|
5
5
|
function toArrayBuffer(buf) {
|
|
6
6
|
if (buf.byteOffset === 0 && buf.byteLength === buf.buffer.byteLength) {
|
|
7
7
|
return buf.buffer;
|
|
@@ -123,4 +123,4 @@ export {
|
|
|
123
123
|
safeMax,
|
|
124
124
|
classifyError
|
|
125
125
|
};
|
|
126
|
-
//# sourceMappingURL=chunk-
|
|
126
|
+
//# sourceMappingURL=chunk-FBLMVHDK.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
KordocError
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FBLMVHDK.js";
|
|
5
5
|
|
|
6
6
|
// src/hwpx/parser-shared.ts
|
|
7
7
|
import { DOMParser } from "@xmldom/xmldom";
|
|
@@ -323,4 +323,4 @@ export {
|
|
|
323
323
|
DEFAULT_CHAR,
|
|
324
324
|
parseRenderStyles
|
|
325
325
|
};
|
|
326
|
-
//# sourceMappingURL=chunk-
|
|
326
|
+
//# sourceMappingURL=chunk-FVBR7SC3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/
|
|
1
|
+
{"version":3,"sources":["/Users/chris_gomdori/workspace/kordoc/dist/chunk-GS7T56RP.cjs","../node_modules/tsup/assets/cjs_shims.js"],"names":[],"mappings":"AAAA;ACKA,IAAM,iBAAA,EAAmB,CAAA,EAAA,GACvB,OAAO,SAAA,IAAa,YAAA,EAChB,IAAI,GAAA,CAAI,CAAA,KAAA,EAAQ,UAAU,CAAA,CAAA;AAK8B;ADT4B;AACA;AACA;AACA","file":"/Users/chris_gomdori/workspace/kordoc/dist/chunk-GS7T56RP.cjs","sourcesContent":[null,"// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () => \n typeof document === \"undefined\" \n ? new URL(`file:${__filename}`).href \n : (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT') \n ? document.currentScript.src \n : new URL(\"main.js\", document.baseURI).href;\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n"]}
|
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
createXmlParser,
|
|
8
8
|
findChildByLocalName,
|
|
9
9
|
parseRenderStyles
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-FVBR7SC3.js";
|
|
11
11
|
import {
|
|
12
12
|
KordocError,
|
|
13
13
|
precheckZipSize
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-FBLMVHDK.js";
|
|
15
15
|
|
|
16
16
|
// src/render/svg-render.ts
|
|
17
17
|
import JSZip from "jszip";
|
|
@@ -1286,4 +1286,4 @@ export {
|
|
|
1286
1286
|
fitRatioForFewerLines,
|
|
1287
1287
|
renderHwpxToSvg
|
|
1288
1288
|
};
|
|
1289
|
-
//# sourceMappingURL=chunk-
|
|
1289
|
+
//# sourceMappingURL=chunk-IOJX4Q63.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
assertNetworkAllowed
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-QBCMFNHS.js";
|
|
5
5
|
|
|
6
6
|
// src/pdf/formula/models.ts
|
|
7
7
|
import { createHash } from "crypto";
|
|
@@ -250,4 +250,4 @@ export {
|
|
|
250
250
|
ensureFormulaModels,
|
|
251
251
|
ensureSingleModel
|
|
252
252
|
};
|
|
253
|
-
//# sourceMappingURL=chunk-
|
|
253
|
+
//# sourceMappingURL=chunk-JCMBQC5N.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
parseRenderStyles
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FVBR7SC3.js";
|
|
5
5
|
import {
|
|
6
6
|
KordocError,
|
|
7
7
|
precheckZipSize
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-FBLMVHDK.js";
|
|
9
9
|
|
|
10
10
|
// src/form/seal.ts
|
|
11
11
|
import JSZip from "jszip";
|
|
@@ -1051,4 +1051,4 @@ export {
|
|
|
1051
1051
|
patchZipEntries,
|
|
1052
1052
|
placeSealHwpx
|
|
1053
1053
|
};
|
|
1054
|
-
//# sourceMappingURL=chunk-
|
|
1054
|
+
//# sourceMappingURL=chunk-KX7IYCCZ.js.map
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
paraTextPureT,
|
|
23
23
|
patchZipEntries,
|
|
24
24
|
scanSectionXml
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-KX7IYCCZ.js";
|
|
26
26
|
import {
|
|
27
27
|
MAX_COLS,
|
|
28
28
|
MAX_ROWS,
|
|
@@ -32,14 +32,14 @@ import {
|
|
|
32
32
|
dedupeRunningHeaders,
|
|
33
33
|
flattenLayoutTables,
|
|
34
34
|
mapPuaText
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-Q6ETEJFK.js";
|
|
36
36
|
import {
|
|
37
37
|
SPACE_EM_FIXED,
|
|
38
38
|
charWidthEm1000,
|
|
39
39
|
fitRatioForFewerLines,
|
|
40
40
|
measureTextWidth,
|
|
41
41
|
simulateWrap
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-IOJX4Q63.js";
|
|
43
43
|
import {
|
|
44
44
|
MAX_DECOMPRESS_SIZE,
|
|
45
45
|
MAX_XML_DEPTH,
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
findChildByLocalName,
|
|
56
56
|
localName,
|
|
57
57
|
rawTextContent
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-FVBR7SC3.js";
|
|
59
59
|
import {
|
|
60
60
|
KordocError,
|
|
61
61
|
classifyError,
|
|
@@ -67,7 +67,7 @@ import {
|
|
|
67
67
|
sanitizeHref,
|
|
68
68
|
stripDtd,
|
|
69
69
|
toArrayBuffer
|
|
70
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-FBLMVHDK.js";
|
|
71
71
|
|
|
72
72
|
// src/index.ts
|
|
73
73
|
import { readFile } from "fs/promises";
|
|
@@ -2680,6 +2680,9 @@ function parseDocInfo(records) {
|
|
|
2680
2680
|
function createParaTextState() {
|
|
2681
2681
|
return { text: "", ctrlIdx: 0, fieldStack: [], fieldRanges: [] };
|
|
2682
2682
|
}
|
|
2683
|
+
var HANCOM_FOLDED_PUA_START = 40960;
|
|
2684
|
+
var HANCOM_FOLDED_PUA_END = 42124;
|
|
2685
|
+
var HANCOM_FOLDED_PUA_SHIFT = 983040 - 40960;
|
|
2683
2686
|
function isExtendedOnlyCtrlChar(ch) {
|
|
2684
2687
|
return ch >= 1 && ch <= 3 || ch >= 11 && ch <= 12 || ch >= 14 && ch <= 18 || ch >= 21 && ch <= 23;
|
|
2685
2688
|
}
|
|
@@ -2747,6 +2750,10 @@ function appendParaText(state, data, resolveControl) {
|
|
|
2747
2750
|
i += 14;
|
|
2748
2751
|
}
|
|
2749
2752
|
} else if (ch >= 32) {
|
|
2753
|
+
if (ch >= HANCOM_FOLDED_PUA_START && ch <= HANCOM_FOLDED_PUA_END) {
|
|
2754
|
+
result += String.fromCodePoint(ch + HANCOM_FOLDED_PUA_SHIFT);
|
|
2755
|
+
break;
|
|
2756
|
+
}
|
|
2750
2757
|
if (ch >= 55296 && ch <= 56319 && i + 1 < data.length) {
|
|
2751
2758
|
const lo = data.readUInt16LE(i);
|
|
2752
2759
|
if (lo >= 56320 && lo <= 57343) {
|
|
@@ -21025,10 +21032,9 @@ function extractFormFields(blocks) {
|
|
|
21025
21032
|
const fields = [];
|
|
21026
21033
|
let totalTables = 0;
|
|
21027
21034
|
let formTables = 0;
|
|
21028
|
-
for (const
|
|
21029
|
-
if (block.type !== "table" || !block.table) continue;
|
|
21035
|
+
for (const table2 of collectTables(blocks)) {
|
|
21030
21036
|
totalTables++;
|
|
21031
|
-
const tableFields = extractFromTable(
|
|
21037
|
+
const tableFields = extractFromTable(table2);
|
|
21032
21038
|
if (tableFields.length > 0) {
|
|
21033
21039
|
formTables++;
|
|
21034
21040
|
fields.push(...tableFields);
|
|
@@ -21043,6 +21049,17 @@ function extractFormFields(blocks) {
|
|
|
21043
21049
|
const confidence = totalTables > 0 ? formTables / totalTables : fields.length > 0 ? 0.3 : 0;
|
|
21044
21050
|
return { fields, confidence: Math.min(confidence, 1) };
|
|
21045
21051
|
}
|
|
21052
|
+
function collectTables(blocks, out = [], depth = 0) {
|
|
21053
|
+
if (depth > 12) return out;
|
|
21054
|
+
for (const block of blocks) {
|
|
21055
|
+
if (block.type !== "table" || !block.table) continue;
|
|
21056
|
+
out.push(block.table);
|
|
21057
|
+
for (const row of block.table.cells) {
|
|
21058
|
+
for (const cell2 of row) if (cell2?.blocks?.length) collectTables(cell2.blocks, out, depth + 1);
|
|
21059
|
+
}
|
|
21060
|
+
}
|
|
21061
|
+
return out;
|
|
21062
|
+
}
|
|
21046
21063
|
function extractFromTable(table2) {
|
|
21047
21064
|
const fields = [];
|
|
21048
21065
|
if (table2.cols >= 2) {
|
|
@@ -21511,17 +21528,17 @@ async function fillHwpx(hwpxBuffer, values, blockedLabels) {
|
|
|
21511
21528
|
const matchText = (p) => paraTText(p, xml) ?? p.text;
|
|
21512
21529
|
const cellLabelText = (cell2) => cell2.paragraphs.filter((p) => !p.inTextbox).map((p) => matchText(p)).join("");
|
|
21513
21530
|
const allTables = [];
|
|
21514
|
-
const
|
|
21531
|
+
const collectTables2 = (tables, depth) => {
|
|
21515
21532
|
if (depth > 16) return;
|
|
21516
21533
|
for (const t of tables) {
|
|
21517
21534
|
allTables.push(t);
|
|
21518
21535
|
for (const row of t.rows) {
|
|
21519
|
-
for (const cell2 of row)
|
|
21536
|
+
for (const cell2 of row) collectTables2(cell2.tables, depth + 1);
|
|
21520
21537
|
}
|
|
21521
21538
|
}
|
|
21522
21539
|
};
|
|
21523
|
-
|
|
21524
|
-
|
|
21540
|
+
collectTables2(scan.tables, 0);
|
|
21541
|
+
collectTables2(scan.orphanTables, 0);
|
|
21525
21542
|
const patternApplied = /* @__PURE__ */ new Set();
|
|
21526
21543
|
for (const table2 of allTables) {
|
|
21527
21544
|
for (const row of table2.rows) {
|
|
@@ -24957,10 +24974,13 @@ function footSep(g) {
|
|
|
24957
24974
|
const bodyMm = 210 - g.margins.left - g.margins.right;
|
|
24958
24975
|
return "\u2500".repeat(Math.max(10, Math.round(bodyMm * (46 / 175))));
|
|
24959
24976
|
}
|
|
24977
|
+
function isInternalApproval(to) {
|
|
24978
|
+
return !!to && /^\s*내\s*부\s*결\s*재/.test(to);
|
|
24979
|
+
}
|
|
24960
24980
|
function buildDocFoot(g, ids) {
|
|
24961
24981
|
const f = g.docFoot;
|
|
24962
24982
|
const out = [blank()];
|
|
24963
|
-
if (f.sender) {
|
|
24983
|
+
if (f.sender && !isInternalApproval(g.docHead?.to)) {
|
|
24964
24984
|
out.push(para(f.sender, GONGMUN_CENTER, ids.sender), blank());
|
|
24965
24985
|
}
|
|
24966
24986
|
const foot = (text) => para(text, GONGMUN_TBL_LEFT, ids.foot);
|
|
@@ -26412,6 +26432,77 @@ function unknownFontWarnings(fonts) {
|
|
|
26412
26432
|
}
|
|
26413
26433
|
|
|
26414
26434
|
// src/hwpx/gongmun-lint.ts
|
|
26435
|
+
var LOANWORD_FIXES = [
|
|
26436
|
+
["\uCEE8\uD150\uCE20", "\uCF58\uD150\uCE20"],
|
|
26437
|
+
["\uC5B4\uD50C\uB9AC\uCF00\uC774\uC158", "\uC560\uD50C\uB9AC\uCF00\uC774\uC158"],
|
|
26438
|
+
["\uBA54\uC138\uC9C0", "\uBA54\uC2DC\uC9C0"],
|
|
26439
|
+
["\uB9AC\uB354\uC27D", "\uB9AC\uB354\uC2ED"],
|
|
26440
|
+
["\uC6CC\uD06C\uC0F5", "\uC6CC\uD06C\uC20D"],
|
|
26441
|
+
["\uC2A4\uCF00\uC974", "\uC2A4\uCF00\uC904"],
|
|
26442
|
+
["\uC545\uC138\uC0AC\uB9AC", "\uC561\uC138\uC11C\uB9AC"],
|
|
26443
|
+
["\uB124\uBE44\uAC8C\uC774\uC158", "\uB0B4\uBE44\uAC8C\uC774\uC158"],
|
|
26444
|
+
["\uD0C0\uAC9F", "\uD0C0\uAE43"],
|
|
26445
|
+
["\uD654\uC774\uD305", "\uD30C\uC774\uD305"],
|
|
26446
|
+
["\uBE44\uC9C0\uB2C8\uC2A4", "\uBE44\uC988\uB2C8\uC2A4"],
|
|
26447
|
+
["\uD504\uB9AC\uC820\uD14C\uC774\uC158", "\uD504\uB808\uC820\uD14C\uC774\uC158"],
|
|
26448
|
+
["\uB77C\uC774\uC13C\uC2A4", "\uB77C\uC774\uC120\uC2A4"],
|
|
26449
|
+
["\uCE90\uBE44\uB137", "\uCE90\uBE44\uB2DB"],
|
|
26450
|
+
["\uB80C\uD2B8\uCE74", "\uB80C\uD130\uCE74"],
|
|
26451
|
+
["\uD50C\uB7AD\uCE74\uB4DC", "\uD50C\uB798\uCE74\uB4DC"],
|
|
26452
|
+
["\uD50C\uB79C\uCE74\uB4DC", "\uD50C\uB798\uCE74\uB4DC"],
|
|
26453
|
+
["\uCEE8\uC149", "\uCF58\uC149\uD2B8"],
|
|
26454
|
+
["\uC2EC\uBCFC", "\uC2EC\uBC8C"],
|
|
26455
|
+
["\uCE74\uB2EC\uB85C\uADF8", "\uCE74\uD0C8\uB85C\uADF8"],
|
|
26456
|
+
["\uD31C\uD50C\uB81B", "\uD338\uD50C\uB9BF"],
|
|
26457
|
+
["\uD31C\uD50C\uB9BF", "\uD338\uD50C\uB9BF"],
|
|
26458
|
+
["\uB9AC\uBAA8\uCF58", "\uB9AC\uBAA8\uCEE8"],
|
|
26459
|
+
["\uC5D0\uC5B4\uCF58", "\uC5D0\uC5B4\uCEE8"],
|
|
26460
|
+
["\uC54C\uCF5C", "\uC54C\uCF54\uC62C"],
|
|
26461
|
+
["\uBC1C\uB780\uC2A4", "\uBC38\uB7F0\uC2A4"],
|
|
26462
|
+
["\uB9E4\uB2C8\uC544", "\uB9C8\uB2C8\uC544"],
|
|
26463
|
+
["\uCF54\uBA54\uB514", "\uCF54\uBBF8\uB514"],
|
|
26464
|
+
["\uD310\uB12C", "\uD328\uB110"],
|
|
26465
|
+
["\uC575\uCF5C", "\uC559\uCF54\uB974"],
|
|
26466
|
+
["\uB85C\uBCF4\uD2B8", "\uB85C\uBD07"],
|
|
26467
|
+
["\uBC14\uBCA0\uD050", "\uBC14\uBE44\uD050"],
|
|
26468
|
+
["\uBD80\uD398", "\uBDD4\uD398"],
|
|
26469
|
+
["\uCD08\uCF54\uB81B", "\uCD08\uCF5C\uB9BF"],
|
|
26470
|
+
["\uCE74\uD398\uD2B8", "\uCE74\uD3AB"],
|
|
26471
|
+
["\uCF00\uC78C", "\uCF00\uC774\uD06C"],
|
|
26472
|
+
["\uB3C4\uB108\uCE20", "\uB3C4\uB11B"],
|
|
26473
|
+
["\uC288\uD37C\uB9C8\uCF19", "\uC288\uD37C\uB9C8\uCF13"],
|
|
26474
|
+
["\uC368\uBE44\uC2A4", "\uC11C\uBE44\uC2A4"],
|
|
26475
|
+
["\uC13C\uD0C0", "\uC13C\uD130"]
|
|
26476
|
+
];
|
|
26477
|
+
var LOANWORD_RE = new RegExp(LOANWORD_FIXES.map(([w]) => w).sort((a, b) => b.length - a.length).join("|"), "g");
|
|
26478
|
+
var DISCRIM_FIXES = [
|
|
26479
|
+
["\uC7A5\uC560\uC790", "\uC7A5\uC560\uC778"],
|
|
26480
|
+
["\uC7A5\uC560\uC6B0", "\uC7A5\uC560\uC778"],
|
|
26481
|
+
["\uBD88\uAD6C\uC790", "\uC7A5\uC560\uC778"],
|
|
26482
|
+
["\uC815\uC2E0\uBC15\uC57D", "\uC9C0\uC801\uC7A5\uC560"],
|
|
26483
|
+
["\uC815\uC0C1\uC778", "\uBE44\uC7A5\uC560\uC778"],
|
|
26484
|
+
["\uD3B8\uBD80\uBAA8", "\uD55C\uBD80\uBAA8"],
|
|
26485
|
+
["\uACB0\uC190\uAC00\uC815", "\uD55C\uBD80\uBAA8\uAC00\uC815"],
|
|
26486
|
+
["\uBBF8\uB9DD\uC778", "\uACE0\uC778\uC758 \uBC30\uC6B0\uC790"],
|
|
26487
|
+
["\uD559\uBD80\uD615", "\uD559\uBD80\uBAA8"],
|
|
26488
|
+
["\uBD88\uC6B0\uC774\uC6C3", "\uC5B4\uB824\uC6B4 \uC774\uC6C3"],
|
|
26489
|
+
["\uC720\uBAA8\uCC28", "\uC720\uC544\uCC28"],
|
|
26490
|
+
["\uC800\uCD9C\uC0B0", "\uC800\uCD9C\uC0DD"],
|
|
26491
|
+
["\uC7A1\uC0C1\uC778", "\uC774\uB3D9\uC0C1\uC778"],
|
|
26492
|
+
["\uD30C\uCD9C\uBD80", "\uAC00\uC0AC\uB3C4\uC6B0\uBBF8"],
|
|
26493
|
+
["\uCCAD\uC18C\uBD80", "\uD658\uACBD\uBBF8\uD654\uC6D0"],
|
|
26494
|
+
["\uAC04\uD638\uC6D0", "\uAC04\uD638\uC0AC"],
|
|
26495
|
+
["\uC6B4\uC804\uC218", "\uC6B4\uC804\uAE30\uC0AC"],
|
|
26496
|
+
["\uB178\uAC00\uB2E4", "\uAC74\uC124\uB178\uB3D9\uC790"],
|
|
26497
|
+
["\uC870\uC120\uC871", "\uC911\uAD6D\uB3D9\uD3EC"],
|
|
26498
|
+
["\uB9E4\uB9E4\uCD98", "\uC131\uB9E4\uB9E4"],
|
|
26499
|
+
["\uC0AC\uC0DD\uC544", "\uD63C\uC678\uC790"],
|
|
26500
|
+
["\uBC99\uC5B4\uB9AC", "\uC5B8\uC5B4\uC7A5\uC560\uC778"],
|
|
26501
|
+
["\uC808\uB984\uBC1C\uC774", "\uC9C0\uCCB4\uC7A5\uC560\uC778"],
|
|
26502
|
+
["\uC560\uAFB8\uB208", "\uC2DC\uAC01\uC7A5\uC560\uC778"],
|
|
26503
|
+
["\uADC0\uBA38\uAC70\uB9AC", "\uCCAD\uAC01\uC7A5\uC560\uC778"]
|
|
26504
|
+
];
|
|
26505
|
+
var DISCRIM_RE = new RegExp(DISCRIM_FIXES.map(([w]) => w).sort((a, b) => b.length - a.length).join("|"), "g");
|
|
26415
26506
|
var RULES = [
|
|
26416
26507
|
// 날짜 ─ 온점 뒤 한 칸, 0 패딩 금지, 연도 4자리, 끝 마침표
|
|
26417
26508
|
{
|
|
@@ -26510,6 +26601,51 @@ var RULES = [
|
|
|
26510
26601
|
message: "\uC30D\uC810\uC740 \uC55E\uB9D0\uC5D0 \uBD99\uC774\uACE0 \uB4A4\uB294 \uD55C \uCE78 \uB744\uC6C0",
|
|
26511
26602
|
suggest: "\uC608) \uC6D0\uC7A5: \uAE40\uAC11\uB3D9"
|
|
26512
26603
|
},
|
|
26604
|
+
// ── 편람 보강 (v4.12.1) — pyhwpxlib Gongmun 검사·hwpx-skill gonmun_lint 대조로 빈 축 보충 ──
|
|
26605
|
+
// 금액 한글 병기 — 규정 시행규칙 제2조: 아라비아 숫자 다음 괄호 안에 한글로 적는다
|
|
26606
|
+
{
|
|
26607
|
+
code: "MONEY_NO_HANGUL",
|
|
26608
|
+
severity: "warning",
|
|
26609
|
+
pattern: /금\d[\d,]*원(?![\s]*[((])/g,
|
|
26610
|
+
message: "\uAE08\uC561\uC740 \uC22B\uC790 \uB2E4\uC74C \uAD04\uD638 \uC548\uC5D0 \uD55C\uAE00 \uBCD1\uAE30",
|
|
26611
|
+
suggest: "\uC608) \uAE08113,560\uC6D0(\uAE08\uC77C\uC2ED\uC77C\uB9CC\uC0BC\uCC9C\uC624\uBC31\uC721\uC2ED\uC6D0)"
|
|
26612
|
+
},
|
|
26613
|
+
// 물결표 앞뒤 붙여쓰기 — 기간·범위는 "2. 20.∼2. 24." 처럼 붙여 씀. 숫자·날짜·시각 범위(앞은 숫자·
|
|
26614
|
+
// 온점·괄호·년월일시분, 뒤는 숫자·연도 생략부호)에만 건다 — "기간( 부터 ~ 까지)" 기입란·"~ ※ 비고"·
|
|
26615
|
+
// "~ 수리완료시까지" 처럼 낱말이 붙는 물결표는 범위 표기가 아니다 (v4.12.2, 별지서식 47→30·기안문 32→27 실측)
|
|
26616
|
+
{
|
|
26617
|
+
code: "TILDE_SPACE",
|
|
26618
|
+
severity: "warning",
|
|
26619
|
+
pattern: /(?<=[\d.)일월년시분’'])[ \t]+[∼~~]|[∼~~][ \t]+(?=[\d'’])/g,
|
|
26620
|
+
message: "\uBB3C\uACB0\uD45C(\u223C) \uC55E\uB4A4\uB294 \uBD99\uC5EC \uC500",
|
|
26621
|
+
suggest: "\uC608) 2. 20.\u223C2. 24., 09:00\u223C18:00"
|
|
26622
|
+
},
|
|
26623
|
+
// 두음법칙 — 어두의 "년도·년간·년말…" 은 "연도·연간·연말" (숫자 뒤 '2026년도' 는 정상). 서식의
|
|
26624
|
+
// 기입란(" 년도", "( 년간)", "2026 년도")과 셀 하나가 "년도" 뿐인 표 머리글은 어두가 아니라
|
|
26625
|
+
// 빈칸 뒤 접미라 제외한다 (v4.12.2, 별지서식 실측 28건 전부 이 꼴·기안문 0건)
|
|
26626
|
+
{
|
|
26627
|
+
code: "DUEUM_ERROR",
|
|
26628
|
+
severity: "warning",
|
|
26629
|
+
pattern: /(?<![가-힣\d])(?<!\d[ \t]{1,3})(?<![((>|][ \t]*)(?<![ \t][ \t])년(?:도별|도|간|말|초|차|세|내)(?![가-힣])(?![ \t]*(?:<\/t[dh]>|\|))/g,
|
|
26630
|
+
message: "\uC5B4\uB450\uC758 '\uB144'\uC740 \uB450\uC74C\uBC95\uCE59\uC5D0 \uB530\uB77C '\uC5F0'\uC73C\uB85C \uC801\uC74C",
|
|
26631
|
+
suggest: "\uC608) \uC5F0\uB3C4, \uC5F0\uAC04, \uC5F0\uB9D0, \uC5F0\uCD08"
|
|
26632
|
+
},
|
|
26633
|
+
// 외래어 표기 — 국립국어원 표기법 기준 흔한 오기 (사전 매칭)
|
|
26634
|
+
{
|
|
26635
|
+
code: "LOANWORD_ERROR",
|
|
26636
|
+
severity: "warning",
|
|
26637
|
+
pattern: LOANWORD_RE,
|
|
26638
|
+
message: "\uC678\uB798\uC5B4 \uD45C\uAE30\uBC95\uC5D0 \uB9DE\uC9C0 \uC54A\uB294 \uD45C\uAE30",
|
|
26639
|
+
suggest: "\uC608) \uCF58\uD150\uCE20\xB7\uC560\uD50C\uB9AC\uCF00\uC774\uC158\xB7\uBA54\uC2DC\uC9C0\xB7\uC6CC\uD06C\uC20D\xB7\uC2A4\uCF00\uC904\xB7\uCF58\uC149\uD2B8"
|
|
26640
|
+
},
|
|
26641
|
+
// 차별·비하 표현 — 행안부 공문서 작성 지침·국립국어원 순화어
|
|
26642
|
+
{
|
|
26643
|
+
code: "DISCRIMINATORY_TERM",
|
|
26644
|
+
severity: "warning",
|
|
26645
|
+
pattern: DISCRIM_RE,
|
|
26646
|
+
message: "\uCC28\uBCC4\xB7\uBE44\uD558 \uD45C\uD604\uC740 \uC21C\uD654\uC5B4\uB85C",
|
|
26647
|
+
suggest: "\uC608) \uC7A5\uC560\uC790\u2192\uC7A5\uC560\uC778, \uD3B8\uBD80\uBAA8\u2192\uD55C\uBD80\uBAA8, \uD559\uBD80\uD615\u2192\uD559\uBD80\uBAA8, \uBBF8\uB9DD\uC778\u2192\uACE0\uC778\uC758 \uBC30\uC6B0\uC790"
|
|
26648
|
+
},
|
|
26513
26649
|
// ── AI 문체 흔적(슬롭) — 편람 원전 외 kordoc 자체 룰 (v4.9.0) ──────────────
|
|
26514
26650
|
// 생성형 AI 초안이 공문서로 흘러들 때 남는 기계 문체를 걸러낸다. 조언용 warning.
|
|
26515
26651
|
{
|
|
@@ -26527,7 +26663,7 @@ var RULES = [
|
|
|
26527
26663
|
suggest: "\uB9AC\uB4DC\uC5B4\xB7\uD575\uC2EC \uC218\uCE58 \uD55C \uACF3\uB9CC \uAC15\uC870"
|
|
26528
26664
|
}
|
|
26529
26665
|
];
|
|
26530
|
-
function lintGongmunText(text) {
|
|
26666
|
+
function lintGongmunText(text, opts) {
|
|
26531
26667
|
const findings = [];
|
|
26532
26668
|
let fenceMarker = null;
|
|
26533
26669
|
const lines = text.split(/\r?\n/);
|
|
@@ -26550,13 +26686,29 @@ function lintGongmunText(text) {
|
|
|
26550
26686
|
rule: r.code,
|
|
26551
26687
|
severity: r.severity,
|
|
26552
26688
|
message: r.message,
|
|
26553
|
-
suggest: r.suggest
|
|
26689
|
+
suggest: dictSuggest(r.code, m[0]) ?? r.suggest
|
|
26554
26690
|
});
|
|
26555
26691
|
}
|
|
26556
26692
|
}
|
|
26557
26693
|
}
|
|
26694
|
+
if (opts?.document && /^\s*붙\s*임(?![가-힣])/m.test(text) && !/끝\.\s*$/m.test(text)) {
|
|
26695
|
+
findings.push({
|
|
26696
|
+
line: lines.length,
|
|
26697
|
+
match: "\uBD99\uC784",
|
|
26698
|
+
rule: "END_MARK_MISSING",
|
|
26699
|
+
severity: "warning",
|
|
26700
|
+
message: "\uBD99\uC784 \uD45C\uC2DC \uB4A4\uC5D0 '\uB05D.' \uD45C\uC2DC\uAC00 \uC5C6\uC74C",
|
|
26701
|
+
suggest: "\uC608) \uBD99\uC784 \uACC4\uD68D\uC11C 1\uBD80. \uB05D."
|
|
26702
|
+
});
|
|
26703
|
+
}
|
|
26558
26704
|
return findings;
|
|
26559
26705
|
}
|
|
26706
|
+
function dictSuggest(code, match) {
|
|
26707
|
+
const table2 = code === "LOANWORD_ERROR" ? LOANWORD_FIXES : code === "DISCRIMINATORY_TERM" ? DISCRIM_FIXES : null;
|
|
26708
|
+
if (!table2) return void 0;
|
|
26709
|
+
const hit = table2.find(([w]) => w === match.trim());
|
|
26710
|
+
return hit ? `${hit[0]} \u2192 ${hit[1]}` : void 0;
|
|
26711
|
+
}
|
|
26560
26712
|
function gongmunLintWarnings(text, limit = 10) {
|
|
26561
26713
|
const findings = lintGongmunText(text);
|
|
26562
26714
|
const shown = findings.slice(0, limit).map(
|
|
@@ -29579,7 +29731,7 @@ async function dispatch(format, buffer, opts) {
|
|
|
29579
29731
|
}
|
|
29580
29732
|
async function parseImage(buffer, options) {
|
|
29581
29733
|
try {
|
|
29582
|
-
const { parseImageDocument } = await import("./image-ocr-
|
|
29734
|
+
const { parseImageDocument } = await import("./image-ocr-SO56VETS.js");
|
|
29583
29735
|
const { blocks, warnings } = await parseImageDocument(buffer, options);
|
|
29584
29736
|
return {
|
|
29585
29737
|
success: true,
|
|
@@ -29638,7 +29790,7 @@ async function parseHwp(buffer, options) {
|
|
|
29638
29790
|
async function parsePdf(buffer, options) {
|
|
29639
29791
|
let parsePdfDocument;
|
|
29640
29792
|
try {
|
|
29641
|
-
const mod = await import("./parser-
|
|
29793
|
+
const mod = await import("./parser-OBHNXEQM.js");
|
|
29642
29794
|
parsePdfDocument = mod.parsePdfDocument;
|
|
29643
29795
|
} catch {
|
|
29644
29796
|
return {
|
|
@@ -29789,4 +29941,4 @@ export {
|
|
|
29789
29941
|
parseHwpml,
|
|
29790
29942
|
fillForm
|
|
29791
29943
|
};
|
|
29792
|
-
//# sourceMappingURL=chunk-
|
|
29944
|
+
//# sourceMappingURL=chunk-LD2K4K5V.js.map
|