superdoc 2.2.1 → 2.4.0-next.1

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 (689) hide show
  1. package/AGENTS.md +337 -0
  2. package/LICENSE +661 -0
  3. package/NOTICE +8 -0
  4. package/README.md +106 -0
  5. package/dist/chunks/FindReplaceSurface-BEW-1NhM.es.js +344 -0
  6. package/dist/chunks/FindReplaceSurface-Dx0llWqP.cjs +346 -0
  7. package/dist/chunks/PasswordPromptSurface-BA6HHqEa.es.js +111 -0
  8. package/dist/chunks/PasswordPromptSurface-BUUVC2ee.cjs +113 -0
  9. package/dist/chunks/PdfViewer-CNOtyS-I.es.js +531 -0
  10. package/dist/chunks/PdfViewer-qpvzwYMz.cjs +535 -0
  11. package/dist/chunks/_plugin-vue_export-helper-BTwbGDKw.cjs +11 -0
  12. package/dist/chunks/_plugin-vue_export-helper-CInC0bKI.es.js +6 -0
  13. package/dist/chunks/blank-docx-DP8RUPW-.cjs +7 -0
  14. package/dist/chunks/blank-docx-XRX6Ker2.es.js +2 -0
  15. package/dist/chunks/constants-CY3R3_kF.es.js +3 -0
  16. package/dist/chunks/constants-sbCZ2O_A.cjs +14 -0
  17. package/dist/chunks/create-super-doc-ui-D4kk9AjM.es.js +9417 -0
  18. package/dist/chunks/create-super-doc-ui-DXdWuTzm.cjs +9680 -0
  19. package/dist/chunks/eventemitter3-Bt2s0X0a.es.js +131 -0
  20. package/dist/chunks/eventemitter3-DqY4aSMf.cjs +137 -0
  21. package/dist/chunks/jszip-C8srOKAO.es.js +4650 -0
  22. package/dist/chunks/jszip-Cs9JBLlJ.cjs +4691 -0
  23. package/dist/chunks/rolldown-runtime-1Y-nnZJ3.cjs +40 -0
  24. package/dist/chunks/rolldown-runtime-D7PMmH3s.es.js +27 -0
  25. package/dist/chunks/uuid-B2Sqk-3p.es.js +32 -0
  26. package/dist/chunks/uuid-CFp0WGVU.cjs +38 -0
  27. package/dist/collaboration-upgrade-engine.cjs +37 -0
  28. package/dist/collaboration-upgrade-engine.es.js +30 -0
  29. package/dist/document-api/src/authorities/authorities.d.ts +29 -0
  30. package/dist/document-api/src/authorities/authorities.types.d.ts +113 -0
  31. package/dist/document-api/src/blocks/blocks.d.ts +29 -0
  32. package/dist/document-api/src/bookmarks/bookmarks.d.ts +15 -0
  33. package/dist/document-api/src/bookmarks/bookmarks.types.d.ts +82 -0
  34. package/dist/document-api/src/capabilities/capabilities.d.ts +82 -0
  35. package/dist/document-api/src/captions/captions.d.ts +17 -0
  36. package/dist/document-api/src/captions/captions.types.d.ts +61 -0
  37. package/dist/document-api/src/citations/citations.d.ts +39 -0
  38. package/dist/document-api/src/citations/citations.types.d.ts +151 -0
  39. package/dist/document-api/src/clear-content/clear-content.d.ts +25 -0
  40. package/dist/document-api/src/clipboard/clipboard.d.ts +11 -0
  41. package/dist/document-api/src/comments/comment-create-attribution.d.ts +2 -0
  42. package/dist/document-api/src/comments/comments.d.ts +231 -0
  43. package/dist/document-api/src/comments/comments.types.d.ts +266 -0
  44. package/dist/document-api/src/content-controls/content-controls.d.ts +136 -0
  45. package/dist/document-api/src/content-controls/content-controls.types.d.ts +455 -0
  46. package/dist/document-api/src/contract/command-catalog.d.ts +17 -0
  47. package/dist/document-api/src/contract/index.d.ts +9 -0
  48. package/dist/document-api/src/contract/metadata-types.d.ts +48 -0
  49. package/dist/document-api/src/contract/operation-definitions.d.ts +3645 -0
  50. package/dist/document-api/src/contract/operation-map.d.ts +5 -0
  51. package/dist/document-api/src/contract/operation-registry.d.ts +2002 -0
  52. package/dist/document-api/src/contract/reference-aliases.d.ts +19 -0
  53. package/dist/document-api/src/contract/reference-doc-map.d.ts +12 -0
  54. package/dist/document-api/src/contract/schemas.d.ts +35 -0
  55. package/dist/document-api/src/contract/step-op-catalog.d.ts +26 -0
  56. package/dist/document-api/src/contract/types.d.ts +31 -0
  57. package/dist/document-api/src/create/create.d.ts +27 -0
  58. package/dist/document-api/src/cross-refs/cross-refs.d.ts +15 -0
  59. package/dist/document-api/src/cross-refs/cross-refs.types.d.ts +68 -0
  60. package/dist/document-api/src/customXml/customXml.d.ts +19 -0
  61. package/dist/document-api/src/customXml/customXml.types.d.ts +148 -0
  62. package/dist/document-api/src/delete/delete.d.ts +20 -0
  63. package/dist/document-api/src/diff/diff.d.ts +14 -0
  64. package/dist/document-api/src/diff/diff.types.d.ts +83 -0
  65. package/dist/document-api/src/diff/index.d.ts +3 -0
  66. package/dist/document-api/src/errors.d.ts +11 -0
  67. package/dist/document-api/src/export/export.d.ts +10 -0
  68. package/dist/document-api/src/export/export.types.d.ts +40 -0
  69. package/dist/document-api/src/extract/extract.d.ts +15 -0
  70. package/dist/document-api/src/fields/fields.d.ts +15 -0
  71. package/dist/document-api/src/fields/fields.types.d.ts +90 -0
  72. package/dist/document-api/src/find/find.d.ts +52 -0
  73. package/dist/document-api/src/footnotes/footnotes.d.ts +17 -0
  74. package/dist/document-api/src/footnotes/footnotes.types.d.ts +104 -0
  75. package/dist/document-api/src/format/format.d.ts +92 -0
  76. package/dist/document-api/src/format/inline-run-patch.d.ts +138 -0
  77. package/dist/document-api/src/get/get.d.ts +19 -0
  78. package/dist/document-api/src/get-html/get-html.d.ts +27 -0
  79. package/dist/document-api/src/get-markdown/get-markdown.d.ts +22 -0
  80. package/dist/document-api/src/get-node/get-node.d.ts +46 -0
  81. package/dist/document-api/src/get-text/get-text.d.ts +22 -0
  82. package/dist/document-api/src/header-footers/header-footers.d.ts +37 -0
  83. package/dist/document-api/src/header-footers/header-footers.types.d.ts +116 -0
  84. package/dist/document-api/src/history/history.d.ts +38 -0
  85. package/dist/document-api/src/history/history.types.d.ts +100 -0
  86. package/dist/document-api/src/hyperlinks/hyperlinks.d.ts +17 -0
  87. package/dist/document-api/src/hyperlinks/hyperlinks.types.d.ts +112 -0
  88. package/dist/document-api/src/images/images.d.ts +63 -0
  89. package/dist/document-api/src/images/images.types.d.ts +209 -0
  90. package/dist/document-api/src/images/z-order.d.ts +10 -0
  91. package/dist/document-api/src/index/index.d.ts +29 -0
  92. package/dist/document-api/src/index/index.types.d.ts +125 -0
  93. package/dist/document-api/src/index.d.ts +560 -0
  94. package/dist/document-api/src/info/info.d.ts +19 -0
  95. package/dist/document-api/src/inline-semantics/directives.d.ts +95 -0
  96. package/dist/document-api/src/inline-semantics/error-types.d.ts +68 -0
  97. package/dist/document-api/src/inline-semantics/index.d.ts +20 -0
  98. package/dist/document-api/src/inline-semantics/property-ids.d.ts +24 -0
  99. package/dist/document-api/src/inline-semantics/token-parsers.d.ts +59 -0
  100. package/dist/document-api/src/inline-semantics/token-sets.d.ts +34 -0
  101. package/dist/document-api/src/insert/insert.d.ts +65 -0
  102. package/dist/document-api/src/invoke/invoke.d.ts +17 -0
  103. package/dist/document-api/src/lists/lists.d.ts +100 -0
  104. package/dist/document-api/src/lists/lists.types.d.ts +499 -0
  105. package/dist/document-api/src/markdown-to-fragment/markdown-to-fragment.d.ts +15 -0
  106. package/dist/document-api/src/metadata/anchored-metadata.d.ts +33 -0
  107. package/dist/document-api/src/metadata/anchored-metadata.types.d.ts +175 -0
  108. package/dist/document-api/src/paragraphs/paragraphs.d.ts +84 -0
  109. package/dist/document-api/src/paragraphs/paragraphs.types.d.ts +214 -0
  110. package/dist/document-api/src/permission-ranges/permission-ranges.d.ts +15 -0
  111. package/dist/document-api/src/permission-ranges/permission-ranges.types.d.ts +49 -0
  112. package/dist/document-api/src/plan/plan.d.ts +73 -0
  113. package/dist/document-api/src/protection/protection.d.ts +11 -0
  114. package/dist/document-api/src/protection/protection.types.d.ts +47 -0
  115. package/dist/document-api/src/ranges/index.d.ts +2 -0
  116. package/dist/document-api/src/ranges/ranges.types.d.ts +121 -0
  117. package/dist/document-api/src/ranges/resolve.d.ts +2 -0
  118. package/dist/document-api/src/receipt-bridge.d.ts +30 -0
  119. package/dist/document-api/src/replace/replace.d.ts +24 -0
  120. package/dist/document-api/src/sections/sections.d.ts +42 -0
  121. package/dist/document-api/src/sections/sections.types.d.ts +236 -0
  122. package/dist/document-api/src/selection/selection.d.ts +23 -0
  123. package/dist/document-api/src/selection/selection.types.d.ts +85 -0
  124. package/dist/document-api/src/selection-mutation.d.ts +46 -0
  125. package/dist/document-api/src/styles/apply.d.ts +142 -0
  126. package/dist/document-api/src/styles/catalog.d.ts +154 -0
  127. package/dist/document-api/src/styles/index.d.ts +14 -0
  128. package/dist/document-api/src/styles/registry.d.ts +43 -0
  129. package/dist/document-api/src/styles/schema.d.ts +9 -0
  130. package/dist/document-api/src/styles/validation.d.ts +38 -0
  131. package/dist/document-api/src/tables/color-formats.d.ts +12 -0
  132. package/dist/document-api/src/tables/tables.d.ts +83 -0
  133. package/dist/document-api/src/templates/apply.d.ts +160 -0
  134. package/dist/document-api/src/templates/index.d.ts +7 -0
  135. package/dist/document-api/src/toc/toc.d.ts +25 -0
  136. package/dist/document-api/src/toc/toc.types.d.ts +247 -0
  137. package/dist/document-api/src/track-changes/track-changes.d.ts +177 -0
  138. package/dist/document-api/src/types/adapter-result.d.ts +10 -0
  139. package/dist/document-api/src/types/address.d.ts +169 -0
  140. package/dist/document-api/src/types/base.d.ts +89 -0
  141. package/dist/document-api/src/types/blocks.types.d.ts +190 -0
  142. package/dist/document-api/src/types/clipboard.d.ts +216 -0
  143. package/dist/document-api/src/types/comments.types.d.ts +17 -0
  144. package/dist/document-api/src/types/create.types.d.ts +56 -0
  145. package/dist/document-api/src/types/discovery.d.ts +99 -0
  146. package/dist/document-api/src/types/extract.types.d.ts +163 -0
  147. package/dist/document-api/src/types/fragment.d.ts +29 -0
  148. package/dist/document-api/src/types/index.d.ts +30 -0
  149. package/dist/document-api/src/types/info.types.d.ts +109 -0
  150. package/dist/document-api/src/types/inline.types.d.ts +28 -0
  151. package/dist/document-api/src/types/media.types.d.ts +72 -0
  152. package/dist/document-api/src/types/mutation-plan.types.d.ts +264 -0
  153. package/dist/document-api/src/types/node.d.ts +9 -0
  154. package/dist/document-api/src/types/paragraph.types.d.ts +61 -0
  155. package/dist/document-api/src/types/placement.d.ts +24 -0
  156. package/dist/document-api/src/types/query-match.types.d.ts +212 -0
  157. package/dist/document-api/src/types/query.d.ts +133 -0
  158. package/dist/document-api/src/types/receipt.d.ts +191 -0
  159. package/dist/document-api/src/types/references.types.d.ts +9 -0
  160. package/dist/document-api/src/types/sd-contract.d.ts +54 -0
  161. package/dist/document-api/src/types/sd-envelope.d.ts +59 -0
  162. package/dist/document-api/src/types/sd-nodes.d.ts +375 -0
  163. package/dist/document-api/src/types/sd-objects.d.ts +144 -0
  164. package/dist/document-api/src/types/sd-props.d.ts +240 -0
  165. package/dist/document-api/src/types/sd-sections.d.ts +126 -0
  166. package/dist/document-api/src/types/sd-styles.d.ts +36 -0
  167. package/dist/document-api/src/types/step-manifest.types.d.ts +30 -0
  168. package/dist/document-api/src/types/story.types.d.ts +123 -0
  169. package/dist/document-api/src/types/structural-input.d.ts +40 -0
  170. package/dist/document-api/src/types/structured.types.d.ts +21 -0
  171. package/dist/document-api/src/types/style-policy.types.d.ts +49 -0
  172. package/dist/document-api/src/types/table-operations.types.d.ts +618 -0
  173. package/dist/document-api/src/types/tables.types.d.ts +43 -0
  174. package/dist/document-api/src/types/toc.types.d.ts +1 -0
  175. package/dist/document-api/src/types/track-changes.types.d.ts +703 -0
  176. package/dist/document-api/src/validation/create-location-validator.d.ts +2 -0
  177. package/dist/document-api/src/validation/fragment-validator.d.ts +13 -0
  178. package/dist/document-api/src/validation/selection-target-validator.d.ts +7 -0
  179. package/dist/document-api/src/validation/story-validator.d.ts +12 -0
  180. package/dist/document-api/src/validation-primitives.d.ts +29 -0
  181. package/dist/document-api/src/write/locator.d.ts +24 -0
  182. package/dist/document-api/src/write/write.d.ts +73 -0
  183. package/dist/images/altText_add.svg +3 -0
  184. package/dist/images/altText_disclaimer.svg +3 -0
  185. package/dist/images/altText_done.svg +3 -0
  186. package/dist/images/altText_spinner.svg +30 -0
  187. package/dist/images/altText_warning.svg +3 -0
  188. package/dist/images/annotation-check.svg +11 -0
  189. package/dist/images/annotation-comment.svg +16 -0
  190. package/dist/images/annotation-help.svg +26 -0
  191. package/dist/images/annotation-insert.svg +10 -0
  192. package/dist/images/annotation-key.svg +11 -0
  193. package/dist/images/annotation-newparagraph.svg +11 -0
  194. package/dist/images/annotation-noicon.svg +7 -0
  195. package/dist/images/annotation-note.svg +42 -0
  196. package/dist/images/annotation-paperclip.svg +6 -0
  197. package/dist/images/annotation-paragraph.svg +16 -0
  198. package/dist/images/annotation-pushpin.svg +7 -0
  199. package/dist/images/checkmark.svg +5 -0
  200. package/dist/images/comment-actionsButton.svg +3 -0
  201. package/dist/images/comment-closeButton.svg +3 -0
  202. package/dist/images/comment-editButton.svg +8 -0
  203. package/dist/images/comment-popup-editButton.svg +5 -0
  204. package/dist/images/cursor-editorFreeHighlight.svg +6 -0
  205. package/dist/images/cursor-editorFreeText.svg +3 -0
  206. package/dist/images/cursor-editorInk.svg +4 -0
  207. package/dist/images/cursor-editorTextHighlight.svg +8 -0
  208. package/dist/images/editor-toolbar-delete.svg +5 -0
  209. package/dist/images/editor-toolbar-edit.svg +3 -0
  210. package/dist/images/findbarButton-next.svg +3 -0
  211. package/dist/images/findbarButton-previous.svg +3 -0
  212. package/dist/images/gv-toolbarButton-download.svg +3 -0
  213. package/dist/images/loading-icon.gif +0 -0
  214. package/dist/images/loading.svg +1 -0
  215. package/dist/images/messageBar_closingButton.svg +3 -0
  216. package/dist/images/messageBar_info.svg +3 -0
  217. package/dist/images/messageBar_warning.svg +3 -0
  218. package/dist/images/pages_closeButton.svg +3 -0
  219. package/dist/images/pages_selected.svg +7 -0
  220. package/dist/images/pages_viewArrow.svg +3 -0
  221. package/dist/images/pages_viewButton.svg +3 -0
  222. package/dist/images/secondaryToolbarButton-documentProperties.svg +3 -0
  223. package/dist/images/secondaryToolbarButton-firstPage.svg +3 -0
  224. package/dist/images/secondaryToolbarButton-handTool.svg +3 -0
  225. package/dist/images/secondaryToolbarButton-lastPage.svg +3 -0
  226. package/dist/images/secondaryToolbarButton-rotateCcw.svg +3 -0
  227. package/dist/images/secondaryToolbarButton-rotateCw.svg +3 -0
  228. package/dist/images/secondaryToolbarButton-scrollHorizontal.svg +3 -0
  229. package/dist/images/secondaryToolbarButton-scrollPage.svg +3 -0
  230. package/dist/images/secondaryToolbarButton-scrollVertical.svg +3 -0
  231. package/dist/images/secondaryToolbarButton-scrollWrapped.svg +3 -0
  232. package/dist/images/secondaryToolbarButton-selectTool.svg +3 -0
  233. package/dist/images/secondaryToolbarButton-spreadEven.svg +3 -0
  234. package/dist/images/secondaryToolbarButton-spreadNone.svg +3 -0
  235. package/dist/images/secondaryToolbarButton-spreadOdd.svg +3 -0
  236. package/dist/images/toolbarButton-bookmark.svg +3 -0
  237. package/dist/images/toolbarButton-currentOutlineItem.svg +3 -0
  238. package/dist/images/toolbarButton-download.svg +4 -0
  239. package/dist/images/toolbarButton-editorFreeText.svg +5 -0
  240. package/dist/images/toolbarButton-editorHighlight.svg +6 -0
  241. package/dist/images/toolbarButton-editorInk.svg +4 -0
  242. package/dist/images/toolbarButton-editorSignature.svg +6 -0
  243. package/dist/images/toolbarButton-editorStamp.svg +8 -0
  244. package/dist/images/toolbarButton-menuArrow.svg +3 -0
  245. package/dist/images/toolbarButton-openFile.svg +3 -0
  246. package/dist/images/toolbarButton-pageDown.svg +3 -0
  247. package/dist/images/toolbarButton-pageUp.svg +3 -0
  248. package/dist/images/toolbarButton-presentationMode.svg +3 -0
  249. package/dist/images/toolbarButton-print.svg +3 -0
  250. package/dist/images/toolbarButton-search.svg +3 -0
  251. package/dist/images/toolbarButton-secondaryToolbarToggle.svg +3 -0
  252. package/dist/images/toolbarButton-viewAttachments.svg +3 -0
  253. package/dist/images/toolbarButton-viewLayers.svg +3 -0
  254. package/dist/images/toolbarButton-viewOutline.svg +3 -0
  255. package/dist/images/toolbarButton-viewThumbnail.svg +3 -0
  256. package/dist/images/toolbarButton-viewsManagerToggle.svg +3 -0
  257. package/dist/images/toolbarButton-zoomIn.svg +3 -0
  258. package/dist/images/toolbarButton-zoomOut.svg +3 -0
  259. package/dist/images/treeitem-collapsed.svg +1 -0
  260. package/dist/images/treeitem-expanded.svg +1 -0
  261. package/dist/layout-engine/contracts/src/author-colors.d.ts +56 -0
  262. package/dist/layout-engine/contracts/src/cell-spacing.d.ts +12 -0
  263. package/dist/layout-engine/contracts/src/clip-path-inset.d.ts +27 -0
  264. package/dist/layout-engine/contracts/src/column-layout.d.ts +79 -0
  265. package/dist/layout-engine/contracts/src/direction-context.d.ts +219 -0
  266. package/dist/layout-engine/contracts/src/drawing-taxonomy.d.ts +126 -0
  267. package/dist/layout-engine/contracts/src/engines/image-wrap.d.ts +54 -0
  268. package/dist/layout-engine/contracts/src/engines/index.d.ts +17 -0
  269. package/dist/layout-engine/contracts/src/engines/lists.d.ts +57 -0
  270. package/dist/layout-engine/contracts/src/engines/paragraph.d.ts +59 -0
  271. package/dist/layout-engine/contracts/src/engines/tables.d.ts +89 -0
  272. package/dist/layout-engine/contracts/src/engines/tabs.d.ts +117 -0
  273. package/dist/layout-engine/contracts/src/graphic-placement.d.ts +76 -0
  274. package/dist/layout-engine/contracts/src/header-footer-inheritance.d.ts +22 -0
  275. package/dist/layout-engine/contracts/src/header-footer-resolution.d.ts +28 -0
  276. package/dist/layout-engine/contracts/src/incremental-dependency.d.ts +10 -0
  277. package/dist/layout-engine/contracts/src/index.d.ts +2459 -0
  278. package/dist/layout-engine/contracts/src/justify-utils.d.ts +98 -0
  279. package/dist/layout-engine/contracts/src/layout-identity.d.ts +136 -0
  280. package/dist/layout-engine/contracts/src/ooxml-z-index.d.ts +46 -0
  281. package/dist/layout-engine/contracts/src/page-number-formatting.d.ts +26 -0
  282. package/dist/layout-engine/contracts/src/page-ref-anchor.d.ts +2 -0
  283. package/dist/layout-engine/contracts/src/pm-range.d.ts +45 -0
  284. package/dist/layout-engine/contracts/src/resolved-layout.d.ts +541 -0
  285. package/dist/layout-engine/contracts/src/run-helpers.d.ts +23 -0
  286. package/dist/layout-engine/contracts/src/sdt-container.d.ts +13 -0
  287. package/dist/layout-engine/contracts/src/segment-geometry.d.ts +192 -0
  288. package/dist/layout-engine/contracts/src/semantic-colors.d.ts +150 -0
  289. package/dist/layout-engine/contracts/src/table-cell-spacing.d.ts +12 -0
  290. package/dist/layout-engine/contracts/src/table-column-rescale.d.ts +13 -0
  291. package/dist/layout-engine/contracts/src/vertical-text.d.ts +43 -0
  292. package/dist/layout-engine/dom-contract/src/class-names.d.ts +62 -0
  293. package/dist/layout-engine/dom-contract/src/data-attrs.d.ts +103 -0
  294. package/dist/layout-engine/dom-contract/src/index.d.ts +18 -0
  295. package/dist/layout-engine/dom-contract/src/selectors.d.ts +47 -0
  296. package/dist/layout-engine/layout-bridge/src/cache-warmer.d.ts +73 -0
  297. package/dist/layout-engine/layout-bridge/src/cache.d.ts +143 -0
  298. package/dist/layout-engine/layout-bridge/src/cacheInvalidation.d.ts +117 -0
  299. package/dist/layout-engine/layout-bridge/src/cursor-renderer.d.ts +201 -0
  300. package/dist/layout-engine/layout-bridge/src/debounced-passes.d.ts +130 -0
  301. package/dist/layout-engine/layout-bridge/src/diff.d.ts +36 -0
  302. package/dist/layout-engine/layout-bridge/src/dirty-tracker.d.ts +128 -0
  303. package/dist/layout-engine/layout-bridge/src/dom-mapping.d.ts +80 -0
  304. package/dist/layout-engine/layout-bridge/src/featureFlags.d.ts +95 -0
  305. package/dist/layout-engine/layout-bridge/src/field-annotation-key.d.ts +2 -0
  306. package/dist/layout-engine/layout-bridge/src/focus-watchdog.d.ts +170 -0
  307. package/dist/layout-engine/layout-bridge/src/font-metrics-cache.d.ts +164 -0
  308. package/dist/layout-engine/layout-bridge/src/footnote-scorer.d.ts +63 -0
  309. package/dist/layout-engine/layout-bridge/src/headerFooterUtils.d.ts +218 -0
  310. package/dist/layout-engine/layout-bridge/src/ime-handler.d.ts +81 -0
  311. package/dist/layout-engine/layout-bridge/src/incrementalLayout.d.ts +390 -0
  312. package/dist/layout-engine/layout-bridge/src/index.d.ts +211 -0
  313. package/dist/layout-engine/layout-bridge/src/instrumentation.d.ts +245 -0
  314. package/dist/layout-engine/layout-bridge/src/layoutHeaderFooter.d.ts +123 -0
  315. package/dist/layout-engine/layout-bridge/src/list-indent-utils.d.ts +205 -0
  316. package/dist/layout-engine/layout-bridge/src/local-paragraph-layout.d.ts +93 -0
  317. package/dist/layout-engine/layout-bridge/src/neutral-hit.d.ts +142 -0
  318. package/dist/layout-engine/layout-bridge/src/neutral-segment-geometry.d.ts +32 -0
  319. package/dist/layout-engine/layout-bridge/src/page-geometry-helper.d.ts +197 -0
  320. package/dist/layout-engine/layout-bridge/src/paragraph-hash-utils.d.ts +126 -0
  321. package/dist/layout-engine/layout-bridge/src/paragraph-line-cache.d.ts +152 -0
  322. package/dist/layout-engine/layout-bridge/src/performance-metrics.d.ts +249 -0
  323. package/dist/layout-engine/layout-bridge/src/pm-dom-fallback.d.ts +188 -0
  324. package/dist/layout-engine/layout-bridge/src/pm-position-validator.d.ts +100 -0
  325. package/dist/layout-engine/layout-bridge/src/position-hit.d.ts +167 -0
  326. package/dist/layout-engine/layout-bridge/src/remeasure.d.ts +75 -0
  327. package/dist/layout-engine/layout-bridge/src/resolveHeaderFooterTokens.d.ts +76 -0
  328. package/dist/layout-engine/layout-bridge/src/rtl-text-geometry.d.ts +34 -0
  329. package/dist/layout-engine/layout-bridge/src/run-visual-marks.d.ts +12 -0
  330. package/dist/layout-engine/layout-bridge/src/safety-net.d.ts +234 -0
  331. package/dist/layout-engine/layout-bridge/src/sectionAwareHeaderFooter.d.ts +15 -0
  332. package/dist/layout-engine/layout-bridge/src/table-handler.d.ts +86 -0
  333. package/dist/layout-engine/layout-bridge/src/text-boundaries.d.ts +17 -0
  334. package/dist/layout-engine/layout-bridge/src/text-measurement.d.ts +69 -0
  335. package/dist/layout-engine/layout-bridge/src/track-changes-handler.d.ts +90 -0
  336. package/dist/layout-engine/layout-bridge/src/tracked-changes-utils.d.ts +41 -0
  337. package/dist/layout-engine/layout-engine/src/anchors.d.ts +52 -0
  338. package/dist/layout-engine/layout-engine/src/column-balancing.d.ts +255 -0
  339. package/dist/layout-engine/layout-engine/src/column-utils.d.ts +1 -0
  340. package/dist/layout-engine/layout-engine/src/floating-objects.d.ts +60 -0
  341. package/dist/layout-engine/layout-engine/src/floating-table-anchor.d.ts +21 -0
  342. package/dist/layout-engine/layout-engine/src/index.d.ts +349 -0
  343. package/dist/layout-engine/layout-engine/src/layout-drawing.d.ts +60 -0
  344. package/dist/layout-engine/layout-engine/src/layout-image.d.ts +16 -0
  345. package/dist/layout-engine/layout-engine/src/layout-paragraph.d.ts +101 -0
  346. package/dist/layout-engine/layout-engine/src/layout-table.d.ts +71 -0
  347. package/dist/layout-engine/layout-engine/src/layout-textbox.d.ts +4 -0
  348. package/dist/layout-engine/layout-engine/src/layout-utils.d.ts +104 -0
  349. package/dist/layout-engine/layout-engine/src/normalize-header-footer-fragments.d.ts +45 -0
  350. package/dist/layout-engine/layout-engine/src/pageNumbering.d.ts +73 -0
  351. package/dist/layout-engine/layout-engine/src/paginator.d.ts +131 -0
  352. package/dist/layout-engine/layout-engine/src/paragraph-layout-eligibility.d.ts +1 -0
  353. package/dist/layout-engine/layout-engine/src/resolvePageRefs.d.ts +31 -0
  354. package/dist/layout-engine/layout-engine/src/resolvePageTokens.d.ts +82 -0
  355. package/dist/layout-engine/layout-engine/src/section-breaks.d.ts +98 -0
  356. package/dist/layout-engine/layout-engine/src/section-props.d.ts +65 -0
  357. package/dist/layout-engine/layout-engine/src/table-cell-slice.d.ts +98 -0
  358. package/dist/layout-engine/painters/dom/src/_test-utils.d.ts +22 -0
  359. package/dist/layout-engine/painters/dom/src/chart-renderer.d.ts +13 -0
  360. package/dist/layout-engine/painters/dom/src/constants.d.ts +10 -0
  361. package/dist/layout-engine/painters/dom/src/css-token.d.ts +10 -0
  362. package/dist/layout-engine/painters/dom/src/features/feature-registry.d.ts +41 -0
  363. package/dist/layout-engine/painters/dom/src/features/inline-direction/index.d.ts +22 -0
  364. package/dist/layout-engine/painters/dom/src/features/inline-direction/rtl-styles.d.ts +27 -0
  365. package/dist/layout-engine/painters/dom/src/features/inline-direction/run-direction.d.ts +75 -0
  366. package/dist/layout-engine/painters/dom/src/features/math/converters/accent.d.ts +25 -0
  367. package/dist/layout-engine/painters/dom/src/features/math/converters/bar.d.ts +16 -0
  368. package/dist/layout-engine/painters/dom/src/features/math/converters/box.d.ts +38 -0
  369. package/dist/layout-engine/painters/dom/src/features/math/converters/delimiter.d.ts +13 -0
  370. package/dist/layout-engine/painters/dom/src/features/math/converters/equation-array.d.ts +19 -0
  371. package/dist/layout-engine/painters/dom/src/features/math/converters/fraction.d.ts +13 -0
  372. package/dist/layout-engine/painters/dom/src/features/math/converters/function.d.ts +16 -0
  373. package/dist/layout-engine/painters/dom/src/features/math/converters/group-character.d.ts +26 -0
  374. package/dist/layout-engine/painters/dom/src/features/math/converters/index.d.ts +27 -0
  375. package/dist/layout-engine/painters/dom/src/features/math/converters/lower-limit.d.ts +13 -0
  376. package/dist/layout-engine/painters/dom/src/features/math/converters/math-run.d.ts +47 -0
  377. package/dist/layout-engine/painters/dom/src/features/math/converters/matrix.d.ts +23 -0
  378. package/dist/layout-engine/painters/dom/src/features/math/converters/nary.d.ts +23 -0
  379. package/dist/layout-engine/painters/dom/src/features/math/converters/phantom.d.ts +17 -0
  380. package/dist/layout-engine/painters/dom/src/features/math/converters/pre-sub-superscript.d.ts +25 -0
  381. package/dist/layout-engine/painters/dom/src/features/math/converters/radical.d.ts +14 -0
  382. package/dist/layout-engine/painters/dom/src/features/math/converters/sub-superscript.d.ts +13 -0
  383. package/dist/layout-engine/painters/dom/src/features/math/converters/subscript.d.ts +13 -0
  384. package/dist/layout-engine/painters/dom/src/features/math/converters/superscript.d.ts +13 -0
  385. package/dist/layout-engine/painters/dom/src/features/math/converters/upper-limit.d.ts +13 -0
  386. package/dist/layout-engine/painters/dom/src/features/math/index.d.ts +14 -0
  387. package/dist/layout-engine/painters/dom/src/features/math/omml-to-mathml.d.ts +18 -0
  388. package/dist/layout-engine/painters/dom/src/features/math/types.d.ts +41 -0
  389. package/dist/layout-engine/painters/dom/src/images/drawing-image.d.ts +5 -0
  390. package/dist/layout-engine/painters/dom/src/images/hyperlink.d.ts +2 -0
  391. package/dist/layout-engine/painters/dom/src/images/image-block.d.ts +15 -0
  392. package/dist/layout-engine/painters/dom/src/images/image-clip-path.d.ts +17 -0
  393. package/dist/layout-engine/painters/dom/src/images/image-fragment.d.ts +34 -0
  394. package/dist/layout-engine/painters/dom/src/images/image-selectors.d.ts +9 -0
  395. package/dist/layout-engine/painters/dom/src/images/types.d.ts +2 -0
  396. package/dist/layout-engine/painters/dom/src/index.d.ts +130 -0
  397. package/dist/layout-engine/painters/dom/src/page-content.d.ts +277 -0
  398. package/dist/layout-engine/painters/dom/src/paragraph/block-version.d.ts +8 -0
  399. package/dist/layout-engine/painters/dom/src/paragraph/borders/border-layer.d.ts +59 -0
  400. package/dist/layout-engine/painters/dom/src/paragraph/borders/group-analysis.d.ts +38 -0
  401. package/dist/layout-engine/painters/dom/src/paragraph/borders/index.d.ts +18 -0
  402. package/dist/layout-engine/painters/dom/src/paragraph/frame.d.ts +3 -0
  403. package/dist/layout-engine/painters/dom/src/paragraph/indentation.d.ts +25 -0
  404. package/dist/layout-engine/painters/dom/src/paragraph/list-marker.d.ts +51 -0
  405. package/dist/layout-engine/painters/dom/src/paragraph/marker-tracked-change.d.ts +34 -0
  406. package/dist/layout-engine/painters/dom/src/paragraph/renderParagraphContent.d.ts +87 -0
  407. package/dist/layout-engine/painters/dom/src/paragraph/renderParagraphFragment.d.ts +33 -0
  408. package/dist/layout-engine/painters/dom/src/paragraph/styles.d.ts +3 -0
  409. package/dist/layout-engine/painters/dom/src/paragraph-hash-utils.d.ts +13 -0
  410. package/dist/layout-engine/painters/dom/src/persistent-page-surface.d.ts +144 -0
  411. package/dist/layout-engine/painters/dom/src/pm-position-validation.d.ts +149 -0
  412. package/dist/layout-engine/painters/dom/src/renderer.d.ts +625 -0
  413. package/dist/layout-engine/painters/dom/src/ruler/index.d.ts +41 -0
  414. package/dist/layout-engine/painters/dom/src/ruler/ruler-core.d.ts +195 -0
  415. package/dist/layout-engine/painters/dom/src/ruler/ruler-renderer.d.ts +97 -0
  416. package/dist/layout-engine/painters/dom/src/ruler/ruler-styles.d.ts +31 -0
  417. package/dist/layout-engine/painters/dom/src/runs/field-annotation-run.d.ts +14 -0
  418. package/dist/layout-engine/painters/dom/src/runs/font-synthesis.d.ts +1 -0
  419. package/dist/layout-engine/painters/dom/src/runs/formatting-marks.d.ts +3 -0
  420. package/dist/layout-engine/painters/dom/src/runs/hash.d.ts +82 -0
  421. package/dist/layout-engine/painters/dom/src/runs/image-run.d.ts +37 -0
  422. package/dist/layout-engine/painters/dom/src/runs/index.d.ts +13 -0
  423. package/dist/layout-engine/painters/dom/src/runs/links.d.ts +58 -0
  424. package/dist/layout-engine/painters/dom/src/runs/math-run.d.ts +7 -0
  425. package/dist/layout-engine/painters/dom/src/runs/render-line.d.ts +2 -0
  426. package/dist/layout-engine/painters/dom/src/runs/render-run.d.ts +12 -0
  427. package/dist/layout-engine/painters/dom/src/runs/tab-run.d.ts +66 -0
  428. package/dist/layout-engine/painters/dom/src/runs/text-run.d.ts +35 -0
  429. package/dist/layout-engine/painters/dom/src/runs/tracked-changes.d.ts +90 -0
  430. package/dist/layout-engine/painters/dom/src/runs/types.d.ts +67 -0
  431. package/dist/layout-engine/painters/dom/src/sdt/boundaries.d.ts +16 -0
  432. package/dist/layout-engine/painters/dom/src/sdt/container.d.ts +32 -0
  433. package/dist/layout-engine/painters/dom/src/sdt/dataset.d.ts +7 -0
  434. package/dist/layout-engine/painters/dom/src/sdt/inline.d.ts +9 -0
  435. package/dist/layout-engine/painters/dom/src/sdt/snapshot.d.ts +29 -0
  436. package/dist/layout-engine/painters/dom/src/styles.d.ts +71 -0
  437. package/dist/layout-engine/painters/dom/src/svg-utils.d.ts +101 -0
  438. package/dist/layout-engine/painters/dom/src/table/border-utils.d.ts +185 -0
  439. package/dist/layout-engine/painters/dom/src/table/grid-geometry.d.ts +69 -0
  440. package/dist/layout-engine/painters/dom/src/table/renderTableCell.d.ts +170 -0
  441. package/dist/layout-engine/painters/dom/src/table/renderTableFragment.d.ts +132 -0
  442. package/dist/layout-engine/painters/dom/src/table/renderTableRow.d.ts +146 -0
  443. package/dist/layout-engine/painters/dom/src/test-utils/normalize-line.d.ts +39 -0
  444. package/dist/layout-engine/painters/dom/src/utils/anchor-helpers.d.ts +3 -0
  445. package/dist/layout-engine/painters/dom/src/utils/apply-styles.d.ts +1 -0
  446. package/dist/layout-engine/painters/dom/src/utils/layout-identity.d.ts +9 -0
  447. package/dist/layout-engine/painters/dom/src/utils/source-anchor.d.ts +2 -0
  448. package/dist/layout-engine/style-engine/src/bench/resolveSdtMetadata.bench.d.ts +1 -0
  449. package/dist/layout-engine/style-engine/src/cascade.d.ts +43 -0
  450. package/dist/layout-engine/style-engine/src/index.d.ts +121 -0
  451. package/dist/layout-engine/style-engine/src/normalize/colors.d.ts +13 -0
  452. package/dist/layout-engine/style-engine/src/normalize/index.d.ts +13 -0
  453. package/dist/layout-engine/style-engine/src/normalize/paragraph-attrs.d.ts +3 -0
  454. package/dist/layout-engine/style-engine/src/normalize/run-attrs.d.ts +17 -0
  455. package/dist/layout-engine/style-engine/src/normalize/types.d.ts +36 -0
  456. package/dist/layout-engine/style-engine/src/normalize/units.d.ts +13 -0
  457. package/dist/layout-engine/style-engine/src/ooxml/index.d.ts +64 -0
  458. package/dist/layout-engine/style-engine/src/ooxml/numbering-types.d.ts +126 -0
  459. package/dist/layout-engine/style-engine/src/ooxml/styles-types.d.ts +363 -0
  460. package/dist/layout-engine/style-engine/src/ooxml/table-style-selection.d.ts +86 -0
  461. package/dist/layout-engine/style-engine/src/ooxml/types.d.ts +459 -0
  462. package/dist/layout-engine/style-engine/src/ooxml/word-style-model/parse-theme.d.ts +33 -0
  463. package/dist/layout-engine/style-engine/src/ooxml/word-style-model/parse-xml.d.ts +29 -0
  464. package/dist/public/ui-react.cjs +175 -0
  465. package/dist/public/ui-react.es.js +159 -0
  466. package/dist/public/ui.cjs +5 -0
  467. package/dist/public/ui.es.js +2 -0
  468. package/dist/shared/common/comments-types.d.ts +102 -0
  469. package/dist/shared/common/layout-constants.d.ts +7 -0
  470. package/dist/shared/common/list-marker-utils.d.ts +186 -0
  471. package/dist/shared/common/list-numbering/index.d.ts +16 -0
  472. package/dist/shared/font-system/src/activation.d.ts +64 -0
  473. package/dist/shared/font-system/src/bundled-manifest.d.ts +32 -0
  474. package/dist/shared/font-system/src/bundled.d.ts +41 -0
  475. package/dist/shared/font-system/src/document-font-options.d.ts +53 -0
  476. package/dist/shared/font-system/src/epoch.d.ts +6 -0
  477. package/dist/shared/font-system/src/font-offerings.d.ts +120 -0
  478. package/dist/shared/font-system/src/index.d.ts +35 -0
  479. package/dist/shared/font-system/src/os2.d.ts +30 -0
  480. package/dist/shared/font-system/src/registry.d.ts +188 -0
  481. package/dist/shared/font-system/src/report.d.ts +98 -0
  482. package/dist/shared/font-system/src/resolver.d.ts +215 -0
  483. package/dist/shared/font-system/src/substitution-evidence.d.ts +103 -0
  484. package/dist/shared/font-system/src/types.d.ts +128 -0
  485. package/dist/style.css +3323 -0
  486. package/dist/style.layered.css +3323 -0
  487. package/dist/superdoc/src/SuperDoc.vue.d.ts +88 -0
  488. package/dist/superdoc/src/cdn-entry.d.ts +2 -0
  489. package/dist/superdoc/src/components/CommentsLayer/CommentDialog.vue.d.ts +62 -0
  490. package/dist/superdoc/src/components/CommentsLayer/CommentHeader.vue.d.ts +26 -0
  491. package/dist/superdoc/src/components/CommentsLayer/CommentInput.vue.d.ts +19 -0
  492. package/dist/superdoc/src/components/CommentsLayer/CommentsDropdown.vue.d.ts +30 -0
  493. package/dist/superdoc/src/components/CommentsLayer/InternalDropdown.vue.d.ts +10 -0
  494. package/dist/superdoc/src/components/CommentsLayer/collect-removed-comment-ids.d.ts +1 -0
  495. package/dist/superdoc/src/components/CommentsLayer/collect-tracked-change-thread.d.ts +6 -0
  496. package/dist/superdoc/src/components/CommentsLayer/comment-schemas.d.ts +18 -0
  497. package/dist/superdoc/src/components/CommentsLayer/commentsList/commentsList.vue.d.ts +9 -0
  498. package/dist/superdoc/src/components/CommentsLayer/commentsList/super-comments-list.d.ts +21 -0
  499. package/dist/superdoc/src/components/CommentsLayer/floating-comment-positioning.d.ts +28 -0
  500. package/dist/superdoc/src/components/CommentsLayer/helpers.d.ts +7 -0
  501. package/dist/superdoc/src/components/CommentsLayer/tracked-change-threading.d.ts +2 -0
  502. package/dist/superdoc/src/components/CommentsLayer/types.d.ts +3 -0
  503. package/dist/superdoc/src/components/CommentsLayer/use-comment.d.ts +8 -0
  504. package/dist/superdoc/src/components/CommentsLayer/use-conversation.d.ts +22 -0
  505. package/dist/superdoc/src/components/CommentsLayer/use-floating-comment.d.ts +11 -0
  506. package/dist/superdoc/src/components/HtmlViewer/HtmlViewer.vue.d.ts +10 -0
  507. package/dist/superdoc/src/components/PdfViewer/PdfViewer.vue.d.ts +61 -0
  508. package/dist/superdoc/src/components/PdfViewer/PdfViewerDocument.vue.d.ts +21 -0
  509. package/dist/superdoc/src/components/PdfViewer/PdfViewerPage.vue.d.ts +24 -0
  510. package/dist/superdoc/src/components/Whiteboard/WhiteboardLayer.vue.d.ts +19 -0
  511. package/dist/superdoc/src/components/Whiteboard/WhiteboardPage.vue.d.ts +17 -0
  512. package/dist/superdoc/src/components/Whiteboard/use-whiteboard.d.ts +18 -0
  513. package/dist/superdoc/src/components/surfaces/FindReplaceSurface.vue.d.ts +19 -0
  514. package/dist/superdoc/src/components/surfaces/PasswordPromptSurface.vue.d.ts +17 -0
  515. package/dist/superdoc/src/components/surfaces/SurfaceDialog.vue.d.ts +12 -0
  516. package/dist/superdoc/src/components/surfaces/SurfaceExternalMount.vue.d.ts +19 -0
  517. package/dist/superdoc/src/components/surfaces/SurfaceFloating.vue.d.ts +10 -0
  518. package/dist/superdoc/src/components/surfaces/SurfaceHost.vue.d.ts +31 -0
  519. package/dist/superdoc/src/components/surfaces/focusable-selector.d.ts +5 -0
  520. package/dist/superdoc/src/composables/find-shortcut-owner.d.ts +32 -0
  521. package/dist/superdoc/src/composables/replace-continuation.d.ts +37 -0
  522. package/dist/superdoc/src/composables/use-ai.d.ts +10 -0
  523. package/dist/superdoc/src/composables/use-comment-small-screen.d.ts +10 -0
  524. package/dist/superdoc/src/composables/use-compact-comment-popover.d.ts +21 -0
  525. package/dist/superdoc/src/composables/use-document.d.ts +34 -0
  526. package/dist/superdoc/src/composables/use-field.d.ts +33 -0
  527. package/dist/superdoc/src/composables/use-find-replace.d.ts +83 -0
  528. package/dist/superdoc/src/composables/use-high-contrast-mode.d.ts +4 -0
  529. package/dist/superdoc/src/composables/use-link-popover.d.ts +221 -0
  530. package/dist/superdoc/src/composables/use-password-prompt.d.ts +33 -0
  531. package/dist/superdoc/src/composables/use-selected-text.d.ts +16 -0
  532. package/dist/superdoc/src/composables/use-viewport-fit.d.ts +50 -0
  533. package/dist/superdoc/src/composables/useUiFontFamily.d.ts +24 -0
  534. package/dist/superdoc/src/core/EventEmitter.d.ts +55 -0
  535. package/dist/superdoc/src/core/SuperDoc.d.ts +775 -0
  536. package/dist/superdoc/src/core/collaboration/collaboration-comments.d.ts +4 -0
  537. package/dist/superdoc/src/core/collaboration/collaboration.d.ts +28 -0
  538. package/dist/superdoc/src/core/collaboration/helpers.d.ts +8 -0
  539. package/dist/superdoc/src/core/collaboration/permissions.d.ts +19 -0
  540. package/dist/superdoc/src/core/collaboration/resolve-v2-collaboration-target.d.ts +99 -0
  541. package/dist/superdoc/src/core/collaboration/room-overwrite.d.ts +22 -0
  542. package/dist/superdoc/src/core/collaboration/v2-awareness-bridge.d.ts +57 -0
  543. package/dist/superdoc/src/core/config/merge-defined.d.ts +35 -0
  544. package/dist/superdoc/src/core/config/normalize-interaction-config.d.ts +15 -0
  545. package/dist/superdoc/src/core/config/normalize-surfaces-config.d.ts +23 -0
  546. package/dist/superdoc/src/core/config/normalize-ui-config.d.ts +62 -0
  547. package/dist/superdoc/src/core/create-app.d.ts +32 -0
  548. package/dist/superdoc/src/core/editor-runtime/conformance/fake-v2-runtime.d.ts +9 -0
  549. package/dist/superdoc/src/core/editor-runtime/editor-runtime-registry.d.ts +117 -0
  550. package/dist/superdoc/src/core/editor-runtime/index.d.ts +1 -0
  551. package/dist/superdoc/src/core/editor-runtime/root-marker.d.ts +33 -0
  552. package/dist/superdoc/src/core/editor-runtime/types.d.ts +405 -0
  553. package/dist/superdoc/src/core/editor-runtime/v2/v2-editor-runtime-adapter.d.ts +185 -0
  554. package/dist/superdoc/src/core/editor-runtime/v2/v2-session-shortcut-routes.d.ts +47 -0
  555. package/dist/superdoc/src/core/extensions/define.d.ts +56 -0
  556. package/dist/superdoc/src/core/extensions/index.d.ts +2 -0
  557. package/dist/superdoc/src/core/extensions/types.d.ts +519 -0
  558. package/dist/superdoc/src/core/helpers/export.d.ts +2 -0
  559. package/dist/superdoc/src/core/helpers/file.d.ts +43 -0
  560. package/dist/superdoc/src/core/helpers/normalize-track-changes-config.d.ts +60 -0
  561. package/dist/superdoc/src/core/helpers/normalize-user.d.ts +13 -0
  562. package/dist/superdoc/src/core/index.d.ts +1 -0
  563. package/dist/superdoc/src/core/pdf/helpers/constants.d.ts +2 -0
  564. package/dist/superdoc/src/core/pdf/helpers/floor.d.ts +1 -0
  565. package/dist/superdoc/src/core/pdf/helpers/range.d.ts +1 -0
  566. package/dist/superdoc/src/core/pdf/helpers/read-file.d.ts +1 -0
  567. package/dist/superdoc/src/core/pdf/pdf-adapter.d.ts +66 -0
  568. package/dist/superdoc/src/core/surface-manager.d.ts +90 -0
  569. package/dist/superdoc/src/core/theme/create-theme.d.ts +82 -0
  570. package/dist/superdoc/src/core/types/index.d.ts +3253 -0
  571. package/dist/superdoc/src/core/v2-integration/browser-peer-runtime.d.ts +3 -0
  572. package/dist/superdoc/src/core/v2-integration/cdn-engine-loader.d.ts +16 -0
  573. package/dist/superdoc/src/core/v2-integration/v2-integration.d.ts +97 -0
  574. package/dist/superdoc/src/core/whiteboard/Whiteboard.d.ts +247 -0
  575. package/dist/superdoc/src/core/whiteboard/WhiteboardPage.d.ts +251 -0
  576. package/dist/superdoc/src/core/whiteboard/WhiteboardRenderer.d.ts +2 -0
  577. package/dist/superdoc/src/core/whiteboard/helpers/createTextarea.d.ts +1 -0
  578. package/dist/superdoc/src/core/whiteboard/helpers/flattenPoints.d.ts +1 -0
  579. package/dist/superdoc/src/core/whiteboard/helpers/getRandomId.d.ts +1 -0
  580. package/dist/superdoc/src/helpers/collect-touched-tracked-change-ids.d.ts +11 -0
  581. package/dist/superdoc/src/helpers/comment-focus.d.ts +4 -0
  582. package/dist/superdoc/src/helpers/comment-small-screen.d.ts +14 -0
  583. package/dist/superdoc/src/helpers/deprecation.d.ts +26 -0
  584. package/dist/superdoc/src/helpers/floor.d.ts +1 -0
  585. package/dist/superdoc/src/helpers/group-changes.d.ts +1 -0
  586. package/dist/superdoc/src/helpers/interaction-trace.d.ts +26 -0
  587. package/dist/superdoc/src/helpers/selection-source.d.ts +1 -0
  588. package/dist/superdoc/src/helpers/transaction-touches-structural-change.d.ts +19 -0
  589. package/dist/superdoc/src/helpers/use-selection.d.ts +17 -0
  590. package/dist/superdoc/src/helpers/v2-author-required-rejection.d.ts +22 -0
  591. package/dist/superdoc/src/helpers/v2-remote-review-hydration.d.ts +12 -0
  592. package/dist/superdoc/src/helpers/v2-review-mutation-impact.d.ts +19 -0
  593. package/dist/superdoc/src/helpers/v2-review-mutation-reconciler.d.ts +19 -0
  594. package/dist/superdoc/src/helpers/v2-review-target.d.ts +7 -0
  595. package/dist/superdoc/src/helpers/v2-selection-sync.d.ts +12 -0
  596. package/dist/superdoc/src/helpers/v2-typing-mutation-event.d.ts +5 -0
  597. package/dist/superdoc/src/icons.d.ts +11 -0
  598. package/dist/superdoc/src/index.d.cts +13 -0
  599. package/dist/superdoc/src/index.d.ts +11 -0
  600. package/dist/superdoc/src/internal/toolbar/built-in/AIWriter.vue.d.ts +21 -0
  601. package/dist/superdoc/src/internal/toolbar/built-in/AlignmentButtons.vue.d.ts +6 -0
  602. package/dist/superdoc/src/internal/toolbar/built-in/ButtonGroup.vue.d.ts +10 -0
  603. package/dist/superdoc/src/internal/toolbar/built-in/DocumentMode.vue.d.ts +10 -0
  604. package/dist/superdoc/src/internal/toolbar/built-in/FontFamilyCombobox.vue.d.ts +10 -0
  605. package/dist/superdoc/src/internal/toolbar/built-in/FontSizeCombobox.vue.d.ts +10 -0
  606. package/dist/superdoc/src/internal/toolbar/built-in/IconGrid.vue.d.ts +14 -0
  607. package/dist/superdoc/src/internal/toolbar/built-in/IconGridRow.vue.d.ts +13 -0
  608. package/dist/superdoc/src/internal/toolbar/built-in/LinkInput.vue.d.ts +37 -0
  609. package/dist/superdoc/src/internal/toolbar/built-in/LinkedStyle.vue.d.ts +12 -0
  610. package/dist/superdoc/src/internal/toolbar/built-in/OverflowMenu.vue.d.ts +10 -0
  611. package/dist/superdoc/src/internal/toolbar/built-in/SdTooltip.vue.d.ts +34 -0
  612. package/dist/superdoc/src/internal/toolbar/built-in/StyleButtonsList.vue.d.ts +14 -0
  613. package/dist/superdoc/src/internal/toolbar/built-in/TableActions.vue.d.ts +8 -0
  614. package/dist/superdoc/src/internal/toolbar/built-in/TableGrid.vue.d.ts +6 -0
  615. package/dist/superdoc/src/internal/toolbar/built-in/Toolbar.vue.d.ts +4 -0
  616. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarButton.vue.d.ts +24 -0
  617. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarButtonIcon.vue.d.ts +11 -0
  618. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarComboBox.vue.d.ts +18 -0
  619. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarDropdown.vue.d.ts +38 -0
  620. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarSeparator.vue.d.ts +8 -0
  621. package/dist/superdoc/src/internal/toolbar/built-in/color-dropdown-helpers.d.ts +24 -0
  622. package/dist/superdoc/src/internal/toolbar/built-in/constants.d.ts +101 -0
  623. package/dist/superdoc/src/internal/toolbar/built-in/default-items.d.ts +17 -0
  624. package/dist/superdoc/src/internal/toolbar/built-in/font-options.d.ts +1 -0
  625. package/dist/superdoc/src/internal/toolbar/built-in/font-typeahead.d.ts +11 -0
  626. package/dist/superdoc/src/internal/toolbar/built-in/format-negation.d.ts +5 -0
  627. package/dist/superdoc/src/internal/toolbar/built-in/general.d.ts +1 -0
  628. package/dist/superdoc/src/internal/toolbar/built-in/helpers.d.ts +5 -0
  629. package/dist/superdoc/src/internal/toolbar/built-in/list-style-buttons.d.ts +10 -0
  630. package/dist/superdoc/src/internal/toolbar/built-in/scroll-helpers.d.ts +4 -0
  631. package/dist/superdoc/src/internal/toolbar/built-in/toolbar-focus-helpers.d.ts +1 -0
  632. package/dist/superdoc/src/internal/toolbar/built-in/toolbarIcons.d.ts +76 -0
  633. package/dist/superdoc/src/internal/toolbar/built-in/toolbarTexts.d.ts +58 -0
  634. package/dist/superdoc/src/internal/toolbar/built-in/url-safety.d.ts +8 -0
  635. package/dist/superdoc/src/internal/toolbar/built-in/use-toolbar-item.d.ts +48 -0
  636. package/dist/superdoc/src/internal/toolbar/built-in-toolbar.d.ts +237 -0
  637. package/dist/superdoc/src/internal/toolbar/compatibility-catalog.d.ts +59 -0
  638. package/dist/superdoc/src/internal/toolbar/image-upload.d.ts +63 -0
  639. package/dist/superdoc/src/internal/toolbar/index.d.ts +10 -0
  640. package/dist/superdoc/src/main.d.ts +1 -0
  641. package/dist/superdoc/src/public/browser-document-api.d.ts +53 -0
  642. package/dist/superdoc/src/public/collaboration-upgrade-engine.d.cts +26 -0
  643. package/dist/superdoc/src/public/collaboration-upgrade-engine.d.ts +130 -0
  644. package/dist/superdoc/src/public/index.d.cts +365 -0
  645. package/dist/superdoc/src/public/index.d.ts +182 -0
  646. package/dist/superdoc/src/public/ui/commands.d.ts +249 -0
  647. package/dist/superdoc/src/public/ui/create-super-doc-ui.d.ts +18 -0
  648. package/dist/superdoc/src/public/ui/entity-at.d.ts +29 -0
  649. package/dist/superdoc/src/public/ui/equality.d.ts +10 -0
  650. package/dist/superdoc/src/public/ui/format-painter-helpers.d.ts +36 -0
  651. package/dist/superdoc/src/public/ui/react.d.ts +81 -0
  652. package/dist/superdoc/src/public/ui/reasons.d.ts +99 -0
  653. package/dist/superdoc/src/public/ui/types.d.ts +1425 -0
  654. package/dist/superdoc/src/public/ui-react.d.cts +20 -0
  655. package/dist/superdoc/src/public/ui-react.d.ts +20 -0
  656. package/dist/superdoc/src/public/ui.d.cts +194 -0
  657. package/dist/superdoc/src/public/ui.d.ts +29 -0
  658. package/dist/superdoc/src/stores/comments-store.d.ts +700 -0
  659. package/dist/superdoc/src/stores/helpers/floating-comment-instances.d.ts +14 -0
  660. package/dist/superdoc/src/stores/helpers/tracked-change-thread-index.d.ts +14 -0
  661. package/dist/superdoc/src/stores/hrbr-fields-store.d.ts +43 -0
  662. package/dist/superdoc/src/stores/superdoc-store.d.ts +2254 -0
  663. package/dist/superdoc.cjs +40494 -0
  664. package/dist/superdoc.es.js +40418 -0
  665. package/dist/word-layout/src/index.d.ts +64 -0
  666. package/dist/word-layout/src/list-marker.d.ts +68 -0
  667. package/dist/word-layout/src/marker-utils.d.ts +20 -0
  668. package/dist/word-layout/src/numbering-manager.d.ts +85 -0
  669. package/dist/word-layout/src/tab-layout.d.ts +193 -0
  670. package/dist/word-layout/src/types.d.ts +106 -0
  671. package/dist/word-layout/src/unit-conversions.d.ts +120 -0
  672. package/dist-cdn/style.layered.css +2 -0
  673. package/dist-cdn/superdoc.min.css +2 -0
  674. package/dist-cdn/superdoc.min.js +108 -0
  675. package/package.json +138 -24
  676. package/.npmignore +0 -4
  677. package/data.json +0 -17
  678. package/index.js +0 -2
  679. package/lib/Augmenter.js +0 -27
  680. package/lib/Runner.js +0 -80
  681. package/lib/Stopper.js +0 -71
  682. package/test/superdoc.js +0 -126
  683. package/utils/app.js +0 -18
  684. package/utils/server.js +0 -2
  685. package/web/index.js +0 -54
  686. package/web/public/style.css +0 -76
  687. package/web/views/index.ejs +0 -53
  688. package/web/views/layout.ejs +0 -13
  689. package/web/views/method.ejs +0 -59
