@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.
Files changed (417) hide show
  1. package/.gitleaksignore +35 -0
  2. package/README.md +68 -2
  3. package/core.js +4 -0
  4. package/dist/ej2-docx.umd.min.js +11 -0
  5. package/dist/ej2-docx.umd.min.js.map +1 -0
  6. package/dist/es6/ej2-docx.es2015.js +66697 -0
  7. package/dist/es6/ej2-docx.es2015.js.map +1 -0
  8. package/dist/es6/ej2-docx.es5.js +77568 -0
  9. package/dist/es6/ej2-docx.es5.js.map +1 -0
  10. package/dist/global/ej2-docx.min.js +11 -0
  11. package/dist/global/ej2-docx.min.js.map +1 -0
  12. package/dist/global/index.d.ts +14 -0
  13. package/features.js +4 -0
  14. package/index.js +4 -0
  15. package/license +10 -0
  16. package/package.json +30 -3
  17. package/src/all.d.ts +50 -0
  18. package/src/all.js +147 -0
  19. package/src/core/compat/base64.d.ts +13 -0
  20. package/src/core/compat/base64.js +90 -0
  21. package/src/core/compat/object-compat.d.ts +30 -0
  22. package/src/core/compat/object-compat.js +40 -0
  23. package/src/core/compat/sha256.d.ts +9 -0
  24. package/src/core/compat/sha256.js +98 -0
  25. package/src/core/errors/docx-error.d.ts +89 -0
  26. package/src/core/errors/docx-error.js +138 -0
  27. package/src/core/errors/error-codes.d.ts +8 -0
  28. package/src/core/errors/error-codes.js +0 -0
  29. package/src/core/errors/index.d.ts +10 -0
  30. package/src/core/errors/index.js +9 -0
  31. package/src/core/index.d.ts +12 -0
  32. package/src/core/index.js +12 -0
  33. package/src/core/mc/alternate-content.d.ts +7 -0
  34. package/src/core/mc/alternate-content.js +67 -0
  35. package/src/core/mc/attributes.d.ts +24 -0
  36. package/src/core/mc/attributes.js +82 -0
  37. package/src/core/mc/index.d.ts +7 -0
  38. package/src/core/mc/index.js +5 -0
  39. package/src/core/mc/inspect.d.ts +16 -0
  40. package/src/core/mc/inspect.js +148 -0
  41. package/src/core/mc/namespaces.d.ts +4 -0
  42. package/src/core/mc/namespaces.js +4 -0
  43. package/src/core/mc/scope.d.ts +6 -0
  44. package/src/core/mc/scope.js +47 -0
  45. package/src/core/opc/content-types.d.ts +34 -0
  46. package/src/core/opc/content-types.js +162 -0
  47. package/src/core/opc/index.d.ts +8 -0
  48. package/src/core/opc/index.js +4 -0
  49. package/src/core/opc/package.d.ts +49 -0
  50. package/src/core/opc/package.js +324 -0
  51. package/src/core/opc/part-name.d.ts +47 -0
  52. package/src/core/opc/part-name.js +205 -0
  53. package/src/core/opc/relationships.d.ts +46 -0
  54. package/src/core/opc/relationships.js +212 -0
  55. package/src/core/preservation/index.d.ts +2 -0
  56. package/src/core/preservation/index.js +1 -0
  57. package/src/core/preservation/opaque-body.d.ts +16 -0
  58. package/src/core/preservation/opaque-body.js +69 -0
  59. package/src/core/registry/block-handlers.d.ts +30 -0
  60. package/src/core/registry/block-handlers.js +36 -0
  61. package/src/core/registry/create-defaults.d.ts +39 -0
  62. package/src/core/registry/create-defaults.js +42 -0
  63. package/src/core/registry/feature-registry.d.ts +20 -0
  64. package/src/core/registry/feature-registry.js +29 -0
  65. package/src/core/registry/index.d.ts +9 -0
  66. package/src/core/registry/index.js +8 -0
  67. package/src/core/registry/inline-handlers.d.ts +20 -0
  68. package/src/core/registry/inline-handlers.js +30 -0
  69. package/src/core/registry/materialize-handlers.d.ts +35 -0
  70. package/src/core/registry/materialize-handlers.js +75 -0
  71. package/src/core/registry/multi-part-handlers.d.ts +37 -0
  72. package/src/core/registry/multi-part-handlers.js +206 -0
  73. package/src/core/registry/package-part-handlers.d.ts +28 -0
  74. package/src/core/registry/package-part-handlers.js +190 -0
  75. package/src/core/registry/part-handlers.d.ts +24 -0
  76. package/src/core/registry/part-handlers.js +172 -0
  77. package/src/core/registry/run-leaf-handlers.d.ts +26 -0
  78. package/src/core/registry/run-leaf-handlers.js +72 -0
  79. package/src/core/security/limits.d.ts +40 -0
  80. package/src/core/security/limits.js +26 -0
  81. package/src/core/xml/index.d.ts +7 -0
  82. package/src/core/xml/index.js +3 -0
  83. package/src/core/xml/model.d.ts +66 -0
  84. package/src/core/xml/model.js +17 -0
  85. package/src/core/xml/parse.d.ts +12 -0
  86. package/src/core/xml/parse.js +382 -0
  87. package/src/core/xml/serialize.d.ts +6 -0
  88. package/src/core/xml/serialize.js +93 -0
  89. package/src/core/zip/crc32.d.ts +2 -0
  90. package/src/core/zip/crc32.js +25 -0
  91. package/src/core/zip/deflate.d.ts +6 -0
  92. package/src/core/zip/deflate.js +6 -0
  93. package/src/core/zip/index.d.ts +10 -0
  94. package/src/core/zip/index.js +4 -0
  95. package/src/core/zip/inflate-raw.d.ts +17 -0
  96. package/src/core/zip/inflate-raw.js +450 -0
  97. package/src/core/zip/names.d.ts +6 -0
  98. package/src/core/zip/names.js +52 -0
  99. package/src/core/zip/read.d.ts +8 -0
  100. package/src/core/zip/read.js +262 -0
  101. package/src/core/zip/write.d.ts +7 -0
  102. package/src/core/zip/write.js +189 -0
  103. package/src/core/zip/zip-entry.d.ts +4 -0
  104. package/src/core/zip/zip-entry.js +0 -0
  105. package/src/features/bibliography/index.d.ts +100 -0
  106. package/src/features/bibliography/index.js +290 -0
  107. package/src/features/bookmarks/index.d.ts +331 -0
  108. package/src/features/bookmarks/index.js +1009 -0
  109. package/src/features/comments/comment-extensions.d.ts +157 -0
  110. package/src/features/comments/comment-extensions.js +356 -0
  111. package/src/features/comments/index.d.ts +579 -0
  112. package/src/features/comments/index.js +1727 -0
  113. package/src/features/content-controls/index.d.ts +821 -0
  114. package/src/features/content-controls/index.js +2857 -0
  115. package/src/features/custom-xml/index.d.ts +236 -0
  116. package/src/features/custom-xml/index.js +661 -0
  117. package/src/features/document/alignment.d.ts +23 -0
  118. package/src/features/document/alignment.js +36 -0
  119. package/src/features/document/alt-chunk.d.ts +103 -0
  120. package/src/features/document/alt-chunk.js +221 -0
  121. package/src/features/document/assert-never.d.ts +1 -0
  122. package/src/features/document/assert-never.js +4 -0
  123. package/src/features/document/augmentations.d.ts +578 -0
  124. package/src/features/document/augmentations.js +0 -0
  125. package/src/features/document/body-always-on.d.ts +36 -0
  126. package/src/features/document/body-always-on.js +66 -0
  127. package/src/features/document/body-blocks.d.ts +7 -0
  128. package/src/features/document/body-blocks.js +78 -0
  129. package/src/features/document/body-item-adapters.d.ts +62 -0
  130. package/src/features/document/body-item-adapters.js +97 -0
  131. package/src/features/document/body-item-collection.d.ts +151 -0
  132. package/src/features/document/body-item-collection.js +440 -0
  133. package/src/features/document/body-item.d.ts +35 -0
  134. package/src/features/document/body-item.js +8 -0
  135. package/src/features/document/body.d.ts +150 -0
  136. package/src/features/document/body.js +263 -0
  137. package/src/features/document/character-format.d.ts +413 -0
  138. package/src/features/document/character-format.js +2054 -0
  139. package/src/features/document/color.d.ts +178 -0
  140. package/src/features/document/color.js +495 -0
  141. package/src/features/document/document.d.ts +410 -0
  142. package/src/features/document/document.js +1049 -0
  143. package/src/features/document/element-type.d.ts +68 -0
  144. package/src/features/document/element-type.js +133 -0
  145. package/src/features/document/entity-type.d.ts +92 -0
  146. package/src/features/document/entity-type.js +93 -0
  147. package/src/features/document/feature-block.d.ts +16 -0
  148. package/src/features/document/feature-block.js +0 -0
  149. package/src/features/document/feature-inline.d.ts +13 -0
  150. package/src/features/document/feature-inline.js +0 -0
  151. package/src/features/document/feature-multi-package-part.d.ts +19 -0
  152. package/src/features/document/feature-multi-package-part.js +8 -0
  153. package/src/features/document/feature-package-level-part.d.ts +18 -0
  154. package/src/features/document/feature-package-level-part.js +8 -0
  155. package/src/features/document/feature-package-part.d.ts +14 -0
  156. package/src/features/document/feature-package-part.js +0 -0
  157. package/src/features/document/feature-run-leaf.d.ts +9 -0
  158. package/src/features/document/feature-run-leaf.js +0 -0
  159. package/src/features/document/headers-footers.d.ts +206 -0
  160. package/src/features/document/headers-footers.js +384 -0
  161. package/src/features/document/index.d.ts +41 -0
  162. package/src/features/document/index.js +34 -0
  163. package/src/features/document/length.d.ts +152 -0
  164. package/src/features/document/length.js +245 -0
  165. package/src/features/document/load-options.d.ts +14 -0
  166. package/src/features/document/load-options.js +0 -0
  167. package/src/features/document/locale-ids.d.ts +227 -0
  168. package/src/features/document/locale-ids.js +485 -0
  169. package/src/features/document/on-off.d.ts +9 -0
  170. package/src/features/document/on-off.js +27 -0
  171. package/src/features/document/page-setup.d.ts +339 -0
  172. package/src/features/document/page-setup.js +244 -0
  173. package/src/features/document/paragraph-format.d.ts +880 -0
  174. package/src/features/document/paragraph-format.js +2807 -0
  175. package/src/features/document/paragraph-item-collection.d.ts +162 -0
  176. package/src/features/document/paragraph-item-collection.js +363 -0
  177. package/src/features/document/paragraph-item.d.ts +83 -0
  178. package/src/features/document/paragraph-item.js +103 -0
  179. package/src/features/document/paragraph.d.ts +435 -0
  180. package/src/features/document/paragraph.js +888 -0
  181. package/src/features/document/run.d.ts +1 -0
  182. package/src/features/document/run.js +768 -0
  183. package/src/features/document/section-partition-flatten.d.ts +124 -0
  184. package/src/features/document/section-partition-flatten.js +217 -0
  185. package/src/features/document/section-properties-model.d.ts +13 -0
  186. package/src/features/document/section-properties-model.js +0 -0
  187. package/src/features/document/section.d.ts +93 -0
  188. package/src/features/document/section.js +178 -0
  189. package/src/features/document/sections.d.ts +103 -0
  190. package/src/features/document/sections.js +217 -0
  191. package/src/features/document/sub-super-script.d.ts +23 -0
  192. package/src/features/document/sub-super-script.js +43 -0
  193. package/src/features/document/text-range.d.ts +445 -0
  194. package/src/features/document/text-range.js +1156 -0
  195. package/src/features/document/typed-body-collections.d.ts +162 -0
  196. package/src/features/document/typed-body-collections.js +371 -0
  197. package/src/features/document/underline-style.d.ts +38 -0
  198. package/src/features/document/underline-style.js +126 -0
  199. package/src/features/document/units.d.ts +8 -0
  200. package/src/features/document/units.js +7 -0
  201. package/src/features/document/wml.d.ts +16 -0
  202. package/src/features/document/wml.js +67 -0
  203. package/src/features/drawing/authoring.d.ts +27 -0
  204. package/src/features/drawing/authoring.js +271 -0
  205. package/src/features/drawing/body-pr.d.ts +271 -0
  206. package/src/features/drawing/body-pr.js +663 -0
  207. package/src/features/drawing/drawing-shape.d.ts +1192 -0
  208. package/src/features/drawing/drawing-shape.js +3239 -0
  209. package/src/features/drawing/encode-builders.d.ts +176 -0
  210. package/src/features/drawing/encode-builders.js +390 -0
  211. package/src/features/drawing/fill-format.d.ts +52 -0
  212. package/src/features/drawing/fill-format.js +124 -0
  213. package/src/features/drawing/host-codec.d.ts +632 -0
  214. package/src/features/drawing/host-codec.js +2595 -0
  215. package/src/features/drawing/index.d.ts +13 -0
  216. package/src/features/drawing/index.js +33 -0
  217. package/src/features/drawing/line-format.d.ts +76 -0
  218. package/src/features/drawing/line-format.js +343 -0
  219. package/src/features/drawing/parse-register.d.ts +50 -0
  220. package/src/features/drawing/parse-register.js +257 -0
  221. package/src/features/drawing/residual-utils.d.ts +47 -0
  222. package/src/features/drawing/residual-utils.js +290 -0
  223. package/src/features/drawing/shape-types.d.ts +433 -0
  224. package/src/features/drawing/shape-types.js +437 -0
  225. package/src/features/drawing/sp-pr.d.ts +396 -0
  226. package/src/features/drawing/sp-pr.js +610 -0
  227. package/src/features/drawing/text-frame.d.ts +90 -0
  228. package/src/features/drawing/text-frame.js +152 -0
  229. package/src/features/drawing/types.d.ts +352 -0
  230. package/src/features/drawing/types.js +60 -0
  231. package/src/features/drawing/wrap-format.d.ts +62 -0
  232. package/src/features/drawing/wrap-format.js +114 -0
  233. package/src/features/editable-ranges/index.d.ts +494 -0
  234. package/src/features/editable-ranges/index.js +1348 -0
  235. package/src/features/fields/index.d.ts +428 -0
  236. package/src/features/fields/index.js +2148 -0
  237. package/src/features/fields/paragraph-field.d.ts +187 -0
  238. package/src/features/fields/paragraph-field.js +692 -0
  239. package/src/features/font-table/font-substitution-table.d.ts +75 -0
  240. package/src/features/font-table/font-substitution-table.js +257 -0
  241. package/src/features/font-table/font-table-entry.d.ts +255 -0
  242. package/src/features/font-table/font-table-entry.js +823 -0
  243. package/src/features/font-table/font-table.d.ts +128 -0
  244. package/src/features/font-table/font-table.js +313 -0
  245. package/src/features/font-table/index.d.ts +27 -0
  246. package/src/features/font-table/index.js +48 -0
  247. package/src/features/glossary/index.d.ts +97 -0
  248. package/src/features/glossary/index.js +286 -0
  249. package/src/features/headers-footers/index.d.ts +506 -0
  250. package/src/features/headers-footers/index.js +1666 -0
  251. package/src/features/hyperlinks/index.d.ts +230 -0
  252. package/src/features/hyperlinks/index.js +685 -0
  253. package/src/features/images/caption-authoring-api.d.ts +33 -0
  254. package/src/features/images/caption-authoring-api.js +33 -0
  255. package/src/features/images/caption-enums.d.ts +52 -0
  256. package/src/features/images/caption-enums.js +141 -0
  257. package/src/features/images/caption-host.d.ts +10 -0
  258. package/src/features/images/caption-host.js +21 -0
  259. package/src/features/images/captions.d.ts +13 -0
  260. package/src/features/images/captions.js +142 -0
  261. package/src/features/images/host-codec.d.ts +103 -0
  262. package/src/features/images/host-codec.js +720 -0
  263. package/src/features/images/image-sniff.d.ts +21 -0
  264. package/src/features/images/image-sniff.js +71 -0
  265. package/src/features/images/index.d.ts +506 -0
  266. package/src/features/images/index.js +1429 -0
  267. package/src/features/images/layout-types.d.ts +232 -0
  268. package/src/features/images/layout-types.js +294 -0
  269. package/src/features/images/public-entry.d.ts +9 -0
  270. package/src/features/images/public-entry.js +9 -0
  271. package/src/features/index.d.ts +35 -0
  272. package/src/features/index.js +36 -0
  273. package/src/features/mail-merge/index.d.ts +113 -0
  274. package/src/features/mail-merge/index.js +315 -0
  275. package/src/features/notes/index.d.ts +573 -0
  276. package/src/features/notes/index.js +1725 -0
  277. package/src/features/numbering/abstract-numbering.d.ts +90 -0
  278. package/src/features/numbering/abstract-numbering.js +292 -0
  279. package/src/features/numbering/index.d.ts +182 -0
  280. package/src/features/numbering/index.js +668 -0
  281. package/src/features/numbering/list-format.d.ts +158 -0
  282. package/src/features/numbering/list-format.js +590 -0
  283. package/src/features/numbering/list-string.d.ts +7 -0
  284. package/src/features/numbering/list-string.js +423 -0
  285. package/src/features/numbering/list-style.d.ts +204 -0
  286. package/src/features/numbering/list-style.js +1084 -0
  287. package/src/features/numbering/numbering-instance.d.ts +101 -0
  288. package/src/features/numbering/numbering-instance.js +329 -0
  289. package/src/features/numbering/numbering-level.d.ts +118 -0
  290. package/src/features/numbering/numbering-level.js +501 -0
  291. package/src/features/numbering/picture-bullet.d.ts +34 -0
  292. package/src/features/numbering/picture-bullet.js +88 -0
  293. package/src/features/ole-object/catalog.d.ts +300 -0
  294. package/src/features/ole-object/catalog.js +908 -0
  295. package/src/features/ole-object/index.d.ts +526 -0
  296. package/src/features/ole-object/index.js +1421 -0
  297. package/src/features/ole-object/relationship.d.ts +27 -0
  298. package/src/features/ole-object/relationship.js +27 -0
  299. package/src/features/ole-object/typed-dom.d.ts +186 -0
  300. package/src/features/ole-object/typed-dom.js +595 -0
  301. package/src/features/properties/index.d.ts +205 -0
  302. package/src/features/properties/index.js +549 -0
  303. package/src/features/revisions/index.d.ts +204 -0
  304. package/src/features/revisions/index.js +695 -0
  305. package/src/features/sections/column-collection.d.ts +119 -0
  306. package/src/features/sections/column-collection.js +478 -0
  307. package/src/features/sections/column.d.ts +15 -0
  308. package/src/features/sections/column.js +37 -0
  309. package/src/features/sections/index.d.ts +91 -0
  310. package/src/features/sections/index.js +1096 -0
  311. package/src/features/sections/margins.d.ts +40 -0
  312. package/src/features/sections/margins.js +105 -0
  313. package/src/features/sections/page-number-style.d.ts +21 -0
  314. package/src/features/sections/page-number-style.js +62 -0
  315. package/src/features/sections/page-orientation.d.ts +10 -0
  316. package/src/features/sections/page-orientation.js +10 -0
  317. package/src/features/sections/page-setup.d.ts +435 -0
  318. package/src/features/sections/page-setup.js +1479 -0
  319. package/src/features/sections/page-size.d.ts +59 -0
  320. package/src/features/sections/page-size.js +68 -0
  321. package/src/features/sections/section-break-code.d.ts +27 -0
  322. package/src/features/sections/section-break-code.js +60 -0
  323. package/src/features/sections/section-document-association.d.ts +18 -0
  324. package/src/features/sections/section-document-association.js +31 -0
  325. package/src/features/sections/section-validation.d.ts +43 -0
  326. package/src/features/sections/section-validation.js +97 -0
  327. package/src/features/settings/attached-template.d.ts +35 -0
  328. package/src/features/settings/attached-template.js +98 -0
  329. package/src/features/settings/compat-settings.d.ts +216 -0
  330. package/src/features/settings/compat-settings.js +508 -0
  331. package/src/features/settings/document-background.d.ts +59 -0
  332. package/src/features/settings/document-background.js +131 -0
  333. package/src/features/settings/document-protection.d.ts +65 -0
  334. package/src/features/settings/document-protection.js +157 -0
  335. package/src/features/settings/document-settings-facades.d.ts +108 -0
  336. package/src/features/settings/document-settings-facades.js +312 -0
  337. package/src/features/settings/document-settings-values.d.ts +43 -0
  338. package/src/features/settings/document-settings-values.js +60 -0
  339. package/src/features/settings/footnote-properties.d.ts +211 -0
  340. package/src/features/settings/footnote-properties.js +591 -0
  341. package/src/features/settings/index.d.ts +356 -0
  342. package/src/features/settings/index.js +829 -0
  343. package/src/features/settings/settings-children.d.ts +151 -0
  344. package/src/features/settings/settings-children.js +505 -0
  345. package/src/features/settings/web-settings.d.ts +88 -0
  346. package/src/features/settings/web-settings.js +227 -0
  347. package/src/features/settings/zoom.d.ts +79 -0
  348. package/src/features/settings/zoom.js +147 -0
  349. package/src/features/styles/builtin-catalog.d.ts +159 -0
  350. package/src/features/styles/builtin-catalog.js +963 -0
  351. package/src/features/styles/builtin-resolver.d.ts +49 -0
  352. package/src/features/styles/builtin-resolver.js +165 -0
  353. package/src/features/styles/default-styles.d.ts +37 -0
  354. package/src/features/styles/default-styles.js +186 -0
  355. package/src/features/styles/default-theme.d.ts +13 -0
  356. package/src/features/styles/default-theme.js +13 -0
  357. package/src/features/styles/doc-defaults.d.ts +58 -0
  358. package/src/features/styles/doc-defaults.js +178 -0
  359. package/src/features/styles/formatting-resolver.d.ts +27 -0
  360. package/src/features/styles/formatting-resolver.js +72 -0
  361. package/src/features/styles/index.d.ts +256 -0
  362. package/src/features/styles/index.js +1325 -0
  363. package/src/features/styles/latent-styles.d.ts +68 -0
  364. package/src/features/styles/latent-styles.js +305 -0
  365. package/src/features/styles/paragraph-properties.d.ts +71 -0
  366. package/src/features/styles/paragraph-properties.js +237 -0
  367. package/src/features/styles/run-properties.d.ts +93 -0
  368. package/src/features/styles/run-properties.js +516 -0
  369. package/src/features/styles/style-base.d.ts +402 -0
  370. package/src/features/styles/style-base.js +1026 -0
  371. package/src/features/styles/style-collection.d.ts +264 -0
  372. package/src/features/styles/style-collection.js +714 -0
  373. package/src/features/styles/style-format-bridge.d.ts +64 -0
  374. package/src/features/styles/style-format-bridge.js +100 -0
  375. package/src/features/styles/style.d.ts +84 -0
  376. package/src/features/styles/style.js +375 -0
  377. package/src/features/styles/styles-with-effects.d.ts +71 -0
  378. package/src/features/styles/styles-with-effects.js +180 -0
  379. package/src/features/styles/table-style.d.ts +272 -0
  380. package/src/features/styles/table-style.js +1226 -0
  381. package/src/features/styles/theme.d.ts +126 -0
  382. package/src/features/styles/theme.js +377 -0
  383. package/src/features/tables/border-style-map.d.ts +24 -0
  384. package/src/features/tables/border-style-map.js +81 -0
  385. package/src/features/tables/borders.d.ts +126 -0
  386. package/src/features/tables/borders.js +527 -0
  387. package/src/features/tables/collections.d.ts +113 -0
  388. package/src/features/tables/collections.js +261 -0
  389. package/src/features/tables/format.d.ts +208 -0
  390. package/src/features/tables/format.js +716 -0
  391. package/src/features/tables/index.d.ts +597 -0
  392. package/src/features/tables/index.js +2386 -0
  393. package/src/features/tables/paddings.d.ts +41 -0
  394. package/src/features/tables/paddings.js +97 -0
  395. package/src/features/tables/tbl-pr-positioning.d.ts +27 -0
  396. package/src/features/tables/tbl-pr-positioning.js +178 -0
  397. package/src/features/tables/tbl-pr.d.ts +528 -0
  398. package/src/features/tables/tbl-pr.js +1208 -0
  399. package/src/features/tables/tc-pr.d.ts +168 -0
  400. package/src/features/tables/tc-pr.js +553 -0
  401. package/src/features/tables/tr-pr.d.ts +60 -0
  402. package/src/features/tables/tr-pr.js +215 -0
  403. package/src/features/watermark/detect.d.ts +76 -0
  404. package/src/features/watermark/detect.js +219 -0
  405. package/src/features/watermark/index.d.ts +28 -0
  406. package/src/features/watermark/index.js +91 -0
  407. package/src/features/watermark/logical-store.d.ts +29 -0
  408. package/src/features/watermark/logical-store.js +31 -0
  409. package/src/features/watermark/model.d.ts +285 -0
  410. package/src/features/watermark/model.js +597 -0
  411. package/src/features/watermark/parse.d.ts +84 -0
  412. package/src/features/watermark/parse.js +815 -0
  413. package/src/features/watermark/serialize.d.ts +98 -0
  414. package/src/features/watermark/serialize.js +1517 -0
  415. package/src/global.js +1 -0
  416. package/src/index.d.ts +2 -0
  417. package/src/index.js +2 -0
