@eigenpal/docx-editor-core 1.2.1 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/dist/agent/index.d.mts +5 -4
  2. package/dist/agent/index.d.ts +5 -4
  3. package/dist/agent/index.js +1 -1
  4. package/dist/agent/index.mjs +1 -1
  5. package/dist/anchoredObjectPosition-CS-8BfhO.d.ts +48 -0
  6. package/dist/anchoredObjectPosition-KJEyF-wr.d.mts +48 -0
  7. package/dist/{chunk-U4WUDHDK.js → chunk-2SGJZYQF.js} +1 -1
  8. package/dist/chunk-3ANZ3252.mjs +2 -0
  9. package/dist/chunk-3G44SFHX.mjs +4 -0
  10. package/dist/{chunk-4QEETB7U.js → chunk-3QPKTG2Y.js} +2 -2
  11. package/dist/chunk-3R7QHNI5.js +2 -0
  12. package/dist/chunk-4GFTMGSV.mjs +1 -0
  13. package/dist/chunk-4MYKVWNF.js +1 -0
  14. package/dist/chunk-4RTVLMRZ.js +2 -0
  15. package/dist/chunk-55XWETY4.mjs +1 -0
  16. package/dist/chunk-6QO4O52Y.mjs +1 -0
  17. package/dist/{chunk-THLJYXFB.js → chunk-6V3SFHEM.js} +1 -1
  18. package/dist/{chunk-6ZXL3EIP.mjs → chunk-7CZEZ3UL.mjs} +1 -1
  19. package/dist/{chunk-Z5MJYQSD.mjs → chunk-7UZJ5YDF.mjs} +1 -1
  20. package/dist/{chunk-BXWOLARZ.js → chunk-APNMO5JT.js} +1 -1
  21. package/dist/{chunk-KZXZWGFX.mjs → chunk-B46V5G46.mjs} +1 -1
  22. package/dist/chunk-BH3ACQ3M.js +59 -0
  23. package/dist/chunk-BUCOTKYY.js +1 -0
  24. package/dist/{chunk-5BLQHXWK.mjs → chunk-CDXCFHOY.mjs} +1 -1
  25. package/dist/chunk-CHN26LLL.mjs +59 -0
  26. package/dist/chunk-CZSAC65M.js +2 -0
  27. package/dist/chunk-D3PRIF3Y.mjs +1 -0
  28. package/dist/chunk-DE2V4X3B.mjs +1 -0
  29. package/dist/{chunk-7BVHKWEW.mjs → chunk-DFUWJHKF.mjs} +1 -1
  30. package/dist/{chunk-UGV4KRQB.js → chunk-DG2CMDSM.js} +1 -1
  31. package/dist/chunk-DKKTY56Q.js +1 -0
  32. package/dist/chunk-FIGLFSNR.js +1 -0
  33. package/dist/{chunk-AMB6Y77B.js → chunk-FQS436KN.js} +1 -1
  34. package/dist/chunk-FYRJTDC4.mjs +2 -0
  35. package/dist/chunk-GYWTUUXX.mjs +2 -0
  36. package/dist/chunk-HPJBZL37.mjs +1 -0
  37. package/dist/chunk-INDYZOOS.js +1 -0
  38. package/dist/chunk-IUVQJ6PX.mjs +1 -0
  39. package/dist/chunk-J3YFJDZD.js +1 -0
  40. package/dist/chunk-JHTURDPX.mjs +1 -0
  41. package/dist/{chunk-D62KS7QG.mjs → chunk-LAJPGQEE.mjs} +1 -1
  42. package/dist/chunk-LERLET2D.js +4 -0
  43. package/dist/chunk-LX35TFGF.mjs +1 -0
  44. package/dist/{chunk-BOOHU5EW.mjs → chunk-MOCGHQ4A.mjs} +1 -1
  45. package/dist/chunk-NAFMAKLK.js +2 -0
  46. package/dist/chunk-NRWQ65NX.js +1 -0
  47. package/dist/chunk-OTHV7YV2.js +2 -0
  48. package/dist/chunk-QLAIOTQB.js +1 -0
  49. package/dist/{chunk-U4XMGWF7.js → chunk-RAWVGULQ.js} +1 -1
  50. package/dist/chunk-RQVHKDXK.js +2 -0
  51. package/dist/chunk-RSU4HTC6.js +1 -0
  52. package/dist/{chunk-E4JMCA5X.js → chunk-SCK6ZM5V.js} +2 -2
  53. package/dist/chunk-SWBLJF6R.mjs +2 -0
  54. package/dist/chunk-UE2ZKRYB.mjs +2 -0
  55. package/dist/chunk-VOCHZNOF.mjs +1 -0
  56. package/dist/{chunk-OEXVWIHW.mjs → chunk-W77JXDEV.mjs} +1 -1
  57. package/dist/chunk-W7CQRQZ6.mjs +1 -0
  58. package/dist/chunk-WWBNJ7KF.js +1 -0
  59. package/dist/chunk-WWNOXNEX.mjs +2 -0
  60. package/dist/chunk-YGWUKRFD.mjs +1 -0
  61. package/dist/chunk-YM7SMTYY.js +1 -0
  62. package/dist/{chunk-QKLY4F2J.mjs → chunk-YNUPP7UG.mjs} +1 -1
  63. package/dist/chunk-YPKIQMPR.js +1 -0
  64. package/dist/{chunk-HQPWFUP5.js → chunk-Z3LGMBJC.js} +1 -1
  65. package/dist/{colorResolver-BZ_yScf4.d.ts → colorResolver-8A-qj-LP.d.ts} +1 -1
  66. package/dist/{colorResolver-C6DtsoFI.d.mts → colorResolver-BCvxTlLF.d.mts} +1 -1
  67. package/dist/{content-CE-ZdMwG.d.mts → content-3xF4WDE8.d.mts} +51 -7
  68. package/dist/{content-CYXJ2tfQ.d.ts → content-C8fc_tL6.d.ts} +51 -7
  69. package/dist/{contentControlValues-gyVPsi6m.d.ts → contentControlValues-DGDKD589.d.ts} +1 -1
  70. package/dist/{contentControlValues-DAwTWfgR.d.mts → contentControlValues-DjWvoJQ-.d.mts} +1 -1
  71. package/dist/core-plugins.d.mts +6 -5
  72. package/dist/core-plugins.d.ts +6 -5
  73. package/dist/core-plugins.js +1 -1
  74. package/dist/core-plugins.mjs +1 -1
  75. package/dist/core.d.mts +12 -11
  76. package/dist/core.d.ts +12 -11
  77. package/dist/core.js +1 -1
  78. package/dist/core.mjs +1 -1
  79. package/dist/{documentStyles-DToJv9co.d.ts → documentStyles-C7k_8Sye.d.ts} +1 -1
  80. package/dist/{documentStyles-D87dxl18.d.mts → documentStyles-qR0VR2s0.d.mts} +1 -1
  81. package/dist/docx/index.d.mts +3 -2
  82. package/dist/docx/index.d.ts +3 -2
  83. package/dist/docx/index.js +1 -1
  84. package/dist/docx/index.mjs +1 -1
  85. package/dist/docx/parser.d.mts +3 -2
  86. package/dist/docx/parser.d.ts +3 -2
  87. package/dist/docx/parser.js +1 -1
  88. package/dist/docx/parser.mjs +1 -1
  89. package/dist/docx/rezip.d.mts +3 -2
  90. package/dist/docx/rezip.d.ts +3 -2
  91. package/dist/docx/rezip.js +1 -1
  92. package/dist/docx/rezip.mjs +1 -1
  93. package/dist/docx/serializer/index.d.mts +42 -4
  94. package/dist/docx/serializer/index.d.ts +42 -4
  95. package/dist/docx/serializer/index.js +1 -1
  96. package/dist/docx/serializer/index.mjs +1 -1
  97. package/dist/editor/index.d.mts +128 -0
  98. package/dist/editor/index.d.ts +128 -0
  99. package/dist/editor/index.js +1 -0
  100. package/dist/editor/index.mjs +1 -0
  101. package/dist/{fontLoader-Z7pqeNvZ.d.mts → fontLoader-CUS1BPv7.d.mts} +1 -1
  102. package/dist/{fontLoader-Cm02v7PO.d.ts → fontLoader-Dl9SEKex.d.ts} +1 -1
  103. package/dist/{footnotes-lCH_P3N3.d.mts → footnotes-BZ24OTAT.d.mts} +25 -2
  104. package/dist/{footnotes-skVvEHvZ.d.ts → footnotes-DMsicPGd.d.ts} +25 -2
  105. package/dist/{headerFooterLayout-Bd58Tum3.d.ts → headerFooterLayout-AtAOhM8E.d.ts} +22 -6
  106. package/dist/{headerFooterLayout-CuIJiIzi.d.mts → headerFooterLayout-CU6hvszp.d.mts} +22 -6
  107. package/dist/headless.d.mts +47 -11
  108. package/dist/headless.d.ts +47 -11
  109. package/dist/headless.js +1 -1
  110. package/dist/headless.mjs +1 -1
  111. package/dist/layout-bridge/clickToPositionDom.d.mts +26 -1
  112. package/dist/layout-bridge/clickToPositionDom.d.ts +26 -1
  113. package/dist/layout-bridge/clickToPositionDom.js +1 -1
  114. package/dist/layout-bridge/clickToPositionDom.mjs +1 -1
  115. package/dist/layout-bridge/index.d.mts +134 -8
  116. package/dist/layout-bridge/index.d.ts +134 -8
  117. package/dist/layout-bridge/index.js +1 -1
  118. package/dist/layout-bridge/index.mjs +1 -1
  119. package/dist/layout-bridge/measuring/index.d.mts +7 -75
  120. package/dist/layout-bridge/measuring/index.d.ts +7 -75
  121. package/dist/layout-bridge/measuring/index.js +1 -1
  122. package/dist/layout-bridge/measuring/index.mjs +1 -1
  123. package/dist/layout-bridge/tableInsertHover.js +1 -1
  124. package/dist/layout-bridge/tableInsertHover.mjs +1 -1
  125. package/dist/layout-bridge/toFlowBlocks.d.mts +3 -2
  126. package/dist/layout-bridge/toFlowBlocks.d.ts +3 -2
  127. package/dist/layout-bridge/toFlowBlocks.js +1 -1
  128. package/dist/layout-bridge/toFlowBlocks.mjs +1 -1
  129. package/dist/layout-engine/index.d.mts +16 -3
  130. package/dist/layout-engine/index.d.ts +16 -3
  131. package/dist/layout-engine/index.js +1 -1
  132. package/dist/layout-engine/index.mjs +1 -1
  133. package/dist/layout-engine/types.d.mts +22 -1
  134. package/dist/layout-engine/types.d.ts +22 -1
  135. package/dist/layout-painter/index.d.mts +7 -5
  136. package/dist/layout-painter/index.d.ts +7 -5
  137. package/dist/layout-painter/index.js +1 -1
  138. package/dist/layout-painter/index.mjs +1 -1
  139. package/dist/layout-painter/renderPage.d.mts +15 -6
  140. package/dist/layout-painter/renderPage.d.ts +15 -6
  141. package/dist/layout-painter/renderPage.js +1 -1
  142. package/dist/layout-painter/renderPage.mjs +1 -1
  143. package/dist/managers/AutoSaveManager.d.mts +3 -2
  144. package/dist/managers/AutoSaveManager.d.ts +3 -2
  145. package/dist/managers/TableSelectionManager.d.mts +3 -2
  146. package/dist/managers/TableSelectionManager.d.ts +3 -2
  147. package/dist/managers/types.d.mts +3 -2
  148. package/dist/managers/types.d.ts +3 -2
  149. package/dist/mcp-cli.mjs +23 -23
  150. package/dist/mcp.d.mts +4 -3
  151. package/dist/mcp.d.ts +4 -3
  152. package/dist/mcp.js +3 -3
  153. package/dist/mcp.mjs +2 -2
  154. package/dist/measureBlocksPipeline-BMqbRFQB.d.mts +96 -0
  155. package/dist/measureBlocksPipeline-iYNzAH-o.d.ts +96 -0
  156. package/dist/{nodes-BNkRKBBX.d.ts → nodes-75Q9GBxV.d.ts} +1 -1
  157. package/dist/{nodes-Bz-UHhLE.d.mts → nodes-cEI7hVY2.d.mts} +1 -1
  158. package/dist/prosemirror/applyFormatting.d.mts +67 -0
  159. package/dist/prosemirror/applyFormatting.d.ts +67 -0
  160. package/dist/prosemirror/applyFormatting.js +1 -0
  161. package/dist/prosemirror/applyFormatting.mjs +1 -0
  162. package/dist/prosemirror/commands/formatting.js +1 -1
  163. package/dist/prosemirror/commands/formatting.mjs +1 -1
  164. package/dist/prosemirror/commands/index.d.mts +20 -1
  165. package/dist/prosemirror/commands/index.d.ts +20 -1
  166. package/dist/prosemirror/commands/index.js +1 -1
  167. package/dist/prosemirror/commands/index.mjs +1 -1
  168. package/dist/prosemirror/commands/paragraph.js +1 -1
  169. package/dist/prosemirror/commands/paragraph.mjs +1 -1
  170. package/dist/prosemirror/commentIdAllocator.d.mts +50 -0
  171. package/dist/prosemirror/commentIdAllocator.d.ts +50 -0
  172. package/dist/prosemirror/commentIdAllocator.js +1 -0
  173. package/dist/prosemirror/commentIdAllocator.mjs +1 -0
  174. package/dist/prosemirror/commentOps.d.mts +46 -0
  175. package/dist/prosemirror/commentOps.d.ts +46 -0
  176. package/dist/prosemirror/commentOps.js +1 -0
  177. package/dist/prosemirror/commentOps.mjs +1 -0
  178. package/dist/prosemirror/conversion/fromProseDoc.d.mts +3 -2
  179. package/dist/prosemirror/conversion/fromProseDoc.d.ts +3 -2
  180. package/dist/prosemirror/conversion/fromProseDoc.js +1 -1
  181. package/dist/prosemirror/conversion/fromProseDoc.mjs +1 -1
  182. package/dist/prosemirror/conversion/index.d.mts +3 -2
  183. package/dist/prosemirror/conversion/index.d.ts +3 -2
  184. package/dist/prosemirror/conversion/index.js +1 -1
  185. package/dist/prosemirror/conversion/index.mjs +1 -1
  186. package/dist/prosemirror/editor.css +12 -2
  187. package/dist/prosemirror/extensions/index.js +1 -1
  188. package/dist/prosemirror/extensions/index.mjs +1 -1
  189. package/dist/prosemirror/imageCommit.d.mts +35 -0
  190. package/dist/prosemirror/imageCommit.d.ts +35 -0
  191. package/dist/prosemirror/imageCommit.js +1 -0
  192. package/dist/prosemirror/imageCommit.mjs +1 -0
  193. package/dist/prosemirror/index.d.mts +6 -5
  194. package/dist/prosemirror/index.d.ts +6 -5
  195. package/dist/prosemirror/index.js +2 -2
  196. package/dist/prosemirror/index.mjs +1 -1
  197. package/dist/prosemirror/paraText.d.mts +52 -0
  198. package/dist/prosemirror/paraText.d.ts +52 -0
  199. package/dist/prosemirror/paraText.js +1 -0
  200. package/dist/prosemirror/paraText.mjs +1 -0
  201. package/dist/prosemirror/plugins/index.d.mts +4 -3
  202. package/dist/prosemirror/plugins/index.d.ts +4 -3
  203. package/dist/prosemirror/queries.d.mts +65 -0
  204. package/dist/prosemirror/queries.d.ts +65 -0
  205. package/dist/prosemirror/queries.js +2 -0
  206. package/dist/prosemirror/queries.mjs +2 -0
  207. package/dist/prosemirror/schema/index.d.mts +3 -2
  208. package/dist/prosemirror/schema/index.d.ts +3 -2
  209. package/dist/prosemirror/schema/index.js +1 -1
  210. package/dist/prosemirror/schema/index.mjs +1 -1
  211. package/dist/prosemirror/styles/index.d.mts +1 -1
  212. package/dist/prosemirror/styles/index.d.ts +1 -1
  213. package/dist/prosemirror/tableResize.d.mts +58 -0
  214. package/dist/prosemirror/tableResize.d.ts +58 -0
  215. package/dist/prosemirror/tableResize.js +1 -0
  216. package/dist/prosemirror/tableResize.mjs +1 -0
  217. package/dist/prosemirror/utils/extractTrackedChanges.d.mts +2 -1
  218. package/dist/prosemirror/utils/extractTrackedChanges.d.ts +2 -1
  219. package/dist/{registry-Cpyybgij.d.mts → registry-NLnxX7pq.d.mts} +1 -1
  220. package/dist/{registry-E5pahPKL.d.ts → registry-egK81C_z.d.ts} +1 -1
  221. package/dist/sectionPropertiesSerializer-D86QlzlT.d.mts +59 -0
  222. package/dist/sectionPropertiesSerializer-uXyGONxu.d.ts +59 -0
  223. package/dist/{styles-EI2lxeEN.d.mts → styles-BOJ93SAm.d.mts} +1 -1
  224. package/dist/{styles-BBv7doYK.d.ts → styles-BWqX2AS-.d.ts} +1 -1
  225. package/dist/types/content.d.mts +2 -1
  226. package/dist/types/content.d.ts +2 -1
  227. package/dist/types/content.js +1 -1
  228. package/dist/types/content.mjs +1 -0
  229. package/dist/types/document.d.mts +17 -6
  230. package/dist/types/document.d.ts +17 -6
  231. package/dist/types/document.js +1 -1
  232. package/dist/types/document.mjs +1 -0
  233. package/dist/{types-DXG7vqe9.d.ts → types-DDQWU7-j.d.ts} +1 -1
  234. package/dist/{types-dYdjUZMo.d.mts → types-DTF0N7UE.d.mts} +1 -1
  235. package/dist/utils/autoScroll.d.mts +24 -0
  236. package/dist/utils/autoScroll.d.ts +24 -0
  237. package/dist/utils/autoScroll.js +1 -0
  238. package/dist/utils/autoScroll.mjs +1 -0
  239. package/dist/utils/comments.d.mts +2 -1
  240. package/dist/utils/comments.d.ts +2 -1
  241. package/dist/utils/index.d.mts +5 -4
  242. package/dist/utils/index.d.ts +5 -4
  243. package/dist/{variableDetector-HPZbJ_gw.d.ts → variableDetector-1mxzPfs2.d.ts} +1 -1
  244. package/dist/{variableDetector-C7BLz9sJ.d.mts → variableDetector-CaY-sDau.d.mts} +1 -1
  245. package/dist/watermark-DAcnAs_J.d.mts +77 -0
  246. package/dist/watermark-DAcnAs_J.d.ts +77 -0
  247. package/package.json +73 -1
  248. package/dist/chunk-2EQGBVPV.js +0 -2
  249. package/dist/chunk-44FHVKSI.js +0 -1
  250. package/dist/chunk-44JKHPGF.mjs +0 -2
  251. package/dist/chunk-5M7TI6TV.js +0 -1
  252. package/dist/chunk-6Y6LON6Y.mjs +0 -1
  253. package/dist/chunk-7RDCZLTU.js +0 -1
  254. package/dist/chunk-7ZN4WI5N.mjs +0 -4
  255. package/dist/chunk-CCPBNE2F.mjs +0 -2
  256. package/dist/chunk-DV6GWBUJ.js +0 -2
  257. package/dist/chunk-EQAORQC3.mjs +0 -1
  258. package/dist/chunk-FYKRDDKG.js +0 -1
  259. package/dist/chunk-GUQFNJHE.mjs +0 -1
  260. package/dist/chunk-ICE6NC3S.mjs +0 -1
  261. package/dist/chunk-IFUED5ZS.mjs +0 -1
  262. package/dist/chunk-KGTEBLB6.js +0 -1
  263. package/dist/chunk-KRN6YSR2.mjs +0 -1
  264. package/dist/chunk-L72YAV5N.js +0 -3
  265. package/dist/chunk-LTHT4A4S.js +0 -1
  266. package/dist/chunk-MERJFGEP.mjs +0 -59
  267. package/dist/chunk-MP4QSEO2.mjs +0 -1
  268. package/dist/chunk-PVAVS3IU.js +0 -1
  269. package/dist/chunk-QYF7BRG3.js +0 -2
  270. package/dist/chunk-RKDVY7I3.mjs +0 -1
  271. package/dist/chunk-ROG4MNOR.js +0 -4
  272. package/dist/chunk-SORYYVJ7.js +0 -1
  273. package/dist/chunk-SZIOF5SG.js +0 -59
  274. package/dist/chunk-VMRUBLPI.js +0 -1
  275. package/dist/chunk-WKUHYMDO.mjs +0 -1
  276. package/dist/chunk-WLDI6N3B.mjs +0 -3
  277. package/dist/chunk-WLHNIXWC.mjs +0 -2
  278. package/dist/chunk-YMZ3F2FZ.mjs +0 -1
  279. package/dist/chunk-ZBFNOJGY.js +0 -1
  280. package/dist/documentSerializer-Bghq9rFI.d.mts +0 -36
  281. package/dist/documentSerializer-C4lFC60P.d.ts +0 -36
