@syncfusion/ej2-docx 0.0.0-stage → 35.1.40
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/.gitleaksignore +35 -0
- package/README.md +68 -2
- package/core.js +4 -0
- package/dist/ej2-docx.umd.min.js +11 -0
- package/dist/ej2-docx.umd.min.js.map +1 -0
- package/dist/es6/ej2-docx.es2015.js +66697 -0
- package/dist/es6/ej2-docx.es2015.js.map +1 -0
- package/dist/es6/ej2-docx.es5.js +77568 -0
- package/dist/es6/ej2-docx.es5.js.map +1 -0
- package/dist/global/ej2-docx.min.js +11 -0
- package/dist/global/ej2-docx.min.js.map +1 -0
- package/dist/global/index.d.ts +14 -0
- package/features.js +4 -0
- package/index.js +4 -0
- package/license +10 -0
- package/package.json +30 -3
- package/src/all.d.ts +50 -0
- package/src/all.js +147 -0
- package/src/core/compat/base64.d.ts +13 -0
- package/src/core/compat/base64.js +90 -0
- package/src/core/compat/object-compat.d.ts +30 -0
- package/src/core/compat/object-compat.js +40 -0
- package/src/core/compat/sha256.d.ts +9 -0
- package/src/core/compat/sha256.js +98 -0
- package/src/core/errors/docx-error.d.ts +89 -0
- package/src/core/errors/docx-error.js +138 -0
- package/src/core/errors/error-codes.d.ts +8 -0
- package/src/core/errors/error-codes.js +0 -0
- package/src/core/errors/index.d.ts +10 -0
- package/src/core/errors/index.js +9 -0
- package/src/core/index.d.ts +12 -0
- package/src/core/index.js +12 -0
- package/src/core/mc/alternate-content.d.ts +7 -0
- package/src/core/mc/alternate-content.js +67 -0
- package/src/core/mc/attributes.d.ts +24 -0
- package/src/core/mc/attributes.js +82 -0
- package/src/core/mc/index.d.ts +7 -0
- package/src/core/mc/index.js +5 -0
- package/src/core/mc/inspect.d.ts +16 -0
- package/src/core/mc/inspect.js +148 -0
- package/src/core/mc/namespaces.d.ts +4 -0
- package/src/core/mc/namespaces.js +4 -0
- package/src/core/mc/scope.d.ts +6 -0
- package/src/core/mc/scope.js +47 -0
- package/src/core/opc/content-types.d.ts +34 -0
- package/src/core/opc/content-types.js +162 -0
- package/src/core/opc/index.d.ts +8 -0
- package/src/core/opc/index.js +4 -0
- package/src/core/opc/package.d.ts +49 -0
- package/src/core/opc/package.js +324 -0
- package/src/core/opc/part-name.d.ts +47 -0
- package/src/core/opc/part-name.js +205 -0
- package/src/core/opc/relationships.d.ts +46 -0
- package/src/core/opc/relationships.js +212 -0
- package/src/core/preservation/index.d.ts +2 -0
- package/src/core/preservation/index.js +1 -0
- package/src/core/preservation/opaque-body.d.ts +16 -0
- package/src/core/preservation/opaque-body.js +69 -0
- package/src/core/registry/block-handlers.d.ts +30 -0
- package/src/core/registry/block-handlers.js +36 -0
- package/src/core/registry/create-defaults.d.ts +39 -0
- package/src/core/registry/create-defaults.js +42 -0
- package/src/core/registry/feature-registry.d.ts +20 -0
- package/src/core/registry/feature-registry.js +29 -0
- package/src/core/registry/index.d.ts +9 -0
- package/src/core/registry/index.js +8 -0
- package/src/core/registry/inline-handlers.d.ts +20 -0
- package/src/core/registry/inline-handlers.js +30 -0
- package/src/core/registry/materialize-handlers.d.ts +35 -0
- package/src/core/registry/materialize-handlers.js +75 -0
- package/src/core/registry/multi-part-handlers.d.ts +37 -0
- package/src/core/registry/multi-part-handlers.js +206 -0
- package/src/core/registry/package-part-handlers.d.ts +28 -0
- package/src/core/registry/package-part-handlers.js +190 -0
- package/src/core/registry/part-handlers.d.ts +24 -0
- package/src/core/registry/part-handlers.js +172 -0
- package/src/core/registry/run-leaf-handlers.d.ts +26 -0
- package/src/core/registry/run-leaf-handlers.js +72 -0
- package/src/core/security/limits.d.ts +40 -0
- package/src/core/security/limits.js +26 -0
- package/src/core/xml/index.d.ts +7 -0
- package/src/core/xml/index.js +3 -0
- package/src/core/xml/model.d.ts +66 -0
- package/src/core/xml/model.js +17 -0
- package/src/core/xml/parse.d.ts +12 -0
- package/src/core/xml/parse.js +382 -0
- package/src/core/xml/serialize.d.ts +6 -0
- package/src/core/xml/serialize.js +93 -0
- package/src/core/zip/crc32.d.ts +2 -0
- package/src/core/zip/crc32.js +25 -0
- package/src/core/zip/deflate.d.ts +6 -0
- package/src/core/zip/deflate.js +6 -0
- package/src/core/zip/index.d.ts +10 -0
- package/src/core/zip/index.js +4 -0
- package/src/core/zip/inflate-raw.d.ts +17 -0
- package/src/core/zip/inflate-raw.js +450 -0
- package/src/core/zip/names.d.ts +6 -0
- package/src/core/zip/names.js +52 -0
- package/src/core/zip/read.d.ts +8 -0
- package/src/core/zip/read.js +262 -0
- package/src/core/zip/write.d.ts +7 -0
- package/src/core/zip/write.js +189 -0
- package/src/core/zip/zip-entry.d.ts +4 -0
- package/src/core/zip/zip-entry.js +0 -0
- package/src/features/bibliography/index.d.ts +100 -0
- package/src/features/bibliography/index.js +290 -0
- package/src/features/bookmarks/index.d.ts +331 -0
- package/src/features/bookmarks/index.js +1009 -0
- package/src/features/comments/comment-extensions.d.ts +157 -0
- package/src/features/comments/comment-extensions.js +356 -0
- package/src/features/comments/index.d.ts +579 -0
- package/src/features/comments/index.js +1727 -0
- package/src/features/content-controls/index.d.ts +821 -0
- package/src/features/content-controls/index.js +2857 -0
- package/src/features/custom-xml/index.d.ts +236 -0
- package/src/features/custom-xml/index.js +661 -0
- package/src/features/document/alignment.d.ts +23 -0
- package/src/features/document/alignment.js +36 -0
- package/src/features/document/alt-chunk.d.ts +103 -0
- package/src/features/document/alt-chunk.js +221 -0
- package/src/features/document/assert-never.d.ts +1 -0
- package/src/features/document/assert-never.js +4 -0
- package/src/features/document/augmentations.d.ts +578 -0
- package/src/features/document/augmentations.js +0 -0
- package/src/features/document/body-always-on.d.ts +36 -0
- package/src/features/document/body-always-on.js +66 -0
- package/src/features/document/body-blocks.d.ts +7 -0
- package/src/features/document/body-blocks.js +78 -0
- package/src/features/document/body-item-adapters.d.ts +62 -0
- package/src/features/document/body-item-adapters.js +97 -0
- package/src/features/document/body-item-collection.d.ts +151 -0
- package/src/features/document/body-item-collection.js +440 -0
- package/src/features/document/body-item.d.ts +35 -0
- package/src/features/document/body-item.js +8 -0
- package/src/features/document/body.d.ts +150 -0
- package/src/features/document/body.js +263 -0
- package/src/features/document/character-format.d.ts +413 -0
- package/src/features/document/character-format.js +2054 -0
- package/src/features/document/color.d.ts +178 -0
- package/src/features/document/color.js +495 -0
- package/src/features/document/document.d.ts +410 -0
- package/src/features/document/document.js +1049 -0
- package/src/features/document/element-type.d.ts +68 -0
- package/src/features/document/element-type.js +133 -0
- package/src/features/document/entity-type.d.ts +92 -0
- package/src/features/document/entity-type.js +93 -0
- package/src/features/document/feature-block.d.ts +16 -0
- package/src/features/document/feature-block.js +0 -0
- package/src/features/document/feature-inline.d.ts +13 -0
- package/src/features/document/feature-inline.js +0 -0
- package/src/features/document/feature-multi-package-part.d.ts +19 -0
- package/src/features/document/feature-multi-package-part.js +8 -0
- package/src/features/document/feature-package-level-part.d.ts +18 -0
- package/src/features/document/feature-package-level-part.js +8 -0
- package/src/features/document/feature-package-part.d.ts +14 -0
- package/src/features/document/feature-package-part.js +0 -0
- package/src/features/document/feature-run-leaf.d.ts +9 -0
- package/src/features/document/feature-run-leaf.js +0 -0
- package/src/features/document/headers-footers.d.ts +206 -0
- package/src/features/document/headers-footers.js +384 -0
- package/src/features/document/index.d.ts +41 -0
- package/src/features/document/index.js +34 -0
- package/src/features/document/length.d.ts +152 -0
- package/src/features/document/length.js +245 -0
- package/src/features/document/load-options.d.ts +14 -0
- package/src/features/document/load-options.js +0 -0
- package/src/features/document/locale-ids.d.ts +227 -0
- package/src/features/document/locale-ids.js +485 -0
- package/src/features/document/on-off.d.ts +9 -0
- package/src/features/document/on-off.js +27 -0
- package/src/features/document/page-setup.d.ts +339 -0
- package/src/features/document/page-setup.js +244 -0
- package/src/features/document/paragraph-format.d.ts +880 -0
- package/src/features/document/paragraph-format.js +2807 -0
- package/src/features/document/paragraph-item-collection.d.ts +162 -0
- package/src/features/document/paragraph-item-collection.js +363 -0
- package/src/features/document/paragraph-item.d.ts +83 -0
- package/src/features/document/paragraph-item.js +103 -0
- package/src/features/document/paragraph.d.ts +435 -0
- package/src/features/document/paragraph.js +888 -0
- package/src/features/document/run.d.ts +1 -0
- package/src/features/document/run.js +768 -0
- package/src/features/document/section-partition-flatten.d.ts +124 -0
- package/src/features/document/section-partition-flatten.js +217 -0
- package/src/features/document/section-properties-model.d.ts +13 -0
- package/src/features/document/section-properties-model.js +0 -0
- package/src/features/document/section.d.ts +93 -0
- package/src/features/document/section.js +178 -0
- package/src/features/document/sections.d.ts +103 -0
- package/src/features/document/sections.js +217 -0
- package/src/features/document/sub-super-script.d.ts +23 -0
- package/src/features/document/sub-super-script.js +43 -0
- package/src/features/document/text-range.d.ts +445 -0
- package/src/features/document/text-range.js +1156 -0
- package/src/features/document/typed-body-collections.d.ts +162 -0
- package/src/features/document/typed-body-collections.js +371 -0
- package/src/features/document/underline-style.d.ts +38 -0
- package/src/features/document/underline-style.js +126 -0
- package/src/features/document/units.d.ts +8 -0
- package/src/features/document/units.js +7 -0
- package/src/features/document/wml.d.ts +16 -0
- package/src/features/document/wml.js +67 -0
- package/src/features/drawing/authoring.d.ts +27 -0
- package/src/features/drawing/authoring.js +271 -0
- package/src/features/drawing/body-pr.d.ts +271 -0
- package/src/features/drawing/body-pr.js +663 -0
- package/src/features/drawing/drawing-shape.d.ts +1192 -0
- package/src/features/drawing/drawing-shape.js +3239 -0
- package/src/features/drawing/encode-builders.d.ts +176 -0
- package/src/features/drawing/encode-builders.js +390 -0
- package/src/features/drawing/fill-format.d.ts +52 -0
- package/src/features/drawing/fill-format.js +124 -0
- package/src/features/drawing/host-codec.d.ts +632 -0
- package/src/features/drawing/host-codec.js +2595 -0
- package/src/features/drawing/index.d.ts +13 -0
- package/src/features/drawing/index.js +33 -0
- package/src/features/drawing/line-format.d.ts +76 -0
- package/src/features/drawing/line-format.js +343 -0
- package/src/features/drawing/parse-register.d.ts +50 -0
- package/src/features/drawing/parse-register.js +257 -0
- package/src/features/drawing/residual-utils.d.ts +47 -0
- package/src/features/drawing/residual-utils.js +290 -0
- package/src/features/drawing/shape-types.d.ts +433 -0
- package/src/features/drawing/shape-types.js +437 -0
- package/src/features/drawing/sp-pr.d.ts +396 -0
- package/src/features/drawing/sp-pr.js +610 -0
- package/src/features/drawing/text-frame.d.ts +90 -0
- package/src/features/drawing/text-frame.js +152 -0
- package/src/features/drawing/types.d.ts +352 -0
- package/src/features/drawing/types.js +60 -0
- package/src/features/drawing/wrap-format.d.ts +62 -0
- package/src/features/drawing/wrap-format.js +114 -0
- package/src/features/editable-ranges/index.d.ts +494 -0
- package/src/features/editable-ranges/index.js +1348 -0
- package/src/features/fields/index.d.ts +428 -0
- package/src/features/fields/index.js +2148 -0
- package/src/features/fields/paragraph-field.d.ts +187 -0
- package/src/features/fields/paragraph-field.js +692 -0
- package/src/features/font-table/font-substitution-table.d.ts +75 -0
- package/src/features/font-table/font-substitution-table.js +257 -0
- package/src/features/font-table/font-table-entry.d.ts +255 -0
- package/src/features/font-table/font-table-entry.js +823 -0
- package/src/features/font-table/font-table.d.ts +128 -0
- package/src/features/font-table/font-table.js +313 -0
- package/src/features/font-table/index.d.ts +27 -0
- package/src/features/font-table/index.js +48 -0
- package/src/features/glossary/index.d.ts +97 -0
- package/src/features/glossary/index.js +286 -0
- package/src/features/headers-footers/index.d.ts +506 -0
- package/src/features/headers-footers/index.js +1666 -0
- package/src/features/hyperlinks/index.d.ts +230 -0
- package/src/features/hyperlinks/index.js +685 -0
- package/src/features/images/caption-authoring-api.d.ts +33 -0
- package/src/features/images/caption-authoring-api.js +33 -0
- package/src/features/images/caption-enums.d.ts +52 -0
- package/src/features/images/caption-enums.js +141 -0
- package/src/features/images/caption-host.d.ts +10 -0
- package/src/features/images/caption-host.js +21 -0
- package/src/features/images/captions.d.ts +13 -0
- package/src/features/images/captions.js +142 -0
- package/src/features/images/host-codec.d.ts +103 -0
- package/src/features/images/host-codec.js +720 -0
- package/src/features/images/image-sniff.d.ts +21 -0
- package/src/features/images/image-sniff.js +71 -0
- package/src/features/images/index.d.ts +506 -0
- package/src/features/images/index.js +1429 -0
- package/src/features/images/layout-types.d.ts +232 -0
- package/src/features/images/layout-types.js +294 -0
- package/src/features/images/public-entry.d.ts +9 -0
- package/src/features/images/public-entry.js +9 -0
- package/src/features/index.d.ts +35 -0
- package/src/features/index.js +36 -0
- package/src/features/mail-merge/index.d.ts +113 -0
- package/src/features/mail-merge/index.js +315 -0
- package/src/features/notes/index.d.ts +573 -0
- package/src/features/notes/index.js +1725 -0
- package/src/features/numbering/abstract-numbering.d.ts +90 -0
- package/src/features/numbering/abstract-numbering.js +292 -0
- package/src/features/numbering/index.d.ts +182 -0
- package/src/features/numbering/index.js +668 -0
- package/src/features/numbering/list-format.d.ts +158 -0
- package/src/features/numbering/list-format.js +590 -0
- package/src/features/numbering/list-string.d.ts +7 -0
- package/src/features/numbering/list-string.js +423 -0
- package/src/features/numbering/list-style.d.ts +204 -0
- package/src/features/numbering/list-style.js +1084 -0
- package/src/features/numbering/numbering-instance.d.ts +101 -0
- package/src/features/numbering/numbering-instance.js +329 -0
- package/src/features/numbering/numbering-level.d.ts +118 -0
- package/src/features/numbering/numbering-level.js +501 -0
- package/src/features/numbering/picture-bullet.d.ts +34 -0
- package/src/features/numbering/picture-bullet.js +88 -0
- package/src/features/ole-object/catalog.d.ts +300 -0
- package/src/features/ole-object/catalog.js +908 -0
- package/src/features/ole-object/index.d.ts +526 -0
- package/src/features/ole-object/index.js +1421 -0
- package/src/features/ole-object/relationship.d.ts +27 -0
- package/src/features/ole-object/relationship.js +27 -0
- package/src/features/ole-object/typed-dom.d.ts +186 -0
- package/src/features/ole-object/typed-dom.js +595 -0
- package/src/features/properties/index.d.ts +205 -0
- package/src/features/properties/index.js +549 -0
- package/src/features/revisions/index.d.ts +204 -0
- package/src/features/revisions/index.js +695 -0
- package/src/features/sections/column-collection.d.ts +119 -0
- package/src/features/sections/column-collection.js +478 -0
- package/src/features/sections/column.d.ts +15 -0
- package/src/features/sections/column.js +37 -0
- package/src/features/sections/index.d.ts +91 -0
- package/src/features/sections/index.js +1096 -0
- package/src/features/sections/margins.d.ts +40 -0
- package/src/features/sections/margins.js +105 -0
- package/src/features/sections/page-number-style.d.ts +21 -0
- package/src/features/sections/page-number-style.js +62 -0
- package/src/features/sections/page-orientation.d.ts +10 -0
- package/src/features/sections/page-orientation.js +10 -0
- package/src/features/sections/page-setup.d.ts +435 -0
- package/src/features/sections/page-setup.js +1479 -0
- package/src/features/sections/page-size.d.ts +59 -0
- package/src/features/sections/page-size.js +68 -0
- package/src/features/sections/section-break-code.d.ts +27 -0
- package/src/features/sections/section-break-code.js +60 -0
- package/src/features/sections/section-document-association.d.ts +18 -0
- package/src/features/sections/section-document-association.js +31 -0
- package/src/features/sections/section-validation.d.ts +43 -0
- package/src/features/sections/section-validation.js +97 -0
- package/src/features/settings/attached-template.d.ts +35 -0
- package/src/features/settings/attached-template.js +98 -0
- package/src/features/settings/compat-settings.d.ts +216 -0
- package/src/features/settings/compat-settings.js +508 -0
- package/src/features/settings/document-background.d.ts +59 -0
- package/src/features/settings/document-background.js +131 -0
- package/src/features/settings/document-protection.d.ts +65 -0
- package/src/features/settings/document-protection.js +157 -0
- package/src/features/settings/document-settings-facades.d.ts +108 -0
- package/src/features/settings/document-settings-facades.js +312 -0
- package/src/features/settings/document-settings-values.d.ts +43 -0
- package/src/features/settings/document-settings-values.js +60 -0
- package/src/features/settings/footnote-properties.d.ts +211 -0
- package/src/features/settings/footnote-properties.js +591 -0
- package/src/features/settings/index.d.ts +356 -0
- package/src/features/settings/index.js +829 -0
- package/src/features/settings/settings-children.d.ts +151 -0
- package/src/features/settings/settings-children.js +505 -0
- package/src/features/settings/web-settings.d.ts +88 -0
- package/src/features/settings/web-settings.js +227 -0
- package/src/features/settings/zoom.d.ts +79 -0
- package/src/features/settings/zoom.js +147 -0
- package/src/features/styles/builtin-catalog.d.ts +159 -0
- package/src/features/styles/builtin-catalog.js +963 -0
- package/src/features/styles/builtin-resolver.d.ts +49 -0
- package/src/features/styles/builtin-resolver.js +165 -0
- package/src/features/styles/default-styles.d.ts +37 -0
- package/src/features/styles/default-styles.js +186 -0
- package/src/features/styles/default-theme.d.ts +13 -0
- package/src/features/styles/default-theme.js +13 -0
- package/src/features/styles/doc-defaults.d.ts +58 -0
- package/src/features/styles/doc-defaults.js +178 -0
- package/src/features/styles/formatting-resolver.d.ts +27 -0
- package/src/features/styles/formatting-resolver.js +72 -0
- package/src/features/styles/index.d.ts +256 -0
- package/src/features/styles/index.js +1325 -0
- package/src/features/styles/latent-styles.d.ts +68 -0
- package/src/features/styles/latent-styles.js +305 -0
- package/src/features/styles/paragraph-properties.d.ts +71 -0
- package/src/features/styles/paragraph-properties.js +237 -0
- package/src/features/styles/run-properties.d.ts +93 -0
- package/src/features/styles/run-properties.js +516 -0
- package/src/features/styles/style-base.d.ts +402 -0
- package/src/features/styles/style-base.js +1026 -0
- package/src/features/styles/style-collection.d.ts +264 -0
- package/src/features/styles/style-collection.js +714 -0
- package/src/features/styles/style-format-bridge.d.ts +64 -0
- package/src/features/styles/style-format-bridge.js +100 -0
- package/src/features/styles/style.d.ts +84 -0
- package/src/features/styles/style.js +375 -0
- package/src/features/styles/styles-with-effects.d.ts +71 -0
- package/src/features/styles/styles-with-effects.js +180 -0
- package/src/features/styles/table-style.d.ts +272 -0
- package/src/features/styles/table-style.js +1226 -0
- package/src/features/styles/theme.d.ts +126 -0
- package/src/features/styles/theme.js +377 -0
- package/src/features/tables/border-style-map.d.ts +24 -0
- package/src/features/tables/border-style-map.js +81 -0
- package/src/features/tables/borders.d.ts +126 -0
- package/src/features/tables/borders.js +527 -0
- package/src/features/tables/collections.d.ts +113 -0
- package/src/features/tables/collections.js +261 -0
- package/src/features/tables/format.d.ts +208 -0
- package/src/features/tables/format.js +716 -0
- package/src/features/tables/index.d.ts +597 -0
- package/src/features/tables/index.js +2386 -0
- package/src/features/tables/paddings.d.ts +41 -0
- package/src/features/tables/paddings.js +97 -0
- package/src/features/tables/tbl-pr-positioning.d.ts +27 -0
- package/src/features/tables/tbl-pr-positioning.js +178 -0
- package/src/features/tables/tbl-pr.d.ts +528 -0
- package/src/features/tables/tbl-pr.js +1208 -0
- package/src/features/tables/tc-pr.d.ts +168 -0
- package/src/features/tables/tc-pr.js +553 -0
- package/src/features/tables/tr-pr.d.ts +60 -0
- package/src/features/tables/tr-pr.js +215 -0
- package/src/features/watermark/detect.d.ts +76 -0
- package/src/features/watermark/detect.js +219 -0
- package/src/features/watermark/index.d.ts +28 -0
- package/src/features/watermark/index.js +91 -0
- package/src/features/watermark/logical-store.d.ts +29 -0
- package/src/features/watermark/logical-store.js +31 -0
- package/src/features/watermark/model.d.ts +285 -0
- package/src/features/watermark/model.js +597 -0
- package/src/features/watermark/parse.d.ts +84 -0
- package/src/features/watermark/parse.js +815 -0
- package/src/features/watermark/serialize.d.ts +98 -0
- package/src/features/watermark/serialize.js +1517 -0
- package/src/global.js +1 -0
- package/src/index.d.ts +2 -0
- package/src/index.js +2 -0
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `wps:spPr` fill/line/geometry codec (TASK-8048).
|
|
3
|
+
*
|
|
4
|
+
* Schema cites (transitional `dml-main.xsd`; ECMA-376-1 §20.1):
|
|
5
|
+
* - `CT_ShapeProperties` sequence: `a:xfrm`, `EG_Geometry` (`custGeom` |
|
|
6
|
+
* `prstGeom`), `EG_FillProperties`, `a:ln`, `EG_EffectProperties`, `scene3d`,
|
|
7
|
+
* `sp3d`, `extLst`
|
|
8
|
+
* - `CT_PresetGeometry2D`: `@prst` (`ST_ShapeType`) + `a:avLst` child
|
|
9
|
+
* - `CT_NoFillProperties` (empty); `CT_SolidColorFillProperties` (single
|
|
10
|
+
* `EG_ColorChoice` child — `a:srgbClr` here)
|
|
11
|
+
* - `CT_LineProperties` sequence: `EG_LineFillProperties`, `EG_LineDashProperties`
|
|
12
|
+
* (`a:prstDash @val` `ST_PresetLineDashVal`), `EG_LineJoinProperties`,
|
|
13
|
+
* `a:headEnd`/`a:tailEnd` (`CT_LineEndProperties` `@type` `ST_LineEndType`);
|
|
14
|
+
* `@w` (`ST_LineWidth` EMU 0…20116800), `@cap` (`ST_LineCap`)
|
|
15
|
+
* - `a:headEnd`/`a:tailEnd` arrow types are schema tokens (`ST_LineEndType`).
|
|
16
|
+
* ShapeRequirements Arrow Settings (begin/end type + size) maps to these;
|
|
17
|
+
* sizes (`sm|med|lg`) are residual-OK for MVP but the type enums are modeled.
|
|
18
|
+
* - `wps:style` `lnRef`/`fillRef`/`effectRef`/`fontRef` — theme formatting is
|
|
19
|
+
* **residual**: getters return `undefined`/`'theme'` discriminant instead of
|
|
20
|
+
* inventing solid colors (GO: don't invent theme resolution).
|
|
21
|
+
*
|
|
22
|
+
* Unknown fill kinds (`gradFill`, `blipFill`, `pattFill`, `grpFill`) and effect
|
|
23
|
+
* siblings (`effectLst`, `scene3d`, `sp3d`) stay residual — GO Q9 deferred.
|
|
24
|
+
*
|
|
25
|
+
* @packageDocumentation
|
|
26
|
+
*/
|
|
27
|
+
import { Emus } from '../document/length';
|
|
28
|
+
import { OpenXmlElement } from '../../core/xml/index';
|
|
29
|
+
/**
|
|
30
|
+
* DrawingML line preset dash (`ST_PresetLineDashVal` / `a:prstDash/@val`).
|
|
31
|
+
*
|
|
32
|
+
* Members are schema wire tokens. Prefer these constants over raw strings.
|
|
33
|
+
*
|
|
34
|
+
* @public
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* DrawingML line dash style for public LineFormat APIs.
|
|
38
|
+
*
|
|
39
|
+
* Preset members match `ST_PresetLineDashVal` / `a:prstDash/@val` wire tokens.
|
|
40
|
+
* `Unknown` is model-only (custom dash, residual, or unrecognized). Never
|
|
41
|
+
* serialize `Unknown` as `a:prstDash/@val`.
|
|
42
|
+
*
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
export declare const LineDashing: {
|
|
46
|
+
Solid: "solid";
|
|
47
|
+
Dot: "dot";
|
|
48
|
+
Dash: "dash";
|
|
49
|
+
LargeDash: "lgDash";
|
|
50
|
+
DashDot: "dashDot";
|
|
51
|
+
LargeDashDot: "lgDashDot";
|
|
52
|
+
LargeDashDotDot: "lgDashDotDot";
|
|
53
|
+
SystemDash: "sysDash";
|
|
54
|
+
SystemDot: "sysDot";
|
|
55
|
+
SystemDashDot: "sysDashDot";
|
|
56
|
+
SystemDashDotDot: "sysDashDotDot";
|
|
57
|
+
Unknown: "unknown";
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* One of the `LineDashing` tokens.
|
|
61
|
+
* @public
|
|
62
|
+
*/
|
|
63
|
+
export declare type LineDashing = (typeof LineDashing)[keyof typeof LineDashing];
|
|
64
|
+
/**
|
|
65
|
+
* Closed set of public LineDashing values.
|
|
66
|
+
* @public
|
|
67
|
+
*/
|
|
68
|
+
export declare const LINE_DASHING_VALUES: ReadonlyArray<"unknown" | "dash" | "dot" | "solid" | "lgDash" | "dashDot" | "lgDashDot" | "lgDashDotDot" | "sysDash" | "sysDot" | "sysDashDot" | "sysDashDotDot">;
|
|
69
|
+
/**
|
|
70
|
+
* Whether `value` is a public LineDashing token (including Unknown).
|
|
71
|
+
* @public
|
|
72
|
+
*/
|
|
73
|
+
export declare function isLineDashing(value: string): value is LineDashing;
|
|
74
|
+
/**
|
|
75
|
+
* Specifies how open line ends are capped (`ST_LineCap` / `a:ln/@cap`).
|
|
76
|
+
*
|
|
77
|
+
* Prefer these constants over raw strings when setting line cap style.
|
|
78
|
+
*
|
|
79
|
+
* @public
|
|
80
|
+
*/
|
|
81
|
+
export declare const LineCap: {
|
|
82
|
+
/**
|
|
83
|
+
* Round cap at each open end of the stroke.
|
|
84
|
+
* @public
|
|
85
|
+
*/
|
|
86
|
+
Round: "rnd";
|
|
87
|
+
/**
|
|
88
|
+
* Square cap extending half the line width past each open end.
|
|
89
|
+
* @public
|
|
90
|
+
*/
|
|
91
|
+
Square: "sq";
|
|
92
|
+
/**
|
|
93
|
+
* Flat cap that ends exactly at the line endpoint.
|
|
94
|
+
* @public
|
|
95
|
+
*/
|
|
96
|
+
Flat: "flat";
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* One of the `LineCap` tokens.
|
|
100
|
+
* @public
|
|
101
|
+
*/
|
|
102
|
+
export declare type LineCap = (typeof LineCap)[keyof typeof LineCap];
|
|
103
|
+
/**
|
|
104
|
+
* Closed set of `ST_LineCap` wire tokens.
|
|
105
|
+
* @public
|
|
106
|
+
*/
|
|
107
|
+
export declare const LINE_CAP_VALUES: ReadonlyArray<"rnd" | "sq" | "flat">;
|
|
108
|
+
/**
|
|
109
|
+
* Specifies the arrowhead shape drawn at the beginning or end of a line
|
|
110
|
+
* (`ST_LineEndType` / `a:headEnd|a:tailEnd/@type`).
|
|
111
|
+
*
|
|
112
|
+
* Prefer these constants over raw strings when setting line end type.
|
|
113
|
+
*
|
|
114
|
+
* @public
|
|
115
|
+
*/
|
|
116
|
+
export declare const LineEndType: {
|
|
117
|
+
/**
|
|
118
|
+
* No arrowhead at the line end.
|
|
119
|
+
* @public
|
|
120
|
+
*/
|
|
121
|
+
None: "none";
|
|
122
|
+
/**
|
|
123
|
+
* Filled triangular arrowhead.
|
|
124
|
+
* @public
|
|
125
|
+
*/
|
|
126
|
+
Triangle: "triangle";
|
|
127
|
+
/**
|
|
128
|
+
* Stealth (indented) arrowhead.
|
|
129
|
+
* @public
|
|
130
|
+
*/
|
|
131
|
+
Stealth: "stealth";
|
|
132
|
+
/**
|
|
133
|
+
* Diamond-shaped line end marker.
|
|
134
|
+
* @public
|
|
135
|
+
*/
|
|
136
|
+
Diamond: "diamond";
|
|
137
|
+
/**
|
|
138
|
+
* Oval line end marker.
|
|
139
|
+
* @public
|
|
140
|
+
*/
|
|
141
|
+
Oval: "oval";
|
|
142
|
+
/**
|
|
143
|
+
* Open arrowhead.
|
|
144
|
+
* @public
|
|
145
|
+
*/
|
|
146
|
+
Arrow: "arrow";
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* One of the `LineEndType` tokens.
|
|
150
|
+
* @public
|
|
151
|
+
*/
|
|
152
|
+
export declare type LineEndType = (typeof LineEndType)[keyof typeof LineEndType];
|
|
153
|
+
/**
|
|
154
|
+
* Closed set of `ST_LineEndType` wire tokens.
|
|
155
|
+
* @public
|
|
156
|
+
*/
|
|
157
|
+
export declare const LINE_END_TYPE_VALUES: ReadonlyArray<"none" | "triangle" | "diamond" | "stealth" | "oval" | "arrow">;
|
|
158
|
+
/**
|
|
159
|
+
* DrawingML arrow end size tokens (`ST_LineEndWidth` / `ST_LineEndLength`).
|
|
160
|
+
* @public
|
|
161
|
+
*/
|
|
162
|
+
export declare const LINE_END_SIZE_VALUES: ReadonlyArray<"sm" | "med" | "lg">;
|
|
163
|
+
/**
|
|
164
|
+
* DrawingML arrow end size (`sm` | `med` | `lg`).
|
|
165
|
+
* @public
|
|
166
|
+
*/
|
|
167
|
+
export declare type LineEndSize = (typeof LINE_END_SIZE_VALUES)[number];
|
|
168
|
+
/**
|
|
169
|
+
* Shape line fill kind discriminant (`EG_LineFillProperties` MVP).
|
|
170
|
+
*
|
|
171
|
+
* Members are model tokens (not a single XSD enum). Prefer these constants
|
|
172
|
+
* over raw strings when authoring {@link ShapeLine}.
|
|
173
|
+
*
|
|
174
|
+
* @public
|
|
175
|
+
*/
|
|
176
|
+
export declare const ShapeLineKind: {
|
|
177
|
+
Solid: "solid";
|
|
178
|
+
None: "none";
|
|
179
|
+
Theme: "theme";
|
|
180
|
+
Unknown: "unknown";
|
|
181
|
+
};
|
|
182
|
+
/**
|
|
183
|
+
* One of the `ShapeLineKind` tokens.
|
|
184
|
+
* @public
|
|
185
|
+
*/
|
|
186
|
+
export declare type ShapeLineKind = (typeof ShapeLineKind)[keyof typeof ShapeLineKind];
|
|
187
|
+
/**
|
|
188
|
+
* Whether `value` is a schema `ST_LineCap` token.
|
|
189
|
+
*
|
|
190
|
+
* @private
|
|
191
|
+
*/
|
|
192
|
+
export declare function isLineCap(value: string): value is LineCap;
|
|
193
|
+
/**
|
|
194
|
+
* Whether `value` is a schema `ST_LineEndType` token.
|
|
195
|
+
*
|
|
196
|
+
* @private
|
|
197
|
+
*/
|
|
198
|
+
export declare function isLineEndType(value: string): value is LineEndType;
|
|
199
|
+
/**
|
|
200
|
+
* Whether `value` is a schema `ST_LineEndWidth`/`ST_LineEndLength` token.
|
|
201
|
+
*
|
|
202
|
+
* @private
|
|
203
|
+
*/
|
|
204
|
+
export declare function isLineEndSize(value: string): value is LineEndSize;
|
|
205
|
+
/**
|
|
206
|
+
* Shape fill model (`EG_FillProperties` MVP subset).
|
|
207
|
+
*
|
|
208
|
+
* Discriminated by `kind`:
|
|
209
|
+
* - `solid` — explicit `a:solidFill` with six-digit sRGB
|
|
210
|
+
* - `none` — `a:noFill`
|
|
211
|
+
* - `theme` — theme reference only (`wps:style` / non-sRGB color choice); not resolved
|
|
212
|
+
* - `pattern` — residual `a:pattFill` (preset token when present)
|
|
213
|
+
* - `unknown` — other residual fill kinds (`gradFill`, `blipFill`, `grpFill`, …)
|
|
214
|
+
*
|
|
215
|
+
* Only `solid` and `none` are authorable on {@link ShapeOptions.fill}.
|
|
216
|
+
*
|
|
217
|
+
* @public
|
|
218
|
+
*/
|
|
219
|
+
export declare type ShapeFill = {
|
|
220
|
+
readonly kind: 'solid';
|
|
221
|
+
readonly srgb: string;
|
|
222
|
+
/**
|
|
223
|
+
* DrawingML `a:alpha/@val` (0…100000 = 0%…100% opacity).
|
|
224
|
+
* Omitted means fully opaque.
|
|
225
|
+
* @private
|
|
226
|
+
*/
|
|
227
|
+
readonly alpha?: number | undefined;
|
|
228
|
+
} | {
|
|
229
|
+
readonly kind: 'none';
|
|
230
|
+
} | {
|
|
231
|
+
readonly kind: 'theme';
|
|
232
|
+
} | {
|
|
233
|
+
readonly kind: 'pattern';
|
|
234
|
+
readonly preset: string | undefined;
|
|
235
|
+
} | {
|
|
236
|
+
readonly kind: 'unknown';
|
|
237
|
+
};
|
|
238
|
+
/**
|
|
239
|
+
* Shape line model (`CT_LineProperties` MVP subset).
|
|
240
|
+
*
|
|
241
|
+
* Discriminated by {@link ShapeLine.kind}. Only `solid` and `none` are
|
|
242
|
+
* authorable on {@link ShapeOptions.line}. Theme and unknown paths preserve
|
|
243
|
+
* residual markup without inventing colors or dash styles.
|
|
244
|
+
*
|
|
245
|
+
* Arrow begin/end types map to `a:headEnd`/`a:tailEnd` (`ST_LineEndType`).
|
|
246
|
+
* Dash maps to `a:prstDash` (`ST_LineDashingVal`); custom dash stays residual.
|
|
247
|
+
*
|
|
248
|
+
* @public
|
|
249
|
+
*/
|
|
250
|
+
export interface ShapeLine {
|
|
251
|
+
/**
|
|
252
|
+
* Line fill kind (`solid` | `none` | `theme` | `unknown`).
|
|
253
|
+
* Prefer {@link ShapeLineKind} constants when authoring.
|
|
254
|
+
*/
|
|
255
|
+
readonly kind: ShapeLineKind;
|
|
256
|
+
/**
|
|
257
|
+
* `a:ln/@w` width in EMU (`ST_LineWidth`, 0…20116800).
|
|
258
|
+
*
|
|
259
|
+
* @private
|
|
260
|
+
*/
|
|
261
|
+
readonly widthEmu: Emus | undefined;
|
|
262
|
+
/** `a:ln/a:solidFill/a:srgbClr/@val` when line is solid (six hex digits). */
|
|
263
|
+
readonly srgbColor: string | undefined;
|
|
264
|
+
/**
|
|
265
|
+
* DrawingML `a:alpha/@val` under line solid fill (0…100000 opacity).
|
|
266
|
+
* @private
|
|
267
|
+
*/
|
|
268
|
+
readonly alpha: number | undefined;
|
|
269
|
+
/** `a:ln/a:prstDash/@val` (`ST_LineDashingVal`). Prefer {@link LineDashing}. */
|
|
270
|
+
readonly dash: LineDashing | undefined;
|
|
271
|
+
/** `a:ln/@cap` (`ST_LineCap`). Prefer {@link LineCap}. */
|
|
272
|
+
readonly cap: LineCap | undefined;
|
|
273
|
+
/** `a:ln/a:headEnd/@type` (`ST_LineEndType`). Prefer {@link LineEndType}. */
|
|
274
|
+
readonly beginArrowType: LineEndType | undefined;
|
|
275
|
+
/** `a:ln/a:headEnd/@w` (`ST_LineEndWidth`). */
|
|
276
|
+
readonly beginArrowSize: LineEndSize | undefined;
|
|
277
|
+
/** `a:ln/a:tailEnd/@type` (`ST_LineEndType`). Prefer {@link LineEndType}. */
|
|
278
|
+
readonly endArrowType: LineEndType | undefined;
|
|
279
|
+
/** `a:ln/a:tailEnd/@w` (and length when paired; see OOXML mapping). */
|
|
280
|
+
readonly endArrowSize: LineEndSize | undefined;
|
|
281
|
+
/**
|
|
282
|
+
* True when residual line markup is present (`a:custDash`, unmodeled join, …)
|
|
283
|
+
* and the line is not fully represented by the typed fields.
|
|
284
|
+
*
|
|
285
|
+
* @private
|
|
286
|
+
*/
|
|
287
|
+
readonly residual: boolean;
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* @private
|
|
291
|
+
* Geometry + fill + line state read from `wps:spPr`. */
|
|
292
|
+
export interface ShapePropertiesState {
|
|
293
|
+
/** `a:prstGeom/@prst` (validated ST_ShapeType); `custGeom` reads `undefined`. */
|
|
294
|
+
readonly presetGeometry: string | undefined;
|
|
295
|
+
readonly useCustomGeometry: boolean;
|
|
296
|
+
readonly fill: ShapeFill | undefined;
|
|
297
|
+
readonly line: ShapeLine | undefined;
|
|
298
|
+
/** Theme formatting present (`wps:style` sibling). */
|
|
299
|
+
readonly hasThemeStyle: boolean;
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Shallow child lookup under `root` (direct element children only).
|
|
303
|
+
* Use for children of a known `wps:spPr` or `a:ln` parent.
|
|
304
|
+
*
|
|
305
|
+
* @private
|
|
306
|
+
*/
|
|
307
|
+
export declare function findSpPrElement(root: OpenXmlElement, namespaceUri: string, localName: string): OpenXmlElement | undefined;
|
|
308
|
+
/**
|
|
309
|
+
* Read the sRGB color from a `CT_SolidColorFillProperties` (or `a:ln` fill).
|
|
310
|
+
* Only `a:srgbClr` is typed (GO MVP); other `EG_ColorChoice` members read as
|
|
311
|
+
* theme-ish `undefined` so the typed surface never invents values.
|
|
312
|
+
*/
|
|
313
|
+
export declare function solidFillSrgb(parent: OpenXmlElement): string | undefined;
|
|
314
|
+
/**
|
|
315
|
+
* Read DrawingML `a:alpha/@val` under a solid-fill parent (0…100000 opacity units).
|
|
316
|
+
* @private
|
|
317
|
+
*/
|
|
318
|
+
export declare function solidFillAlpha(parent: OpenXmlElement): number | undefined;
|
|
319
|
+
/**
|
|
320
|
+
* Convert public transparency percent (0–100) to DrawingML alpha (0–100000 opacity).
|
|
321
|
+
* @private
|
|
322
|
+
*/
|
|
323
|
+
export declare function transparencyToAlpha(transparency: number): number;
|
|
324
|
+
/**
|
|
325
|
+
* Convert DrawingML alpha (0–100000 opacity) to public transparency percent (0–100).
|
|
326
|
+
* @private
|
|
327
|
+
*/
|
|
328
|
+
export declare function alphaToTransparency(alpha: number | undefined): number;
|
|
329
|
+
/**
|
|
330
|
+
* Read `wps:spPr` geometry/fill/line MVP state.
|
|
331
|
+
*
|
|
332
|
+
* Residual hosts are dual MC AlternateContent trees (`w:drawing` /
|
|
333
|
+
* `mc:AlternateContent` / `mc:Choice` / `wp:anchor` / `a:graphic` /
|
|
334
|
+
* `wps:wsp`), so `wps:spPr` and sibling `wps:style` are located with a deep
|
|
335
|
+
* walk. Children of the found `spPr` stay shallow.
|
|
336
|
+
*
|
|
337
|
+
* Cites: `CT_ShapeProperties` sequence + `EG_FillProperties`/`CT_LineProperties`
|
|
338
|
+
* (dml-main.xsd); `wps:style` residual theme formatting (CT_ShapeStyle).
|
|
339
|
+
*/
|
|
340
|
+
export declare function readShapePropertiesState(residual: OpenXmlElement): ShapePropertiesState;
|
|
341
|
+
/**
|
|
342
|
+
* Build the fill element for modeled fill MVP. Throws on non-solid/none kinds
|
|
343
|
+
* (those go through residual).
|
|
344
|
+
*/
|
|
345
|
+
export declare function buildFillElement(fill: ShapeFill): OpenXmlElement;
|
|
346
|
+
/**
|
|
347
|
+
* Build `a:ln` from the modeled MVP subset; residual line children (join,
|
|
348
|
+
* custDash) are not re-emitted on this path.
|
|
349
|
+
*/
|
|
350
|
+
export declare function buildLineElement(line: {
|
|
351
|
+
readonly kind: 'solid' | 'none';
|
|
352
|
+
readonly widthEmu?: Emus | undefined;
|
|
353
|
+
readonly srgb?: string | undefined;
|
|
354
|
+
readonly alpha?: number | undefined;
|
|
355
|
+
readonly dash?: LineDashing | undefined;
|
|
356
|
+
readonly cap?: LineCap | undefined;
|
|
357
|
+
readonly beginArrowType?: LineEndType | undefined;
|
|
358
|
+
readonly beginArrowSize?: LineEndSize | undefined;
|
|
359
|
+
readonly endArrowType?: LineEndType | undefined;
|
|
360
|
+
readonly endArrowSize?: LineEndSize | undefined;
|
|
361
|
+
}): OpenXmlElement;
|
|
362
|
+
/**
|
|
363
|
+
* Compound line style for shape outlines (public model).
|
|
364
|
+
* Single is the only modeled style in the current codec; other values stay residual-safe.
|
|
365
|
+
* @public
|
|
366
|
+
*/
|
|
367
|
+
export declare const LineStyle: {
|
|
368
|
+
Single: "single";
|
|
369
|
+
};
|
|
370
|
+
/** @public */
|
|
371
|
+
export declare type LineStyle = (typeof LineStyle)[keyof typeof LineStyle];
|
|
372
|
+
/**
|
|
373
|
+
* Arrowhead style at a line end. Maps 1:1 to DrawingML `ST_LineEndType`.
|
|
374
|
+
* @public
|
|
375
|
+
*/
|
|
376
|
+
export declare const ArrowheadStyle: {
|
|
377
|
+
None: "none";
|
|
378
|
+
Triangle: "triangle";
|
|
379
|
+
Stealth: "stealth";
|
|
380
|
+
Diamond: "diamond";
|
|
381
|
+
Oval: "oval";
|
|
382
|
+
Arrow: "arrow";
|
|
383
|
+
};
|
|
384
|
+
/** @public */
|
|
385
|
+
export declare type ArrowheadStyle = (typeof ArrowheadStyle)[keyof typeof ArrowheadStyle];
|
|
386
|
+
/**
|
|
387
|
+
* Arrowhead size (`ST_LineEndWidth` / `ST_LineEndLength`).
|
|
388
|
+
* @public
|
|
389
|
+
*/
|
|
390
|
+
export declare const ArrowheadSize: {
|
|
391
|
+
Small: "sm";
|
|
392
|
+
Medium: "med";
|
|
393
|
+
Large: "lg";
|
|
394
|
+
};
|
|
395
|
+
/** @public */
|
|
396
|
+
export declare type ArrowheadSize = (typeof ArrowheadSize)[keyof typeof ArrowheadSize];
|