@cj-tech-master/excelts 9.5.4 → 9.5.5
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/dist/browser/modules/archive/compression/streaming-compress.browser.js +29 -0
- package/dist/browser/modules/archive/compression/streaming-compress.js +9 -0
- package/dist/browser/modules/archive/compression/worker-pool/pool.browser.js +26 -1
- package/dist/browser/modules/archive/fs/archive-file.d.ts +8 -5
- package/dist/browser/modules/archive/fs/archive-file.js +78 -16
- package/dist/browser/modules/archive/unzip/stream.browser.js +43 -2
- package/dist/browser/modules/excel/chart/chart-ex-builder.js +7 -2
- package/dist/browser/modules/excel/chart/chart-ex-renderer.js +4 -9
- package/dist/browser/modules/excel/chart/chart-ex-types.d.ts +0 -12
- package/dist/browser/modules/excel/chart/chart.d.ts +1 -5
- package/dist/browser/modules/excel/chart/chart.js +1 -7
- package/dist/browser/modules/excel/chart/types.d.ts +0 -6
- package/dist/browser/modules/excel/stream/workbook-reader.browser.js +25 -1
- package/dist/browser/modules/excel/stream/workbook-reader.js +9 -0
- package/dist/browser/modules/excel/stream/workbook-writer.browser.d.ts +40 -0
- package/dist/browser/modules/excel/stream/workbook-writer.browser.js +228 -13
- package/dist/browser/modules/excel/utils/string-buf.d.ts +5 -26
- package/dist/browser/modules/excel/utils/string-buf.js +4 -81
- package/dist/browser/modules/excel/workbook.browser.js +135 -25
- package/dist/browser/modules/excel/xlsx/xform/chart/chart-space-xform.js +6 -20
- package/dist/browser/modules/excel/xlsx/xlsx.browser.d.ts +19 -9
- package/dist/browser/modules/excel/xlsx/xlsx.browser.js +32 -8
- package/dist/browser/modules/excel/xlsx/xlsx.d.ts +10 -2
- package/dist/browser/modules/excel/xlsx/xlsx.js +9 -1
- package/dist/browser/modules/pdf/excel-bridge.d.ts +30 -1
- package/dist/browser/modules/pdf/excel-bridge.js +32 -0
- package/dist/browser/modules/pdf/font/metrics.d.ts +3 -52
- package/dist/browser/modules/pdf/font/metrics.js +3 -237
- package/dist/browser/modules/pdf/index.d.ts +1 -1
- package/dist/browser/modules/pdf/index.js +1 -1
- package/dist/browser/modules/pdf/render-layout-to-pdf.d.ts +66 -0
- package/dist/browser/modules/pdf/render-layout-to-pdf.js +647 -0
- package/dist/browser/modules/pdf/word-bridge.d.ts +80 -12
- package/dist/browser/modules/pdf/word-bridge.js +122 -274
- package/dist/browser/modules/stream/index.base.d.ts +2 -0
- package/dist/browser/modules/stream/index.base.js +2 -1
- package/dist/browser/modules/stream/internal/sink-adapter.d.ts +65 -0
- package/dist/browser/modules/stream/internal/sink-adapter.js +198 -0
- package/dist/browser/modules/stream/pull-stream.d.ts +19 -2
- package/dist/browser/modules/stream/pull-stream.js +51 -5
- package/dist/browser/modules/stream/types.d.ts +13 -1
- package/dist/browser/modules/word/advanced/diff.d.ts +61 -0
- package/dist/browser/modules/word/advanced/diff.js +167 -0
- package/dist/browser/modules/word/advanced/drawing-shapes.d.ts +269 -0
- package/dist/browser/modules/word/advanced/drawing-shapes.js +268 -0
- package/dist/browser/modules/word/advanced/field-engine.d.ts +43 -0
- package/dist/browser/modules/word/advanced/field-engine.js +1225 -0
- package/dist/browser/modules/word/advanced/glossary.d.ts +86 -0
- package/dist/browser/modules/word/advanced/glossary.js +79 -0
- package/dist/browser/modules/word/advanced/math-convert.d.ts +30 -0
- package/dist/browser/modules/word/advanced/math-convert.js +595 -0
- package/dist/browser/modules/word/advanced/ole-objects.d.ts +115 -0
- package/dist/browser/modules/word/advanced/ole-objects.js +271 -0
- package/dist/browser/modules/word/advanced/style-map.d.ts +105 -0
- package/dist/browser/modules/word/advanced/style-map.js +322 -0
- package/dist/browser/modules/word/advanced/validation.d.ts +56 -0
- package/dist/browser/modules/word/advanced/validation.js +1065 -0
- package/dist/browser/modules/word/advanced/vba-project.d.ts +91 -0
- package/dist/browser/modules/word/advanced/vba-project.js +265 -0
- package/dist/browser/modules/word/bridge/excel-bridge.d.ts +127 -0
- package/dist/browser/modules/word/bridge/excel-bridge.js +980 -0
- package/dist/browser/modules/word/builder/document-handle.d.ts +151 -0
- package/dist/browser/modules/word/builder/document-handle.js +664 -0
- package/dist/browser/modules/word/builder/paragraph-builders.d.ts +61 -0
- package/dist/browser/modules/word/builder/paragraph-builders.js +90 -0
- package/dist/browser/modules/word/builder/run-builders.d.ts +374 -0
- package/dist/browser/modules/word/builder/run-builders.js +600 -0
- package/dist/browser/modules/word/builder/table-builders.d.ts +23 -0
- package/dist/browser/modules/word/builder/table-builders.js +45 -0
- package/dist/browser/modules/word/constants.d.ts +39 -1
- package/dist/browser/modules/word/constants.js +109 -1
- package/dist/browser/modules/word/convert/conversion-ir.d.ts +210 -0
- package/dist/browser/modules/word/convert/conversion-ir.js +31 -0
- package/dist/browser/modules/word/convert/docx-to-semantic.d.ts +39 -0
- package/dist/browser/modules/word/convert/docx-to-semantic.js +499 -0
- package/dist/browser/modules/word/convert/flat-opc.d.ts +44 -0
- package/dist/browser/modules/word/convert/flat-opc.js +385 -0
- package/dist/browser/modules/word/convert/html/html-import.d.ts +50 -0
- package/dist/browser/modules/word/convert/html/html-import.js +1907 -0
- package/dist/{types/modules/word → browser/modules/word/convert/html}/html-renderer.d.ts +14 -1
- package/dist/{esm/modules/word → browser/modules/word/convert/html}/html-renderer.js +420 -69
- package/dist/browser/modules/word/convert/html/html.d.ts +15 -0
- package/dist/browser/modules/word/convert/html/html.js +15 -0
- package/dist/browser/modules/word/convert/markdown/markdown-import.d.ts +68 -0
- package/dist/browser/modules/word/convert/markdown/markdown-import.js +1325 -0
- package/dist/browser/modules/word/convert/markdown/markdown-renderer.d.ts +25 -0
- package/dist/browser/modules/word/convert/markdown/markdown-renderer.js +634 -0
- package/dist/browser/modules/word/convert/markdown/markdown.d.ts +15 -0
- package/dist/browser/modules/word/convert/markdown/markdown.js +15 -0
- package/dist/browser/modules/word/convert/odt/odt.d.ts +41 -0
- package/dist/browser/modules/word/convert/odt/odt.js +1932 -0
- package/dist/browser/modules/word/{color-utils.d.ts → core/color-utils.d.ts} +8 -1
- package/dist/browser/modules/word/core/color-utils.js +43 -0
- package/dist/browser/modules/word/core/internal-utils.d.ts +90 -0
- package/dist/browser/modules/word/core/internal-utils.js +209 -0
- package/dist/browser/modules/word/core/mapper.d.ts +44 -0
- package/dist/browser/modules/word/core/mapper.js +427 -0
- package/dist/browser/modules/word/core/opc-paths.d.ts +33 -0
- package/dist/browser/modules/word/core/opc-paths.js +48 -0
- package/dist/browser/modules/word/core/text-utils.d.ts +38 -0
- package/dist/browser/modules/word/core/text-utils.js +202 -0
- package/dist/browser/modules/word/core/walker.d.ts +119 -0
- package/dist/browser/modules/word/core/walker.js +570 -0
- package/dist/browser/modules/word/crypto.d.ts +14 -9
- package/dist/browser/modules/word/crypto.js +13 -7
- package/dist/browser/modules/word/document-io.d.ts +59 -27
- package/dist/browser/modules/word/document-io.js +80 -197
- package/dist/browser/modules/word/errors.d.ts +44 -1
- package/dist/browser/modules/word/errors.js +54 -2
- package/dist/browser/modules/word/excel.d.ts +14 -0
- package/dist/browser/modules/word/excel.js +13 -0
- package/dist/browser/modules/word/font/font-embed.d.ts +112 -0
- package/dist/browser/modules/word/font/font-embed.js +646 -0
- package/dist/{esm/modules/word → browser/modules/word/font}/font-obfuscation.js +4 -9
- package/dist/browser/modules/word/font/hyphenation.d.ts +65 -0
- package/dist/browser/modules/word/font/hyphenation.js +4210 -0
- package/dist/browser/modules/word/font/text-shaping.d.ts +58 -0
- package/dist/browser/modules/word/font/text-shaping.js +635 -0
- package/dist/browser/modules/word/html.d.ts +7 -6
- package/dist/browser/modules/word/html.js +6 -5
- package/dist/browser/modules/word/incremental-edit.d.ts +123 -0
- package/dist/browser/modules/word/incremental-edit.js +361 -0
- package/dist/browser/modules/word/index.base.d.ts +194 -10
- package/dist/browser/modules/word/index.base.js +138 -29
- package/dist/browser/modules/word/layout/layout-constants.d.ts +17 -0
- package/dist/browser/modules/word/layout/layout-constants.js +17 -0
- package/dist/browser/modules/word/layout/layout-full.d.ts +53 -0
- package/dist/browser/modules/word/layout/layout-full.js +1696 -0
- package/dist/browser/modules/word/layout/layout-model.d.ts +344 -0
- package/dist/browser/modules/word/layout/layout-model.js +16 -0
- package/dist/browser/modules/word/layout/layout.d.ts +63 -0
- package/dist/browser/modules/word/layout/layout.js +1167 -0
- package/dist/browser/modules/word/layout/render-page.d.ts +57 -0
- package/dist/browser/modules/word/layout/render-page.js +1238 -0
- package/dist/browser/modules/word/markdown.d.ts +14 -0
- package/dist/browser/modules/word/markdown.js +13 -0
- package/dist/browser/modules/word/patcher.d.ts +62 -0
- package/dist/browser/modules/word/patcher.js +537 -0
- package/dist/browser/modules/word/query/compat.d.ts +25 -0
- package/dist/browser/modules/word/query/compat.js +58 -0
- package/dist/browser/modules/word/query/data-binding.d.ts +22 -0
- package/dist/browser/modules/word/query/data-binding.js +392 -0
- package/dist/browser/modules/word/query/form-fields.d.ts +41 -0
- package/dist/browser/modules/word/query/form-fields.js +268 -0
- package/dist/browser/modules/word/query/format-search.d.ts +99 -0
- package/dist/browser/modules/word/query/format-search.js +329 -0
- package/dist/browser/modules/word/query/mail-merge.d.ts +25 -0
- package/dist/browser/modules/word/query/mail-merge.js +111 -0
- package/dist/browser/modules/word/query/merge.d.ts +50 -0
- package/dist/browser/modules/word/query/merge.js +617 -0
- package/dist/browser/modules/word/query/replace.d.ts +47 -0
- package/dist/browser/modules/word/query/replace.js +301 -0
- package/dist/browser/modules/word/query/revisions.d.ts +67 -0
- package/dist/browser/modules/word/query/revisions.js +879 -0
- package/dist/browser/modules/word/query/search.d.ts +129 -0
- package/dist/browser/modules/word/query/search.js +346 -0
- package/dist/browser/modules/word/query/split.d.ts +44 -0
- package/dist/browser/modules/word/query/split.js +135 -0
- package/dist/browser/modules/word/query/style-resolve.d.ts +104 -0
- package/dist/browser/modules/word/query/style-resolve.js +368 -0
- package/dist/browser/modules/word/reader/chart-parser.d.ts +20 -0
- package/dist/browser/modules/word/reader/chart-parser.js +810 -0
- package/dist/browser/modules/word/reader/comments-parser.d.ts +26 -0
- package/dist/browser/modules/word/reader/comments-parser.js +92 -0
- package/dist/browser/modules/word/reader/doc-props-parsers.d.ts +15 -0
- package/dist/browser/modules/word/reader/doc-props-parsers.js +190 -0
- package/dist/browser/modules/word/reader/docx-reader.d.ts +27 -0
- package/dist/browser/modules/word/reader/docx-reader.js +2557 -0
- package/dist/browser/modules/word/reader/drawing-helpers.d.ts +27 -0
- package/dist/browser/modules/word/reader/drawing-helpers.js +84 -0
- package/dist/browser/modules/word/reader/form-field-parser.d.ts +21 -0
- package/dist/browser/modules/word/reader/form-field-parser.js +82 -0
- package/dist/browser/modules/word/reader/image-parsers.d.ts +11 -0
- package/dist/browser/modules/word/reader/image-parsers.js +291 -0
- package/dist/browser/modules/word/reader/math-parser.d.ts +12 -0
- package/dist/browser/modules/word/reader/math-parser.js +422 -0
- package/dist/browser/modules/word/reader/metadata-parsers.d.ts +17 -0
- package/dist/browser/modules/word/reader/metadata-parsers.js +87 -0
- package/dist/browser/modules/word/reader/numbering-parser.d.ts +13 -0
- package/dist/browser/modules/word/reader/numbering-parser.js +166 -0
- package/dist/browser/modules/word/reader/paragraph-section-parsers.d.ts +12 -0
- package/dist/browser/modules/word/reader/paragraph-section-parsers.js +503 -0
- package/dist/browser/modules/word/reader/parse-utils.d.ts +91 -0
- package/dist/browser/modules/word/reader/parse-utils.js +249 -0
- package/dist/browser/modules/word/reader/properties-parsers.d.ts +21 -0
- package/dist/browser/modules/word/reader/properties-parsers.js +332 -0
- package/dist/browser/modules/word/reader/reader-context.d.ts +69 -0
- package/dist/browser/modules/word/reader/reader-context.js +61 -0
- package/dist/browser/modules/word/reader/sdt-helpers.d.ts +29 -0
- package/dist/browser/modules/word/reader/sdt-helpers.js +111 -0
- package/dist/browser/modules/word/reader/settings-parser.d.ts +8 -0
- package/dist/browser/modules/word/reader/settings-parser.js +263 -0
- package/dist/browser/modules/word/reader/styles-parser.d.ts +12 -0
- package/dist/browser/modules/word/reader/styles-parser.js +147 -0
- package/dist/browser/modules/word/reader/table-properties-parsers.d.ts +12 -0
- package/dist/browser/modules/word/reader/table-properties-parsers.js +234 -0
- package/dist/browser/modules/word/reader/theme-parser.d.ts +8 -0
- package/dist/browser/modules/word/reader/theme-parser.js +167 -0
- package/dist/browser/modules/word/reader/watermark-parser.d.ts +15 -0
- package/dist/browser/modules/word/reader/watermark-parser.js +110 -0
- package/dist/browser/modules/word/security/cfb-reader.d.ts +37 -0
- package/dist/browser/modules/word/security/cfb-reader.js +410 -0
- package/dist/browser/modules/word/{digital-signatures.d.ts → security/digital-signatures.d.ts} +19 -11
- package/dist/browser/modules/word/{digital-signatures.js → security/digital-signatures.js} +34 -34
- package/dist/browser/modules/word/security/document-protection.d.ts +93 -0
- package/dist/browser/modules/word/security/document-protection.js +201 -0
- package/dist/{types/modules/word → browser/modules/word/security}/encryption.d.ts +51 -4
- package/dist/browser/modules/word/security/encryption.js +602 -0
- package/dist/browser/modules/word/security/policy.d.ts +80 -0
- package/dist/browser/modules/word/security/policy.js +102 -0
- package/dist/browser/modules/word/template/template-chart.d.ts +56 -0
- package/dist/browser/modules/word/template/template-chart.js +167 -0
- package/dist/browser/modules/word/template/template-datasource.d.ts +154 -0
- package/dist/browser/modules/word/template/template-datasource.js +541 -0
- package/dist/browser/modules/word/template/template-engine.d.ts +121 -0
- package/dist/browser/modules/word/template/template-engine.js +1435 -0
- package/dist/browser/modules/word/types.d.ts +224 -25
- package/dist/browser/modules/word/units.d.ts +26 -0
- package/dist/browser/modules/word/units.js +43 -14
- package/dist/browser/modules/word/{writers → writer}/chart-writer.js +164 -23
- package/dist/browser/modules/word/writer/checkbox-writer.d.ts +17 -0
- package/dist/browser/modules/word/writer/checkbox-writer.js +79 -0
- package/dist/{types/modules/word/writers → browser/modules/word/writer}/comment-writer.d.ts +2 -1
- package/dist/browser/modules/word/{writers → writer}/comment-writer.js +8 -6
- package/dist/browser/modules/word/writer/common-parts.d.ts +57 -0
- package/dist/browser/modules/word/writer/common-parts.js +101 -0
- package/dist/{types/modules/word → browser/modules/word/writer}/content-types.d.ts +2 -2
- package/dist/{esm/modules/word → browser/modules/word/writer}/content-types.js +14 -6
- package/dist/browser/modules/word/writer/document-writer.d.ts +24 -0
- package/dist/browser/modules/word/writer/document-writer.js +473 -0
- package/dist/browser/modules/word/writer/docx-packager.d.ts +35 -0
- package/dist/browser/modules/word/writer/docx-packager.js +1515 -0
- package/dist/{types/modules/word/writers → browser/modules/word/writer}/footnote-writer.d.ts +3 -2
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/footnote-writer.js +13 -10
- package/dist/{types/modules/word/writers → browser/modules/word/writer}/header-footer-writer.d.ts +3 -2
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/header-footer-writer.js +39 -21
- package/dist/{types/modules/word/writers → browser/modules/word/writer}/image-writer.d.ts +1 -1
- package/dist/browser/modules/word/{writers → writer}/image-writer.js +11 -7
- package/dist/browser/modules/word/writer/math-writer.d.ts +20 -0
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/math-writer.js +21 -1
- package/dist/browser/modules/word/{writers → writer}/numbering-writer.d.ts +1 -1
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/numbering-writer.js +11 -4
- package/dist/browser/modules/word/{writers → writer}/paragraph-writer.d.ts +2 -1
- package/dist/browser/modules/word/{writers → writer}/paragraph-writer.js +73 -38
- package/dist/browser/modules/word/{writers → writer}/parts-writer.d.ts +3 -3
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/parts-writer.js +91 -12
- package/dist/browser/modules/word/writer/reference-scanners.d.ts +42 -0
- package/dist/browser/modules/word/writer/reference-scanners.js +111 -0
- package/dist/browser/modules/word/writer/relationships.d.ts +52 -0
- package/dist/browser/modules/word/writer/relationships.js +117 -0
- package/dist/browser/modules/word/writer/render-context.d.ts +124 -0
- package/dist/browser/modules/word/writer/render-context.js +46 -0
- package/dist/browser/modules/word/{writers → writer}/run-writer.d.ts +10 -1
- package/dist/{esm/modules/word/writers → browser/modules/word/writer}/run-writer.js +126 -24
- package/dist/browser/modules/word/writer/sdt-writer.d.ts +25 -0
- package/dist/browser/modules/word/writer/sdt-writer.js +189 -0
- package/dist/browser/modules/word/writer/stream-buf.d.ts +37 -0
- package/dist/browser/modules/word/writer/stream-buf.js +73 -0
- package/dist/browser/modules/word/writer/streaming-writer.d.ts +344 -0
- package/dist/browser/modules/word/writer/streaming-writer.js +1382 -0
- package/dist/browser/modules/word/writer/string-buf.d.ts +8 -0
- package/dist/browser/modules/word/writer/string-buf.js +7 -0
- package/dist/browser/modules/word/{writers → writer}/styles-writer.js +32 -1
- package/dist/browser/modules/word/{writers → writer}/table-writer.d.ts +2 -1
- package/dist/browser/modules/word/{writers → writer}/table-writer.js +94 -11
- package/dist/browser/modules/xml/types.d.ts +22 -0
- package/dist/browser/utils/crypto.browser.d.ts +3 -1
- package/dist/browser/utils/crypto.browser.js +3 -1
- package/dist/browser/utils/crypto.d.ts +4 -1
- package/dist/browser/utils/crypto.js +4 -1
- package/dist/browser/utils/font-metrics.d.ts +63 -0
- package/dist/browser/utils/font-metrics.js +293 -0
- package/dist/browser/utils/string-buf.d.ts +42 -0
- package/dist/browser/utils/string-buf.js +89 -0
- package/dist/browser/utils/theme-colors.d.ts +55 -0
- package/dist/browser/utils/theme-colors.js +120 -0
- package/dist/cjs/modules/archive/compression/streaming-compress.browser.js +29 -0
- package/dist/cjs/modules/archive/compression/streaming-compress.js +9 -0
- package/dist/cjs/modules/archive/compression/worker-pool/pool.browser.js +26 -1
- package/dist/cjs/modules/archive/fs/archive-file.js +78 -16
- package/dist/cjs/modules/archive/unzip/stream.browser.js +43 -2
- package/dist/cjs/modules/excel/chart/chart-ex-builder.js +7 -2
- package/dist/cjs/modules/excel/chart/chart-ex-renderer.js +4 -9
- package/dist/cjs/modules/excel/chart/chart.js +1 -7
- package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +25 -1
- package/dist/cjs/modules/excel/stream/workbook-reader.js +9 -0
- package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +228 -13
- package/dist/cjs/modules/excel/utils/string-buf.js +5 -81
- package/dist/cjs/modules/excel/workbook.browser.js +135 -25
- package/dist/cjs/modules/excel/xlsx/xform/chart/chart-space-xform.js +6 -20
- package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +32 -8
- package/dist/cjs/modules/excel/xlsx/xlsx.js +9 -1
- package/dist/cjs/modules/pdf/excel-bridge.js +33 -0
- package/dist/cjs/modules/pdf/font/metrics.js +11 -244
- package/dist/cjs/modules/pdf/index.js +2 -1
- package/dist/cjs/modules/pdf/render-layout-to-pdf.js +651 -0
- package/dist/cjs/modules/pdf/word-bridge.js +155 -274
- package/dist/cjs/modules/stream/index.base.js +4 -2
- package/dist/cjs/modules/stream/internal/sink-adapter.js +202 -0
- package/dist/cjs/modules/stream/pull-stream.js +51 -5
- package/dist/cjs/modules/word/advanced/diff.js +170 -0
- package/dist/cjs/modules/word/advanced/drawing-shapes.js +279 -0
- package/dist/cjs/modules/word/advanced/field-engine.js +1229 -0
- package/dist/cjs/modules/word/advanced/glossary.js +87 -0
- package/dist/cjs/modules/word/advanced/math-convert.js +599 -0
- package/dist/cjs/modules/word/advanced/ole-objects.js +277 -0
- package/dist/cjs/modules/word/advanced/style-map.js +329 -0
- package/dist/cjs/modules/word/advanced/validation.js +1068 -0
- package/dist/cjs/modules/word/advanced/vba-project.js +274 -0
- package/dist/cjs/modules/word/bridge/excel-bridge.js +1020 -0
- package/dist/cjs/modules/word/builder/document-handle.js +667 -0
- package/dist/cjs/modules/word/builder/paragraph-builders.js +109 -0
- package/dist/cjs/modules/word/builder/run-builders.js +676 -0
- package/dist/cjs/modules/word/builder/table-builders.js +53 -0
- package/dist/cjs/modules/word/constants.js +111 -2
- package/dist/cjs/modules/word/convert/conversion-ir.js +34 -0
- package/dist/cjs/modules/word/convert/docx-to-semantic.js +502 -0
- package/dist/cjs/modules/word/convert/flat-opc.js +390 -0
- package/dist/cjs/modules/word/convert/html/html-import.js +1910 -0
- package/dist/cjs/modules/word/{html-renderer.js → convert/html/html-renderer.js} +420 -69
- package/dist/cjs/modules/word/convert/html/html.js +20 -0
- package/dist/cjs/modules/word/convert/markdown/markdown-import.js +1329 -0
- package/dist/cjs/modules/word/convert/markdown/markdown-renderer.js +637 -0
- package/dist/cjs/modules/word/convert/markdown/markdown.js +21 -0
- package/dist/cjs/modules/word/convert/odt/odt.js +1936 -0
- package/dist/cjs/modules/word/core/color-utils.js +47 -0
- package/dist/cjs/modules/word/core/internal-utils.js +219 -0
- package/dist/cjs/modules/word/core/mapper.js +430 -0
- package/dist/cjs/modules/word/core/opc-paths.js +53 -0
- package/dist/cjs/modules/word/core/text-utils.js +210 -0
- package/dist/cjs/modules/word/core/walker.js +577 -0
- package/dist/cjs/modules/word/crypto.js +19 -8
- package/dist/cjs/modules/word/document-io.js +117 -197
- package/dist/cjs/modules/word/errors.js +59 -13
- package/dist/cjs/modules/word/excel.js +22 -0
- package/dist/cjs/modules/word/font/font-embed.js +652 -0
- package/dist/cjs/modules/word/{font-obfuscation.js → font/font-obfuscation.js} +4 -9
- package/dist/cjs/modules/word/font/hyphenation.js +4216 -0
- package/dist/cjs/modules/word/font/text-shaping.js +640 -0
- package/dist/cjs/modules/word/html.js +9 -7
- package/dist/cjs/modules/word/incremental-edit.js +366 -0
- package/dist/cjs/modules/word/index.base.js +370 -137
- package/dist/cjs/modules/word/layout/layout-constants.js +20 -0
- package/dist/cjs/modules/word/layout/layout-full.js +1699 -0
- package/dist/cjs/modules/word/layout/layout-model.js +17 -0
- package/dist/cjs/modules/word/layout/layout.js +1170 -0
- package/dist/cjs/modules/word/layout/render-page.js +1243 -0
- package/dist/cjs/modules/word/markdown.js +19 -0
- package/dist/cjs/modules/word/patcher.js +539 -0
- package/dist/cjs/modules/word/query/compat.js +61 -0
- package/dist/cjs/modules/word/query/data-binding.js +395 -0
- package/dist/cjs/modules/word/query/form-fields.js +272 -0
- package/dist/cjs/modules/word/query/format-search.js +334 -0
- package/dist/cjs/modules/word/query/mail-merge.js +114 -0
- package/dist/cjs/modules/word/query/merge.js +620 -0
- package/dist/cjs/modules/word/query/replace.js +304 -0
- package/dist/cjs/modules/word/query/revisions.js +885 -0
- package/dist/cjs/modules/word/query/search.js +361 -0
- package/dist/cjs/modules/word/query/split.js +138 -0
- package/dist/cjs/modules/word/query/style-resolve.js +374 -0
- package/dist/cjs/modules/word/reader/chart-parser.js +814 -0
- package/dist/cjs/modules/word/reader/comments-parser.js +96 -0
- package/dist/cjs/modules/word/reader/doc-props-parsers.js +194 -0
- package/dist/cjs/modules/word/reader/docx-reader.js +2560 -0
- package/dist/cjs/modules/word/reader/drawing-helpers.js +90 -0
- package/dist/cjs/modules/word/reader/form-field-parser.js +85 -0
- package/dist/cjs/modules/word/reader/image-parsers.js +293 -0
- package/dist/cjs/modules/word/reader/math-parser.js +424 -0
- package/dist/cjs/modules/word/reader/metadata-parsers.js +93 -0
- package/dist/cjs/modules/word/reader/numbering-parser.js +168 -0
- package/dist/cjs/modules/word/reader/paragraph-section-parsers.js +505 -0
- package/dist/cjs/modules/word/reader/parse-utils.js +271 -0
- package/dist/cjs/modules/word/reader/properties-parsers.js +338 -0
- package/dist/cjs/modules/word/reader/reader-context.js +66 -0
- package/dist/cjs/modules/word/reader/sdt-helpers.js +114 -0
- package/dist/cjs/modules/word/reader/settings-parser.js +265 -0
- package/dist/cjs/modules/word/reader/styles-parser.js +149 -0
- package/dist/cjs/modules/word/reader/table-properties-parsers.js +237 -0
- package/dist/cjs/modules/word/reader/theme-parser.js +169 -0
- package/dist/cjs/modules/word/reader/watermark-parser.js +113 -0
- package/dist/cjs/modules/word/security/cfb-reader.js +414 -0
- package/dist/cjs/modules/word/{digital-signatures.js → security/digital-signatures.js} +34 -34
- package/dist/cjs/modules/word/security/document-protection.js +208 -0
- package/dist/cjs/modules/word/security/encryption.js +612 -0
- package/dist/cjs/modules/word/security/policy.js +106 -0
- package/dist/cjs/modules/word/template/template-chart.js +170 -0
- package/dist/cjs/modules/word/template/template-datasource.js +549 -0
- package/dist/cjs/modules/word/template/template-engine.js +1430 -0
- package/dist/cjs/modules/word/units.js +44 -14
- package/dist/cjs/modules/word/{writers → writer}/chart-writer.js +163 -22
- package/dist/cjs/modules/word/writer/checkbox-writer.js +82 -0
- package/dist/cjs/modules/word/{writers → writer}/comment-writer.js +8 -6
- package/dist/cjs/modules/word/writer/common-parts.js +104 -0
- package/dist/cjs/modules/word/{content-types.js → writer/content-types.js} +14 -6
- package/dist/cjs/modules/word/writer/document-writer.js +478 -0
- package/dist/cjs/modules/word/writer/docx-packager.js +1551 -0
- package/dist/cjs/modules/word/{writers → writer}/footnote-writer.js +13 -10
- package/dist/cjs/modules/word/{writers → writer}/header-footer-writer.js +38 -20
- package/dist/cjs/modules/word/{writers → writer}/image-writer.js +11 -7
- package/dist/cjs/modules/word/{writers → writer}/math-writer.js +21 -1
- package/dist/cjs/modules/word/{writers → writer}/numbering-writer.js +11 -4
- package/dist/cjs/modules/word/{writers → writer}/paragraph-writer.js +72 -37
- package/dist/cjs/modules/word/{writers → writer}/parts-writer.js +91 -12
- package/dist/cjs/modules/word/writer/reference-scanners.js +120 -0
- package/dist/cjs/modules/word/writer/relationships.js +124 -0
- package/dist/cjs/modules/word/writer/render-context.js +51 -0
- package/dist/cjs/modules/word/{writers → writer}/run-writer.js +127 -24
- package/dist/cjs/modules/word/writer/sdt-writer.js +192 -0
- package/dist/cjs/modules/word/writer/stream-buf.js +76 -0
- package/dist/cjs/modules/word/writer/streaming-writer.js +1387 -0
- package/dist/cjs/modules/word/writer/string-buf.js +11 -0
- package/dist/cjs/modules/word/{writers → writer}/styles-writer.js +32 -1
- package/dist/cjs/modules/word/{writers → writer}/table-writer.js +94 -11
- package/dist/cjs/utils/crypto.browser.js +3 -1
- package/dist/cjs/utils/crypto.js +4 -1
- package/dist/cjs/utils/font-metrics.js +303 -0
- package/dist/cjs/utils/string-buf.js +92 -0
- package/dist/cjs/utils/theme-colors.js +126 -0
- package/dist/esm/modules/archive/compression/streaming-compress.browser.js +29 -0
- package/dist/esm/modules/archive/compression/streaming-compress.js +9 -0
- package/dist/esm/modules/archive/compression/worker-pool/pool.browser.js +26 -1
- package/dist/esm/modules/archive/fs/archive-file.js +78 -16
- package/dist/esm/modules/archive/unzip/stream.browser.js +43 -2
- package/dist/esm/modules/excel/chart/chart-ex-builder.js +7 -2
- package/dist/esm/modules/excel/chart/chart-ex-renderer.js +4 -9
- package/dist/esm/modules/excel/chart/chart.js +1 -7
- package/dist/esm/modules/excel/stream/workbook-reader.browser.js +25 -1
- package/dist/esm/modules/excel/stream/workbook-reader.js +9 -0
- package/dist/esm/modules/excel/stream/workbook-writer.browser.js +228 -13
- package/dist/esm/modules/excel/utils/string-buf.js +4 -81
- package/dist/esm/modules/excel/workbook.browser.js +135 -25
- package/dist/esm/modules/excel/xlsx/xform/chart/chart-space-xform.js +6 -20
- package/dist/esm/modules/excel/xlsx/xlsx.browser.js +32 -8
- package/dist/esm/modules/excel/xlsx/xlsx.js +9 -1
- package/dist/esm/modules/pdf/excel-bridge.js +32 -0
- package/dist/esm/modules/pdf/font/metrics.js +3 -237
- package/dist/esm/modules/pdf/index.js +1 -1
- package/dist/esm/modules/pdf/render-layout-to-pdf.js +647 -0
- package/dist/esm/modules/pdf/word-bridge.js +122 -274
- package/dist/esm/modules/stream/index.base.js +2 -1
- package/dist/esm/modules/stream/internal/sink-adapter.js +198 -0
- package/dist/esm/modules/stream/pull-stream.js +51 -5
- package/dist/esm/modules/word/advanced/diff.js +167 -0
- package/dist/esm/modules/word/advanced/drawing-shapes.js +268 -0
- package/dist/esm/modules/word/advanced/field-engine.js +1225 -0
- package/dist/esm/modules/word/advanced/glossary.js +79 -0
- package/dist/esm/modules/word/advanced/math-convert.js +595 -0
- package/dist/esm/modules/word/advanced/ole-objects.js +271 -0
- package/dist/esm/modules/word/advanced/style-map.js +322 -0
- package/dist/esm/modules/word/advanced/validation.js +1065 -0
- package/dist/esm/modules/word/advanced/vba-project.js +265 -0
- package/dist/esm/modules/word/bridge/excel-bridge.js +980 -0
- package/dist/esm/modules/word/builder/document-handle.js +664 -0
- package/dist/esm/modules/word/builder/paragraph-builders.js +90 -0
- package/dist/esm/modules/word/builder/run-builders.js +600 -0
- package/dist/esm/modules/word/builder/table-builders.js +45 -0
- package/dist/esm/modules/word/constants.js +109 -1
- package/dist/esm/modules/word/convert/conversion-ir.js +31 -0
- package/dist/esm/modules/word/convert/docx-to-semantic.js +499 -0
- package/dist/esm/modules/word/convert/flat-opc.js +385 -0
- package/dist/esm/modules/word/convert/html/html-import.js +1907 -0
- package/dist/{browser/modules/word → esm/modules/word/convert/html}/html-renderer.js +420 -69
- package/dist/esm/modules/word/convert/html/html.js +15 -0
- package/dist/esm/modules/word/convert/markdown/markdown-import.js +1325 -0
- package/dist/esm/modules/word/convert/markdown/markdown-renderer.js +634 -0
- package/dist/esm/modules/word/convert/markdown/markdown.js +15 -0
- package/dist/esm/modules/word/convert/odt/odt.js +1932 -0
- package/dist/esm/modules/word/core/color-utils.js +43 -0
- package/dist/esm/modules/word/core/internal-utils.js +209 -0
- package/dist/esm/modules/word/core/mapper.js +427 -0
- package/dist/esm/modules/word/core/opc-paths.js +48 -0
- package/dist/esm/modules/word/core/text-utils.js +202 -0
- package/dist/esm/modules/word/core/walker.js +570 -0
- package/dist/esm/modules/word/crypto.js +13 -7
- package/dist/esm/modules/word/document-io.js +80 -197
- package/dist/esm/modules/word/errors.js +54 -2
- package/dist/esm/modules/word/excel.js +13 -0
- package/dist/esm/modules/word/font/font-embed.js +646 -0
- package/dist/{browser/modules/word → esm/modules/word/font}/font-obfuscation.js +4 -9
- package/dist/esm/modules/word/font/hyphenation.js +4210 -0
- package/dist/esm/modules/word/font/text-shaping.js +635 -0
- package/dist/esm/modules/word/html.js +6 -5
- package/dist/esm/modules/word/incremental-edit.js +361 -0
- package/dist/esm/modules/word/index.base.js +138 -29
- package/dist/esm/modules/word/layout/layout-constants.js +17 -0
- package/dist/esm/modules/word/layout/layout-full.js +1696 -0
- package/dist/esm/modules/word/layout/layout-model.js +16 -0
- package/dist/esm/modules/word/layout/layout.js +1167 -0
- package/dist/esm/modules/word/layout/render-page.js +1238 -0
- package/dist/esm/modules/word/markdown.js +13 -0
- package/dist/esm/modules/word/patcher.js +537 -0
- package/dist/esm/modules/word/query/compat.js +58 -0
- package/dist/esm/modules/word/query/data-binding.js +392 -0
- package/dist/esm/modules/word/query/form-fields.js +268 -0
- package/dist/esm/modules/word/query/format-search.js +329 -0
- package/dist/esm/modules/word/query/mail-merge.js +111 -0
- package/dist/esm/modules/word/query/merge.js +617 -0
- package/dist/esm/modules/word/query/replace.js +301 -0
- package/dist/esm/modules/word/query/revisions.js +879 -0
- package/dist/esm/modules/word/query/search.js +346 -0
- package/dist/esm/modules/word/query/split.js +135 -0
- package/dist/esm/modules/word/query/style-resolve.js +368 -0
- package/dist/esm/modules/word/reader/chart-parser.js +810 -0
- package/dist/esm/modules/word/reader/comments-parser.js +92 -0
- package/dist/esm/modules/word/reader/doc-props-parsers.js +190 -0
- package/dist/esm/modules/word/reader/docx-reader.js +2557 -0
- package/dist/esm/modules/word/reader/drawing-helpers.js +84 -0
- package/dist/esm/modules/word/reader/form-field-parser.js +82 -0
- package/dist/esm/modules/word/reader/image-parsers.js +291 -0
- package/dist/esm/modules/word/reader/math-parser.js +422 -0
- package/dist/esm/modules/word/reader/metadata-parsers.js +87 -0
- package/dist/esm/modules/word/reader/numbering-parser.js +166 -0
- package/dist/esm/modules/word/reader/paragraph-section-parsers.js +503 -0
- package/dist/esm/modules/word/reader/parse-utils.js +249 -0
- package/dist/esm/modules/word/reader/properties-parsers.js +332 -0
- package/dist/esm/modules/word/reader/reader-context.js +61 -0
- package/dist/esm/modules/word/reader/sdt-helpers.js +111 -0
- package/dist/esm/modules/word/reader/settings-parser.js +263 -0
- package/dist/esm/modules/word/reader/styles-parser.js +147 -0
- package/dist/esm/modules/word/reader/table-properties-parsers.js +234 -0
- package/dist/esm/modules/word/reader/theme-parser.js +167 -0
- package/dist/esm/modules/word/reader/watermark-parser.js +110 -0
- package/dist/esm/modules/word/security/cfb-reader.js +410 -0
- package/dist/esm/modules/word/{digital-signatures.js → security/digital-signatures.js} +34 -34
- package/dist/esm/modules/word/security/document-protection.js +201 -0
- package/dist/esm/modules/word/security/encryption.js +602 -0
- package/dist/esm/modules/word/security/policy.js +102 -0
- package/dist/esm/modules/word/template/template-chart.js +167 -0
- package/dist/esm/modules/word/template/template-datasource.js +541 -0
- package/dist/esm/modules/word/template/template-engine.js +1435 -0
- package/dist/esm/modules/word/units.js +43 -14
- package/dist/esm/modules/word/{writers → writer}/chart-writer.js +164 -23
- package/dist/esm/modules/word/writer/checkbox-writer.js +79 -0
- package/dist/esm/modules/word/{writers → writer}/comment-writer.js +8 -6
- package/dist/esm/modules/word/writer/common-parts.js +101 -0
- package/dist/{browser/modules/word → esm/modules/word/writer}/content-types.js +14 -6
- package/dist/esm/modules/word/writer/document-writer.js +473 -0
- package/dist/esm/modules/word/writer/docx-packager.js +1515 -0
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/footnote-writer.js +13 -10
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/header-footer-writer.js +39 -21
- package/dist/esm/modules/word/{writers → writer}/image-writer.js +11 -7
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/math-writer.js +21 -1
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/numbering-writer.js +11 -4
- package/dist/esm/modules/word/{writers → writer}/paragraph-writer.js +73 -38
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/parts-writer.js +91 -12
- package/dist/esm/modules/word/writer/reference-scanners.js +111 -0
- package/dist/esm/modules/word/writer/relationships.js +117 -0
- package/dist/esm/modules/word/writer/render-context.js +46 -0
- package/dist/{browser/modules/word/writers → esm/modules/word/writer}/run-writer.js +126 -24
- package/dist/esm/modules/word/writer/sdt-writer.js +189 -0
- package/dist/esm/modules/word/writer/stream-buf.js +73 -0
- package/dist/esm/modules/word/writer/streaming-writer.js +1382 -0
- package/dist/esm/modules/word/writer/string-buf.js +7 -0
- package/dist/esm/modules/word/{writers → writer}/styles-writer.js +32 -1
- package/dist/esm/modules/word/{writers → writer}/table-writer.js +94 -11
- package/dist/esm/utils/crypto.browser.js +3 -1
- package/dist/esm/utils/crypto.js +4 -1
- package/dist/esm/utils/font-metrics.js +293 -0
- package/dist/esm/utils/string-buf.js +89 -0
- package/dist/esm/utils/theme-colors.js +120 -0
- package/dist/iife/excelts.iife.js +70692 -70337
- package/dist/iife/excelts.iife.js.map +1 -1
- package/dist/iife/excelts.iife.min.js +57 -57
- package/dist/types/modules/archive/fs/archive-file.d.ts +8 -5
- package/dist/types/modules/excel/chart/chart-ex-types.d.ts +0 -12
- package/dist/types/modules/excel/chart/chart.d.ts +1 -5
- package/dist/types/modules/excel/chart/types.d.ts +0 -6
- package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +40 -0
- package/dist/types/modules/excel/utils/string-buf.d.ts +5 -26
- package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +19 -9
- package/dist/types/modules/excel/xlsx/xlsx.d.ts +10 -2
- package/dist/types/modules/pdf/excel-bridge.d.ts +30 -1
- package/dist/types/modules/pdf/font/metrics.d.ts +3 -52
- package/dist/types/modules/pdf/index.d.ts +1 -1
- package/dist/types/modules/pdf/render-layout-to-pdf.d.ts +66 -0
- package/dist/types/modules/pdf/word-bridge.d.ts +80 -12
- package/dist/types/modules/stream/index.base.d.ts +2 -0
- package/dist/types/modules/stream/internal/sink-adapter.d.ts +65 -0
- package/dist/types/modules/stream/pull-stream.d.ts +19 -2
- package/dist/types/modules/stream/types.d.ts +13 -1
- package/dist/types/modules/word/advanced/diff.d.ts +61 -0
- package/dist/types/modules/word/advanced/drawing-shapes.d.ts +269 -0
- package/dist/types/modules/word/advanced/field-engine.d.ts +43 -0
- package/dist/types/modules/word/advanced/glossary.d.ts +86 -0
- package/dist/types/modules/word/advanced/math-convert.d.ts +30 -0
- package/dist/types/modules/word/advanced/ole-objects.d.ts +115 -0
- package/dist/types/modules/word/advanced/style-map.d.ts +105 -0
- package/dist/types/modules/word/advanced/validation.d.ts +56 -0
- package/dist/types/modules/word/advanced/vba-project.d.ts +91 -0
- package/dist/types/modules/word/bridge/excel-bridge.d.ts +127 -0
- package/dist/types/modules/word/builder/document-handle.d.ts +151 -0
- package/dist/types/modules/word/builder/paragraph-builders.d.ts +61 -0
- package/dist/types/modules/word/builder/run-builders.d.ts +374 -0
- package/dist/types/modules/word/builder/table-builders.d.ts +23 -0
- package/dist/types/modules/word/constants.d.ts +39 -1
- package/dist/types/modules/word/convert/conversion-ir.d.ts +210 -0
- package/dist/types/modules/word/convert/docx-to-semantic.d.ts +39 -0
- package/dist/types/modules/word/convert/flat-opc.d.ts +44 -0
- package/dist/types/modules/word/convert/html/html-import.d.ts +50 -0
- package/dist/{browser/modules/word → types/modules/word/convert/html}/html-renderer.d.ts +14 -1
- package/dist/types/modules/word/convert/html/html.d.ts +15 -0
- package/dist/types/modules/word/convert/markdown/markdown-import.d.ts +68 -0
- package/dist/types/modules/word/convert/markdown/markdown-renderer.d.ts +25 -0
- package/dist/types/modules/word/convert/markdown/markdown.d.ts +15 -0
- package/dist/types/modules/word/convert/odt/odt.d.ts +41 -0
- package/dist/types/modules/word/{color-utils.d.ts → core/color-utils.d.ts} +8 -1
- package/dist/types/modules/word/core/internal-utils.d.ts +90 -0
- package/dist/types/modules/word/core/mapper.d.ts +44 -0
- package/dist/types/modules/word/core/opc-paths.d.ts +33 -0
- package/dist/types/modules/word/core/text-utils.d.ts +38 -0
- package/dist/types/modules/word/core/walker.d.ts +119 -0
- package/dist/types/modules/word/crypto.d.ts +14 -9
- package/dist/types/modules/word/document-io.d.ts +59 -27
- package/dist/types/modules/word/errors.d.ts +44 -1
- package/dist/types/modules/word/excel.d.ts +14 -0
- package/dist/types/modules/word/font/font-embed.d.ts +112 -0
- package/dist/types/modules/word/font/hyphenation.d.ts +65 -0
- package/dist/types/modules/word/font/text-shaping.d.ts +58 -0
- package/dist/types/modules/word/html.d.ts +7 -6
- package/dist/types/modules/word/incremental-edit.d.ts +123 -0
- package/dist/types/modules/word/index.base.d.ts +194 -10
- package/dist/types/modules/word/layout/layout-constants.d.ts +17 -0
- package/dist/types/modules/word/layout/layout-full.d.ts +53 -0
- package/dist/types/modules/word/layout/layout-model.d.ts +344 -0
- package/dist/types/modules/word/layout/layout.d.ts +63 -0
- package/dist/types/modules/word/layout/render-page.d.ts +57 -0
- package/dist/types/modules/word/markdown.d.ts +14 -0
- package/dist/types/modules/word/patcher.d.ts +62 -0
- package/dist/types/modules/word/query/compat.d.ts +25 -0
- package/dist/types/modules/word/query/data-binding.d.ts +22 -0
- package/dist/types/modules/word/query/form-fields.d.ts +41 -0
- package/dist/types/modules/word/query/format-search.d.ts +99 -0
- package/dist/types/modules/word/query/mail-merge.d.ts +25 -0
- package/dist/types/modules/word/query/merge.d.ts +50 -0
- package/dist/types/modules/word/query/replace.d.ts +47 -0
- package/dist/types/modules/word/query/revisions.d.ts +67 -0
- package/dist/types/modules/word/query/search.d.ts +129 -0
- package/dist/types/modules/word/query/split.d.ts +44 -0
- package/dist/types/modules/word/query/style-resolve.d.ts +104 -0
- package/dist/types/modules/word/reader/chart-parser.d.ts +20 -0
- package/dist/types/modules/word/reader/comments-parser.d.ts +26 -0
- package/dist/types/modules/word/reader/doc-props-parsers.d.ts +15 -0
- package/dist/types/modules/word/reader/docx-reader.d.ts +27 -0
- package/dist/types/modules/word/reader/drawing-helpers.d.ts +27 -0
- package/dist/types/modules/word/reader/form-field-parser.d.ts +21 -0
- package/dist/types/modules/word/reader/image-parsers.d.ts +11 -0
- package/dist/types/modules/word/reader/math-parser.d.ts +12 -0
- package/dist/types/modules/word/reader/metadata-parsers.d.ts +17 -0
- package/dist/types/modules/word/reader/numbering-parser.d.ts +13 -0
- package/dist/types/modules/word/reader/paragraph-section-parsers.d.ts +12 -0
- package/dist/types/modules/word/reader/parse-utils.d.ts +91 -0
- package/dist/types/modules/word/reader/properties-parsers.d.ts +21 -0
- package/dist/types/modules/word/reader/reader-context.d.ts +69 -0
- package/dist/types/modules/word/reader/sdt-helpers.d.ts +29 -0
- package/dist/types/modules/word/reader/settings-parser.d.ts +8 -0
- package/dist/types/modules/word/reader/styles-parser.d.ts +12 -0
- package/dist/types/modules/word/reader/table-properties-parsers.d.ts +12 -0
- package/dist/types/modules/word/reader/theme-parser.d.ts +8 -0
- package/dist/types/modules/word/reader/watermark-parser.d.ts +15 -0
- package/dist/types/modules/word/security/cfb-reader.d.ts +37 -0
- package/dist/types/modules/word/{digital-signatures.d.ts → security/digital-signatures.d.ts} +19 -11
- package/dist/types/modules/word/security/document-protection.d.ts +93 -0
- package/dist/{browser/modules/word → types/modules/word/security}/encryption.d.ts +51 -4
- package/dist/types/modules/word/security/policy.d.ts +80 -0
- package/dist/types/modules/word/template/template-chart.d.ts +56 -0
- package/dist/types/modules/word/template/template-datasource.d.ts +154 -0
- package/dist/types/modules/word/template/template-engine.d.ts +121 -0
- package/dist/types/modules/word/types.d.ts +224 -25
- package/dist/types/modules/word/units.d.ts +26 -0
- package/dist/types/modules/word/writer/checkbox-writer.d.ts +17 -0
- package/dist/{browser/modules/word/writers → types/modules/word/writer}/comment-writer.d.ts +2 -1
- package/dist/types/modules/word/writer/common-parts.d.ts +57 -0
- package/dist/{browser/modules/word → types/modules/word/writer}/content-types.d.ts +2 -2
- package/dist/types/modules/word/writer/document-writer.d.ts +24 -0
- package/dist/types/modules/word/writer/docx-packager.d.ts +35 -0
- package/dist/{browser/modules/word/writers → types/modules/word/writer}/footnote-writer.d.ts +3 -2
- package/dist/{browser/modules/word/writers → types/modules/word/writer}/header-footer-writer.d.ts +3 -2
- package/dist/{browser/modules/word/writers → types/modules/word/writer}/image-writer.d.ts +1 -1
- package/dist/types/modules/word/writer/math-writer.d.ts +20 -0
- package/dist/types/modules/word/{writers → writer}/numbering-writer.d.ts +1 -1
- package/dist/types/modules/word/{writers → writer}/paragraph-writer.d.ts +2 -1
- package/dist/types/modules/word/{writers → writer}/parts-writer.d.ts +3 -3
- package/dist/types/modules/word/writer/reference-scanners.d.ts +42 -0
- package/dist/types/modules/word/writer/relationships.d.ts +52 -0
- package/dist/types/modules/word/writer/render-context.d.ts +124 -0
- package/dist/types/modules/word/{writers → writer}/run-writer.d.ts +10 -1
- package/dist/types/modules/word/writer/sdt-writer.d.ts +25 -0
- package/dist/types/modules/word/writer/stream-buf.d.ts +37 -0
- package/dist/types/modules/word/writer/streaming-writer.d.ts +344 -0
- package/dist/types/modules/word/writer/string-buf.d.ts +8 -0
- package/dist/types/modules/word/{writers → writer}/table-writer.d.ts +2 -1
- package/dist/types/modules/xml/types.d.ts +22 -0
- package/dist/types/utils/crypto.browser.d.ts +3 -1
- package/dist/types/utils/crypto.d.ts +4 -1
- package/dist/types/utils/font-metrics.d.ts +63 -0
- package/dist/types/utils/string-buf.d.ts +42 -0
- package/dist/types/utils/theme-colors.d.ts +55 -0
- package/package.json +121 -39
- package/dist/browser/modules/word/color-utils.js +0 -94
- package/dist/browser/modules/word/document.d.ts +0 -657
- package/dist/browser/modules/word/document.js +0 -1533
- package/dist/browser/modules/word/docx-packager.d.ts +0 -14
- package/dist/browser/modules/word/docx-packager.js +0 -822
- package/dist/browser/modules/word/docx-reader.d.ts +0 -11
- package/dist/browser/modules/word/docx-reader.js +0 -4929
- package/dist/browser/modules/word/encryption.js +0 -274
- package/dist/browser/modules/word/internal-utils.d.ts +0 -23
- package/dist/browser/modules/word/internal-utils.js +0 -54
- package/dist/browser/modules/word/namespaces.d.ts +0 -159
- package/dist/browser/modules/word/namespaces.js +0 -189
- package/dist/browser/modules/word/relationships.d.ts +0 -30
- package/dist/browser/modules/word/relationships.js +0 -48
- package/dist/browser/modules/word/writers/checkbox-writer.d.ts +0 -9
- package/dist/browser/modules/word/writers/checkbox-writer.js +0 -42
- package/dist/browser/modules/word/writers/document-writer.d.ts +0 -16
- package/dist/browser/modules/word/writers/document-writer.js +0 -461
- package/dist/browser/modules/word/writers/math-writer.d.ts +0 -9
- package/dist/cjs/modules/word/color-utils.js +0 -97
- package/dist/cjs/modules/word/document.js +0 -1645
- package/dist/cjs/modules/word/docx-packager.js +0 -825
- package/dist/cjs/modules/word/docx-reader.js +0 -4932
- package/dist/cjs/modules/word/encryption.js +0 -282
- package/dist/cjs/modules/word/internal-utils.js +0 -59
- package/dist/cjs/modules/word/namespaces.js +0 -192
- package/dist/cjs/modules/word/relationships.js +0 -55
- package/dist/cjs/modules/word/writers/checkbox-writer.js +0 -45
- package/dist/cjs/modules/word/writers/document-writer.js +0 -465
- package/dist/esm/modules/word/color-utils.js +0 -94
- package/dist/esm/modules/word/document.js +0 -1533
- package/dist/esm/modules/word/docx-packager.js +0 -822
- package/dist/esm/modules/word/docx-reader.js +0 -4929
- package/dist/esm/modules/word/encryption.js +0 -274
- package/dist/esm/modules/word/internal-utils.js +0 -54
- package/dist/esm/modules/word/namespaces.js +0 -189
- package/dist/esm/modules/word/relationships.js +0 -48
- package/dist/esm/modules/word/writers/checkbox-writer.js +0 -42
- package/dist/esm/modules/word/writers/document-writer.js +0 -461
- package/dist/types/modules/word/document.d.ts +0 -657
- package/dist/types/modules/word/docx-packager.d.ts +0 -14
- package/dist/types/modules/word/docx-reader.d.ts +0 -11
- package/dist/types/modules/word/internal-utils.d.ts +0 -23
- package/dist/types/modules/word/namespaces.d.ts +0 -159
- package/dist/types/modules/word/relationships.d.ts +0 -30
- package/dist/types/modules/word/writers/checkbox-writer.d.ts +0 -9
- package/dist/types/modules/word/writers/document-writer.d.ts +0 -16
- package/dist/types/modules/word/writers/math-writer.d.ts +0 -9
- /package/dist/browser/modules/word/{font-obfuscation.d.ts → font/font-obfuscation.d.ts} +0 -0
- /package/dist/browser/modules/word/{writers → writer}/chart-writer.d.ts +0 -0
- /package/dist/browser/modules/word/{writers → writer}/section-writer.d.ts +0 -0
- /package/dist/browser/modules/word/{writers → writer}/section-writer.js +0 -0
- /package/dist/browser/modules/word/{writers → writer}/styles-writer.d.ts +0 -0
- /package/dist/browser/modules/word/{writers → writer}/textbox-writer.d.ts +0 -0
- /package/dist/browser/modules/word/{writers → writer}/textbox-writer.js +0 -0
- /package/dist/browser/modules/word/{writers → writer}/toc-writer.d.ts +0 -0
- /package/dist/browser/modules/word/{writers → writer}/toc-writer.js +0 -0
- /package/dist/cjs/modules/word/{writers → writer}/section-writer.js +0 -0
- /package/dist/cjs/modules/word/{writers → writer}/textbox-writer.js +0 -0
- /package/dist/cjs/modules/word/{writers → writer}/toc-writer.js +0 -0
- /package/dist/esm/modules/word/{writers → writer}/section-writer.js +0 -0
- /package/dist/esm/modules/word/{writers → writer}/textbox-writer.js +0 -0
- /package/dist/esm/modules/word/{writers → writer}/toc-writer.js +0 -0
- /package/dist/types/modules/word/{font-obfuscation.d.ts → font/font-obfuscation.d.ts} +0 -0
- /package/dist/types/modules/word/{writers → writer}/chart-writer.d.ts +0 -0
- /package/dist/types/modules/word/{writers → writer}/section-writer.d.ts +0 -0
- /package/dist/types/modules/word/{writers → writer}/styles-writer.d.ts +0 -0
- /package/dist/types/modules/word/{writers → writer}/textbox-writer.d.ts +0 -0
- /package/dist/types/modules/word/{writers → writer}/toc-writer.d.ts +0 -0
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DOCX Module - Enhanced DrawingML Shape Builder
|
|
3
|
+
*
|
|
4
|
+
* Provides a comprehensive API for creating DrawingML shapes beyond the
|
|
5
|
+
* basic shape type. Includes support for:
|
|
6
|
+
* - All 187 preset geometry types
|
|
7
|
+
* - Gradient and pattern fills
|
|
8
|
+
* - Shadow, glow, reflection effects
|
|
9
|
+
* - 3D rotation and bevel
|
|
10
|
+
* - Shape connectors and groups
|
|
11
|
+
* - Custom geometry paths
|
|
12
|
+
* - Text body formatting within shapes
|
|
13
|
+
*/
|
|
14
|
+
import type { DrawingShape, Paragraph, HexColor, Emu, HorizontalPositionRelative, VerticalPositionRelative, WrapStyle, WrapTextSide } from "../types.js";
|
|
15
|
+
/** All standard OOXML preset shape types. */
|
|
16
|
+
export type StandardShapeType = "rect" | "roundRect" | "snip1Rect" | "snip2SameRect" | "snip2DiagRect" | "snipRoundRect" | "round1Rect" | "round2SameRect" | "round2DiagRect" | "ellipse" | "triangle" | "rtTriangle" | "parallelogram" | "trapezoid" | "diamond" | "pentagon" | "hexagon" | "heptagon" | "octagon" | "decagon" | "dodecagon" | "pie" | "chord" | "teardrop" | "frame" | "halfFrame" | "corner" | "diagStripe" | "plus" | "cross" | "cube" | "can" | "foldedCorner" | "smileyFace" | "heart" | "lightningBolt" | "sun" | "moon" | "cloud" | "arc" | "bracketPair" | "bracePair" | "plaque" | "donut" | "noSmoking" | "blockArc" | "gear6" | "gear9" | "rightArrow" | "leftArrow" | "upArrow" | "downArrow" | "leftRightArrow" | "upDownArrow" | "quadArrow" | "leftRightUpArrow" | "bentArrow" | "uturnArrow" | "leftUpArrow" | "bentUpArrow" | "curvedRightArrow" | "curvedLeftArrow" | "curvedUpArrow" | "curvedDownArrow" | "stripedRightArrow" | "notchedRightArrow" | "homePlate" | "chevron" | "rightArrowCallout" | "downArrowCallout" | "leftArrowCallout" | "upArrowCallout" | "leftRightArrowCallout" | "quadArrowCallout" | "circularArrow" | "flowChartProcess" | "flowChartAlternateProcess" | "flowChartDecision" | "flowChartInputOutput" | "flowChartPredefinedProcess" | "flowChartInternalStorage" | "flowChartDocument" | "flowChartMultidocument" | "flowChartTerminator" | "flowChartPreparation" | "flowChartManualInput" | "flowChartManualOperation" | "flowChartConnector" | "flowChartOffpageConnector" | "flowChartPunchedCard" | "flowChartPunchedTape" | "flowChartSummingJunction" | "flowChartOr" | "flowChartCollate" | "flowChartSort" | "flowChartExtract" | "flowChartMerge" | "flowChartOnlineStorage" | "flowChartDelay" | "flowChartMagneticTape" | "flowChartMagneticDisk" | "flowChartMagneticDrum" | "flowChartDisplay" | "wedgeRectCallout" | "wedgeRoundRectCallout" | "wedgeEllipseCallout" | "cloudCallout" | "borderCallout1" | "borderCallout2" | "borderCallout3" | "accentCallout1" | "accentCallout2" | "accentCallout3" | "callout1" | "callout2" | "callout3" | "accentBorderCallout1" | "accentBorderCallout2" | "accentBorderCallout3" | "irregularSeal1" | "irregularSeal2" | "star4" | "star5" | "star6" | "star7" | "star8" | "star10" | "star12" | "star16" | "star24" | "star32" | "ribbon" | "ribbon2" | "ellipseRibbon" | "ellipseRibbon2" | "verticalScroll" | "horizontalScroll" | "wave" | "doubleWave" | "mathPlus" | "mathMinus" | "mathMultiply" | "mathDivide" | "mathEqual" | "mathNotEqual" | "line" | "straightConnector1" | "bentConnector2" | "bentConnector3" | "bentConnector4" | "bentConnector5" | "curvedConnector2" | "curvedConnector3" | "curvedConnector4" | "curvedConnector5" | "actionButtonBlank" | "actionButtonHome" | "actionButtonHelp" | "actionButtonInformation" | "actionButtonBackPrevious" | "actionButtonForwardNext" | "actionButtonBeginning" | "actionButtonEnd" | "actionButtonReturn" | "actionButtonDocument" | "actionButtonSound" | "actionButtonMovie";
|
|
17
|
+
/** Solid fill. */
|
|
18
|
+
export interface SolidFill {
|
|
19
|
+
readonly type: "solid";
|
|
20
|
+
readonly color: HexColor;
|
|
21
|
+
/** Transparency (0-100, percent). */
|
|
22
|
+
readonly transparency?: number;
|
|
23
|
+
}
|
|
24
|
+
/** Gradient stop. */
|
|
25
|
+
export interface GradientStop {
|
|
26
|
+
readonly position: number;
|
|
27
|
+
readonly color: HexColor;
|
|
28
|
+
readonly transparency?: number;
|
|
29
|
+
}
|
|
30
|
+
/** Gradient fill. */
|
|
31
|
+
export interface GradientFill {
|
|
32
|
+
readonly type: "gradient";
|
|
33
|
+
readonly stops: readonly GradientStop[];
|
|
34
|
+
/** Angle in 60,000ths of a degree. 0 = left-to-right. */
|
|
35
|
+
readonly angle?: number;
|
|
36
|
+
/** Gradient type: linear or radial (path). */
|
|
37
|
+
readonly gradientType?: "linear" | "radial";
|
|
38
|
+
}
|
|
39
|
+
/** Pattern fill. */
|
|
40
|
+
export interface PatternFill {
|
|
41
|
+
readonly type: "pattern";
|
|
42
|
+
/** Pattern preset (e.g. "pct10", "dkHorz", "ltVert", "dnDiag"). */
|
|
43
|
+
readonly preset: string;
|
|
44
|
+
readonly foregroundColor: HexColor;
|
|
45
|
+
readonly backgroundColor: HexColor;
|
|
46
|
+
}
|
|
47
|
+
/** No fill (transparent). */
|
|
48
|
+
export interface NoFill {
|
|
49
|
+
readonly type: "none";
|
|
50
|
+
}
|
|
51
|
+
/** Shape fill specification. */
|
|
52
|
+
export type ShapeFill = SolidFill | GradientFill | PatternFill | NoFill;
|
|
53
|
+
/** Line dash style. */
|
|
54
|
+
export type LineDash = "solid" | "dot" | "dash" | "lgDash" | "dashDot" | "lgDashDot" | "lgDashDotDot" | "sysDot" | "sysDash" | "sysDashDot" | "sysDashDotDot";
|
|
55
|
+
/** Line end type (arrow head). */
|
|
56
|
+
export type LineEndType = "none" | "triangle" | "stealth" | "diamond" | "oval" | "arrow";
|
|
57
|
+
/** Line end size. */
|
|
58
|
+
export type LineEndSize = "sm" | "med" | "lg";
|
|
59
|
+
/** Line/outline specification. */
|
|
60
|
+
export interface ShapeOutline {
|
|
61
|
+
/** Width in EMU. */
|
|
62
|
+
readonly width?: Emu;
|
|
63
|
+
/** Color. */
|
|
64
|
+
readonly color?: HexColor;
|
|
65
|
+
/** Dash style. */
|
|
66
|
+
readonly dash?: LineDash;
|
|
67
|
+
/** Join type. */
|
|
68
|
+
readonly join?: "round" | "bevel" | "miter";
|
|
69
|
+
/** Head end (start of line). */
|
|
70
|
+
readonly headEnd?: {
|
|
71
|
+
type: LineEndType;
|
|
72
|
+
width?: LineEndSize;
|
|
73
|
+
length?: LineEndSize;
|
|
74
|
+
};
|
|
75
|
+
/** Tail end (end of line). */
|
|
76
|
+
readonly tailEnd?: {
|
|
77
|
+
type: LineEndType;
|
|
78
|
+
width?: LineEndSize;
|
|
79
|
+
length?: LineEndSize;
|
|
80
|
+
};
|
|
81
|
+
/** No outline. */
|
|
82
|
+
readonly noLine?: boolean;
|
|
83
|
+
}
|
|
84
|
+
/** Shadow effect. */
|
|
85
|
+
export interface ShadowEffect {
|
|
86
|
+
readonly type: "outer" | "inner";
|
|
87
|
+
readonly color: HexColor;
|
|
88
|
+
readonly transparency?: number;
|
|
89
|
+
/** Blur radius in EMU. */
|
|
90
|
+
readonly blurRadius?: Emu;
|
|
91
|
+
/** Distance in EMU. */
|
|
92
|
+
readonly distance?: Emu;
|
|
93
|
+
/** Direction in 60,000ths of a degree. */
|
|
94
|
+
readonly direction?: number;
|
|
95
|
+
}
|
|
96
|
+
/** Glow effect. */
|
|
97
|
+
export interface GlowEffect {
|
|
98
|
+
readonly color: HexColor;
|
|
99
|
+
readonly transparency?: number;
|
|
100
|
+
/** Radius in EMU. */
|
|
101
|
+
readonly radius: Emu;
|
|
102
|
+
}
|
|
103
|
+
/** Reflection effect. */
|
|
104
|
+
export interface ReflectionEffect {
|
|
105
|
+
/** Blur radius in EMU. */
|
|
106
|
+
readonly blurRadius?: Emu;
|
|
107
|
+
/** Start transparency (0-100). */
|
|
108
|
+
readonly startOpacity?: number;
|
|
109
|
+
/** End transparency (0-100). */
|
|
110
|
+
readonly endOpacity?: number;
|
|
111
|
+
/** Distance in EMU. */
|
|
112
|
+
readonly distance?: Emu;
|
|
113
|
+
/** Direction in 60,000ths of a degree. */
|
|
114
|
+
readonly direction?: number;
|
|
115
|
+
/** Fade direction. */
|
|
116
|
+
readonly fadeDirection?: number;
|
|
117
|
+
}
|
|
118
|
+
/** 3D effect. */
|
|
119
|
+
export interface Effect3D {
|
|
120
|
+
/** Rotation on X/Y/Z axes (in 60,000ths of a degree). */
|
|
121
|
+
readonly rotX?: number;
|
|
122
|
+
readonly rotY?: number;
|
|
123
|
+
readonly rotZ?: number;
|
|
124
|
+
/** Camera preset. */
|
|
125
|
+
readonly camera?: "orthographicFront" | "perspectiveFront" | "isometricTopDown" | "obliqueTopLeft";
|
|
126
|
+
/** Bevel top. */
|
|
127
|
+
readonly bevelTop?: {
|
|
128
|
+
width: Emu;
|
|
129
|
+
height: Emu;
|
|
130
|
+
preset?: string;
|
|
131
|
+
};
|
|
132
|
+
/** Bevel bottom. */
|
|
133
|
+
readonly bevelBottom?: {
|
|
134
|
+
width: Emu;
|
|
135
|
+
height: Emu;
|
|
136
|
+
preset?: string;
|
|
137
|
+
};
|
|
138
|
+
/** Extrusion depth in EMU. */
|
|
139
|
+
readonly extrusionDepth?: Emu;
|
|
140
|
+
/** Extrusion color. */
|
|
141
|
+
readonly extrusionColor?: HexColor;
|
|
142
|
+
}
|
|
143
|
+
/** Shape effects. */
|
|
144
|
+
export interface ShapeEffects {
|
|
145
|
+
readonly shadow?: ShadowEffect;
|
|
146
|
+
readonly glow?: GlowEffect;
|
|
147
|
+
readonly reflection?: ReflectionEffect;
|
|
148
|
+
readonly effect3d?: Effect3D;
|
|
149
|
+
/** Soft edges radius in EMU. */
|
|
150
|
+
readonly softEdges?: Emu;
|
|
151
|
+
}
|
|
152
|
+
/** Vertical text anchor. */
|
|
153
|
+
export type TextVerticalAnchor = "t" | "ctr" | "b";
|
|
154
|
+
/** Text wrapping type within shape. */
|
|
155
|
+
export type TextWrap = "none" | "square";
|
|
156
|
+
/** Text body configuration for shapes. */
|
|
157
|
+
export interface ShapeTextBody {
|
|
158
|
+
/** Content paragraphs. */
|
|
159
|
+
readonly paragraphs: readonly Paragraph[];
|
|
160
|
+
/** Vertical alignment. */
|
|
161
|
+
readonly anchor?: TextVerticalAnchor;
|
|
162
|
+
/** Wrap text within shape. */
|
|
163
|
+
readonly wrap?: TextWrap;
|
|
164
|
+
/** Internal margins (EMU). */
|
|
165
|
+
readonly margins?: {
|
|
166
|
+
readonly top?: Emu;
|
|
167
|
+
readonly bottom?: Emu;
|
|
168
|
+
readonly left?: Emu;
|
|
169
|
+
readonly right?: Emu;
|
|
170
|
+
};
|
|
171
|
+
/** Auto-fit text. */
|
|
172
|
+
readonly autoFit?: "none" | "normal" | "shrink";
|
|
173
|
+
/** Vertical text (for CJK). */
|
|
174
|
+
readonly vertical?: boolean;
|
|
175
|
+
/** Number of columns. */
|
|
176
|
+
readonly columns?: number;
|
|
177
|
+
/** Column spacing in EMU. */
|
|
178
|
+
readonly columnSpacing?: Emu;
|
|
179
|
+
}
|
|
180
|
+
/** Complete shape creation options. */
|
|
181
|
+
export interface CreateShapeOptions {
|
|
182
|
+
/** Shape type (preset geometry). */
|
|
183
|
+
readonly shapeType: string;
|
|
184
|
+
/** Width in EMU. */
|
|
185
|
+
readonly width: Emu;
|
|
186
|
+
/** Height in EMU. */
|
|
187
|
+
readonly height: Emu;
|
|
188
|
+
/** Fill specification. */
|
|
189
|
+
readonly fill?: ShapeFill;
|
|
190
|
+
/** Outline specification. */
|
|
191
|
+
readonly outline?: ShapeOutline;
|
|
192
|
+
/** Effects (shadow, glow, etc.). */
|
|
193
|
+
readonly effects?: ShapeEffects;
|
|
194
|
+
/** Text content. */
|
|
195
|
+
readonly textBody?: ShapeTextBody;
|
|
196
|
+
/** Alternative text (accessibility). */
|
|
197
|
+
readonly altText?: string;
|
|
198
|
+
/** Shape name. */
|
|
199
|
+
readonly name?: string;
|
|
200
|
+
/** Rotation in 60,000ths of a degree. */
|
|
201
|
+
readonly rotation?: number;
|
|
202
|
+
/** Flip horizontally. */
|
|
203
|
+
readonly flipH?: boolean;
|
|
204
|
+
/** Flip vertically. */
|
|
205
|
+
readonly flipV?: boolean;
|
|
206
|
+
/** Horizontal position. */
|
|
207
|
+
readonly horizontalPosition?: {
|
|
208
|
+
readonly relativeTo?: HorizontalPositionRelative;
|
|
209
|
+
readonly offset?: Emu;
|
|
210
|
+
readonly align?: "left" | "center" | "right";
|
|
211
|
+
};
|
|
212
|
+
/** Vertical position. */
|
|
213
|
+
readonly verticalPosition?: {
|
|
214
|
+
readonly relativeTo?: VerticalPositionRelative;
|
|
215
|
+
readonly offset?: Emu;
|
|
216
|
+
readonly align?: "top" | "center" | "bottom";
|
|
217
|
+
};
|
|
218
|
+
/** Text wrapping. */
|
|
219
|
+
readonly wrap?: {
|
|
220
|
+
readonly style: WrapStyle;
|
|
221
|
+
readonly side?: WrapTextSide;
|
|
222
|
+
};
|
|
223
|
+
/** Behind document text. */
|
|
224
|
+
readonly behindDoc?: boolean;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Create an enhanced DrawingML shape with full styling options.
|
|
228
|
+
*
|
|
229
|
+
* Basic properties (solid fill, outline color/width, text paragraphs, positioning)
|
|
230
|
+
* are mapped directly to the `DrawingShape` interface fields. Advanced properties
|
|
231
|
+
* (gradient/pattern fills, effects, line details, text body formatting) are
|
|
232
|
+
* serialized into the `rawXml` field for preservation during packaging.
|
|
233
|
+
*
|
|
234
|
+
* @param options - Complete shape creation options.
|
|
235
|
+
* @returns A DrawingShape element for the document body.
|
|
236
|
+
*/
|
|
237
|
+
export declare function createShape(options: CreateShapeOptions): DrawingShape;
|
|
238
|
+
/**
|
|
239
|
+
* Create a simple rectangle shape.
|
|
240
|
+
*/
|
|
241
|
+
export declare function createRect(width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
242
|
+
/**
|
|
243
|
+
* Create a rounded rectangle shape.
|
|
244
|
+
*/
|
|
245
|
+
export declare function createRoundRect(width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
246
|
+
/**
|
|
247
|
+
* Create an ellipse/circle shape.
|
|
248
|
+
*/
|
|
249
|
+
export declare function createEllipse(width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
250
|
+
/**
|
|
251
|
+
* Create a line connector.
|
|
252
|
+
*/
|
|
253
|
+
export declare function createLine(width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
254
|
+
/**
|
|
255
|
+
* Create an arrow shape.
|
|
256
|
+
*/
|
|
257
|
+
export declare function createArrow(direction: "right" | "left" | "up" | "down", width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
258
|
+
/**
|
|
259
|
+
* Create a flowchart shape.
|
|
260
|
+
*/
|
|
261
|
+
export declare function createFlowchartShape(kind: "process" | "decision" | "terminator" | "document" | "data" | "connector" | "preparation", width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
262
|
+
/**
|
|
263
|
+
* Create a callout shape.
|
|
264
|
+
*/
|
|
265
|
+
export declare function createCallout(style: "rect" | "roundRect" | "ellipse" | "cloud", width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
266
|
+
/**
|
|
267
|
+
* Create a star shape.
|
|
268
|
+
*/
|
|
269
|
+
export declare function createStar(points: 4 | 5 | 6 | 7 | 8 | 10 | 12 | 16 | 24 | 32, width: Emu, height: Emu, options?: Partial<Omit<CreateShapeOptions, "shapeType" | "width" | "height">>): DrawingShape;
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DOCX Module - Enhanced DrawingML Shape Builder
|
|
3
|
+
*
|
|
4
|
+
* Provides a comprehensive API for creating DrawingML shapes beyond the
|
|
5
|
+
* basic shape type. Includes support for:
|
|
6
|
+
* - All 187 preset geometry types
|
|
7
|
+
* - Gradient and pattern fills
|
|
8
|
+
* - Shadow, glow, reflection effects
|
|
9
|
+
* - 3D rotation and bevel
|
|
10
|
+
* - Shape connectors and groups
|
|
11
|
+
* - Custom geometry paths
|
|
12
|
+
* - Text body formatting within shapes
|
|
13
|
+
*/
|
|
14
|
+
import { xmlEncodeAttr } from "../../xml/encode.js";
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// Shape Builder Functions
|
|
17
|
+
// =============================================================================
|
|
18
|
+
/**
|
|
19
|
+
* Create an enhanced DrawingML shape with full styling options.
|
|
20
|
+
*
|
|
21
|
+
* Basic properties (solid fill, outline color/width, text paragraphs, positioning)
|
|
22
|
+
* are mapped directly to the `DrawingShape` interface fields. Advanced properties
|
|
23
|
+
* (gradient/pattern fills, effects, line details, text body formatting) are
|
|
24
|
+
* serialized into the `rawXml` field for preservation during packaging.
|
|
25
|
+
*
|
|
26
|
+
* @param options - Complete shape creation options.
|
|
27
|
+
* @returns A DrawingShape element for the document body.
|
|
28
|
+
*/
|
|
29
|
+
export function createShape(options) {
|
|
30
|
+
// Convert fill to simple properties for the DrawingShape interface
|
|
31
|
+
let fillColor;
|
|
32
|
+
let noFill = false;
|
|
33
|
+
if (options.fill) {
|
|
34
|
+
if (options.fill.type === "solid") {
|
|
35
|
+
fillColor = options.fill.color;
|
|
36
|
+
}
|
|
37
|
+
else if (options.fill.type === "none") {
|
|
38
|
+
noFill = true;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
let outlineColor;
|
|
42
|
+
let outlineWidth;
|
|
43
|
+
let noOutline = false;
|
|
44
|
+
if (options.outline) {
|
|
45
|
+
outlineColor = options.outline.color;
|
|
46
|
+
outlineWidth = options.outline.width;
|
|
47
|
+
noOutline = options.outline.noLine ?? false;
|
|
48
|
+
}
|
|
49
|
+
// Serialize advanced properties that DrawingShape can't represent directly.
|
|
50
|
+
// The writer needs them split because the OOXML schema requires fill
|
|
51
|
+
// fragments to precede a:ln while effect/3D fragments must follow it.
|
|
52
|
+
const advanced = serializeAdvancedProperties(options);
|
|
53
|
+
const rawXml = (advanced.fillXml ?? "") + (advanced.effectsXml ?? "");
|
|
54
|
+
return {
|
|
55
|
+
type: "drawingShape",
|
|
56
|
+
shapeType: options.shapeType,
|
|
57
|
+
width: options.width,
|
|
58
|
+
height: options.height,
|
|
59
|
+
fillColor,
|
|
60
|
+
noFill,
|
|
61
|
+
outlineColor,
|
|
62
|
+
outlineWidth,
|
|
63
|
+
noOutline,
|
|
64
|
+
textContent: options.textBody?.paragraphs,
|
|
65
|
+
altText: options.altText,
|
|
66
|
+
name: options.name,
|
|
67
|
+
horizontalPosition: options.horizontalPosition,
|
|
68
|
+
verticalPosition: options.verticalPosition,
|
|
69
|
+
wrap: options.wrap,
|
|
70
|
+
behindDoc: options.behindDoc,
|
|
71
|
+
rotation: options.rotation,
|
|
72
|
+
rawXml: rawXml.length > 0 ? rawXml : undefined,
|
|
73
|
+
_advancedFillXml: advanced.fillXml,
|
|
74
|
+
_advancedEffectsXml: advanced.effectsXml
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Serialize advanced shape properties into XML fragments suitable for
|
|
79
|
+
* insertion inside `wps:spPr`. Returns them split into the two slots the
|
|
80
|
+
* OOXML schema cares about:
|
|
81
|
+
* - `fillXml` is inserted between `a:prstGeom` and `a:ln`
|
|
82
|
+
* - `effectsXml` is inserted after `a:ln` (effectLst → scene3d → sp3d)
|
|
83
|
+
*/
|
|
84
|
+
function serializeAdvancedProperties(options) {
|
|
85
|
+
const fillParts = [];
|
|
86
|
+
const effectParts = [];
|
|
87
|
+
// Gradient fill
|
|
88
|
+
if (options.fill && options.fill.type === "gradient") {
|
|
89
|
+
const gf = options.fill;
|
|
90
|
+
const stops = gf.stops
|
|
91
|
+
.map(s => `<a:gs pos="${s.position}"><a:srgbClr val="${xmlEncodeAttr(s.color)}"${s.transparency ? ` alpha="${Math.round((100 - s.transparency) * 1000)}"` : ""}/></a:gs>`)
|
|
92
|
+
.join("");
|
|
93
|
+
const angle = gf.angle !== undefined ? ` ang="${gf.angle}"` : "";
|
|
94
|
+
fillParts.push(`<a:gradFill><a:gsLst>${stops}</a:gsLst><a:lin${angle} scaled="1"/></a:gradFill>`);
|
|
95
|
+
}
|
|
96
|
+
// Pattern fill
|
|
97
|
+
if (options.fill && options.fill.type === "pattern") {
|
|
98
|
+
const pf = options.fill;
|
|
99
|
+
fillParts.push(`<a:pattFill prst="${xmlEncodeAttr(pf.preset)}"><a:fgClr><a:srgbClr val="${xmlEncodeAttr(pf.foregroundColor)}"/></a:fgClr><a:bgClr><a:srgbClr val="${xmlEncodeAttr(pf.backgroundColor)}"/></a:bgClr></a:pattFill>`);
|
|
100
|
+
}
|
|
101
|
+
// Effects: shadow / glow / reflection / softEdges must live inside
|
|
102
|
+
// <a:effectLst>. Collect all of them then emit a single wrapper.
|
|
103
|
+
const effectChildren = [];
|
|
104
|
+
if (options.effects?.shadow) {
|
|
105
|
+
const s = options.effects.shadow;
|
|
106
|
+
const attrs = [];
|
|
107
|
+
if (s.blurRadius) {
|
|
108
|
+
attrs.push(`blurRad="${s.blurRadius}"`);
|
|
109
|
+
}
|
|
110
|
+
if (s.distance) {
|
|
111
|
+
attrs.push(`dist="${s.distance}"`);
|
|
112
|
+
}
|
|
113
|
+
if (s.direction !== undefined) {
|
|
114
|
+
attrs.push(`dir="${s.direction}"`);
|
|
115
|
+
}
|
|
116
|
+
const alpha = s.transparency !== undefined
|
|
117
|
+
? ` <a:alpha val="${Math.round((100 - s.transparency) * 1000)}"/>`
|
|
118
|
+
: "";
|
|
119
|
+
const tag = s.type === "inner" ? "a:innerShdw" : "a:outerShdw";
|
|
120
|
+
effectChildren.push(`<${tag} ${attrs.join(" ")}><a:srgbClr val="${xmlEncodeAttr(s.color)}">${alpha}</a:srgbClr></${tag}>`);
|
|
121
|
+
}
|
|
122
|
+
if (options.effects?.glow) {
|
|
123
|
+
const g = options.effects.glow;
|
|
124
|
+
const alpha = g.transparency !== undefined
|
|
125
|
+
? `<a:alpha val="${Math.round((100 - g.transparency) * 1000)}"/>`
|
|
126
|
+
: "";
|
|
127
|
+
effectChildren.push(`<a:glow rad="${g.radius}"><a:srgbClr val="${xmlEncodeAttr(g.color)}">${alpha}</a:srgbClr></a:glow>`);
|
|
128
|
+
}
|
|
129
|
+
if (options.effects?.reflection) {
|
|
130
|
+
const r = options.effects.reflection;
|
|
131
|
+
const attrs = [];
|
|
132
|
+
if (r.blurRadius) {
|
|
133
|
+
attrs.push(`blurRad="${r.blurRadius}"`);
|
|
134
|
+
}
|
|
135
|
+
if (r.startOpacity !== undefined) {
|
|
136
|
+
attrs.push(`stA="${Math.round(r.startOpacity * 1000)}"`);
|
|
137
|
+
}
|
|
138
|
+
if (r.endOpacity !== undefined) {
|
|
139
|
+
attrs.push(`endA="${Math.round(r.endOpacity * 1000)}"`);
|
|
140
|
+
}
|
|
141
|
+
if (r.distance) {
|
|
142
|
+
attrs.push(`dist="${r.distance}"`);
|
|
143
|
+
}
|
|
144
|
+
if (r.direction !== undefined) {
|
|
145
|
+
attrs.push(`dir="${r.direction}"`);
|
|
146
|
+
}
|
|
147
|
+
if (r.fadeDirection !== undefined) {
|
|
148
|
+
attrs.push(`fadeDir="${r.fadeDirection}"`);
|
|
149
|
+
}
|
|
150
|
+
effectChildren.push(`<a:reflection ${attrs.join(" ")}/>`);
|
|
151
|
+
}
|
|
152
|
+
if (options.effects?.softEdges) {
|
|
153
|
+
effectChildren.push(`<a:softEdge rad="${options.effects.softEdges}"/>`);
|
|
154
|
+
}
|
|
155
|
+
if (effectChildren.length > 0) {
|
|
156
|
+
effectParts.push(`<a:effectLst>${effectChildren.join("")}</a:effectLst>`);
|
|
157
|
+
}
|
|
158
|
+
// 3D effect (scene3d + sp3d) — both follow effectLst.
|
|
159
|
+
if (options.effects?.effect3d) {
|
|
160
|
+
const e = options.effects.effect3d;
|
|
161
|
+
const camera = e.camera ?? "orthographicFront";
|
|
162
|
+
const rotAttrs = [];
|
|
163
|
+
if (e.rotX !== undefined) {
|
|
164
|
+
rotAttrs.push(`lat="${e.rotX}"`);
|
|
165
|
+
}
|
|
166
|
+
if (e.rotY !== undefined) {
|
|
167
|
+
rotAttrs.push(`lon="${e.rotY}"`);
|
|
168
|
+
}
|
|
169
|
+
if (e.rotZ !== undefined) {
|
|
170
|
+
rotAttrs.push(`rev="${e.rotZ}"`);
|
|
171
|
+
}
|
|
172
|
+
const rot = rotAttrs.length > 0 ? `<a:rot ${rotAttrs.join(" ")}/>` : "";
|
|
173
|
+
effectParts.push(`<a:scene3d><a:camera prst="${xmlEncodeAttr(camera)}">${rot}</a:camera><a:lightRig rig="threePt" dir="t"/></a:scene3d>`);
|
|
174
|
+
const sp3dChildren = [];
|
|
175
|
+
if (e.bevelTop) {
|
|
176
|
+
const preset = e.bevelTop.preset ? ` prst="${xmlEncodeAttr(e.bevelTop.preset)}"` : "";
|
|
177
|
+
sp3dChildren.push(`<a:bevelT w="${e.bevelTop.width}" h="${e.bevelTop.height}"${preset}/>`);
|
|
178
|
+
}
|
|
179
|
+
if (e.bevelBottom) {
|
|
180
|
+
const preset = e.bevelBottom.preset ? ` prst="${xmlEncodeAttr(e.bevelBottom.preset)}"` : "";
|
|
181
|
+
sp3dChildren.push(`<a:bevelB w="${e.bevelBottom.width}" h="${e.bevelBottom.height}"${preset}/>`);
|
|
182
|
+
}
|
|
183
|
+
if (e.extrusionColor) {
|
|
184
|
+
sp3dChildren.push(`<a:extrusionClr><a:srgbClr val="${xmlEncodeAttr(e.extrusionColor)}"/></a:extrusionClr>`);
|
|
185
|
+
}
|
|
186
|
+
const extDepth = e.extrusionDepth ? ` extrusionH="${e.extrusionDepth}"` : "";
|
|
187
|
+
effectParts.push(`<a:sp3d${extDepth}>${sp3dChildren.join("")}</a:sp3d>`);
|
|
188
|
+
}
|
|
189
|
+
return {
|
|
190
|
+
fillXml: fillParts.length > 0 ? fillParts.join("") : undefined,
|
|
191
|
+
effectsXml: effectParts.length > 0 ? effectParts.join("") : undefined
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Create a simple rectangle shape.
|
|
196
|
+
*/
|
|
197
|
+
export function createRect(width, height, options) {
|
|
198
|
+
return createShape({ shapeType: "rect", width, height, ...options });
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Create a rounded rectangle shape.
|
|
202
|
+
*/
|
|
203
|
+
export function createRoundRect(width, height, options) {
|
|
204
|
+
return createShape({ shapeType: "roundRect", width, height, ...options });
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Create an ellipse/circle shape.
|
|
208
|
+
*/
|
|
209
|
+
export function createEllipse(width, height, options) {
|
|
210
|
+
return createShape({ shapeType: "ellipse", width, height, ...options });
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Create a line connector.
|
|
214
|
+
*/
|
|
215
|
+
export function createLine(width, height, options) {
|
|
216
|
+
return createShape({
|
|
217
|
+
shapeType: "line",
|
|
218
|
+
width,
|
|
219
|
+
height,
|
|
220
|
+
fill: { type: "none" },
|
|
221
|
+
...options
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Create an arrow shape.
|
|
226
|
+
*/
|
|
227
|
+
export function createArrow(direction, width, height, options) {
|
|
228
|
+
const shapeMap = {
|
|
229
|
+
right: "rightArrow",
|
|
230
|
+
left: "leftArrow",
|
|
231
|
+
up: "upArrow",
|
|
232
|
+
down: "downArrow"
|
|
233
|
+
};
|
|
234
|
+
return createShape({ shapeType: shapeMap[direction], width, height, ...options });
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Create a flowchart shape.
|
|
238
|
+
*/
|
|
239
|
+
export function createFlowchartShape(kind, width, height, options) {
|
|
240
|
+
const shapeMap = {
|
|
241
|
+
process: "flowChartProcess",
|
|
242
|
+
decision: "flowChartDecision",
|
|
243
|
+
terminator: "flowChartTerminator",
|
|
244
|
+
document: "flowChartDocument",
|
|
245
|
+
data: "flowChartInputOutput",
|
|
246
|
+
connector: "flowChartConnector",
|
|
247
|
+
preparation: "flowChartPreparation"
|
|
248
|
+
};
|
|
249
|
+
return createShape({ shapeType: shapeMap[kind], width, height, ...options });
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Create a callout shape.
|
|
253
|
+
*/
|
|
254
|
+
export function createCallout(style, width, height, options) {
|
|
255
|
+
const shapeMap = {
|
|
256
|
+
rect: "wedgeRectCallout",
|
|
257
|
+
roundRect: "wedgeRoundRectCallout",
|
|
258
|
+
ellipse: "wedgeEllipseCallout",
|
|
259
|
+
cloud: "cloudCallout"
|
|
260
|
+
};
|
|
261
|
+
return createShape({ shapeType: shapeMap[style], width, height, ...options });
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Create a star shape.
|
|
265
|
+
*/
|
|
266
|
+
export function createStar(points, width, height, options) {
|
|
267
|
+
return createShape({ shapeType: `star${points}`, width, height, ...options });
|
|
268
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Word Document Field Calculation Engine
|
|
3
|
+
*
|
|
4
|
+
* Computes and updates field cachedValues based on layout (pagination) results.
|
|
5
|
+
* Supports PAGE, NUMPAGES, SECTIONPAGES, SECTION, TOC, REF, PAGEREF, SEQ, IF, STYLEREF,
|
|
6
|
+
* INDEX, = (formula), INCLUDETEXT.
|
|
7
|
+
*
|
|
8
|
+
* The engine performs a layout pass via layoutDocument, then traverses the document
|
|
9
|
+
* body to update each field's cachedValue in an immutable-style manner (deep-cloning
|
|
10
|
+
* modified portions of the tree).
|
|
11
|
+
*/
|
|
12
|
+
import { type LayoutOptions } from "../layout/layout.js";
|
|
13
|
+
import type { DocxDocument } from "../types.js";
|
|
14
|
+
/** 字段计算选项 */
|
|
15
|
+
export interface FieldUpdateOptions {
|
|
16
|
+
/** 布局选项(传递给 layoutDocument)。 */
|
|
17
|
+
readonly layoutOptions?: LayoutOptions;
|
|
18
|
+
/** 是否更新 TOC(默认 true)。 */
|
|
19
|
+
readonly updateToc?: boolean;
|
|
20
|
+
/** 是否更新页码字段(默认 true)。 */
|
|
21
|
+
readonly updatePageFields?: boolean;
|
|
22
|
+
/** 是否更新交叉引用(默认 true)。 */
|
|
23
|
+
readonly updateReferences?: boolean;
|
|
24
|
+
/** 是否更新序列号(默认 true)。 */
|
|
25
|
+
readonly updateSequences?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* 更新文档中所有字段的 cachedValue。
|
|
29
|
+
*
|
|
30
|
+
* 执行分页布局,然后遍历所有字段更新其缓存值。
|
|
31
|
+
* 对于 TOC 字段,会生成完整的目录段落。
|
|
32
|
+
*
|
|
33
|
+
* @param doc - 文档模型(不会被修改,返回新对象)
|
|
34
|
+
* @param options - 更新选项
|
|
35
|
+
* @returns 更新后的文档模型
|
|
36
|
+
*/
|
|
37
|
+
export declare function updateFields(doc: DocxDocument, options?: FieldUpdateOptions): DocxDocument;
|
|
38
|
+
/**
|
|
39
|
+
* 仅更新 TOC(目录)字段。
|
|
40
|
+
* 扫描文档中的标题(Heading1-9 样式或 outline level),
|
|
41
|
+
* 生成目录缓存段落。
|
|
42
|
+
*/
|
|
43
|
+
export declare function updateTableOfContents(doc: DocxDocument, options?: FieldUpdateOptions): DocxDocument;
|