@@ -9,20 +9,25 @@
9
9
  * @public
10
10
  */
11
11
  export { ToFlowBlocksOptions, convertBorderSpecToLayout, resetBlockIdCounter, resolveListTemplate, toFlowBlocks } from './toFlowBlocks.mjs';
12
- import { TableBlock, Fragment, FlowBlock, Measure, Page, TableFragment, TableMeasure, ParagraphBlock, ParagraphMeasure, Layout, PageMargins } from '../layout-engine/types.mjs';
13
- export { FloatingExclusionRect, FloatingImageZone, FloatingLineSegmentZone, FontMetrics, FontStyle, MeasureBlockFn, MeasureParagraphOptions, RunMeasurement, TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFloatingMargins, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureBlocksWithFloats, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, rectsToFloatingZones, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx } from './measuring/index.mjs';
14
- export { DomCaretPosition, DomSelectionRect, clickToPositionDom, getCaretPositionFromDom, getSelectionRectsFromDom, clickToPositionDom as mouseToPosition } from './clickToPositionDom.mjs';
15
- export { C as ConvertFootnoteOptions, a as ConvertHeaderFooterOptions, F as FOOTNOTE_SEPARATOR_HEIGHT, H as HeaderFooterMetrics, M as MAX_FOOTNOTE_LAYOUT_PASSES, b as MeasureBlocksFn, S as StabilizeFootnoteLayoutArgs, c as StabilizeFootnoteLayoutResult, j as applyFootnotePresentation, d as buildFootnoteContentMap, e as buildFootnoteRenderItems, f as calculateFootnoteReservedHeights, k as calculateHeaderFooterVisualBounds, g as collectFootnoteRefs, l as computeHfCaretRectFromView, n as computeHfSelectionRectsFromView, o as convertFootnoteToContent, p as convertHeaderFooterPmDocToContent, h as convertHeaderFooterToContent, i as footnoteReservedHeightsEqual, q as invalidateHfDomCache, m as mapFootnotesToPages, r as normalizeHeaderFooterMeasureBlocks, t as resolveHeaderFooterVisualTop, s as stabilizeFootnoteLayout } from '../headerFooterLayout-CuIJiIzi.mjs';
12
+ import { TableBlock, Fragment, FlowBlock, Measure, Page, TableFragment, TableMeasure, ParagraphBlock, ParagraphMeasure, Layout, PageMargins, ColumnLayout } from '../layout-engine/types.mjs';
13
+ export { FontMetrics, FontStyle, MeasureParagraphOptions, RunMeasurement, TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx } from './measuring/index.mjs';
14
+ export { F as FloatPageGeometry, a as FloatingExclusionRect, b as FloatingImageZone, c as FloatingLineSegmentZone, M as MeasureBlockFn, g as getFloatingMargins, m as measureBlocksWithFloats, r as rectsToFloatingZones } from '../measureBlocksPipeline-BMqbRFQB.mjs';
15
+ export { DomCaretPosition, DomSelectionRect, clickToPositionDom, clipRectToTableWindow, getCaretPositionFromDom, getSelectionRectsFromDom, clickToPositionDom as mouseToPosition } from './clickToPositionDom.mjs';
16
+ import { EditorState } from 'prosemirror-state';
17
+ export { C as ConvertFootnoteOptions, a as ConvertHeaderFooterOptions, F as FOOTNOTE_SEPARATOR_HEIGHT, H as HeaderFooterMetrics, M as MAX_FOOTNOTE_LAYOUT_PASSES, b as MeasureBlocksFn, S as StabilizeFootnoteLayoutArgs, c as StabilizeFootnoteLayoutResult, j as applyFootnotePresentation, d as buildFootnoteContentMap, e as buildFootnoteRenderItems, f as calculateFootnoteReservedHeights, k as calculateHeaderFooterVisualBounds, g as collectFootnoteRefs, l as computeHfCaretRectFromView, n as computeHfSelectionRectsFromView, o as contributesToHeaderFooterFlowHeight, p as convertFootnoteToContent, q as convertHeaderFooterPmDocToContent, h as convertHeaderFooterToContent, i as footnoteReservedHeightsEqual, r as invalidateHfDomCache, m as mapFootnotesToPages, t as normalizeHeaderFooterMeasureBlocks, u as resolveHeaderFooterVisualTop, s as stabilizeFootnoteLayout } from '../headerFooterLayout-CU6hvszp.mjs';
18
+ import { H as HeaderFooterContent } from '../footnotes-BZ24OTAT.mjs';
16
19
  export { TABLE_INSERT_EDGE_PROXIMITY, TABLE_INSERT_HIDE_DELAY_MS, TableInsertHoverHit, TableInsertHoverInput, detectTableInsertHover } from './tableInsertHover.mjs';
