@stll/folio-core 0.62.0 → 0.63.0

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 (1308) hide show
  1. package/README.md +17 -6
  2. package/dist/ai-edits/apply.d.ts +40 -10
  3. package/dist/ai-edits/apply.js +563 -219
  4. package/dist/ai-edits/batch-claims.d.ts +13 -4
  5. package/dist/ai-edits/batch-claims.js +6 -6
  6. package/dist/ai-edits/block-identity.d.ts +3 -4
  7. package/dist/ai-edits/block-identity.js +15 -1
  8. package/dist/ai-edits/blockRange.d.ts +7 -7
  9. package/dist/ai-edits/blockRange.js +2 -1
  10. package/dist/ai-edits/character-boundaries.d.ts +5 -6
  11. package/dist/ai-edits/clean-text.d.ts +8 -8
  12. package/dist/ai-edits/comment-lifecycle.d.ts +15 -6
  13. package/dist/ai-edits/comment-lifecycle.js +74 -23
  14. package/dist/ai-edits/headless.d.ts +39 -37
  15. package/dist/ai-edits/headless.js +147 -47
  16. package/dist/ai-edits/index.d.ts +2 -1
  17. package/dist/ai-edits/index.js +2 -1
  18. package/dist/ai-edits/inline-emphasis.d.ts +5 -6
  19. package/dist/ai-edits/minimal-replacement.d.ts +12 -13
  20. package/dist/ai-edits/newListNumbering.d.ts +16 -3
  21. package/dist/ai-edits/newListNumbering.js +97 -34
  22. package/dist/ai-edits/note-references.d.ts +14 -14
  23. package/dist/ai-edits/note-story-inventory.d.ts +2 -2
  24. package/dist/ai-edits/pending-suggestions.d.ts +8 -8
  25. package/dist/ai-edits/pending-suggestions.js +5 -1
  26. package/dist/ai-edits/read.d.ts +10 -11
  27. package/dist/ai-edits/read.js +6 -0
  28. package/dist/ai-edits/referenceClassification.d.ts +2 -2
  29. package/dist/ai-edits/removed-blocks.d.ts +20 -0
  30. package/dist/ai-edits/removed-blocks.js +69 -0
  31. package/dist/ai-edits/result-validation.d.ts +4 -5
  32. package/dist/ai-edits/result-validation.js +4 -3
  33. package/dist/ai-edits/revisionStretches.d.ts +3 -3
  34. package/dist/ai-edits/revisionStretches.js +17 -0
  35. package/dist/ai-edits/scoped-reading.d.ts +3 -4
  36. package/dist/ai-edits/snapshot.d.ts +24 -23
  37. package/dist/ai-edits/snapshot.js +44 -30
  38. package/dist/ai-edits/table-cell-mutations.d.ts +6 -6
  39. package/dist/ai-edits/table-cell-mutations.js +7 -4
  40. package/dist/ai-edits/table-geometry.d.ts +6 -6
  41. package/dist/ai-edits/table-mutation-plan.d.ts +5 -5
  42. package/dist/ai-edits/table-mutation-plan.js +1 -4
  43. package/dist/ai-edits/table-row-column-mutations.d.ts +16 -16
  44. package/dist/ai-edits/table-targets.d.ts +8 -9
  45. package/dist/ai-edits/table-template.d.ts +6 -6
  46. package/dist/ai-edits/types.d.ts +48 -44
  47. package/dist/ai-edits/word-diff.d.ts +12 -13
  48. package/dist/ai-edits/word-diff.js +23 -21
  49. package/dist/ai-suggestions/apply.d.ts +3 -3
  50. package/dist/ai-suggestions/apply.js +0 -12
  51. package/dist/ai-suggestions/conflict.d.ts +4 -5
  52. package/dist/ai-suggestions/conflict.js +3 -1
  53. package/dist/ai-suggestions/text-positions.d.ts +3 -4
  54. package/dist/ai-suggestions/types.d.ts +13 -14
  55. package/dist/compare/column-alignment.d.ts +4 -5
  56. package/dist/compare/compare.d.ts +12 -12
  57. package/dist/compare/compare.js +2 -1
  58. package/dist/compare/content-alignment.d.ts +16 -16
  59. package/dist/compare/content-alignment.js +29 -25
  60. package/dist/compare/content-types.d.ts +23 -24
  61. package/dist/compare/content.d.ts +23 -23
  62. package/dist/compare/formatting.d.ts +2 -2
  63. package/dist/compare/import-style-closure.d.ts +2 -2
  64. package/dist/compare/inline-atom-resources.d.ts +2 -3
  65. package/dist/compare/inline-atoms.d.ts +6 -7
  66. package/dist/compare/inline-provenance.d.ts +6 -7
  67. package/dist/compare/inline-provenance.js +22 -20
  68. package/dist/compare/inserted-resource-snapshot.d.ts +3 -3
  69. package/dist/compare/plan.d.ts +5 -6
  70. package/dist/compare/plan.js +5 -6
  71. package/dist/compare/reproducible-package.d.ts +2 -3
  72. package/dist/compare/reproducible-package.js +1 -1
  73. package/dist/compare/scenario.d.ts +9 -9
  74. package/dist/compare/section-boundary-properties.d.ts +6 -6
  75. package/dist/compare/section-boundary-properties.js +4 -4
  76. package/dist/compare/style-resources.d.ts +5 -6
  77. package/dist/compare/types.d.ts +21 -21
  78. package/dist/compare/verification.d.ts +11 -11
  79. package/dist/content-controls/checkboxDisplay.d.ts +2 -2
  80. package/dist/content-controls/checkboxDisplay.js +2 -1
  81. package/dist/content-controls/errors.d.ts +4 -4
  82. package/dist/content-controls/findContentControls.d.ts +7 -8
  83. package/dist/content-controls/mutateContentControls.d.ts +17 -6
  84. package/dist/content-controls/mutateContentControls.js +3 -2
  85. package/dist/controller/activeEditorStory.d.ts +4 -5
  86. package/dist/controller/canonicalClipboard.d.ts +3 -3
  87. package/dist/controller/canonicalClipboard.js +3 -1
  88. package/dist/controller/canonicalClipboardResources.d.ts +3 -3
  89. package/dist/controller/canonicalClipboardResources.js +3 -2
  90. package/dist/controller/canonicalComments.d.ts +5 -5
  91. package/dist/controller/canonicalComposition.d.ts +2 -2
  92. package/dist/controller/canonicalComposition.js +11 -14
  93. package/dist/controller/canonicalInlineProjection.d.ts +8 -7
  94. package/dist/controller/canonicalInlineProjection.js +68 -37
  95. package/dist/controller/canonicalInput.d.ts +3 -3
  96. package/dist/controller/canonicalInput.js +1 -3
  97. package/dist/controller/canonicalInputTimer.d.ts +5 -6
  98. package/dist/controller/canonicalListRendering.d.ts +2 -3
  99. package/dist/controller/canonicalOperations.d.ts +6 -6
  100. package/dist/controller/canonicalPublicOperations.d.ts +13 -13
  101. package/dist/controller/canonicalPublicOperations.js +12 -14
  102. package/dist/controller/canonicalReview.d.ts +2 -2
  103. package/dist/controller/canonicalSelection.d.ts +2 -2
  104. package/dist/controller/canonicalSelection.js +15 -0
  105. package/dist/controller/canonicalSession.d.ts +22 -14
  106. package/dist/controller/canonicalSession.js +229 -42
  107. package/dist/controller/canonicalStoryEditor.d.ts +2 -2
  108. package/dist/controller/canonicalStructure.d.ts +3 -3
  109. package/dist/controller/canonicalStructure.js +144 -21
  110. package/dist/controller/canonicalTocSelection.d.ts +2 -2
  111. package/dist/controller/collaborationModules.d.ts +2 -3
  112. package/dist/controller/committedLayoutDiff.d.ts +4 -5
  113. package/dist/controller/contentControlWidgetController.d.ts +7 -8
  114. package/dist/controller/folioEditor.d.ts +6 -6
  115. package/dist/controller/folioEditorEvents.d.ts +7 -8
  116. package/dist/controller/fontReadiness.d.ts +12 -12
  117. package/dist/controller/fontReadiness.js +123 -31
  118. package/dist/controller/headerFooterEditorManager.d.ts +9 -10
  119. package/dist/controller/headerFooterEditorManager.js +3 -10
  120. package/dist/controller/hiddenEditorApi.d.ts +5 -5
  121. package/dist/controller/hiddenEditorManager.d.ts +13 -13
  122. package/dist/controller/hiddenEditorManager.js +2 -0
  123. package/dist/controller/hyphenationReadiness.d.ts +4 -5
  124. package/dist/controller/hyphenationReadiness.js +0 -1
  125. package/dist/controller/latestRequestGate.d.ts +3 -4
  126. package/dist/controller/layoutPipeline.d.ts +7 -8
  127. package/dist/controller/layoutPipeline.js +16 -5
  128. package/dist/controller/layoutRunOptions.d.ts +4 -5
  129. package/dist/controller/layoutScheduler.d.ts +8 -9
  130. package/dist/controller/layoutSession.d.ts +7 -7
  131. package/dist/controller/noteEditorManager.d.ts +7 -7
  132. package/dist/controller/noteEditorManager.js +0 -1
  133. package/dist/controller/readOnlySelection.d.ts +12 -0
  134. package/dist/controller/readOnlySelection.js +62 -0
  135. package/dist/display-list/build/buildContext.d.ts +8 -6
  136. package/dist/display-list/build/buildDisplayList.d.ts +6 -6
  137. package/dist/display-list/build/buildDisplayList.js +20 -2
  138. package/dist/display-list/build/colors.d.ts +6 -7
  139. package/dist/display-list/build/commentAnnotations.d.ts +3 -4
  140. package/dist/display-list/build/floatingImages.d.ts +5 -6
  141. package/dist/display-list/build/fontTable.d.ts +4 -5
  142. package/dist/display-list/build/fontTable.js +2 -1
  143. package/dist/display-list/build/furniture.d.ts +7 -6
  144. package/dist/display-list/build/furniture.js +1 -0
  145. package/dist/display-list/build/glyphs.d.ts +7 -7
  146. package/dist/display-list/build/glyphs.js +17 -26
  147. package/dist/display-list/build/headerFooterPrimitives.d.ts +4 -5
  148. package/dist/display-list/build/headerFooterPrimitives.js +5 -1
  149. package/dist/display-list/build/imagePrimitives.d.ts +5 -5
  150. package/dist/display-list/build/imagePrimitives.js +0 -10
  151. package/dist/display-list/build/pageBorderPrimitives.d.ts +4 -5
  152. package/dist/display-list/build/pageBorderPrimitives.js +8 -11
  153. package/dist/display-list/build/pageFurniture.d.ts +6 -7
  154. package/dist/display-list/build/pageFurniture.js +5 -1
  155. package/dist/display-list/build/paragraphPrimitives.d.ts +5 -4
  156. package/dist/display-list/build/paragraphPrimitives.js +138 -108
  157. package/dist/display-list/build/previewPrimitives.d.ts +2 -3
  158. package/dist/display-list/build/previewPrimitives.js +38 -9
  159. package/dist/display-list/build/regions.d.ts +5 -5
  160. package/dist/display-list/build/storyPrimitives.d.ts +4 -4
  161. package/dist/display-list/build/strokes.d.ts +10 -10
  162. package/dist/display-list/build/tablePrimitives.d.ts +5 -5
  163. package/dist/display-list/build/tablePrimitives.js +15 -2
  164. package/dist/display-list/build/textBoxPrimitives.d.ts +3 -4
  165. package/dist/display-list/build/textBoxPrimitives.js +4 -0
  166. package/dist/display-list/build/textDecorations.d.ts +10 -11
  167. package/dist/display-list/build/unsupported.d.ts +4 -5
  168. package/dist/display-list/build/watermarkPrimitives.d.ts +5 -4
  169. package/dist/display-list/build/watermarkPrimitives.js +5 -17
  170. package/dist/display-list/dom/renderDisplayListToDom.d.ts +8 -8
  171. package/dist/display-list/dom/renderDisplayListToDom.js +52 -10
  172. package/dist/display-list/editor/displayListPagePainter.d.ts +4 -5
  173. package/dist/display-list/editor/pageRenderer.d.ts +5 -6
  174. package/dist/display-list/editor/pageRenderer.js +1 -0
  175. package/dist/display-list/html/renderDisplayListToHtml.d.ts +5 -6
  176. package/dist/display-list/pageResourceOwnership.d.ts +4 -0
  177. package/dist/display-list/pageResourceOwnership.js +32 -0
  178. package/dist/display-list/primitives.d.ts +13 -13
  179. package/dist/display-list/primitives.js +2 -0
  180. package/dist/display-list/selectDisplayPages.d.ts +2 -3
  181. package/dist/display-list/types.d.ts +54 -33
  182. package/dist/document-operations.d.ts +56 -44
  183. package/dist/document-operations.js +37 -2
  184. package/dist/document-stories.d.ts +3 -4
  185. package/dist/docx/altChunk.d.ts +5 -6
  186. package/dist/docx/appVersionNormalization.d.ts +4 -4
  187. package/dist/docx/archiveInflation.d.ts +16 -16
  188. package/dist/docx/archiveInflation.js +1 -1
  189. package/dist/docx/attributeRemainder.d.ts +8 -8
  190. package/dist/docx/attributeRemainder.js +34 -0
  191. package/dist/docx/blockContentParser.d.ts +15 -7
  192. package/dist/docx/blockContentParser.js +5 -6
  193. package/dist/docx/blockCustomXmlShell.d.ts +2 -3
  194. package/dist/docx/blockPlainText.d.ts +3 -4
  195. package/dist/docx/blockPlainText.js +5 -1
  196. package/dist/docx/bookmarkIdNormalization.d.ts +2 -3
  197. package/dist/docx/bookmarkIds.d.ts +5 -6
  198. package/dist/docx/bookmarkParser.d.ts +20 -21
  199. package/dist/docx/bookmarkParser.js +3 -2
  200. package/dist/docx/borderParser.d.ts +2 -3
  201. package/dist/docx/builtInStyles.d.ts +11 -11
  202. package/dist/docx/bulletMarkers.d.ts +8 -3
  203. package/dist/docx/bulletMarkers.js +3 -43
  204. package/dist/docx/canonicalModel.d.ts +2 -0
  205. package/dist/docx/canonicalModel.js +1 -0
  206. package/dist/docx/canonicalResourceSave.d.ts +3 -3
  207. package/dist/docx/canonicalSave.d.ts +3 -3
  208. package/dist/docx/canonicalSessionInput.d.ts +3 -3
  209. package/dist/docx/canonicalStoryRepack.d.ts +2 -2
  210. package/dist/docx/chartPreview.d.ts +6 -0
  211. package/dist/docx/chartPreview.js +302 -0
  212. package/dist/docx/commentAnchorIndex.d.ts +6 -5
  213. package/dist/docx/commentAnchorIndex.js +236 -1
  214. package/dist/docx/commentIdNormalization.d.ts +4 -5
  215. package/dist/docx/commentParser.d.ts +4 -5
  216. package/dist/docx/commentParser.js +2 -1
  217. package/dist/docx/commentRangeIntegrity.d.ts +6 -5
  218. package/dist/docx/commentRangeIntegrity.js +17 -1
  219. package/dist/docx/commentRangeJoin.d.ts +2 -3
  220. package/dist/docx/commentReferenceCompletion.d.ts +2 -3
  221. package/dist/docx/commentReferenceNormalization.d.ts +4 -4
  222. package/dist/docx/commentReplyMarkers.d.ts +3 -4
  223. package/dist/docx/commentTextParagraph.d.ts +2 -3
  224. package/dist/docx/commentThreadKey.d.ts +2 -3
  225. package/dist/docx/compatibility.d.ts +12 -13
  226. package/dist/docx/conformance.d.ts +2 -3
  227. package/dist/docx/conformance.js +1 -1
  228. package/dist/docx/containerChildren.d.ts +18 -18
  229. package/dist/docx/containerChildren.gen.d.ts +5 -6
  230. package/dist/docx/contentTypeRegistry.d.ts +2 -2
  231. package/dist/docx/corePropertiesParser.d.ts +2 -2
  232. package/dist/docx/danglingRelationshipReferences.d.ts +3 -3
  233. package/dist/docx/defaultParagraphStyle.d.ts +6 -6
  234. package/dist/docx/diagramPreview.d.ts +5 -4
  235. package/dist/docx/diagramPreview.js +8 -3
  236. package/dist/docx/documentClone.js +1 -2
  237. package/dist/docx/documentGrid.d.ts +2 -2
  238. package/dist/docx/documentParser.d.ts +11 -11
  239. package/dist/docx/documentSectionFacts.d.ts +5 -6
  240. package/dist/docx/drawingAnchor.d.ts +14 -14
  241. package/dist/docx/drawingGroupChildren.d.ts +8 -8
  242. package/dist/docx/drawingIdNormalization.d.ts +3 -4
  243. package/dist/docx/drawingRelationships.d.ts +2 -2
  244. package/dist/docx/drawingUtils.d.ts +16 -17
  245. package/dist/docx/drawingUtils.js +4 -2
  246. package/dist/docx/encryption/agileDecryption.d.ts +2 -3
  247. package/dist/docx/encryption/compoundFile.d.ts +5 -6
  248. package/dist/docx/encryption/containerFormat.d.ts +4 -5
  249. package/dist/docx/encryption/cryptoBytes.d.ts +8 -9
  250. package/dist/docx/encryption/encryptionInfo.d.ts +5 -6
  251. package/dist/docx/encryption/errors.d.ts +5 -5
  252. package/dist/docx/encryption/openEncryptedDocx.d.ts +5 -6
  253. package/dist/docx/ensureParaIds.d.ts +6 -6
  254. package/dist/docx/ensureParaIds.js +1 -1
  255. package/dist/docx/fieldParser.d.ts +32 -33
  256. package/dist/docx/fieldParser.js +8 -6
  257. package/dist/docx/fieldState.d.ts +5 -6
  258. package/dist/docx/foldedListNumberFields.d.ts +15 -16
  259. package/dist/docx/fontTableParser.d.ts +2 -3
  260. package/dist/docx/footnoteParser.d.ts +11 -11
  261. package/dist/docx/footnoteParser.js +19 -0
  262. package/dist/docx/graphicFrameLocks.d.ts +5 -6
  263. package/dist/docx/groupDrawingParser.d.ts +4 -5
  264. package/dist/docx/groupDrawingParser.js +10 -5
  265. package/dist/docx/headerFooterParser.d.ts +14 -14
  266. package/dist/docx/headerFooterRefParser.d.ts +6 -7
  267. package/dist/docx/headerFooterReferenceNormalization.d.ts +5 -5
  268. package/dist/docx/headerFooterVerbatim.d.ts +14 -14
  269. package/dist/docx/hyperlinkParser.d.ts +20 -21
  270. package/dist/docx/hyperlinkParser.js +54 -11
  271. package/dist/docx/imageParser.d.ts +18 -18
  272. package/dist/docx/imageParser.js +6 -3
  273. package/dist/docx/imageRawXml.d.ts +9 -10
  274. package/dist/docx/importedIdCollisions.d.ts +3 -4
  275. package/dist/docx/inlineContentRemovals.d.ts +2 -3
  276. package/dist/docx/inlineWrapperContent.d.ts +38 -33
  277. package/dist/docx/inlineWrapperContent.js +29 -23
  278. package/dist/docx/inlineWrapperParser.d.ts +4 -5
  279. package/dist/docx/inlineWrapperParser.js +14 -0
  280. package/dist/docx/linkedSdtPreservation.d.ts +3 -3
  281. package/dist/docx/listMarkerComputation.d.ts +4 -5
  282. package/dist/docx/listModelNormalization.d.ts +2 -2
  283. package/dist/docx/listModelNormalization.js +15 -11
  284. package/dist/docx/listNumberingInstances.d.ts +8 -8
  285. package/dist/docx/listRendering.d.ts +5 -6
  286. package/dist/docx/listTemplate.d.ts +5 -5
  287. package/dist/docx/markupRangeMarker.d.ts +21 -4
  288. package/dist/docx/markupRangeMarker.js +35 -1
  289. package/dist/docx/mathToMathml.d.ts +8 -3
  290. package/dist/docx/mathToMathml.js +72 -4
  291. package/dist/docx/metadataPrivacy.d.ts +14 -14
  292. package/dist/docx/metadataPrivacy.js +3 -3
  293. package/dist/docx/metafileRaster.d.ts +4 -5
  294. package/dist/docx/metafileSvg.d.ts +2 -3
  295. package/dist/docx/metafileSvg.js +28 -39
  296. package/dist/docx/metafileSvgShared.d.ts +27 -0
  297. package/dist/docx/metafileSvgShared.js +28 -0
  298. package/dist/docx/modelValidation.d.ts +5 -6
  299. package/dist/docx/modelValidation.js +144 -1
  300. package/dist/docx/newImage.d.ts +2 -3
  301. package/dist/docx/nonVisualDrawingProps.d.ts +3 -3
  302. package/dist/docx/normalizeBaseDirection.d.ts +2 -3
  303. package/dist/docx/normalizeBaseDirection.js +6 -2
  304. package/dist/docx/noteIds.d.ts +2 -3
  305. package/dist/docx/notePropertiesParser.d.ts +3 -4
  306. package/dist/docx/noteReferenceMark.d.ts +6 -6
  307. package/dist/docx/noteReferenceStyles.d.ts +7 -8
  308. package/dist/docx/noteReferenceStyles.js +0 -13
  309. package/dist/docx/numberingIds.d.ts +3 -3
  310. package/dist/docx/numberingParser.d.ts +15 -16
  311. package/dist/docx/numberingParser.js +6 -30
  312. package/dist/docx/numberingReference.d.ts +2 -2
  313. package/dist/docx/numberingReferenceNormalization.d.ts +5 -5
  314. package/dist/docx/numberingReferenceNormalization.js +6 -9
  315. package/dist/docx/numericIdAllocator.d.ts +2 -2
  316. package/dist/docx/numericIdNormalization.d.ts +3 -3
  317. package/dist/docx/numericIdNormalization.js +0 -1
  318. package/dist/docx/ooxmlCounterFormatter.d.ts +3 -4
  319. package/dist/docx/opaqueCarrier.d.ts +5 -6
  320. package/dist/docx/packageParts.d.ts +8 -9
  321. package/dist/docx/paraIdAttribute.d.ts +11 -12
  322. package/dist/docx/paraIdRangeNormalization.d.ts +3 -4
  323. package/dist/docx/paragraphMarkPropertyPresence.d.ts +4 -5
  324. package/dist/docx/paragraphParser.d.ts +9 -9
  325. package/dist/docx/paragraphParser.js +45 -23
  326. package/dist/docx/paragraphProperties.d.ts +2 -3
  327. package/dist/docx/paragraphProperties.js +15 -2
  328. package/dist/docx/paragraphPropertySource.d.ts +56 -56
  329. package/dist/docx/paragraphPropertySource.js +37 -1
  330. package/dist/docx/paragraphTextBoxEnrichment.d.ts +2 -3
  331. package/dist/docx/paragraphTextBoxEnrichment.js +21 -6
  332. package/dist/docx/paragraphTraversal.d.ts +19 -10
  333. package/dist/docx/paragraphTraversal.js +110 -75
  334. package/dist/docx/parseContext.d.ts +5 -6
  335. package/dist/docx/parseWarningMessage.d.ts +3 -4
  336. package/dist/docx/parser.d.ts +11 -11
  337. package/dist/docx/parser.js +43 -15
  338. package/dist/docx/parserEnums.d.ts +37 -38
  339. package/dist/docx/preservedRunContent.d.ts +5 -6
  340. package/dist/docx/preservedRunContent.js +16 -0
  341. package/dist/docx/previewBudget.d.ts +6 -6
  342. package/dist/docx/previewBudget.js +1 -1
  343. package/dist/docx/propertyElementAttributes.d.ts +10 -11
  344. package/dist/docx/rasterMime.d.ts +4 -4
  345. package/dist/docx/relsParser.d.ts +20 -21
  346. package/dist/docx/removeHeaderFooterParts.d.ts +2 -2
  347. package/dist/docx/renderedPageBreakNormalization.d.ts +2 -2
  348. package/dist/docx/replyToComment.d.ts +4 -5
  349. package/dist/docx/replyToComment.js +2 -1
  350. package/dist/docx/reviewHistoryNamespace.d.ts +2 -3
  351. package/dist/docx/reviewResolutionProvenance.d.ts +15 -12
  352. package/dist/docx/reviewResolutionProvenance.js +15 -4
  353. package/dist/docx/revisionIdNormalization.d.ts +4 -4
  354. package/dist/docx/rezip.d.ts +40 -40
  355. package/dist/docx/rezip.js +113 -123
  356. package/dist/docx/runConsolidator.d.ts +7 -7
  357. package/dist/docx/runConsolidator.js +13 -0
  358. package/dist/docx/runParser.d.ts +12 -13
  359. package/dist/docx/runParser.js +31 -10
  360. package/dist/docx/runPayload.d.ts +2 -3
  361. package/dist/docx/runPropertyPresence.d.ts +7 -8
  362. package/dist/docx/saveDiagnostics.d.ts +3 -4
  363. package/dist/docx/sdtProperties.d.ts +6 -7
  364. package/dist/docx/sdtPropertiesPatch.d.ts +2 -3
  365. package/dist/docx/sectionParser.d.ts +15 -16
  366. package/dist/docx/sectionReferenceHistory.d.ts +6 -6
  367. package/dist/docx/selectedXmlIdentityScan.d.ts +2 -3
  368. package/dist/docx/selectiveSave.d.ts +3 -4
  369. package/dist/docx/selectiveSave.js +6 -3
  370. package/dist/docx/selectiveSaveFlags.d.ts +5 -6
  371. package/dist/docx/selectiveSaveFlags.js +1 -1
  372. package/dist/docx/selectiveSaveTripwire.d.ts +3 -4
  373. package/dist/docx/selectiveXmlPatch.d.ts +28 -28
  374. package/dist/docx/serializer/blockCustomXmlSerializer.d.ts +2 -3
  375. package/dist/docx/serializer/blockSdtSerializer.d.ts +2 -3
  376. package/dist/docx/serializer/blockSdtSerializer.js +2 -1
  377. package/dist/docx/serializer/borderSerializer.d.ts +2 -2
  378. package/dist/docx/serializer/borderSerializer.js +8 -0
  379. package/dist/docx/serializer/commentSerializer.d.ts +7 -8
  380. package/dist/docx/serializer/documentSerializer.d.ts +13 -14
  381. package/dist/docx/serializer/documentSerializer.js +17 -1
  382. package/dist/docx/serializer/fontTableSerializer.d.ts +2 -3
  383. package/dist/docx/serializer/groupTextBoxWriteBack.d.ts +2 -2
  384. package/dist/docx/serializer/groupTextBoxWriteBack.js +1 -4
  385. package/dist/docx/serializer/headerFooterSerializer.d.ts +2 -2
  386. package/dist/docx/serializer/headerFooterSerializer.js +5 -1
  387. package/dist/docx/serializer/markupRangeAttributes.d.ts +11 -6
  388. package/dist/docx/serializer/markupRangeAttributes.js +33 -6
  389. package/dist/docx/serializer/noteSerializer.d.ts +5 -6
  390. package/dist/docx/serializer/noteSerializer.js +26 -1
  391. package/dist/docx/serializer/numberingSerializer.d.ts +2 -3
  392. package/dist/docx/serializer/numberingSerializer.js +14 -0
  393. package/dist/docx/serializer/paragraphSerializer.d.ts +8 -9
  394. package/dist/docx/serializer/paragraphSerializer.js +27 -17
  395. package/dist/docx/serializer/partNamespaces.d.ts +9 -9
  396. package/dist/docx/serializer/runSerializer.d.ts +11 -12
  397. package/dist/docx/serializer/runSerializer.js +7 -2
  398. package/dist/docx/serializer/sdtPropertiesSerializer.d.ts +5 -6
  399. package/dist/docx/serializer/sectionPropertiesSerializer.d.ts +2 -3
  400. package/dist/docx/serializer/settingsSerializer.d.ts +2 -3
  401. package/dist/docx/serializer/settingsSerializer.js +9 -6
  402. package/dist/docx/serializer/stylesSerializer.d.ts +3 -4
  403. package/dist/docx/serializer/stylesSerializer.js +4 -1
  404. package/dist/docx/serializer/tableSerializer.d.ts +18 -18
  405. package/dist/docx/serializer/tableSerializer.js +22 -2
  406. package/dist/docx/serializer/textFormattingSerializer.d.ts +3 -3
  407. package/dist/docx/serializer/themeSerializer.d.ts +2 -3
  408. package/dist/docx/serializer/trackedChangeAttributes.d.ts +4 -4
  409. package/dist/docx/serializer/xmlUtils.d.ts +3 -4
  410. package/dist/docx/server/applyDocxXmlPatchProposal.d.ts +9 -9
  411. package/dist/docx/server/applyDocxXmlPatchProposal.js +1 -1
  412. package/dist/docx/server/boundedArchive.d.ts +11 -11
  413. package/dist/docx/server/boundedArchive.js +3 -3
  414. package/dist/docx/server/build.d.ts +14 -14
  415. package/dist/docx/server/build.js +9 -6
  416. package/dist/docx/server/createBilingualDocument.d.ts +13 -13
  417. package/dist/docx/server/createBilingualDocument.js +56 -21
  418. package/dist/docx/server/createBilingualDocx.d.ts +5 -6
  419. package/dist/docx/server/createBilingualDocx.js +7 -3
  420. package/dist/docx/server/docxToMarkdown.d.ts +2 -3
  421. package/dist/docx/server/docxToMarkdown.js +2 -1
  422. package/dist/docx/server/evaluateDocxXmlPatchProposal.d.ts +17 -17
  423. package/dist/docx/server/evaluateDocxXmlPatchProposal.js +2 -2
  424. package/dist/docx/server/extractDocxText.d.ts +10 -11
  425. package/dist/docx/server/extractDocxText.js +3 -2
  426. package/dist/docx/server/inspectDocxPackage.d.ts +14 -14
  427. package/dist/docx/server/inspectDocxPackage.js +3 -3
  428. package/dist/docx/server/materializeYjsDocx.d.ts +8 -8
  429. package/dist/docx/server/materializeYjsDocx.js +1 -1
  430. package/dist/docx/server/migrateYjsAttrSchema.d.ts +6 -6
  431. package/dist/docx/server/migrateYjsAttrSchema.js +3 -3
  432. package/dist/docx/server/validateDocxConformance.d.ts +14 -15
  433. package/dist/docx/settingsHeaderFooterUpdate.d.ts +2 -3
  434. package/dist/docx/settingsParser.d.ts +2 -2
  435. package/dist/docx/settingsParser.js +12 -0
  436. package/dist/docx/shadingParser.d.ts +2 -3
  437. package/dist/docx/shapeAlternateContent.d.ts +8 -7
  438. package/dist/docx/shapeAlternateContent.js +84 -9
  439. package/dist/docx/shapeParser.d.ts +4 -5
  440. package/dist/docx/shapeParser.js +2 -1
  441. package/dist/docx/storyBlockReplay.d.ts +5 -5
  442. package/dist/docx/storyBlockReplay.js +10 -2
  443. package/dist/docx/storyPlainText.d.ts +9 -10
  444. package/dist/docx/streamingXmlParser.d.ts +8 -8
  445. package/dist/docx/strictNames.d.ts +4 -5
  446. package/dist/docx/strictNames.gen.d.ts +6 -7
  447. package/dist/docx/strictValueEncodings.gen.d.ts +5 -6
  448. package/dist/docx/structuralXmlPatch.d.ts +2 -2
  449. package/dist/docx/styleParser.d.ts +11 -12
  450. package/dist/docx/styleParser.js +1 -3
  451. package/dist/docx/styleReferenceResolution.d.ts +3 -4
  452. package/dist/docx/tableLook.d.ts +7 -7
  453. package/dist/docx/tableParser.d.ts +47 -39
  454. package/dist/docx/tableParser.js +2 -4
  455. package/dist/docx/tableRowPropertyPresence.d.ts +5 -6
  456. package/dist/docx/textBoxParser.d.ts +25 -26
  457. package/dist/docx/textBoxParser.js +18 -19
  458. package/dist/docx/themeColorAttribute.d.ts +3 -4
  459. package/dist/docx/themeParser.d.ts +9 -10
  460. package/dist/docx/trackedChangeInfo.d.ts +5 -6
  461. package/dist/docx/trackedMoveRangeNormalization.d.ts +3 -3
  462. package/dist/docx/trackedMoveRangeNormalization.js +52 -21
  463. package/dist/docx/transitionalSpelling.d.ts +7 -8
  464. package/dist/docx/universalMeasure.d.ts +5 -6
  465. package/dist/docx/unzip.d.ts +15 -16
  466. package/dist/docx/unzip.js +2 -2
  467. package/dist/docx/verbatimCapture.d.ts +6 -6
  468. package/dist/docx/verbatimCapture.js +3 -2
  469. package/dist/docx/verticalMergeProjection.d.ts +4 -5
  470. package/dist/docx/verticalMergeProjection.js +1 -1
  471. package/dist/docx/vmlImageParser.d.ts +4 -5
  472. package/dist/docx/vmlPreview.d.ts +9 -10
  473. package/dist/docx/vmlPreview.js +0 -3
  474. package/dist/docx/watermarkParser.d.ts +4 -5
  475. package/dist/docx/wmfSvg.d.ts +10 -0
  476. package/dist/docx/wmfSvg.js +451 -0
  477. package/dist/docx/wordprocessingPrefixes.d.ts +12 -13
  478. package/dist/docx/wrapPolygon.d.ts +5 -6
  479. package/dist/docx/wrapTypes.js +1 -2
  480. package/dist/docx/xmlEncoding.d.ts +2 -3
  481. package/dist/docx/xmlNamespaceContext.d.ts +5 -6
  482. package/dist/docx/xmlParser.d.ts +49 -50
  483. package/dist/docx/xmlParser.js +12 -12
  484. package/dist/docx/xmlResourceLimits.d.ts +10 -10
  485. package/dist/docx/xmlResourceLimits.js +1 -1
  486. package/dist/docx/xmlSafety.d.ts +3 -4
  487. package/dist/export-pdf.d.ts +11 -11
  488. package/dist/export-pdf.js +2 -1
  489. package/dist/fields/bookmarkPages.d.ts +2 -3
  490. package/dist/fields/bookmarkText.d.ts +2 -2
  491. package/dist/fields/bookmarkText.js +3 -2
  492. package/dist/fields/evaluateField.d.ts +3 -3
  493. package/dist/fields/fieldContext.d.ts +2 -3
  494. package/dist/fields/resolveFieldValues.d.ts +7 -8
  495. package/dist/fields/sectionPageCounts.d.ts +2 -3
  496. package/dist/fields/seqValues.d.ts +2 -3
  497. package/dist/fonts/FontFaceLifecycle.d.ts +12 -0
  498. package/dist/fonts/FontFaceLifecycle.js +56 -0
  499. package/dist/fonts/documentFontFacts.d.ts +17 -0
  500. package/dist/fonts/documentFontFacts.js +41 -0
  501. package/dist/fonts/embeddedFontFingerprint.d.ts +2 -3
  502. package/dist/fonts/embeddedFontFingerprint.js +3 -2
  503. package/dist/fonts/embeddedFonts.d.ts +7 -8
  504. package/dist/fonts/fontAlternates.d.ts +4 -5
  505. package/dist/fonts/fontAlternates.js +2 -1
  506. package/dist/fonts/fontDeobfuscation.d.ts +3 -4
  507. package/dist/fonts/fontDeobfuscation.js +7 -3
  508. package/dist/fonts/fontsourceFaces.d.ts +7 -8
  509. package/dist/fonts/fontsourceFaces.js +16 -0
  510. package/dist/fonts/headlessMeasure.d.ts +10 -10
  511. package/dist/fonts/sfnt/parse.d.ts +5 -5
  512. package/dist/fonts/sfnt/parse.js +2 -1
  513. package/dist/fonts/sfnt/subset.d.ts +4 -4
  514. package/dist/fonts/sfnt/tables.d.ts +14 -14
  515. package/dist/fonts/sfnt/woff.d.ts +4 -4
  516. package/dist/headless-layout.d.ts +7 -7
  517. package/dist/headless-layout.js +7 -0
  518. package/dist/i18n/messages/ar.gen.d.ts +2 -2
  519. package/dist/i18n/messages/catalogs.gen.d.ts +2 -3
  520. package/dist/i18n/messages/cs.gen.d.ts +2 -2
  521. package/dist/i18n/messages/de.gen.d.ts +2 -2
  522. package/dist/i18n/messages/en.gen.d.ts +2 -2
  523. package/dist/i18n/messages/es.gen.d.ts +2 -2
  524. package/dist/i18n/messages/et.gen.d.ts +2 -2
  525. package/dist/i18n/messages/fr.gen.d.ts +2 -2
  526. package/dist/i18n/messages/he.gen.d.ts +2 -2
  527. package/dist/i18n/messages/hi.gen.d.ts +2 -2
  528. package/dist/i18n/messages/hu.gen.d.ts +2 -2
  529. package/dist/i18n/messages/locales.d.ts +3 -4
  530. package/dist/i18n/messages/lt.gen.d.ts +2 -2
  531. package/dist/i18n/messages/lv.gen.d.ts +2 -2
  532. package/dist/i18n/messages/pl.gen.d.ts +2 -2
  533. package/dist/i18n/messages/pt-BR.gen.d.ts +2 -2
  534. package/dist/i18n/messages/sk.gen.d.ts +2 -2
  535. package/dist/i18n/messages/tr.gen.d.ts +2 -2
  536. package/dist/i18n/messages/zh-CN.gen.d.ts +2 -2
  537. package/dist/i18n/messages.d.ts +4 -4
  538. package/dist/internal/acceptedBlockProjection.d.ts +2 -3
  539. package/dist/internal/acceptedBlockProjection.js +5 -1
  540. package/dist/internal/compare/inline-presentation.d.ts +4 -4
  541. package/dist/internal/headlessRevisionResolutionGuard.d.ts +2 -3
  542. package/dist/internal/indexedPositionMap.d.ts +2 -3
  543. package/dist/internal/noteMarkerAttrs.d.ts +3 -4
  544. package/dist/internal/pageBreakRunDescendantIndex.d.ts +3 -4
  545. package/dist/internal/pageBreakRunPartition.d.ts +4 -4
  546. package/dist/internal/pageBreakRunSourceDescendantIndex.d.ts +4 -5
  547. package/dist/internal/pageBreakRunSourceDescendantIndex.js +5 -1
  548. package/dist/internal/paragraphFormattingSerialization.d.ts +6 -6
  549. package/dist/internal/paragraphFormattingSerialization.js +3 -1
  550. package/dist/internal/prosemirrorAttrBoundary.d.ts +9 -10
  551. package/dist/internal/prosemirrorAttrBoundary.js +2 -1
  552. package/dist/internal/revisionResolutionEdits.d.ts +2 -2
  553. package/dist/internal/revisionResolutionInline.d.ts +4 -3
  554. package/dist/internal/revisionResolutionInline.js +69 -48
  555. package/dist/internal/revisionResolutionStep.d.ts +3 -3
  556. package/dist/internal/revisionResolutionTracking.d.ts +2 -2
  557. package/dist/internal/revisionResolutionTracking.js +3 -3
  558. package/dist/internal/sectionEndpointResolution.d.ts +5 -5
  559. package/dist/internal/sectionReferenceResolution.d.ts +6 -7
  560. package/dist/internal/wholeStoryRevisionResolution.d.ts +6 -4
  561. package/dist/internal/wholeStoryRevisionResolution.js +168 -52
  562. package/dist/layout-bridge/cellSelectionHighlight.d.ts +2 -3
  563. package/dist/layout-bridge/convert/endnoteLayout.d.ts +8 -8
  564. package/dist/layout-bridge/convert/endnoteLayout.js +2 -1
  565. package/dist/layout-bridge/convert/fixedTableColumnWidths.d.ts +2 -3
  566. package/dist/layout-bridge/convert/flowBlockPostprocessing.d.ts +5 -6
  567. package/dist/layout-bridge/convert/flowBorders.d.ts +3 -4
  568. package/dist/layout-bridge/convert/flowConversionShared.d.ts +9 -7
  569. package/dist/layout-bridge/convert/footnoteLayout.d.ts +14 -14
  570. package/dist/layout-bridge/convert/footnoteLayout.js +10 -0
  571. package/dist/layout-bridge/convert/headerFooterLayout.d.ts +13 -12
  572. package/dist/layout-bridge/convert/headerFooterLayout.js +10 -4
  573. package/dist/layout-bridge/convert/imageConversion.d.ts +6 -7
  574. package/dist/layout-bridge/convert/listMarkers.d.ts +9 -9
  575. package/dist/layout-bridge/convert/markupViewFlow.d.ts +3 -3
  576. package/dist/layout-bridge/convert/noteReferences.d.ts +2 -3
  577. package/dist/layout-bridge/convert/pageBreakSplitting.d.ts +4 -4
  578. package/dist/layout-bridge/convert/pageBreakSplitting.js +4 -0
  579. package/dist/layout-bridge/convert/paragraphAttrs.d.ts +2 -2
  580. package/dist/layout-bridge/convert/paragraphAttrs.js +18 -11
  581. package/dist/layout-bridge/convert/paragraphConversion.d.ts +4 -5
  582. package/dist/layout-bridge/convert/paragraphConversion.js +9 -2
  583. package/dist/layout-bridge/convert/paragraphFrames.d.ts +2 -2
  584. package/dist/layout-bridge/convert/paragraphFrames.js +1 -1
  585. package/dist/layout-bridge/convert/paragraphMarkFormatting.d.ts +3 -4
  586. package/dist/layout-bridge/convert/paragraphRuns.d.ts +3 -4
  587. package/dist/layout-bridge/convert/paragraphRuns.js +35 -14
  588. package/dist/layout-bridge/convert/runFormattingMerge.d.ts +5 -5
  589. package/dist/layout-bridge/convert/runFormattingMerge.js +1 -0
  590. package/dist/layout-bridge/convert/runMarkFormatting.d.ts +2 -3
  591. package/dist/layout-bridge/convert/runMarkFormatting.js +12 -4
  592. package/dist/layout-bridge/convert/sectionBoundaries.d.ts +6 -6
  593. package/dist/layout-bridge/convert/tableConversion.d.ts +3 -4
  594. package/dist/layout-bridge/convert/tableConversion.js +1 -1
  595. package/dist/layout-bridge/convert/templatePreviewFlow.d.ts +6 -7
  596. package/dist/layout-bridge/convert/textBoxFill.d.ts +3 -4
  597. package/dist/layout-bridge/convert/textFormattingConversion.d.ts +8 -7
  598. package/dist/layout-bridge/convert/textFormattingConversion.js +10 -1
  599. package/dist/layout-bridge/convert/toFlowBlocks.d.ts +3 -3
  600. package/dist/layout-bridge/convert/toFlowBlocks.js +19 -11
  601. package/dist/layout-bridge/convert/wrapEditorViewAsSurface.d.ts +3 -4
  602. package/dist/layout-bridge/dom/clickToPositionDom.d.ts +12 -13
  603. package/dist/layout-bridge/dom/clickToPositionDom.js +30 -4
  604. package/dist/layout-bridge/dom/findBodyPmSpans.d.ts +5 -6
  605. package/dist/layout-bridge/dom/findHfPmSpans.d.ts +10 -11
  606. package/dist/layout-bridge/dom/imeCaretAnchor.d.ts +3 -3
  607. package/dist/layout-bridge/dom/noteStoryDom.d.ts +2 -3
  608. package/dist/layout-bridge/dom/textStreamDom.d.ts +16 -9
  609. package/dist/layout-bridge/dom/textStreamDom.js +18 -3
  610. package/dist/layout-bridge/engine/clickToPosition.d.ts +8 -9
  611. package/dist/layout-bridge/engine/clickToPosition.js +77 -94
  612. package/dist/layout-bridge/engine/hitTest.d.ts +18 -19
  613. package/dist/layout-bridge/engine/hitTest.js +2 -1
  614. package/dist/layout-bridge/engine/linePmRange.d.ts +7 -0
  615. package/dist/layout-bridge/engine/linePmRange.js +34 -0
  616. package/dist/layout-bridge/engine/selectionRects.d.ts +7 -8
  617. package/dist/layout-bridge/engine/selectionRects.js +53 -77
  618. package/dist/layout-bridge/headerFooterLayout.d.ts +4 -5
  619. package/dist/layout-bridge/measuring/measureBlocksPipeline.d.ts +2 -3
  620. package/dist/layout-bridge/sectionColumns.d.ts +2 -3
  621. package/dist/layout-bridge/tableInsertHover.d.ts +6 -7
  622. package/dist/layout-engine/anchorLayoutInCellCompatibility.d.ts +2 -3
  623. package/dist/layout-engine/footnoteColumnReflow.d.ts +2 -2
  624. package/dist/layout-engine/headerFooterRefs.d.ts +2 -3
  625. package/dist/layout-engine/imageLayout.d.ts +2 -3
  626. package/dist/layout-engine/index.d.ts +3 -3
  627. package/dist/layout-engine/index.js +9 -6
  628. package/dist/layout-engine/justificationCompatibility.d.ts +2 -3
  629. package/dist/layout-engine/keep-together.d.ts +7 -8
  630. package/dist/layout-engine/keep-together.js +1 -1
  631. package/dist/layout-engine/layoutFlowShared.d.ts +3 -4
  632. package/dist/layout-engine/layoutInstrumentation.d.ts +18 -19
  633. package/dist/layout-engine/lineFlow.d.ts +4 -5
  634. package/dist/layout-engine/measure/advanceComposition.d.ts +8 -8
  635. package/dist/layout-engine/measure/advanceComposition.js +24 -5
  636. package/dist/layout-engine/measure/automaticTextSpacing.d.ts +36 -0
  637. package/dist/layout-engine/measure/automaticTextSpacing.js +178 -0
  638. package/dist/layout-engine/measure/cache.d.ts +22 -22
  639. package/dist/layout-engine/measure/cache.js +50 -14
  640. package/dist/layout-engine/measure/clampFloatingWrapMargins.d.ts +2 -3
  641. package/dist/layout-engine/measure/complexScriptFormatting.d.ts +5 -5
  642. package/dist/layout-engine/measure/crossRunWords.d.ts +8 -8
  643. package/dist/layout-engine/measure/crossRunWords.js +9 -4
  644. package/dist/layout-engine/measure/effectiveLineBreakPolicy.d.ts +3 -3
  645. package/dist/layout-engine/measure/effectiveLineBreakPolicy.js +3 -1
  646. package/dist/layout-engine/measure/featureFlags.d.ts +4 -5
  647. package/dist/layout-engine/measure/floatingLineClearance.d.ts +3 -4
  648. package/dist/layout-engine/measure/floatingTablePosition.d.ts +3 -3
  649. package/dist/layout-engine/measure/floatingZones.d.ts +11 -10
  650. package/dist/layout-engine/measure/font-metrics.worker.d.ts +3 -4
  651. package/dist/layout-engine/measure/hyperlinkInstance.d.ts +3 -4
  652. package/dist/layout-engine/measure/hyphenationDictionaries.d.ts +15 -15
  653. package/dist/layout-engine/measure/hyphenationDictionaries.js +4 -4
  654. package/dist/layout-engine/measure/hyphenationPreload.d.ts +2 -3
  655. package/dist/layout-engine/measure/inlineObjectMetrics.d.ts +3 -4
  656. package/dist/layout-engine/measure/justification.d.ts +7 -7
  657. package/dist/layout-engine/measure/lineBreakProvider.d.ts +16 -11
  658. package/dist/layout-engine/measure/lineBreakProvider.js +29 -4
  659. package/dist/layout-engine/measure/lineBreaks.d.ts +7 -8
  660. package/dist/layout-engine/measure/lineBreaks.js +5 -2
  661. package/dist/layout-engine/measure/lineFitting.d.ts +11 -11
  662. package/dist/layout-engine/measure/lineFitting.js +17 -6
  663. package/dist/layout-engine/measure/lineTypography.d.ts +7 -8
  664. package/dist/layout-engine/measure/lineTypography.js +1 -0
  665. package/dist/layout-engine/measure/listMarkerWidth.d.ts +9 -6
  666. package/dist/layout-engine/measure/listMarkerWidth.js +7 -3
  667. package/dist/layout-engine/measure/measureBlocks.d.ts +7 -7
  668. package/dist/layout-engine/measure/measureBlocks.js +13 -7
  669. package/dist/layout-engine/measure/measureContainer.d.ts +5 -6
  670. package/dist/layout-engine/measure/measureContainer.js +27 -6
  671. package/dist/layout-engine/measure/measureHelpers.d.ts +21 -18
  672. package/dist/layout-engine/measure/measureHelpers.js +12 -3
  673. package/dist/layout-engine/measure/measureParagraph.d.ts +5 -5
  674. package/dist/layout-engine/measure/measureParagraph.js +57 -11
  675. package/dist/layout-engine/measure/measureProvider.d.ts +15 -9
  676. package/dist/layout-engine/measure/measureProvider.js +66 -4
  677. package/dist/layout-engine/measure/measureTypes.d.ts +17 -14
  678. package/dist/layout-engine/measure/measureWorker.d.ts +8 -8
  679. package/dist/layout-engine/measure/measureWorkerProtocol.d.ts +6 -7
  680. package/dist/layout-engine/measure/paragraphMeasureShared.d.ts +19 -20
  681. package/dist/layout-engine/measure/paragraphTabs.d.ts +6 -7
  682. package/dist/layout-engine/measure/paragraphTabs.js +16 -17
  683. package/dist/layout-engine/measure/smallCapsCasing.d.ts +6 -7
  684. package/dist/layout-engine/measure/tabCalculator.d.ts +15 -16
  685. package/dist/layout-engine/measure/tableCellFloating.d.ts +6 -6
  686. package/dist/layout-engine/measure/tableCellFlow.d.ts +7 -7
  687. package/dist/layout-engine/measure/tableCellGrid.d.ts +14 -14
  688. package/dist/layout-engine/measure/tableFragmentBorderGeometry.d.ts +2 -2
  689. package/dist/layout-engine/measure/tableInlinePlacement.d.ts +3 -3
  690. package/dist/layout-engine/measure/textBoxParagraphLayout.d.ts +4 -4
  691. package/dist/layout-engine/measure/textMeasurementPolicy.d.ts +8 -8
  692. package/dist/layout-engine/noColumnBalanceCompatibility.d.ts +7 -0
  693. package/dist/layout-engine/noColumnBalanceCompatibility.js +5 -0
  694. package/dist/layout-engine/noteAreaFlow.d.ts +4 -5
  695. package/dist/layout-engine/paginator.d.ts +18 -11
  696. package/dist/layout-engine/paginator.js +51 -11
  697. package/dist/layout-engine/paragraphFragmentRange.d.ts +2 -3
  698. package/dist/layout-engine/paragraphFrame.d.ts +2 -21
  699. package/dist/layout-engine/paragraphFrame.js +1 -17
  700. package/dist/layout-engine/paragraphLayout.d.ts +2 -2
  701. package/dist/layout-engine/paragraphLayout.js +28 -9
  702. package/dist/layout-engine/paragraphSequence.d.ts +3 -4
  703. package/dist/layout-engine/paragraphSpacing.d.ts +10 -10
  704. package/dist/layout-engine/pmPageIndex.d.ts +3 -4
  705. package/dist/layout-engine/renderedBreakReconciliation.d.ts +7 -7
  706. package/dist/layout-engine/section-breaks.d.ts +15 -15
  707. package/dist/layout-engine/sectionLayout.d.ts +7 -7
  708. package/dist/layout-engine/sectionLayout.js +1 -4
  709. package/dist/layout-engine/sectionVerticalAlignment.d.ts +2 -3
  710. package/dist/layout-engine/tableIndentCompatibility.d.ts +2 -3
  711. package/dist/layout-engine/tableLayout.d.ts +4 -5
  712. package/dist/layout-engine/tableLayout.js +17 -9
  713. package/dist/layout-engine/tableRowBreak.d.ts +6 -6
  714. package/dist/layout-engine/tableRowBreak.js +10 -5
  715. package/dist/layout-engine/textBoxFlow.d.ts +6 -6
  716. package/dist/layout-engine/textBoxGroup.d.ts +3 -4
  717. package/dist/layout-engine/textBoxLayout.d.ts +2 -2
  718. package/dist/layout-engine/types.d.ts +108 -88
  719. package/dist/layout-painter/anchoredImagePosition.d.ts +4 -5
  720. package/dist/layout-painter/borderStroke.d.ts +4 -4
  721. package/dist/layout-painter/cursiveJoiners.d.ts +7 -7
  722. package/dist/layout-painter/documentColors.d.ts +6 -7
  723. package/dist/layout-painter/imageLayout.d.ts +13 -14
  724. package/dist/layout-painter/index.d.ts +8 -7
  725. package/dist/layout-painter/index.js +7 -2
  726. package/dist/layout-painter/registry/modules/image.d.ts +2 -3
  727. package/dist/layout-painter/registry/modules/paragraph.d.ts +2 -3
  728. package/dist/layout-painter/registry/modules/table.d.ts +2 -3
  729. package/dist/layout-painter/registry/modules/textBox.d.ts +2 -3
  730. package/dist/layout-painter/registry/modules.d.ts +2 -3
  731. package/dist/layout-painter/registry/registry.d.ts +4 -5
  732. package/dist/layout-painter/registry/types.d.ts +8 -9
  733. package/dist/layout-painter/renderFragment.d.ts +4 -5
  734. package/dist/layout-painter/renderImage.d.ts +12 -13
  735. package/dist/layout-painter/renderPage.d.ts +27 -25
  736. package/dist/layout-painter/renderPage.js +116 -31
  737. package/dist/layout-painter/renderParagraph.d.ts +19 -15
  738. package/dist/layout-painter/renderParagraph.js +186 -46
  739. package/dist/layout-painter/renderTable.d.ts +7 -8
  740. package/dist/layout-painter/renderTable.js +27 -15
  741. package/dist/layout-painter/renderTextBox.d.ts +5 -6
  742. package/dist/layout-painter/renderTextBox.js +9 -1
  743. package/dist/layout-painter/renderUtils.d.ts +11 -14
  744. package/dist/layout-painter/renderUtils.js +1 -19
  745. package/dist/layout-painter/renderWatermark.d.ts +5 -4
  746. package/dist/layout-painter/sdtBoundary.d.ts +4 -5
  747. package/dist/layout-painter/tableRowPaintGeometry.d.ts +2 -2
  748. package/dist/managers/AutoSaveManager.d.ts +11 -12
  749. package/dist/managers/AutoSaveManager.js +17 -3
  750. package/dist/managers/ClipboardManager.d.ts +7 -8
  751. package/dist/managers/ContextMenuManager.d.ts +3 -4
  752. package/dist/managers/DocumentLoaderManager.d.ts +5 -6
  753. package/dist/managers/EditorModeManager.d.ts +12 -12
  754. package/dist/managers/ErrorManager.d.ts +2 -3
  755. package/dist/managers/FindReplaceManager.d.ts +6 -6
  756. package/dist/managers/HistoryManager.d.ts +9 -10
  757. package/dist/managers/Subscribable.d.ts +2 -3
  758. package/dist/managers/TableSelectionManager.d.ts +9 -10
  759. package/dist/managers/TableSelectionManager.js +3 -13
  760. package/dist/managers/autoSaveCodec.d.ts +8 -9
  761. package/dist/managers/editorShortcuts.d.ts +14 -15
  762. package/dist/managers/reviewDisplayMode.d.ts +4 -5
  763. package/dist/managers/types.d.ts +7 -8
  764. package/dist/markdown/annotations.d.ts +6 -7
  765. package/dist/markdown/escape.d.ts +6 -7
  766. package/dist/markdown/fromMarkdown.d.ts +2 -3
  767. package/dist/markdown/images.d.ts +2 -3
  768. package/dist/markdown/index.d.ts +3 -3
  769. package/dist/markdown/index.js +28 -2
  770. package/dist/markdown/internals.d.ts +4 -5
  771. package/dist/markdown/internals.js +3 -2
  772. package/dist/markdown/renderBlock.d.ts +2 -3
  773. package/dist/markdown/renderBlock.js +5 -1
  774. package/dist/markdown/renderParagraph.d.ts +4 -5
  775. package/dist/markdown/renderParagraph.js +42 -17
  776. package/dist/markdown/renderRuns.d.ts +3 -3
  777. package/dist/markdown/renderRuns.js +15 -10
  778. package/dist/markdown/renderTable.d.ts +2 -3
  779. package/dist/markdown/renderTable.js +21 -8
  780. package/dist/markdown/trailers.d.ts +2 -3
  781. package/dist/markdown/types.d.ts +7 -8
  782. package/dist/model.d.ts +1 -1
  783. package/dist/paged-layout/LayoutSelectionGate.d.ts +2 -2
  784. package/dist/paged-layout/blockGeometry.d.ts +5 -6
  785. package/dist/paged-layout/editorScrollRoot.d.ts +5 -5
  786. package/dist/paged-layout/fitWidthZoom.d.ts +36 -0
  787. package/dist/paged-layout/fitWidthZoom.js +31 -0
  788. package/dist/paged-layout/hiddenEditorScroll.d.ts +2 -3
  789. package/dist/paged-layout/incrementalMeasure.d.ts +6 -7
  790. package/dist/paged-layout/pageText.d.ts +2 -2
  791. package/dist/paged-layout/paragraphFlash.d.ts +7 -7
  792. package/dist/paged-layout/paragraphFlashTypes.d.ts +3 -4
  793. package/dist/paged-layout/rangeProjection.d.ts +11 -12
  794. package/dist/paged-layout/readOnlyEditAttempt.d.ts +2 -2
  795. package/dist/paged-layout/scrollNavigation.d.ts +5 -6
  796. package/dist/paged-layout/scrollPageInfo.d.ts +5 -6
  797. package/dist/paged-layout/scrollToPmPosition.d.ts +4 -5
  798. package/dist/paged-layout/sectionBlockWidths.d.ts +3 -3
  799. package/dist/paged-layout/sectionBlockWidths.js +0 -3
  800. package/dist/paged-layout/sectionGeometry.d.ts +10 -11
  801. package/dist/paged-layout/selectionViewportRect.d.ts +5 -6
  802. package/dist/paged-layout/tableColumnResize.d.ts +2 -3
  803. package/dist/paged-layout/tableInsertButtonGeometry.d.ts +2 -3
  804. package/dist/paged-layout/transactionDirtyRange.d.ts +2 -3
  805. package/dist/paged-layout/zoomScrollAnchor.d.ts +5 -5
  806. package/dist/panel-layout.d.ts +11 -12
  807. package/dist/pdf/contentStream.d.ts +11 -12
  808. package/dist/pdf/fonts.d.ts +11 -11
  809. package/dist/pdf/fonts.js +0 -19
  810. package/dist/pdf/images.d.ts +5 -5
  811. package/dist/pdf/images.js +4 -1
  812. package/dist/pdf/objects.d.ts +23 -24
  813. package/dist/pdf/pageSpace.d.ts +9 -10
  814. package/dist/pdf/paint.d.ts +6 -6
  815. package/dist/pdf/paint.js +28 -1
  816. package/dist/pdf/writePdf.d.ts +6 -6
  817. package/dist/prosemirror/addTrackedDeletionMark.d.ts +2 -2
  818. package/dist/prosemirror/alternateContentAttrs.d.ts +5 -4
  819. package/dist/prosemirror/alternateContentAttrs.js +13 -3
  820. package/dist/prosemirror/anchoredTextBoxes.d.ts +10 -11
  821. package/dist/prosemirror/attrs/index.d.ts +86 -86
  822. package/dist/prosemirror/attrs/index.js +127 -99
  823. package/dist/prosemirror/authoredTransformAttrs.d.ts +3 -3
  824. package/dist/prosemirror/autospacingBase.d.ts +5 -5
  825. package/dist/prosemirror/bookmarkBoundaryAttrs.d.ts +7 -7
  826. package/dist/prosemirror/bookmarkBoundaryAttrs.js +31 -2
  827. package/dist/prosemirror/bookmarkBoundaryIntegrity.d.ts +3 -4
  828. package/dist/prosemirror/canonicalCommands.d.ts +30 -13
  829. package/dist/prosemirror/canonicalCommands.js +5 -4
  830. package/dist/prosemirror/canonicalSelectionRange.d.ts +14 -4
  831. package/dist/prosemirror/canonicalSelectionRange.js +20 -1
  832. package/dist/prosemirror/cellDragSelection.d.ts +6 -7
  833. package/dist/prosemirror/cellDragSelection.js +9 -0
  834. package/dist/prosemirror/clearRunColor.d.ts +2 -3
  835. package/dist/prosemirror/clearRunColor.js +8 -5
  836. package/dist/prosemirror/clipboardIntent.d.ts +3 -4
  837. package/dist/prosemirror/commands/clearParagraphIndent.d.ts +2 -3
  838. package/dist/prosemirror/commands/comments.d.ts +28 -28
  839. package/dist/prosemirror/commands/comments.js +220 -83
  840. package/dist/prosemirror/commands/contentControls.d.ts +9 -9
  841. package/dist/prosemirror/commands/contentControls.js +2 -1
  842. package/dist/prosemirror/commands/contentControlsBlockFill.d.ts +2 -3
  843. package/dist/prosemirror/commands/contentControlsBlockFill.js +2 -1
  844. package/dist/prosemirror/commands/formatPainter.d.ts +5 -5
  845. package/dist/prosemirror/commands/formatPainter.js +14 -11
  846. package/dist/prosemirror/commands/formatting.d.ts +20 -20
  847. package/dist/prosemirror/commands/hyperlink.d.ts +5 -6
  848. package/dist/prosemirror/commands/hyperlink.js +7 -6
  849. package/dist/prosemirror/commands/image.d.ts +14 -14
  850. package/dist/prosemirror/commands/pageBreak.d.ts +2 -3
  851. package/dist/prosemirror/commands/pageBreak.js +2 -1
  852. package/dist/prosemirror/commands/paragraph.d.ts +35 -35
  853. package/dist/prosemirror/commands/paragraphBookmarkJoin.d.ts +5 -5
  854. package/dist/prosemirror/commands/paragraphBookmarkJoin.js +4 -7
  855. package/dist/prosemirror/commands/pastePlainText.d.ts +4 -5
  856. package/dist/prosemirror/commands/propertyChangeScope.d.ts +13 -13
  857. package/dist/prosemirror/commands/propertyChangeScope.js +2 -0
  858. package/dist/prosemirror/commands/resolveAllTableChanges.d.ts +3 -3
  859. package/dist/prosemirror/commands/resolveNodePropertyChangeAttrs.d.ts +3 -3
  860. package/dist/prosemirror/commands/resolveParagraphProperties.d.ts +3 -3
  861. package/dist/prosemirror/commands/resolveParagraphProperties.js +1 -1
  862. package/dist/prosemirror/commands/sectionBreak.d.ts +9 -8
  863. package/dist/prosemirror/commands/sectionBreak.js +14 -1
  864. package/dist/prosemirror/commands/table.d.ts +34 -34
  865. package/dist/prosemirror/commands/tableCellMergeResolution.d.ts +8 -8
  866. package/dist/prosemirror/commands/tableCellMergeResolution.js +3 -2
  867. package/dist/prosemirror/commands/tableMergeFoldDecisions.d.ts +4 -4
  868. package/dist/prosemirror/commentBoundaryOwnership.d.ts +15 -0
  869. package/dist/prosemirror/commentBoundaryOwnership.js +4 -0
  870. package/dist/prosemirror/commentIdAllocator.d.ts +8 -8
  871. package/dist/prosemirror/commentIdAllocator.js +2 -0
  872. package/dist/prosemirror/commentOps.d.ts +6 -7
  873. package/dist/prosemirror/commentOps.js +3 -19
  874. package/dist/prosemirror/commentRangeBoundaryAttrs.d.ts +16 -0
  875. package/dist/prosemirror/commentRangeBoundaryAttrs.js +51 -0
  876. package/dist/prosemirror/commentRangeInlineAtoms.d.ts +5 -5
  877. package/dist/prosemirror/commentRangeInlineAtoms.js +1 -0
  878. package/dist/prosemirror/commentReferenceAttrs.d.ts +3 -4
  879. package/dist/prosemirror/commentReferenceAttrs.js +4 -1
  880. package/dist/prosemirror/commentReferenceIntegrity.d.ts +15 -6
  881. package/dist/prosemirror/commentReferenceIntegrity.js +93 -1
  882. package/dist/prosemirror/containerFinalParagraph.d.ts +4 -4
  883. package/dist/prosemirror/contentControlRevisions.d.ts +7 -7
  884. package/dist/prosemirror/conversion/effectiveTableCellFormatting.d.ts +4 -4
  885. package/dist/prosemirror/conversion/fromProseDoc.d.ts +10 -10
  886. package/dist/prosemirror/conversion/fromProseDoc.js +473 -176
  887. package/dist/prosemirror/conversion/hyphenTextCarriers.d.ts +2 -3
  888. package/dist/prosemirror/conversion/markInterner.d.ts +2 -3
  889. package/dist/prosemirror/conversion/preservedSinkCarriers.d.ts +5 -5
  890. package/dist/prosemirror/conversion/runShadingMark.d.ts +3 -4
  891. package/dist/prosemirror/conversion/sdtAttrs.d.ts +6 -7
  892. package/dist/prosemirror/conversion/toProseDoc.d.ts +15 -9
  893. package/dist/prosemirror/conversion/toProseDoc.js +318 -202
  894. package/dist/prosemirror/copyOriginDom.d.ts +8 -0
  895. package/dist/prosemirror/copyOriginDom.js +21 -0
  896. package/dist/prosemirror/copyOriginResolution.d.ts +15 -0
  897. package/dist/prosemirror/copyOriginResolution.js +202 -0
  898. package/dist/prosemirror/documentSchema.d.ts +2 -3
  899. package/dist/prosemirror/emptyFieldResultRuns.d.ts +3 -3
  900. package/dist/prosemirror/emptyRangeAnchor.d.ts +6 -6
  901. package/dist/prosemirror/executeEditorCommand.d.ts +4 -5
  902. package/dist/prosemirror/extensions/ExtensionManager.d.ts +2 -3
  903. package/dist/prosemirror/extensions/StarterKit.d.ts +3 -4
  904. package/dist/prosemirror/extensions/StarterKit.js +5 -1
  905. package/dist/prosemirror/extensions/core/DocExtension.d.ts +2 -3
  906. package/dist/prosemirror/extensions/core/DocExtension.js +1 -1
  907. package/dist/prosemirror/extensions/core/HistoryExtension.d.ts +3 -3
  908. package/dist/prosemirror/extensions/core/HistoryExtension.js +5 -4
  909. package/dist/prosemirror/extensions/core/ParagraphExtension.d.ts +8 -9
  910. package/dist/prosemirror/extensions/core/ParagraphExtension.js +17 -9
  911. package/dist/prosemirror/extensions/core/TextExtension.d.ts +2 -3
  912. package/dist/prosemirror/extensions/create.d.ts +4 -5
  913. package/dist/prosemirror/extensions/features/AutoBidiDetectionExtension.d.ts +4 -5
  914. package/dist/prosemirror/extensions/features/BaseKeymapExtension.d.ts +3 -4
  915. package/dist/prosemirror/extensions/features/BidiShortcutExtension.d.ts +2 -3
  916. package/dist/prosemirror/extensions/features/ContentControlWidgetsExtension.d.ts +2 -3
  917. package/dist/prosemirror/extensions/features/DropCursorExtension.d.ts +2 -3
  918. package/dist/prosemirror/extensions/features/EmptyParagraphFormatExtension.d.ts +3 -4
  919. package/dist/prosemirror/extensions/features/GapCursorExtension.d.ts +2 -3
  920. package/dist/prosemirror/extensions/features/ImageDragExtension.d.ts +2 -3
  921. package/dist/prosemirror/extensions/features/ImagePasteExtension.d.ts +2 -3
  922. package/dist/prosemirror/extensions/features/ImagePasteExtension.js +2 -1
  923. package/dist/prosemirror/extensions/features/JoinedRunStyleExtension.d.ts +3 -4
  924. package/dist/prosemirror/extensions/features/ListExtension.d.ts +6 -7
  925. package/dist/prosemirror/extensions/features/ParaIdAllocatorExtension.d.ts +8 -8
  926. package/dist/prosemirror/extensions/features/ParaIdAllocatorExtension.js +17 -7
  927. package/dist/prosemirror/extensions/features/ParagraphChangeTrackerExtension.d.ts +18 -18
  928. package/dist/prosemirror/extensions/features/ParagraphChangeTrackerExtension.js +2 -1
  929. package/dist/prosemirror/extensions/features/PasteCleanupExtension.d.ts +2 -2
  930. package/dist/prosemirror/extensions/features/PasteStyleInlinerExtension.d.ts +6 -3
  931. package/dist/prosemirror/extensions/features/PasteStyleInlinerExtension.js +5 -2
  932. package/dist/prosemirror/extensions/features/SelectionTrackerExtension.d.ts +2 -2
  933. package/dist/prosemirror/extensions/features/SelectionTrackerExtension.js +2 -8
  934. package/dist/prosemirror/extensions/features/bidiShortcutController.d.ts +5 -6
  935. package/dist/prosemirror/extensions/features/clipboardTrackedRevisions.d.ts +4 -0
  936. package/dist/prosemirror/extensions/features/clipboardTrackedRevisions.js +72 -0
  937. package/dist/prosemirror/extensions/features/pasteCleanup.d.ts +4 -4
  938. package/dist/prosemirror/extensions/features/pasteCleanup.js +3 -2
  939. package/dist/prosemirror/extensions/features/pastedHeadingStyles.d.ts +2 -3
  940. package/dist/prosemirror/extensions/features/pastedHtmlLists.d.ts +3 -4
  941. package/dist/prosemirror/extensions/markRegistry.d.ts +4 -5
  942. package/dist/prosemirror/extensions/marks/AllCapsExtension.d.ts +2 -3
  943. package/dist/prosemirror/extensions/marks/BoldExtension.d.ts +2 -3
  944. package/dist/prosemirror/extensions/marks/CharacterSpacingExtension.d.ts +2 -3
  945. package/dist/prosemirror/extensions/marks/CharacterStyleExtension.d.ts +2 -3
  946. package/dist/prosemirror/extensions/marks/CommentExtension.d.ts +2 -3
  947. package/dist/prosemirror/extensions/marks/FontFamilyExtension.d.ts +2 -3
  948. package/dist/prosemirror/extensions/marks/FontFamilyExtension.js +12 -4
  949. package/dist/prosemirror/extensions/marks/FontSizeExtension.d.ts +2 -3
  950. package/dist/prosemirror/extensions/marks/FootnoteRefExtension.d.ts +2 -3
  951. package/dist/prosemirror/extensions/marks/FootnoteRefExtension.js +42 -4
  952. package/dist/prosemirror/extensions/marks/HiddenTextExtension.d.ts +2 -3
  953. package/dist/prosemirror/extensions/marks/HighlightExtension.d.ts +4 -4
  954. package/dist/prosemirror/extensions/marks/HighlightExtension.js +6 -4
  955. package/dist/prosemirror/extensions/marks/HyperlinkExtension.d.ts +5 -6
  956. package/dist/prosemirror/extensions/marks/HyperlinkExtension.js +9 -3
  957. package/dist/prosemirror/extensions/marks/InlineWrapperExtension.d.ts +3 -4
  958. package/dist/prosemirror/extensions/marks/ItalicExtension.d.ts +2 -3
  959. package/dist/prosemirror/extensions/marks/LanguageExtension.d.ts +2 -3
  960. package/dist/prosemirror/extensions/marks/RtlExtension.d.ts +2 -3
  961. package/dist/prosemirror/extensions/marks/RunFormattingOverrideExtension.d.ts +5 -5
  962. package/dist/prosemirror/extensions/marks/RunIdentityExtension.d.ts +3 -3
  963. package/dist/prosemirror/extensions/marks/RunShadingExtension.d.ts +2 -3
  964. package/dist/prosemirror/extensions/marks/SmallCapsExtension.d.ts +2 -3
  965. package/dist/prosemirror/extensions/marks/StrikeExtension.d.ts +2 -3
  966. package/dist/prosemirror/extensions/marks/StrikeExtension.js +9 -3
  967. package/dist/prosemirror/extensions/marks/SubscriptExtension.d.ts +2 -3
  968. package/dist/prosemirror/extensions/marks/SubscriptExtension.js +3 -2
  969. package/dist/prosemirror/extensions/marks/SuperscriptExtension.d.ts +2 -3
  970. package/dist/prosemirror/extensions/marks/SuperscriptExtension.js +3 -2
  971. package/dist/prosemirror/extensions/marks/TextColorExtension.d.ts +2 -3
  972. package/dist/prosemirror/extensions/marks/TextColorExtension.js +7 -6
  973. package/dist/prosemirror/extensions/marks/TextEffectExtension.d.ts +2 -3
  974. package/dist/prosemirror/extensions/marks/TextEffectsExtensions.d.ts +6 -7
  975. package/dist/prosemirror/extensions/marks/TextEffectsExtensions.js +1 -4
  976. package/dist/prosemirror/extensions/marks/TrackedChangeExtensions.d.ts +4 -5
  977. package/dist/prosemirror/extensions/marks/TrackedChangeExtensions.js +18 -2
  978. package/dist/prosemirror/extensions/marks/UnderlineExtension.d.ts +2 -3
  979. package/dist/prosemirror/extensions/marks/UnderlineExtension.js +10 -3
  980. package/dist/prosemirror/extensions/marks/markUtils.d.ts +82 -25
  981. package/dist/prosemirror/extensions/marks/markUtils.js +138 -74
  982. package/dist/prosemirror/extensions/marks/noteReferenceDeletion.d.ts +3 -3
  983. package/dist/prosemirror/extensions/nodes/BlockBookmarkBoundaryExtension.d.ts +6 -3
  984. package/dist/prosemirror/extensions/nodes/BlockBookmarkBoundaryExtension.js +4 -4
  985. package/dist/prosemirror/extensions/nodes/BlockCustomXmlExtension.d.ts +2 -3
  986. package/dist/prosemirror/extensions/nodes/BlockMoveRangeBoundaryExtension.d.ts +24 -0
  987. package/dist/prosemirror/extensions/nodes/BlockMoveRangeBoundaryExtension.js +59 -0
  988. package/dist/prosemirror/extensions/nodes/BlockSdtExtension.d.ts +2 -3
  989. package/dist/prosemirror/extensions/nodes/BookmarkBoundaryExtension.d.ts +3 -3
  990. package/dist/prosemirror/extensions/nodes/BookmarkBoundaryExtension.js +1 -1
  991. package/dist/prosemirror/extensions/nodes/CommentRangeBoundaryExtension.d.ts +10 -0
  992. package/dist/prosemirror/extensions/nodes/CommentRangeBoundaryExtension.js +43 -0
  993. package/dist/prosemirror/extensions/nodes/CommentReferenceExtension.d.ts +3 -5
  994. package/dist/prosemirror/extensions/nodes/CommentReferenceExtension.js +5 -73
  995. package/dist/prosemirror/extensions/nodes/FieldExtension.d.ts +4 -4
  996. package/dist/prosemirror/extensions/nodes/FieldExtension.js +12 -2
  997. package/dist/prosemirror/extensions/nodes/HardBreakExtension.d.ts +2 -3
  998. package/dist/prosemirror/extensions/nodes/HorizontalRuleExtension.d.ts +2 -3
  999. package/dist/prosemirror/extensions/nodes/ImageExtension.d.ts +2 -3
  1000. package/dist/prosemirror/extensions/nodes/MathExtension.d.ts +2 -3
  1001. package/dist/prosemirror/extensions/nodes/MoveRangeBoundaryExtension.d.ts +4 -4
  1002. package/dist/prosemirror/extensions/nodes/MoveRangeBoundaryExtension.js +8 -4
  1003. package/dist/prosemirror/extensions/nodes/NoteMarkerExtension.d.ts +3 -4
  1004. package/dist/prosemirror/extensions/nodes/PageBreakExtension.d.ts +2 -3
  1005. package/dist/prosemirror/extensions/nodes/PageBreakRunExtension.d.ts +2 -3
  1006. package/dist/prosemirror/extensions/nodes/PreservedBlockExtension.d.ts +3 -4
  1007. package/dist/prosemirror/extensions/nodes/PreservedXmlExtension.d.ts +3 -4
  1008. package/dist/prosemirror/extensions/nodes/RangeAnchorExtension.d.ts +4 -4
  1009. package/dist/prosemirror/extensions/nodes/RangeAnchorExtension.js +20 -4
  1010. package/dist/prosemirror/extensions/nodes/RenderedPageBreakExtension.d.ts +3 -4
  1011. package/dist/prosemirror/extensions/nodes/SdtExtension.d.ts +3 -4
  1012. package/dist/prosemirror/extensions/nodes/ShapeExtension.d.ts +11 -11
  1013. package/dist/prosemirror/extensions/nodes/ShapeExtension.js +5 -6
  1014. package/dist/prosemirror/extensions/nodes/SymbolExtension.d.ts +2 -3
  1015. package/dist/prosemirror/extensions/nodes/SymbolExtension.js +3 -3
  1016. package/dist/prosemirror/extensions/nodes/TabExtension.d.ts +2 -3
  1017. package/dist/prosemirror/extensions/nodes/TableExtension.d.ts +10 -10
  1018. package/dist/prosemirror/extensions/nodes/TableExtension.js +11 -13
  1019. package/dist/prosemirror/extensions/nodes/TextBoxAnchorExtension.d.ts +3 -3
  1020. package/dist/prosemirror/extensions/nodes/TextBoxExtension.d.ts +4 -5
  1021. package/dist/prosemirror/extensions/nodes/bookmarkBoundaryDom.d.ts +7 -5
  1022. package/dist/prosemirror/extensions/nodes/bookmarkBoundaryDom.js +9 -3
  1023. package/dist/prosemirror/extensions/types.d.ts +27 -27
  1024. package/dist/prosemirror/fieldRepresentation.d.ts +6 -5
  1025. package/dist/prosemirror/fieldRepresentation.js +13 -3
  1026. package/dist/prosemirror/findReplaceSelection.d.ts +9 -9
  1027. package/dist/prosemirror/hyperlinkRemoval.d.ts +4 -4
  1028. package/dist/prosemirror/hyperlinkRemoval.js +12 -0
  1029. package/dist/prosemirror/imageCommit.d.ts +5 -23
  1030. package/dist/prosemirror/imageCommit.js +1 -29
  1031. package/dist/prosemirror/imagePictureNames.d.ts +4 -5
  1032. package/dist/prosemirror/indexedNodeLookup.d.ts +4 -4
  1033. package/dist/prosemirror/inlineDisplayText.d.ts +4 -5
  1034. package/dist/prosemirror/inlineWrapperStack.d.ts +8 -9
  1035. package/dist/prosemirror/insertOperations.d.ts +4 -4
  1036. package/dist/prosemirror/keptRangeBoundaries.d.ts +76 -0
  1037. package/dist/prosemirror/keptRangeBoundaries.js +381 -0
  1038. package/dist/prosemirror/listAutoformatMarkers.d.ts +3 -4
  1039. package/dist/prosemirror/listInstanceReferences.d.ts +3 -4
  1040. package/dist/prosemirror/listInstanceReferences.js +1 -1
  1041. package/dist/prosemirror/listLabels.d.ts +15 -5
  1042. package/dist/prosemirror/listLabels.js +101 -16
  1043. package/dist/prosemirror/listMarker.d.ts +13 -13
  1044. package/dist/prosemirror/listMarker.js +7 -2
  1045. package/dist/prosemirror/listNumbering.d.ts +11 -11
  1046. package/dist/prosemirror/listNumbering.js +0 -16
  1047. package/dist/prosemirror/listRendering.d.ts +5 -5
  1048. package/dist/prosemirror/listRendering.js +4 -0
  1049. package/dist/prosemirror/listRenderingAttrs.d.ts +12 -11
  1050. package/dist/prosemirror/listRenderingAttrs.js +9 -5
  1051. package/dist/prosemirror/listState.d.ts +9 -10
  1052. package/dist/prosemirror/markupViewNotes.d.ts +2 -3
  1053. package/dist/prosemirror/markupViewProjection.d.ts +9 -8
  1054. package/dist/prosemirror/moveRangeBoundaryAttrs.d.ts +7 -6
  1055. package/dist/prosemirror/moveRangeBoundaryAttrs.js +27 -4
  1056. package/dist/prosemirror/noteReferenceOccurrenceId.d.ts +2 -3
  1057. package/dist/prosemirror/noteReferenceOccurrences.d.ts +9 -9
  1058. package/dist/prosemirror/noteReferenceReview.d.ts +13 -13
  1059. package/dist/prosemirror/noteReferenceReview.js +4 -10
  1060. package/dist/prosemirror/numberedRefFields.d.ts +5 -5
  1061. package/dist/prosemirror/numberingAttr.d.ts +11 -11
  1062. package/dist/prosemirror/outlineLevelAttr.d.ts +3 -4
  1063. package/dist/prosemirror/pageBreakRunProjection.d.ts +5 -5
  1064. package/dist/prosemirror/paraText.d.ts +4 -5
  1065. package/dist/prosemirror/paragraphAlignment.d.ts +2 -3
  1066. package/dist/prosemirror/paragraphDirection.d.ts +8 -9
  1067. package/dist/prosemirror/paragraphFormattingProvenance.d.ts +14 -7
  1068. package/dist/prosemirror/paragraphFormattingProvenance.js +8 -0
  1069. package/dist/prosemirror/paragraphIndentation.d.ts +7 -7
  1070. package/dist/prosemirror/paragraphList.d.ts +39 -0
  1071. package/dist/prosemirror/paragraphList.js +81 -0
  1072. package/dist/prosemirror/paragraphMarkJoin.d.ts +12 -2
  1073. package/dist/prosemirror/paragraphMarkJoin.js +34 -3
  1074. package/dist/prosemirror/paragraphPropertyCarry.d.ts +7 -7
  1075. package/dist/prosemirror/paragraphSpacing.d.ts +9 -9
  1076. package/dist/prosemirror/paragraphSpacing.js +16 -10
  1077. package/dist/prosemirror/pluginKeyOwner.d.ts +3 -4
  1078. package/dist/prosemirror/plugins/aiCitationDecorations.d.ts +6 -6
  1079. package/dist/prosemirror/plugins/aiCitationDecorations.js +0 -12
  1080. package/dist/prosemirror/plugins/aiSuggestionDecorations.d.ts +6 -6
  1081. package/dist/prosemirror/plugins/aiSuggestionDecorations.js +0 -14
  1082. package/dist/prosemirror/plugins/anonymizationDecorations.d.ts +9 -9
  1083. package/dist/prosemirror/plugins/anonymizationDecorations.js +0 -18
  1084. package/dist/prosemirror/plugins/autocompleteSuggestion.d.ts +19 -19
  1085. package/dist/prosemirror/plugins/autocompleteSuggestion.js +3 -25
  1086. package/dist/prosemirror/plugins/contentControlWidgets.d.ts +10 -10
  1087. package/dist/prosemirror/plugins/contentControlWidgets.js +13 -7
  1088. package/dist/prosemirror/plugins/createDocScanPlugin.d.ts +6 -6
  1089. package/dist/prosemirror/plugins/documentNumbering.d.ts +11 -9
  1090. package/dist/prosemirror/plugins/documentNumbering.js +42 -42
  1091. package/dist/prosemirror/plugins/documentStyleState.d.ts +5 -6
  1092. package/dist/prosemirror/plugins/documentStyles.d.ts +4 -4
  1093. package/dist/prosemirror/plugins/documentStyles.js +2 -1
  1094. package/dist/prosemirror/plugins/lockedControlKeyHandling.d.ts +4 -0
  1095. package/dist/prosemirror/plugins/lockedControlKeyHandling.js +16 -0
  1096. package/dist/prosemirror/plugins/paragraphStyleResolution.d.ts +3 -3
  1097. package/dist/prosemirror/plugins/paragraphStyleResolution.js +23 -1
  1098. package/dist/prosemirror/plugins/pmTextScan.d.ts +5 -6
  1099. package/dist/prosemirror/plugins/revisionIds.d.ts +11 -11
  1100. package/dist/prosemirror/plugins/revisionIds.js +11 -0
  1101. package/dist/prosemirror/plugins/selectionTracker.d.ts +7 -8
  1102. package/dist/prosemirror/plugins/suggestionMode.d.ts +16 -16
  1103. package/dist/prosemirror/plugins/suggestionMode.js +11 -3
  1104. package/dist/prosemirror/plugins/templateDirectives.d.ts +8 -8
  1105. package/dist/prosemirror/plugins/templateDirectives.js +0 -17
  1106. package/dist/prosemirror/plugins/templatePreviewValues.d.ts +12 -12
  1107. package/dist/prosemirror/plugins/templatePreviewValues.js +0 -23
  1108. package/dist/prosemirror/plugins/templateSlashMenu.d.ts +10 -11
  1109. package/dist/prosemirror/plugins/templateSlashMenu.js +3 -21
  1110. package/dist/prosemirror/plugins/transactionInvariants.d.ts +7 -8
  1111. package/dist/prosemirror/positionSweep.d.ts +4 -5
  1112. package/dist/prosemirror/positionSweep.js +1 -1
  1113. package/dist/prosemirror/preservedXmlReview.d.ts +2 -3
  1114. package/dist/prosemirror/queries.d.ts +5 -6
  1115. package/dist/prosemirror/rangeAnchorAttrs.d.ts +4 -5
  1116. package/dist/prosemirror/rangeAnchorAttrs.js +4 -1
  1117. package/dist/prosemirror/rebaseParagraphRunFormatting.d.ts +3 -3
  1118. package/dist/prosemirror/rebaseParagraphRunFormatting.js +6 -5
  1119. package/dist/prosemirror/rebaseParagraphRuns.d.ts +4 -4
  1120. package/dist/prosemirror/rebaseParagraphRuns.js +15 -11
  1121. package/dist/prosemirror/rejoinRunCarriers.d.ts +3 -3
  1122. package/dist/prosemirror/replacedAnnotations.d.ts +31 -17
  1123. package/dist/prosemirror/replacedAnnotations.js +80 -11
  1124. package/dist/prosemirror/revisionCarriers.d.ts +13 -13
  1125. package/dist/prosemirror/runContentProjection.d.ts +6 -0
  1126. package/dist/prosemirror/runContentProjection.js +24 -0
  1127. package/dist/prosemirror/runFormattingFromMarks.d.ts +5 -6
  1128. package/dist/prosemirror/runFormattingFromMarks.js +19 -17
  1129. package/dist/prosemirror/runFormattingInlineCarriers.d.ts +16 -15
  1130. package/dist/prosemirror/runFormattingInlineCarriers.js +1 -0
  1131. package/dist/prosemirror/runFormattingMarkNames.d.ts +2 -3
  1132. package/dist/prosemirror/runFormattingProvenance.d.ts +5 -6
  1133. package/dist/prosemirror/runFormattingReconciliation.d.ts +4 -4
  1134. package/dist/prosemirror/runFormattingReconciliation.js +6 -4
  1135. package/dist/prosemirror/runIdentity.d.ts +6 -7
  1136. package/dist/prosemirror/runIdentityAcrossRevisions.d.ts +16 -5
  1137. package/dist/prosemirror/runIdentityAcrossRevisions.js +92 -32
  1138. package/dist/prosemirror/runPropertyChangeResolution.d.ts +3 -3
  1139. package/dist/prosemirror/runPropertyChangeResolution.js +11 -10
  1140. package/dist/prosemirror/runStyleFormatting.d.ts +16 -16
  1141. package/dist/prosemirror/runStyleFormatting.js +4 -2
  1142. package/dist/prosemirror/schema/index.d.ts +6 -6
  1143. package/dist/prosemirror/schema/marks.d.ts +36 -39
  1144. package/dist/prosemirror/schema/nodes.d.ts +42 -35
  1145. package/dist/prosemirror/sectionCarrier.d.ts +7 -8
  1146. package/dist/prosemirror/sectionMarkEdits.d.ts +3 -4
  1147. package/dist/prosemirror/sectionMarkEdits.js +21 -1
  1148. package/dist/prosemirror/selectionMarks.d.ts +2 -2
  1149. package/dist/prosemirror/selectionState.d.ts +5 -6
  1150. package/dist/prosemirror/selectionState.js +1 -4
  1151. package/dist/prosemirror/shapeGeometryAdjustments.d.ts +2 -3
  1152. package/dist/prosemirror/storyListNumbering.d.ts +2 -2
  1153. package/dist/prosemirror/storyListNumbering.js +2 -1
  1154. package/dist/prosemirror/styles/index.js +1 -2
  1155. package/dist/prosemirror/styles/paragraphStyleCascade.d.ts +9 -9
  1156. package/dist/prosemirror/styles/paragraphStyleCascade.js +17 -2
  1157. package/dist/prosemirror/styles/resolvedStyleAttrs.d.ts +8 -8
  1158. package/dist/prosemirror/styles/styleResolver.d.ts +6 -7
  1159. package/dist/prosemirror/styles/styleResolver.js +17 -0
  1160. package/dist/prosemirror/styles/styleToggleCascade.d.ts +4 -4
  1161. package/dist/prosemirror/styles/tableStyleRegions.d.ts +5 -6
  1162. package/dist/prosemirror/tableCellMergeRevision.d.ts +3 -4
  1163. package/dist/prosemirror/tableCellPaste.d.ts +11 -12
  1164. package/dist/prosemirror/tableCellRevisionVisibility.d.ts +2 -3
  1165. package/dist/prosemirror/tableGridMutation.d.ts +12 -12
  1166. package/dist/prosemirror/tableResize.d.ts +18 -18
  1167. package/dist/prosemirror/tableResize.js +64 -53
  1168. package/dist/prosemirror/tableRunIn.d.ts +10 -5
  1169. package/dist/prosemirror/tableRunIn.js +44 -9
  1170. package/dist/prosemirror/textBoxAnchorAttrs.d.ts +3 -4
  1171. package/dist/prosemirror/textBoxAnchorAttrs.js +4 -1
  1172. package/dist/prosemirror/textBoxHostCollapse.d.ts +8 -0
  1173. package/dist/prosemirror/textBoxHostCollapse.js +79 -0
  1174. package/dist/prosemirror/textBoxHostParagraph.d.ts +2 -3
  1175. package/dist/prosemirror/textInput.d.ts +12 -6
  1176. package/dist/prosemirror/textInput.js +26 -2
  1177. package/dist/prosemirror/trackedRevisionPath.d.ts +6 -6
  1178. package/dist/prosemirror/trackedRevisionPath.js +7 -4
  1179. package/dist/prosemirror/trackedRunInlineAtoms.d.ts +8 -8
  1180. package/dist/prosemirror/trackedRunInlineAtoms.js +3 -2
  1181. package/dist/prosemirror/utils/extractTrackedChanges.d.ts +4 -5
  1182. package/dist/prosemirror/utils/findParagraphByParaId.d.ts +3 -4
  1183. package/dist/prosemirror/utils/tabCalculator.js +1 -2
  1184. package/dist/prosemirror/utils/visualLineNavigation.d.ts +7 -7
  1185. package/dist/prosemirror/utils/visualLineNavigation.js +2 -14
  1186. package/dist/prosemirror/validation.d.ts +7 -8
  1187. package/dist/prosemirror/validation.js +25 -10
  1188. package/dist/prosemirror/yjsDocumentMetadata.d.ts +15 -15
  1189. package/dist/prosemirror/yjsDocumentMetadata.js +15 -12
  1190. package/dist/prosemirror/zeroWidthAnchors.d.ts +7 -6
  1191. package/dist/prosemirror/zeroWidthAnchors.js +53 -16
  1192. package/dist/redline.d.ts +8 -8
  1193. package/dist/redline.js +2 -1
  1194. package/dist/redlineOperationLimit.d.ts +3 -3
  1195. package/dist/render-dom/BodySelectionOverlay.d.ts +4 -5
  1196. package/dist/render-dom/HeaderFooterSelectionOverlay.d.ts +6 -7
  1197. package/dist/render-dom/RemoteSelectionOverlay.d.ts +5 -6
  1198. package/dist/render-dom/RenderedDomContext.d.ts +6 -7
  1199. package/dist/render-dom/commentAnchorAttributes.d.ts +6 -6
  1200. package/dist/render-dom/resolveSidebarItemPositions.d.ts +5 -6
  1201. package/dist/reviewHistoryLimits.d.ts +3 -0
  1202. package/dist/reviewHistoryLimits.js +4 -0
  1203. package/dist/server.d.ts +2 -1
  1204. package/dist/server.js +2 -1
  1205. package/dist/shaping/placeRun.d.ts +7 -8
  1206. package/dist/shaping/shaper.d.ts +16 -16
  1207. package/dist/style-engine/index.js +1 -2
  1208. package/dist/style-engine/styleEngine.d.ts +5 -6
  1209. package/dist/style-sets/extract.d.ts +8 -9
  1210. package/dist/style-sets/stellaStyle.d.ts +4 -5
  1211. package/dist/style-sets/styleSetNormalization.d.ts +6 -7
  1212. package/dist/style-sets/types.d.ts +5 -6
  1213. package/dist/symbols.d.ts +8 -9
  1214. package/dist/types/block-id.d.ts +11 -12
  1215. package/dist/types/canonicalCapabilities.d.ts +11 -19
  1216. package/dist/types/canonicalCapabilities.js +5 -12
  1217. package/dist/types/canonicalComments.d.ts +3 -4
  1218. package/dist/types/canonicalSave.d.ts +2 -3
  1219. package/dist/types/canonicalSections.d.ts +2 -3
  1220. package/dist/types/documentEnumValues.d.ts +48 -49
  1221. package/dist/types/docxSerialization.d.ts +4 -5
  1222. package/dist/types/editor-story.d.ts +2 -3
  1223. package/dist/types/remote-selection.d.ts +2 -3
  1224. package/dist/types/wrap.d.ts +5 -6
  1225. package/dist/utils/authorColors.d.ts +4 -5
  1226. package/dist/utils/base64.d.ts +2 -2
  1227. package/dist/utils/baseDirection.d.ts +4 -5
  1228. package/dist/utils/borderCss.d.ts +9 -10
  1229. package/dist/utils/boundedContentIdentity.d.ts +13 -0
  1230. package/dist/utils/boundedContentIdentity.js +42 -0
  1231. package/dist/utils/canonicalJson.d.ts +2 -3
  1232. package/dist/utils/clipboard.d.ts +22 -22
  1233. package/dist/utils/clipboard.js +9 -6
  1234. package/dist/utils/colorResolver.d.ts +22 -23
  1235. package/dist/utils/colorResolver.js +0 -20
  1236. package/dist/utils/createDocument.d.ts +4 -4
  1237. package/dist/utils/cursiveJoining.d.ts +7 -8
  1238. package/dist/utils/documentLoaderBehavior.d.ts +3 -4
  1239. package/dist/utils/documentPointerDown.d.ts +5 -0
  1240. package/dist/utils/documentPointerDown.js +28 -0
  1241. package/dist/utils/docxInput.d.ts +3 -4
  1242. package/dist/utils/domGuards.d.ts +7 -8
  1243. package/dist/utils/findMatchView.d.ts +4 -4
  1244. package/dist/utils/findReplace.d.ts +16 -16
  1245. package/dist/utils/findSearchKey.d.ts +5 -5
  1246. package/dist/utils/findVerticalScrollParent.d.ts +3 -4
  1247. package/dist/utils/fontFamilyMerge.d.ts +2 -2
  1248. package/dist/utils/fontLoader.d.ts +12 -13
  1249. package/dist/utils/fontResolver.d.ts +16 -14
  1250. package/dist/utils/fontResolver.js +33 -5
  1251. package/dist/utils/fontWeights.d.ts +2 -3
  1252. package/dist/utils/formatToStyle.d.ts +14 -14
  1253. package/dist/utils/formatToStyle.js +17 -15
  1254. package/dist/utils/headerFooter.d.ts +11 -12
  1255. package/dist/utils/headerFooter.js +10 -0
  1256. package/dist/utils/headingCollector.d.ts +3 -4
  1257. package/dist/utils/hexId.d.ts +6 -7
  1258. package/dist/utils/hexId.js +1 -1
  1259. package/dist/utils/horizontalScale.d.ts +5 -6
  1260. package/dist/utils/htmlComments.d.ts +2 -3
  1261. package/dist/utils/imageLuminance.d.ts +4 -5
  1262. package/dist/utils/imageResize.d.ts +18 -0
  1263. package/dist/utils/imageResize.js +37 -0
  1264. package/dist/utils/imageValidation.d.ts +3 -4
  1265. package/dist/utils/imageValidation.js +1 -1
  1266. package/dist/utils/joiningTypes.gen.d.ts +5 -6
  1267. package/dist/utils/mergeDocumentContent.d.ts +2 -3
  1268. package/dist/utils/mergeDocumentContent.js +7 -0
  1269. package/dist/utils/noteReferenceLabels.d.ts +7 -8
  1270. package/dist/utils/ooxmlSymbol.d.ts +5 -3
  1271. package/dist/utils/ooxmlSymbol.js +51 -1
  1272. package/dist/utils/outlineDepth.d.ts +4 -5
  1273. package/dist/utils/paragraphBaseDirection.d.ts +2 -3
  1274. package/dist/utils/paragraphBaseDirection.js +2 -1
  1275. package/dist/utils/paragraphFormattingMerge.d.ts +4 -5
  1276. package/dist/utils/paragraphFormattingMerge.js +2 -0
  1277. package/dist/utils/paragraphFrame.d.ts +20 -0
  1278. package/dist/utils/paragraphFrame.js +13 -0
  1279. package/dist/utils/paragraphInlineLayout.d.ts +101 -4
  1280. package/dist/utils/paragraphInlineLayout.js +164 -1
  1281. package/dist/utils/replaceText.d.ts +2 -2
  1282. package/dist/utils/replaceText.js +4 -0
  1283. package/dist/utils/rotationBoundingBox.d.ts +7 -8
  1284. package/dist/utils/sanitizeImageSrc.d.ts +3 -4
  1285. package/dist/utils/scriptSegments.d.ts +34 -16
  1286. package/dist/utils/scriptSegments.js +26 -6
  1287. package/dist/utils/sliceText.js +1 -2
  1288. package/dist/utils/stripXmlDeclarations.d.ts +2 -3
  1289. package/dist/utils/tableOfContentsStyle.d.ts +2 -2
  1290. package/dist/utils/tableOperations.d.ts +16 -17
  1291. package/dist/utils/tableOperations.js +44 -41
  1292. package/dist/utils/tablePlacement.d.ts +3 -4
  1293. package/dist/utils/textAdvanceGapsDom.d.ts +8 -0
  1294. package/dist/utils/textAdvanceGapsDom.js +49 -0
  1295. package/dist/utils/textDirectionFlow.d.ts +3 -4
  1296. package/dist/utils/textEncoding.js +1 -2
  1297. package/dist/utils/textFormattingMerge.d.ts +4 -5
  1298. package/dist/utils/tiffConverter.d.ts +5 -6
  1299. package/dist/utils/trailingText.d.ts +4 -5
  1300. package/dist/utils/units.d.ts +19 -20
  1301. package/dist/utils/urlSecurity.d.ts +6 -6
  1302. package/dist/utils/urlSecurity.js +2 -1
  1303. package/dist/utils/zoom.d.ts +4 -5
  1304. package/dist/version-comparison.d.ts +28 -28
  1305. package/dist/version-comparison.js +8 -7
  1306. package/dist/watermark/index.d.ts +5 -5
  1307. package/dist/watermark/index.js +9 -0
  1308. package/package.json +16 -16
