@stll/folio-core 0.61.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 (1335) 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 +160 -59
  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 +8 -8
  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 +22 -13
  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 +147 -104
  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 +60 -15
  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 +61 -36
  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 +32 -17
  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/ar.gen.js +1 -0
  520. package/dist/i18n/messages/catalogs.gen.d.ts +19 -3
  521. package/dist/i18n/messages/catalogs.gen.js +17 -0
  522. package/dist/i18n/messages/cs.gen.d.ts +2 -2
  523. package/dist/i18n/messages/cs.gen.js +1 -0
  524. package/dist/i18n/messages/de.gen.d.ts +2 -2
  525. package/dist/i18n/messages/de.gen.js +1 -0
  526. package/dist/i18n/messages/en.gen.d.ts +2 -2
  527. package/dist/i18n/messages/en.gen.js +1 -0
  528. package/dist/i18n/messages/es.gen.d.ts +2 -2
  529. package/dist/i18n/messages/es.gen.js +1 -0
  530. package/dist/i18n/messages/et.gen.d.ts +2 -2
  531. package/dist/i18n/messages/et.gen.js +1 -0
  532. package/dist/i18n/messages/fr.gen.d.ts +2 -2
  533. package/dist/i18n/messages/fr.gen.js +1 -0
  534. package/dist/i18n/messages/he.gen.d.ts +2 -2
  535. package/dist/i18n/messages/he.gen.js +1 -0
  536. package/dist/i18n/messages/hi.gen.d.ts +2 -2
  537. package/dist/i18n/messages/hi.gen.js +1 -0
  538. package/dist/i18n/messages/hu.gen.d.ts +2 -2
  539. package/dist/i18n/messages/hu.gen.js +1 -0
  540. package/dist/i18n/messages/locales.d.ts +3 -4
  541. package/dist/i18n/messages/lt.gen.d.ts +2 -2
  542. package/dist/i18n/messages/lt.gen.js +1 -0
  543. package/dist/i18n/messages/lv.gen.d.ts +2 -2
  544. package/dist/i18n/messages/lv.gen.js +1 -0
  545. package/dist/i18n/messages/messages.gen.d.ts +1 -0
  546. package/dist/i18n/messages/pl.gen.d.ts +2 -2
  547. package/dist/i18n/messages/pl.gen.js +1 -0
  548. package/dist/i18n/messages/pt-BR.gen.d.ts +2 -2
  549. package/dist/i18n/messages/pt-BR.gen.js +1 -0
  550. package/dist/i18n/messages/sk.gen.d.ts +2 -2
  551. package/dist/i18n/messages/sk.gen.js +1 -0
  552. package/dist/i18n/messages/tr.gen.d.ts +2 -2
  553. package/dist/i18n/messages/tr.gen.js +1 -0
  554. package/dist/i18n/messages/zh-CN.gen.d.ts +2 -2
  555. package/dist/i18n/messages/zh-CN.gen.js +1 -0
  556. package/dist/i18n/messages.d.ts +4 -4
  557. package/dist/internal/acceptedBlockProjection.d.ts +2 -3
  558. package/dist/internal/acceptedBlockProjection.js +5 -1
  559. package/dist/internal/compare/inline-presentation.d.ts +4 -4
  560. package/dist/internal/headlessRevisionResolutionGuard.d.ts +2 -3
  561. package/dist/internal/indexedPositionMap.d.ts +2 -3
  562. package/dist/internal/noteMarkerAttrs.d.ts +3 -4
  563. package/dist/internal/pageBreakRunDescendantIndex.d.ts +3 -4
  564. package/dist/internal/pageBreakRunPartition.d.ts +4 -4
  565. package/dist/internal/pageBreakRunSourceDescendantIndex.d.ts +4 -5
  566. package/dist/internal/pageBreakRunSourceDescendantIndex.js +5 -1
  567. package/dist/internal/paragraphFormattingSerialization.d.ts +6 -6
  568. package/dist/internal/paragraphFormattingSerialization.js +3 -1
  569. package/dist/internal/prosemirrorAttrBoundary.d.ts +9 -10
  570. package/dist/internal/prosemirrorAttrBoundary.js +2 -1
  571. package/dist/internal/revisionResolutionEdits.d.ts +2 -2
  572. package/dist/internal/revisionResolutionInline.d.ts +4 -3
  573. package/dist/internal/revisionResolutionInline.js +69 -48
  574. package/dist/internal/revisionResolutionStep.d.ts +3 -3
  575. package/dist/internal/revisionResolutionTracking.d.ts +2 -2
  576. package/dist/internal/revisionResolutionTracking.js +3 -3
  577. package/dist/internal/sectionEndpointResolution.d.ts +5 -5
  578. package/dist/internal/sectionReferenceResolution.d.ts +6 -7
  579. package/dist/internal/wholeStoryRevisionResolution.d.ts +6 -4
  580. package/dist/internal/wholeStoryRevisionResolution.js +168 -52
  581. package/dist/layout-bridge/cellSelectionHighlight.d.ts +2 -3
  582. package/dist/layout-bridge/convert/endnoteLayout.d.ts +9 -9
  583. package/dist/layout-bridge/convert/endnoteLayout.js +3 -4
  584. package/dist/layout-bridge/convert/fixedTableColumnWidths.d.ts +2 -3
  585. package/dist/layout-bridge/convert/flowBlockPostprocessing.d.ts +5 -6
  586. package/dist/layout-bridge/convert/flowBorders.d.ts +3 -4
  587. package/dist/layout-bridge/convert/flowConversionShared.d.ts +9 -7
  588. package/dist/layout-bridge/convert/footnoteLayout.d.ts +14 -14
  589. package/dist/layout-bridge/convert/footnoteLayout.js +10 -0
  590. package/dist/layout-bridge/convert/headerFooterLayout.d.ts +13 -12
  591. package/dist/layout-bridge/convert/headerFooterLayout.js +10 -4
  592. package/dist/layout-bridge/convert/imageConversion.d.ts +6 -7
  593. package/dist/layout-bridge/convert/listMarkers.d.ts +9 -9
  594. package/dist/layout-bridge/convert/markupViewFlow.d.ts +3 -3
  595. package/dist/layout-bridge/convert/noteReferences.d.ts +2 -3
  596. package/dist/layout-bridge/convert/pageBreakSplitting.d.ts +4 -4
  597. package/dist/layout-bridge/convert/pageBreakSplitting.js +4 -0
  598. package/dist/layout-bridge/convert/paragraphAttrs.d.ts +2 -2
  599. package/dist/layout-bridge/convert/paragraphAttrs.js +18 -11
  600. package/dist/layout-bridge/convert/paragraphConversion.d.ts +4 -5
  601. package/dist/layout-bridge/convert/paragraphConversion.js +9 -2
  602. package/dist/layout-bridge/convert/paragraphFrames.d.ts +2 -2
  603. package/dist/layout-bridge/convert/paragraphFrames.js +1 -1
  604. package/dist/layout-bridge/convert/paragraphMarkFormatting.d.ts +3 -4
  605. package/dist/layout-bridge/convert/paragraphRuns.d.ts +3 -4
  606. package/dist/layout-bridge/convert/paragraphRuns.js +35 -14
  607. package/dist/layout-bridge/convert/runFormattingMerge.d.ts +5 -5
  608. package/dist/layout-bridge/convert/runFormattingMerge.js +1 -0
  609. package/dist/layout-bridge/convert/runMarkFormatting.d.ts +2 -3
  610. package/dist/layout-bridge/convert/runMarkFormatting.js +12 -4
  611. package/dist/layout-bridge/convert/sectionBoundaries.d.ts +6 -6
  612. package/dist/layout-bridge/convert/tableConversion.d.ts +3 -4
  613. package/dist/layout-bridge/convert/tableConversion.js +1 -1
  614. package/dist/layout-bridge/convert/templatePreviewFlow.d.ts +6 -7
  615. package/dist/layout-bridge/convert/textBoxFill.d.ts +3 -4
  616. package/dist/layout-bridge/convert/textFormattingConversion.d.ts +8 -7
  617. package/dist/layout-bridge/convert/textFormattingConversion.js +10 -1
  618. package/dist/layout-bridge/convert/toFlowBlocks.d.ts +3 -3
  619. package/dist/layout-bridge/convert/toFlowBlocks.js +19 -11
  620. package/dist/layout-bridge/convert/wrapEditorViewAsSurface.d.ts +3 -4
  621. package/dist/layout-bridge/dom/clickToPositionDom.d.ts +12 -13
  622. package/dist/layout-bridge/dom/clickToPositionDom.js +30 -4
  623. package/dist/layout-bridge/dom/findBodyPmSpans.d.ts +5 -6
  624. package/dist/layout-bridge/dom/findHfPmSpans.d.ts +10 -11
  625. package/dist/layout-bridge/dom/imeCaretAnchor.d.ts +3 -3
  626. package/dist/layout-bridge/dom/noteStoryDom.d.ts +2 -3
  627. package/dist/layout-bridge/dom/textStreamDom.d.ts +16 -9
  628. package/dist/layout-bridge/dom/textStreamDom.js +18 -3
  629. package/dist/layout-bridge/engine/clickToPosition.d.ts +8 -9
  630. package/dist/layout-bridge/engine/clickToPosition.js +77 -94
  631. package/dist/layout-bridge/engine/hitTest.d.ts +18 -19
  632. package/dist/layout-bridge/engine/hitTest.js +2 -1
  633. package/dist/layout-bridge/engine/linePmRange.d.ts +7 -0
  634. package/dist/layout-bridge/engine/linePmRange.js +34 -0
  635. package/dist/layout-bridge/engine/selectionRects.d.ts +7 -8
  636. package/dist/layout-bridge/engine/selectionRects.js +53 -77
  637. package/dist/layout-bridge/headerFooterLayout.d.ts +4 -5
  638. package/dist/layout-bridge/measuring/measureBlocksPipeline.d.ts +2 -3
  639. package/dist/layout-bridge/sectionColumns.d.ts +2 -3
  640. package/dist/layout-bridge/tableInsertHover.d.ts +6 -7
  641. package/dist/layout-engine/anchorLayoutInCellCompatibility.d.ts +2 -3
  642. package/dist/layout-engine/footnoteColumnReflow.d.ts +2 -2
  643. package/dist/layout-engine/headerFooterRefs.d.ts +2 -3
  644. package/dist/layout-engine/imageLayout.d.ts +2 -3
  645. package/dist/layout-engine/index.d.ts +3 -3
  646. package/dist/layout-engine/index.js +10 -7
  647. package/dist/layout-engine/justificationCompatibility.d.ts +2 -3
  648. package/dist/layout-engine/keep-together.d.ts +7 -8
  649. package/dist/layout-engine/keep-together.js +1 -1
  650. package/dist/layout-engine/layoutFlowShared.d.ts +3 -4
  651. package/dist/layout-engine/layoutInstrumentation.d.ts +18 -19
  652. package/dist/layout-engine/lineFlow.d.ts +4 -5
  653. package/dist/layout-engine/measure/advanceComposition.d.ts +8 -8
  654. package/dist/layout-engine/measure/advanceComposition.js +24 -5
  655. package/dist/layout-engine/measure/automaticTextSpacing.d.ts +36 -0
  656. package/dist/layout-engine/measure/automaticTextSpacing.js +178 -0
  657. package/dist/layout-engine/measure/cache.d.ts +22 -22
  658. package/dist/layout-engine/measure/cache.js +50 -14
  659. package/dist/layout-engine/measure/clampFloatingWrapMargins.d.ts +2 -3
  660. package/dist/layout-engine/measure/complexScriptFormatting.d.ts +5 -5
  661. package/dist/layout-engine/measure/crossRunWords.d.ts +8 -8
  662. package/dist/layout-engine/measure/crossRunWords.js +9 -4
  663. package/dist/layout-engine/measure/effectiveLineBreakPolicy.d.ts +3 -3
  664. package/dist/layout-engine/measure/effectiveLineBreakPolicy.js +3 -1
  665. package/dist/layout-engine/measure/featureFlags.d.ts +4 -5
  666. package/dist/layout-engine/measure/floatingLineClearance.d.ts +3 -4
  667. package/dist/layout-engine/measure/floatingTablePosition.d.ts +3 -3
  668. package/dist/layout-engine/measure/floatingZones.d.ts +11 -10
  669. package/dist/layout-engine/measure/font-metrics.worker.d.ts +3 -4
  670. package/dist/layout-engine/measure/hyperlinkInstance.d.ts +3 -4
  671. package/dist/layout-engine/measure/hyphenationDictionaries.d.ts +15 -15
  672. package/dist/layout-engine/measure/hyphenationDictionaries.js +4 -4
  673. package/dist/layout-engine/measure/hyphenationPreload.d.ts +2 -3
  674. package/dist/layout-engine/measure/inlineObjectMetrics.d.ts +3 -4
  675. package/dist/layout-engine/measure/justification.d.ts +7 -7
  676. package/dist/layout-engine/measure/lineBreakProvider.d.ts +16 -11
  677. package/dist/layout-engine/measure/lineBreakProvider.js +29 -4
  678. package/dist/layout-engine/measure/lineBreaks.d.ts +7 -8
  679. package/dist/layout-engine/measure/lineBreaks.js +5 -2
  680. package/dist/layout-engine/measure/lineFitting.d.ts +11 -11
  681. package/dist/layout-engine/measure/lineFitting.js +17 -6
  682. package/dist/layout-engine/measure/lineTypography.d.ts +7 -8
  683. package/dist/layout-engine/measure/lineTypography.js +1 -0
  684. package/dist/layout-engine/measure/listMarkerWidth.d.ts +9 -6
  685. package/dist/layout-engine/measure/listMarkerWidth.js +7 -3
  686. package/dist/layout-engine/measure/measureBlocks.d.ts +7 -7
  687. package/dist/layout-engine/measure/measureBlocks.js +13 -7
  688. package/dist/layout-engine/measure/measureContainer.d.ts +5 -6
  689. package/dist/layout-engine/measure/measureContainer.js +27 -6
  690. package/dist/layout-engine/measure/measureHelpers.d.ts +21 -18
  691. package/dist/layout-engine/measure/measureHelpers.js +12 -3
  692. package/dist/layout-engine/measure/measureParagraph.d.ts +5 -5
  693. package/dist/layout-engine/measure/measureParagraph.js +57 -11
  694. package/dist/layout-engine/measure/measureProvider.d.ts +15 -9
  695. package/dist/layout-engine/measure/measureProvider.js +66 -4
  696. package/dist/layout-engine/measure/measureTypes.d.ts +17 -14
  697. package/dist/layout-engine/measure/measureWorker.d.ts +8 -8
  698. package/dist/layout-engine/measure/measureWorkerProtocol.d.ts +6 -7
  699. package/dist/layout-engine/measure/paragraphMeasureShared.d.ts +19 -20
  700. package/dist/layout-engine/measure/paragraphTabs.d.ts +6 -7
  701. package/dist/layout-engine/measure/paragraphTabs.js +16 -17
  702. package/dist/layout-engine/measure/smallCapsCasing.d.ts +6 -7
  703. package/dist/layout-engine/measure/tabCalculator.d.ts +15 -16
  704. package/dist/layout-engine/measure/tableCellFloating.d.ts +6 -6
  705. package/dist/layout-engine/measure/tableCellFlow.d.ts +7 -7
  706. package/dist/layout-engine/measure/tableCellGrid.d.ts +14 -14
  707. package/dist/layout-engine/measure/tableFragmentBorderGeometry.d.ts +2 -2
  708. package/dist/layout-engine/measure/tableInlinePlacement.d.ts +3 -3
  709. package/dist/layout-engine/measure/textBoxParagraphLayout.d.ts +4 -4
  710. package/dist/layout-engine/measure/textMeasurementPolicy.d.ts +8 -8
  711. package/dist/layout-engine/noColumnBalanceCompatibility.d.ts +7 -0
  712. package/dist/layout-engine/noColumnBalanceCompatibility.js +5 -0
  713. package/dist/layout-engine/noteAreaFlow.d.ts +6 -7
  714. package/dist/layout-engine/noteAreaFlow.js +12 -6
  715. package/dist/layout-engine/paginator.d.ts +18 -11
  716. package/dist/layout-engine/paginator.js +51 -11
  717. package/dist/layout-engine/paragraphFragmentRange.d.ts +2 -3
  718. package/dist/layout-engine/paragraphFrame.d.ts +2 -21
  719. package/dist/layout-engine/paragraphFrame.js +1 -17
  720. package/dist/layout-engine/paragraphLayout.d.ts +2 -2
  721. package/dist/layout-engine/paragraphLayout.js +28 -9
  722. package/dist/layout-engine/paragraphSequence.d.ts +3 -4
  723. package/dist/layout-engine/paragraphSpacing.d.ts +10 -10
  724. package/dist/layout-engine/pmPageIndex.d.ts +3 -4
  725. package/dist/layout-engine/renderedBreakReconciliation.d.ts +7 -7
  726. package/dist/layout-engine/section-breaks.d.ts +15 -15
  727. package/dist/layout-engine/sectionLayout.d.ts +7 -7
  728. package/dist/layout-engine/sectionLayout.js +1 -4
  729. package/dist/layout-engine/sectionVerticalAlignment.d.ts +2 -3
  730. package/dist/layout-engine/tableIndentCompatibility.d.ts +2 -3
  731. package/dist/layout-engine/tableLayout.d.ts +4 -5
  732. package/dist/layout-engine/tableLayout.js +17 -9
  733. package/dist/layout-engine/tableRowBreak.d.ts +6 -6
  734. package/dist/layout-engine/tableRowBreak.js +10 -5
  735. package/dist/layout-engine/textBoxFlow.d.ts +6 -6
  736. package/dist/layout-engine/textBoxGroup.d.ts +3 -4
  737. package/dist/layout-engine/textBoxLayout.d.ts +2 -2
  738. package/dist/layout-engine/types.d.ts +113 -90
  739. package/dist/layout-painter/anchoredImagePosition.d.ts +4 -5
  740. package/dist/layout-painter/borderStroke.d.ts +4 -4
  741. package/dist/layout-painter/cursiveJoiners.d.ts +7 -7
  742. package/dist/layout-painter/documentColors.d.ts +6 -7
  743. package/dist/layout-painter/imageLayout.d.ts +13 -14
  744. package/dist/layout-painter/index.d.ts +9 -8
  745. package/dist/layout-painter/index.js +7 -2
  746. package/dist/layout-painter/registry/modules/image.d.ts +2 -3
  747. package/dist/layout-painter/registry/modules/paragraph.d.ts +2 -3
  748. package/dist/layout-painter/registry/modules/table.d.ts +2 -3
  749. package/dist/layout-painter/registry/modules/textBox.d.ts +2 -3
  750. package/dist/layout-painter/registry/modules.d.ts +2 -3
  751. package/dist/layout-painter/registry/registry.d.ts +4 -5
  752. package/dist/layout-painter/registry/types.d.ts +8 -9
  753. package/dist/layout-painter/renderFragment.d.ts +4 -5
  754. package/dist/layout-painter/renderImage.d.ts +12 -13
  755. package/dist/layout-painter/renderPage.d.ts +27 -25
  756. package/dist/layout-painter/renderPage.js +116 -31
  757. package/dist/layout-painter/renderParagraph.d.ts +19 -15
  758. package/dist/layout-painter/renderParagraph.js +186 -46
  759. package/dist/layout-painter/renderTable.d.ts +7 -8
  760. package/dist/layout-painter/renderTable.js +27 -15
  761. package/dist/layout-painter/renderTextBox.d.ts +5 -6
  762. package/dist/layout-painter/renderTextBox.js +9 -1
  763. package/dist/layout-painter/renderUtils.d.ts +11 -14
  764. package/dist/layout-painter/renderUtils.js +1 -19
  765. package/dist/layout-painter/renderWatermark.d.ts +5 -4
  766. package/dist/layout-painter/sdtBoundary.d.ts +4 -5
  767. package/dist/layout-painter/tableRowPaintGeometry.d.ts +2 -2
  768. package/dist/managers/AutoSaveManager.d.ts +11 -12
  769. package/dist/managers/AutoSaveManager.js +17 -3
  770. package/dist/managers/ClipboardManager.d.ts +7 -8
  771. package/dist/managers/ContextMenuManager.d.ts +3 -4
  772. package/dist/managers/DocumentLoaderManager.d.ts +5 -6
  773. package/dist/managers/EditorModeManager.d.ts +12 -12
  774. package/dist/managers/ErrorManager.d.ts +2 -3
  775. package/dist/managers/FindReplaceManager.d.ts +17 -10
  776. package/dist/managers/FindReplaceManager.js +15 -9
  777. package/dist/managers/HistoryManager.d.ts +9 -10
  778. package/dist/managers/Subscribable.d.ts +2 -3
  779. package/dist/managers/TableSelectionManager.d.ts +9 -10
  780. package/dist/managers/TableSelectionManager.js +3 -13
  781. package/dist/managers/autoSaveCodec.d.ts +8 -9
  782. package/dist/managers/editorShortcuts.d.ts +14 -15
  783. package/dist/managers/reviewDisplayMode.d.ts +4 -5
  784. package/dist/managers/types.d.ts +7 -8
  785. package/dist/markdown/annotations.d.ts +6 -7
  786. package/dist/markdown/escape.d.ts +6 -7
  787. package/dist/markdown/fromMarkdown.d.ts +2 -3
  788. package/dist/markdown/images.d.ts +2 -3
  789. package/dist/markdown/index.d.ts +3 -3
  790. package/dist/markdown/index.js +28 -2
  791. package/dist/markdown/internals.d.ts +4 -5
  792. package/dist/markdown/internals.js +3 -2
  793. package/dist/markdown/renderBlock.d.ts +2 -3
  794. package/dist/markdown/renderBlock.js +5 -1
  795. package/dist/markdown/renderParagraph.d.ts +4 -5
  796. package/dist/markdown/renderParagraph.js +42 -17
  797. package/dist/markdown/renderRuns.d.ts +3 -3
  798. package/dist/markdown/renderRuns.js +15 -10
  799. package/dist/markdown/renderTable.d.ts +2 -3
  800. package/dist/markdown/renderTable.js +21 -8
  801. package/dist/markdown/trailers.d.ts +2 -3
  802. package/dist/markdown/types.d.ts +7 -8
  803. package/dist/model.d.ts +1 -1
  804. package/dist/paged-layout/LayoutSelectionGate.d.ts +2 -2
  805. package/dist/paged-layout/blockGeometry.d.ts +5 -6
  806. package/dist/paged-layout/editorScrollRoot.d.ts +7 -5
  807. package/dist/paged-layout/editorScrollRoot.js +2 -2
  808. package/dist/paged-layout/fitWidthZoom.d.ts +36 -0
  809. package/dist/paged-layout/fitWidthZoom.js +31 -0
  810. package/dist/paged-layout/hiddenEditorScroll.d.ts +2 -3
  811. package/dist/paged-layout/incrementalMeasure.d.ts +6 -7
  812. package/dist/paged-layout/pageText.d.ts +2 -2
  813. package/dist/paged-layout/paragraphFlash.d.ts +7 -7
  814. package/dist/paged-layout/paragraphFlashTypes.d.ts +3 -4
  815. package/dist/paged-layout/rangeProjection.d.ts +11 -12
  816. package/dist/paged-layout/readOnlyEditAttempt.d.ts +2 -2
  817. package/dist/paged-layout/scrollNavigation.d.ts +5 -6
  818. package/dist/paged-layout/scrollPageInfo.d.ts +5 -6
  819. package/dist/paged-layout/scrollToPmPosition.d.ts +4 -5
  820. package/dist/paged-layout/sectionBlockWidths.d.ts +3 -3
  821. package/dist/paged-layout/sectionBlockWidths.js +0 -3
  822. package/dist/paged-layout/sectionGeometry.d.ts +10 -11
  823. package/dist/paged-layout/selectionViewportRect.d.ts +5 -6
  824. package/dist/paged-layout/tableColumnResize.d.ts +2 -3
  825. package/dist/paged-layout/tableInsertButtonGeometry.d.ts +2 -3
  826. package/dist/paged-layout/transactionDirtyRange.d.ts +2 -3
  827. package/dist/paged-layout/zoomScrollAnchor.d.ts +5 -5
  828. package/dist/panel-layout.d.ts +11 -12
  829. package/dist/pdf/contentStream.d.ts +11 -12
  830. package/dist/pdf/fonts.d.ts +11 -11
  831. package/dist/pdf/fonts.js +0 -19
  832. package/dist/pdf/images.d.ts +5 -5
  833. package/dist/pdf/images.js +5 -1
  834. package/dist/pdf/objects.d.ts +23 -24
  835. package/dist/pdf/pageSpace.d.ts +9 -10
  836. package/dist/pdf/paint.d.ts +6 -6
  837. package/dist/pdf/paint.js +28 -1
  838. package/dist/pdf/writePdf.d.ts +6 -6
  839. package/dist/prosemirror/addTrackedDeletionMark.d.ts +2 -2
  840. package/dist/prosemirror/alternateContentAttrs.d.ts +5 -4
  841. package/dist/prosemirror/alternateContentAttrs.js +13 -3
  842. package/dist/prosemirror/anchoredTextBoxes.d.ts +10 -11
  843. package/dist/prosemirror/attrs/index.d.ts +86 -86
  844. package/dist/prosemirror/attrs/index.js +127 -99
  845. package/dist/prosemirror/authoredTransformAttrs.d.ts +3 -3
  846. package/dist/prosemirror/autospacingBase.d.ts +5 -5
  847. package/dist/prosemirror/bookmarkBoundaryAttrs.d.ts +7 -7
  848. package/dist/prosemirror/bookmarkBoundaryAttrs.js +31 -2
  849. package/dist/prosemirror/bookmarkBoundaryIntegrity.d.ts +3 -4
  850. package/dist/prosemirror/canonicalCommands.d.ts +30 -13
  851. package/dist/prosemirror/canonicalCommands.js +5 -4
  852. package/dist/prosemirror/canonicalSelectionRange.d.ts +14 -4
  853. package/dist/prosemirror/canonicalSelectionRange.js +20 -1
  854. package/dist/prosemirror/cellDragSelection.d.ts +6 -7
  855. package/dist/prosemirror/cellDragSelection.js +9 -0
  856. package/dist/prosemirror/clearRunColor.d.ts +2 -3
  857. package/dist/prosemirror/clearRunColor.js +8 -5
  858. package/dist/prosemirror/clipboardIntent.d.ts +3 -4
  859. package/dist/prosemirror/commands/clearParagraphIndent.d.ts +2 -3
  860. package/dist/prosemirror/commands/comments.d.ts +28 -28
  861. package/dist/prosemirror/commands/comments.js +220 -83
  862. package/dist/prosemirror/commands/contentControls.d.ts +9 -9
  863. package/dist/prosemirror/commands/contentControls.js +2 -1
  864. package/dist/prosemirror/commands/contentControlsBlockFill.d.ts +2 -3
  865. package/dist/prosemirror/commands/contentControlsBlockFill.js +2 -1
  866. package/dist/prosemirror/commands/formatPainter.d.ts +5 -5
  867. package/dist/prosemirror/commands/formatPainter.js +14 -11
  868. package/dist/prosemirror/commands/formatting.d.ts +20 -20
  869. package/dist/prosemirror/commands/hyperlink.d.ts +5 -6
  870. package/dist/prosemirror/commands/hyperlink.js +7 -6
  871. package/dist/prosemirror/commands/image.d.ts +14 -14
  872. package/dist/prosemirror/commands/pageBreak.d.ts +2 -3
  873. package/dist/prosemirror/commands/pageBreak.js +2 -1
  874. package/dist/prosemirror/commands/paragraph.d.ts +35 -35
  875. package/dist/prosemirror/commands/paragraphBookmarkJoin.d.ts +5 -5
  876. package/dist/prosemirror/commands/paragraphBookmarkJoin.js +4 -7
  877. package/dist/prosemirror/commands/pastePlainText.d.ts +4 -5
  878. package/dist/prosemirror/commands/propertyChangeScope.d.ts +13 -13
  879. package/dist/prosemirror/commands/propertyChangeScope.js +2 -0
  880. package/dist/prosemirror/commands/resolveAllTableChanges.d.ts +3 -3
  881. package/dist/prosemirror/commands/resolveNodePropertyChangeAttrs.d.ts +3 -3
  882. package/dist/prosemirror/commands/resolveParagraphProperties.d.ts +3 -3
  883. package/dist/prosemirror/commands/resolveParagraphProperties.js +1 -1
  884. package/dist/prosemirror/commands/sectionBreak.d.ts +9 -8
  885. package/dist/prosemirror/commands/sectionBreak.js +14 -1
  886. package/dist/prosemirror/commands/table.d.ts +34 -34
  887. package/dist/prosemirror/commands/tableCellMergeResolution.d.ts +8 -8
  888. package/dist/prosemirror/commands/tableCellMergeResolution.js +3 -2
  889. package/dist/prosemirror/commands/tableMergeFoldDecisions.d.ts +4 -4
  890. package/dist/prosemirror/commentBoundaryOwnership.d.ts +15 -0
  891. package/dist/prosemirror/commentBoundaryOwnership.js +4 -0
  892. package/dist/prosemirror/commentIdAllocator.d.ts +8 -8
  893. package/dist/prosemirror/commentIdAllocator.js +2 -0
  894. package/dist/prosemirror/commentOps.d.ts +6 -7
  895. package/dist/prosemirror/commentOps.js +3 -19
  896. package/dist/prosemirror/commentRangeBoundaryAttrs.d.ts +16 -0
  897. package/dist/prosemirror/commentRangeBoundaryAttrs.js +51 -0
  898. package/dist/prosemirror/commentRangeInlineAtoms.d.ts +40 -0
  899. package/dist/prosemirror/commentRangeInlineAtoms.js +34 -0
  900. package/dist/prosemirror/commentReferenceAttrs.d.ts +3 -4
  901. package/dist/prosemirror/commentReferenceAttrs.js +4 -1
  902. package/dist/prosemirror/commentReferenceIntegrity.d.ts +15 -6
  903. package/dist/prosemirror/commentReferenceIntegrity.js +93 -1
  904. package/dist/prosemirror/containerFinalParagraph.d.ts +4 -4
  905. package/dist/prosemirror/contentControlRevisions.d.ts +7 -7
  906. package/dist/prosemirror/conversion/effectiveTableCellFormatting.d.ts +4 -4
  907. package/dist/prosemirror/conversion/fromProseDoc.d.ts +10 -10
  908. package/dist/prosemirror/conversion/fromProseDoc.js +478 -180
  909. package/dist/prosemirror/conversion/hyphenTextCarriers.d.ts +2 -3
  910. package/dist/prosemirror/conversion/markInterner.d.ts +2 -3
  911. package/dist/prosemirror/conversion/preservedSinkCarriers.d.ts +5 -5
  912. package/dist/prosemirror/conversion/runShadingMark.d.ts +3 -4
  913. package/dist/prosemirror/conversion/sdtAttrs.d.ts +6 -7
  914. package/dist/prosemirror/conversion/toProseDoc.d.ts +15 -9
  915. package/dist/prosemirror/conversion/toProseDoc.js +327 -218
  916. package/dist/prosemirror/copyOriginDom.d.ts +8 -0
  917. package/dist/prosemirror/copyOriginDom.js +21 -0
  918. package/dist/prosemirror/copyOriginResolution.d.ts +15 -0
  919. package/dist/prosemirror/copyOriginResolution.js +202 -0
  920. package/dist/prosemirror/documentSchema.d.ts +2 -3
  921. package/dist/prosemirror/emptyFieldResultRuns.d.ts +3 -3
  922. package/dist/prosemirror/emptyRangeAnchor.d.ts +6 -6
  923. package/dist/prosemirror/executeEditorCommand.d.ts +4 -5
  924. package/dist/prosemirror/extensions/ExtensionManager.d.ts +2 -3
  925. package/dist/prosemirror/extensions/StarterKit.d.ts +3 -4
  926. package/dist/prosemirror/extensions/StarterKit.js +5 -1
  927. package/dist/prosemirror/extensions/core/DocExtension.d.ts +2 -3
  928. package/dist/prosemirror/extensions/core/DocExtension.js +1 -1
  929. package/dist/prosemirror/extensions/core/HistoryExtension.d.ts +3 -3
  930. package/dist/prosemirror/extensions/core/HistoryExtension.js +5 -4
  931. package/dist/prosemirror/extensions/core/ParagraphExtension.d.ts +8 -9
  932. package/dist/prosemirror/extensions/core/ParagraphExtension.js +17 -9
  933. package/dist/prosemirror/extensions/core/TextExtension.d.ts +2 -3
  934. package/dist/prosemirror/extensions/create.d.ts +4 -5
  935. package/dist/prosemirror/extensions/features/AutoBidiDetectionExtension.d.ts +4 -5
  936. package/dist/prosemirror/extensions/features/BaseKeymapExtension.d.ts +3 -4
  937. package/dist/prosemirror/extensions/features/BidiShortcutExtension.d.ts +2 -3
  938. package/dist/prosemirror/extensions/features/ContentControlWidgetsExtension.d.ts +2 -3
  939. package/dist/prosemirror/extensions/features/DropCursorExtension.d.ts +2 -3
  940. package/dist/prosemirror/extensions/features/EmptyParagraphFormatExtension.d.ts +3 -4
  941. package/dist/prosemirror/extensions/features/GapCursorExtension.d.ts +2 -3
  942. package/dist/prosemirror/extensions/features/ImageDragExtension.d.ts +2 -3
  943. package/dist/prosemirror/extensions/features/ImagePasteExtension.d.ts +2 -3
  944. package/dist/prosemirror/extensions/features/ImagePasteExtension.js +2 -1
  945. package/dist/prosemirror/extensions/features/JoinedRunStyleExtension.d.ts +3 -4
  946. package/dist/prosemirror/extensions/features/ListExtension.d.ts +6 -7
  947. package/dist/prosemirror/extensions/features/ParaIdAllocatorExtension.d.ts +8 -8
  948. package/dist/prosemirror/extensions/features/ParaIdAllocatorExtension.js +17 -7
  949. package/dist/prosemirror/extensions/features/ParagraphChangeTrackerExtension.d.ts +18 -18
  950. package/dist/prosemirror/extensions/features/ParagraphChangeTrackerExtension.js +2 -1
  951. package/dist/prosemirror/extensions/features/PasteCleanupExtension.d.ts +2 -2
  952. package/dist/prosemirror/extensions/features/PasteStyleInlinerExtension.d.ts +6 -3
  953. package/dist/prosemirror/extensions/features/PasteStyleInlinerExtension.js +5 -2
  954. package/dist/prosemirror/extensions/features/SelectionTrackerExtension.d.ts +2 -2
  955. package/dist/prosemirror/extensions/features/SelectionTrackerExtension.js +2 -8
  956. package/dist/prosemirror/extensions/features/bidiShortcutController.d.ts +5 -6
  957. package/dist/prosemirror/extensions/features/clipboardTrackedRevisions.d.ts +4 -0
  958. package/dist/prosemirror/extensions/features/clipboardTrackedRevisions.js +72 -0
  959. package/dist/prosemirror/extensions/features/pasteCleanup.d.ts +4 -4
  960. package/dist/prosemirror/extensions/features/pasteCleanup.js +3 -2
  961. package/dist/prosemirror/extensions/features/pastedHeadingStyles.d.ts +2 -3
  962. package/dist/prosemirror/extensions/features/pastedHtmlLists.d.ts +3 -4
  963. package/dist/prosemirror/extensions/markRegistry.d.ts +4 -5
  964. package/dist/prosemirror/extensions/marks/AllCapsExtension.d.ts +2 -3
  965. package/dist/prosemirror/extensions/marks/BoldExtension.d.ts +2 -3
  966. package/dist/prosemirror/extensions/marks/CharacterSpacingExtension.d.ts +2 -3
  967. package/dist/prosemirror/extensions/marks/CharacterStyleExtension.d.ts +2 -3
  968. package/dist/prosemirror/extensions/marks/CommentExtension.d.ts +2 -3
  969. package/dist/prosemirror/extensions/marks/FontFamilyExtension.d.ts +2 -3
  970. package/dist/prosemirror/extensions/marks/FontFamilyExtension.js +12 -4
  971. package/dist/prosemirror/extensions/marks/FontSizeExtension.d.ts +2 -3
  972. package/dist/prosemirror/extensions/marks/FootnoteRefExtension.d.ts +2 -3
  973. package/dist/prosemirror/extensions/marks/FootnoteRefExtension.js +42 -4
  974. package/dist/prosemirror/extensions/marks/HiddenTextExtension.d.ts +2 -3
  975. package/dist/prosemirror/extensions/marks/HighlightExtension.d.ts +4 -4
  976. package/dist/prosemirror/extensions/marks/HighlightExtension.js +6 -4
  977. package/dist/prosemirror/extensions/marks/HyperlinkExtension.d.ts +5 -6
  978. package/dist/prosemirror/extensions/marks/HyperlinkExtension.js +9 -3
  979. package/dist/prosemirror/extensions/marks/InlineWrapperExtension.d.ts +3 -4
  980. package/dist/prosemirror/extensions/marks/ItalicExtension.d.ts +2 -3
  981. package/dist/prosemirror/extensions/marks/LanguageExtension.d.ts +2 -3
  982. package/dist/prosemirror/extensions/marks/RtlExtension.d.ts +2 -3
  983. package/dist/prosemirror/extensions/marks/RunFormattingOverrideExtension.d.ts +5 -5
  984. package/dist/prosemirror/extensions/marks/RunIdentityExtension.d.ts +3 -3
  985. package/dist/prosemirror/extensions/marks/RunShadingExtension.d.ts +2 -3
  986. package/dist/prosemirror/extensions/marks/SmallCapsExtension.d.ts +2 -3
  987. package/dist/prosemirror/extensions/marks/StrikeExtension.d.ts +2 -3
  988. package/dist/prosemirror/extensions/marks/StrikeExtension.js +9 -3
  989. package/dist/prosemirror/extensions/marks/SubscriptExtension.d.ts +2 -3
  990. package/dist/prosemirror/extensions/marks/SubscriptExtension.js +3 -2
  991. package/dist/prosemirror/extensions/marks/SuperscriptExtension.d.ts +2 -3
  992. package/dist/prosemirror/extensions/marks/SuperscriptExtension.js +3 -2
  993. package/dist/prosemirror/extensions/marks/TextColorExtension.d.ts +2 -3
  994. package/dist/prosemirror/extensions/marks/TextColorExtension.js +7 -6
  995. package/dist/prosemirror/extensions/marks/TextEffectExtension.d.ts +2 -3
  996. package/dist/prosemirror/extensions/marks/TextEffectsExtensions.d.ts +6 -7
  997. package/dist/prosemirror/extensions/marks/TextEffectsExtensions.js +1 -4
  998. package/dist/prosemirror/extensions/marks/TrackedChangeExtensions.d.ts +4 -5
  999. package/dist/prosemirror/extensions/marks/TrackedChangeExtensions.js +18 -2
  1000. package/dist/prosemirror/extensions/marks/UnderlineExtension.d.ts +2 -3
  1001. package/dist/prosemirror/extensions/marks/UnderlineExtension.js +10 -3
  1002. package/dist/prosemirror/extensions/marks/markUtils.d.ts +82 -25
  1003. package/dist/prosemirror/extensions/marks/markUtils.js +138 -74
  1004. package/dist/prosemirror/extensions/marks/noteReferenceDeletion.d.ts +3 -3
  1005. package/dist/prosemirror/extensions/nodes/BlockBookmarkBoundaryExtension.d.ts +6 -3
  1006. package/dist/prosemirror/extensions/nodes/BlockBookmarkBoundaryExtension.js +4 -4
  1007. package/dist/prosemirror/extensions/nodes/BlockCustomXmlExtension.d.ts +2 -3
  1008. package/dist/prosemirror/extensions/nodes/BlockMoveRangeBoundaryExtension.d.ts +24 -0
  1009. package/dist/prosemirror/extensions/nodes/BlockMoveRangeBoundaryExtension.js +59 -0
  1010. package/dist/prosemirror/extensions/nodes/BlockSdtExtension.d.ts +2 -3
  1011. package/dist/prosemirror/extensions/nodes/BookmarkBoundaryExtension.d.ts +3 -3
  1012. package/dist/prosemirror/extensions/nodes/BookmarkBoundaryExtension.js +1 -1
  1013. package/dist/prosemirror/extensions/nodes/CommentRangeBoundaryExtension.d.ts +10 -0
  1014. package/dist/prosemirror/extensions/nodes/CommentRangeBoundaryExtension.js +43 -0
  1015. package/dist/prosemirror/extensions/nodes/CommentReferenceExtension.d.ts +3 -5
  1016. package/dist/prosemirror/extensions/nodes/CommentReferenceExtension.js +5 -73
  1017. package/dist/prosemirror/extensions/nodes/FieldExtension.d.ts +4 -4
  1018. package/dist/prosemirror/extensions/nodes/FieldExtension.js +12 -2
  1019. package/dist/prosemirror/extensions/nodes/HardBreakExtension.d.ts +2 -3
  1020. package/dist/prosemirror/extensions/nodes/HorizontalRuleExtension.d.ts +2 -3
  1021. package/dist/prosemirror/extensions/nodes/ImageExtension.d.ts +2 -3
  1022. package/dist/prosemirror/extensions/nodes/MathExtension.d.ts +2 -3
  1023. package/dist/prosemirror/extensions/nodes/MoveRangeBoundaryExtension.d.ts +4 -4
  1024. package/dist/prosemirror/extensions/nodes/MoveRangeBoundaryExtension.js +8 -4
  1025. package/dist/prosemirror/extensions/nodes/NoteMarkerExtension.d.ts +3 -4
  1026. package/dist/prosemirror/extensions/nodes/PageBreakExtension.d.ts +2 -3
  1027. package/dist/prosemirror/extensions/nodes/PageBreakRunExtension.d.ts +2 -3
  1028. package/dist/prosemirror/extensions/nodes/PreservedBlockExtension.d.ts +3 -4
  1029. package/dist/prosemirror/extensions/nodes/PreservedXmlExtension.d.ts +3 -4
  1030. package/dist/prosemirror/extensions/nodes/RangeAnchorExtension.d.ts +4 -4
  1031. package/dist/prosemirror/extensions/nodes/RangeAnchorExtension.js +20 -4
  1032. package/dist/prosemirror/extensions/nodes/RenderedPageBreakExtension.d.ts +3 -4
  1033. package/dist/prosemirror/extensions/nodes/SdtExtension.d.ts +3 -4
  1034. package/dist/prosemirror/extensions/nodes/ShapeExtension.d.ts +11 -11
  1035. package/dist/prosemirror/extensions/nodes/ShapeExtension.js +5 -6
  1036. package/dist/prosemirror/extensions/nodes/SymbolExtension.d.ts +2 -3
  1037. package/dist/prosemirror/extensions/nodes/SymbolExtension.js +3 -3
  1038. package/dist/prosemirror/extensions/nodes/TabExtension.d.ts +2 -3
  1039. package/dist/prosemirror/extensions/nodes/TableExtension.d.ts +10 -10
  1040. package/dist/prosemirror/extensions/nodes/TableExtension.js +11 -13
  1041. package/dist/prosemirror/extensions/nodes/TextBoxAnchorExtension.d.ts +3 -3
  1042. package/dist/prosemirror/extensions/nodes/TextBoxExtension.d.ts +4 -5
  1043. package/dist/prosemirror/extensions/nodes/bookmarkBoundaryDom.d.ts +7 -5
  1044. package/dist/prosemirror/extensions/nodes/bookmarkBoundaryDom.js +9 -3
  1045. package/dist/prosemirror/extensions/types.d.ts +27 -27
  1046. package/dist/prosemirror/fieldRepresentation.d.ts +6 -5
  1047. package/dist/prosemirror/fieldRepresentation.js +17 -5
  1048. package/dist/prosemirror/findReplaceSelection.d.ts +44 -8
  1049. package/dist/prosemirror/findReplaceSelection.js +143 -42
  1050. package/dist/prosemirror/hyperlinkRemoval.d.ts +4 -4
  1051. package/dist/prosemirror/hyperlinkRemoval.js +12 -0
  1052. package/dist/prosemirror/imageCommit.d.ts +5 -23
  1053. package/dist/prosemirror/imageCommit.js +1 -29
  1054. package/dist/prosemirror/imagePictureNames.d.ts +4 -5
  1055. package/dist/prosemirror/indexedNodeLookup.d.ts +4 -4
  1056. package/dist/prosemirror/inlineDisplayText.d.ts +9 -0
  1057. package/dist/prosemirror/inlineDisplayText.js +29 -0
  1058. package/dist/prosemirror/inlineWrapperStack.d.ts +8 -9
  1059. package/dist/prosemirror/insertOperations.d.ts +4 -4
  1060. package/dist/prosemirror/keptRangeBoundaries.d.ts +76 -0
  1061. package/dist/prosemirror/keptRangeBoundaries.js +381 -0
  1062. package/dist/prosemirror/listAutoformatMarkers.d.ts +3 -4
  1063. package/dist/prosemirror/listInstanceReferences.d.ts +3 -4
  1064. package/dist/prosemirror/listInstanceReferences.js +1 -1
  1065. package/dist/prosemirror/listLabels.d.ts +15 -5
  1066. package/dist/prosemirror/listLabels.js +101 -16
  1067. package/dist/prosemirror/listMarker.d.ts +13 -13
  1068. package/dist/prosemirror/listMarker.js +7 -2
  1069. package/dist/prosemirror/listNumbering.d.ts +11 -11
  1070. package/dist/prosemirror/listNumbering.js +0 -16
  1071. package/dist/prosemirror/listRendering.d.ts +5 -5
  1072. package/dist/prosemirror/listRendering.js +4 -0
  1073. package/dist/prosemirror/listRenderingAttrs.d.ts +12 -11
  1074. package/dist/prosemirror/listRenderingAttrs.js +9 -5
  1075. package/dist/prosemirror/listState.d.ts +9 -10
  1076. package/dist/prosemirror/markupViewNotes.d.ts +2 -3
  1077. package/dist/prosemirror/markupViewProjection.d.ts +9 -8
  1078. package/dist/prosemirror/moveRangeBoundaryAttrs.d.ts +7 -6
  1079. package/dist/prosemirror/moveRangeBoundaryAttrs.js +27 -4
  1080. package/dist/prosemirror/noteReferenceOccurrenceId.d.ts +2 -3
  1081. package/dist/prosemirror/noteReferenceOccurrences.d.ts +9 -9
  1082. package/dist/prosemirror/noteReferenceReview.d.ts +13 -13
  1083. package/dist/prosemirror/noteReferenceReview.js +4 -10
  1084. package/dist/prosemirror/numberedRefFields.d.ts +5 -5
  1085. package/dist/prosemirror/numberingAttr.d.ts +11 -11
  1086. package/dist/prosemirror/outlineLevelAttr.d.ts +3 -4
  1087. package/dist/prosemirror/pageBreakRunProjection.d.ts +5 -5
  1088. package/dist/prosemirror/paraText.d.ts +4 -5
  1089. package/dist/prosemirror/paragraphAlignment.d.ts +2 -3
  1090. package/dist/prosemirror/paragraphDirection.d.ts +8 -9
  1091. package/dist/prosemirror/paragraphFormattingProvenance.d.ts +14 -7
  1092. package/dist/prosemirror/paragraphFormattingProvenance.js +8 -0
  1093. package/dist/prosemirror/paragraphIndentation.d.ts +7 -7
  1094. package/dist/prosemirror/paragraphList.d.ts +39 -0
  1095. package/dist/prosemirror/paragraphList.js +81 -0
  1096. package/dist/prosemirror/paragraphMarkJoin.d.ts +12 -2
  1097. package/dist/prosemirror/paragraphMarkJoin.js +34 -3
  1098. package/dist/prosemirror/paragraphPropertyCarry.d.ts +7 -7
  1099. package/dist/prosemirror/paragraphSpacing.d.ts +9 -9
  1100. package/dist/prosemirror/paragraphSpacing.js +16 -10
  1101. package/dist/prosemirror/pluginKeyOwner.d.ts +3 -4
  1102. package/dist/prosemirror/plugins/aiCitationDecorations.d.ts +6 -6
  1103. package/dist/prosemirror/plugins/aiCitationDecorations.js +0 -12
  1104. package/dist/prosemirror/plugins/aiSuggestionDecorations.d.ts +6 -6
  1105. package/dist/prosemirror/plugins/aiSuggestionDecorations.js +0 -14
  1106. package/dist/prosemirror/plugins/anonymizationDecorations.d.ts +9 -9
  1107. package/dist/prosemirror/plugins/anonymizationDecorations.js +0 -18
  1108. package/dist/prosemirror/plugins/autocompleteSuggestion.d.ts +19 -19
  1109. package/dist/prosemirror/plugins/autocompleteSuggestion.js +3 -25
  1110. package/dist/prosemirror/plugins/contentControlWidgets.d.ts +10 -10
  1111. package/dist/prosemirror/plugins/contentControlWidgets.js +13 -7
  1112. package/dist/prosemirror/plugins/createDocScanPlugin.d.ts +6 -6
  1113. package/dist/prosemirror/plugins/documentNumbering.d.ts +11 -9
  1114. package/dist/prosemirror/plugins/documentNumbering.js +42 -42
  1115. package/dist/prosemirror/plugins/documentStyleState.d.ts +5 -6
  1116. package/dist/prosemirror/plugins/documentStyles.d.ts +4 -4
  1117. package/dist/prosemirror/plugins/documentStyles.js +2 -1
  1118. package/dist/prosemirror/plugins/lockedControlKeyHandling.d.ts +4 -0
  1119. package/dist/prosemirror/plugins/lockedControlKeyHandling.js +16 -0
  1120. package/dist/prosemirror/plugins/paragraphStyleResolution.d.ts +3 -3
  1121. package/dist/prosemirror/plugins/paragraphStyleResolution.js +23 -1
  1122. package/dist/prosemirror/plugins/pmTextScan.d.ts +5 -6
  1123. package/dist/prosemirror/plugins/revisionIds.d.ts +11 -11
  1124. package/dist/prosemirror/plugins/revisionIds.js +11 -0
  1125. package/dist/prosemirror/plugins/selectionTracker.d.ts +7 -8
  1126. package/dist/prosemirror/plugins/suggestionMode.d.ts +16 -16
  1127. package/dist/prosemirror/plugins/suggestionMode.js +11 -3
  1128. package/dist/prosemirror/plugins/templateDirectives.d.ts +8 -8
  1129. package/dist/prosemirror/plugins/templateDirectives.js +0 -17
  1130. package/dist/prosemirror/plugins/templatePreviewValues.d.ts +12 -12
  1131. package/dist/prosemirror/plugins/templatePreviewValues.js +0 -23
  1132. package/dist/prosemirror/plugins/templateSlashMenu.d.ts +10 -11
  1133. package/dist/prosemirror/plugins/templateSlashMenu.js +3 -21
  1134. package/dist/prosemirror/plugins/transactionInvariants.d.ts +7 -8
  1135. package/dist/prosemirror/positionSweep.d.ts +4 -5
  1136. package/dist/prosemirror/positionSweep.js +1 -1
  1137. package/dist/prosemirror/preservedXmlReview.d.ts +2 -3
  1138. package/dist/prosemirror/queries.d.ts +5 -6
  1139. package/dist/prosemirror/rangeAnchorAttrs.d.ts +4 -5
  1140. package/dist/prosemirror/rangeAnchorAttrs.js +4 -1
  1141. package/dist/prosemirror/rebaseParagraphRunFormatting.d.ts +3 -3
  1142. package/dist/prosemirror/rebaseParagraphRunFormatting.js +6 -5
  1143. package/dist/prosemirror/rebaseParagraphRuns.d.ts +4 -4
  1144. package/dist/prosemirror/rebaseParagraphRuns.js +15 -11
  1145. package/dist/prosemirror/rejoinRunCarriers.d.ts +3 -3
  1146. package/dist/prosemirror/replacedAnnotations.d.ts +31 -17
  1147. package/dist/prosemirror/replacedAnnotations.js +80 -11
  1148. package/dist/prosemirror/revisionCarriers.d.ts +13 -13
  1149. package/dist/prosemirror/runContentProjection.d.ts +6 -0
  1150. package/dist/prosemirror/runContentProjection.js +24 -0
  1151. package/dist/prosemirror/runFormattingFromMarks.d.ts +5 -6
  1152. package/dist/prosemirror/runFormattingFromMarks.js +19 -17
  1153. package/dist/prosemirror/runFormattingInlineCarriers.d.ts +16 -15
  1154. package/dist/prosemirror/runFormattingInlineCarriers.js +1 -0
  1155. package/dist/prosemirror/runFormattingMarkNames.d.ts +2 -3
  1156. package/dist/prosemirror/runFormattingProvenance.d.ts +5 -6
  1157. package/dist/prosemirror/runFormattingReconciliation.d.ts +4 -4
  1158. package/dist/prosemirror/runFormattingReconciliation.js +6 -4
  1159. package/dist/prosemirror/runIdentity.d.ts +6 -7
  1160. package/dist/prosemirror/runIdentityAcrossRevisions.d.ts +16 -5
  1161. package/dist/prosemirror/runIdentityAcrossRevisions.js +92 -32
  1162. package/dist/prosemirror/runPropertyChangeResolution.d.ts +3 -3
  1163. package/dist/prosemirror/runPropertyChangeResolution.js +11 -10
  1164. package/dist/prosemirror/runStyleFormatting.d.ts +16 -16
  1165. package/dist/prosemirror/runStyleFormatting.js +4 -2
  1166. package/dist/prosemirror/schema/index.d.ts +6 -6
  1167. package/dist/prosemirror/schema/marks.d.ts +36 -39
  1168. package/dist/prosemirror/schema/nodes.d.ts +42 -35
  1169. package/dist/prosemirror/sectionCarrier.d.ts +7 -8
  1170. package/dist/prosemirror/sectionMarkEdits.d.ts +3 -4
  1171. package/dist/prosemirror/sectionMarkEdits.js +21 -1
  1172. package/dist/prosemirror/selectionMarks.d.ts +2 -2
  1173. package/dist/prosemirror/selectionState.d.ts +5 -6
  1174. package/dist/prosemirror/selectionState.js +1 -4
  1175. package/dist/prosemirror/shapeGeometryAdjustments.d.ts +2 -3
  1176. package/dist/prosemirror/storyListNumbering.d.ts +2 -2
  1177. package/dist/prosemirror/storyListNumbering.js +2 -1
  1178. package/dist/prosemirror/styles/index.js +1 -2
  1179. package/dist/prosemirror/styles/paragraphStyleCascade.d.ts +9 -9
  1180. package/dist/prosemirror/styles/paragraphStyleCascade.js +17 -2
  1181. package/dist/prosemirror/styles/resolvedStyleAttrs.d.ts +8 -8
  1182. package/dist/prosemirror/styles/styleResolver.d.ts +6 -7
  1183. package/dist/prosemirror/styles/styleResolver.js +17 -0
  1184. package/dist/prosemirror/styles/styleToggleCascade.d.ts +4 -4
  1185. package/dist/prosemirror/styles/tableStyleRegions.d.ts +5 -6
  1186. package/dist/prosemirror/tableCellMergeRevision.d.ts +3 -4
  1187. package/dist/prosemirror/tableCellPaste.d.ts +11 -12
  1188. package/dist/prosemirror/tableCellRevisionVisibility.d.ts +2 -3
  1189. package/dist/prosemirror/tableGridMutation.d.ts +12 -12
  1190. package/dist/prosemirror/tableResize.d.ts +18 -18
  1191. package/dist/prosemirror/tableResize.js +64 -53
  1192. package/dist/prosemirror/tableRunIn.d.ts +10 -5
  1193. package/dist/prosemirror/tableRunIn.js +44 -9
  1194. package/dist/prosemirror/textBoxAnchorAttrs.d.ts +3 -4
  1195. package/dist/prosemirror/textBoxAnchorAttrs.js +4 -1
  1196. package/dist/prosemirror/textBoxHostCollapse.d.ts +8 -0
  1197. package/dist/prosemirror/textBoxHostCollapse.js +79 -0
  1198. package/dist/prosemirror/textBoxHostParagraph.d.ts +2 -3
  1199. package/dist/prosemirror/textInput.d.ts +12 -6
  1200. package/dist/prosemirror/textInput.js +26 -2
  1201. package/dist/prosemirror/trackedRevisionPath.d.ts +6 -6
  1202. package/dist/prosemirror/trackedRevisionPath.js +7 -4
  1203. package/dist/prosemirror/trackedRunInlineAtoms.d.ts +9 -9
  1204. package/dist/prosemirror/trackedRunInlineAtoms.js +4 -3
  1205. package/dist/prosemirror/utils/extractTrackedChanges.d.ts +4 -5
  1206. package/dist/prosemirror/utils/findParagraphByParaId.d.ts +3 -4
  1207. package/dist/prosemirror/utils/tabCalculator.js +1 -2
  1208. package/dist/prosemirror/utils/visualLineNavigation.d.ts +7 -7
  1209. package/dist/prosemirror/utils/visualLineNavigation.js +2 -14
  1210. package/dist/prosemirror/validation.d.ts +7 -8
  1211. package/dist/prosemirror/validation.js +25 -10
  1212. package/dist/prosemirror/yjsDocumentMetadata.d.ts +15 -15
  1213. package/dist/prosemirror/yjsDocumentMetadata.js +15 -12
  1214. package/dist/prosemirror/zeroWidthAnchors.d.ts +7 -6
  1215. package/dist/prosemirror/zeroWidthAnchors.js +53 -16
  1216. package/dist/redline.d.ts +8 -8
  1217. package/dist/redline.js +2 -1
  1218. package/dist/redlineOperationLimit.d.ts +3 -3
  1219. package/dist/render-dom/BodySelectionOverlay.d.ts +4 -5
  1220. package/dist/render-dom/HeaderFooterSelectionOverlay.d.ts +6 -7
  1221. package/dist/render-dom/RemoteSelectionOverlay.d.ts +5 -6
  1222. package/dist/render-dom/RenderedDomContext.d.ts +6 -7
  1223. package/dist/render-dom/commentAnchorAttributes.d.ts +6 -6
  1224. package/dist/render-dom/resolveSidebarItemPositions.d.ts +5 -6
  1225. package/dist/reviewHistoryLimits.d.ts +3 -0
  1226. package/dist/reviewHistoryLimits.js +4 -0
  1227. package/dist/server.d.ts +2 -1
  1228. package/dist/server.js +2 -1
  1229. package/dist/shaping/placeRun.d.ts +7 -8
  1230. package/dist/shaping/shaper.d.ts +16 -16
  1231. package/dist/style-engine/index.js +1 -2
  1232. package/dist/style-engine/styleEngine.d.ts +5 -6
  1233. package/dist/style-sets/extract.d.ts +8 -9
  1234. package/dist/style-sets/stellaStyle.d.ts +4 -5
  1235. package/dist/style-sets/styleSetNormalization.d.ts +6 -7
  1236. package/dist/style-sets/types.d.ts +5 -6
  1237. package/dist/symbols.d.ts +8 -9
  1238. package/dist/types/block-id.d.ts +11 -12
  1239. package/dist/types/canonicalCapabilities.d.ts +11 -19
  1240. package/dist/types/canonicalCapabilities.js +5 -12
  1241. package/dist/types/canonicalComments.d.ts +3 -4
  1242. package/dist/types/canonicalSave.d.ts +2 -3
  1243. package/dist/types/canonicalSections.d.ts +2 -3
  1244. package/dist/types/documentEnumValues.d.ts +48 -49
  1245. package/dist/types/docxSerialization.d.ts +4 -5
  1246. package/dist/types/editor-story.d.ts +2 -3
  1247. package/dist/types/remote-selection.d.ts +2 -3
  1248. package/dist/types/wrap.d.ts +5 -6
  1249. package/dist/utils/authorColors.d.ts +4 -5
  1250. package/dist/utils/base64.d.ts +2 -2
  1251. package/dist/utils/baseDirection.d.ts +4 -5
  1252. package/dist/utils/borderCss.d.ts +9 -10
  1253. package/dist/utils/boundedContentIdentity.d.ts +13 -0
  1254. package/dist/utils/boundedContentIdentity.js +42 -0
  1255. package/dist/utils/canonicalJson.d.ts +2 -3
  1256. package/dist/utils/clipboard.d.ts +22 -22
  1257. package/dist/utils/clipboard.js +9 -6
  1258. package/dist/utils/colorResolver.d.ts +22 -23
  1259. package/dist/utils/colorResolver.js +0 -20
  1260. package/dist/utils/createDocument.d.ts +4 -4
  1261. package/dist/utils/cursiveJoining.d.ts +7 -8
  1262. package/dist/utils/documentLoaderBehavior.d.ts +3 -4
  1263. package/dist/utils/documentPointerDown.d.ts +5 -0
  1264. package/dist/utils/documentPointerDown.js +28 -0
  1265. package/dist/utils/docxInput.d.ts +3 -4
  1266. package/dist/utils/domGuards.d.ts +7 -8
  1267. package/dist/utils/findMatchView.d.ts +32 -0
  1268. package/dist/utils/findMatchView.js +406 -0
  1269. package/dist/utils/findReplace.d.ts +68 -10
  1270. package/dist/utils/findReplace.js +359 -37
  1271. package/dist/utils/findSearchKey.d.ts +29 -0
  1272. package/dist/utils/findSearchKey.js +34 -0
  1273. package/dist/utils/findVerticalScrollParent.d.ts +3 -4
  1274. package/dist/utils/fontFamilyMerge.d.ts +2 -2
  1275. package/dist/utils/fontLoader.d.ts +12 -13
  1276. package/dist/utils/fontResolver.d.ts +16 -14
  1277. package/dist/utils/fontResolver.js +33 -5
  1278. package/dist/utils/fontWeights.d.ts +2 -3
  1279. package/dist/utils/formatToStyle.d.ts +14 -14
  1280. package/dist/utils/formatToStyle.js +17 -15
  1281. package/dist/utils/headerFooter.d.ts +11 -12
  1282. package/dist/utils/headerFooter.js +10 -0
  1283. package/dist/utils/headingCollector.d.ts +3 -4
  1284. package/dist/utils/hexId.d.ts +6 -7
  1285. package/dist/utils/hexId.js +1 -1
  1286. package/dist/utils/horizontalScale.d.ts +5 -6
  1287. package/dist/utils/htmlComments.d.ts +2 -3
  1288. package/dist/utils/imageLuminance.d.ts +4 -5
  1289. package/dist/utils/imageResize.d.ts +18 -0
  1290. package/dist/utils/imageResize.js +37 -0
  1291. package/dist/utils/imageValidation.d.ts +3 -4
  1292. package/dist/utils/imageValidation.js +1 -1
  1293. package/dist/utils/joiningTypes.gen.d.ts +5 -6
  1294. package/dist/utils/mergeDocumentContent.d.ts +2 -3
  1295. package/dist/utils/mergeDocumentContent.js +7 -0
  1296. package/dist/utils/noteReferenceLabels.d.ts +7 -8
  1297. package/dist/utils/ooxmlSymbol.d.ts +5 -3
  1298. package/dist/utils/ooxmlSymbol.js +51 -1
  1299. package/dist/utils/outlineDepth.d.ts +4 -5
  1300. package/dist/utils/paragraphBaseDirection.d.ts +2 -3
  1301. package/dist/utils/paragraphBaseDirection.js +2 -1
  1302. package/dist/utils/paragraphFormattingMerge.d.ts +4 -5
  1303. package/dist/utils/paragraphFormattingMerge.js +2 -0
  1304. package/dist/utils/paragraphFrame.d.ts +20 -0
  1305. package/dist/utils/paragraphFrame.js +13 -0
  1306. package/dist/utils/paragraphInlineLayout.d.ts +101 -4
  1307. package/dist/utils/paragraphInlineLayout.js +164 -1
  1308. package/dist/utils/replaceText.d.ts +2 -2
  1309. package/dist/utils/replaceText.js +138 -107
  1310. package/dist/utils/rotationBoundingBox.d.ts +7 -8
  1311. package/dist/utils/sanitizeImageSrc.d.ts +3 -4
  1312. package/dist/utils/scriptSegments.d.ts +34 -16
  1313. package/dist/utils/scriptSegments.js +26 -6
  1314. package/dist/utils/sliceText.js +1 -2
  1315. package/dist/utils/stripXmlDeclarations.d.ts +2 -3
  1316. package/dist/utils/tableOfContentsStyle.d.ts +2 -2
  1317. package/dist/utils/tableOperations.d.ts +16 -17
  1318. package/dist/utils/tableOperations.js +44 -41
  1319. package/dist/utils/tablePlacement.d.ts +3 -4
  1320. package/dist/utils/textAdvanceGapsDom.d.ts +8 -0
  1321. package/dist/utils/textAdvanceGapsDom.js +49 -0
  1322. package/dist/utils/textDirectionFlow.d.ts +3 -4
  1323. package/dist/utils/textEncoding.js +1 -2
  1324. package/dist/utils/textFormattingMerge.d.ts +4 -5
  1325. package/dist/utils/tiffConverter.d.ts +5 -6
  1326. package/dist/utils/trailingText.d.ts +4 -5
  1327. package/dist/utils/units.d.ts +19 -20
  1328. package/dist/utils/urlSecurity.d.ts +6 -6
  1329. package/dist/utils/urlSecurity.js +2 -1
  1330. package/dist/utils/zoom.d.ts +4 -5
  1331. package/dist/version-comparison.d.ts +28 -28
  1332. package/dist/version-comparison.js +8 -7
  1333. package/dist/watermark/index.d.ts +5 -5
  1334. package/dist/watermark/index.js +9 -0
  1335. package/package.json +16 -16