20
+ import { SectionLayoutConfig } from '../layout-engine/index.mjs';
17
21
  import { Document } from '../types/document.mjs';
18
- import { S as SectionProperties, y as HeaderFooter } from '../content-CE-ZdMwG.mjs';
22
+ import { S as SectionProperties, y as HeaderFooter } from '../content-3xF4WDE8.mjs';
19
23
  import 'prosemirror-model';
20
- import '../styles-EI2lxeEN.mjs';
24
+ import '../styles-BOJ93SAm.mjs';
21
25
  import '../formatting-BH4hcZiq.mjs';
22
26
  import '../colors-C3vA7HUU.mjs';
23
27
  import '../docx/wrapTypes.mjs';
28
+ import '../watermark-DAcnAs_J.mjs';
29
+ import '../anchoredObjectPosition-KJEyF-wr.mjs';
24
30
  import 'prosemirror-view';
25
- import '../footnotes-lCH_P3N3.mjs';
26
31
 
27
32
  /**
28
33
  * @internal Helpers for resolving DOCX table-width metadata into pixel widths.
@@ -35,6 +40,26 @@ import '../footnotes-lCH_P3N3.mjs';
35
40
  * @internal
36
41
  */
37
42
  declare function resolveTableWidthPx(value: number | undefined, widthType: string | undefined, parentWidth: number): number | undefined;
43
+ /** A cell with its resolved grid position (column index honoring spans). */
44
+ interface ResolvedGridCell {
45
+ rowIndex: number;
46
+ cellIndex: number;
47
+ columnIndex: number;
48
+ colSpan: number;
49
+ rowSpan: number;
50
+ }
51
+ /**
52
+ * Resolve every cell's grid column index, accounting for `colSpan` and the
53
+ * columns occupied by vertically-merged (`rowSpan`) cells from earlier rows.
54
+ *
55
+ * Single source of truth for table grid geometry — the measurer, the painter,
56
+ * and the row-break paginator all consume this so they agree on which column a
57
+ * cell lives in. Width-free on purpose: callers multiply `columnIndex` by their
58
+ * own (possibly scaled) column widths to get an x offset.
59
+ *
60
+ * @internal
61
+ */
62
+ declare function resolveCellGrid(tableBlock: TableBlock): ResolvedGridCell[];
38
63
  /** Total grid columns, derived from the widest row's accumulated colSpans. */
39
64
  declare function countTableColumns(tableBlock: TableBlock): number;
40
65
  /**
@@ -263,6 +288,29 @@ declare function getPositionRect(block: ParagraphBlock, measure: ParagraphMeasur
263
288
  height: number;
264
289
  } | null;
265
290
 
291
+ /**
292
+ * Apply the visual cell-selection highlight class onto rendered table cells.
293
+ *
294
+ * The layout painter renders pages as static DOM with `data-pm-start` on each
295
+ * table cell. This walk translates a ProseMirror `CellSelection` into the
296
+ * `.layout-table-cell-selected` class on the matching painted cells. Shared by
297
+ * the React and Vue adapters.
298
+ */
299
+
300
+ /**
301
+ * Apply the `.layout-table-cell-selected` class to painted layout cells
302
+ * matching a CellSelection in the PM state. Clears the class everywhere
303
+ * (within scope) first so toggling off (or moving to a TextSelection) erases
304
+ * prior highlights.
305
+ *
306
+ * Duck-types CellSelection via `$anchorCell` / `forEachCell` rather than
307
+ * `instanceof` to dodge bundling issues across `prosemirror-tables` copies
308
+ * (the same trick used inline in the selection-overlay update).
309
+ */
310
+ declare function applyCellSelectionHighlight(pagesContainer: HTMLElement, state: EditorState, options?: {
311
+ scope?: 'body' | 'header' | 'footer';
312
+ }): void;
313
+
266
314
  /**
267
315
  * Selection Rectangles
268
316
  *
@@ -337,6 +385,69 @@ declare function isMultiPageSelection(rects: SelectionRect[]): boolean;
337
385
  */
338
386
  declare function groupRectsByPage(rects: SelectionRect[]): Map<number, SelectionRect[]>;
339
387
 
388
+ /**
389
+ * Header/footer body-margin extension.
390
+ *
391
+ * Word grows the header (or footer) band when its in-flow content is taller
392
+ * than the authored top (or bottom) margin minus the header/footer distance,
393
+ * pushing the body text down (or up). This module owns that computation so the
394
+ * React and Vue adapters share one implementation instead of byte-identical
395
+ * inline copies (the layout pipelines were drifting candidates — see
396
+ * `docx-editor` engine-unification work, issue #696).
397
+ *
398
+ * Two correctness rules live here:
399
+ *
400
+ * 1. The band height is driven by `HeaderFooterContent.flowHeight` (in-flow
401
+ * content only), NOT `height` / `visualBottom`. A page/margin-anchored
402
+ * float — e.g. a full-page letterhead anchored in a header — is positioned
403
+ * on the page and does not push the body in Word. Counting it inflated the
404
+ * effective top margin past the page on real-world templates, so the
405
+ * paginator hard-threw "page size and margins yield no content area" and
406
+ * the document rendered blank (issue #705).
407
+ *
408
+ * 2. A clamp guarantees `top + bottom` never consumes the whole page, so a
409
+ * pathological in-flow header degrades to a thin content band with a
410
+ * warning instead of aborting pagination.
411
+ */
412
+
413
+ /** @public */
414
+ interface ExtendMarginsForHeaderFooterInput {
415
+ pageSize: {
416
+ w: number;
417
+ h: number;
418
+ };
419
+ /** Body fallback margins. */
420
+ margins: PageMargins;
421
+ /** Final-section margins (last `sectPr`). */
422
+ finalMargins: PageMargins;
423
+ /**
424
+ * Body flow blocks. Each `sectionBreak` block's `margins` is extended IN
425
+ * PLACE so multi-section documents paginate with the same band growth (the
426
+ * layout engine prefers `sectionBreak.margins` over the body fallback).
427
+ */
428
+ bodyBlocks?: FlowBlock[];
429
+ /** Header variants in play this layout (e.g. default + first-page). */
430
+ headers?: Array<HeaderFooterContent | undefined>;
431
+ /** Footer variants in play this layout. */
432
+ footers?: Array<HeaderFooterContent | undefined>;
433
+ /** Optional diagnostic sink for the clamp (adapters pass `console.warn`). */
434
+ warn?: (message: string) => void;
435
+ }
436
+ /** @public */
437
+ interface ExtendMarginsForHeaderFooterResult {
438
+ margins: PageMargins;
439
+ finalMargins: PageMargins;
440
+ }
441
+ /**
442
+ * Extend body margins so the body clears the header/footer bands, mirroring
443
+ * Word. Returns new `margins` / `finalMargins`; mutates `sectionBreak.margins`
444
+ * in place. When no extension is needed the original objects are returned
445
+ * unchanged.
446
+ *
447
+ * @public
448
+ */
449
+ declare function extendMarginsForHeaderFooter(input: ExtendMarginsForHeaderFooterInput): ExtendMarginsForHeaderFooterResult;
450
+
340
451
  /**
341
452
  * Body-scoped DOM lookups for `data-pm-start` / `data-pm-end` markers.
342
453
  *
@@ -431,6 +542,8 @@ declare const DEFAULT_PAGE_HEIGHT_PX = 1056;
431
542
  declare const DEFAULT_BODY_MARGIN_PX = 96;
432
543
  /** Word's default `headerDistance` / `footerDistance` (0.5in = 48px). */
433
544
  declare const DEFAULT_HF_DISTANCE_PX = 48;
545
+ /** Convert twips to pixels (1 twip = 1/20 point, 96 pixels per inch). */
546
+ declare function twipsToPixels(twips: number): number;
434
547
  /** Convert SectionProperties page size (twips) → pixel `{ w, h }`. */