@@ -1,10 +1,11 @@
1
+ import { removeCommentMarkers } from "../../docx/commentAnchorIndex.js";
1
2
  import { joinCommentRangesAcrossParagraphs } from "../../docx/commentRangeJoin.js";
2
3
  import { completeCommentReferences } from "../../docx/commentReferenceCompletion.js";
3
4
  import { buildSections } from "../../docx/documentParser.js";
4
5
  import { normalizeFoldedListNumbers } from "../../docx/foldedListNumberFields.js";
5
6
  import { getDocumentSourceStyles } from "../../docx/headerFooterVerbatim.js";
6
7
  import { EDITED_PREVIEW_FINGERPRINT, imageRawXmlFingerprint } from "../../docx/imageRawXml.js";
7
- import { isInlineSdtContent, isSimpleFieldContent } from "../../docx/inlineWrapperContent.js";
8
+ import { isHyperlinkContent, isInlineSdtContent, isSimpleFieldContent } from "../../docx/inlineWrapperContent.js";
8
9
  import { paragraphNumberingReferenceId, sameStatedParagraphNumbering as sameStatedParagraphNumbering$1 } from "../../docx/numberingReference.js";
9
10
  import { PROSE_PARAGRAPH_SOURCE_CONTRACT_ATTR, ParagraphPropertySourceValidationError, assignParagraphIndentationProjection, copyDocumentParagraphPropertySourceContract, copyDocumentParagraphPropertySources, copyParagraphPropertyCapture, copyParagraphPropertySource, decodeTableCellParagraphSourcePayload, getDocumentParagraphPropertySourceContract, getParagraphPropertySource, getParagraphPropertySourceCandidate, getParagraphPropertySourceToken, getParagraphPropertySourceTransferId, getProseDocumentParagraphPropertySourceContract, getProseParagraphPropertySourceToken, inspectParagraphSourceIdentity, isParagraphPropertySourceToken, linkParagraphPropertySourceCandidate, paragraphFormattingWithAuthoredIndentation, paragraphPropertySourceTokenMatchesContract, recreateProseNodeWithParagraphPropertySource, restoreTableCellsWithParagraphPropertySources, visitDocumentStoryParagraphs, visitTableCellParagraphPropertySourceBindings } from "../../docx/paragraphPropertySource.js";