@@ -0,0 +1,445 @@
1
+ import { FeatureId } from '../../core/registry/feature-registry';
2
+ import { OpenXmlAttribute, OpenXmlElement } from '../../core/xml/index';
3
+ import { CharacterFormat, CharacterFormatDelta, CharacterFormatHost, CharacterFormatSnapshot } from './character-format';
4
+ import { FeatureInline } from './feature-inline';
5
+ import { FeatureRunLeaf } from './feature-run-leaf';
6
+ import { ParagraphItem, ParagraphItemOwner } from './paragraph-item';
7
+ export { ParagraphItem, ParagraphItemOwner } from './paragraph-item';
8
+ import { EntityType } from './entity-type';
9
+ import { Field, FieldMark } from '../fields/paragraph-field';
10
+ /**
11
+ * Break kind for `w:br` (`ST_BrType` plus the Line default).
12
+ *
13
+ * OOXML has no `@w:type="line"` value: a line break is a bare `w:br` (type omitted).
14
+ * Text-wrapping breaks use `@w:type="textWrapping"`.
15
+ *
16
+ * Citation: ECMA-376-1 §17.3.3.1–2; transitional `wml.xsd` `CT_Br` / `ST_BrType`.
17
+ *
18
+ * @public
19
+ */
20
+ export declare const BreakType: {
21
+ /**
22
+ * Page break. Maps to `w:br` with `@w:type="page"`.
23
+ */
24
+ PageBreak: "page";
25
+ /**
26
+ * Column break. Maps to `w:br` with `@w:type="column"`.
27
+ */
28
+ ColumnBreak: "column";
29
+ /**
30
+ * Line break (Shift+Enter / soft break). Maps to a bare `w:br` (type omitted).
31
+ */
32
+ LineBreak: "line";
33
+ /**
34
+ * Text-wrapping break. Maps to `w:br` with `@w:type="textWrapping"`.
35
+ */
36
+ TextWrappingBreak: "textWrapping";
37
+ };
38
+ /**
39
+ * Break kind for `w:br`.
40
+ * @public
41
+ */
42
+ export declare type BreakType = (typeof BreakType)[keyof typeof BreakType];
43
+ /**
44
+ * Text-wrapping clear for a line or text-wrapping break (`ST_BrClear`).
45
+ * Internal / parse-serialize only — not part of the public Break API surface.
46
+ *
47
+ * Citation: ECMA-376-1 §17.3.3.2; transitional `wml.xsd` `ST_BrClear`.
48
+ *
49
+ * @private
50
+ */
51
+ export declare const BreakClearType: {
52
+ None: "none";
53
+ Left: "left";
54
+ Right: "right";
55
+ All: "all";
56
+ };
57
+ /** @private */
58
+ export declare type BreakClearType = (typeof BreakClearType)[keyof typeof BreakClearType];
59
+ /**
60
+ * @private
61
+ * Shared identity for paragraph items that serialize inside one physical `w:r`.
62
+ * Owns `w:rPr` ({@link CharacterFormat}) and unmodeled `w:r` attributes.
63
+ */
64
+ export declare class WireRunGroup implements CharacterFormatHost {
65
+ private characterFormatField;
66
+ private extraAttributesValue;
67
+ constructor(extraAttributes?: ReadonlyArray<OpenXmlAttribute>);
68
+ readonly characterFormat: CharacterFormat;
69
+ readonly extraAttributes: ReadonlyArray<OpenXmlAttribute>;
70
+ setExtraAttributes(attrs: ReadonlyArray<OpenXmlAttribute>): void;
71
+ notifyCharacterFormatMutation(): void;
72
+ hydrateCharacterFormat(data: CharacterFormatSnapshot): void;
73
+ snapshotCharacterFormat(): CharacterFormatSnapshot;
74
+ }
75
+ /**
76
+ * @private
77
+ * Marker on every run-level paragraph item that shares a {@link WireRunGroup}.
78
+ */
79
+ export interface WireRunMember {
80
+ /** @private */
81
+ readonly wireGroup: WireRunGroup;
82
+ }
83
+ /**
84
+ * @private Base for run-level items that share a WireRunGroup + CharacterFormatHost.
85
+ */
86
+ declare abstract class WireRunParagraphItem extends ParagraphItem implements CharacterFormatHost, WireRunMember {
87
+ private wireGroupValue;
88
+ constructor(wireGroup?: WireRunGroup);
89
+ /**
90
+ * @private
91
+ */
92
+ readonly wireGroup: WireRunGroup;
93
+ /**
94
+ * Character formatting for this item (`w:rPr`), shared with siblings from the same `w:r`.
95
+ * @public
96
+ */
97
+ readonly characterFormat: CharacterFormat;
98
+ /**
99
+ * @private
100
+ */
101
+ notifyCharacterFormatMutation(): void;
102
+ }
103
+ /**
104
+ * Tab stop character in a paragraph (`w:r/w:tab`).
105
+ * @public
106
+ */
107
+ export declare class Tab extends WireRunParagraphItem {
108
+ /**
109
+ * Discriminant for {@link Paragraph.items} / {@link paragraphElementTypeOf}.
110
+ * @public
111
+ */
112
+ readonly type: EntityType.AbsoluteTab;
113
+ /** @private */
114
+ constructor(wireGroup?: WireRunGroup);
115
+ }
116
+ /**
117
+ * Carriage return in a paragraph (`w:r/w:cr`).
118
+ * @public
119
+ */
120
+ export declare class CarriageReturn extends WireRunParagraphItem {
121
+ /**
122
+ * Discriminant for {@link Paragraph.items} / {@link paragraphElementTypeOf}.
123
+ * @public
124
+ */
125
+ readonly type: 'carriageReturn';
126
+ /** @private */
127
+ constructor(wireGroup?: WireRunGroup);
128
+ }
129
+ /**
130
+ * Symbol character in a paragraph (`w:r/w:sym`).
131
+ * @public
132
+ */
133
+ export declare class Symbol extends WireRunParagraphItem {
134
+ /**
135
+ * Discriminant for {@link Paragraph.items} / {@link paragraphElementTypeOf}.
136
+ * @public
137
+ */
138
+ readonly type: EntityType.Symbol;
139
+ private fontValue;
140
+ private charValue;
141
+ /**
142
+ * @private
143
+ */
144
+ constructor(font: string, char: string, wireGroup?: WireRunGroup);
145
+ /**
146
+ * Symbol font name (`w:font`).
147
+ * @public
148
+ */
149
+ font: string;
150
+ /**
151
+ * Character code as `ST_ShortHexNumber` hex digits (`w:char`).
152
+ * @public
153
+ */
154
+ char: string;
155
+ }
156
+ /**
157
+ * Break in a paragraph (`w:r/w:br` / `CT_Br`).
158
+ *
159
+ * Always serialized as run content (`w:r/w:br`). Clear and extras are internal
160
+ * round-trip state — not part of the public authoring API.
161
+ *
162
+ * Citation: ECMA-376-1 §17.3.3.1–2; transitional `wml.xsd` `CT_Br`.
163
+ *
164
+ * @public
165
+ */
166
+ export declare class Break extends WireRunParagraphItem {
167
+ /**
168
+ * Discriminant for {@link Paragraph.items} / {@link paragraphElementTypeOf}.
169
+ * @public
170
+ */
171
+ readonly type: EntityType.Break;
172
+ private breakTypeValue;
173
+ /** @private Present when clear is not None (`left`|`right`|`all`). */
174
+ private clearValue;
175
+ /** @private Unmodeled or unknown attributes (round-trip). */
176
+ private extrasValue;
177
+ /**
178
+ * @private
179
+ */
180
+ constructor(breakType: BreakType, clear?: BreakClearType, extras?: ReadonlyArray<OpenXmlAttribute>, wireGroup?: WireRunGroup);
181
+ /**
182
+ * Break kind (`ST_BrType` plus the Line default).
183
+ * @public
184
+ */
185
+ breakType: BreakType;
186
+ /**
187
+ * @private
188
+ */
189
+ readonly clear: Exclude<BreakClearType, typeof BreakClearType.None> | undefined;
190
+ /**
191
+ * @private
192
+ */
193
+ readonly extras: ReadonlyArray<OpenXmlAttribute>;
194
+ }
195
+ /**
196
+ * Feature-owned run-level content promoted onto {@link Paragraph.items}
197
+ * (for example images). Storage uses a private tag; public classifiers map
198
+ * to domain types.
199
+ *
200
+ * @private
201
+ */
202
+ export declare class FeatureRunParagraphItem extends WireRunParagraphItem {
203
+ readonly type: 'featureRun';
204
+ readonly featureId: FeatureId;
205
+ readonly value: FeatureRunLeaf;
206
+ /** @private */
207
+ constructor(featureId: FeatureId, value: FeatureRunLeaf, wireGroup?: WireRunGroup);
208
+ }
209
+ /**
210
+ * Opaque unmodeled run child preserved for round-trip (`w:r/*`).
211
+ * @public
212
+ */
213
+ export declare class OpaqueRunItem extends WireRunParagraphItem {
214
+ readonly type: 'opaqueRun';
215
+ readonly xml: OpenXmlElement;
216
+ /** @private */
217
+ constructor(xml: OpenXmlElement, wireGroup?: WireRunGroup);
218
+ }
219
+ /**
220
+ * Feature-owned inline sibling of runs (for example `w:hyperlink`).
221
+ * Storage uses a private tag; public classifiers map to domain types.
222
+ *
223
+ * Concrete feature classes may extend {@link ParagraphItem} directly in a
224
+ * later cut; this wrapper preserves FeatureInline payloads during migration.
225
+ *
226
+ * @private
227
+ */
228
+ export declare class FeatureInlineParagraphItem extends ParagraphItem {
229
+ readonly type: 'featureInline';
230
+ readonly featureId: FeatureId;
231
+ readonly value: FeatureInline;
232
+ /** @private */
233
+ constructor(featureId: FeatureId, value: FeatureInline);
234
+ /** @private */
235
+ protected onDetached(): void;
236
+ }
237
+ /**
238
+ * Opaque unmodeled paragraph child preserved for round-trip.
239
+ * @public
240
+ */
241
+ export declare class OpaqueParagraphItem extends ParagraphItem {
242
+ readonly type: 'opaque';
243
+ readonly xml: OpenXmlElement;
244
+ /** @private */
245
+ constructor(xml: OpenXmlElement);
246
+ }
247
+ export declare function needsXmlSpacePreserve(text: string): boolean;
248
+ /**
249
+ * Snapshot / hydrate bag for a text range: text content, wire-group linkage, and
250
+ * character-format fields (merged from {@link CharacterFormat.snapshot}).
251
+ *
252
+ * @private
253
+ */
254
+ interface TextRangeHydrateData extends CharacterFormatSnapshot {
255
+ extraAttributes: ReadonlyArray<OpenXmlAttribute>;
256
+ text: string;
257
+ xmlSpacePreserve: boolean;
258
+ }
259
+ /**
260
+ * WordprocessingML text range — public face of text + character formatting.
261
+ *
262
+ * Physical OOXML remains `w:r` with optional `w:rPr` and `w:t`. Non-text run
263
+ * children (breaks, tabs, symbols, images, …) appear as sibling
264
+ * {@link ParagraphItem}s sharing a private {@link WireRunGroup} so serialization
265
+ * can reconstruct the original run.
266
+ *
267
+ * Character formatting lives on {@link TextRange.characterFormat} only
268
+ * (`docs/specs/run-character-format.md` Rev 2 / TASK-9019).
269
+ *
270
+ * @public
271
+ */
272
+ export declare class TextRange extends WireRunParagraphItem {
273
+ /**
274
+ * Discriminant for {@link Paragraph.items} / {@link paragraphElementTypeOf}.
275
+ * @public
276
+ */
277
+ readonly type: EntityType.TextRange;
278
+ private textValue;
279
+ private xmlSpacePreserveValue;
280
+ /**
281
+ * Create a text range. Prefer `new TextRange(document)` so property setters
282
+ * work before the range is appended to a paragraph. Passing a paragraph-item
283
+ * owner attaches immediately (internal / load paths).
284
+ *
285
+ * @public
286
+ */
287
+ constructor(ownerOrDocument?: ParagraphItemOwner | object, wireGroup?: WireRunGroup);
288
+ /**
289
+ * Plain text of this range (`w:t`). Setter replaces the text content.
290
+ * @public
291
+ */
292
+ text: string;
293
+ /**
294
+ * Apply character formatting onto this range (DocIO-aligned).
295
+ *
296
+ * - {@link CharacterFormatDelta}: merges listed properties (`assign`).
297
+ * - {@link CharacterFormat}: copies the full snapshot into this range's `rPr`.
298
+ *
299
+ * @public
300
+ */
301
+ applyCharacterFormat(source: CharacterFormatDelta | CharacterFormat): void;
302
+ /**
303
+ * @private
304
+ */
305
+ readonly xmlSpacePreserve: boolean;
306
+ /**
307
+ * @private Set text during parse without owner mutation checks or CF wipe.
308
+ */
309
+ setTextFromParse(text: string, preserveSpace: boolean): void;
310
+ /**
311
+ * @private
312
+ * Advanced hatch: `w:r` tree for a lone text range. Unstable; prefer semantic properties.
313
+ */
314
+ toOpenXml(): OpenXmlElement;
315
+ /**
316
+ * @private
317
+ */
318
+ static fromXml(el: OpenXmlElement, owner: ParagraphItemOwner): TextRange;
319
+ /**
320
+ * @private
321
+ */
322
+ hydrate(data: TextRangeHydrateData): void;
323
+ /**
324
+ * @private
325
+ */
326
+ snapshot(): TextRangeHydrateData;
327
+ }
328
+ /**
329
+ * @private Author a break item under a new wire group (single-item run).
330
+ */
331
+ export declare function createStandaloneBreakItem(type: BreakType, clear?: BreakClearType): Break;
332
+ /**
333
+ * @private Author a symbol item under a new wire group.
334
+ */
335
+ export declare function createStandaloneSymbolItem(font: string, char: string): Symbol;
336
+ /**
337
+ * @private Author a tab item under a new wire group.
338
+ */
339
+ export declare function createStandaloneTabItem(): Tab;
340
+ /**
341
+ * Split plain text on U+0009 into {@link TextRange} and {@link Tab} items that
342
+ * share one {@link WireRunGroup} (one physical `w:r` with interleaved `w:t` /
343
+ * `w:tab`). Empty segments around tabs are omitted. Text with no tab characters
344
+ * yields a single {@link TextRange} (possibly empty). Tab-only text yields only
345
+ * {@link Tab} items.
346
+ *
347
+ * Citation: ECMA-376-1 `EG_RunInnerContent` / `w:tab` (run-level tab character).
348
+ *
349
+ * @private
350
+ */
351
+ export declare function createTextAndTabItems(text: string, wireGroup?: WireRunGroup): ConcreteParagraphItem[];
352
+ /**
353
+ * Parse a physical `w:r` into one or more flattened {@link ParagraphItem}s that
354
+ * share character formatting via {@link WireRunGroup}.
355
+ *
356
+ * @private
357
+ */
358
+ export declare function parseTextRangeGroup(el: OpenXmlElement, owner: ParagraphItemOwner | undefined): ConcreteParagraphItem[];
359
+ /**
360
+ * Serialize a lone {@link TextRange} as a complete `w:r` (rPr + single w:t).
361
+ * Prefer {@link serializeParagraphItems} when emitting a full paragraph.
362
+ *
363
+ * @private
364
+ */
365
+ export declare function serializeTextRange(textRange: TextRange): OpenXmlElement;
366
+ /**
367
+ * Serialize flattened paragraph items, regrouping consecutive wire-run members
368
+ * that share the same {@link WireRunGroup} into physical `w:r` elements.
369
+ * Field and FieldMark items serialize directly.
370
+ * TextRange items in field instruction regions serialize as w:instrText.
371
+ *
372
+ * @private
373
+ */
374
+ export declare function serializeParagraphItems(items: ReadonlyArray<ParagraphItem>): OpenXmlElement[];
375
+ /**
376
+
377
+ * @private
378
+ */
379
+ export interface BreakLeaf {
380
+ readonly type: 'break';
381
+ readonly breakType: BreakType;
382
+ readonly clear: BreakClearType;
383
+ }
384
+ /**
385
+
386
+ * @private
387
+ */
388
+ export declare type BreakItem = Break;
389
+ /**
390
+
391
+ * @private
392
+ */
393
+ export declare type TabItem = Tab;
394
+ /**
395
+
396
+ * @private
397
+ */
398
+ export declare type CarriageReturnItem = CarriageReturn;
399
+ /**
400
+
401
+ * @private
402
+ */
403
+ export declare type SymbolItem = Symbol;
404
+ /**
405
+
406
+ * @private
407
+ */
408
+ export declare type Owner = ParagraphItemOwner;
409
+ /**
410
+ * Concrete paragraph-item instances stored on {@link Paragraph.items}.
411
+ * Discriminated by each subclass’s `type` field for switch/narrowing.
412
+ *
413
+ * @public
414
+ */
415
+ export declare type ConcreteParagraphItem = TextRange | Tab | CarriageReturn | Symbol | Break | FeatureRunParagraphItem | FeatureInlineParagraphItem | OpaqueRunItem | OpaqueParagraphItem | Field | FieldMark;
416
+ /**
417
+
418
+ * @private
419
+ */
420
+ export declare type RunLeaf = ConcreteParagraphItem;
421
+ /**
422
+
423
+ * @private
424
+ */
425
+ export declare type InlineContent = ConcreteParagraphItem;
426
+ /**
427
+
428
+ * @private
429
+ */
430
+ export declare const Run: typeof TextRange;
431
+ /**
432
+
433
+ * @private
434
+ */
435
+ export declare type RunOwner = ParagraphItemOwner;
436
+ /**
437
+
438
+ * @private
439
+ */
440
+ export declare const serializeRun: typeof serializeTextRange;
441
+ /**
442
+ * Public break view (no extras / wireGroup).
443
+ * @private
444
+ */
445
+ export declare function toBreakLeafView(leaf: Break): BreakLeaf;