@@ -0,0 +1,90 @@
1
+ import { Run, TextRun, TrackedChangeKind, TrackedChangeMeta, TrackedChangesMode } from '../../../../contracts/src/index.js';
2
+ import { TrackedChangesRenderConfig } from './types.js';
3
+ export declare const TRACK_CHANGE_BASE_CLASS: Record<TrackedChangeKind, string>;
4
+ /**
5
+ * Resolve the color used for the kind-level tracked-change CSS variable family.
6
+ *
7
+ * Plain insertion/deletion semantic colors are the default change-kind palette.
8
+ * When an author color is present it remains the visible insert/delete/format
9
+ * highlight color. Side/structural semantic categories (`move-from`,
10
+ * `table-insertion`, `table-cell-insertion`, `cell-merge`, etc.) are explicit
11
+ * semantic paint roles and keep semantic precedence.
12
+ */
13
+ export declare const resolveTrackedChangeVisualColor: (layer: TrackedChangeMeta) => string | undefined;
14
+ /**
15
+ * Stamps the element-scoped CSS variable family for a single tracked-change
16
+ * layer from its resolved visual color. `meta.color` remains the per-author
17
+ * color and is still surfaced separately as `data-track-change-author-color`.
18
+ * The painter reads only paint-ready metadata; color resolution (overrides /
19
+ * resolver / fallback) happened upstream in layout-adapter. Focused backgrounds
20
+ * are derived from the visual color with alpha and only when it is a hex string
21
+ * `colorWithAlpha` can safely extend (named/non-hex visual colors still set
22
+ * border/text but never fabricate a derived background).
23
+ */
24
+ export declare const applyTrackedChangeColorVariables: (elem: HTMLElement, layer: TrackedChangeMeta) => void;
25
+ export declare const TRACK_CHANGE_MODIFIER_CLASS: Record<TrackedChangeKind, Record<TrackedChangesMode, string | undefined>>;
26
+ /**
27
+ * Stamps the semantic class + datasets for a tracked-change layer. Shared by
28
+ * inline, row-level, and cell-level paint paths so the dataset/class vocabulary
29
+ * stays identical. Only fields that are present are stamped; this never reads
30
+ * or writes the author `color` dataset. The semantic datasets are namespaced
31
+ * (`data-track-change-semantic-*`, `-type`, `-subtype`, `-target-kind`,
32
+ * `-semantic-anchor-scope`) so they never collide with the existing author/
33
+ * structural datasets even when row + cell metadata coexist.
34
+ */
35
+ export declare const applySemanticTrackedChangeMetadata: (elem: HTMLElement, meta: TrackedChangeMeta) => void;
36
+ type TrackedChangeCarrier = Partial<Pick<TextRun, 'trackedChange' | 'trackedChanges'>>;
37
+ type TrackedChangeDecoratable = Run | TrackedChangeCarrier;
38
+ export declare const getTrackedChangeLayers: (carrier: TrackedChangeDecoratable) => TrackedChangeMeta[];
39
+ export declare const resolveTrackedChangesConfig: (block: {
40
+ attrs?: unknown;
41
+ }) => TrackedChangesRenderConfig;
42
+ /**
43
+ * Applies a structural row-level tracked change (inserted/deleted whole row) to
44
+ * a single table cell element, reusing the exact same machinery as inline runs:
45
+ * the shared {@link TrackedChangeMeta}, the `TRACK_CHANGE_BASE_CLASS`
46
+ * (`track-insert-dec` / `track-delete-dec`), the `TRACK_CHANGE_MODIFIER_CLASS`
47
+ * mode map (insert → review:highlighted / original:hidden / final:normal;
48
+ * delete → review:highlighted / original:normal / final:hidden), and
49
+ * `applyTrackedChangeColorVariables` for the tracked-change CSS variable family
50
+ * (author colors own plain insert/delete highlights; semantic categories own
51
+ * move/table/cell visuals).
52
+ *
53
+ * The painter renders a row as cells appended to a container (there is no
54
+ * `<tr>` element), so the row's tracked-change visual is applied to each cell.
55
+ * Boundary-safe: this lives in the painter and only reads paint-ready
56
+ * `TrackedChangeMeta` from contracts.
57
+ *
58
+ * @param elem - The cell element to decorate.
59
+ * @param meta - The row's resolved tracked-change metadata.
60
+ * @param config - Tracked-changes mode/enabled (same source inline runs use).
61
+ */
62
+ export declare const applyRowTrackedChangeToCell: (elem: HTMLElement, meta: TrackedChangeMeta, config: TrackedChangesRenderConfig) => void;
63
+ /**
64
+ * Applies a cell-level structural tracked change (SD-3481
65
+ * `TableCellAttrs.trackedChange`: cell insertion/deletion, merge, or split) to a
66
+ * single table cell element. Mirrors {@link applyRowTrackedChangeToCell} but
67
+ * carries its own marker class {@link TRACK_CHANGE_CELL_CLASS} so cell-level CSS
68
+ * never affects inline spans or row-level decorations, and supports the
69
+ * `format` kind (merge/split paint through the `--sd-tracked-changes-format-*`
70
+ * family).
71
+ *
72
+ * Visual color uses {@link resolveTrackedChangeVisualColor} via
73
+ * {@link applyTrackedChangeColorVariables}; semantic class/datasets come from
74
+ * {@link applySemanticTrackedChangeMetadata}.
75
+ *
76
+ * Coexistence with a row-level tracked change: when this cell already carries a
77
+ * row-level decoration (`track-row-cell-dec`), the row keeps ownership of the
78
+ * shared single-value datasets and same-kind color variable family (row
79
+ * precedence). Different-kind cell metadata still stamps its own independent
80
+ * variable family (for example format vars for a cell merge inside an inserted
81
+ * row), and the semantic datasets/classes are always added so neither
82
+ * structural marker is dropped.
83
+ *
84
+ * @param elem - The cell element to decorate.
85
+ * @param meta - The cell's resolved tracked-change metadata.
86
+ * @param config - Tracked-changes mode/enabled (same source inline runs use).
87
+ */
88
+ export declare const applyCellTrackedChangeToCell: (elem: HTMLElement, meta: TrackedChangeMeta, config: TrackedChangesRenderConfig) => void;
89
+ export declare const applyTrackedChangeDecorations: (elem: HTMLElement, run: TrackedChangeDecoratable, config: TrackedChangesRenderConfig) => void;
90
+ export {};
@@ -0,0 +1,67 @@
1
+ import { ImageHyperlink, ParagraphBlock, Run, SdtMetadata, TrackedChangesMode } from '../../../../contracts/src/index.js';
2
+ import { FragmentRenderContext } from '../renderer.js';
3
+ import { PositionValidationCollector } from '../pm-position-validation.js';
4
+ export type RenderedLineInfo = {
5
+ el: HTMLElement;
6
+ top: number;
7
+ height: number;
8
+ };
9
+ export type TrackedChangesRenderConfig = {
10
+ mode: TrackedChangesMode;
11
+ enabled: boolean;
12
+ };
13
+ export type LinkRenderData = {
14
+ href?: string;
15
+ target?: string;
16
+ rel?: string;
17
+ tooltip?: string | null;
18
+ dataset?: Record<string, string>;
19
+ blocked: boolean;
20
+ };
21
+ export type RunRenderContext = {
22
+ doc: Document;
23
+ layoutEpoch: number;
24
+ showFormattingMarks: boolean;
25
+ contentControlsChrome: 'default' | 'none';
26
+ /**
27
+ * Per-document logical->physical font resolver, FACE-aware: the substitute applies only when it
28
+ * provides the run's face (weight/style), else the logical family passes through (no faux-style).
29
+ * Undefined => global bundled default (family-level).
30
+ */
31
+ resolvePhysical?: (cssFontFamily: string, face: {
32
+ weight: '400' | '700';
33
+ style: 'normal' | 'italic';
34
+ }) => string;
35
+ pendingTooltips: WeakMap<HTMLElement, string>;
36
+ getNextLinkId: () => string;
37
+ applySdtDataset: (el: HTMLElement | null, metadata?: SdtMetadata | null) => void;
38
+ buildImageHyperlinkAnchor: (child: HTMLElement, hyperlink: ImageHyperlink | undefined, display: string) => HTMLElement;
39
+ resolveTrackedChangesConfig: (block: ParagraphBlock) => TrackedChangesRenderConfig;
40
+ applyTrackedChangeDecorations: (elem: HTMLElement, run: Run, config: TrackedChangesRenderConfig) => void;
41
+ resolveRunSdtId: (run: Run) => {
42
+ sdtId: string;
43
+ sdt: SdtMetadata;
44
+ } | null;
45
+ createInlineSdtWrapper: (sdt: SdtMetadata) => HTMLElement;
46
+ syncInlineSdtWrapperTypography: (wrapper: HTMLElement, runForSizing?: Run) => void;
47
+ expandSdtWrapperPmRange: (wrapper: HTMLElement, pmStart?: number | null, pmEnd?: number | null) => void;
48
+ /**
49
+ * Painter-scoped position-coverage collector (dark by default). The run
50
+ * dispatcher (`renderRun`) records one content-free structural observation
51
+ * per rendered run through this sink; absent on ad-hoc/test contexts.
52
+ */
53
+ positionValidation?: PositionValidationCollector;
54
+ };
55
+ export type RenderLineParams = {
56
+ block: ParagraphBlock;
57
+ line: import('../../../../contracts/src/index.js').Line;
58
+ context: FragmentRenderContext;
59
+ availableWidthOverride?: number;
60
+ lineIndex?: number;
61
+ skipJustify?: boolean;
62
+ preExpandedRuns?: Run[];
63
+ resolvedListTextStartPx?: number;
64
+ indentOffsetOverride?: number;
65
+ paragraphMarkLeftOffsetOverride?: number;
66
+ runContext: RunRenderContext;
67
+ };
@@ -0,0 +1,16 @@
1
+ import { ResolvedPaintItem } from '../../../../contracts/src/index.js';
2
+ import { SdtBoundaryOptions } from './container.js';
3
+ /**
4
+ * The container-label keys a `computeSdtBoundaries` walk over `resolvedItems`
5
+ * WOULD add to `sdtLabelsRendered`, without mutating it. This is the pure
6
+ * "which labels does this page display" function the persistent-page reuse path
7
+ * compares against recorded per-page label state: label placement is
8
+ * cross-page prefix state that resolve stamps do not cover, so an untouched
9
+ * reuse is only safe when the recorded labels equal this expectation.
10
+ *
11
+ * Implemented BY running `computeSdtBoundaries` on a scratch copy of the
12
+ * prefix set (never a hand-maintained mirror), so the two can not drift.
13
+ * Pages without container items take the allocation-free fast path.
14
+ */
15
+ export declare const computeExpectedSdtLabelKeys: (resolvedItems: readonly ResolvedPaintItem[], sdtLabelsRendered: ReadonlySet<string>) => ReadonlySet<string>;
16
+ export declare const computeSdtBoundaries: (resolvedItems: readonly ResolvedPaintItem[], sdtLabelsRendered: Set<string>) => Map<number, SdtBoundaryOptions>;
@@ -0,0 +1,32 @@
1
+ import { SdtMetadata, StructuredContentMetadata } from '../../../../contracts/src/index.js';
2
+ export { getSdtContainerKey, getSdtContainerKeyForBlock, getSdtContainerMetadata, hasExplicitSdtContainerKey, } from '../../../../contracts/src/index.js';
3
+ export type SdtContainerConfig = {
4
+ className: string;
5
+ labelText: string;
6
+ labelClassName: string;
7
+ isStart: boolean;
8
+ isEnd: boolean;
9
+ } | null;
10
+ export type SdtBoundaryOptions = {
11
+ isStart?: boolean;
12
+ isEnd?: boolean;
13
+ widthOverride?: number;
14
+ paddingBottomOverride?: number;
15
+ showLabel?: boolean;
16
+ };
17
+ export type SdtAncestorOptions = {
18
+ ancestorContainerKey?: string | null;
19
+ ancestorContainerSdt?: SdtMetadata | null;
20
+ ancestorContainerKeys?: readonly (string | null | undefined)[];
21
+ ancestorContainerSdts?: readonly (SdtMetadata | null | undefined)[];
22
+ };
23
+ export declare function isStructuredContentMetadata(sdt: SdtMetadata | null | undefined): sdt is StructuredContentMetadata;
24
+ export declare function isDocumentSectionMetadata(sdt: SdtMetadata | null | undefined): sdt is {
25
+ type: 'documentSection';
26
+ title?: string | null;
27
+ };
28
+ export declare function getSdtContainerConfig(sdt: SdtMetadata | null | undefined): SdtContainerConfig;
29
+ export declare function shouldRenderSdtContainerChrome(sdt?: SdtMetadata | null, containerSdt?: SdtMetadata | null, options?: SdtAncestorOptions): boolean;
30
+ export declare function getSdtSiblingBoundaries(containerKeys: readonly (string | null)[]): Array<SdtBoundaryOptions | undefined>;
31
+ export declare function applySdtContainerChrome(doc: Document, container: HTMLElement, sdt: SdtMetadata | null | undefined, containerSdt?: SdtMetadata | null | undefined, boundaryOptions?: SdtBoundaryOptions, options?: SdtAncestorOptions, chrome?: 'default' | 'none'): boolean;
32
+ export declare function shouldRebuildForSdtBoundary(element: HTMLElement, boundary: SdtBoundaryOptions | undefined): boolean;
@@ -0,0 +1,7 @@
1
+ import { SdtMetadata } from '../../../../contracts/src/index.js';
2
+ export declare const clearSdtDataset: (el: HTMLElement) => void;
3
+ export declare const applySdtDataset: (el: HTMLElement | null, metadata?: SdtMetadata | null) => void;
4
+ export declare const applyContainerSdtDataset: (el: HTMLElement | null, metadata?: SdtMetadata | null) => void;
5
+ export declare const getSdtMetadataId: (metadata: SdtMetadata | null | undefined) => string;
6
+ export declare const getSdtMetadataLockMode: (metadata: SdtMetadata | null | undefined) => string;
7
+ export declare const getSdtMetadataVersion: (metadata: SdtMetadata | null | undefined) => string;
@@ -0,0 +1,9 @@
1
+ import { Run, SdtMetadata } from '../../../../contracts/src/index.js';
2
+ import { RunRenderContext } from '../runs/types.js';
3
+ export declare const resolveRunSdtId: (run: Run) => {
4
+ sdtId: string;
5
+ sdt: SdtMetadata;
6
+ } | null;
7
+ export declare const createInlineSdtWrapper: (sdt: SdtMetadata, context: RunRenderContext) => HTMLElement;
8
+ export declare const syncInlineSdtWrapperTypography: (wrapper: HTMLElement, runForSizing?: Run) => void;
9
+ export declare const expandSdtWrapperPmRange: (wrapper: HTMLElement, pmStart?: number | null, pmEnd?: number | null) => void;
@@ -0,0 +1,29 @@
1
+ import { LayoutSourceIdentity } from '../../../../contracts/src/index.js';
2
+ export type PaintSnapshotStructuredContentBlockEntity = {
3
+ element: HTMLElement;
4
+ pageIndex: number;
5
+ sdtId: string;
6
+ pmStart?: number;
7
+ pmEnd?: number;
8
+ layoutSourceIdentity?: LayoutSourceIdentity;
9
+ };
10
+ export type PaintSnapshotStructuredContentInlineEntity = {
11
+ element: HTMLElement;
12
+ pageIndex: number;
13
+ sdtId: string;
14
+ pmStart?: number;
15
+ pmEnd?: number;
16
+ layoutSourceIdentity?: LayoutSourceIdentity;
17
+ };
18
+ export type SdtSnapshotEntities = {
19
+ structuredContentBlocks: PaintSnapshotStructuredContentBlockEntity[];
20
+ structuredContentInlines: PaintSnapshotStructuredContentInlineEntity[];
21
+ };
22
+ type CollectSdtSnapshotEntitiesOptions = {
23
+ resolvePageIndex: (element: HTMLElement) => number | null;
24
+ readDatasetNumber: (value: string | null | undefined) => number | null;
25
+ readLayoutSourceIdentity?: (element: HTMLElement) => LayoutSourceIdentity | undefined;
26
+ compactObject: <T extends Record<string, unknown>>(input: T) => T;
27
+ };
28
+ export declare const collectSdtSnapshotEntitiesFromDomRoot: (rootEl: HTMLElement, options: CollectSdtSnapshotEntitiesOptions) => SdtSnapshotEntities;
29
+ export {};
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Fallback font-size applied to child elements inside a line container that
3
+ * carry no explicit fontSize. Matches the browser default so rendering is
4
+ * preserved after the strut-elimination fix (fontSize: '0' on lines).
5
+ */
6
+ export declare const BROWSER_DEFAULT_FONT_SIZE = "16px";
7
+ export declare const CLASS_NAMES: {
8
+ container: string;
9
+ page: string;
10
+ fragment: string;
11
+ line: string;
12
+ spread: string;
13
+ pageHeader: string;
14
+ pageFooter: string;
15
+ textRun: string;
16
+ };
17
+ export type PageStyles = {
18
+ background?: string;
19
+ boxShadow?: string;
20
+ border?: string;
21
+ margin?: string;
22
+ color?: string;
23
+ };
24
+ export declare const DEFAULT_PAGE_STYLES: Required<PageStyles>;
25
+ export declare const containerStyles: Partial<CSSStyleDeclaration>;
26
+ export declare const pageStyles: (width: number, height: number, overrides?: PageStyles) => Partial<CSSStyleDeclaration>;
27
+ export declare const fragmentStyles: Partial<CSSStyleDeclaration>;
28
+ /**
29
+ * Line container styles. z-index is intentionally not set on the line so that
30
+ * the resize overlay (and other UI) can stack above content. Only the image
31
+ * element itself gets z-index for layering within the line (e.g. above tab leaders).
32
+ */
33
+ export declare const lineStyles: (lineHeight: number) => Partial<CSSStyleDeclaration>;
34
+ /** One document-scoped stylesheet the paint surface requires: head marker attribute + CSS payload. */
35
+ export type SurfaceStylePreflightEntry = {
36
+ markerAttribute: string;
37
+ cssText: string;
38
+ };
39
+ export declare const ensurePrintStyles: (doc: Document | null | undefined) => void;
40
+ export declare const ensureDocumentSurfaceStyles: (doc: Document | null | undefined) => void;
41
+ export declare const ensureLinkStyles: (doc: Document | null | undefined) => void;
42
+ export declare const ensureTrackChangeStyles: (doc: Document | null | undefined) => void;
43
+ export declare const ensureFormattingMarksStyles: (doc: Document | null | undefined) => void;
44
+ export declare const ensureSdtContainerStyles: (doc: Document | null | undefined) => void;
45
+ export declare const ensureFieldAnnotationStyles: (doc: Document | null | undefined) => void;
46
+ /**
47
+ * Injects image selection highlight styles into the document head.
48
+ * Ensures styles are only injected once per document lifecycle.
49
+ * @param {Document | null | undefined} doc - The document to inject styles into
50
+ * @returns {void}
51
+ */
52
+ export declare const ensureImageSelectionStyles: (doc: Document | null | undefined) => void;
53
+ /**
54
+ * Injects the MathML <menclose> polyfill into the document head. Required
55
+ * because no browser paints menclose natively (MathML Core dropped it). See
56
+ * MATH_MENCLOSE_STYLES for the full rationale.
57
+ */
58
+ export declare const ensureMathMencloseStyles: (doc: Document | null | undefined) => void;
59
+ /**
60
+ * Injects footnote/endnote interaction styles (text cursor over note content)
61
+ * into the document head. Injected once per document lifecycle. (SD-3400)
62
+ */
63
+ export declare const ensureFootnoteStyles: (doc: Document | null | undefined) => void;
64
+ export declare const SURFACE_STYLE_PREFLIGHT: readonly SurfaceStylePreflightEntry[];
65
+ /**
66
+ * Installs the full document-scoped style preflight (idempotent, one
67
+ * `head.querySelector` per marker). The ONLY sanctioned way for a paint entry
68
+ * to install document-level styles — per-path `ensure*Styles()` call lists
69
+ * are the drift mechanism this helper exists to kill.
70
+ */
71
+ export declare const ensureSurfaceStylePreflight: (doc: Document | null | undefined) => void;
@@ -0,0 +1,101 @@
1
+ import { GradientFill, SolidFillWithAlpha, ShapeTextContent } from '../../../contracts/src/index.js';
2
+ /**
3
+ * Validates and sanitizes a hex color string to prevent XSS attacks.
4
+ *
5
+ * Accepts hex colors in the following formats:
6
+ * - 3-digit hex: #RGB (e.g., #F00)
7
+ * - 6-digit hex: #RRGGBB (e.g., #FF0000)
8
+ * - 3-digit hex without #: RGB (e.g., F00)
9
+ * - 6-digit hex without #: RRGGBB (e.g., FF0000)
10
+ *
11
+ * @param color - The color string to validate
12
+ * @returns The validated and normalized hex color with # prefix, or undefined if invalid
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * validateHexColor('#FF0000'); // '#FF0000'
17
+ * validateHexColor('FF0000'); // '#FF0000'
18
+ * validateHexColor('#F00'); // '#F00'
19
+ * validateHexColor('F00'); // '#F00'
20
+ * validateHexColor('javascript:alert(1)'); // undefined (XSS attempt)
21
+ * validateHexColor('#GGGGGG'); // undefined (invalid hex)
22
+ * validateHexColor('red'); // undefined (named colors not supported)
23
+ * ```
24
+ */
25
+ export declare function validateHexColor(color: string): string | undefined;
26
+ /**
27
+ * Creates an SVG gradient element (linear or radial)
28
+ */
29
+ export declare function createGradient(gradientData: GradientFill, gradientId: string): SVGLinearGradientElement | SVGRadialGradientElement | null;
30
+ /**
31
+ * Creates an SVG foreignObject with formatted text content
32
+ */
33
+ export declare function createTextElement(textContent: ShapeTextContent, textAlign: string, width: number, height: number): SVGForeignObjectElement;
34
+ /**
35
+ * Applies a gradient to all filled elements in an SVG.
36
+ *
37
+ * Creates a gradient definition using the provided gradient data and applies it
38
+ * to all filled elements in the SVG. Uses the shared createGradient utility to
39
+ * ensure consistent gradient creation with validation.
40
+ *
41
+ * Gracefully handles DOM errors to prevent crashes.
42
+ *
43
+ * @param svg - The SVG element to apply the gradient to
44
+ * @param gradientData - The gradient fill configuration
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
49
+ * applyGradientToSVG(svg, {
50
+ * type: 'gradient',
51
+ * gradientType: 'linear',
52
+ * angle: 90,
53
+ * stops: [
54
+ * { position: 0, color: '#FF0000', alpha: 1 },
55
+ * { position: 1, color: '#0000FF', alpha: 1 }
56
+ * ]
57
+ * });
58
+ * ```
59
+ */
60
+ export declare function applyGradientToSVG(svg: SVGElement, gradientData: GradientFill): void;
61
+ /**
62
+ * Applies alpha transparency to all filled elements in an SVG.
63
+ *
64
+ * Validates the color format before applying to prevent XSS attacks.
65
+ * Clamps alpha value to the 0-1 range.
66
+ * Gracefully handles DOM errors to prevent crashes.
67
+ *
68
+ * @param svg - The SVG element to apply the fill to
69
+ * @param alphaData - The solid fill with alpha configuration
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
74
+ * applyAlphaToSVG(svg, { type: 'solidWithAlpha', color: '#FF0000', alpha: 0.5 });
75
+ * ```
76
+ */
77
+ export declare function applyAlphaToSVG(svg: SVGElement, alphaData: SolidFillWithAlpha): void;
78
+ /**
79
+ * Generates CSS transform strings from shape attributes
80
+ */
81
+ export declare function generateTransforms(attrs: {
82
+ rotation?: number;
83
+ flipH?: boolean;
84
+ flipV?: boolean;
85
+ }): string[];
86
+ /**
87
+ * Generates a unique gradient ID with optional prefix.
88
+ *
89
+ * Uses a combination of timestamp, counter, and random string to ensure uniqueness
90
+ * even when multiple gradients are created in the same millisecond.
91
+ *
92
+ * @param prefix - Optional prefix for the gradient ID (defaults to 'gradient')
93
+ * @returns A unique gradient ID string
94
+ *
95
+ * @example
96
+ * ```typescript
97
+ * generateGradientId(); // 'gradient-1700000000000-0-abc123def'
98
+ * generateGradientId('linear'); // 'linear-1700000000000-1-xyz789ghi'
99
+ * ```
100
+ */
101
+ export declare function generateGradientId(prefix?: string): string;
@@ -0,0 +1,185 @@
1
+ import { BorderSpec, CellBorders, TableBorderValue, TableBorders, TableFragment } from '../../../../contracts/src/index.js';
2
+ import { TableCellGridPosition } from './grid-geometry.js';
3
+ /**
4
+ * Applies a border specification to one side of an HTML element.
5
+ *
6
+ * Converts BorderSpec format to CSS border properties and applies them to the specified
7
+ * side of the element. Handles style conversion (e.g., 'single' → 'solid'), color validation,
8
+ * and special cases like 'thick' borders which use doubled width.
9
+ *
10
+ * @param element - The HTML element to apply the border to
11
+ * @param side - Which side of the element to apply the border ('Top', 'Right', 'Bottom', or 'Left')
12
+ * @param border - The border specification to apply, or undefined to skip
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const cell = document.createElement('td');
17
+ * applyBorder(cell, 'Top', { style: 'single', width: 2, color: '#FF0000' });
18
+ * // Sets cell.style.borderTop = '2px solid #FF0000'
19
+ * ```
20
+ */
21
+ export declare const applyBorder: (element: HTMLElement, side: "Top" | "Right" | "Bottom" | "Left", border?: BorderSpec) => void;
22
+ /**
23
+ * Applies border specifications to all four sides of a table cell element.
24
+ *
25
+ * Convenience function that applies borders to top, right, bottom, and left sides
26
+ * of an element using applyBorder(). Only applies borders for sides that are defined
27
+ * in the CellBorders object.
28
+ *
29
+ * @param element - The HTML element (typically a table cell) to apply borders to
30
+ * @param borders - Cell border specifications for each side, or undefined to skip
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const cell = document.createElement('td');
35
+ * applyCellBorders(cell, {
36
+ * top: { style: 'single', width: 1, color: '#000000' },
37
+ * left: { style: 'double', width: 2, color: '#FF0000' }
38
+ * });
39
+ * ```
40
+ */
41
+ export declare const applyCellBorders: (element: HTMLElement, borders?: CellBorders) => void;
42
+ /**
43
+ * Converts a TableBorderValue to a BorderSpec for rendering.
44
+ *
45
+ * Handles conversion of table-level border values (which may include {none: true} markers)
46
+ * to BorderSpec format used by the DOM renderer. Supports both 'width' and legacy 'size'
47
+ * properties.
48
+ *
49
+ * @param value - Table border value to convert, or null/undefined
50
+ * @returns BorderSpec for rendering, or undefined if value is null/undefined
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * const spec = borderValueToSpec({ style: 'single', width: 2, color: '#FF0000' });
55
+ * // Returns: { style: 'single', width: 2, color: '#FF0000' }
56
+ *
57
+ * const none = borderValueToSpec({ none: true });
58
+ * // Returns: { style: 'none', width: 0 }
59
+ * ```
60
+ */
61
+ export declare const borderValueToSpec: (value?: TableBorderValue | null) => BorderSpec | undefined;
62
+ /**
63
+ * Resolves a table border value with fallback support.
64
+ *
65
+ * Attempts to use the explicit border value first, falling back to the fallback value
66
+ * if the explicit value is undefined or null. This is used when cell borders can come
67
+ * from either cell-specific definitions or table-level definitions.
68
+ *
69
+ * @param explicit - Primary border value to use (e.g., from cell attributes)
70
+ * @param fallback - Fallback border value (e.g., from table borders)
71
+ * @returns Resolved BorderSpec, or undefined if both values are undefined/null
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * const cellBorder = { style: 'double', width: 3, color: '#FF0000' };
76
+ * const tableBorder = { style: 'single', width: 1, color: '#000000' };
77
+ * const result = resolveTableBorderValue(cellBorder, tableBorder);
78
+ * // Returns BorderSpec from cellBorder (explicit wins)
79
+ * ```
80
+ */
81
+ export declare const resolveTableBorderValue: (explicit: TableBorderValue | undefined | null, fallback?: TableBorderValue | undefined | null) => BorderSpec | undefined;
82
+ export declare const isPresentBorder: (b?: BorderSpec) => b is BorderSpec;
83
+ /**
84
+ * True when a border is EXPLICITLY set to none/nil (`w:val="nil"`/`"none"`), as opposed to
85
+ * simply unset/absent. The distinction matters for shared interior edges (§17.4.66): an
86
+ * explicit none on BOTH adjacent cells suppresses the divider, while an unset side inherits
87
+ * the table's insideH/insideV. Accepts either a CellBorders BorderSpec (`{style:'none'}`) or
88
+ * a TableBorderValue (`{none:true}`).
89
+ */
90
+ export declare const isExplicitNoneBorder: (b?: unknown) => boolean;
91
+ /**
92
+ * OOXML cell-border conflict resolution (ECMA-376 §17.4.66).
93
+ *
94
+ * With zero cell spacing, two cells sharing an edge each specify a border; the spec
95
+ * collapses them to a SINGLE displayed border:
96
+ * 1. If either side is nil/none/absent, the opposing (present) border is displayed.
97
+ * 2. Otherwise the border with greater weight wins, where
98
+ * weight = (#lines in the style) × (style number).
99
+ * 3. Equal weight → the style higher on the precedence list (single first) wins.
100
+ * 4. Identical style → the color with the smaller brightness (R+B+2G, then B+2G, then
101
+ * G) wins; finally the first border (reading order) wins.
102
+ *
103
+ * @param a - One side's border (the owning cell's, e.g. the lower/right cell)
104
+ * @param b - The opposing side's border (e.g. the upper/left neighbor)
105
+ * @returns The single BorderSpec to display, or undefined if neither is present.
106
+ */
107
+ export declare const resolveBorderConflict: (a?: BorderSpec, b?: BorderSpec) => BorderSpec | undefined;
108
+ /**
109
+ * Creates a border overlay element for a table fragment.
110
+ *
111
+ * Generates an absolutely-positioned div that renders table-level borders (top, right,
112
+ * bottom, left) on top of the table content. This is used to apply outer table borders
113
+ * without affecting the table's internal layout.
114
+ *
115
+ * @param doc - Document object for creating the overlay element
116
+ * @param fragment - Table fragment containing dimensions for the overlay
117
+ * @param tableBorders - Table border specifications
118
+ * @returns HTMLElement overlay with borders applied, or null if no borders are defined
119
+ *
120
+ * @example
121
+ * ```typescript
122
+ * const overlay = createTableBorderOverlay(document, fragment, {
123
+ * top: { style: 'single', width: 2, color: '#000000' },
124
+ * bottom: { style: 'single', width: 2, color: '#000000' }
125
+ * });
126
+ * if (overlay) container.appendChild(overlay);
127
+ * ```
128
+ */
129
+ export declare const createTableBorderOverlay: (doc: Document, fragment: TableFragment, tableBorders: TableBorders) => HTMLElement | null;
130
+ /**
131
+ * Resolves cell-specific borders based on cell position within a table.
132
+ *
133
+ * Implements a **single-owner border model** to prevent double borders when
134
+ * rendering tables with absolutely-positioned divs (which don't support CSS
135
+ * border-collapse). Each shared border is owned by exactly one cell:
136
+ *
137
+ * - TOP border: Cell owns its own top (first row uses table.top, others use insideH)
138
+ * - LEFT border: Cell owns its own left (first col uses table.left, others use insideV)
139
+ * - BOTTOM border: Only last row renders it (using table.bottom)
140
+ * - RIGHT border: Only last column renders it (using table.right)
141
+ *
142
+ * This ensures each border line is rendered exactly once, eliminating the
143
+ * double-border issue that occurs when adjacent cells both render their
144
+ * shared edge.
145
+ *
146
+ * @param tableBorders - Table-level border definitions
147
+ * @param cellPosition - Cell position and span within the table grid
148
+ * @returns CellBorders object with resolved borders for all four sides
149
+ *
150
+ * @example
151
+ * ```typescript
152
+ * // For a 3x3 table:
153
+ * // Cell (0,0): top=table.top, left=table.left, bottom=undefined, right=undefined
154
+ * // Cell (1,1): top=insideH, left=insideV, bottom=undefined, right=undefined
155
+ * // Cell (2,2): top=insideH, left=insideV, bottom=table.bottom, right=table.right
156
+ * ```
157
+ */
158
+ /**
159
+ * Checks whether a CellBorders object has at least one explicitly defined side.
160
+ *
161
+ * Returns false when borders is undefined/null or when all four sides are undefined.
162
+ * Used to distinguish "no borders attribute" from "borders attribute present but empty"
163
+ * (intentionally borderless).
164
+ *
165
+ * @param cellBorders - Cell border definitions to check
166
+ * @returns True if at least one side (top, right, bottom, left) is defined
167
+ */
168
+ export declare const hasExplicitCellBorders: (cellBorders?: CellBorders) => cellBorders is CellBorders;
169
+ export declare const resolveTableCellBorders: (tableBorders: {
170
+ top?: TableBorderValue;
171
+ bottom?: TableBorderValue;
172
+ left?: TableBorderValue;
173
+ right?: TableBorderValue;
174
+ insideH?: TableBorderValue;
175
+ insideV?: TableBorderValue;
176
+ }, cellPosition: TableCellGridPosition) => CellBorders;
177
+ /**
178
+ * Swap left↔right on table borders for RTL tables (ECMA-376 Part 4 §14.3.2, §14.3.6).
179
+ * insideH/insideV and top/bottom are not affected by direction.
180
+ */
181
+ export declare const swapTableBordersLR: (borders: TableBorders | undefined) => TableBorders | undefined;
182
+ /**
183
+ * Swap left↔right on cell borders for RTL tables (ECMA-376 Part 4 §14.3.1, §14.3.5).
184
+ */
185
+ export declare const swapCellBordersLR: (borders: CellBorders | undefined) => CellBorders | undefined;