10
11
  import { BLOCK_TREE_DESCENT, visitBlockTreeRecords, visitDocxParagraphs } from "../../docx/paragraphTraversal.js";
@@ -20,18 +21,22 @@ import { canonicalJson } from "../../utils/canonicalJson.js";
20
21
  import { getFindParagraphText } from "../../utils/findReplace.js";
21
22
  import { mergeTextFormatting } from "../../utils/textFormattingMerge.js";
22
23
  import { emuToPixels, emuToStrokePixels, pixelsToEmu } from "../../utils/units.js";
23
- import { unchangedAlternateContentXml } from "../alternateContentAttrs.js";
24
+ import { editedAlternateContent, unchangedAlternateContentXml } from "../alternateContentAttrs.js";
24
25
  import { expectBlockCustomXmlAttrs, expectBlockSdtAttrs, expectCharacterStyleMarkAttrs, expectCommentMarkAttrs, expectFieldAttrs, expectFootnoteRefMarkAttrs, expectHardBreakAttrs, expectHyperlinkMarkAttrs, expectImageAttrs, expectInlineWrapperMarkAttrs, expectMathAttrs, expectPageBreakRunAttrs, expectParagraphAttrs, expectPreservedBlockAttrs, expectPreservedXmlAttrs, expectRunIdentityMarkAttrs, expectRunPropertyChangeMarkAttrs, expectSdtAttrs, expectShapeAttrs, expectSymbolAttrs, expectTabAttrs, expectTableAttrs, expectTableCellAttrs, expectTableRowAttrs, expectTextBoxAttrs, expectTrackedChangeMarkAttrs } from "../attrs/index.js";