435
548
  declare function getPageSize(sp: SectionProperties | null | undefined): {
436
549
  w: number;
@@ -458,5 +571,18 @@ declare function resolveHeaderFooter(doc: Document | null, sp: SectionProperties
458
571
  firstHeader: HeaderFooter | null;
459
572
  firstFooter: HeaderFooter | null;
460
573
  };
574
+ /**
575
+ * Extract column layout from section properties.
576
+ * Returns undefined for single-column (default) to avoid unnecessary paginator overhead.
577
+ */
578
+ declare function getColumns(sectionProps: SectionProperties | null | undefined): ColumnLayout | undefined;
579
+ declare function columnWidthForSection(config: SectionLayoutConfig): number;
580
+ /**
581
+ * Compute per-block measurement widths by scanning for section breaks.
582
+ * Blocks must be measured with the page width/margins/columns of their own
583
+ * section so that the layout engine can paginate them against the right
584
+ * geometry without remeasuring.
585
+ */
586
+ declare function computePerBlockWidths(blocks: FlowBlock[], initialConfig: SectionLayoutConfig, finalConfig: SectionLayoutConfig): number[];
461
587
 
462
- export { type CaretPosition, DEFAULT_BODY_MARGIN_PX, DEFAULT_HF_DISTANCE_PX, DEFAULT_PAGE_HEIGHT_PX, DEFAULT_PAGE_WIDTH_PX, type FragmentHit, type HitTestResult, type PageHit, type Point, type PositionResult, type SelectionRect, type TableCellHit, clickToPosition, clickToPositionInParagraph, clickToPositionInTableCell, countTableColumns, findBodyEmptyRuns, findBodyPmAnchor, findBodyPmAnchors, findBodyPmSpans, getCaretPosition, getMargins, getPageBounds, getPageIndexAtY, getPageSize, getPageTop, getPositionRect, getScrollYForPage, getTotalDocumentHeight, groupRectsByPage, hitTest, hitTestFragment, hitTestImageFragment, hitTestPage, hitTestTableCell, isMultiPageSelection, measureTableBlock, measureTableCellBlockVisualHeight, normalizeTableColumnWidths, positionToX, resolveHeaderFooter, resolveTableWidthPx, selectionToRects };
588
+ export { type CaretPosition, DEFAULT_BODY_MARGIN_PX, DEFAULT_HF_DISTANCE_PX, DEFAULT_PAGE_HEIGHT_PX, DEFAULT_PAGE_WIDTH_PX, type ExtendMarginsForHeaderFooterInput, type ExtendMarginsForHeaderFooterResult, type FragmentHit, type HitTestResult, type PageHit, type Point, type PositionResult, type ResolvedGridCell, type SelectionRect, type TableCellHit, applyCellSelectionHighlight, clickToPosition, clickToPositionInParagraph, clickToPositionInTableCell, columnWidthForSection, computePerBlockWidths, countTableColumns, extendMarginsForHeaderFooter, findBodyEmptyRuns, findBodyPmAnchor, findBodyPmAnchors, findBodyPmSpans, getCaretPosition, getColumns, getMargins, getPageBounds, getPageIndexAtY, getPageSize, getPageTop, getPositionRect, getScrollYForPage, getTotalDocumentHeight, groupRectsByPage, hitTest, hitTestFragment, hitTestImageFragment, hitTestPage, hitTestTableCell, isMultiPageSelection, measureTableBlock, measureTableCellBlockVisualHeight, normalizeTableColumnWidths, positionToX, resolveCellGrid, resolveHeaderFooter, resolveTableWidthPx, selectionToRects, twipsToPixels };
@@ -9,20 +9,25 @@
9
9
  * @public
10
10
  */
11
11
  export { ToFlowBlocksOptions, convertBorderSpecToLayout, resetBlockIdCounter, resolveListTemplate, toFlowBlocks } from './toFlowBlocks.js';
12
- import { TableBlock, Fragment, FlowBlock, Measure, Page, TableFragment, TableMeasure, ParagraphBlock, ParagraphMeasure, Layout, PageMargins } from '../layout-engine/types.js';
13
- export { FloatingExclusionRect, FloatingImageZone, FloatingLineSegmentZone, FontMetrics, FontStyle, MeasureBlockFn, MeasureParagraphOptions, RunMeasurement, TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFloatingMargins, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureBlocksWithFloats, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, rectsToFloatingZones, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx } from './measuring/index.js';
14
- export { DomCaretPosition, DomSelectionRect, clickToPositionDom, getCaretPositionFromDom, getSelectionRectsFromDom, clickToPositionDom as mouseToPosition } from './clickToPositionDom.js';
15
- export { C as ConvertFootnoteOptions, a as ConvertHeaderFooterOptions, F as FOOTNOTE_SEPARATOR_HEIGHT, H as HeaderFooterMetrics, M as MAX_FOOTNOTE_LAYOUT_PASSES, b as MeasureBlocksFn, S as StabilizeFootnoteLayoutArgs, c as StabilizeFootnoteLayoutResult, j as applyFootnotePresentation, d as buildFootnoteContentMap, e as buildFootnoteRenderItems, f as calculateFootnoteReservedHeights, k as calculateHeaderFooterVisualBounds, g as collectFootnoteRefs, l as computeHfCaretRectFromView, n as computeHfSelectionRectsFromView, o as convertFootnoteToContent, p as convertHeaderFooterPmDocToContent, h as convertHeaderFooterToContent, i as footnoteReservedHeightsEqual, q as invalidateHfDomCache, m as mapFootnotesToPages, r as normalizeHeaderFooterMeasureBlocks, t as resolveHeaderFooterVisualTop, s as stabilizeFootnoteLayout } from '../headerFooterLayout-Bd58Tum3.js';
12
+ import { TableBlock, Fragment, FlowBlock, Measure, Page, TableFragment, TableMeasure, ParagraphBlock, ParagraphMeasure, Layout, PageMargins, ColumnLayout } from '../layout-engine/types.js';
13
+ export { FontMetrics, FontStyle, MeasureParagraphOptions, RunMeasurement, TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx } from './measuring/index.js';
14
+ export { F as FloatPageGeometry, a as FloatingExclusionRect, b as FloatingImageZone, c as FloatingLineSegmentZone, M as MeasureBlockFn, g as getFloatingMargins, m as measureBlocksWithFloats, r as rectsToFloatingZones } from '../measureBlocksPipeline-iYNzAH-o.js';
15
+ export { DomCaretPosition, DomSelectionRect, clickToPositionDom, clipRectToTableWindow, getCaretPositionFromDom, getSelectionRectsFromDom, clickToPositionDom as mouseToPosition } from './clickToPositionDom.js';
16
+ import { EditorState } from 'prosemirror-state';
17
+ export { C as ConvertFootnoteOptions, a as ConvertHeaderFooterOptions, F as FOOTNOTE_SEPARATOR_HEIGHT, H as HeaderFooterMetrics, M as MAX_FOOTNOTE_LAYOUT_PASSES, b as MeasureBlocksFn, S as StabilizeFootnoteLayoutArgs, c as StabilizeFootnoteLayoutResult, j as applyFootnotePresentation, d as buildFootnoteContentMap, e as buildFootnoteRenderItems, f as calculateFootnoteReservedHeights, k as calculateHeaderFooterVisualBounds, g as collectFootnoteRefs, l as computeHfCaretRectFromView, n as computeHfSelectionRectsFromView, o as contributesToHeaderFooterFlowHeight, p as convertFootnoteToContent, q as convertHeaderFooterPmDocToContent, h as convertHeaderFooterToContent, i as footnoteReservedHeightsEqual, r as invalidateHfDomCache, m as mapFootnotesToPages, t as normalizeHeaderFooterMeasureBlocks, u as resolveHeaderFooterVisualTop, s as stabilizeFootnoteLayout } from '../headerFooterLayout-AtAOhM8E.js';
18
+ import { H as HeaderFooterContent } from '../footnotes-DMsicPGd.js';
16
19
  export { TABLE_INSERT_EDGE_PROXIMITY, TABLE_INSERT_HIDE_DELAY_MS, TableInsertHoverHit, TableInsertHoverInput, detectTableInsertHover } from './tableInsertHover.js';
20
+ import { SectionLayoutConfig } from '../layout-engine/index.js';
17
21
  import { Document } from '../types/document.js';
18
- import { S as SectionProperties, y as HeaderFooter } from '../content-CYXJ2tfQ.js';
22
+ import { S as SectionProperties, y as HeaderFooter } from '../content-C8fc_tL6.js';
19
23
  import 'prosemirror-model';
20
- import '../styles-BBv7doYK.js';
24
+ import '../styles-BWqX2AS-.js';
21
25
  import '../formatting-_OXU8gLB.js';
22
26
  import '../colors-C3vA7HUU.js';
23
27
  import '../docx/wrapTypes.js';
28
+ import '../watermark-DAcnAs_J.js';
29
+ import '../anchoredObjectPosition-CS-8BfhO.js';
24
30
  import 'prosemirror-view';
25
- import '../footnotes-skVvEHvZ.js';
26
31
 
27
32
  /**
28
33
  * @internal Helpers for resolving DOCX table-width metadata into pixel widths.
@@ -35,6 +40,26 @@ import '../footnotes-skVvEHvZ.js';
35
40
  * @internal
36
41
  */
37
42
  declare function resolveTableWidthPx(value: number | undefined, widthType: string | undefined, parentWidth: number): number | undefined;
43
+ /** A cell with its resolved grid position (column index honoring spans). */
44
+ interface ResolvedGridCell {
45
+ rowIndex: number;
46
+ cellIndex: number;
47
+ columnIndex: number;
48
+ colSpan: number;
49
+ rowSpan: number;
50
+ }
51
+ /**
52
+ * Resolve every cell's grid column index, accounting for `colSpan` and the
53
+ * columns occupied by vertically-merged (`rowSpan`) cells from earlier rows.
54
+ *
55
+ * Single source of truth for table grid geometry — the measurer, the painter,
56
+ * and the row-break paginator all consume this so they agree on which column a
57
+ * cell lives in. Width-free on purpose: callers multiply `columnIndex` by their
58
+ * own (possibly scaled) column widths to get an x offset.
59
+ *
60
+ * @internal
61
+ */
62
+ declare function resolveCellGrid(tableBlock: TableBlock): ResolvedGridCell[];
38
63
  /** Total grid columns, derived from the widest row's accumulated colSpans. */
39
64
  declare function countTableColumns(tableBlock: TableBlock): number;
40
65
  /**
@@ -263,6 +288,29 @@ declare function getPositionRect(block: ParagraphBlock, measure: ParagraphMeasur
263
288
  height: number;
264
289
  } | null;
265
290
 
291
+ /**
292
+ * Apply the visual cell-selection highlight class onto rendered table cells.
293
+ *
294
+ * The layout painter renders pages as static DOM with `data-pm-start` on each
295
+ * table cell. This walk translates a ProseMirror `CellSelection` into the
296
+ * `.layout-table-cell-selected` class on the matching painted cells. Shared by
297
+ * the React and Vue adapters.
298
+ */
299
+
300
+ /**
301
+ * Apply the `.layout-table-cell-selected` class to painted layout cells
302
+ * matching a CellSelection in the PM state. Clears the class everywhere
303
+ * (within scope) first so toggling off (or moving to a TextSelection) erases
304
+ * prior highlights.
305
+ *
306
+ * Duck-types CellSelection via `$anchorCell` / `forEachCell` rather than
307
+ * `instanceof` to dodge bundling issues across `prosemirror-tables` copies
308
+ * (the same trick used inline in the selection-overlay update).
309
+ */
310
+ declare function applyCellSelectionHighlight(pagesContainer: HTMLElement, state: EditorState, options?: {
311
+ scope?: 'body' | 'header' | 'footer';
312
+ }): void;
313
+
266
314
  /**
267
315
  * Selection Rectangles
268
316
  *
@@ -337,6 +385,69 @@ declare function isMultiPageSelection(rects: SelectionRect[]): boolean;
337
385
  */
338
386
  declare function groupRectsByPage(rects: SelectionRect[]): Map<number, SelectionRect[]>;
339
387
 
388
+ /**
389
+ * Header/footer body-margin extension.
390
+ *
391
+ * Word grows the header (or footer) band when its in-flow content is taller
392
+ * than the authored top (or bottom) margin minus the header/footer distance,
393
+ * pushing the body text down (or up). This module owns that computation so the
394
+ * React and Vue adapters share one implementation instead of byte-identical
395
+ * inline copies (the layout pipelines were drifting candidates — see
396
+ * `docx-editor` engine-unification work, issue #696).
397
+ *
398
+ * Two correctness rules live here:
399
+ *
400
+ * 1. The band height is driven by `HeaderFooterContent.flowHeight` (in-flow
401
+ * content only), NOT `height` / `visualBottom`. A page/margin-anchored
402
+ * float — e.g. a full-page letterhead anchored in a header — is positioned
403
+ * on the page and does not push the body in Word. Counting it inflated the
404
+ * effective top margin past the page on real-world templates, so the
405
+ * paginator hard-threw "page size and margins yield no content area" and
406
+ * the document rendered blank (issue #705).
407
+ *
408
+ * 2. A clamp guarantees `top + bottom` never consumes the whole page, so a
409
+ * pathological in-flow header degrades to a thin content band with a
410
+ * warning instead of aborting pagination.
411
+ */
412
+
413
+ /** @public */
414
+ interface ExtendMarginsForHeaderFooterInput {
415
+ pageSize: {
416
+ w: number;
417
+ h: number;
418
+ };
419
+ /** Body fallback margins. */
420
+ margins: PageMargins;
421
+ /** Final-section margins (last `sectPr`). */
422
+ finalMargins: PageMargins;
423
+ /**
424
+ * Body flow blocks. Each `sectionBreak` block's `margins` is extended IN
425
+ * PLACE so multi-section documents paginate with the same band growth (the
426
+ * layout engine prefers `sectionBreak.margins` over the body fallback).
427
+ */
428
+ bodyBlocks?: FlowBlock[];
429
+ /** Header variants in play this layout (e.g. default + first-page). */
430
+ headers?: Array<HeaderFooterContent | undefined>;
431
+ /** Footer variants in play this layout. */
432
+ footers?: Array<HeaderFooterContent | undefined>;
433
+ /** Optional diagnostic sink for the clamp (adapters pass `console.warn`). */
434
+ warn?: (message: string) => void;
435
+ }
436
+ /** @public */
437
+ interface ExtendMarginsForHeaderFooterResult {
438
+ margins: PageMargins;
439
+ finalMargins: PageMargins;
440
+ }
441
+ /**
442
+ * Extend body margins so the body clears the header/footer bands, mirroring
443
+ * Word. Returns new `margins` / `finalMargins`; mutates `sectionBreak.margins`
444
+ * in place. When no extension is needed the original objects are returned
445
+ * unchanged.
446
+ *
447
+ * @public
448
+ */
449
+ declare function extendMarginsForHeaderFooter(input: ExtendMarginsForHeaderFooterInput): ExtendMarginsForHeaderFooterResult;
450
+
340
451
  /**
341
452
  * Body-scoped DOM lookups for `data-pm-start` / `data-pm-end` markers.
342
453
  *
@@ -431,6 +542,8 @@ declare const DEFAULT_PAGE_HEIGHT_PX = 1056;
431
542
  declare const DEFAULT_BODY_MARGIN_PX = 96;
432
543
  /** Word's default `headerDistance` / `footerDistance` (0.5in = 48px). */
433
544
  declare const DEFAULT_HF_DISTANCE_PX = 48;
545
+ /** Convert twips to pixels (1 twip = 1/20 point, 96 pixels per inch). */
546
+ declare function twipsToPixels(twips: number): number;
434
547
  /** Convert SectionProperties page size (twips) → pixel `{ w, h }`. */
435
548
  declare function getPageSize(sp: SectionProperties | null | undefined): {
436
549
  w: number;
@@ -458,5 +571,18 @@ declare function resolveHeaderFooter(doc: Document | null, sp: SectionProperties
458
571
  firstHeader: HeaderFooter | null;
459
572
  firstFooter: HeaderFooter | null;
460
573
  };
574
+ /**
575
+ * Extract column layout from section properties.
576
+ * Returns undefined for single-column (default) to avoid unnecessary paginator overhead.
577
+ */
578
+ declare function getColumns(sectionProps: SectionProperties | null | undefined): ColumnLayout | undefined;
579
+ declare function columnWidthForSection(config: SectionLayoutConfig): number;
580
+ /**
581
+ * Compute per-block measurement widths by scanning for section breaks.
582
+ * Blocks must be measured with the page width/margins/columns of their own
583
+ * section so that the layout engine can paginate them against the right
584
+ * geometry without remeasuring.
585
+ */
586
+ declare function computePerBlockWidths(blocks: FlowBlock[], initialConfig: SectionLayoutConfig, finalConfig: SectionLayoutConfig): number[];
461
587
 
462
- export { type CaretPosition, DEFAULT_BODY_MARGIN_PX, DEFAULT_HF_DISTANCE_PX, DEFAULT_PAGE_HEIGHT_PX, DEFAULT_PAGE_WIDTH_PX, type FragmentHit, type HitTestResult, type PageHit, type Point, type PositionResult, type SelectionRect, type TableCellHit, clickToPosition, clickToPositionInParagraph, clickToPositionInTableCell, countTableColumns, findBodyEmptyRuns, findBodyPmAnchor, findBodyPmAnchors, findBodyPmSpans, getCaretPosition, getMargins, getPageBounds, getPageIndexAtY, getPageSize, getPageTop, getPositionRect, getScrollYForPage, getTotalDocumentHeight, groupRectsByPage, hitTest, hitTestFragment, hitTestImageFragment, hitTestPage, hitTestTableCell, isMultiPageSelection, measureTableBlock, measureTableCellBlockVisualHeight, normalizeTableColumnWidths, positionToX, resolveHeaderFooter, resolveTableWidthPx, selectionToRects };
588
+ export { type CaretPosition, DEFAULT_BODY_MARGIN_PX, DEFAULT_HF_DISTANCE_PX, DEFAULT_PAGE_HEIGHT_PX, DEFAULT_PAGE_WIDTH_PX, type ExtendMarginsForHeaderFooterInput, type ExtendMarginsForHeaderFooterResult, type FragmentHit, type HitTestResult, type PageHit, type Point, type PositionResult, type ResolvedGridCell, type SelectionRect, type TableCellHit, applyCellSelectionHighlight, clickToPosition, clickToPositionInParagraph, clickToPositionInTableCell, columnWidthForSection, computePerBlockWidths, countTableColumns, extendMarginsForHeaderFooter, findBodyEmptyRuns, findBodyPmAnchor, findBodyPmAnchors, findBodyPmSpans, getCaretPosition, getColumns, getMargins, getPageBounds, getPageIndexAtY, getPageSize, getPageTop, getPositionRect, getScrollYForPage, getTotalDocumentHeight, groupRectsByPage, hitTest, hitTestFragment, hitTestImageFragment, hitTestPage, hitTestTableCell, isMultiPageSelection, measureTableBlock, measureTableCellBlockVisualHeight, normalizeTableColumnWidths, positionToX, resolveCellGrid, resolveHeaderFooter, resolveTableWidthPx, selectionToRects, twipsToPixels };
@@ -1 +1 @@
1
- 'use strict';var chunkFYKRDDKG_js=require('../chunk-FYKRDDKG.js'),chunkUGV4KRQB_js=require('../chunk-UGV4KRQB.js'),chunkKGTEBLB6_js=require('../chunk-KGTEBLB6.js'),chunkAMB6Y77B_js=require('../chunk-AMB6Y77B.js'),chunk7RDCZLTU_js=require('../chunk-7RDCZLTU.js'),chunkSORYYVJ7_js=require('../chunk-SORYYVJ7.js'),chunkLTHT4A4S_js=require('../chunk-LTHT4A4S.js'),chunkIMKU4O3P_js=require('../chunk-IMKU4O3P.js');require('../chunk-DROCYKAR.js'),require('../chunk-ROG4MNOR.js'),require('../chunk-44FHVKSI.js'),require('../chunk-ZBFNOJGY.js'),require('../chunk-C45EFOVP.js'),require('../chunk-ISKTBM4L.js'),require('../chunk-JFZIXFRC.js'),require('../chunk-E4JMCA5X.js'),require('../chunk-HQPWFUP5.js'),require('../chunk-DV6GWBUJ.js'),require('../chunk-VMRUBLPI.js'),require('../chunk-2EQGBVPV.js'),require('../chunk-BHBOAP6Z.js'),require('../chunk-MZ7LW5CH.js'),require('../chunk-N3Y5BUKV.js'),require('../chunk-WVERBZZU.js'),require('../chunk-6LVPRTB6.js'),require('../chunk-LWH66Q7Q.js'),require('../chunk-TUIEV7Q7.js'),require('../chunk-7HANRHHL.js'),require('../chunk-MJ5FQX7Q.js'),require('../chunk-C2BAPYGJ.js'),require('../chunk-4Q2IP5FW.js'),require('../chunk-GSKMHXHG.js'),require('../chunk-DC7S76ZX.js');Object.defineProperty(exports,"DEFAULT_BODY_MARGIN_PX",{enumerable:true,get:function(){return chunkFYKRDDKG_js.D}});Object.defineProperty(exports,"DEFAULT_HF_DISTANCE_PX",{enumerable:true,get:function(){return chunkFYKRDDKG_js.E}});Object.defineProperty(exports,"DEFAULT_PAGE_HEIGHT_PX",{enumerable:true,get:function(){return chunkFYKRDDKG_js.C}});Object.defineProperty(exports,"DEFAULT_PAGE_WIDTH_PX",{enumerable:true,get:function(){return chunkFYKRDDKG_js.B}});Object.defineProperty(exports,"calculateHeaderFooterVisualBounds",{enumerable:true,get:function(){return chunkFYKRDDKG_js.v}});Object.defineProperty(exports,"clickToPosition",{enumerable:true,get:function(){return chunkFYKRDDKG_js.m}});Object.defineProperty(exports,"clickToPositionInParagraph",{enumerable:true,get:function(){return chunkFYKRDDKG_js.k}});Object.defineProperty(exports,"clickToPositionInTableCell",{enumerable:true,get:function(){return chunkFYKRDDKG_js.l}});Object.defineProperty(exports,"computeHfCaretRectFromView",{enumerable:true,get:function(){return chunkFYKRDDKG_js.z}});Object.defineProperty(exports,"computeHfSelectionRectsFromView",{enumerable:true,get:function(){return chunkFYKRDDKG_js.A}});Object.defineProperty(exports,"convertHeaderFooterPmDocToContent",{enumerable:true,get:function(){return chunkFYKRDDKG_js.x}});Object.defineProperty(exports,"convertHeaderFooterToContent",{enumerable:true,get:function(){return chunkFYKRDDKG_js.w}});Object.defineProperty(exports,"getCaretPosition",{enumerable:true,get:function(){return chunkFYKRDDKG_js.q}});Object.defineProperty(exports,"getMargins",{enumerable:true,get:function(){return chunkFYKRDDKG_js.G}});Object.defineProperty(exports,"getPageBounds",{enumerable:true,get:function(){return chunkFYKRDDKG_js.j}});Object.defineProperty(exports,"getPageIndexAtY",{enumerable:true,get:function(){return chunkFYKRDDKG_js.c}});Object.defineProperty(exports,"getPageSize",{enumerable:true,get:function(){return chunkFYKRDDKG_js.F}});Object.defineProperty(exports,"getPageTop",{enumerable:true,get:function(){return chunkFYKRDDKG_js.b}});Object.defineProperty(exports,"getPositionRect",{enumerable:true,get:function(){return chunkFYKRDDKG_js.o}});Object.defineProperty(exports,"getScrollYForPage",{enumerable:true,get:function(){return chunkFYKRDDKG_js.i}});Object.defineProperty(exports,"getTotalDocumentHeight",{enumerable:true,get:function(){return chunkFYKRDDKG_js.h}});Object.defineProperty(exports,"groupRectsByPage",{enumerable:true,get:function(){return chunkFYKRDDKG_js.s}});Object.defineProperty(exports,"hitTest",{enumerable:true,get:function(){return chunkFYKRDDKG_js.g}});Object.defineProperty(exports,"hitTestFragment",{enumerable:true,get:function(){return chunkFYKRDDKG_js.d}});Object.defineProperty(exports,"hitTestImageFragment",{enumerable:true,get:function(){return chunkFYKRDDKG_js.e}});Object.defineProperty(exports,"hitTestPage",{enumerable:true,get:function(){return chunkFYKRDDKG_js.a}});Object.defineProperty(exports,"hitTestTableCell",{enumerable:true,get:function(){return chunkFYKRDDKG_js.f}});Object.defineProperty(exports,"invalidateHfDomCache",{enumerable:true,get:function(){return chunkFYKRDDKG_js.y}});Object.defineProperty(exports,"isMultiPageSelection",{enumerable:true,get:function(){return chunkFYKRDDKG_js.r}});Object.defineProperty(exports,"normalizeHeaderFooterMeasureBlocks",{enumerable:true,get:function(){return chunkFYKRDDKG_js.t}});Object.defineProperty(exports,"positionToX",{enumerable:true,get:function(){return chunkFYKRDDKG_js.n}});Object.defineProperty(exports,"resolveHeaderFooter",{enumerable:true,get:function(){return chunkFYKRDDKG_js.H}});Object.defineProperty(exports,"resolveHeaderFooterVisualTop",{enumerable:true,get:function(){return chunkFYKRDDKG_js.u}});Object.defineProperty(exports,"selectionToRects",{enumerable:true,get:function(){return chunkFYKRDDKG_js.p}});Object.defineProperty(exports,"TABLE_INSERT_EDGE_PROXIMITY",{enumerable:true,get:function(){return chunkUGV4KRQB_js.a}});Object.defineProperty(exports,"TABLE_INSERT_HIDE_DELAY_MS",{enumerable:true,get:function(){return chunkUGV4KRQB_js.b}});Object.defineProperty(exports,"detectTableInsertHover",{enumerable:true,get:function(){return chunkUGV4KRQB_js.c}});Object.defineProperty(exports,"FOOTNOTE_SEPARATOR_HEIGHT",{enumerable:true,get:function(){return chunkKGTEBLB6_js.a}});Object.defineProperty(exports,"MAX_FOOTNOTE_LAYOUT_PASSES",{enumerable:true,get:function(){return chunkKGTEBLB6_js.b}});Object.defineProperty(exports,"applyFootnotePresentation",{enumerable:true,get:function(){return chunkKGTEBLB6_js.f}});Object.defineProperty(exports,"buildFootnoteContentMap",{enumerable:true,get:function(){return chunkKGTEBLB6_js.h}});Object.defineProperty(exports,"buildFootnoteRenderItems",{enumerable:true,get:function(){return chunkKGTEBLB6_js.k}});Object.defineProperty(exports,"calculateFootnoteReservedHeights",{enumerable:true,get:function(){return chunkKGTEBLB6_js.i}});Object.defineProperty(exports,"collectFootnoteRefs",{enumerable:true,get:function(){return chunkKGTEBLB6_js.d}});Object.defineProperty(exports,"convertFootnoteToContent",{enumerable:true,get:function(){return chunkKGTEBLB6_js.g}});Object.defineProperty(exports,"footnoteReservedHeightsEqual",{enumerable:true,get:function(){return chunkKGTEBLB6_js.c}});Object.defineProperty(exports,"mapFootnotesToPages",{enumerable:true,get:function(){return chunkKGTEBLB6_js.e}});Object.defineProperty(exports,"stabilizeFootnoteLayout",{enumerable:true,get:function(){return chunkKGTEBLB6_js.j}});Object.defineProperty(exports,"convertBorderSpecToLayout",{enumerable:true,get:function(){return chunkAMB6Y77B_js.a}});Object.defineProperty(exports,"resolveListTemplate",{enumerable:true,get:function(){return chunkAMB6Y77B_js.b}});Object.defineProperty(exports,"toFlowBlocks",{enumerable:true,get:function(){return chunkAMB6Y77B_js.c}});Object.defineProperty(exports,"clickToPositionDom",{enumerable:true,get:function(){return chunk7RDCZLTU_js.e}});Object.defineProperty(exports,"findBodyEmptyRuns",{enumerable:true,get:function(){return chunk7RDCZLTU_js.b}});Object.defineProperty(exports,"findBodyPmAnchor",{enumerable:true,get:function(){return chunk7RDCZLTU_js.d}});Object.defineProperty(exports,"findBodyPmAnchors",{enumerable:true,get:function(){return chunk7RDCZLTU_js.c}});Object.defineProperty(exports,"findBodyPmSpans",{enumerable:true,get:function(){return chunk7RDCZLTU_js.a}});Object.defineProperty(exports,"getCaretPositionFromDom",{enumerable:true,get:function(){return chunk7RDCZLTU_js.g}});Object.defineProperty(exports,"getSelectionRectsFromDom",{enumerable:true,get:function(){return chunk7RDCZLTU_js.f}});Object.defineProperty(exports,"mouseToPosition",{enumerable:true,get:function(){return chunk7RDCZLTU_js.e}});Object.defineProperty(exports,"clearAllCaches",{enumerable:true,get:function(){return chunkSORYYVJ7_js.B}});Object.defineProperty(exports,"clearFontMetricsCache",{enumerable:true,get:function(){return chunkSORYYVJ7_js.s}});Object.defineProperty(exports,"clearParagraphMeasureCache",{enumerable:true,get:function(){return chunkSORYYVJ7_js.y}});Object.defineProperty(exports,"clearTextWidthCache",{enumerable:true,get:function(){return chunkSORYYVJ7_js.n}});Object.defineProperty(exports,"countTableColumns",{enumerable:true,get:function(){return chunkSORYYVJ7_js.b}});Object.defineProperty(exports,"getCachedFontMetrics",{enumerable:true,get:function(){return chunkSORYYVJ7_js.q}});Object.defineProperty(exports,"getCachedParagraphMeasure",{enumerable:true,get:function(){return chunkSORYYVJ7_js.w}});Object.defineProperty(exports,"getCachedTextWidth",{enumerable:true,get:function(){return chunkSORYYVJ7_js.l}});Object.defineProperty(exports,"getFontCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.u}});Object.defineProperty(exports,"getParagraphCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.A}});Object.defineProperty(exports,"getTextCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.p}});Object.defineProperty(exports,"getTotalCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.C}});Object.defineProperty(exports,"hashParagraphBlock",{enumerable:true,get:function(){return chunkSORYYVJ7_js.v}});Object.defineProperty(exports,"measureBlocksWithFloats",{enumerable:true,get:function(){return chunkSORYYVJ7_js.k}});Object.defineProperty(exports,"measureTableBlock",{enumerable:true,get:function(){return chunkSORYYVJ7_js.j}});Object.defineProperty(exports,"measureTableCellBlockVisualHeight",{enumerable:true,get:function(){return chunkSORYYVJ7_js.i}});Object.defineProperty(exports,"normalizeTableColumnWidths",{enumerable:true,get:function(){return chunkSORYYVJ7_js.c}});Object.defineProperty(exports,"resolveTableWidthPx",{enumerable:true,get:function(){return chunkSORYYVJ7_js.a}});Object.defineProperty(exports,"setCachedFontMetrics",{enumerable:true,get:function(){return chunkSORYYVJ7_js.r}});Object.defineProperty(exports,"setCachedParagraphMeasure",{enumerable:true,get:function(){return chunkSORYYVJ7_js.x}});Object.defineProperty(exports,"setCachedTextWidth",{enumerable:true,get:function(){return chunkSORYYVJ7_js.m}});Object.defineProperty(exports,"setFontCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.t}});Object.defineProperty(exports,"setParagraphCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.z}});Object.defineProperty(exports,"setTextCacheSize",{enumerable:true,get:function(){return chunkSORYYVJ7_js.o}});Object.defineProperty(exports,"buildFontString",{enumerable:true,get:function(){return chunkLTHT4A4S_js.c}});Object.defineProperty(exports,"clampFloatingWrapMargins",{enumerable:true,get:function(){return chunkLTHT4A4S_js.u}});Object.defineProperty(exports,"findCharacterAtX",{enumerable:true,get:function(){return chunkLTHT4A4S_js.h}});Object.defineProperty(exports,"getCanvasContext",{enumerable:true,get:function(){return chunkLTHT4A4S_js.a}});Object.defineProperty(exports,"getFloatingMargins",{enumerable:true,get:function(){return chunkLTHT4A4S_js.q}});Object.defineProperty(exports,"getFontMetrics",{enumerable:true,get:function(){return chunkLTHT4A4S_js.d}});Object.defineProperty(exports,"getRunCharWidths",{enumerable:true,get:function(){return chunkLTHT4A4S_js.x}});Object.defineProperty(exports,"getXForCharacter",{enumerable:true,get:function(){return chunkLTHT4A4S_js.i}});Object.defineProperty(exports,"halfPtToPx",{enumerable:true,get:function(){return chunkLTHT4A4S_js.n}});Object.defineProperty(exports,"measureParagraph",{enumerable:true,get:function(){return chunkLTHT4A4S_js.v}});Object.defineProperty(exports,"measureParagraphs",{enumerable:true,get:function(){return chunkLTHT4A4S_js.w}});Object.defineProperty(exports,"measureRun",{enumerable:true,get:function(){return chunkLTHT4A4S_js.g}});Object.defineProperty(exports,"measureText",{enumerable:true,get:function(){return chunkLTHT4A4S_js.f}});Object.defineProperty(exports,"measureTextWidth",{enumerable:true,get:function(){return chunkLTHT4A4S_js.e}});Object.defineProperty(exports,"ptToPx",{enumerable:true,get:function(){return chunkLTHT4A4S_js.l}});Object.defineProperty(exports,"pxToHalfPt",{enumerable:true,get:function(){return chunkLTHT4A4S_js.o}});Object.defineProperty(exports,"pxToPt",{enumerable:true,get:function(){return chunkLTHT4A4S_js.m}});Object.defineProperty(exports,"pxToTwips",{enumerable:true,get:function(){return chunkLTHT4A4S_js.k}});Object.defineProperty(exports,"rectsToFloatingZones",{enumerable:true,get:function(){return chunkLTHT4A4S_js.p}});Object.defineProperty(exports,"resetCanvasContext",{enumerable:true,get:function(){return chunkLTHT4A4S_js.b}});Object.defineProperty(exports,"twipsToPx",{enumerable:true,get:function(){return chunkLTHT4A4S_js.j}});Object.defineProperty(exports,"resetBlockIdCounter",{enumerable:true,get:function(){return chunkIMKU4O3P_js.d}});
1
+ 'use strict';var chunkYM7SMTYY_js=require('../chunk-YM7SMTYY.js'),chunkDG2CMDSM_js=require('../chunk-DG2CMDSM.js'),chunkQLAIOTQB_js=require('../chunk-QLAIOTQB.js'),chunkFQS436KN_js=require('../chunk-FQS436KN.js'),chunk4MYKVWNF_js=require('../chunk-4MYKVWNF.js'),chunkJ3YFJDZD_js=require('../chunk-J3YFJDZD.js'),chunkRSU4HTC6_js=require('../chunk-RSU4HTC6.js'),chunkIMKU4O3P_js=require('../chunk-IMKU4O3P.js');require('../chunk-DROCYKAR.js'),require('../chunk-LERLET2D.js'),require('../chunk-FIGLFSNR.js'),require('../chunk-BUCOTKYY.js'),require('../chunk-C45EFOVP.js'),require('../chunk-ISKTBM4L.js'),require('../chunk-JFZIXFRC.js'),require('../chunk-RQVHKDXK.js'),require('../chunk-SCK6ZM5V.js'),require('../chunk-Z3LGMBJC.js'),require('../chunk-3R7QHNI5.js'),require('../chunk-WWBNJ7KF.js'),require('../chunk-4RTVLMRZ.js'),require('../chunk-BHBOAP6Z.js'),require('../chunk-MZ7LW5CH.js'),require('../chunk-N3Y5BUKV.js'),require('../chunk-WVERBZZU.js'),require('../chunk-6LVPRTB6.js'),require('../chunk-LWH66Q7Q.js'),require('../chunk-TUIEV7Q7.js'),require('../chunk-7HANRHHL.js'),require('../chunk-MJ5FQX7Q.js'),require('../chunk-C2BAPYGJ.js'),require('../chunk-4Q2IP5FW.js'),require('../chunk-GSKMHXHG.js'),require('../chunk-DC7S76ZX.js');Object.defineProperty(exports,"DEFAULT_BODY_MARGIN_PX",{enumerable:true,get:function(){return chunkYM7SMTYY_js.G}});Object.defineProperty(exports,"DEFAULT_HF_DISTANCE_PX",{enumerable:true,get:function(){return chunkYM7SMTYY_js.H}});Object.defineProperty(exports,"DEFAULT_PAGE_HEIGHT_PX",{enumerable:true,get:function(){return chunkYM7SMTYY_js.F}});Object.defineProperty(exports,"DEFAULT_PAGE_WIDTH_PX",{enumerable:true,get:function(){return chunkYM7SMTYY_js.E}});Object.defineProperty(exports,"applyCellSelectionHighlight",{enumerable:true,get:function(){return chunkYM7SMTYY_js.p}});Object.defineProperty(exports,"calculateHeaderFooterVisualBounds",{enumerable:true,get:function(){return chunkYM7SMTYY_js.x}});Object.defineProperty(exports,"clickToPosition",{enumerable:true,get:function(){return chunkYM7SMTYY_js.m}});Object.defineProperty(exports,"clickToPositionInParagraph",{enumerable:true,get:function(){return chunkYM7SMTYY_js.k}});Object.defineProperty(exports,"clickToPositionInTableCell",{enumerable:true,get:function(){return chunkYM7SMTYY_js.l}});Object.defineProperty(exports,"columnWidthForSection",{enumerable:true,get:function(){return chunkYM7SMTYY_js.N}});Object.defineProperty(exports,"computeHfCaretRectFromView",{enumerable:true,get:function(){return chunkYM7SMTYY_js.B}});Object.defineProperty(exports,"computeHfSelectionRectsFromView",{enumerable:true,get:function(){return chunkYM7SMTYY_js.C}});Object.defineProperty(exports,"computePerBlockWidths",{enumerable:true,get:function(){return chunkYM7SMTYY_js.O}});Object.defineProperty(exports,"contributesToHeaderFooterFlowHeight",{enumerable:true,get:function(){return chunkYM7SMTYY_js.w}});Object.defineProperty(exports,"convertHeaderFooterPmDocToContent",{enumerable:true,get:function(){return chunkYM7SMTYY_js.z}});Object.defineProperty(exports,"convertHeaderFooterToContent",{enumerable:true,get:function(){return chunkYM7SMTYY_js.y}});Object.defineProperty(exports,"extendMarginsForHeaderFooter",{enumerable:true,get:function(){return chunkYM7SMTYY_js.D}});Object.defineProperty(exports,"getCaretPosition",{enumerable:true,get:function(){return chunkYM7SMTYY_js.r}});Object.defineProperty(exports,"getColumns",{enumerable:true,get:function(){return chunkYM7SMTYY_js.M}});Object.defineProperty(exports,"getMargins",{enumerable:true,get:function(){return chunkYM7SMTYY_js.K}});Object.defineProperty(exports,"getPageBounds",{enumerable:true,get:function(){return chunkYM7SMTYY_js.j}});Object.defineProperty(exports,"getPageIndexAtY",{enumerable:true,get:function(){return chunkYM7SMTYY_js.c}});Object.defineProperty(exports,"getPageSize",{enumerable:true,get:function(){return chunkYM7SMTYY_js.J}});Object.defineProperty(exports,"getPageTop",{enumerable:true,get:function(){return chunkYM7SMTYY_js.b}});Object.defineProperty(exports,"getPositionRect",{enumerable:true,get:function(){return chunkYM7SMTYY_js.o}});Object.defineProperty(exports,"getScrollYForPage",{enumerable:true,get:function(){return chunkYM7SMTYY_js.i}});Object.defineProperty(exports,"getTotalDocumentHeight",{enumerable:true,get:function(){return chunkYM7SMTYY_js.h}});Object.defineProperty(exports,"groupRectsByPage",{enumerable:true,get:function(){return chunkYM7SMTYY_js.t}});Object.defineProperty(exports,"hitTest",{enumerable:true,get:function(){return chunkYM7SMTYY_js.g}});Object.defineProperty(exports,"hitTestFragment",{enumerable:true,get:function(){return chunkYM7SMTYY_js.d}});Object.defineProperty(exports,"hitTestImageFragment",{enumerable:true,get:function(){return chunkYM7SMTYY_js.e}});Object.defineProperty(exports,"hitTestPage",{enumerable:true,get:function(){return chunkYM7SMTYY_js.a}});Object.defineProperty(exports,"hitTestTableCell",{enumerable:true,get:function(){return chunkYM7SMTYY_js.f}});Object.defineProperty(exports,"invalidateHfDomCache",{enumerable:true,get:function(){return chunkYM7SMTYY_js.A}});Object.defineProperty(exports,"isMultiPageSelection",{enumerable:true,get:function(){return chunkYM7SMTYY_js.s}});Object.defineProperty(exports,"normalizeHeaderFooterMeasureBlocks",{enumerable:true,get:function(){return chunkYM7SMTYY_js.u}});Object.defineProperty(exports,"positionToX",{enumerable:true,get:function(){return chunkYM7SMTYY_js.n}});Object.defineProperty(exports,"resolveHeaderFooter",{enumerable:true,get:function(){return chunkYM7SMTYY_js.L}});Object.defineProperty(exports,"resolveHeaderFooterVisualTop",{enumerable:true,get:function(){return chunkYM7SMTYY_js.v}});Object.defineProperty(exports,"selectionToRects",{enumerable:true,get:function(){return chunkYM7SMTYY_js.q}});Object.defineProperty(exports,"twipsToPixels",{enumerable:true,get:function(){return chunkYM7SMTYY_js.I}});Object.defineProperty(exports,"TABLE_INSERT_EDGE_PROXIMITY",{enumerable:true,get:function(){return chunkDG2CMDSM_js.a}});Object.defineProperty(exports,"TABLE_INSERT_HIDE_DELAY_MS",{enumerable:true,get:function(){return chunkDG2CMDSM_js.b}});Object.defineProperty(exports,"detectTableInsertHover",{enumerable:true,get:function(){return chunkDG2CMDSM_js.c}});Object.defineProperty(exports,"FOOTNOTE_SEPARATOR_HEIGHT",{enumerable:true,get:function(){return chunkQLAIOTQB_js.a}});Object.defineProperty(exports,"MAX_FOOTNOTE_LAYOUT_PASSES",{enumerable:true,get:function(){return chunkQLAIOTQB_js.b}});Object.defineProperty(exports,"applyFootnotePresentation",{enumerable:true,get:function(){return chunkQLAIOTQB_js.f}});Object.defineProperty(exports,"buildFootnoteContentMap",{enumerable:true,get:function(){return chunkQLAIOTQB_js.h}});Object.defineProperty(exports,"buildFootnoteRenderItems",{enumerable:true,get:function(){return chunkQLAIOTQB_js.k}});Object.defineProperty(exports,"calculateFootnoteReservedHeights",{enumerable:true,get:function(){return chunkQLAIOTQB_js.i}});Object.defineProperty(exports,"collectFootnoteRefs",{enumerable:true,get:function(){return chunkQLAIOTQB_js.d}});Object.defineProperty(exports,"convertFootnoteToContent",{enumerable:true,get:function(){return chunkQLAIOTQB_js.g}});Object.defineProperty(exports,"footnoteReservedHeightsEqual",{enumerable:true,get:function(){return chunkQLAIOTQB_js.c}});Object.defineProperty(exports,"mapFootnotesToPages",{enumerable:true,get:function(){return chunkQLAIOTQB_js.e}});Object.defineProperty(exports,"stabilizeFootnoteLayout",{enumerable:true,get:function(){return chunkQLAIOTQB_js.j}});Object.defineProperty(exports,"convertBorderSpecToLayout",{enumerable:true,get:function(){return chunkFQS436KN_js.a}});Object.defineProperty(exports,"resolveListTemplate",{enumerable:true,get:function(){return chunkFQS436KN_js.b}});Object.defineProperty(exports,"toFlowBlocks",{enumerable:true,get:function(){return chunkFQS436KN_js.c}});Object.defineProperty(exports,"clickToPositionDom",{enumerable:true,get:function(){return chunk4MYKVWNF_js.e}});Object.defineProperty(exports,"clipRectToTableWindow",{enumerable:true,get:function(){return chunk4MYKVWNF_js.f}});Object.defineProperty(exports,"findBodyEmptyRuns",{enumerable:true,get:function(){return chunk4MYKVWNF_js.b}});Object.defineProperty(exports,"findBodyPmAnchor",{enumerable:true,get:function(){return chunk4MYKVWNF_js.d}});Object.defineProperty(exports,"findBodyPmAnchors",{enumerable:true,get:function(){return chunk4MYKVWNF_js.c}});Object.defineProperty(exports,"findBodyPmSpans",{enumerable:true,get:function(){return chunk4MYKVWNF_js.a}});Object.defineProperty(exports,"getCaretPositionFromDom",{enumerable:true,get:function(){return chunk4MYKVWNF_js.h}});Object.defineProperty(exports,"getSelectionRectsFromDom",{enumerable:true,get:function(){return chunk4MYKVWNF_js.g}});Object.defineProperty(exports,"mouseToPosition",{enumerable:true,get:function(){return chunk4MYKVWNF_js.e}});Object.defineProperty(exports,"clearAllCaches",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.B}});Object.defineProperty(exports,"clearFontMetricsCache",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.s}});Object.defineProperty(exports,"clearParagraphMeasureCache",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.y}});Object.defineProperty(exports,"clearTextWidthCache",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.n}});Object.defineProperty(exports,"getCachedFontMetrics",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.q}});Object.defineProperty(exports,"getCachedParagraphMeasure",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.w}});Object.defineProperty(exports,"getCachedTextWidth",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.l}});Object.defineProperty(exports,"getFontCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.u}});Object.defineProperty(exports,"getParagraphCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.A}});Object.defineProperty(exports,"getTextCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.p}});Object.defineProperty(exports,"getTotalCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.C}});Object.defineProperty(exports,"hashParagraphBlock",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.v}});Object.defineProperty(exports,"measureBlocksWithFloats",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.k}});Object.defineProperty(exports,"measureTableBlock",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.j}});Object.defineProperty(exports,"measureTableCellBlockVisualHeight",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.i}});Object.defineProperty(exports,"setCachedFontMetrics",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.r}});Object.defineProperty(exports,"setCachedParagraphMeasure",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.x}});Object.defineProperty(exports,"setCachedTextWidth",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.m}});Object.defineProperty(exports,"setFontCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.t}});Object.defineProperty(exports,"setParagraphCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.z}});Object.defineProperty(exports,"setTextCacheSize",{enumerable:true,get:function(){return chunkJ3YFJDZD_js.o}});Object.defineProperty(exports,"buildFontString",{enumerable:true,get:function(){return chunkRSU4HTC6_js.g}});Object.defineProperty(exports,"clampFloatingWrapMargins",{enumerable:true,get:function(){return chunkRSU4HTC6_js.y}});Object.defineProperty(exports,"countTableColumns",{enumerable:true,get:function(){return chunkRSU4HTC6_js.c}});Object.defineProperty(exports,"findCharacterAtX",{enumerable:true,get:function(){return chunkRSU4HTC6_js.l}});Object.defineProperty(exports,"getCanvasContext",{enumerable:true,get:function(){return chunkRSU4HTC6_js.e}});Object.defineProperty(exports,"getFloatingMargins",{enumerable:true,get:function(){return chunkRSU4HTC6_js.u}});Object.defineProperty(exports,"getFontMetrics",{enumerable:true,get:function(){return chunkRSU4HTC6_js.h}});Object.defineProperty(exports,"getRunCharWidths",{enumerable:true,get:function(){return chunkRSU4HTC6_js.B}});Object.defineProperty(exports,"getXForCharacter",{enumerable:true,get:function(){return chunkRSU4HTC6_js.m}});Object.defineProperty(exports,"halfPtToPx",{enumerable:true,get:function(){return chunkRSU4HTC6_js.r}});Object.defineProperty(exports,"measureParagraph",{enumerable:true,get:function(){return chunkRSU4HTC6_js.z}});Object.defineProperty(exports,"measureParagraphs",{enumerable:true,get:function(){return chunkRSU4HTC6_js.A}});Object.defineProperty(exports,"measureRun",{enumerable:true,get:function(){return chunkRSU4HTC6_js.k}});Object.defineProperty(exports,"measureText",{enumerable:true,get:function(){return chunkRSU4HTC6_js.j}});Object.defineProperty(exports,"measureTextWidth",{enumerable:true,get:function(){return chunkRSU4HTC6_js.i}});Object.defineProperty(exports,"normalizeTableColumnWidths",{enumerable:true,get:function(){return chunkRSU4HTC6_js.d}});Object.defineProperty(exports,"ptToPx",{enumerable:true,get:function(){return chunkRSU4HTC6_js.p}});Object.defineProperty(exports,"pxToHalfPt",{enumerable:true,get:function(){return chunkRSU4HTC6_js.s}});Object.defineProperty(exports,"pxToPt",{enumerable:true,get:function(){return chunkRSU4HTC6_js.q}});Object.defineProperty(exports,"pxToTwips",{enumerable:true,get:function(){return chunkRSU4HTC6_js.o}});Object.defineProperty(exports,"rectsToFloatingZones",{enumerable:true,get:function(){return chunkRSU4HTC6_js.t}});Object.defineProperty(exports,"resetCanvasContext",{enumerable:true,get:function(){return chunkRSU4HTC6_js.f}});Object.defineProperty(exports,"resolveCellGrid",{enumerable:true,get:function(){return chunkRSU4HTC6_js.b}});Object.defineProperty(exports,"resolveTableWidthPx",{enumerable:true,get:function(){return chunkRSU4HTC6_js.a}});Object.defineProperty(exports,"twipsToPx",{enumerable:true,get:function(){return chunkRSU4HTC6_js.n}});Object.defineProperty(exports,"resetBlockIdCounter",{enumerable:true,get:function(){return chunkIMKU4O3P_js.d}});
@@ -1 +1 @@
1
- export{D as DEFAULT_BODY_MARGIN_PX,E as DEFAULT_HF_DISTANCE_PX,C as DEFAULT_PAGE_HEIGHT_PX,B as DEFAULT_PAGE_WIDTH_PX,v as calculateHeaderFooterVisualBounds,m as clickToPosition,k as clickToPositionInParagraph,l as clickToPositionInTableCell,z as computeHfCaretRectFromView,A as computeHfSelectionRectsFromView,x as convertHeaderFooterPmDocToContent,w as convertHeaderFooterToContent,q as getCaretPosition,G as getMargins,j as getPageBounds,c as getPageIndexAtY,F as getPageSize,b as getPageTop,o as getPositionRect,i as getScrollYForPage,h as getTotalDocumentHeight,s as groupRectsByPage,g as hitTest,d as hitTestFragment,e as hitTestImageFragment,a as hitTestPage,f as hitTestTableCell,y as invalidateHfDomCache,r as isMultiPageSelection,t as normalizeHeaderFooterMeasureBlocks,n as positionToX,H as resolveHeaderFooter,u as resolveHeaderFooterVisualTop,p as selectionToRects}from'../chunk-GUQFNJHE.mjs';export{a as TABLE_INSERT_EDGE_PROXIMITY,b as TABLE_INSERT_HIDE_DELAY_MS,c as detectTableInsertHover}from'../chunk-WKUHYMDO.mjs';export{a as FOOTNOTE_SEPARATOR_HEIGHT,b as MAX_FOOTNOTE_LAYOUT_PASSES,f as applyFootnotePresentation,h as buildFootnoteContentMap,k as buildFootnoteRenderItems,i as calculateFootnoteReservedHeights,d as collectFootnoteRefs,g as convertFootnoteToContent,c as footnoteReservedHeightsEqual,e as mapFootnotesToPages,j as stabilizeFootnoteLayout}from'../chunk-RKDVY7I3.mjs';export{a as convertBorderSpecToLayout,b as resolveListTemplate,c as toFlowBlocks}from'../chunk-KZXZWGFX.mjs';export{e as clickToPositionDom,b as findBodyEmptyRuns,d as findBodyPmAnchor,c as findBodyPmAnchors,a as findBodyPmSpans,g as getCaretPositionFromDom,f as getSelectionRectsFromDom,e as mouseToPosition}from'../chunk-YMZ3F2FZ.mjs';export{B as clearAllCaches,s as clearFontMetricsCache,y as clearParagraphMeasureCache,n as clearTextWidthCache,b as countTableColumns,q as getCachedFontMetrics,w as getCachedParagraphMeasure,l as getCachedTextWidth,u as getFontCacheSize,A as getParagraphCacheSize,p as getTextCacheSize,C as getTotalCacheSize,v as hashParagraphBlock,k as measureBlocksWithFloats,j as measureTableBlock,i as measureTableCellBlockVisualHeight,c as normalizeTableColumnWidths,a as resolveTableWidthPx,r as setCachedFontMetrics,x as setCachedParagraphMeasure,m as setCachedTextWidth,t as setFontCacheSize,z as setParagraphCacheSize,o as setTextCacheSize}from'../chunk-MP4QSEO2.mjs';export{c as buildFontString,u as clampFloatingWrapMargins,h as findCharacterAtX,a as getCanvasContext,q as getFloatingMargins,d as getFontMetrics,x as getRunCharWidths,i as getXForCharacter,n as halfPtToPx,v as measureParagraph,w as measureParagraphs,g as measureRun,f as measureText,e as measureTextWidth,l as ptToPx,o as pxToHalfPt,m as pxToPt,k as pxToTwips,p as rectsToFloatingZones,b as resetCanvasContext,j as twipsToPx}from'../chunk-6Y6LON6Y.mjs';export{d as resetBlockIdCounter}from'../chunk-FCJWLEKT.mjs';import'../chunk-7E5VBRDL.mjs';import'../chunk-7ZN4WI5N.mjs';import'../chunk-BOOHU5EW.mjs';import'../chunk-EQAORQC3.mjs';import'../chunk-7OW3VCZE.mjs';import'../chunk-LK6I3HMH.mjs';import'../chunk-QPFJJPIC.mjs';import'../chunk-6ZXL3EIP.mjs';import'../chunk-OEXVWIHW.mjs';import'../chunk-WLHNIXWC.mjs';import'../chunk-ICE6NC3S.mjs';import'../chunk-CCPBNE2F.mjs';import'../chunk-MOKKS75W.mjs';import'../chunk-OZMNIX6U.mjs';import'../chunk-AMENZY5F.mjs';import'../chunk-U67MWOPZ.mjs';import'../chunk-BGY3CB37.mjs';import'../chunk-2XP6GLA4.mjs';import'../chunk-ZX26QZJ5.mjs';import'../chunk-MJ6XZFVD.mjs';import'../chunk-67LVRQIR.mjs';import'../chunk-LE67NTCN.mjs';import'../chunk-VW22RZ6C.mjs';import'../chunk-DI6CRWSW.mjs';import'../chunk-QYUPLKLP.mjs';
1
+ export{G as DEFAULT_BODY_MARGIN_PX,H as DEFAULT_HF_DISTANCE_PX,F as DEFAULT_PAGE_HEIGHT_PX,E as DEFAULT_PAGE_WIDTH_PX,p as applyCellSelectionHighlight,x as calculateHeaderFooterVisualBounds,m as clickToPosition,k as clickToPositionInParagraph,l as clickToPositionInTableCell,N as columnWidthForSection,B as computeHfCaretRectFromView,C as computeHfSelectionRectsFromView,O as computePerBlockWidths,w as contributesToHeaderFooterFlowHeight,z as convertHeaderFooterPmDocToContent,y as convertHeaderFooterToContent,D as extendMarginsForHeaderFooter,r as getCaretPosition,M as getColumns,K as getMargins,j as getPageBounds,c as getPageIndexAtY,J as getPageSize,b as getPageTop,o as getPositionRect,i as getScrollYForPage,h as getTotalDocumentHeight,t as groupRectsByPage,g as hitTest,d as hitTestFragment,e as hitTestImageFragment,a as hitTestPage,f as hitTestTableCell,A as invalidateHfDomCache,s as isMultiPageSelection,u as normalizeHeaderFooterMeasureBlocks,n as positionToX,L as resolveHeaderFooter,v as resolveHeaderFooterVisualTop,q as selectionToRects,I as twipsToPixels}from'../chunk-6QO4O52Y.mjs';export{a as TABLE_INSERT_EDGE_PROXIMITY,b as TABLE_INSERT_HIDE_DELAY_MS,c as detectTableInsertHover}from'../chunk-W7CQRQZ6.mjs';export{a as FOOTNOTE_SEPARATOR_HEIGHT,b as MAX_FOOTNOTE_LAYOUT_PASSES,f as applyFootnotePresentation,h as buildFootnoteContentMap,k as buildFootnoteRenderItems,i as calculateFootnoteReservedHeights,d as collectFootnoteRefs,g as convertFootnoteToContent,c as footnoteReservedHeightsEqual,e as mapFootnotesToPages,j as stabilizeFootnoteLayout}from'../chunk-YGWUKRFD.mjs';export{a as convertBorderSpecToLayout,b as resolveListTemplate,c as toFlowBlocks}from'../chunk-B46V5G46.mjs';export{e as clickToPositionDom,f as clipRectToTableWindow,b as findBodyEmptyRuns,d as findBodyPmAnchor,c as findBodyPmAnchors,a as findBodyPmSpans,h as getCaretPositionFromDom,g as getSelectionRectsFromDom,e as mouseToPosition}from'../chunk-LX35TFGF.mjs';export{B as clearAllCaches,s as clearFontMetricsCache,y as clearParagraphMeasureCache,n as clearTextWidthCache,q as getCachedFontMetrics,w as getCachedParagraphMeasure,l as getCachedTextWidth,u as getFontCacheSize,A as getParagraphCacheSize,p as getTextCacheSize,C as getTotalCacheSize,v as hashParagraphBlock,k as measureBlocksWithFloats,j as measureTableBlock,i as measureTableCellBlockVisualHeight,r as setCachedFontMetrics,x as setCachedParagraphMeasure,m as setCachedTextWidth,t as setFontCacheSize,z as setParagraphCacheSize,o as setTextCacheSize}from'../chunk-55XWETY4.mjs';export{g as buildFontString,y as clampFloatingWrapMargins,c as countTableColumns,l as findCharacterAtX,e as getCanvasContext,u as getFloatingMargins,h as getFontMetrics,B as getRunCharWidths,m as getXForCharacter,r as halfPtToPx,z as measureParagraph,A as measureParagraphs,k as measureRun,j as measureText,i as measureTextWidth,d as normalizeTableColumnWidths,p as ptToPx,s as pxToHalfPt,q as pxToPt,o as pxToTwips,t as rectsToFloatingZones,f as resetCanvasContext,b as resolveCellGrid,a as resolveTableWidthPx,n as twipsToPx}from'../chunk-JHTURDPX.mjs';export{d as resetBlockIdCounter}from'../chunk-FCJWLEKT.mjs';import'../chunk-7E5VBRDL.mjs';import'../chunk-3G44SFHX.mjs';import'../chunk-MOCGHQ4A.mjs';import'../chunk-IUVQJ6PX.mjs';import'../chunk-7OW3VCZE.mjs';import'../chunk-LK6I3HMH.mjs';import'../chunk-QPFJJPIC.mjs';import'../chunk-GYWTUUXX.mjs';import'../chunk-7CZEZ3UL.mjs';import'../chunk-W77JXDEV.mjs';import'../chunk-3ANZ3252.mjs';import'../chunk-4GFTMGSV.mjs';import'../chunk-SWBLJF6R.mjs';import'../chunk-MOKKS75W.mjs';import'../chunk-OZMNIX6U.mjs';import'../chunk-AMENZY5F.mjs';import'../chunk-U67MWOPZ.mjs';import'../chunk-BGY3CB37.mjs';import'../chunk-2XP6GLA4.mjs';import'../chunk-ZX26QZJ5.mjs';import'../chunk-MJ6XZFVD.mjs';import'../chunk-67LVRQIR.mjs';import'../chunk-LE67NTCN.mjs';import'../chunk-VW22RZ6C.mjs';import'../chunk-DI6CRWSW.mjs';import'../chunk-QYUPLKLP.mjs';
@@ -6,11 +6,15 @@
6
6
  * @packageDocumentation