@@ -4,6 +4,7 @@ import { isInlineSdtContent, isTrackedChangeWrapperChild } from "../../docx/inli
4
4
  import { listRenderingDefinitionsMatch, resolveListRenderingDefinition } from "../../docx/listRendering.js";
5
5
  import { getCachedNumberingMap } from "../../docx/numberingParser.js";
6
6
  import { PROSE_PARAGRAPH_SOURCE_CONTRACT_ATTR, createProseParagraphWithPropertySource, getDocumentParagraphPropertySourceContract, paragraphFormattingWithAuthoredIndentation, proseParagraphAttrsWithoutPropertySource, recreateProseNodeWithParagraphPropertySource, transportTableCellsWithParagraphPropertySources } from "../../docx/paragraphPropertySource.js";
7
+ import { visitInlineContentSlots, visitInlineContentSlotsInContent } from "../../docx/paragraphTraversal.js";
7
8
  import { isBaselineVertAlign } from "../../docx/runParser.js";
8
9
  import { replayableShapeAlternateContent } from "../../docx/shapeAlternateContent.js";
9
10
  import { resolveTableLook } from "../../docx/tableLook.js";
@@ -23,14 +24,19 @@ import { withAlternateContent } from "../alternateContentAttrs.js";
23
24
  import { expectInlineWrapperMarkAttrs, expectTrackedChangeMarkAttrs } from "../attrs/index.js";