25
26
  import { readAuthoredTransform } from "../authoredTransformAttrs.js";
26
27
  import { autospacingMatchesBase, hasAutospacingBaseSide } from "../autospacingBase.js";
27
28
  import { bookmarkMarkerFromAttrs, expectBookmarkBoundaryAttrs } from "../bookmarkBoundaryAttrs.js";
28
29
  import { paragraphRejectAttrPatch, paragraphRejectOriginalFormatting, removeParagraphPropertyChanges } from "../commands/propertyChangeScope.js";
30
+ import { trackedCommentBoundaryOwner } from "../commentBoundaryOwnership.js";
31
+ import { expectCommentRangeBoundaryAttrs } from "../commentRangeBoundaryAttrs.js";
29
32
  import { expectCommentReferenceAttrs } from "../commentReferenceAttrs.js";
30
33
  import { enclosingRevisionIds } from "../contentControlRevisions.js";
31
34
  import { INLINE_WRAPPER_MARK_NAME } from "../extensions/marks/InlineWrapperExtension.js";
32
35
  import { textFormattingToMarks } from "../extensions/marks/markUtils.js";
36
+ import "../extensions/nodes/CommentRangeBoundaryExtension.js";
33
37
  import "../extensions/nodes/MoveRangeBoundaryExtension.js";