7
7
  * @public
8
8
  */
9
- import { WrapTextDirection, TextRun, ParagraphBlock, ParagraphMeasure, FlowBlock, Measure } from '../../layout-engine/types.mjs';
10
- import '../../content-CE-ZdMwG.mjs';
9
+ import { TextRun, ParagraphBlock, ParagraphMeasure } from '../../layout-engine/types.mjs';
10
+ import { b as FloatingImageZone } from '../../measureBlocksPipeline-BMqbRFQB.mjs';
11
+ export { F as FloatPageGeometry, a as FloatingExclusionRect, c as FloatingLineSegmentZone, M as MeasureBlockFn, g as getFloatingMargins, m as measureBlocksWithFloats, r as rectsToFloatingZones } from '../../measureBlocksPipeline-BMqbRFQB.mjs';
12
+ import '../../content-3xF4WDE8.mjs';
11
13
  import '../../formatting-BH4hcZiq.mjs';
12
14
  import '../../colors-C3vA7HUU.mjs';
13
15
  import '../../docx/wrapTypes.mjs';
16
+ import '../../watermark-DAcnAs_J.mjs';
17
+ import '../../anchoredObjectPosition-KJEyF-wr.mjs';
14
18
 
15
19
  /**
16
20
  * Measurement container for text layout
@@ -155,41 +159,6 @@ declare function halfPtToPx(halfPt: number): number;
155
159
  */