24
25
  import { authoredTransformAttrs } from "../authoredTransformAttrs.js";
25
26
  import { setAutospacingBaseValue } from "../autospacingBase.js";
27
+ import { bookmarkBoundaryAttrsFromMarker } from "../bookmarkBoundaryAttrs.js";
28
+ import { trackedCommentBoundaryOwner } from "../commentBoundaryOwnership.js";
26
29
  import { withEnclosingRevision } from "../contentControlRevisions.js";
27
30
  import { emptyFieldRunPropertyChanges } from "../emptyFieldResultRuns.js";
28
31
  import { planEmptyRanges } from "../emptyRangeAnchor.js";
29
32
  import { textFormattingToMarks } from "../extensions/marks/markUtils.js";
33
+ import { BLOCK_MOVE_RANGE_BOUNDARY_NODE_NAME } from "../extensions/nodes/BlockMoveRangeBoundaryExtension.js";
34
+ import { COMMENT_RANGE_BOUNDARY_NODE_NAME } from "../extensions/nodes/CommentRangeBoundaryExtension.js";
30
35
  import { MOVE_RANGE_BOUNDARY_NODE_NAME } from "../extensions/nodes/MoveRangeBoundaryExtension.js";
31
36
  import { RANGE_ANCHOR_NODE_NAME } from "../extensions/nodes/RangeAnchorExtension.js";