34
38
  import "../extensions/nodes/RangeAnchorExtension.js";
39
+ import { fieldCommentCoverage } from "../fieldRepresentation.js";
35
40
  import { inlineWrapperMember, inlineWrapperStackKey } from "../inlineWrapperStack.js";
36
41
  import { completeNumberingForDoc } from "../listInstanceReferences.js";
37
42
  import { LIST_RENDERING_ATTR_KEYS, hasListRendering, listRenderingFromAttrs as listRenderingFromAttrs$1 } from "../listRenderingAttrs.js";
@@ -52,13 +57,14 @@ import { PRESERVED_XML_LEVELS } from "../schema/nodes.js";
52
57
  import { parseShapeGeometryAdjustments } from "../shapeGeometryAdjustments.js";
53
58
  import { expectTextBoxAnchorAttrs } from "../textBoxAnchorAttrs.js";
54
59
  import { textBoxHostParagraph } from "../textBoxHostParagraph.js";
55
- import { enclosingInsertionAncestors, inlineWrapperStackOf } from "../trackedRevisionPath.js";
60
+ import { enclosingInsertionAncestors, inlineWrapperStackOf, trackedRevisionLayerOf } from "../trackedRevisionPath.js";
56
61
  import { assertValidProseMirrorDocument } from "../validation.js";