156
160
  declare function pxToHalfPt(px: number): number;
157
161
 
158
- interface FloatingExclusionRect {
159
- /** Which side the object is on for simple one-sided wrapping. */
160
- side: 'left' | 'right';
161
- /** X position relative to the content area. */
162
- x: number;
163
- /** Y position relative to the content area. */
164
- y: number;
165
- width: number;
166
- height: number;
167
- distTop: number;
168
- distBottom: number;
169
- distLeft: number;
170
- distRight: number;
171
- wrapText?: WrapTextDirection;
172
- wrapType?: string;
173
- }
174
- interface FloatingImageZone {
175
- leftMargin: number;
176
- rightMargin: number;
177
- topY: number;
178
- bottomY: number;
179
- segments?: FloatingLineSegmentZone[];
180
- }
181
- interface FloatingLineSegmentZone {
182
- leftOffset: number;
183
- availableWidth: number;
184
- }
185
- interface FloatingLineMargins {
186
- leftMargin: number;
187
- rightMargin: number;
188
- segments?: FloatingLineSegmentZone[];
189
- }
190
- declare function rectsToFloatingZones(rects: FloatingExclusionRect[], contentWidth: number): FloatingImageZone[];
191
- declare function getFloatingMargins(lineY: number, lineHeight: number, zones: FloatingImageZone[] | undefined, paragraphYOffset: number): FloatingLineMargins;
192
-
193
162
  /**
194
163
  * Paragraph measurement module
195
164
  *
@@ -247,43 +216,6 @@ declare function measureParagraphs(blocks: ParagraphBlock[], maxWidth: number):
247
216
  */