32
37
  import "../extensions/nodes/SdtExtension.js";
33
- import { fieldRequiresStructuredContent } from "../fieldRepresentation.js";
38
+ import { fieldCommentCoverage, fieldRequiresStructuredContent } from "../fieldRepresentation.js";
39
+ import { getInlineDisplayText } from "../inlineDisplayText.js";
34
40
  import { inlineWrapperLayer } from "../inlineWrapperStack.js";
35
41
  import { CLEARED_LIST_RENDERING_ATTRS } from "../listMarker.js";
36
42
  import { listRenderingFor } from "../listRendering.js";
@@ -41,8 +47,9 @@ import { pageBreakRunParagraphProjectionDispositionForFeatures } from "../pageBr
41
47
  import { directionFromBidi } from "../paragraphDirection.js";
42
48
  import { paragraphIndentationFromFormatting } from "../paragraphIndentation.js";
43
49
  import { lineSpacingProvenanceFromSpacing } from "../paragraphSpacing.js";
50
+ import { isRunContentProjectionNode } from "../runContentProjection.js";
44
51
  import { RUN_IDENTITY_MARK_NAME, hasRunIdentityPayload, runIdentityAttrs } from "../runIdentity.js";
45
- import { continueSourceCarrierIdentitiesAcrossRevisions } from "../runIdentityAcrossRevisions.js";
52
+ import { continueSourceCarrierIdentitiesAcrossInsertedParagraphMarks, continueSourceCarrierIdentitiesAcrossRevisions } from "../runIdentityAcrossRevisions.js";
46
53
  import { getParagraphMarkSuppressionOverrides, hasDirectRunFormatting, isParagraphMarkSuppressionEligible, resolveParagraphInheritedRunFormatting, stripParagraphMarkFormattingForBodyRuns, stripParagraphMarkOnlyFormatting, suppressParagraphMarkFormatting } from "../runStyleFormatting.js";
