@syncfusion/ej2-docx 0.0.0-stage → 35.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +68 -2
- package/core.js +4 -0
- package/dist/ej2-docx.umd.min.js +2 -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 +2 -0
- package/dist/global/ej2-docx.min.js.map +1 -0
- package/dist/global/index.d.ts +5 -0
- package/features.js +4 -0
- package/index.js +4 -0
- package/license +10 -0
- package/package.json +31 -4
- 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,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `w:documentProtection` DOM (`CT_DocProtect`, Transitional `wml.xsd`).
|
|
3
|
+
*
|
|
4
|
+
* Modeled flags: `edit` / `formatting` / `enforcement`. Password and hash attributes
|
|
5
|
+
* (`AG_Password` / `AG_TransitionalPassword`) are preserved on flag-only updates and
|
|
6
|
+
* dropped only when the element is removed.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
*/
|
|
10
|
+
import { OpenXmlElement } from '../../core/xml/index';
|
|
11
|
+
/**
|
|
12
|
+
* `ST_DocProtect` (Transitional `wml.xsd`). *
|
|
13
|
+
* @private
|
|
14
|
+
*/
|
|
15
|
+
export declare type DocumentProtectionEdit = 'none' | 'readOnly' | 'comments' | 'trackedChanges' | 'forms';
|
|
16
|
+
/**
|
|
17
|
+
* Modeled `w:documentProtection` flags. Password/hash attributes are not included.
|
|
18
|
+
*
|
|
19
|
+
* @private
|
|
20
|
+
*/
|
|
21
|
+
export declare type DocumentProtectionFlags = {
|
|
22
|
+
readonly edit?: DocumentProtectionEdit;
|
|
23
|
+
readonly formatting?: boolean;
|
|
24
|
+
readonly enforcement?: boolean;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* First-class `w:documentProtection` node.
|
|
28
|
+
*
|
|
29
|
+
* Kept public because {@link SettingsPart.documentProtectionNode} returns it (R7.3).
|
|
30
|
+
*
|
|
31
|
+
* @private
|
|
32
|
+
*/
|
|
33
|
+
export declare class DocumentProtection {
|
|
34
|
+
private edit;
|
|
35
|
+
private formatting;
|
|
36
|
+
private enforcement;
|
|
37
|
+
private leftoverAttributes;
|
|
38
|
+
private readonly elementChildren;
|
|
39
|
+
private readonly namespaceDeclarations;
|
|
40
|
+
private constructor();
|
|
41
|
+
/**
|
|
42
|
+
* @private
|
|
43
|
+
* Parse from a `w:documentProtection` element. */
|
|
44
|
+
static fromElement(element: OpenXmlElement): DocumentProtection;
|
|
45
|
+
/**
|
|
46
|
+
* @private
|
|
47
|
+
* Build from modeled flags only (create path). */
|
|
48
|
+
static fromFlags(flags: DocumentProtectionFlags): DocumentProtection;
|
|
49
|
+
/**
|
|
50
|
+
* Snapshot of modeled flags (password/hash attrs omitted).
|
|
51
|
+
*
|
|
52
|
+
* @public
|
|
53
|
+
*/
|
|
54
|
+
flags(): DocumentProtectionFlags;
|
|
55
|
+
/**
|
|
56
|
+
* Replace modeled flags; leftover password/hash attributes are kept.
|
|
57
|
+
*
|
|
58
|
+
* @private
|
|
59
|
+
*/
|
|
60
|
+
applyFlags(flags: DocumentProtectionFlags): void;
|
|
61
|
+
/**
|
|
62
|
+
* @private
|
|
63
|
+
*/
|
|
64
|
+
serialize(): OpenXmlElement;
|
|
65
|
+
}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
var __spread = (this && this.__spread) || function () {
|
|
29
|
+
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* `w:documentProtection` DOM (`CT_DocProtect`, Transitional `wml.xsd`).
|
|
34
|
+
*
|
|
35
|
+
* Modeled flags: `edit` / `formatting` / `enforcement`. Password and hash attributes
|
|
36
|
+
* (`AG_Password` / `AG_TransitionalPassword`) are preserved on flag-only updates and
|
|
37
|
+
* dropped only when the element is removed.
|
|
38
|
+
*
|
|
39
|
+
* @private
|
|
40
|
+
*/
|
|
41
|
+
import { WML_TRANSITIONAL_NAMESPACE } from '../../core/xml/index';
|
|
42
|
+
import { wmlAttr, wmlElement } from '../document/wml';
|
|
43
|
+
var MODELED_PROTECTION_ATTRS = new Set(['edit', 'formatting', 'enforcement']);
|
|
44
|
+
function wmlAttribute(element, localName) {
|
|
45
|
+
var found = element.attributes.find(function (attribute) { return attribute.localName === localName &&
|
|
46
|
+
(attribute.namespaceUri === WML_TRANSITIONAL_NAMESPACE || attribute.namespaceUri === ''); });
|
|
47
|
+
return found == null ? undefined : found.value;
|
|
48
|
+
}
|
|
49
|
+
function parseOnOffAttribute(raw) {
|
|
50
|
+
if (raw === undefined || raw.length === 0) {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
var normalized = raw.trim().toLowerCase();
|
|
54
|
+
if (normalized === 'true' || normalized === '1' || normalized === 'on') {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
if (normalized === 'false' || normalized === '0' || normalized === 'off') {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
function onOffAttribute(localName, value) {
|
|
63
|
+
return wmlAttr(localName, value ? 'true' : 'false');
|
|
64
|
+
}
|
|
65
|
+
function parseProtectionEdit(raw) {
|
|
66
|
+
if (raw === undefined) {
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
switch (raw) {
|
|
70
|
+
case 'none':
|
|
71
|
+
case 'readOnly':
|
|
72
|
+
case 'comments':
|
|
73
|
+
case 'trackedChanges':
|
|
74
|
+
case 'forms':
|
|
75
|
+
return raw;
|
|
76
|
+
default:
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* First-class `w:documentProtection` node.
|
|
82
|
+
*
|
|
83
|
+
* Kept public because {@link SettingsPart.documentProtectionNode} returns it (R7.3).
|
|
84
|
+
*
|
|
85
|
+
* @private
|
|
86
|
+
*/
|
|
87
|
+
var DocumentProtection = /** @class */ (function () {
|
|
88
|
+
function DocumentProtection(edit, formatting, enforcement, leftoverAttributes, elementChildren, namespaceDeclarations) {
|
|
89
|
+
this.edit = edit;
|
|
90
|
+
this.formatting = formatting;
|
|
91
|
+
this.enforcement = enforcement;
|
|
92
|
+
this.leftoverAttributes = leftoverAttributes;
|
|
93
|
+
this.elementChildren = elementChildren;
|
|
94
|
+
this.namespaceDeclarations = namespaceDeclarations;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* @private
|
|
98
|
+
* Parse from a `w:documentProtection` element. */
|
|
99
|
+
DocumentProtection.fromElement = function (element) {
|
|
100
|
+
var leftover = element.attributes.filter(function (attribute) { return !MODELED_PROTECTION_ATTRS.has(attribute.localName); });
|
|
101
|
+
return new DocumentProtection(parseProtectionEdit(wmlAttribute(element, 'edit')), parseOnOffAttribute(wmlAttribute(element, 'formatting')), parseOnOffAttribute(wmlAttribute(element, 'enforcement')), leftover, __spread(element.children), element.namespaceDeclarations);
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* @private
|
|
105
|
+
* Build from modeled flags only (create path). */
|
|
106
|
+
DocumentProtection.fromFlags = function (flags) {
|
|
107
|
+
return new DocumentProtection(flags.edit, flags.formatting, flags.enforcement, [], [], []);
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Snapshot of modeled flags (password/hash attrs omitted).
|
|
111
|
+
*
|
|
112
|
+
* @public
|
|
113
|
+
*/
|
|
114
|
+
DocumentProtection.prototype.flags = function () {
|
|
115
|
+
var out = {};
|
|
116
|
+
if (this.edit !== undefined) {
|
|
117
|
+
out.edit = this.edit;
|
|
118
|
+
}
|
|
119
|
+
if (this.formatting !== undefined) {
|
|
120
|
+
out.formatting = this.formatting;
|
|
121
|
+
}
|
|
122
|
+
if (this.enforcement !== undefined) {
|
|
123
|
+
out.enforcement = this.enforcement;
|
|
124
|
+
}
|
|
125
|
+
return out;
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* Replace modeled flags; leftover password/hash attributes are kept.
|
|
129
|
+
*
|
|
130
|
+
* @private
|
|
131
|
+
*/
|
|
132
|
+
DocumentProtection.prototype.applyFlags = function (flags) {
|
|
133
|
+
this.edit = flags.edit;
|
|
134
|
+
this.formatting = flags.formatting;
|
|
135
|
+
this.enforcement = flags.enforcement;
|
|
136
|
+
};
|
|
137
|
+
/**
|
|
138
|
+
* @private
|
|
139
|
+
*/
|
|
140
|
+
DocumentProtection.prototype.serialize = function () {
|
|
141
|
+
var modeled = [];
|
|
142
|
+
if (this.edit !== undefined) {
|
|
143
|
+
modeled.push(wmlAttr('edit', this.edit));
|
|
144
|
+
}
|
|
145
|
+
if (this.formatting !== undefined) {
|
|
146
|
+
modeled.push(onOffAttribute('formatting', this.formatting));
|
|
147
|
+
}
|
|
148
|
+
if (this.enforcement !== undefined) {
|
|
149
|
+
modeled.push(onOffAttribute('enforcement', this.enforcement));
|
|
150
|
+
}
|
|
151
|
+
return wmlElement('documentProtection', __assign({ attributes: __spread(modeled, this.leftoverAttributes), children: this.elementChildren }, (this.namespaceDeclarations.length > 0
|
|
152
|
+
? { namespaceDeclarations: this.namespaceDeclarations }
|
|
153
|
+
: {})));
|
|
154
|
+
};
|
|
155
|
+
return DocumentProtection;
|
|
156
|
+
}());
|
|
157
|
+
export { DocumentProtection };
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { WordDocument } from '../document/document';
|
|
2
|
+
import { AttachedTemplate } from './attached-template';
|
|
3
|
+
import { CompatibilityMode } from './compat-settings';
|
|
4
|
+
import { DocumentViewType } from './settings-children';
|
|
5
|
+
import { ZoomSettings, ZoomType } from './zoom';
|
|
6
|
+
/** Minimal SettingsPart surface used by public facades. */
|
|
7
|
+
export interface SettingsPartFacadeHost {
|
|
8
|
+
trackRevisions(): boolean | undefined;
|
|
9
|
+
setTrackRevisions(value: boolean | undefined): void;
|
|
10
|
+
defaultTabStop(): number | undefined;
|
|
11
|
+
setDefaultTabStop(value: number | undefined): void;
|
|
12
|
+
view(): {
|
|
13
|
+
asDocumentViewType(): DocumentViewType | undefined;
|
|
14
|
+
} | undefined;
|
|
15
|
+
setView(value: DocumentViewType | string | undefined): void;
|
|
16
|
+
zoom(): ZoomSettings | undefined;
|
|
17
|
+
setZoom(value: ZoomSettings | undefined): void;
|
|
18
|
+
compatibilityMode(): string | undefined;
|
|
19
|
+
setCompatibilityMode(value: CompatibilityMode | string): void;
|
|
20
|
+
displayBackgroundShape(): boolean | undefined;
|
|
21
|
+
setDisplayBackgroundShape(value: boolean | undefined): void;
|
|
22
|
+
attachedTemplate(): AttachedTemplate | undefined;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Bind SettingsPart accessors from the settings feature entry (call once after
|
|
26
|
+
* `settingsFor` is defined).
|
|
27
|
+
*
|
|
28
|
+
* @private
|
|
29
|
+
*/
|
|
30
|
+
export declare function bindDocumentSettingsFacades(deps: {
|
|
31
|
+
settingsFor: (document: WordDocument) => SettingsPartFacadeHost;
|
|
32
|
+
registerSettingsFeature: () => void;
|
|
33
|
+
attachedTemplateTarget: (document: WordDocument) => string | undefined;
|
|
34
|
+
}): void;
|
|
35
|
+
/**
|
|
36
|
+
* Document view and zoom configuration (`w:view`, `w:zoom`).
|
|
37
|
+
*
|
|
38
|
+
* @public
|
|
39
|
+
*/
|
|
40
|
+
export declare class ViewSetup {
|
|
41
|
+
private readonly document;
|
|
42
|
+
/**
|
|
43
|
+
* @private
|
|
44
|
+
*/
|
|
45
|
+
constructor(document: WordDocument);
|
|
46
|
+
/**
|
|
47
|
+
* Gets or sets the view used when the document is opened in Microsoft Word.
|
|
48
|
+
*
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
documentViewType: DocumentViewType;
|
|
52
|
+
/**
|
|
53
|
+
* Gets or sets how the document view is fitted in the application window.
|
|
54
|
+
*
|
|
55
|
+
* @public
|
|
56
|
+
*/
|
|
57
|
+
zoomType: ZoomType;
|
|
58
|
+
/**
|
|
59
|
+
* Gets or sets the document zoom percentage.
|
|
60
|
+
*
|
|
61
|
+
* @public
|
|
62
|
+
*/
|
|
63
|
+
zoomPercent: number;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Focused document compatibility and display settings.
|
|
67
|
+
*
|
|
68
|
+
* @public
|
|
69
|
+
*/
|
|
70
|
+
export declare class DocumentSettings {
|
|
71
|
+
private readonly document;
|
|
72
|
+
/**
|
|
73
|
+
* @private
|
|
74
|
+
*/
|
|
75
|
+
constructor(document: WordDocument);
|
|
76
|
+
/**
|
|
77
|
+
* Gets or sets the Word compatibility mode for this document.
|
|
78
|
+
*
|
|
79
|
+
* @public
|
|
80
|
+
*/
|
|
81
|
+
compatibilityMode: CompatibilityMode;
|
|
82
|
+
/**
|
|
83
|
+
* Gets or sets whether document background shapes are displayed
|
|
84
|
+
* (`w:displayBackgroundShape`).
|
|
85
|
+
*
|
|
86
|
+
* @public
|
|
87
|
+
*/
|
|
88
|
+
displayBackgrounds: boolean;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Stable {@link ViewSetup} for `document`.
|
|
92
|
+
*
|
|
93
|
+
* @private
|
|
94
|
+
*/
|
|
95
|
+
export declare function viewSetupFor(document: WordDocument): ViewSetup;
|
|
96
|
+
/**
|
|
97
|
+
* Stable {@link DocumentSettings} for `document`.
|
|
98
|
+
*
|
|
99
|
+
* @private
|
|
100
|
+
*/
|
|
101
|
+
export declare function documentSettingsFor(document: WordDocument): DocumentSettings;
|
|
102
|
+
/**
|
|
103
|
+
* Install WordDocument property facades for settings-backed members.
|
|
104
|
+
* Idempotent; call from the settings feature entry after binding accessors.
|
|
105
|
+
*
|
|
106
|
+
* @private
|
|
107
|
+
*/
|
|
108
|
+
export declare function registerDocumentSettingsFacades(): void;
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public property facades over SettingsPart: {@link ViewSetup} and
|
|
3
|
+
* {@link DocumentSettings}. Stable per-{@link WordDocument} identity via WeakMap.
|
|
4
|
+
*
|
|
5
|
+
* Linked from `settings/index.ts` after {@link settingsFor} is defined (avoids cycle).
|
|
6
|
+
*
|
|
7
|
+
* @private
|
|
8
|
+
*/
|
|
9
|
+
import { InvalidArgumentError } from '../../core/errors/docx-error';
|
|
10
|
+
import { WordDocument } from '../document/document';
|
|
11
|
+
import { CompatibilityMode } from './compat-settings';
|
|
12
|
+
import { DocumentViewType } from './settings-children';
|
|
13
|
+
import { ZoomSettings, ZoomType } from './zoom';
|
|
14
|
+
/** Default `w:view` when the element is absent (Word print layout). */
|
|
15
|
+
var DEFAULT_DOCUMENT_VIEW = DocumentViewType.PrintLayout;
|
|
16
|
+
/** Default zoom percent when `w:zoom` is absent (matches createDefault). */
|
|
17
|
+
var DEFAULT_ZOOM_PERCENT = 100;
|
|
18
|
+
/** Default tab stop in points when `w:defaultTabStop` is absent (0.5 in). */
|
|
19
|
+
var DEFAULT_TAB_STOP_POINTS = 36;
|
|
20
|
+
function requireFiniteNonNegative(name, value) {
|
|
21
|
+
if (typeof value !== 'number' || !Number.isFinite(value) || value < 0) {
|
|
22
|
+
throw new InvalidArgumentError(name + " must be a finite non-negative number");
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function zoomTypeFromWire(wire) {
|
|
26
|
+
if (wire === undefined) {
|
|
27
|
+
return ZoomType.None;
|
|
28
|
+
}
|
|
29
|
+
switch (wire) {
|
|
30
|
+
case 'none':
|
|
31
|
+
return ZoomType.None;
|
|
32
|
+
case 'fullPage':
|
|
33
|
+
return ZoomType.FullPage;
|
|
34
|
+
case 'bestFit':
|
|
35
|
+
return ZoomType.BestFit;
|
|
36
|
+
case 'textFit':
|
|
37
|
+
return ZoomType.TextFit;
|
|
38
|
+
default:
|
|
39
|
+
return ZoomType.None;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function compatibilityModeFromWire(wire) {
|
|
43
|
+
if (wire === CompatibilityMode.Word2007) {
|
|
44
|
+
return CompatibilityMode.Word2007;
|
|
45
|
+
}
|
|
46
|
+
if (wire === CompatibilityMode.Word2010) {
|
|
47
|
+
return CompatibilityMode.Word2010;
|
|
48
|
+
}
|
|
49
|
+
if (wire === CompatibilityMode.Word2013) {
|
|
50
|
+
return CompatibilityMode.Word2013;
|
|
51
|
+
}
|
|
52
|
+
// Absent or unknown → Word 2013 (createDefault / modern Word default).
|
|
53
|
+
return CompatibilityMode.Word2013;
|
|
54
|
+
}
|
|
55
|
+
var settingsForRef;
|
|
56
|
+
var registerSettingsFeatureRef;
|
|
57
|
+
var attachedTemplateTargetRef;
|
|
58
|
+
/**
|
|
59
|
+
* Bind SettingsPart accessors from the settings feature entry (call once after
|
|
60
|
+
* `settingsFor` is defined).
|
|
61
|
+
*
|
|
62
|
+
* @private
|
|
63
|
+
*/
|
|
64
|
+
export function bindDocumentSettingsFacades(deps) {
|
|
65
|
+
settingsForRef = deps.settingsFor;
|
|
66
|
+
registerSettingsFeatureRef = deps.registerSettingsFeature;
|
|
67
|
+
attachedTemplateTargetRef = deps.attachedTemplateTarget;
|
|
68
|
+
}
|
|
69
|
+
function settingsFor(document) {
|
|
70
|
+
if (settingsForRef === undefined) {
|
|
71
|
+
throw new InvalidArgumentError('Document settings facades are not bound; load @syncfusion/ej2-docx settings feature first');
|
|
72
|
+
}
|
|
73
|
+
return settingsForRef(document);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Document view and zoom configuration (`w:view`, `w:zoom`).
|
|
77
|
+
*
|
|
78
|
+
* @public
|
|
79
|
+
*/
|
|
80
|
+
var ViewSetup = /** @class */ (function () {
|
|
81
|
+
/**
|
|
82
|
+
* @private
|
|
83
|
+
*/
|
|
84
|
+
function ViewSetup(document) {
|
|
85
|
+
this.document = document;
|
|
86
|
+
}
|
|
87
|
+
Object.defineProperty(ViewSetup.prototype, "documentViewType", {
|
|
88
|
+
/**
|
|
89
|
+
* Gets or sets the view used when the document is opened in Microsoft Word.
|
|
90
|
+
*
|
|
91
|
+
* @public
|
|
92
|
+
*/
|
|
93
|
+
get: function () {
|
|
94
|
+
var view = settingsFor(this.document).view();
|
|
95
|
+
if (view === undefined) {
|
|
96
|
+
return DEFAULT_DOCUMENT_VIEW;
|
|
97
|
+
}
|
|
98
|
+
var known = view.asDocumentViewType();
|
|
99
|
+
return known === undefined ? DEFAULT_DOCUMENT_VIEW : known;
|
|
100
|
+
},
|
|
101
|
+
set: function (value) {
|
|
102
|
+
settingsFor(this.document).setView(value);
|
|
103
|
+
},
|
|
104
|
+
enumerable: true,
|
|
105
|
+
configurable: true
|
|
106
|
+
});
|
|
107
|
+
Object.defineProperty(ViewSetup.prototype, "zoomType", {
|
|
108
|
+
/**
|
|
109
|
+
* Gets or sets how the document view is fitted in the application window.
|
|
110
|
+
*
|
|
111
|
+
* @public
|
|
112
|
+
*/
|
|
113
|
+
get: function () {
|
|
114
|
+
var zoom = settingsFor(this.document).zoom();
|
|
115
|
+
return zoomTypeFromWire(zoom === undefined ? undefined : zoom.type());
|
|
116
|
+
},
|
|
117
|
+
set: function (value) {
|
|
118
|
+
var part = settingsFor(this.document);
|
|
119
|
+
var existing = part.zoom();
|
|
120
|
+
if (existing === undefined) {
|
|
121
|
+
part.setZoom(ZoomSettings.create(DEFAULT_ZOOM_PERCENT, value));
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
existing.setType(value);
|
|
125
|
+
part.setZoom(existing);
|
|
126
|
+
},
|
|
127
|
+
enumerable: true,
|
|
128
|
+
configurable: true
|
|
129
|
+
});
|
|
130
|
+
Object.defineProperty(ViewSetup.prototype, "zoomPercent", {
|
|
131
|
+
/**
|
|
132
|
+
* Gets or sets the document zoom percentage.
|
|
133
|
+
*
|
|
134
|
+
* @public
|
|
135
|
+
*/
|
|
136
|
+
get: function () {
|
|
137
|
+
var zoom = settingsFor(this.document).zoom();
|
|
138
|
+
if (zoom === undefined) {
|
|
139
|
+
return DEFAULT_ZOOM_PERCENT;
|
|
140
|
+
}
|
|
141
|
+
var percent = zoom.percent();
|
|
142
|
+
return percent === undefined ? DEFAULT_ZOOM_PERCENT : percent;
|
|
143
|
+
},
|
|
144
|
+
set: function (value) {
|
|
145
|
+
requireFiniteNonNegative('zoomPercent', value);
|
|
146
|
+
var part = settingsFor(this.document);
|
|
147
|
+
var existing = part.zoom();
|
|
148
|
+
if (existing === undefined) {
|
|
149
|
+
part.setZoom(ZoomSettings.create(value, ZoomType.None));
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
existing.setPercent(value);
|
|
153
|
+
part.setZoom(existing);
|
|
154
|
+
},
|
|
155
|
+
enumerable: true,
|
|
156
|
+
configurable: true
|
|
157
|
+
});
|
|
158
|
+
return ViewSetup;
|
|
159
|
+
}());
|
|
160
|
+
export { ViewSetup };
|
|
161
|
+
/**
|
|
162
|
+
* Focused document compatibility and display settings.
|
|
163
|
+
*
|
|
164
|
+
* @public
|
|
165
|
+
*/
|
|
166
|
+
var DocumentSettings = /** @class */ (function () {
|
|
167
|
+
/**
|
|
168
|
+
* @private
|
|
169
|
+
*/
|
|
170
|
+
function DocumentSettings(document) {
|
|
171
|
+
this.document = document;
|
|
172
|
+
}
|
|
173
|
+
Object.defineProperty(DocumentSettings.prototype, "compatibilityMode", {
|
|
174
|
+
/**
|
|
175
|
+
* Gets or sets the Word compatibility mode for this document.
|
|
176
|
+
*
|
|
177
|
+
* @public
|
|
178
|
+
*/
|
|
179
|
+
get: function () {
|
|
180
|
+
return compatibilityModeFromWire(settingsFor(this.document).compatibilityMode());
|
|
181
|
+
},
|
|
182
|
+
set: function (value) {
|
|
183
|
+
settingsFor(this.document).setCompatibilityMode(value);
|
|
184
|
+
},
|
|
185
|
+
enumerable: true,
|
|
186
|
+
configurable: true
|
|
187
|
+
});
|
|
188
|
+
Object.defineProperty(DocumentSettings.prototype, "displayBackgrounds", {
|
|
189
|
+
/**
|
|
190
|
+
* Gets or sets whether document background shapes are displayed
|
|
191
|
+
* (`w:displayBackgroundShape`).
|
|
192
|
+
*
|
|
193
|
+
* @public
|
|
194
|
+
*/
|
|
195
|
+
get: function () {
|
|
196
|
+
var value = settingsFor(this.document).displayBackgroundShape();
|
|
197
|
+
return value === true;
|
|
198
|
+
},
|
|
199
|
+
set: function (value) {
|
|
200
|
+
// Omission represents the default (false); remove the element when false.
|
|
201
|
+
settingsFor(this.document).setDisplayBackgroundShape(value ? true : undefined);
|
|
202
|
+
},
|
|
203
|
+
enumerable: true,
|
|
204
|
+
configurable: true
|
|
205
|
+
});
|
|
206
|
+
return DocumentSettings;
|
|
207
|
+
}());
|
|
208
|
+
export { DocumentSettings };
|
|
209
|
+
var viewSetups = new WeakMap();
|
|
210
|
+
var documentSettingsMap = new WeakMap();
|
|
211
|
+
/**
|
|
212
|
+
* Stable {@link ViewSetup} for `document`.
|
|
213
|
+
*
|
|
214
|
+
* @private
|
|
215
|
+
*/
|
|
216
|
+
export function viewSetupFor(document) {
|
|
217
|
+
if (registerSettingsFeatureRef !== undefined) {
|
|
218
|
+
registerSettingsFeatureRef();
|
|
219
|
+
}
|
|
220
|
+
var cached = viewSetups.get(document);
|
|
221
|
+
if (cached !== undefined) {
|
|
222
|
+
return cached;
|
|
223
|
+
}
|
|
224
|
+
var setup = new ViewSetup(document);
|
|
225
|
+
viewSetups.set(document, setup);
|
|
226
|
+
return setup;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Stable {@link DocumentSettings} for `document`.
|
|
230
|
+
*
|
|
231
|
+
* @private
|
|
232
|
+
*/
|
|
233
|
+
export function documentSettingsFor(document) {
|
|
234
|
+
if (registerSettingsFeatureRef !== undefined) {
|
|
235
|
+
registerSettingsFeatureRef();
|
|
236
|
+
}
|
|
237
|
+
var cached = documentSettingsMap.get(document);
|
|
238
|
+
if (cached !== undefined) {
|
|
239
|
+
return cached;
|
|
240
|
+
}
|
|
241
|
+
var settings = new DocumentSettings(document);
|
|
242
|
+
documentSettingsMap.set(document, settings);
|
|
243
|
+
return settings;
|
|
244
|
+
}
|
|
245
|
+
var facadesRegistered = false;
|
|
246
|
+
/**
|
|
247
|
+
* Install WordDocument property facades for settings-backed members.
|
|
248
|
+
* Idempotent; call from the settings feature entry after binding accessors.
|
|
249
|
+
*
|
|
250
|
+
* @private
|
|
251
|
+
*/
|
|
252
|
+
export function registerDocumentSettingsFacades() {
|
|
253
|
+
if (facadesRegistered) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
facadesRegistered = true;
|
|
257
|
+
if (registerSettingsFeatureRef !== undefined) {
|
|
258
|
+
registerSettingsFeatureRef();
|
|
259
|
+
}
|
|
260
|
+
Object.defineProperty(WordDocument.prototype, 'viewSetup', {
|
|
261
|
+
configurable: true,
|
|
262
|
+
enumerable: false,
|
|
263
|
+
get: function () {
|
|
264
|
+
return viewSetupFor(this);
|
|
265
|
+
},
|
|
266
|
+
});
|
|
267
|
+
Object.defineProperty(WordDocument.prototype, 'settings', {
|
|
268
|
+
configurable: true,
|
|
269
|
+
enumerable: false,
|
|
270
|
+
get: function () {
|
|
271
|
+
return documentSettingsFor(this);
|
|
272
|
+
},
|
|
273
|
+
});
|
|
274
|
+
Object.defineProperty(WordDocument.prototype, 'trackRevisions', {
|
|
275
|
+
configurable: true,
|
|
276
|
+
enumerable: false,
|
|
277
|
+
get: function () {
|
|
278
|
+
return settingsFor(this).trackRevisions() === true;
|
|
279
|
+
},
|
|
280
|
+
set: function (value) {
|
|
281
|
+
// Omission represents default off.
|
|
282
|
+
settingsFor(this).setTrackRevisions(value ? true : undefined);
|
|
283
|
+
},
|
|
284
|
+
});
|
|
285
|
+
Object.defineProperty(WordDocument.prototype, 'defaultTabStop', {
|
|
286
|
+
configurable: true,
|
|
287
|
+
enumerable: false,
|
|
288
|
+
get: function () {
|
|
289
|
+
var value = settingsFor(this).defaultTabStop();
|
|
290
|
+
return value === undefined ? DEFAULT_TAB_STOP_POINTS : value;
|
|
291
|
+
},
|
|
292
|
+
set: function (value) {
|
|
293
|
+
requireFiniteNonNegative('defaultTabStop', value);
|
|
294
|
+
settingsFor(this).setDefaultTabStop(value);
|
|
295
|
+
},
|
|
296
|
+
});
|
|
297
|
+
Object.defineProperty(WordDocument.prototype, 'attachedTemplate', {
|
|
298
|
+
configurable: true,
|
|
299
|
+
enumerable: false,
|
|
300
|
+
get: function () {
|
|
301
|
+
var template = settingsFor(this).attachedTemplate();
|
|
302
|
+
if (template === undefined) {
|
|
303
|
+
return undefined;
|
|
304
|
+
}
|
|
305
|
+
// Resolve relationship target when available (read-only surface).
|
|
306
|
+
if (attachedTemplateTargetRef !== undefined) {
|
|
307
|
+
void attachedTemplateTargetRef(this);
|
|
308
|
+
}
|
|
309
|
+
return template;
|
|
310
|
+
},
|
|
311
|
+
});
|
|
312
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple typed wrappers for `w:defaultTabStop` and `w:characterSpacingControl`
|
|
3
|
+
* (`CT_TwipsMeasure` and `ST_CharacterSpacing`, Transitional `wml.xsd`).
|
|
4
|
+
*
|
|
5
|
+
* @private
|
|
6
|
+
*/
|
|
7
|
+
import { OpenXmlElement } from '../../core/xml/index';
|
|
8
|
+
/**
|
|
9
|
+
* `ST_CharacterSpacing` values from Transitional `wml.xsd`.
|
|
10
|
+
*
|
|
11
|
+
* - `doNotCompress` — no compression
|
|
12
|
+
* - `compressPunctuation` — compress punctuation
|
|
13
|
+
* - `compressPunctuationAndJapaneseKana` — compress both
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export declare type CharacterSpacingControl = 'doNotCompress' | 'compressPunctuation' | 'compressPunctuationAndJapaneseKana';
|
|
18
|
+
/**
|
|
19
|
+
* Parse `w:defaultTabStop/@w:val` (`ST_TwipsMeasure` on the wire) into plain points.
|
|
20
|
+
* Returns `undefined` when missing or non-numeric.
|
|
21
|
+
*
|
|
22
|
+
* @private
|
|
23
|
+
*/
|
|
24
|
+
export declare function parseDefaultTabStop(element: OpenXmlElement): number | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Serialize `w:defaultTabStop` from a plain points value (writes twips on the wire).
|
|
27
|
+
*
|
|
28
|
+
* @private
|
|
29
|
+
*/
|
|
30
|
+
export declare function serializeDefaultTabStop(value: number): OpenXmlElement;
|
|
31
|
+
/**
|
|
32
|
+
* Parse `w:characterSpacingControl/@w:val`.
|
|
33
|
+
* Returns `undefined` when missing or not a recognised value.
|
|
34
|
+
*
|
|
35
|
+
* @private
|
|
36
|
+
*/
|
|
37
|
+
export declare function parseCharacterSpacingControl(element: OpenXmlElement): CharacterSpacingControl | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Serialize `w:characterSpacingControl` from a value.
|
|
40
|
+
*
|
|
41
|
+
* @private
|
|
42
|
+
*/
|
|
43
|
+
export declare function serializeCharacterSpacingControl(value: CharacterSpacingControl): OpenXmlElement;
|