248
217
  declare function getRunCharWidths(run: TextRun): number[];
249
218
 
250
- /**
251
- * Floating-aware block measurement pipeline.
252
- *
253
- * Pre-scans a block list to extract exclusion zones from anchored images,
254
- * floating tables, and floating text boxes; groups co-located floats so
255
- * their combined exclusion applies starting from the earliest anchor; then
256
- * walks the blocks calling the caller-supplied `measureBlock` with the
257
- * active zones and cumulative Y at each step.
258
- *
259
- * Adapters (React, Vue) provide their own `measureBlock` so they can
260
- * decide e.g. whether to cache paragraph measures. The orchestration,
261
- * extraction, and grouping live here so both adapters stay in lockstep.
262
- *
263
- * @packageDocumentation
264
- * @public
265
- */
266
-
267
- /**
268
- * Block-measurement callback shape passed to {@link measureBlocksWithFloats}.
269
- * Adapters (React, Vue) supply this so they can decide platform-specific
270
- * concerns (e.g. paragraph-measure caching, per-section width) while
271
- * sharing the floating-zone orchestration. This is adapter-author API,
272
- * not end-consumer API.
273
- *
274
- * @public
275
- */
276
- type MeasureBlockFn = (block: FlowBlock, contentWidth: number, floatingZones?: FloatingImageZone[], cumulativeY?: number) => Measure;
277
- /**
278
- * Walk `blocks` and produce one `Measure` per block. Before measuring, this
279
- * extracts floating exclusion zones (images / floating tables / floating
280
- * textboxes), groups overlapping co-located floats, and threads the active
281
- * zones plus cumulative Y into each `measureBlock` call.
282
- *
283
- * @public
284
- */
285
- declare function measureBlocksWithFloats(blocks: FlowBlock[], contentWidth: number | number[], measureBlock: MeasureBlockFn): Measure[];
286
-
287
219
  /**
288
220
  * Measurement Cache
289
221
  *
@@ -374,4 +306,4 @@ declare function clearAllCaches(): void;
374
306
  */