47
54
  import { schema } from "../schema/index.js";
48
55
  import { PRESERVED_XML_LEVELS } from "../schema/nodes.js";
@@ -60,19 +67,6 @@ import { sdtAttrsFromProperties } from "./sdtAttrs.js";
60
67
  import { panic } from "better-result";
61
68
  import { DRAWING_RAW_XML_MODES, PARSE_WARNING_CODES } from "@stll/docx-core/model";
62
69
  //#region src/prosemirror/conversion/toProseDoc.ts
63
- /**
64
- * Document to ProseMirror Conversion
65
- *
66
- * Converts our Document type (from DOCX parsing) to a ProseMirror document.
67
- * Preserves all formatting attributes for round-trip fidelity.
68
- *
69
- * Style Resolution:
70
- * When styles are provided, paragraph properties are resolved from the style chain:
71
- * - Document defaults (docDefaults)
72
- * - Normal style (if no explicit styleId)
73
- * - Style chain (basedOn inheritance)
74
- * - Inline properties (highest priority)
75
- */
76
70
  const DETACHED_WATERMARK_HOST = Symbol.for("stll.detachedWatermarkHost");
77
71
  const noPageBreakProjectionWarning = () => {};
78
72
  const pageBreakProjectionWarn = (warn) => warn === void 0 ? noPageBreakProjectionWarning : (detail) => {
@@ -161,6 +155,13 @@ const collectPairedBookmarkIds = (blocks) => {
161
155
  case "bookmarkEnd":
162
156
  countBoundary(child.id, "end");
163
157
  break;
158
+ case "commentRangeStart":
159
+ case "commentRangeEnd": break;
160
+ case "commentReference":
161
+ case "moveFromRangeStart":
162
+ case "moveFromRangeEnd":
163
+ case "moveToRangeStart":
164
+ case "moveToRangeEnd": break;
164
165
  case "run":
165
166
  visitRun(child);
166
167
  break;
@@ -234,6 +235,10 @@ const collectPairedBookmarkIds = (blocks) => {
234
235
  case "bookmarkEnd":
235
236
  countBoundary(block.id, "end");
236
237
  break;
238
+ case "moveFromRangeStart":
239
+ case "moveFromRangeEnd":
240
+ case "moveToRangeStart":
241
+ case "moveToRangeEnd": break;
237
242
  default: panic(`Unsupported block content: ${JSON.stringify(block)}`);
238
243
  }
239
244
  };
@@ -294,6 +299,12 @@ function toProseDoc(document, options) {
294
299
  case "bookmarkEnd":
295
300
  out.push(convertBlockBookmarkBoundary(block));
296
301
  break;
302
+ case "moveFromRangeStart":
303
+ case "moveFromRangeEnd":
304
+ case "moveToRangeStart":
305
+ case "moveToRangeEnd":
306
+ out.push(convertBlockMoveRangeBoundary(block));
307
+ break;
297
308
  default: panic(`Unsupported block content: ${JSON.stringify(block)}`);
298
309
  }
299
310
  return out;
@@ -308,7 +319,7 @@ function toProseDoc(document, options) {
308
319
  _finalSectionStart: finalSectionStart,
309
320
  _adjustLineHeightInTable: adjustLineHeightInTable,
310
321
  _doNotUseIndentAsNumberingTabStop: doNotUseIndentAsNumberingTabStop
311
- }, nodes));
322
+ }, [...continueSourceCarrierIdentitiesAcrossInsertedParagraphMarks(nodes)]));
312
323
  assertValidProseMirrorDocument(pmDoc, "Document conversion produced an invalid ProseMirror document");
313
324
  return pmDoc;
314
325
  }