57
62
  import { hasSinkChildren } from "./preservedSinkCarriers.js";
58
63
  import { decodeSdtListItems, sdtPropertiesFromAttrs, sdtPropertiesMatchAttrs } from "./sdtAttrs.js";
59
64
  import { TaggedError, panic } from "better-result";
60
- import { DRAWING_RAW_XML_MODES, relationshipIdOf } from "@stll/docx-core/model";
65
+ import { DRAWING_RAW_XML_MODES, finalizeParagraphFormatting, relationshipIdOf, setDocumentBodyComments } from "@stll/docx-core/model";
61
66
  import { Fragment } from "prosemirror-model";
67
+ import { survivingComments } from "@stll/docx-core/ops";
62
68
  //#region src/prosemirror/conversion/fromProseDoc.ts
63
69
  /**
64
70
  * ProseMirror to Document Conversion
@@ -396,11 +402,14 @@ function fromProseDoc(pmDoc, baseDocument, { stylesheetSource, reuse = "none" })
396
402
  const linkedSources = restoreLinkedParagraphPropertySources(blocks);
397
403
  if (tokenSources) restoreParagraphPropertySourcesByToken(blocks, tokenSources);
398
404
  else if (baseDocument) restoreParagraphPropertySources(blocks, baseDocument.package.document.content, linkedSources.targets, linkedSources.sources);
405
+ visitDocxParagraphs({ documentBody: { content: blocks } }, (paragraph) => {
406
+ if (finalizeParagraphFormatting(paragraph.formatting) === void 0) delete paragraph.formatting;
407
+ });
399
408
  const documentBody = { content: blocks };
400
409
  if (baseDocument?.package.document.background) documentBody.background = baseDocument.package.document.background;
401
410
  if (baseDocument?.package.document.finalSectionProperties) documentBody.finalSectionProperties = baseDocument.package.document.finalSectionProperties;
402
411
  if (baseDocument?.package.document.sections) documentBody.sections = buildSections(blocks, documentBody.finalSectionProperties);
403
- if (baseDocument?.package.document.comments) documentBody.comments = baseDocument.package.document.comments;
412
+ if (baseDocument?.package.document.comments) setDocumentBodyComments(documentBody, baseDocument.package.document.comments);
404
413
  const numbering = completeNumberingForDoc(baseDocument?.package.numbering, pmDoc);
405
414
  if (baseDocument) {
406
415
  const updatedDocument = {
@@ -412,6 +421,17 @@ function fromProseDoc(pmDoc, baseDocument, { stylesheetSource, reuse = "none" })
412
421
  ...numbering ? { numbering } : {}
413
422
  }
414
423
  };
424
+ const projectedCommentIds = /* @__PURE__ */ new Set();
425
+ pmDoc.descendants((node) => {
426
+ for (const commentId of getCommentMarkIds(node.marks)) projectedCommentIds.add(commentId);
427
+ });
428
+ const comments = survivingComments(updatedDocument, projectedCommentIds);
429
+ const keptIds = new Set(comments.map(({ id }) => id));
430
+ const retiredIds = new Set((updatedDocument.package.document.comments ?? []).filter(({ id }) => !keptIds.has(id)).map(({ id }) => id));
431
+ if (retiredIds.size > 0) {
432
+ updatedDocument.package.document.content = removeCommentMarkers(updatedDocument.package.document.content, retiredIds);
433
+ setDocumentBodyComments(updatedDocument.package.document, comments);
434
+ }
415
435
  copyDocumentParagraphPropertySourceContract(updatedDocument, baseDocument);
416
436
  return updatedDocument;
417
437
  }
@@ -453,11 +473,12 @@ function stripSuggestedInlineMarks(marks, readFormattingContext) {
453
473
  },
454
474
  ...previousFormatting !== void 0 ? { directFormatting: previousFormatting } : {}
455
475
  });
456
- const effectivePreviousFormatting = mergeTextFormatting(preservedCharacterStyleAttrs ? resolveEffectiveRunStyleFormatting({
476
+ const styleFormatting = preservedCharacterStyleAttrs ? resolveEffectiveRunStyleFormatting({
457
477
  marks,
458
478
  paragraphFormatting,
459
479
  styleResolver
460
- }) : paragraphFormatting, previousFormatting);
480
+ }) : paragraphFormatting;
481
+ const effectivePreviousFormatting = mergeTextFormatting(styleFormatting, previousFormatting);
461
482
  next = next.filter((mark) => !RUN_FORMATTING_MARK_NAMES.has(mark.type.name));