375
307
  declare function getTotalCacheSize(): number;
376
308
 
377
- export { type FloatingExclusionRect, type FloatingImageZone, type FloatingLineSegmentZone, type FontMetrics, type FontStyle, type MeasureBlockFn, type MeasureParagraphOptions, type RunMeasurement, type TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFloatingMargins, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureBlocksWithFloats, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, rectsToFloatingZones, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx };
309
+ export { FloatingImageZone, type FontMetrics, type FontStyle, type MeasureParagraphOptions, type RunMeasurement, type TextMeasurement, buildFontString, clampFloatingWrapMargins, clearAllCaches, clearFontMetricsCache, clearParagraphMeasureCache, clearTextWidthCache, findCharacterAtX, getCachedFontMetrics, getCachedParagraphMeasure, getCachedTextWidth, getCanvasContext, getFontCacheSize, getFontMetrics, getParagraphCacheSize, getRunCharWidths, getTextCacheSize, getTotalCacheSize, getXForCharacter, halfPtToPx, hashParagraphBlock, measureParagraph, measureParagraphs, measureRun, measureText, measureTextWidth, ptToPx, pxToHalfPt, pxToPt, pxToTwips, resetCanvasContext, setCachedFontMetrics, setCachedParagraphMeasure, setCachedTextWidth, setFontCacheSize, setParagraphCacheSize, setTextCacheSize, twipsToPx };