@@ -334,18 +345,11 @@ function convertPreservedBlock(block) {
334
345
  * has gone.
335
346
  */
336
347
  function convertBlockBookmarkBoundary(block) {
337
- return schema.node("blockBookmarkBoundary", block.type === "bookmarkStart" ? {
338
- type: "start",
339
- id: block.id,
340
- name: block.name,
341
- colFirst: block.colFirst,
342
- colLast: block.colLast,
343
- displacedByCustomXml: block.displacedByCustomXml
344
- } : {
345
- type: "end",
346
- id: block.id,
347
- displacedByCustomXml: block.displacedByCustomXml
348
- });
348
+ return schema.node("blockBookmarkBoundary", bookmarkBoundaryAttrsFromMarker(block));
349
+ }
350
+ /** A move range marker standing between blocks, kept between the same two. */
351
+ function convertBlockMoveRangeBoundary(block) {
352
+ return schema.node(BLOCK_MOVE_RANGE_BOUNDARY_NODE_NAME, { marker: block });
349
353
  }
350
354
  /**
351
355
  * Carry an inline child folio does not model into the editor as an opaque atom.
@@ -484,9 +488,11 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
484
488
  let bookmarksArr;
485
489
  let emptyHyperlinks;
486
490
  let wrapperStack = [];
487
- const emitInlineNodes = (nodes) => {
491
+ let paragraphContainsInlineSdt = false;
492
+ const emitInlineNodes = (nodes, commentsAlreadyApplied = false) => {
488
493
  if (nodes.length === 0) return;
489
- const markedNodes = applyCommentMarks(withInlineWrapperMark(nodes, wrapperStack), openCommentIds);
494
+ const wrappedNodes = withInlineWrapperMark(nodes, wrapperStack);
495
+ const markedNodes = commentsAlreadyApplied ? wrappedNodes : applyCommentMarks(wrappedNodes, openCommentIds);
490
496
  inlineNodes.push(...markedNodes);
491
497
  for (const node of markedNodes) inlineOffset += node.nodeSize;
492
498
  };
@@ -558,9 +564,12 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
558
564
  historical: getHistoricalRunFormatting
559
565
  };
560
566
  const emitTrackedChange = (change, markType, moveKind) => {
561
- emitInlineNodes(convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runScope, trackedRunFormattingResolvers, styleResolver, moveKind, textBoxAnchors, wrapperStack));
567
+ emitInlineNodes(convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runScope, trackedRunFormattingResolvers, styleResolver, moveKind, textBoxAnchors, wrapperStack, openCommentIds, { preserveSdtBoundaryOccurrences: paragraphContainsInlineSdt }), true);
562
568
  };
563
569
  const stacked = withInlineWrapperStacks(paragraph.content);
570
+ visitInlineContentSlots(paragraph, ({ item }) => {
571
+ if (item.type === "inlineSdt") paragraphContainsInlineSdt = true;
572
+ });
564
573
  const emptyRanges = planEmptyRanges(stacked.map((item) => item.content));
565
574
  for (const [index, { content, stack }] of stacked.entries()) {
566
575
  wrapperStack = stack;
@@ -573,9 +582,11 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
573
582
  switch (content.type) {
574
583
  case "commentRangeStart":
575
584
  openCommentIds.add(content.id);
585
+ if (paragraphContainsInlineSdt) emitInlineNodes([schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: content })], true);
576
586
  break;
577
587
  case "commentRangeEnd":
578
588
  openCommentIds.delete(content.id);
589
+ if (paragraphContainsInlineSdt) emitInlineNodes([schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: content })], true);
579
590
  break;
580
591
  case "commentReference":
581
592
  if (!storyRangedCommentIds.has(content.id)) anchorPointComment(inlineNodes, content.id);
@@ -590,7 +601,8 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
590
601
  styleResolver,
591
602
  hyperlinkIndex: nextHyperlinkInstanceIndex(),
592
603
  textBoxAnchors,
593
- runScope
604
+ runScope,
605
+ openCommentIds
594
606
  });
595
607
  if (linkNodes.length === 0) {
596
608
  const emptyWrapperStacks = emptyInlineWrapperStacks(content.children);
@@ -608,21 +620,22 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
608
620
  });
609
621
  break;
610
622
  }
611
- emitInlineNodes(linkNodes);
623
+ emitInlineNodes(linkNodes, true);
612
624
  break;
613
625
  }
614
626
  case "simpleField":
615
627
  case "complexField":
616
- emitInlineNode(convertField(content, {
628
+ emitInlineNodes([convertField(content, {
617
629
  getInheritedRunFormatting,
618
630
  styleResolver,
619
631
  nextHyperlinkInstanceIndex,
620
632
  runScope,
621
- textBoxAnchors
622
- }));
633
+ textBoxAnchors,
634
+ openCommentIds
635
+ })].filter((node) => node !== null), true);
623
636
  break;
624
637
  case "inlineSdt":
625
- emitInlineNode(convertInlineSdt(content, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, stack));
638
+ emitInlineNodes([convertInlineSdt(content, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, stack, openCommentIds)].filter((node) => node !== null), true);
626
639
  break;
627
640
  case "insertion":
628
641
  case "moveTo":
@@ -636,15 +649,8 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
636
649
  emitInlineNode(convertMathEquation(content));
637
650
  break;
638
651
  case "bookmarkStart":
639
- if (pairedBookmarkIds.has(content.id)) {
640
- emitInlineNode(schema.node("bookmarkBoundary", {
641
- type: "start",
642
- id: content.id,
643
- name: content.name,
644
- colFirst: content.colFirst,
645
- colLast: content.colLast,
646
- displacedByCustomXml: content.displacedByCustomXml
647
- }));
652
+ if (pairedBookmarkIds.has(content.id) || content.copyOriginAncestors !== void 0) {
653
+ emitInlineNode(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(content)));
648
654
  break;
649
655
  }
650
656
  if (!bookmarksArr) bookmarksArr = [];
@@ -654,11 +660,7 @@ function convertParagraph(paragraph, styleResolver, context, extraRunFormatting,
654
660
  });
655
661
  break;
656
662
  case "bookmarkEnd":
657
- if (pairedBookmarkIds.has(content.id)) emitInlineNode(schema.node("bookmarkBoundary", {
658
- type: "end",
659
- id: content.id,
660
- displacedByCustomXml: content.displacedByCustomXml
661
- }));
663
+ if (pairedBookmarkIds.has(content.id) || content.copyOriginAncestors !== void 0) emitInlineNode(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(content)));
662
664
  break;
663
665
  case "moveFromRangeStart":
664
666
  case "moveFromRangeEnd":
@@ -736,17 +738,52 @@ const withTrackedRunMark = (node, mark, ancestor) => {
736
738
  if (canCarryTrackedRunMark(node)) return node.mark(mark.addToSet(node.marks));
737
739
  return node;
738
740
  };
739
- /**
740
- * Convert tracked change (insertion or deletion) content to PM nodes with
741
- * an insertion/deletion mark applied.
742
- */
743
- function convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runScope, runFormattingResolvers, styleResolver, moveKind = null, textBoxAnchors, wrappedBy = []) {
741
+ function convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runScope, runFormattingResolvers, styleResolver, moveKind, textBoxAnchors, wrappedBy, openCommentIds, options = {}) {
744
742
  const nodes = [];
743
+ const preserveParentBoundaryOwnership = options.preserveParentBoundaryOwnership ?? true;
744
+ const commentRangeBoundaries = [];
745
+ const commentsOpenBeforeRevision = new Set(openCommentIds);
746
+ const recordCommentBoundary = (type, commentId, owner) => {
747
+ commentRangeBoundaries.push({
748
+ type,
749
+ commentId,
750
+ owner: trackedCommentBoundaryOwner({
751
+ boundaries: commentRangeBoundaries,
752
+ type,
753
+ commentId,
754
+ fallback: owner
755
+ })
756
+ });
757
+ };
745
758
  const getTrackedRunFormatting = markType === "deletion" ? runFormattingResolvers.historical : runFormattingResolvers.current;
746
- for (const { content: item, stack } of withInlineWrapperStacks(change.content)) {
759
+ const stacked = withInlineWrapperStacks(change.content);
760
+ let containsInlineSdt = false;
761
+ if (options.preserveSdtBoundaryOccurrences === void 0) visitInlineContentSlotsInContent(change.content, ({ item }) => {
762
+ if (item.type === "inlineSdt") containsInlineSdt = true;
763
+ });
764
+ const preserveBoundaryOccurrences = options.preserveSdtBoundaryOccurrences ?? containsInlineSdt;
765
+ const emptyRanges = planEmptyRanges(stacked.map(({ content }) => content));
766
+ for (const [index, { content: item, stack }] of stacked.entries()) {
747
767
  if (!isTrackedChangeWrapperChild(item)) continue;
748
768
  const itemNodes = [];
749
- if (item.type === "run") itemNodes.push(...convertRun(item, getTrackedRunFormatting(item.formatting), runScope, styleResolver, textBoxAnchors));
769
+ let commentsAlreadyApplied = false;
770
+ const anchored = emptyRanges.anchorAt.get(index);
771
+ if (anchored) itemNodes.push(schema.node(RANGE_ANCHOR_NODE_NAME, anchored));
772
+ else if (emptyRanges.closedAt.has(index)) continue;
773
+ else if (item.type === "commentRangeStart") {
774
+ openCommentIds.add(item.id);
775
+ if (preserveBoundaryOccurrences) {
776
+ itemNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: item }));
777
+ commentsAlreadyApplied = true;
778
+ } else recordCommentBoundary("start", item.id, "revision");
779
+ } else if (item.type === "commentRangeEnd") {
780
+ openCommentIds.delete(item.id);
781
+ if (preserveBoundaryOccurrences) {
782
+ itemNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: item }));
783
+ commentsAlreadyApplied = true;
784
+ } else recordCommentBoundary("end", item.id, "revision");
785
+ } else if (item.type === "commentReference") itemNodes.push(schema.node("commentReference", { commentId: item.id }));
786
+ else if (item.type === "run") itemNodes.push(...convertRun(item, getTrackedRunFormatting(item.formatting), runScope, styleResolver, textBoxAnchors));
750
787
  else if (item.type === "hyperlink") {
751
788
  const currentHyperlinkIndex = nextHyperlinkInstanceIndex();
752
789
  itemNodes.push(...convertHyperlink(item, {
@@ -754,45 +791,47 @@ function convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runS
754
791
  styleResolver,
755
792
  hyperlinkIndex: currentHyperlinkIndex,
756
793
  textBoxAnchors,
757
- runScope
794
+ runScope,
795
+ openCommentIds
758
796
  }));
797
+ commentsAlreadyApplied = true;
759
798
  } else if (item.type === "simpleField" || item.type === "complexField") {
760
799
  const fieldNode = convertField(item, {
761
800
  getInheritedRunFormatting: getTrackedRunFormatting,
762
801
  styleResolver,
763
802
  nextHyperlinkInstanceIndex,
764
803
  runScope,
765
- textBoxAnchors
804
+ textBoxAnchors,
805
+ openCommentIds
766
806
  });
767
807
  if (fieldNode) itemNodes.push(fieldNode);
808
+ commentsAlreadyApplied = true;
768
809
  } else if (item.type === "mathEquation") {
769
810
  const mathNode = convertMathEquation(item);
770
811
  if (mathNode) itemNodes.push(mathNode);
771
812
  } else if (item.type === "insertion" || item.type === "deletion" || item.type === "moveFrom" || item.type === "moveTo") {
772
813
  const nestedMarkType = item.type === "insertion" || item.type === "moveTo" ? "insertion" : "deletion";
773
814
  const nestedMoveKind = item.type === "moveFrom" || item.type === "moveTo" ? item.type : null;
774
- itemNodes.push(...convertTrackedChange(item, nestedMarkType, nextHyperlinkInstanceIndex, runScope, runFormattingResolvers, styleResolver, nestedMoveKind, textBoxAnchors, [...wrappedBy, ...stack]));
815
+ itemNodes.push(...convertTrackedChange(item, nestedMarkType, nextHyperlinkInstanceIndex, runScope, runFormattingResolvers, styleResolver, nestedMoveKind, textBoxAnchors, [...wrappedBy, ...stack], openCommentIds, {
816
+ preserveParentBoundaryOwnership,
817
+ preserveSdtBoundaryOccurrences: preserveBoundaryOccurrences
818
+ }));
819
+ commentsAlreadyApplied = true;
775
820
  } else if (item.type === "inlineSdt") {
776
- const sdtNode = convertInlineSdt(item, nextHyperlinkInstanceIndex, runScope, getTrackedRunFormatting, runFormattingResolvers, styleResolver, textBoxAnchors, [...wrappedBy, ...stack]);
821
+ const sdtNode = convertInlineSdt(item, nextHyperlinkInstanceIndex, runScope, getTrackedRunFormatting, runFormattingResolvers, styleResolver, textBoxAnchors, [...wrappedBy, ...stack], openCommentIds);
777
822
  if (sdtNode) itemNodes.push(sdtNode);
778
- } else if (item.type === "bookmarkStart") itemNodes.push(schema.node("bookmarkBoundary", {
779
- type: "start",
780
- id: item.id,
781
- name: item.name,
782
- colFirst: item.colFirst,
783
- colLast: item.colLast,
784
- displacedByCustomXml: item.displacedByCustomXml
785
- }));
786
- else if (item.type === "bookmarkEnd") itemNodes.push(schema.node("bookmarkBoundary", {
787
- type: "end",
788
- id: item.id,
789
- displacedByCustomXml: item.displacedByCustomXml
790
- }));
823
+ commentsAlreadyApplied = true;
824
+ } else if (item.type === "bookmarkStart") itemNodes.push(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(item)));
825
+ else if (item.type === "bookmarkEnd") itemNodes.push(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(item)));
791
826
  else if (item.type === "moveFromRangeStart" || item.type === "moveFromRangeEnd" || item.type === "moveToRangeStart" || item.type === "moveToRangeEnd") itemNodes.push(schema.node(MOVE_RANGE_BOUNDARY_NODE_NAME, { marker: item }));
792
827
  else if (item.type === "preservedInline") itemNodes.push(preservedInlineNode(item));
793
828
  else panic(`Unsupported tracked-run content: ${JSON.stringify(item)}`);
794
- nodes.push(...withInlineWrapperMark(itemNodes, stack));
829
+ const wrappedNodes = withInlineWrapperMark(itemNodes, stack);
830
+ nodes.push(...commentsAlreadyApplied ? wrappedNodes : applyCommentMarks(wrappedNodes, openCommentIds));
795
831
  }