462
483
  for (const restored of textFormattingToMarks(effectivePreviousFormatting, suggestedRunPropertyChange.type.schema, {
463
484
  overrideFormatting: previousFormatting,
@@ -705,6 +726,9 @@ function extractBlocks(inputDoc, refResolution = "resolve", styleResolver = null
705
726
  } else if (node.type.name === "blockBookmarkBoundary") {
706
727
  blocks.push(blockBookmarkMarker(node));
707
728
  previousStandaloneTextBox = null;
729
+ } else if (node.type.name === "blockMoveRangeBoundary") {
730
+ blocks.push({ ...expectMoveRangeBoundaryAttrs(node) });
731
+ previousStandaloneTextBox = null;
708
732
  }
709
733
  });
710
734
  if (pendingPageBreaks > 0 && !appendPendingPageBreaksToPreviousParagraph()) flushPendingPageBreaks();
@@ -955,15 +979,14 @@ function replaceTextBoxAnchorInBlocks(blocks, marker, textBoxRun) {
955
979
  * The inline list a text-box anchor run can be spliced out of, or nothing when
956
980
  * the item holds no such list.
957
981
  *
958
- * A complex field keeps its runs in `fieldCode`/`fieldResult`, two arrays
959
- * rather than one, and an anchor has never been placed in either; splicing one
960
- * would have to pick a side. The marker stays where it is and
961
- * `removeUnresolvedTextBoxAnchors` leaves it, as before.
982
+ * Only a complex field's displayed result is projected into the editor, so
983
+ * its anchors belong to `fieldResult`; its instruction runs stay untouched.
962
984
  */
963
985
  const textBoxAnchorHost = (item) => {
964
986
  switch (item.type) {
965
987
  case "hyperlink": return item.children;
966
988
  case "simpleField": return item.content;
989
+ case "complexField": return item.fieldResult;
967
990
  case "inlineSdt":
968
991
  case "insertion":
969
992
  case "deletion":
@@ -971,7 +994,6 @@ const textBoxAnchorHost = (item) => {
971
994
  case "moveTo":
972
995
  case "inlineWrapper": return item.content;
973
996
  case "run":
974
- case "complexField":
975
997
  case "bookmarkStart":
976
998
  case "bookmarkEnd":
977
999
  case "commentRangeStart":
@@ -987,16 +1009,22 @@ const textBoxAnchorHost = (item) => {
987
1009
  }
988
1010
  };
989
1011
  function editTextBoxAnchorInContent(content, marker, replacement) {
1012
+ const anchorSlot = marker.content.at(0);
1013
+ if (!anchorSlot) return false;
990
1014
  for (const [index, item] of content.entries()) {
991
- if (item === marker) {
992
- content.splice(index, 1, ...replacement ? [replacement] : []);
993
- return true;
1015
+ if (item.type === "run") {
1016
+ const slotIndex = item.content.indexOf(anchorSlot);
1017
+ if (slotIndex >= 0) {
1018
+ item.content.splice(slotIndex, 1, ...replacement?.content ?? []);
1019
+ if (item.content.length === 0) content.splice(index, 1);
1020
+ return true;
1021
+ }
994
1022
  }
995
1023
  const nestedContent = textBoxAnchorHost(item);
996
1024
  if (!nestedContent) continue;
997
1025
  const hadContent = nestedContent.length > 0;
998
1026
  if (editTextBoxAnchorInContent(nestedContent, marker, replacement)) {
999
- if (!replacement && hadContent && nestedContent.length === 0) content.splice(index, 1);
1027
+ if (!replacement && hadContent && nestedContent.length === 0 && item.type !== "simpleField" && item.type !== "complexField") content.splice(index, 1);
1000
1028
  return true;
1001
1029
  }
1002
1030
  }
@@ -1126,6 +1154,9 @@ function convertPMParagraph(node, documentCounts, textBoxAnchorMarkers, styleRes
1126
1154
  if (attrs._propertyChanges && attrs._propertyChanges.length > 0) paragraph.propertyChanges = attrs._propertyChanges.map(propertyChangeFromAttrs);
1127
1155
  if (attrs.pPrMark) paragraph.pPrMark = attrs.pPrMark;
1128
1156
  if (attrs._preservedAttributes && attrs._preservedAttributes.length > 0) paragraph.preservedAttributes = attrs._preservedAttributes;
1157
+ const finalizedFormatting = finalizeParagraphFormatting(paragraph.formatting);
1158
+ if (finalizedFormatting === void 0) delete paragraph.formatting;
1159
+ else paragraph.formatting = finalizedFormatting;
1129
1160
  linkParagraphPropertySourceCandidate(paragraph, node);
1130
1161
  return paragraph;
1131
1162
  }
@@ -1203,7 +1234,7 @@ function assignParagraphIndentation(result, attrs, orig) {
1203
1234
  else result[key] = value;
1204
1235
  }
1205
1236
  const hanging = result.indentFirstLine !== void 0 && attrs.hangingIndent === true;
1206
- if (!changed && hanging === (orig.hangingIndent === true)) return;
1237
+ if (!changed && hanging === (orig.hangingIndent === true) && !(result.indentFirstLine !== void 0 && orig.hangingIndent === false)) return;
1207
1238
  if (hanging) result.hangingIndent = true;
1208
1239
  else Reflect.deleteProperty(result, "hangingIndent");
1209
1240
  }
@@ -1237,16 +1268,24 @@ function paragraphAttrsToFormatting(attrs) {
1237
1268
  if (typeof spaceAfter === "number") result.spaceAfter = spaceAfter;
1238
1269
  else delete result.spaceAfter;
1239
1270
  }
1240
- if (orig.spaceBefore !== void 0 || attrs.spacingExplicit?.before) if (typeof spaceBefore === "number") result.spaceBefore = spaceBefore;
1241
- else Reflect.deleteProperty(result, "spaceBefore");
1242
- if (orig.spaceAfter !== void 0 || attrs.spacingExplicit?.after) if (typeof spaceAfter === "number") result.spaceAfter = spaceAfter;
1243
- else Reflect.deleteProperty(result, "spaceAfter");
1271
+ if (orig.spaceBefore !== void 0 || attrs.spacingExplicit?.before) {
1272
+ if (typeof spaceBefore === "number") result.spaceBefore = spaceBefore;
1273
+ else Reflect.deleteProperty(result, "spaceBefore");
1274
+ }
1275
+ if (orig.spaceAfter !== void 0 || attrs.spacingExplicit?.after) {
1276
+ if (typeof spaceAfter === "number") result.spaceAfter = spaceAfter;
1277
+ else Reflect.deleteProperty(result, "spaceAfter");
1278
+ }
1244
1279
  const originalHasDirectLineSpacing = orig.lineSpacing !== void 0;
1245
- if (hasDirectLineSpacing || originalHasDirectLineSpacing) if (typeof attrs.lineSpacing === "number") result.lineSpacing = attrs.lineSpacing;
1246
- else Reflect.deleteProperty(result, "lineSpacing");
1280
+ if (hasDirectLineSpacing || originalHasDirectLineSpacing) {
1281
+ if (typeof attrs.lineSpacing === "number") result.lineSpacing = attrs.lineSpacing;
1282
+ else Reflect.deleteProperty(result, "lineSpacing");
1283
+ }
1247
1284
  const originalHasDirectLineSpacingRule = orig.lineSpacingRule !== void 0;
1248
- if (hasDirectLineSpacingRule || originalHasDirectLineSpacingRule) if (attrs.lineSpacingRule) result.lineSpacingRule = attrs.lineSpacingRule;
1249
- else Reflect.deleteProperty(result, "lineSpacingRule");
1285
+ if (hasDirectLineSpacingRule || originalHasDirectLineSpacingRule) {
1286
+ if (attrs.lineSpacingRule) result.lineSpacingRule = attrs.lineSpacingRule;
1287
+ else Reflect.deleteProperty(result, "lineSpacingRule");
1288
+ }
1250
1289
  if (directAlignment === void 0) Reflect.deleteProperty(result, "alignment");
1251
1290
  else result.alignment = directAlignment;
1252
1291
  const statedNumbering = attrs.numPr;
@@ -1257,9 +1296,14 @@ function paragraphAttrsToFormatting(attrs) {
1257
1296
  if (statedNumbering !== void 0) result.numPr = statedNumbering;
1258
1297
  else delete result.numPr;
1259
1298
  delete result.numPrFromStyle;
1299
+ } else if (!sameStatedParagraphNumbering$1(attrs.numPrFromStyle ?? void 0, orig.numPrFromStyle)) {
1300
+ if (attrs.numPrFromStyle == null) delete result.numPrFromStyle;
1301
+ else result.numPrFromStyle = attrs.numPrFromStyle;
1302
+ }
1303
+ if (attrs.styleId !== (orig.styleId ?? void 0)) {
1304
+ if (attrs.styleId) result.styleId = attrs.styleId;
1305
+ else delete result.styleId;
1260
1306
  }
1261
- if (attrs.styleId !== (orig.styleId ?? void 0)) if (attrs.styleId) result.styleId = attrs.styleId;
1262
- else delete result.styleId;
1263
1307
  assignParagraphIndentation(result, attrs, orig);
1264
1308
  assignBooleanToggle(result, attrs, orig, "pageBreakBefore");
1265
1309
  assignBooleanToggle(result, attrs, orig, "widowControl");
@@ -1268,14 +1312,20 @@ function paragraphAttrsToFormatting(attrs) {
1268
1312
  assignBooleanToggle(result, attrs, orig, "runInWithNext");
1269
1313
  assignBooleanToggle(result, attrs, orig, "snapToGrid");
1270
1314
  assignBooleanToggle(result, attrs, orig, "kinsoku");
1315
+ assignBooleanToggle(result, attrs, orig, "autoSpaceDE");
1316
+ assignBooleanToggle(result, attrs, orig, "autoSpaceDN");
1271
1317
  assignBooleanToggle(result, attrs, orig, "overflowPunctuation");
1272
1318
  assignBooleanToggle(result, attrs, orig, "suppressAutoHyphens");
1273
- if (attrs.spacingExplicit !== orig.spacingExplicit) if (attrs.spacingExplicit) result.spacingExplicit = attrs.spacingExplicit;
1274
- else delete result.spacingExplicit;
1319
+ if (attrs.spacingExplicit !== orig.spacingExplicit) {
1320
+ if (attrs.spacingExplicit) result.spacingExplicit = attrs.spacingExplicit;
1321
+ else delete result.spacingExplicit;
1322
+ }
1275
1323
  const bidi = authoredParagraphValue("bidi", directionToAuthoredBidi(attrs.direction), orig, attrs._resolvedFormatting);
1276
- if (bidi !== (orig.bidi ?? void 0)) if (bidi === void 0) delete result.bidi;
1277
- else result.bidi = bidi;
1278
- return result;
1324
+ if (bidi !== (orig.bidi ?? void 0)) {
1325
+ if (bidi === void 0) delete result.bidi;
1326
+ else result.bidi = bidi;
1327
+ }
1328
+ return finalizeParagraphFormatting(result);
1279
1329
  }
1280
1330
  const resolved = attrs._resolvedFormatting;
1281
1331
  const authored = (field, value) => authoredParagraphValue(field, value ?? void 0, void 0, resolved);
@@ -1300,9 +1350,11 @@ function paragraphAttrsToFormatting(attrs) {
1300
1350
  const keepLines = authored("keepLines", attrs.keepLines);
1301
1351
  const runInWithNext = authored("runInWithNext", attrs.runInWithNext);
1302
1352
  const kinsoku = authored("kinsoku", attrs.kinsoku);
1353
+ const autoSpaceDE = authored("autoSpaceDE", attrs.autoSpaceDE);
1354
+ const autoSpaceDN = authored("autoSpaceDN", attrs.autoSpaceDN);
1303
1355
  const overflowPunctuation = authored("overflowPunctuation", attrs.overflowPunctuation);
1304
1356
  const suppressAutoHyphens = authored("suppressAutoHyphens", attrs.suppressAutoHyphens);
1305
- if (!(directAlignment !== void 0 || shouldSerializeSpaceBefore || shouldSerializeSpaceAfter || beforeAutospacingEdited || afterAutospacingEdited || hasDirectLineSpacing || hasDirectLineSpacingRule || snapToGrid != null || indentLeft !== void 0 || indentRight || indentFirstLine !== void 0 || attrs.numPr || attrs.styleId || borders || shading || tabs || outlineLevel !== void 0 || contextualSpacing || attrs.spacingExplicit || bidi != null || pageBreakBefore != null || widowControl != null || keepNext != null || keepLines != null || runInWithNext != null || kinsoku != null || overflowPunctuation != null || suppressAutoHyphens != null)) return;
1357
+ if (!(directAlignment !== void 0 || shouldSerializeSpaceBefore || shouldSerializeSpaceAfter || beforeAutospacingEdited || afterAutospacingEdited || hasDirectLineSpacing || hasDirectLineSpacingRule || snapToGrid != null || indentLeft !== void 0 || indentRight || indentFirstLine !== void 0 || attrs.numPr || attrs.styleId || borders || shading || tabs || outlineLevel !== void 0 || contextualSpacing || attrs.spacingExplicit || bidi != null || pageBreakBefore != null || widowControl != null || keepNext != null || keepLines != null || runInWithNext != null || kinsoku != null || autoSpaceDE != null || autoSpaceDN != null || overflowPunctuation != null || suppressAutoHyphens != null)) return;
1306
1358
  const f = {};
1307
1359
  if (directAlignment !== void 0) f.alignment = directAlignment;
1308
1360
  if (shouldSerializeSpaceBefore) f.spaceBefore = spaceBefore;
@@ -1331,9 +1383,11 @@ function paragraphAttrsToFormatting(attrs) {
1331
1383
  if (keepLines != null) f.keepLines = keepLines;
1332
1384
  if (runInWithNext != null) f.runInWithNext = runInWithNext;
1333
1385
  if (kinsoku != null) f.kinsoku = kinsoku;
1386
+ if (autoSpaceDE != null) f.autoSpaceDE = autoSpaceDE;
1387
+ if (autoSpaceDN != null) f.autoSpaceDN = autoSpaceDN;
1334
1388
  if (overflowPunctuation != null) f.overflowPunctuation = overflowPunctuation;
1335
1389
  if (suppressAutoHyphens != null) f.suppressAutoHyphens = suppressAutoHyphens;
1336
- return f;
1390
+ return finalizeParagraphFormatting(f);
1337
1391
  }
1338
1392
  function createTrackedRunWrapper({ type, info, child, resolutionJoins }) {
1339
1393
  const content = child ? [child] : [];
@@ -1528,7 +1582,7 @@ const nestInlineWrapperGroups = (items, groups, hyperlinkIndices, revisionOuterW
1528
1582
  }
1529
1583
  return coalesced;
1530
1584
  };
1531
- function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperlinks, textBoxAnchorMarkers, skipLeadingRenderedPageBreak = false, inheritedFormattingOverride) {
1585
+ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperlinks, textBoxAnchorMarkers, skipLeadingRenderedPageBreak = false, inheritedFormattingOverride, structuredCommentRangeScope) {
1532
1586
  const paragraph = coalesceNoteReferenceOccurrences(originalParagraph);
1533
1587
  const content = [];
1534
1588
  const paragraphStyleContext = inheritedFormattingOverride === void 0 && paragraph.type.name === "paragraph" ? savedParagraphRunStyleContext(paragraph) : void 0;
@@ -1559,7 +1613,8 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1559
1613
  const sourceHyperlinkIndices = /* @__PURE__ */ new WeakMap();
1560
1614
  const revisionOuterWrapperCounts = /* @__PURE__ */ new WeakMap();
1561
1615
  const revisionAncestorsByWrapper = /* @__PURE__ */ new WeakMap();
1562
- const openedComments = /* @__PURE__ */ new Set();
1616
+ const openedComments = new Set(structuredCommentRangeScope?.openedBefore ?? []);
1617
+ let precedingTrackedCommentRangeBoundaries;
1563
1618
  const createIndexedHyperlink = (mark) => {
1564
1619
  const hyperlink = createHyperlink(mark);
1565
1620
  const index = expectHyperlinkMarkAttrs(mark)._docxHyperlinkIndex;
@@ -1567,9 +1622,20 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1567
1622
  return hyperlink;
1568
1623
  };
1569
1624
  const commentLastOffset = /* @__PURE__ */ new Map();
1625
+ let hasInlineSdt = false;
1570
1626
  paragraph.forEach((node, offset) => {
1627
+ hasInlineSdt ||= node.type.name === "sdt";
1571
1628
  for (const commentId of getCommentMarkIds(node.marks)) commentLastOffset.set(commentId, offset);
1572
1629
  });
1630
+ let structuredCommentLastOffset = structuredCommentRangeScope?.lastOffsetByCommentId ?? /* @__PURE__ */ new Map();
1631
+ if (!structuredCommentRangeScope && hasInlineSdt) {
1632
+ const lastOffsetByCommentId = /* @__PURE__ */ new Map();
1633
+ paragraph.descendants((node, offset) => {
1634
+ for (const commentId of getCommentMarkIds(node.marks)) lastOffsetByCommentId.set(commentId, offset);
1635
+ return true;
1636
+ });
1637
+ structuredCommentLastOffset = lastOffsetByCommentId;
1638
+ }
1573
1639
  const flushCurrentInline = () => {
1574
1640
  if (currentRun) {
1575
1641
  content.push(currentRun);
@@ -1605,8 +1671,80 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1605
1671
  currentMarksKey = marksKey;
1606
1672
  rememberSourceRunOwner(run, node, sourceRunOwners);
1607
1673
  };
1674
+ const trackedBoundary = (node) => {
1675
+ const boundaryInsertionMark = node.marks.find((mark) => mark.type.name === "insertion");
1676
+ const boundaryDeletionMark = node.marks.find((mark) => mark.type.name === "deletion");
1677
+ const boundaryChangeMark = boundaryDeletionMark ?? boundaryInsertionMark;
1678
+ if (!boundaryChangeMark) return void 0;
1679
+ const changeAttrs = expectTrackedChangeMarkAttrs(boundaryChangeMark);
1680
+ const info = {
1681
+ id: changeAttrs.revisionId,
1682
+ author: changeAttrs.author || "Unknown",
1683
+ ...changeAttrs.date ? { date: changeAttrs.date } : {},
1684
+ ...changeAttrs.utcDate ? { utcDate: {
1685
+ attribute: DATE_UTC_ATTRIBUTE,
1686
+ value: changeAttrs.utcDate
1687
+ } } : {},
1688
+ ...changeAttrs.initials ? { initials: changeAttrs.initials } : {}
1689
+ };
1690
+ let type;
1691
+ if (boundaryDeletionMark) type = changeAttrs.moveKind === "moveFrom" ? "moveFrom" : "deletion";
1692
+ else type = changeAttrs.moveKind === "moveTo" ? "moveTo" : "insertion";
1693
+ const revisionAncestors = enclosingInsertionAncestors({
1694
+ insertionMark: boundaryDeletionMark ? boundaryInsertionMark : void 0,
1695
+ ancestors: changeAttrs._docxRevisionAncestors ?? [],
1696
+ node
1697
+ });
1698
+ const outerWrapperCount = changeAttrs._docxOuterWrapperCount ?? inlineWrapperStackOf(node).length;
1699
+ return {
1700
+ changeAttrs,
1701
+ info,
1702
+ key: `${type}:${JSON.stringify(info)}:${outerWrapperCount}:${JSON.stringify(revisionAncestors)}:${JSON.stringify(changeAttrs._docxResolutionJoins ?? void 0)}`,
1703
+ outerWrapperCount,
1704
+ revisionAncestors,
1705
+ type
1706
+ };
1707
+ };
1708
+ const establishTrackedBoundaryOwner = (node, sourceHost = "revision") => {
1709
+ const boundary = trackedBoundary(node);
1710
+ if (!boundary) return;
1711
+ flushCurrentInline();
1712
+ const { changeAttrs, info, key, outerWrapperCount, revisionAncestors, type } = boundary;
1713
+ const linkMark = sourceHost === "indexed-hyperlink" ? node.marks.find((mark) => mark.type.name === "hyperlink") : void 0;
1714
+ if (linkMark && currentTrackedChange?.type === "hyperlink" && currentTrackedChange.key === key && currentTrackedChange.hyperlinkKey === getLinkKey(linkMark)) return;
1715
+ if (!linkMark && currentTrackedChange?.type === "direct" && currentTrackedChange.key === key) return;
1716
+ const hyperlink = linkMark ? createIndexedHyperlink(linkMark) : void 0;
1717
+ const wrapper = createTrackedRunWrapper({
1718
+ type,
1719
+ info,
1720
+ ...hyperlink ? { child: hyperlink } : {},
1721
+ resolutionJoins: changeAttrs._docxResolutionJoins ?? void 0
1722
+ });
1723
+ revisionOuterWrapperCounts.set(wrapper, outerWrapperCount);
1724
+ revisionAncestorsByWrapper.set(wrapper, revisionAncestors);
1725
+ content.push(wrapper);
1726
+ if (hyperlink && linkMark) {
1727
+ currentTrackedChange = {
1728
+ type: "hyperlink",
1729
+ key,
1730
+ wrapper,
1731
+ hyperlink,
1732
+ hyperlinkKey: getLinkKey(linkMark)
1733
+ };
1734
+ return;
1735
+ }
1736
+ currentTrackedChange = {
1737
+ type: "direct",
1738
+ key,
1739
+ wrapper
1740
+ };
1741
+ };
1608
1742
  const syncCommentRanges = (node, offset) => {
1609
- const nodeCommentIds = getCommentMarkIds(node.marks);
1743
+ const nodeCommentIds = (node.type.name === "structuredField" && fieldCommentCoverage(expectFieldAttrs(node).fieldKind) === "children" || node.type.name === "sdt") && node.childCount > 0 ? getCommentMarkIds(node.child(0).marks) : getCommentMarkIds(node.marks);
1744
+ const nodeTrackedBoundary = trackedBoundary(node);
1745
+ const sourceCommentRangeBoundaries = precedingTrackedCommentRangeBoundaries;
1746
+ const nodeCommentRangeBoundaries = nodeTrackedBoundary?.changeAttrs._docxCommentRangeBoundaries;
1747
+ precedingTrackedCommentRangeBoundaries = nodeCommentRangeBoundaries;
1610
1748
  const toClose = [];
1611
1749
  for (const commentId of openedComments) {
1612
1750
  const lastOffset = commentLastOffset.get(commentId) ?? offset;
@@ -1616,21 +1754,60 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1616
1754
  for (const commentId of nodeCommentIds) if (!openedComments.has(commentId)) toOpen.push(commentId);
1617
1755
  if (toClose.length === 0 && toOpen.length === 0) return;
1618
1756
  flushCurrentInline();
1619
- currentTrackedChange = void 0;
1620
1757
  for (const commentId of byCommentId(toClose)) {
1621
- content.push({
1758
+ const fallbackOwner = nodeTrackedBoundary && currentTrackedChange?.type === "direct" && currentTrackedChange.key === nodeTrackedBoundary.key ? "revision" : "parent";
1759
+ const sourceOwnsBoundary = trackedCommentBoundaryOwner({
1760
+ boundaries: sourceCommentRangeBoundaries,
1761
+ type: "end",
1762
+ commentId,
1763
+ fallback: fallbackOwner
1764
+ }) === "revision";
1765
+ const closingBoundaryOwner = currentTrackedChange?.type === "direct" && sourceOwnsBoundary ? currentTrackedChange.wrapper.content : content;
1766
+ closingBoundaryOwner.push({
1622
1767
  type: "commentRangeEnd",
1623
1768
  id: commentId
1624
1769
  });
1625
1770
  openedComments.delete(commentId);
1771
+ if (closingBoundaryOwner === content) currentTrackedChange = void 0;
1626
1772
  }
1773
+ if (currentTrackedChange?.type === "hyperlink") currentTrackedChange = void 0;
1627
1774
  for (const commentId of byCommentId(toOpen)) {
1628
- content.push({
1775
+ const owner = trackedCommentBoundaryOwner({
1776
+ boundaries: nodeCommentRangeBoundaries,
1777
+ type: "start",
1778
+ commentId,
1779
+ fallback: nodeTrackedBoundary ? "revision" : "parent"
1780
+ });
1781
+ if (owner === "revision") establishTrackedBoundaryOwner(node);
1782
+ const openingBoundaryOwner = owner === "revision" && currentTrackedChange ? currentTrackedChange.wrapper.content : content;
1783
+ openingBoundaryOwner.push({
1629
1784
  type: "commentRangeStart",
1630
1785
  id: commentId
1631
1786
  });
1632
1787
  openedComments.add(commentId);
1788
+ if (openingBoundaryOwner === content) currentTrackedChange = void 0;
1789
+ }
1790
+ };
1791
+ const commentsAfterStructuredNode = (node, offset) => {
1792
+ const candidates = new Set(openedComments);
1793
+ for (const commentId of getCommentMarkIds(node.marks)) candidates.add(commentId);
1794
+ node.descendants((descendant) => {
1795
+ for (const commentId of getCommentMarkIds(descendant.marks)) candidates.add(commentId);
1796
+ return true;
1797
+ });
1798
+ const after = /* @__PURE__ */ new Set();
1799
+ for (const commentId of candidates) {
1800
+ const lastOffset = structuredCommentLastOffset.get(commentId);
1801
+ const paragraphOffsetBase = structuredCommentRangeScope?.paragraphOffsetBase ?? 0;
1802
+ if (lastOffset !== void 0 && lastOffset >= paragraphOffsetBase + offset + node.nodeSize) after.add(commentId);
1633
1803
  }
1804
+ return after;
1805
+ };
1806
+ const syncStructuredCommentExit = (node, offset) => {
1807
+ if (node.type.name !== "structuredField" && node.type.name !== "sdt" || node.childCount === 0) return;
1808
+ const finalCommentIds = node.type.name === "sdt" ? commentsAfterStructuredNode(node, offset) : getCommentMarkIds((fieldCommentCoverage(expectFieldAttrs(node).fieldKind) === "field" ? node : node.child(node.childCount - 1)).marks);
1809
+ openedComments.clear();
1810
+ for (const commentId of finalCommentIds) openedComments.add(commentId);
1634
1811
  };
1635
1812
  const flushEmptyHyperlinksThroughOffset = (offset) => {
1636
1813
  while (nextEmptyHyperlink < sortedEmptyHyperlinks.length) {
@@ -1677,78 +1854,157 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1677
1854
  }
1678
1855
  leadingRenderedPageBreakPending = false;
1679
1856
  enterWrapperGroup(node);
1680
- syncCommentRanges(node, offset);
1857
+ if (node.type.name !== "commentRangeBoundary" && (node.type.name !== "sdt" || node.childCount === 0)) syncCommentRanges(node, offset);
1858
+ const linkMark = node.marks.find((mark) => mark.type.name === "hyperlink");
1859
+ if (node.type.name === "commentRangeBoundary") {
1860
+ const { marker } = expectCommentRangeBoundaryAttrs(node);
1861
+ precedingTrackedCommentRangeBoundaries = trackedBoundary(node)?.changeAttrs._docxCommentRangeBoundaries;
1862
+ if (node.marks.some((mark) => mark.type.name === "insertion" || mark.type.name === "deletion")) {
1863
+ flushCurrentInline();
1864
+ establishTrackedBoundaryOwner(node, "indexed-hyperlink");
1865
+ if (currentTrackedChange?.type === "hyperlink") currentTrackedChange.hyperlink.children.push(marker);
1866
+ else if (currentTrackedChange) currentTrackedChange.wrapper.content.push(marker);
1867
+ else content.push(marker);
1868
+ } else if (linkMark) {
1869
+ currentTrackedChange = void 0;
1870
+ const linkKey = getLinkKey(linkMark);
1871
+ if (!currentHyperlink || currentHyperlinkKey !== linkKey) {
1872
+ flushCurrentInline();
1873
+ currentHyperlink = createIndexedHyperlink(linkMark);
1874
+ currentHyperlinkKey = linkKey;
1875
+ }
1876
+ currentHyperlink.children.push(marker);
1877
+ } else {
1878
+ flushCurrentInline();
1879
+ currentTrackedChange = void 0;
1880
+ content.push(marker);
1881
+ }
1882
+ if (marker.type === "commentRangeStart") openedComments.add(marker.id);
1883
+ else openedComments.delete(marker.id);
1884
+ return;
1885
+ }
1681
1886
  if (node.type.name === "commentReference") {
1682
- flushCurrentInline();
1683
- currentTrackedChange = void 0;
1684
- content.push({
1887
+ establishTrackedBoundaryOwner(node, "indexed-hyperlink");
1888
+ const reference = {
1685
1889
  type: "commentReference",
1686
1890
  id: expectCommentReferenceAttrs(node).commentId
1687
- });
1891
+ };
1892
+ const tracked = node.marks.some((mark) => mark.type.name === "insertion" || mark.type.name === "deletion");
1893
+ if (tracked && currentTrackedChange) {
1894
+ flushCurrentInline();
1895
+ if (currentTrackedChange.type === "hyperlink") currentTrackedChange.hyperlink.children.push(reference);
1896
+ else currentTrackedChange.wrapper.content.push(reference);
1897
+ } else if (linkMark && !tracked) {
1898
+ currentTrackedChange = void 0;
1899
+ const linkKey = getLinkKey(linkMark);
1900
+ if (!currentHyperlink || currentHyperlinkKey !== linkKey) {
1901
+ flushCurrentInline();
1902
+ currentHyperlink = createIndexedHyperlink(linkMark);
1903
+ currentHyperlinkKey = linkKey;
1904
+ }
1905
+ currentHyperlink.children.push(reference);
1906
+ } else {
1907
+ flushCurrentInline();
1908
+ currentTrackedChange = void 0;
1909
+ content.push(reference);
1910
+ }
1911
+ return;
1912
+ }
1913
+ if (node.type.name === "moveRangeBoundary") {
1914
+ const marker = { ...expectMoveRangeBoundaryAttrs(node) };
1915
+ const tracked = node.marks.some((mark) => mark.type.name === "insertion" || mark.type.name === "deletion");
1916
+ if (linkMark && !isHyperlinkContent(marker)) panic("A linked move boundary is not admitted by its hyperlink.");
1917
+ if (tracked) {
1918
+ establishTrackedBoundaryOwner(node, "indexed-hyperlink");
1919
+ if (currentTrackedChange?.type === "hyperlink") currentTrackedChange.hyperlink.children.push(marker);
1920
+ else if (currentTrackedChange) currentTrackedChange.wrapper.content.push(marker);
1921
+ else content.push(marker);
1922
+ } else if (linkMark) {
1923
+ currentTrackedChange = void 0;
1924
+ const linkKey = getLinkKey(linkMark);
1925
+ if (!currentHyperlink || currentHyperlinkKey !== linkKey) {
1926
+ flushCurrentInline();
1927
+ currentHyperlink = createIndexedHyperlink(linkMark);
1928
+ currentHyperlinkKey = linkKey;
1929
+ }
1930
+ currentHyperlink.children.push(marker);
1931
+ } else {
1932
+ flushCurrentInline();
1933
+ currentTrackedChange = void 0;
1934
+ content.push(marker);
1935
+ }
1688
1936
  return;
1689
1937
  }
1690
1938
  if (node.type.name === "rangeAnchor") {
1691
- flushCurrentInline();
1692
- currentTrackedChange = void 0;
1693
1939
  const { start, end } = expectRangeAnchorAttrs(node);
1694
- content.push({ ...start }, { ...end });
1940
+ if (linkMark && (!isHyperlinkContent(start) || !isHyperlinkContent(end))) panic("A linked range anchor must contain boundaries its hyperlink admits.");
1941
+ if (node.marks.some((mark) => mark.type.name === "insertion" || mark.type.name === "deletion")) {
1942
+ establishTrackedBoundaryOwner(node, "indexed-hyperlink");
1943
+ if (currentTrackedChange?.type === "hyperlink") currentTrackedChange.hyperlink.children.push({ ...start }, { ...end });
1944
+ else if (currentTrackedChange) currentTrackedChange.wrapper.content.push({ ...start }, { ...end });
1945
+ else content.push({ ...start }, { ...end });
1946
+ } else if (linkMark) {
1947
+ currentTrackedChange = void 0;
1948
+ const linkKey = getLinkKey(linkMark);
1949
+ if (!currentHyperlink || currentHyperlinkKey !== linkKey) {
1950
+ flushCurrentInline();
1951
+ currentHyperlink = createIndexedHyperlink(linkMark);
1952
+ currentHyperlinkKey = linkKey;
1953
+ }
1954
+ currentHyperlink.children.push({ ...start }, { ...end });
1955
+ } else {
1956
+ flushCurrentInline();
1957
+ currentTrackedChange = void 0;
1958
+ content.push({ ...start }, { ...end });
1959
+ }
1695
1960
  return;
1696
1961
  }
1697
- const linkMark = node.marks.find((m) => m.type.name === "hyperlink");
1698
1962
  const noteRefMark = node.marks.find((m) => m.type.name === "footnoteRef");
1699
1963
  const insertionMark = node.marks.find((m) => m.type.name === "insertion");
1700
1964
  const deletionMark = node.marks.find((m) => m.type.name === "deletion");
1701
1965
  if (!insertionMark && !deletionMark) currentTrackedChange = void 0;
1966
+ let anchorRun;
1702
1967
  if (node.type.name === "textBoxAnchor") {
1703
- flushCurrentInline();
1704
- currentTrackedChange = void 0;
1705
- if (!textBoxAnchorMarkers) return;
1968
+ if (!textBoxAnchorMarkers) {
1969
+ flushCurrentInline();
1970
+ currentTrackedChange = void 0;
1971
+ return;
1972
+ }
1706
1973
  const { anchorId } = expectTextBoxAnchorAttrs(node);
1974
+ if (textBoxAnchorMarkers.has(anchorId)) {
1975
+ flushCurrentInline();
1976
+ currentTrackedChange = void 0;
1977
+ return;
1978
+ }
1707
1979
  const marker = {
1708
1980
  type: "run",
1709
- content: []
1981
+ content: [{
1982
+ type: "preservedXml",
1983
+ xml: "",
1984
+ text: ""
1985
+ }]
1710
1986
  };
1711
- if (textBoxAnchorMarkers.has(anchorId)) return;
1987
+ const formatting = getAtomRunFormattingFromMarks(node.marks, formattingContext);
1988
+ if (formatting) marker.formatting = formatting;
1989
+ restoreRunRecord(marker, node.marks);
1712
1990
  textBoxAnchorMarkers.set(anchorId, marker);
1713
- const anchoredContent = linkMark ? createIndexedHyperlink(linkMark) : marker;
1714
- if (anchoredContent.type === "hyperlink") anchoredContent.children.push(marker);
1715
- const changeMark = insertionMark ?? deletionMark;
1716
- if (!changeMark) {
1717
- content.push(anchoredContent);
1718
- return;
1719
- }
1720
- const changeAttrs = expectTrackedChangeMarkAttrs(changeMark);
1721
- const info = {
1722
- id: changeAttrs.revisionId,
1723
- author: changeAttrs.author || "Unknown",
1724
- ...changeAttrs.date ? { date: changeAttrs.date } : {},
1725
- ...changeAttrs.utcDate ? { utcDate: {
1726
- attribute: DATE_UTC_ATTRIBUTE,
1727
- value: changeAttrs.utcDate
1728
- } } : {},
1729
- ...changeAttrs.initials ? { initials: changeAttrs.initials } : {}
1730
- };
1731
- let type;
1732
- if (insertionMark) type = changeAttrs.moveKind === "moveTo" ? "moveTo" : "insertion";
1733
- else type = changeAttrs.moveKind === "moveFrom" ? "moveFrom" : "deletion";
1734
- const wrapper = createTrackedRunWrapper({
1735
- type,
1736
- info,
1737
- child: anchoredContent,
1738
- resolutionJoins: changeAttrs._docxResolutionJoins ?? void 0
1739
- });
1740
- revisionOuterWrapperCounts.set(wrapper, changeAttrs._docxOuterWrapperCount ?? inlineWrapperStackOf(node).length);
1741
- revisionAncestorsByWrapper.set(wrapper, changeAttrs._docxRevisionAncestors ?? []);
1742
- content.push(wrapper);
1743
- return;
1991
+ anchorRun = marker;
1744
1992
  }
1745
1993
  if (insertionMark || deletionMark) {
1746
1994
  flushCurrentInline();
1747
- const changeMark = deletionMark ?? insertionMark;
1995
+ const deletionLayer = deletionMark ? trackedRevisionLayerOf(deletionMark, node) : void 0;
1996
+ const insertionAttrs = insertionMark ? expectTrackedChangeMarkAttrs(insertionMark) : void 0;
1997
+ const changeMark = deletionLayer !== void 0 && insertionAttrs?._docxRevisionAncestors?.some(({ revisionId, type }) => revisionId === deletionLayer.revisionId && type === deletionLayer.type) === true && insertionMark ? insertionMark : deletionMark ?? insertionMark;
1748
1998
  if (!changeMark) return;
1749
1999
  const changeAttrs = expectTrackedChangeMarkAttrs(changeMark);
2000
+ const runFormattingContext = changeMark === deletionMark && changeAttrs._historicalFormatting ? {
2001
+ ...formattingContext,
2002
+ inheritedFormatting: formattingContext.baseParagraphFormatting ?? formattingContext.inheritedFormatting,
2003
+ paragraphMarkFormatting: void 0,
2004
+ paragraphMarkPrecedesStyle: false
2005
+ } : formattingContext;
1750
2006
  const revisionAncestors = enclosingInsertionAncestors({
1751
- insertionMark: deletionMark ? insertionMark : void 0,
2007
+ insertionMark: changeMark === deletionMark ? insertionMark : void 0,
1752
2008
  ancestors: changeAttrs._docxRevisionAncestors ?? [],
1753
2009
  node
1754
2010
  });
@@ -1803,8 +2059,8 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1803
2059
  currentTrackedChange.hyperlink.children.push(createPreservedInline(node));
1804
2060
  return;
1805
2061
  }
1806
- const run = createTrackedChangeRun({
1807
- ...formattingContext,
2062
+ const run = anchorRun ?? createTrackedChangeRun({
2063
+ ...runFormattingContext,
1808
2064
  marks: otherMarks,
1809
2065
  node
1810
2066
  });
@@ -1830,10 +2086,6 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1830
2086
  currentTrackedChange.wrapper.content.push(bookmarkMarkerFromAttrs(expectBookmarkBoundaryAttrs(node)));
1831
2087
  return;
1832
2088
  }
1833
- if (node.type.name === "moveRangeBoundary") {
1834
- currentTrackedChange.wrapper.content.push({ ...expectMoveRangeBoundaryAttrs(node) });
1835
- return;
1836
- }
1837
2089
  if (node.type.name === "field" || node.type.name === "structuredField") {
1838
2090
  currentTrackedChange.wrapper.content.push(createFieldFromNode(node, {
1839
2091
  ...formattingContext,
@@ -1850,29 +2102,23 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1850
2102
  currentTrackedChange.wrapper.content.push(createPreservedInline(node));
1851
2103
  return;
1852
2104
  }
1853
- const run = createTrackedChangeRun({
1854
- ...formattingContext,
2105
+ const run = anchorRun ?? createTrackedChangeRun({
2106
+ ...runFormattingContext,
1855
2107
  marks: otherMarks,
1856
2108
  node
1857
2109
  });
1858
2110
  if (run) appendRunToTrackedWrapper(currentTrackedChange.wrapper, run, node, sourceRunOwners);
1859
2111
  return;
1860
2112
  }
1861
- const ownedRun = linkMark || runIdentityId(node) === void 0 ? null : createTrackedChangeRun({
2113
+ const ownedRun = linkMark ? null : anchorRun ?? (runIdentityId(node) === void 0 ? null : createTrackedChangeRun({
1862
2114
  ...formattingContext,
1863
2115
  marks: node.marks,
1864
2116
  node
1865
- });
2117
+ }));
1866
2118
  if (ownedRun) {
1867
2119
  appendDirectRun(node, ownedRun, node.isText);
1868
2120
  return;
1869
2121
  }
1870
- if (node.type.name === "moveRangeBoundary") {
1871
- flushCurrentInline();
1872
- currentTrackedChange = void 0;
1873
- content.push({ ...expectMoveRangeBoundaryAttrs(node) });
1874
- return;
1875
- }
1876
2122
  if (noteRefMark && !linkMark) {
1877
2123
  flushCurrentInline();
1878
2124
  content.push(createNoteReferenceRun(noteRefMark, node.marks, formattingContext));
@@ -1885,7 +2131,8 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1885
2131
  currentHyperlink = createIndexedHyperlink(linkMark);
1886
2132
  currentHyperlinkKey = linkKey;
1887
2133
  }
1888
- addNodeToHyperlink({
2134
+ if (anchorRun) appendRunToHyperlink(currentHyperlink, anchorRun, node, sourceRunOwners);
2135
+ else addNodeToHyperlink({
1889
2136
  ...formattingContext,
1890
2137
  hyperlink: currentHyperlink,
1891
2138
  node,
@@ -1944,9 +2191,19 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1944
2191
  marks: node.marks,
1945
2192
  textBoxAnchorMarkers
1946
2193
  }));
2194
+ syncStructuredCommentExit(node, offset);
1947
2195
  } else if (node.type.name === "sdt") {
1948
2196
  flushCurrentInline();
1949
- content.push(createInlineSdtFromNode(node, textBoxAnchorMarkers, formattingContext));
2197
+ content.push(createInlineSdtFromNode({
2198
+ node,
2199
+ paragraphOffsetBase: (structuredCommentRangeScope?.paragraphOffsetBase ?? 0) + offset + 1,
2200
+ lastOffsetByCommentId: structuredCommentLastOffset,
2201
+ ...textBoxAnchorMarkers === void 0 ? {} : { textBoxAnchorMarkers },
2202
+ formattingContext,
2203
+ openedBefore: openedComments,
2204
+ openedAfter: commentsAfterStructuredNode(node, offset)
2205
+ }));
2206
+ syncStructuredCommentExit(node, offset);
1950
2207
  } else if (node.type.name === "math") {
1951
2208
  flushCurrentInline();
1952
2209
  content.push(createMathFromNode(node));
@@ -1976,10 +2233,18 @@ function extractParagraphContent(originalParagraph, _documentCounts, emptyHyperl
1976
2233
  });
1977
2234
  flushEmptyHyperlinksThroughOffset(Number.POSITIVE_INFINITY);
1978
2235
  flushCurrentInline();
1979
- for (const commentId of byCommentId(openedComments)) content.push({
1980
- type: "commentRangeEnd",
1981
- id: commentId
1982
- });
2236
+ for (const commentId of byCommentId(openedComments)) {
2237
+ if (structuredCommentRangeScope?.openedAfter.has(commentId)) continue;
2238
+ (currentTrackedChange?.type === "direct" && trackedCommentBoundaryOwner({
2239
+ boundaries: precedingTrackedCommentRangeBoundaries,
2240
+ type: "end",
2241
+ commentId,
2242
+ fallback: "parent"
2243
+ }) === "revision" ? currentTrackedChange.wrapper.content : content).push({
2244
+ type: "commentRangeEnd",
2245
+ id: commentId
2246
+ });
2247
+ }
1983
2248
  return nestInlineWrapperGroups(content, wrapperGroups, sourceHyperlinkIndices, revisionOuterWrapperCounts, revisionAncestorsByWrapper);
1984
2249
  }
1985
2250
  function createTrackedChangeRun({ baseParagraphFormatting, inheritedFormatting, marks, node, paragraphMarkFormatting, paragraphMarkPrecedesStyle, styleResolver }) {
@@ -2080,16 +2345,7 @@ function buildDocumentTrackedChangeCounts(pmDoc) {
2080
2345
  * Create a unique key for a link mark
2081
2346
  */
2082
2347
  function getLinkKey(mark) {
2083
- const attrs = expectHyperlinkMarkAttrs(mark);
2084
- return [
2085
- attrs.href,
2086
- attrs.rId ?? "",
2087
- attrs.tooltip ?? "",
2088
- attrs.target ?? "",
2089
- attrs.history === void 0 ? "" : String(attrs.history),
2090
- attrs.docLocation ?? "",
2091
- attrs._docxHyperlinkIndex ?? ""
2092
- ].join("\0");
2348
+ return JSON.stringify(expectHyperlinkMarkAttrs(mark));
2093
2349
  }
2094
2350
  /**
2095
2351
  * Create a unique key for a set of marks (excluding hyperlink)
@@ -2120,6 +2376,7 @@ function createHyperlink(linkMark) {
2120
2376
  const hyperlink = {
2121
2377
  type: "hyperlink",
2122
2378
  href,
2379
+ ...attrs.anchor === void 0 ? {} : { anchor: attrs.anchor },
2123
2380
  ...metadata,
2124
2381
  children: []
2125
2382
  };
@@ -2546,7 +2803,7 @@ function createFieldFromNode(node, { baseParagraphFormatting, inheritedFormattin
2546
2803
  }],
2547
2804
  ...formatting && Object.keys(formatting).length > 0 ? { formatting } : {}
2548
2805
  };
2549
- if (marks && node.type.name === "field") restoreRunRecord(displayRun, marks);
2806
+ if (marks) restoreRunRecord(displayRun, marks);
2550
2807
  const fieldContent = extractedContent.length > 0 ? synchronizeFieldDisplayText(extractedContent, displayText, displayRun) : [];
2551
2808
  const fallbackFieldContent = displayText ? [displayRun] : reconcileEmptyFieldResultRuns(attrs._docxEmptyResultRuns, displayRun);
2552
2809
  if (attrs.fieldKind === "complex") {
@@ -2690,12 +2947,15 @@ const hoistUniformRevision = (sdt, enclosingIds) => {
2690
2947
  }]
2691
2948
  };
2692
2949
  };
2693
- /**
2694
- * Create an InlineSdt from a PM sdt node
2695
- */
2696
- function createInlineSdtFromNode(node, textBoxAnchorMarkers, formattingContext) {
2697
- const properties = sdtPropertiesFromAttrs(expectSdtAttrs(node));
2698
- const content = extractParagraphContent(node, void 0, void 0, textBoxAnchorMarkers, false, formattingContext).filter(isInlineSdtContent);
2950
+ function createInlineSdtFromNode({ node, paragraphOffsetBase, lastOffsetByCommentId, textBoxAnchorMarkers, formattingContext, openedBefore, openedAfter }) {
2951
+ const attrs = expectSdtAttrs(node);
2952
+ const properties = sdtPropertiesFromAttrs(attrs);
2953
+ const content = extractParagraphContent(node, void 0, void 0, textBoxAnchorMarkers, false, formattingContext, node.childCount === 0 ? void 0 : {
2954
+ openedBefore,
2955
+ openedAfter,
2956
+ paragraphOffsetBase,
2957
+ lastOffsetByCommentId
2958
+ }).filter(isInlineSdtContent);
2699
2959
  return hoistUniformRevision({
2700
2960
  type: "inlineSdt",
2701
2961
  properties,
@@ -2832,13 +3092,23 @@ const drawingFromImageAttrs = (image, attrs) => {
2832
3092
  };
2833
3093
  const shapeContentFromNode = ({ node, shape, captured }) => {
2834
3094
  const xml = unchangedAlternateContentXml(node, captured);
2835
- return xml === void 0 ? {
3095
+ if (xml !== void 0) return {
3096
+ type: "shape",
3097
+ shape,
3098
+ alternateContent: refingerprintShapeAlternateContent(shape, xml)
3099
+ };
3100
+ const editedCapture = editedAlternateContent(node, captured);
3101
+ return editedCapture?.shapeFingerprint === void 0 || editedCapture.structureFingerprint === void 0 ? {
2836
3102
  type: "shape",
2837
3103
  shape
2838
3104
  } : {
2839
3105
  type: "shape",
2840
3106
  shape,
2841
- alternateContent: refingerprintShapeAlternateContent(shape, xml)
3107
+ alternateContent: {
3108
+ verbatimXml: editedCapture.xml,
3109
+ verbatimFingerprint: editedCapture.shapeFingerprint,
3110
+ verbatimStructureFingerprint: editedCapture.structureFingerprint
3111
+ }
2842
3112
  };
2843
3113
  };
2844
3114
  /**
@@ -2960,16 +3230,18 @@ function convertPMTable(node, documentCounts, styleResolver = null) {
2960
3230
  const formatting = tableAttrsToFormatting(attrs) || void 0;
2961
3231
  if (!formatting?.borders && !attrs._originalFormatting) {
2962
3232
  const inferredBorders = inferTableBorders(rows);
2963
- if (inferredBorders) if (formatting) formatting.borders = inferredBorders;
2964
- else {
2965
- const minTable = {
2966
- type: "table",
2967
- formatting: { borders: inferredBorders },
2968
- rows
2969
- };
2970
- if (attrs.columnWidths) minTable.columnWidths = attrs.columnWidths;
2971
- restoreCarriedTableAttrs(minTable, attrs);
2972
- return minTable;
3233
+ if (inferredBorders) {
3234
+ if (formatting) formatting.borders = inferredBorders;
3235
+ else {
3236
+ const minTable = {
3237
+ type: "table",
3238
+ formatting: { borders: inferredBorders },
3239
+ rows
3240
+ };
3241
+ if (attrs.columnWidths) minTable.columnWidths = attrs.columnWidths;
3242
+ restoreCarriedTableAttrs(minTable, attrs);
3243
+ return minTable;
3244
+ }
2973
3245
  }
2974
3246
  }
2975
3247
  const table = {
@@ -3044,25 +3316,37 @@ function tableAttrsToFormatting(attrs) {
3044
3316
  if (attrs._originalFormatting) {
3045
3317
  const orig = attrs._originalFormatting;
3046
3318
  const result = { ...orig };
3047
- if (attrs.styleId !== (orig.styleId ?? void 0)) if (attrs.styleId) result.styleId = attrs.styleId;
3048
- else delete result.styleId;
3049
- if (attrs.justification !== (orig.justification ?? void 0)) if (attrs.justification) result.justification = attrs.justification;
3050
- else delete result.justification;
3051
- if (attrs.floating !== (orig.floating ?? void 0)) if (attrs.floating) result.floating = attrs.floating;
3052
- else delete result.floating;
3053
- if (attrs.look !== (orig.look ?? void 0)) if (attrs.look) result.look = attrs.look;
3054
- else delete result.look;
3055
- if (attrs.borders !== (orig.borders ?? void 0)) if (attrs.borders) result.borders = attrs.borders;
3056
- else delete result.borders;
3319
+ if (attrs.styleId !== (orig.styleId ?? void 0)) {
3320
+ if (attrs.styleId) result.styleId = attrs.styleId;
3321
+ else delete result.styleId;
3322
+ }
3323
+ if (attrs.justification !== (orig.justification ?? void 0)) {
3324
+ if (attrs.justification) result.justification = attrs.justification;
3325
+ else delete result.justification;
3326
+ }
3327
+ if (attrs.floating !== (orig.floating ?? void 0)) {
3328
+ if (attrs.floating) result.floating = attrs.floating;
3329
+ else delete result.floating;
3330
+ }
3331
+ if (attrs.look !== (orig.look ?? void 0)) {
3332
+ if (attrs.look) result.look = attrs.look;
3333
+ else delete result.look;
3334
+ }
3335
+ if (attrs.borders !== (orig.borders ?? void 0)) {
3336
+ if (attrs.borders) result.borders = attrs.borders;
3337
+ else delete result.borders;
3338
+ }
3057
3339
  const tableWidth = attrs.width;
3058
3340
  const tableWidthType = attrs.widthType;
3059
3341
  const origWidthVal = orig.width?.value;
3060
3342
  const origWidthType = orig.width?.type;
3061
- if (tableWidth !== origWidthVal || tableWidthType !== origWidthType) if (tableWidth !== void 0 || tableWidthType !== void 0) result.width = {
3062
- value: tableWidth ?? 0,
3063
- type: tableWidthType ?? "dxa"
3064
- };
3065
- else delete result.width;
3343
+ if (tableWidth !== origWidthVal || tableWidthType !== origWidthType) {
3344
+ if (tableWidth !== void 0 || tableWidthType !== void 0) result.width = {
3345
+ value: tableWidth ?? 0,
3346
+ type: tableWidthType ?? "dxa"
3347
+ };
3348
+ else delete result.width;
3349
+ }
3066
3350
  if (attrs.cellMargins && !sameResolvedValue(attrs.cellMargins, attrs._resolvedCellMargins)) result.cellMargins = buildCellMarginsFromAttrs(attrs.cellMargins);
3067
3351
  return result;
3068
3352
  }
@@ -3207,17 +3491,25 @@ function tableRowAttrsToFormatting(attrs) {
3207
3491
  if (attrs._originalFormatting) {
3208
3492
  const orig = attrs._originalFormatting;
3209
3493
  const result = { ...orig };
3210
- if (attrs.height !== (orig.height?.value ?? void 0)) if (attrs.height) result.height = {
3211
- value: attrs.height,
3212
- type: "dxa"
3213
- };
3214
- else delete result.height;
3215
- if (attrs.heightRule !== (orig.heightRule ?? void 0)) if (attrs.heightRule) result.heightRule = attrs.heightRule;
3216
- else delete result.heightRule;
3217
- if (attrs.isHeader !== (orig.header ?? void 0)) if (attrs.isHeader) result.header = attrs.isHeader;
3218
- else delete result.header;
3219
- if (attrs.hidden !== orig.hidden) if (attrs.hidden === void 0) delete result.hidden;
3220
- else result.hidden = attrs.hidden;
3494
+ if (attrs.height !== (orig.height?.value ?? void 0)) {
3495
+ if (attrs.height) result.height = {
3496
+ value: attrs.height,
3497
+ type: "dxa"
3498
+ };
3499
+ else delete result.height;
3500
+ }
3501
+ if (attrs.heightRule !== (orig.heightRule ?? void 0)) {
3502
+ if (attrs.heightRule) result.heightRule = attrs.heightRule;
3503
+ else delete result.heightRule;
3504
+ }
3505
+ if (attrs.isHeader !== (orig.header ?? void 0)) {
3506
+ if (attrs.isHeader) result.header = attrs.isHeader;
3507
+ else delete result.header;
3508
+ }
3509
+ if (attrs.hidden !== orig.hidden) {
3510
+ if (attrs.hidden === void 0) delete result.hidden;
3511
+ else result.hidden = attrs.hidden;
3512
+ }
3221
3513
  return result;
3222
3514
  }
3223
3515
  if (!(attrs.height || attrs.isHeader || attrs.hidden !== void 0)) return;
@@ -3267,6 +3559,9 @@ function convertPMTableCell(node, documentCounts, styleResolver = null) {
3267
3559
  } else if (contentNode.type.name === "blockBookmarkBoundary") {
3268
3560
  content.push(blockBookmarkMarker(contentNode));
3269
3561
  previousStandaloneTextBox = null;
3562
+ } else if (contentNode.type.name === "blockMoveRangeBoundary") {
3563
+ content.push({ ...expectMoveRangeBoundaryAttrs(contentNode) });
3564
+ previousStandaloneTextBox = null;
3270
3565
  }
3271
3566
  });
3272
3567
  removeUnresolvedTextBoxAnchors(content, textBoxAnchorMarkers);
@@ -3318,13 +3613,17 @@ function tableCellAttrsToFormatting(attrs) {
3318
3613
  const authoredWidth = attrs._authoredWidth;
3319
3614
  if (authoredWidth) result.width = authoredWidth;
3320
3615
  else delete result.width;
3321
- if (attrs.verticalAlign !== (orig.verticalAlign ?? void 0)) if (attrs.verticalAlign) result.verticalAlign = attrs.verticalAlign;
3322
- else delete result.verticalAlign;
3616
+ if (attrs.verticalAlign !== (orig.verticalAlign ?? void 0)) {
3617
+ if (attrs.verticalAlign) result.verticalAlign = attrs.verticalAlign;
3618
+ else delete result.verticalAlign;
3619
+ }
3323
3620
  if (backgroundChanged) result.shading = cellShadingFromAttrs(attrs);
3324
3621
  if (attrs.borders && !sameResolvedValue(attrs.borders, attrs._resolvedBorders)) result.borders = attrs.borders;
3325
3622
  if (attrs.margins && !sameResolvedValue(attrs.margins, attrs._resolvedMargins)) result.margins = buildCellMarginsFromAttrs(attrs.margins);
3326
- if (attrs.textDirection !== (orig.textDirection ?? void 0)) if (attrs.textDirection) result.textDirection = attrs.textDirection;
3327
- else delete result.textDirection;
3623
+ if (attrs.textDirection !== (orig.textDirection ?? void 0)) {
3624
+ if (attrs.textDirection) result.textDirection = attrs.textDirection;
3625
+ else delete result.textDirection;
3626
+ }
3328
3627
  return Object.keys(result).length > 0 ? result : void 0;
3329
3628
  }
3330
3629
  const authoredWidth = attrs._authoredWidth;
@@ -3372,6 +3671,11 @@ function convertPMTextBox(node, styleResolver = null) {
3372
3671
  else if (child.type.name === "table") childBlocks.push(convertPMTable(child, void 0, styleResolver));
3373
3672
  });
3374
3673
  const textBodyContent = projectTextBoxBodyContent(attrs._docxTextBodyContentState, childBlocks);
3674
+ const margins = {};
3675
+ if (typeof attrs.marginTop === "number") margins.top = emuFromPixels(attrs.marginTop, "marginTop", authoredEmu, emuToPixels);
3676
+ if (typeof attrs.marginBottom === "number") margins.bottom = emuFromPixels(attrs.marginBottom, "marginBottom", authoredEmu, emuToPixels);
3677
+ if (typeof attrs.marginLeft === "number") margins.left = emuFromPixels(attrs.marginLeft, "marginLeft", authoredEmu, emuToPixels);
3678
+ if (typeof attrs.marginRight === "number") margins.right = emuFromPixels(attrs.marginRight, "marginRight", authoredEmu, emuToPixels);
3375
3679
  const shape = {
3376
3680
  type: "shape",
3377
3681
  shapeType: "textBox",
@@ -3385,14 +3689,7 @@ function convertPMTextBox(node, styleResolver = null) {
3385
3689
  ...attrs.autoFit !== void 0 ? { autoFit: attrs.autoFit } : {},
3386
3690
  ...attrs.textWrap !== void 0 ? { textWrap: attrs.textWrap } : {},
3387
3691
  ...verticalAlign !== void 0 ? { anchor: verticalAlign } : {},
3388
- margins: (() => {
3389
- const m = {};
3390
- if (typeof attrs.marginTop === "number") m.top = emuFromPixels(attrs.marginTop, "marginTop", authoredEmu, emuToPixels);
3391
- if (typeof attrs.marginBottom === "number") m.bottom = emuFromPixels(attrs.marginBottom, "marginBottom", authoredEmu, emuToPixels);
3392
- if (typeof attrs.marginLeft === "number") m.left = emuFromPixels(attrs.marginLeft, "marginLeft", authoredEmu, emuToPixels);
3393
- if (typeof attrs.marginRight === "number") m.right = emuFromPixels(attrs.marginRight, "marginRight", authoredEmu, emuToPixels);
3394
- return m;
3395
- })()
3692
+ ...Object.keys(margins).length > 0 ? { margins } : {}
3396
3693
  }
3397
3694
  };
3398
3695
  if (attrs.textBoxId) shape.id = attrs.textBoxId;