832
+ if (preserveParentBoundaryOwnership) for (const commentId of commentsOpenBeforeRevision) recordCommentBoundary("start", commentId, "parent");
833
+ const boundaryCommentIds = new Set(commentRangeBoundaries.map(({ commentId }) => commentId));
834
+ for (const commentId of boundaryCommentIds) if (openCommentIds.has(commentId)) recordCommentBoundary("end", commentId, "parent");
796
835
  const mark = schema.marks[markType].create({
797
836
  revisionId: change.info.id,
798
837
  author: change.info.author,
@@ -802,6 +841,7 @@ function convertTrackedChange(change, markType, nextHyperlinkInstanceIndex, runS
802
841
  moveKind,
803
842
  _docxOuterWrapperCount: wrappedBy.length,
804
843
  _docxResolutionJoins: change.resolutionJoins ?? null,
844
+ _docxCommentRangeBoundaries: commentRangeBoundaries.length > 0 ? commentRangeBoundaries : void 0,
805
845
  ...markType === "deletion" ? { _historicalFormatting: true } : {}
806
846
  });
807
847
  const ancestor = {
@@ -879,6 +919,8 @@ function paragraphFormattingToAttrs(paragraph, styleResolver, tableParagraphOver
879
919
  set("shading", formatting?.shading);
880
920
  set("tabs", formatting?.tabs);
881
921
  set("kinsoku", formatting?.kinsoku);
922
+ set("autoSpaceDE", formatting?.autoSpaceDE);
923
+ set("autoSpaceDN", formatting?.autoSpaceDN);
882
924
  set("overflowPunctuation", formatting?.overflowPunctuation);
883
925
  set("suppressAutoHyphens", formatting?.suppressAutoHyphens);
884
926
  set("pageBreakBefore", formatting?.pageBreakBefore);
@@ -917,7 +959,9 @@ function resolveTableStyleConditional(styleResolver, tableStyleId, conditionType
917
959
  if (!style?.tblStylePr) return;
918
960
  const conditional = style.tblStylePr.find((p) => p.type === conditionType);
919
961
  if (!conditional) return;
920
- const mergedRunProps = mergeTextFormatting(conditional.pPr?.runProperties ? resolveRunFormattingWithoutDefaults(conditional.pPr.runProperties, styleResolver) : void 0, conditional.rPr ? resolveRunFormattingWithoutDefaults(conditional.rPr, styleResolver) : void 0);
962
+ const runPropsFromPpr = conditional.pPr?.runProperties ? resolveRunFormattingWithoutDefaults(conditional.pPr.runProperties, styleResolver) : void 0;
963
+ const resolvedRpr = conditional.rPr ? resolveRunFormattingWithoutDefaults(conditional.rPr, styleResolver) : void 0;
964
+ const mergedRunProps = mergeTextFormatting(runPropsFromPpr, resolvedRpr);
921
965
  const paragraphOverlay = extractTableParagraphOverlay(conditional.pPr);
922
966
  const result = {};
923
967
  if (conditional.tcPr) result.tcPr = conditional.tcPr;
@@ -929,7 +973,9 @@ function resolveTableBaseStyle(styleResolver, tableStyleId) {
929
973
  if (!styleResolver || !tableStyleId) return;
930
974
  const style = styleResolver.getStyle(tableStyleId);
931
975
  if (!style) return;
932
- const mergedRunProps = mergeTextFormatting(style.pPr?.runProperties ? resolveRunFormattingWithoutDefaults(style.pPr.runProperties, styleResolver) : void 0, style.rPr ? resolveRunFormattingWithoutDefaults(style.rPr, styleResolver) : void 0);
976
+ const runPropsFromPpr = style.pPr?.runProperties ? resolveRunFormattingWithoutDefaults(style.pPr.runProperties, styleResolver) : void 0;
977
+ const resolvedRpr = style.rPr ? resolveRunFormattingWithoutDefaults(style.rPr, styleResolver) : void 0;
978
+ const mergedRunProps = mergeTextFormatting(runPropsFromPpr, resolvedRpr);
933
979
  const paragraphOverlay = extractTableParagraphOverlay(style.pPr);
934
980
  const result = {};
935
981
  if (style.tcPr) result.tcPr = style.tcPr;
@@ -972,7 +1018,8 @@ function mergeConditionalStyles(base, override) {
972
1018
  function resolveTextFormatting(formatting, styleResolver) {
973
1019
  if (!formatting) return styleResolver?.resolveRunStyle(null);
974
1020
  if (!styleResolver) return formatting;
975
- return mergeTextFormatting(styleResolver.resolveRunStyle(formatting.styleId), formatting);
1021
+ const styleFormatting = styleResolver.resolveRunStyle(formatting.styleId);
1022
+ return mergeTextFormatting(styleFormatting, formatting);
976
1023
  }
977
1024
  function convertTable(table, styleResolver, context) {
978
1025
  for (const row of table.rows) for (const cell of row.cells) {
@@ -1324,6 +1371,12 @@ function convertTableCell({ cell, styleResolver, context, isHeader, gridWidthPer
1324
1371
  case "bookmarkEnd":
1325
1372
  nodes.push(convertBlockBookmarkBoundary(block));
1326
1373
  break;
1374
+ case "moveFromRangeStart":
1375
+ case "moveFromRangeEnd":
1376
+ case "moveToRangeStart":
1377
+ case "moveToRangeEnd":
1378
+ nodes.push(convertBlockMoveRangeBoundary(block));
1379
+ break;
1327
1380
  default: panic(`Unsupported table cell content: ${JSON.stringify(block)}`);
1328
1381
  }
1329
1382
  return nodes;
@@ -1367,28 +1420,25 @@ function standaloneTableCellToProseMirror(cell, nodeType) {
1367
1420
  defaultCellMargins: void 0
1368
1421
  });
1369
1422
  }
1370
- function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyperlinkInstanceIndex, runScope, textBoxAnchors }) {
1371
- let displayText = "";
1423
+ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyperlinkInstanceIndex, runScope, textBoxAnchors, openCommentIds }) {
1372
1424
  let fieldFormatting;
1373
1425
  let fieldPropertyChanges;
1374
1426
  const inlineNodes = [];
1375
- const hasStructuredSourceContent = fieldResultHasPageBreakContent(field) || field.type === "simpleField" && field.content.some((content) => content.type === "hyperlink" || content.type === "preservedInline" || content.type === "inlineWrapper" || content.type === "insertion" || content.type === "deletion" || content.type === "moveFrom" || content.type === "moveTo");
1427
+ const commentsOpenBeforeField = new Set(openCommentIds);
1428
+ const resultRuns = field.type === "complexField" ? field.fieldResult : field.content.flatMap((content) => content.type === "run" ? [content] : []);
1376
1429
  const appendRun = (run, into) => {
1377
- for (const content of run.content) if (content.type === "text") displayText += content.text;
1378
1430
  fieldFormatting ??= run.formatting;
1379
1431
  fieldPropertyChanges ??= run.propertyChanges;
1380
- if (field.type !== "simpleField" && !hasStructuredSourceContent) return;
1381
1432
  into.push(...convertRun(run, getInheritedRunFormatting(run.formatting, field.fieldType), runScope, styleResolver, textBoxAnchors));
1382
1433
  };
1383
- const collectDisplay = (items) => {
1434
+ const collectFormatting = (items) => {
1384
1435
  for (const item of items) switch (item.type) {
1385
1436
  case "run":
1386
- for (const child of item.content) if (child.type === "text") displayText += child.text;
1387
1437
  fieldFormatting ??= item.formatting;
1388
1438
  fieldPropertyChanges ??= item.propertyChanges;
1389
1439
  break;
1390
1440
  case "hyperlink":
1391
- collectDisplay(item.children);
1441
+ collectFormatting(item.children);
1392
1442
  break;
1393
1443
  case "inlineWrapper":
1394
1444
  case "inlineSdt":
@@ -1396,20 +1446,16 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1396
1446
  case "deletion":
1397
1447
  case "moveFrom":
1398
1448
  case "moveTo":
1399
- collectDisplay(item.content);
1449
+ collectFormatting(item.content);
1400
1450
  break;
1401
1451
  case "simpleField":
1402
- collectDisplay(item.content);
1452
+ collectFormatting(item.content);
1403
1453
  break;
1404
1454
  case "complexField":
1405
- collectDisplay(item.fieldResult);
1455
+ collectFormatting(item.fieldResult);
1406
1456
  break;
1407
1457
  case "preservedInline":
1408
- displayText += item.text;
1409
- break;
1410
- case "mathEquation":
1411
- displayText += item.plainText ?? "";
1412
- break;
1458
+ case "mathEquation": break;
1413
1459
  case "bookmarkStart":
1414
1460
  case "bookmarkEnd":
1415
1461
  case "commentRangeStart":
@@ -1424,6 +1470,7 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1424
1470
  };
1425
1471
  if (field.type === "simpleField") for (const { content, stack } of withInlineWrapperStacks(field.content)) {
1426
1472
  const itemNodes = [];
1473
+ let commentsAlreadyApplied = false;
1427
1474
  switch (content.type) {
1428
1475
  case "run":
1429
1476
  appendRun(content, itemNodes);
@@ -1433,7 +1480,6 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1433
1480
  break;
1434
1481
  case "hyperlink":
1435
1482
  for (const { content: child } of withInlineWrapperStacks(content.children)) if (child.type === "run") {
1436
- for (const runContent of child.content) if (runContent.type === "text") displayText += runContent.text;
1437
1483
  fieldFormatting ??= child.formatting;
1438
1484
  fieldPropertyChanges ??= child.propertyChanges;
1439
1485
  }
@@ -1442,24 +1488,35 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1442
1488
  styleResolver,
1443
1489
  hyperlinkIndex: nextHyperlinkInstanceIndex(),
1444
1490
  textBoxAnchors,
1445
- runScope
1491
+ runScope,
1492
+ openCommentIds
1446
1493
  }));
1494
+ commentsAlreadyApplied = true;
1447
1495
  break;
1448
1496
  case "insertion":
1449
1497
  case "deletion":
1450
1498
  case "moveFrom":
1451
1499
  case "moveTo":
1452
- collectDisplay(content.content);
1500
+ collectFormatting(content.content);
1453
1501
  itemNodes.push(...convertTrackedChange(content, content.type === "insertion" || content.type === "moveTo" ? "insertion" : "deletion", nextHyperlinkInstanceIndex, runScope, {
1454
1502
  current: getInheritedRunFormatting,
1455
1503
  historical: getInheritedRunFormatting
1456
- }, styleResolver, content.type === "moveFrom" || content.type === "moveTo" ? content.type : null, textBoxAnchors));
1504
+ }, styleResolver, content.type === "moveFrom" || content.type === "moveTo" ? content.type : null, textBoxAnchors, [], openCommentIds, { preserveParentBoundaryOwnership: false }));
1505
+ commentsAlreadyApplied = true;
1457
1506
  break;
1458
- default: break;
1507
+ case "commentRangeStart":
1508
+ openCommentIds.add(content.id);
1509
+ break;
1510
+ case "commentRangeEnd": openCommentIds.delete(content.id);
1459
1511
  }
1460
- inlineNodes.push(...withInlineWrapperMark(itemNodes, stack));
1512
+ const wrappedNodes = withInlineWrapperMark(itemNodes, stack);
1513
+ inlineNodes.push(...commentsAlreadyApplied ? wrappedNodes : applyCommentMarks(wrappedNodes, openCommentIds));
1514
+ }
1515
+ else for (const run of field.fieldResult) {
1516
+ const runNodes = [];
1517
+ appendRun(run, runNodes);
1518
+ inlineNodes.push(...runNodes);
1461
1519
  }
1462
- else for (const run of field.fieldResult) appendRun(run, inlineNodes);
1463
1520
  if (!fieldFormatting && field.type === "complexField" && field.fieldResult.length === 0) fieldFormatting = field.formatting;
1464
1521
  const inheritedFormatting = getInheritedRunFormatting(fieldFormatting, field.fieldType);
1465
1522
  const { marks } = buildRunMarks({
@@ -1469,11 +1526,11 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1469
1526
  createMark: runScope.createMark
1470
1527
  });
1471
1528
  const createStructuredField = fieldRequiresStructuredContent(inlineNodes);
1472
- const resultRuns = field.type === "simpleField" ? field.content.flatMap((content) => content.type === "run" ? [content] : []) : field.fieldResult;
1529
+ const displayText = getInlineDisplayText(schema.node("paragraph", null, inlineNodes));
1473
1530
  const emptyResultRuns = displayText === "" && resultRuns.length > 0 && (field.type === "complexField" || field.content.length === resultRuns.length) && resultRuns.every((run) => run.content.every((item) => item.type === "text" && item.text === "")) ? resultRuns : void 0;
1474
1531
  const resultPropertyChanges = emptyResultRuns ? emptyFieldRunPropertyChanges(emptyResultRuns) : fieldPropertyChanges;
1475
1532
  if (!createStructuredField && resultPropertyChanges && resultPropertyChanges.length > 0) marks.push(schema.mark("runPropertyChange", { changes: [...resultPropertyChanges] }));
1476
- return schema.node(createStructuredField ? "structuredField" : "field", {
1533
+ const fieldNode = schema.node(createStructuredField ? "structuredField" : "field", {
1477
1534
  fieldType: field.fieldType,
1478
1535
  instruction: field.instruction,
1479
1536
  displayText,
@@ -1488,6 +1545,7 @@ function convertField(field, { getInheritedRunFormatting, styleResolver, nextHyp
1488
1545
  runs: field.fieldCode
1489
1546
  } : null
1490
1547
  }, createStructuredField ? inlineNodes : void 0, marks);
1548
+ return createStructuredField && fieldCommentCoverage(field.type === "simpleField" ? "simple" : "complex") === "children" ? fieldNode : applyCommentMarks([fieldNode], commentsOpenBeforeField).at(0) ?? fieldNode;
1491
1549
  }
1492
1550
  /**
1493
1551
  * Lift the transparent wrappers out of an inline content list, remembering for
@@ -1553,14 +1611,16 @@ function convertMathEquation(math) {
1553
1611
  * its own leaves, so nothing outside can mark them afterwards: the caller's
1554
1612
  * stack has to reach them here, under the wrappers written inside the control.
1555
1613
  */
1556
- function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, wrappedBy = []) {
1614
+ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, wrappedBy, openCommentIds) {
1557
1615
  const props = sdt.properties;
1558
1616
  const inlineNodes = [];
1617
+ const commentsOpenBeforeSdt = new Set(openCommentIds);
1559
1618
  const stacked = withInlineWrapperStacks(sdt.content, wrappedBy);
1560
1619
  const emptyRanges = planEmptyRanges(stacked.map(({ content }) => content));
1561
1620
  for (const [index, { content, stack }] of stacked.entries()) {
1562
1621
  if (!isInlineSdtContent(content)) continue;
1563
1622
  const itemNodes = [];
1623
+ let commentsAlreadyApplied = false;
1564
1624
  const anchored = emptyRanges.anchorAt.get(index);
1565
1625
  if (anchored) {
1566
1626
  inlineNodes.push(...withInlineWrapperMark([schema.node(RANGE_ANCHOR_NODE_NAME, anchored)], stack));
@@ -1568,6 +1628,19 @@ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInherite
1568
1628
  }
1569
1629
  if (emptyRanges.closedAt.has(index)) continue;
1570
1630
  switch (content.type) {
1631
+ case "commentRangeStart":
1632
+ openCommentIds.add(content.id);
1633
+ itemNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: content }));
1634
+ commentsAlreadyApplied = true;
1635
+ break;
1636
+ case "commentRangeEnd":
1637
+ openCommentIds.delete(content.id);
1638
+ itemNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: content }));
1639
+ commentsAlreadyApplied = true;
1640
+ break;
1641
+ case "commentReference":
1642
+ itemNodes.push(schema.node("commentReference", { commentId: content.id }));
1643
+ break;
1571
1644
  case "run":
1572
1645
  itemNodes.push(...convertRun(content, getInheritedRunFormatting(content.formatting), runScope, styleResolver, textBoxAnchors));
1573
1646
  break;
@@ -1578,8 +1651,10 @@ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInherite
1578
1651
  styleResolver,
1579
1652
  hyperlinkIndex: currentHyperlinkIndex,
1580
1653
  textBoxAnchors,
1581
- runScope
1654
+ runScope,
1655
+ openCommentIds
1582
1656
  }));
1657
+ commentsAlreadyApplied = true;
1583
1658
  break;
1584
1659
  }
1585
1660
  case "simpleField":
@@ -1589,21 +1664,28 @@ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInherite
1589
1664
  styleResolver,
1590
1665
  nextHyperlinkInstanceIndex,
1591
1666
  runScope,
1592
- textBoxAnchors
1667
+ textBoxAnchors,
1668
+ openCommentIds
1593
1669
  });
1594
1670
  if (fieldNode) itemNodes.push(fieldNode);
1671
+ commentsAlreadyApplied = true;
1595
1672
  break;
1596
1673
  }
1597
1674
  case "inlineSdt": {
1598
- const nestedSdt = convertInlineSdt(content, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, stack);
1675
+ const nestedSdt = convertInlineSdt(content, nextHyperlinkInstanceIndex, runScope, getInheritedRunFormatting, trackedRunFormattingResolvers, styleResolver, textBoxAnchors, stack, openCommentIds);
1599
1676
  if (nestedSdt) itemNodes.push(nestedSdt);
1677
+ commentsAlreadyApplied = true;
1600
1678
  break;
1601
1679
  }
1602
1680
  case "insertion":
1603
1681
  case "deletion":
1604
1682
  case "moveTo":
1605
1683
  case "moveFrom":
1606
- itemNodes.push(...convertTrackedChange(content, content.type === "insertion" || content.type === "moveTo" ? "insertion" : "deletion", nextHyperlinkInstanceIndex, runScope, trackedRunFormattingResolvers, styleResolver, content.type === "moveTo" || content.type === "moveFrom" ? content.type : null, textBoxAnchors));
1684
+ itemNodes.push(...convertTrackedChange(content, content.type === "insertion" || content.type === "moveTo" ? "insertion" : "deletion", nextHyperlinkInstanceIndex, runScope, trackedRunFormattingResolvers, styleResolver, content.type === "moveTo" || content.type === "moveFrom" ? content.type : null, textBoxAnchors, stack, openCommentIds, {
1685
+ preserveParentBoundaryOwnership: false,
1686
+ preserveSdtBoundaryOccurrences: true
1687
+ }));
1688
+ commentsAlreadyApplied = true;
1607
1689
  break;
1608
1690
  case "mathEquation": {
1609
1691
  const mathNode = convertMathEquation(content);
@@ -1611,21 +1693,10 @@ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInherite
1611
1693
  break;
1612
1694
  }
1613
1695
  case "bookmarkStart":
1614
- itemNodes.push(schema.node("bookmarkBoundary", {
1615
- type: "start",
1616
- id: content.id,
1617
- name: content.name,
1618
- colFirst: content.colFirst,
1619
- colLast: content.colLast,
1620
- displacedByCustomXml: content.displacedByCustomXml
1621
- }));
1696
+ itemNodes.push(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(content)));
1622
1697
  break;
1623
1698
  case "bookmarkEnd":
1624
- itemNodes.push(schema.node("bookmarkBoundary", {
1625
- type: "end",
1626
- id: content.id,
1627
- displacedByCustomXml: content.displacedByCustomXml
1628
- }));
1699
+ itemNodes.push(schema.node("bookmarkBoundary", bookmarkBoundaryAttrsFromMarker(content)));
1629
1700
  break;
1630
1701
  case "moveFromRangeStart":
1631
1702
  case "moveFromRangeEnd":
@@ -1638,9 +1709,11 @@ function convertInlineSdt(sdt, nextHyperlinkInstanceIndex, runScope, getInherite
1638
1709
  break;
1639
1710
  default: panic(`Unsupported inline SDT content: ${JSON.stringify(content)}`);
1640
1711
  }
1641
- inlineNodes.push(...withInlineWrapperMark(itemNodes, stack));
1712
+ const wrappedNodes = withInlineWrapperMark(itemNodes, stack);
1713
+ inlineNodes.push(...commentsAlreadyApplied ? wrappedNodes : applyCommentMarks(wrappedNodes, openCommentIds));
1642
1714
  }
1643
- return schema.node("sdt", sdtAttrsFromProperties(props), inlineNodes.length > 0 ? inlineNodes : void 0);
1715
+ const sdtNode = schema.node("sdt", sdtAttrsFromProperties(props), inlineNodes.length > 0 ? inlineNodes : void 0);
1716
+ return sdtNode.childCount > 0 ? sdtNode : applyCommentMarks([sdtNode], commentsOpenBeforeSdt).at(0) ?? sdtNode;
1644
1717
  }
1645
1718
  /**
1646
1719
  * Convert a Run to ProseMirror text nodes with marks
@@ -1668,6 +1741,7 @@ function convertRun(run, resolvedStyleFormatting, runScope, styleResolver, textB
1668
1741
  authoredFormatting: run.formatting,
1669
1742
  nextNoteReferenceOccurrenceId: runScope.nextNoteReferenceOccurrenceId
1670
1743
  });
1744
+ for (const node of contentNodes) if (!isRunContentProjectionNode(content.type, node.type.name)) panic(`Run content ${content.type} projected unsupported inline node ${node.type.name}`);
1671
1745
  nodes.push(...contentNodes);
1672
1746
  }
1673
1747
  return nodes;
@@ -2108,7 +2182,7 @@ function convertRunContent({ content, marks, formatting, textBoxAnchors, authore
2108
2182
  const anchorId = textBoxAnchors?.get(shp);
2109
2183
  return anchorId ? [schema.node("textBoxAnchor", { anchorId }).mark(marks)] : [];
2110
2184
  }
2111
- return [withRunBoundaryMarks(withAlternateContent(convertShape(shp, carriedRunFormatting(authoredFormatting)), replayableShapeAlternateContent(content)), marks)];
2185
+ return [withRunBoundaryMarks(withAlternateContent(convertShape(shp, carriedRunFormatting(authoredFormatting)), replayableShapeAlternateContent(content), content.alternateContent), marks)];
2112
2186
  }
2113
2187
  case "footnoteRef": {
2114
2188
  const footnoteMark = schema.mark("footnoteRef", {
@@ -2206,12 +2280,13 @@ function convertImage({ image, rawXml, rawXmlMode, rawImageFingerprint, runForma
2206
2280
  let cssFloat;
2207
2281
  if (wrapType === "inline") cssFloat = "none";
2208
2282
  else if (wrapType === "topAndBottom") cssFloat = "none";
2209
- else if (wrapType === "square" || wrapType === "tight" || wrapType === "through") if (wrapText === "left") cssFloat = "right";
2210
- else if (wrapText === "right") cssFloat = "left";
2211
- else if (hAlign === "left") cssFloat = "left";
2212
- else if (hAlign === "right") cssFloat = "right";
2213
- else cssFloat = "none";
2214
- else cssFloat = "none";
2283
+ else if (wrapType === "square" || wrapType === "tight" || wrapType === "through") {
2284
+ if (wrapText === "left") cssFloat = "right";
2285
+ else if (wrapText === "right") cssFloat = "left";
2286
+ else if (hAlign === "left") cssFloat = "left";
2287
+ else if (hAlign === "right") cssFloat = "right";
2288
+ else cssFloat = "none";
2289
+ } else cssFloat = "none";
2215
2290
  let displayMode;
2216
2291
  if (wrapType === "inline") displayMode = "inline";
2217
2292
  else if (wrapType === "topAndBottom") displayMode = "block";
@@ -2307,11 +2382,12 @@ function convertImage({ image, rawXml, rawXmlMode, rawImageFingerprint, runForma
2307
2382
  _docxRunFormatting: runFormatting
2308
2383
  });
2309
2384
  }
2310
- function convertHyperlink(hyperlink, { getInheritedRunFormatting, styleResolver, hyperlinkIndex, textBoxAnchors, runScope }) {
2385
+ function convertHyperlink(hyperlink, { getInheritedRunFormatting, styleResolver, hyperlinkIndex, textBoxAnchors, runScope, openCommentIds }) {
2311
2386
  const nodes = [];
2312
2387
  const href = hyperlink.href || (hyperlink.anchor ? `#${hyperlink.anchor}` : "");
2313
2388
  const linkMark = schema.mark("hyperlink", {
2314
2389
  href,
2390
+ anchor: hyperlink.anchor,
2315
2391
  tooltip: hyperlink.tooltip,
2316
2392
  rId: hyperlink.rId,
2317
2393
  target: hyperlink.target,
@@ -2321,7 +2397,27 @@ function convertHyperlink(hyperlink, { getInheritedRunFormatting, styleResolver,
2321
2397
  });
2322
2398
  for (const { content: child, stack } of withInlineWrapperStacks(hyperlink.children)) {
2323
2399
  const childNodes = [];
2400
+ let commentsAlreadyApplied = false;
2324
2401
  switch (child.type) {
2402
+ case "commentRangeStart":
2403
+ openCommentIds.add(child.id);
2404
+ childNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: child }, void 0, [linkMark]));
2405
+ commentsAlreadyApplied = true;
2406
+ break;
2407
+ case "commentRangeEnd":
2408
+ openCommentIds.delete(child.id);
2409
+ childNodes.push(schema.node(COMMENT_RANGE_BOUNDARY_NODE_NAME, { marker: child }, void 0, [linkMark]));
2410
+ commentsAlreadyApplied = true;
2411
+ break;
2412
+ case "commentReference":
2413
+ childNodes.push(schema.node("commentReference", { commentId: child.id }, void 0, [linkMark]));
2414
+ break;
2415
+ case "moveFromRangeStart":
2416
+ case "moveFromRangeEnd":
2417
+ case "moveToRangeStart":
2418
+ case "moveToRangeEnd":
2419
+ childNodes.push(schema.node(MOVE_RANGE_BOUNDARY_NODE_NAME, { marker: child }, void 0, [linkMark]));
2420
+ break;
2325
2421
  case "bookmarkStart":
2326
2422
  childNodes.push(schema.node("bookmarkBoundary", {
2327
2423
  type: "start",
@@ -2364,12 +2460,12 @@ function convertHyperlink(hyperlink, { getInheritedRunFormatting, styleResolver,
2364
2460
  }));
2365
2461
  break;
2366
2462
  }
2367
- default: break;
2368
2463
  }
2369
- nodes.push(...withInlineWrapperMark(childNodes, stack, {
2464
+ const wrappedNodes = withInlineWrapperMark(childNodes, stack, {
2370
2465
  hyperlinkIndex,
2371
2466
  stackStart: 0
2372
- }));
2467
+ });
2468
+ nodes.push(...commentsAlreadyApplied ? wrappedNodes : applyCommentMarks(wrappedNodes, openCommentIds));
2373
2469
  }
2374
2470
  return nodes;
2375
2471
  }
@@ -2496,7 +2592,7 @@ function convertParagraphWithTextBoxes(block, styleResolver, { textBoxGroupId, c
2496
2592
  const keepWrapperParagraph = isEmptyAfterExtraction && (preserveEmptyWrapper === true || hasParagraphBoundaryPayload(block, pmParagraph));
2497
2593
  if (!isEmptyAfterExtraction || keepWrapperParagraph) nodes.push(pmParagraph);
2498
2594
  const standalone = isEmptyAfterExtraction && !keepWrapperParagraph;
2499
- for (const [index, { textBox, alternateContentXml, anchorId, trackedChange, inlineSdts }] of textBoxes.entries()) {
2595
+ for (const [index, { textBox, alternateContent, anchorId, trackedChange, inlineSdts }] of textBoxes.entries()) {
2500
2596
  const textBoxNode = convertTextBox(textBox, styleResolver, {
2501
2597
  placement: standalone ? "standalone" : "inlineWithPrevious",
2502
2598
  groupId: textBoxGroupId,
@@ -2507,7 +2603,7 @@ function convertParagraphWithTextBoxes(block, styleResolver, { textBoxGroupId, c
2507
2603
  ...standalone && index === 0 && block.preservedAttributes ? { hostPreservedAttributes: block.preservedAttributes } : {},
2508
2604
  ...standalone && index === 0 ? { hostParagraph: hostParagraphAttrs(pmParagraph.attrs) } : {}
2509
2605
  });
2510
- nodes.push(withAlternateContent(textBoxNode, alternateContentXml));
2606
+ nodes.push(withAlternateContent(textBoxNode, alternateContent?.verbatimXml, alternateContent));
2511
2607
  }
2512
2608
  return nodes;
2513
2609
  }
@@ -2546,93 +2642,99 @@ function extractTextBoxesFromParagraph(paragraph, textBoxGroupId) {
2546
2642
  if (!mayContainTextBox(paragraph)) return NO_EXTRACTED_TEXT_BOXES;
2547
2643
  return extractTextBoxes(paragraph, textBoxGroupId);
2548
2644
  }
2549
- function mayContainTextBox(paragraph) {
2550
- for (const item of paragraph.content) {
2551
- if (item.type !== "run") {
2552
- if (item.type === "inlineSdt" || item.type === "hyperlink" || item.type === "insertion" || item.type === "deletion" || item.type === "moveFrom" || item.type === "moveTo") return true;
2645
+ /** Walk the same projected child inventory for the fast path and collector. */
2646
+ function visitTextBoxRuns({ items, context, visitRun }) {
2647
+ for (const item of items) {
2648
+ if (item.type === "run") {
2649
+ if (visitRun(item, context)) return true;
2553
2650
  continue;
2554
2651
  }
2555
- for (const content of item.content) if (content.type === "shape" && content.shape.textBody) return true;
2556
- }
2557
- return false;
2558
- }
2559
- function extractTextBoxes(paragraph, textBoxGroupId) {
2560
- const textBoxes = [];
2561
- const textBoxAnchors = /* @__PURE__ */ new Map();
2562
- const visitRun = (run, context) => {
2563
- for (const runContent of run.content) {
2564
- if (runContent.type !== "shape" || !runContent.shape.textBody) continue;
2565
- const anchorId = `${textBoxGroupId}:${textBoxes.length}`;
2566
- textBoxAnchors.set(runContent.shape, anchorId);
2567
- textBoxes.push({
2568
- textBox: textBoxFromShape(runContent.shape, runContent.shape.textBody),
2569
- alternateContentXml: replayableShapeAlternateContent(runContent),
2570
- anchorId,
2571
- trackedChange: context.trackedChange,
2572
- inlineSdts: context.inlineSdts
2573
- });
2652
+ if (item.type === "complexField") {
2653
+ for (const run of item.fieldResult) if (visitRun(run, context)) return true;
2654
+ continue;
2574
2655
  }
2575
- };
2576
- const visitHyperlink = (hyperlink, context) => {
2577
- for (const child of hyperlink.children) if (child.type === "run") visitRun(child, context);
2578
- };
2579
- const visitTrackedChange = (change, context) => {
2580
- const trackedChange = {
2581
- type: change.type,
2582
- info: change.info
2583
- };
2584
- for (const item of change.content) {
2585
- if (item.type === "run") {
2586
- visitRun(item, {
2656
+ if (item.type === "simpleField") {
2657
+ if (visitTextBoxRuns({
2658
+ items: item.content,
2659
+ context,
2660
+ visitRun
2661
+ })) return true;
2662
+ continue;
2663
+ }
2664
+ if (item.type === "insertion" || item.type === "deletion" || item.type === "moveFrom" || item.type === "moveTo") {
2665
+ const trackedChange = {
2666
+ type: item.type,
2667
+ info: item.info
2668
+ };
2669
+ if (visitTextBoxRuns({
2670
+ items: item.content,
2671
+ context: {
2587
2672
  ...context,
2588
2673
  trackedChange
2589
- });
2590
- continue;
2591
- }
2592
- if (item.type === "hyperlink") visitHyperlink(item, {
2593
- ...context,
2594
- trackedChange
2595
- });
2596
- }
2597
- };
2598
- const visitInlineSdt = (sdt, context) => {
2599
- const inlineSdts = [...context.inlineSdts, sdtAttrsFromProperties(sdt.properties)];
2600
- const nestedContext = {
2601
- ...context,
2602
- inlineSdts
2603
- };
2604
- for (const item of sdt.content) {
2605
- if (item.type === "run") {
2606
- visitRun(item, nestedContext);
2607
- continue;
2608
- }
2609
- if (item.type === "inlineSdt") {
2610
- visitInlineSdt(item, nestedContext);
2611
- continue;
2612
- }
2613
- if (item.type === "hyperlink") {
2614
- visitHyperlink(item, nestedContext);
2615
- continue;
2616
- }
2617
- if (item.type === "insertion" || item.type === "deletion" || item.type === "moveFrom" || item.type === "moveTo") visitTrackedChange(item, nestedContext);
2618
- }
2619
- };
2620
- const rootContext = { inlineSdts: [] };
2621
- for (const item of paragraph.content) {
2622
- if (item.type === "run") {
2623
- visitRun(item, rootContext);
2674
+ },
2675
+ visitRun
2676
+ })) return true;
2624
2677
  continue;
2625
2678
  }
2626
2679
  if (item.type === "inlineSdt") {
2627
- visitInlineSdt(item, rootContext);
2680
+ const inlineSdts = [...context.inlineSdts, sdtAttrsFromProperties(item.properties)];
2681
+ if (visitTextBoxRuns({
2682
+ items: item.content,
2683
+ context: {
2684
+ ...context,
2685
+ inlineSdts
2686
+ },
2687
+ visitRun
2688
+ })) return true;
2628
2689
  continue;
2629
2690
  }
2630
2691
  if (item.type === "hyperlink") {
2631
- visitHyperlink(item, rootContext);
2692
+ if (visitTextBoxRuns({
2693
+ items: item.children,
2694
+ context,
2695
+ visitRun
2696
+ })) return true;
2632
2697
  continue;
2633
2698
  }
2634
- if (item.type === "insertion" || item.type === "deletion" || item.type === "moveFrom" || item.type === "moveTo") visitTrackedChange(item, rootContext);
2699
+ if (item.type === "inlineWrapper") {
2700
+ if (visitTextBoxRuns({
2701
+ items: item.content,
2702
+ context,
2703
+ visitRun
2704
+ })) return true;
2705
+ }
2635
2706
  }
2707
+ return false;
2708
+ }
2709
+ function mayContainTextBox(paragraph) {
2710
+ return visitTextBoxRuns({
2711
+ items: paragraph.content,
2712
+ context: { inlineSdts: [] },
2713
+ visitRun: (run) => run.content.some((content) => content.type === "shape" && content.shape.textBody)
2714
+ });
2715
+ }
2716
+ function extractTextBoxes(paragraph, textBoxGroupId) {
2717
+ const textBoxes = [];
2718
+ const textBoxAnchors = /* @__PURE__ */ new Map();
2719
+ visitTextBoxRuns({
2720
+ items: paragraph.content,
2721
+ context: { inlineSdts: [] },
2722
+ visitRun: (run, context) => {
2723
+ for (const runContent of run.content) {
2724
+ if (runContent.type !== "shape" || !runContent.shape.textBody) continue;
2725
+ const anchorId = `${textBoxGroupId}:${textBoxes.length}`;
2726
+ textBoxAnchors.set(runContent.shape, anchorId);
2727
+ textBoxes.push({
2728
+ textBox: textBoxFromShape(runContent.shape, runContent.shape.textBody),
2729
+ alternateContent: replayableShapeAlternateContent(runContent) === void 0 ? void 0 : runContent.alternateContent,
2730
+ anchorId,
2731
+ trackedChange: context.trackedChange,
2732
+ inlineSdts: context.inlineSdts
2733
+ });
2734
+ }
2735
+ return false;
2736
+ }
2737
+ });
2636
2738
  return {
2637
2739
  textBoxes,
2638
2740
  textBoxAnchors
@@ -2721,12 +2823,13 @@ function convertTextBox(textBox, styleResolver, options) {
2721
2823
  let cssFloat;
2722
2824
  if (wrapType === void 0 || wrapType === "inline") cssFloat = "none";
2723
2825
  else if (wrapType === "topAndBottom") cssFloat = "none";
2724
- else if (wrapType === "square" || wrapType === "tight" || wrapType === "through") if (wrapText === "left") cssFloat = "right";
2725
- else if (wrapText === "right") cssFloat = "left";
2726
- else if (hAlign === "left") cssFloat = "left";
2727
- else if (hAlign === "right") cssFloat = "right";
2728
- else cssFloat = "none";
2729
- else cssFloat = "none";
2826
+ else if (wrapType === "square" || wrapType === "tight" || wrapType === "through") {
2827
+ if (wrapText === "left") cssFloat = "right";
2828
+ else if (wrapText === "right") cssFloat = "left";
2829
+ else if (hAlign === "left") cssFloat = "left";
2830
+ else if (hAlign === "right") cssFloat = "right";
2831
+ else cssFloat = "none";
2832
+ } else cssFloat = "none";
2730
2833
  let displayMode;
2731
2834
  if (wrapType === void 0 || wrapType === "inline") displayMode = "inline";
2732
2835
  else if (wrapType === "topAndBottom") displayMode = "block";
@@ -2858,13 +2961,19 @@ function headerFooterToProseDoc(content, options) {
2858
2961
  case "bookmarkEnd":
2859
2962
  out.push(convertBlockBookmarkBoundary(block));
2860
2963
  break;
2964
+ case "moveFromRangeStart":
2965
+ case "moveFromRangeEnd":
2966
+ case "moveToRangeStart":
2967
+ case "moveToRangeEnd":
2968
+ out.push(convertBlockMoveRangeBoundary(block));
2969
+ break;
2861
2970
  default: panic(`Unsupported block content: ${JSON.stringify(block)}`);
2862
2971
  }
2863
2972
  return out;
2864
2973
  };
2865
2974
  nodes.push(...convertBlocks(content));
2866
2975
  if (nodes.length === 0) nodes.push(schema.node("paragraph", {}, []));
2867
- const pmDoc = stampNumberedRefFieldBaselines(schema.node("doc", null, nodes));
2976
+ const pmDoc = stampNumberedRefFieldBaselines(schema.node("doc", null, [...continueSourceCarrierIdentitiesAcrossInsertedParagraphMarks(nodes)]));
2868
2977
  assertValidProseMirrorDocument(pmDoc, "Header/footer conversion produced an invalid ProseMirror document");
2869
2978
  return pmDoc;
2870
2979
  }
@@ -2878,4 +2987,4 @@ function createEmptyDoc() {
2878
2987
  return schema.node("doc", null, [schema.node("paragraph", {}, [])]);
2879
2988
  }
2880
2989
  //#endregion
2881
- export { collectPairedBookmarkIds, createEmptyDoc, footnoteToProseDoc, headerFooterToProseDoc, standaloneTableCellToProseMirror, toProseDoc };
2990
+ export { collectPairedBookmarkIds, createEmptyDoc, footnoteToProseDoc, headerFooterToProseDoc, hostParagraphAttrs, standaloneTableCellToProseMirror, toProseDoc };