@docx-editor.dev/core 2.35.0-canary.20261104032723.sha-43c2012 → 2.35.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 (115) hide show
  1. package/README.md +9 -14
  2. package/dist/automation.cjs +1 -1
  3. package/dist/automation.d.ts +16 -11
  4. package/dist/automation.js +1 -1
  5. package/dist/binding.cjs +1 -1
  6. package/dist/binding.d.ts +12 -12
  7. package/dist/binding.js +1 -1
  8. package/dist/{chrome-print-CK3v5NhC.d.ts → chrome-print-H0uSxdg3.d.ts} +70 -17
  9. package/dist/{chunk-AMOFXSEO.cjs → chunk-2C75IWUN.cjs} +1 -1
  10. package/dist/chunk-2NFQ7OXY.cjs +1 -0
  11. package/dist/chunk-2V3V57SC.js +3 -0
  12. package/dist/chunk-32YOHLEK.cjs +32 -0
  13. package/dist/chunk-4NISR27M.cjs +31 -0
  14. package/dist/chunk-5ZE7ROGP.js +31 -0
  15. package/dist/{chunk-LZ64O473.js → chunk-66ZAVRGB.js} +1 -1
  16. package/dist/{chunk-A5GMOQWD.js → chunk-6767S7UF.js} +1 -1
  17. package/dist/chunk-6BZINLEN.cjs +1 -0
  18. package/dist/{chunk-EBIMIIC3.js → chunk-AVGSD7FB.js} +5 -5
  19. package/dist/{chunk-TZTKEPCC.cjs → chunk-CBJMRC4L.cjs} +1 -1
  20. package/dist/chunk-DCILO4XD.cjs +236 -0
  21. package/dist/{chunk-FBGZOGLU.cjs → chunk-DSIDCA3V.cjs} +4 -4
  22. package/dist/chunk-FLEFHRJG.cjs +5 -0
  23. package/dist/chunk-FMSXJ22B.js +2 -0
  24. package/dist/{chunk-7ACXKFKO.js → chunk-I4OZW2NO.js} +1 -1
  25. package/dist/chunk-JGE2O6IF.cjs +3 -0
  26. package/dist/chunk-K2BBJDM7.js +32 -0
  27. package/dist/chunk-LMASPHYS.js +1 -0
  28. package/dist/chunk-NYZP5NM3.js +4 -0
  29. package/dist/chunk-P3XUE72N.js +236 -0
  30. package/dist/{chunk-JZ4LO3ZZ.js → chunk-Q5YVLUGG.js} +1 -1
  31. package/dist/chunk-QALWAAPL.cjs +4 -0
  32. package/dist/{chunk-ELR6HXOO.js → chunk-QDUMZYTX.js} +1 -1
  33. package/dist/chunk-QLANEOTJ.cjs +7 -0
  34. package/dist/{chunk-4NPNKO5U.cjs → chunk-SJV6WCTP.cjs} +1 -1
  35. package/dist/{chunk-I4WSXFY6.js → chunk-TMCMXIBT.js} +4 -4
  36. package/dist/{chunk-GTICLPKS.cjs → chunk-TY5CE2JR.cjs} +1 -1
  37. package/dist/chunk-UAUB5YV6.js +7 -0
  38. package/dist/{chunk-Q4MUV5KX.cjs → chunk-WWZWT26M.cjs} +1 -1
  39. package/dist/chunk-Y3JSN52G.cjs +2 -0
  40. package/dist/chunk-YD3KSZJM.js +1 -0
  41. package/dist/collaboration/replication.cjs +1 -1
  42. package/dist/collaboration/replication.d.ts +3 -3
  43. package/dist/collaboration/replication.js +1 -1
  44. package/dist/collaboration.d.ts +2 -2
  45. package/dist/contracts/document.d.ts +2 -2
  46. package/dist/contracts/editor.d.ts +8 -8
  47. package/dist/contracts/modules.cjs +1 -1
  48. package/dist/contracts/modules.d.ts +34 -13
  49. package/dist/contracts/modules.js +1 -1
  50. package/dist/contracts/types.d.ts +3 -3
  51. package/dist/{custom-node-writes-BC3z8NwO.d.ts → custom-node-writes-Cj0itq58.d.ts} +2 -2
  52. package/dist/{document-protection-8hXPdn5U.d.ts → document-protection-CDLoYQI3.d.ts} +1 -1
  53. package/dist/{drawing-graphic-kind-_5u2E4ee.d.ts → drawing-graphic-kind-8zt6pugF.d.ts} +2 -2
  54. package/dist/{drawing-preview-package-JyAqL6OV.d.ts → drawing-preview-package-8o9LSfzP.d.ts} +1 -1
  55. package/dist/{editor-BGCdE3tB.d.ts → editor-CujQcn1z.d.ts} +20 -10
  56. package/dist/editor.cjs +1 -1
  57. package/dist/editor.css +3 -3
  58. package/dist/editor.d.ts +52 -29
  59. package/dist/editor.js +1 -1
  60. package/dist/export.cjs +2 -2
  61. package/dist/export.d.ts +6 -6
  62. package/dist/export.js +1 -1
  63. package/dist/index.cjs +1 -1
  64. package/dist/index.d.ts +18 -18
  65. package/dist/index.js +1 -1
  66. package/dist/{layout-shaping-D2qNes9-.d.ts → layout-shaping-ZjLRz_qa.d.ts} +1 -1
  67. package/dist/layout.cjs +1 -1
  68. package/dist/layout.d.ts +25 -21
  69. package/dist/layout.js +1 -1
  70. package/dist/{note-properties-DGPzKUuA.d.ts → note-properties-BRpskBeh.d.ts} +1 -1
  71. package/dist/output.cjs +1 -1
  72. package/dist/output.d.ts +10 -10
  73. package/dist/output.js +1 -1
  74. package/dist/{protocol-0y3iaYj9.d.ts → protocol-GVVQQwCX.d.ts} +13 -2
  75. package/dist/{review-paragraph-order-DeQp2_iu.d.ts → review-paragraph-order-aEHnQTt7.d.ts} +5 -2
  76. package/dist/{revision-projection-CrAv-HP6.d.ts → revision-projection-vU_UiTLx.d.ts} +1 -1
  77. package/dist/{semantic-cell-selection-CeG_qqDV.d.ts → semantic-cell-selection-CaRIISu-.d.ts} +2 -2
  78. package/dist/{semantic-interaction-DcE_ZsiD.d.ts → semantic-interaction-LJtUJJS5.d.ts} +1 -1
  79. package/dist/{semantic-paint-DfeN6UQF.d.ts → semantic-paint-2LBYlQcn.d.ts} +11 -4
  80. package/dist/{semantic-record-queries-qwd9Ict6.d.ts → semantic-record-queries-C_YK2gCz.d.ts} +1 -1
  81. package/dist/{semantic-records-thL1rcmG.d.ts → semantic-records-AU2pIYRp.d.ts} +3 -3
  82. package/dist/store.cjs +1 -1
  83. package/dist/store.d.ts +1664 -1664
  84. package/dist/store.js +1 -1
  85. package/dist/{tree-op-types-CGlwCQXg.d.ts → tree-op-types-DmrePCMo.d.ts} +320 -11
  86. package/dist/{tree-package-store-D0_BOm-r.d.ts → tree-package-fragment-DXZ2B7x0.d.ts} +702 -691
  87. package/dist/{tree-session-contract-DkThhHjy.d.ts → tree-session-contract-D3e-5YNq.d.ts} +19 -4
  88. package/dist/{unsupported-elements-qj0sXi2s.d.ts → unsupported-elements-9Pz4I_F6.d.ts} +1 -1
  89. package/docs/accept-reject-without-scrolling.md +31 -48
  90. package/docs/comment-on-found-text.md +47 -23
  91. package/docs/custom-review-cards.md +50 -34
  92. package/docs/highlight-ranges.md +26 -6
  93. package/docs/index.md +21 -21
  94. package/docs/propose-rewrite.md +87 -138
  95. package/docs/tracked-replacement.md +41 -20
  96. package/package.json +2 -2
  97. package/dist/chunk-4C7JUJDX.cjs +0 -1
  98. package/dist/chunk-4HENIAFG.js +0 -1
  99. package/dist/chunk-6IYKYYWF.js +0 -32
  100. package/dist/chunk-CDAFCPT6.cjs +0 -3
  101. package/dist/chunk-CU6QPXKD.js +0 -2
  102. package/dist/chunk-EMITIPLN.js +0 -4
  103. package/dist/chunk-IGB66DIX.cjs +0 -30
  104. package/dist/chunk-JQPTNBLT.js +0 -236
  105. package/dist/chunk-JVWRILO3.cjs +0 -4
  106. package/dist/chunk-KOYEBRLV.js +0 -1
  107. package/dist/chunk-KZZPOZOF.cjs +0 -2
  108. package/dist/chunk-NPWMZIPA.cjs +0 -32
  109. package/dist/chunk-NS2QCOAS.js +0 -7
  110. package/dist/chunk-O2PGRL5D.js +0 -3
  111. package/dist/chunk-TFJUIP4X.cjs +0 -236
  112. package/dist/chunk-V3N4SOAK.cjs +0 -1
  113. package/dist/chunk-V6FOPP2H.js +0 -30
  114. package/dist/chunk-XFEIUKOS.cjs +0 -7
  115. package/dist/chunk-ZF4N3N3L.cjs +0 -5
package/README.md CHANGED
@@ -30,7 +30,7 @@ Node.js requires `^20.16.0 || >=22.3.0`.
30
30
  ## Features
31
31
 
32
32
  - [Read and save DOCX files](https://www.docx-editor.dev/docs/2.x/guides/loading-and-saving).
33
- - [Lay out and render document pages](https://www.docx-editor.dev/docs/2.x/word-fidelity). Charts, SmartArt saved without its drawing, shape effects, and WordArt need [`@docx-editor.dev/pro/drawing`](https://www.docx-editor.dev/docs/2.x/pro/drawing).
33
+ - [Lay out and render document pages](https://www.docx-editor.dev/docs/2.x/docx-fidelity). Charts, DrawingML diagrams saved without their drawing, shape effects, and VML text paths need [`@docx-editor.dev/pro/drawing`](https://www.docx-editor.dev/docs/2.x/pro/drawing).
34
34
  - [Build an editor with shared commands and controls](https://www.docx-editor.dev/docs/2.x/guides/chrome-slots).
35
35
  - [Configure fonts for text measurement](https://www.docx-editor.dev/docs/2.x/guides/fonts).
36
36
 
@@ -116,25 +116,20 @@ Anything you render from document data (a font name, a hyperlink target, a comme
116
116
 
117
117
  ## Which API for which job
118
118
 
119
- | Job | Use |
120
- | --- | --- |
121
- | Build a review UI in the browser | The React or Vue adapter hooks, plus the review hooks and `DocxEditorReview` from `@docx-editor.dev/pro/react` or `@docx-editor.dev/pro/vue`. |
122
- | Edit in a headless, server, or agent pipeline | The editing API in `@docx-editor.dev/editor-api`, which follows the Office.js object model. |
119
+ Use the React or Vue adapter hooks, the review hooks, and `DocxEditorReview` from `@docx-editor.dev/pro/react` or `@docx-editor.dev/pro/vue` to build browser review controls. Use the editing API in `@docx-editor.dev/editor-api` for document automation. It follows the Office.js object model and runs in browser and server hosts.
123
120
 
124
- | Task | Browser host (React or Vue) | Headless, server, or agent |
121
+ | Task | Browser controls (React or Vue) | Document automation |
125
122
  | --- | --- | --- |
126
123
  | [Comment on found text](https://www.docx-editor.dev/docs/2.x/recipes/comment-on-found-text) | `editor.findMatches`, `editor.selectMatch`, then `useReview().comment` | `body.search`, then `Range.insertComment` |
127
- | Reply to a thread | `useReview().reply(item, text)` | `Comment.reply(text)` |
124
+ | [Reply to a thread](https://www.docx-editor.dev/docs/2.x/pro/comments) | `useReview().reply(item, text)` | `Comment.reply(text)` |
128
125
  | [Record a tracked replacement](https://www.docx-editor.dev/docs/2.x/recipes/tracked-replacement) | Suggesting mode, then `editor.exec({ type: 'replaceMatch', match, text })` | `document.changeTrackingMode = 'TrackMineOnly'`, then `Range.insertText(text, 'Replace')` |
129
- | [Propose an AI rewrite as tracked changes](https://www.docx-editor.dev/docs/2.x/recipes/propose-rewrite) | The same code through `DocxEditor.createBrowser` from `@docx-editor.dev/editor-api/browser` | `prepareRewrite` from `@docx-editor.dev/editor-api/agent` |
126
+ | [Propose an AI rewrite as tracked changes](https://www.docx-editor.dev/docs/2.x/recipes/propose-rewrite) | `prepareRewrite` through `DocxEditor.createBrowser` | `prepareRewrite` from `@docx-editor.dev/editor-api/agent` |
130
127
  | [Accept or reject a change](https://www.docx-editor.dev/docs/2.x/recipes/accept-reject-without-scrolling) | `useReview().accept(item)` or `useReview().reject(item)` | `Revision.accept()` or `Revision.reject()` |
131
- | [Open or reveal a change without scrolling](https://www.docx-editor.dev/docs/2.x/recipes/accept-reject-without-scrolling) | `useReview().setActive(key, { reveal: false })` | Not applicable: no viewport |
128
+ | [Open a change without scrolling](https://www.docx-editor.dev/docs/2.x/recipes/accept-reject-without-scrolling) | `useReview().setActive(key, { reveal: false })` | Not applicable: no viewport |
132
129
  | [Highlight ranges](https://www.docx-editor.dev/docs/2.x/recipes/highlight-ranges) | `useHighlights(name, source, options)` | Not applicable |
133
- | [Custom review rail cards](https://www.docx-editor.dev/docs/2.x/recipes/custom-review-cards) | `DocxEditorReview` with `preset` set to `false`, `useReview().items`, `useStackedReviewPositions`, and `useReviewRailMetrics` | Not applicable |
130
+ | [Custom review rail cards](https://www.docx-editor.dev/docs/2.x/recipes/custom-review-cards) | `DocxEditorReview` with `preset` set to `false`, `useStackedReviewPositions`, and `useReviewRailMetrics` | Not applicable |
134
131
  | Comment-on-selection button | `DocxEditorReview.AddComment` as a direct child of `DocxEditorReview`, or `useEditorCommand('review.addComment')` | Not applicable |
135
- | Page setup and paragraph dialogs from a custom toolbar | `DocxEditor.PageSetupDialog` or `DocxEditor.ParagraphDialog` with `open` and a close handler (`onClose` in React, `@close` in Vue); enable the button from `usePageSetup().isEnabled` or `useParagraphFormat().isEnabled` | `Section.pageSetup`, and `Paragraph` properties such as `alignment` |
136
-
137
- The review hooks need `reviewModule()` from `@docx-editor.dev/pro` in the editor's modules, and an editor `author` for comments and tracked changes. The editing API takes its author from the `author` option of `DocxEditor.createServer`, imported from `@docx-editor.dev/editor-api`, or of `DocxEditor.createBrowser`, imported from `@docx-editor.dev/editor-api/browser`.
132
+ | [Page setup and paragraph dialogs](https://www.docx-editor.dev/docs/2.x/customization/dialogs) | `DocxEditor.PageSetupDialog` or `DocxEditor.ParagraphDialog` | `Section.pageSetup`, and `Paragraph` properties such as `alignment` |
138
133
 
139
134
  This package ships the task recipes in [`docs/index.md`](./docs/index.md). They are also on the site: [Task recipes](https://www.docx-editor.dev/docs/2.x/recipes).
140
135
 
@@ -142,7 +137,7 @@ This package ships the task recipes in [`docs/index.md`](./docs/index.md). They
142
137
 
143
138
  - [Core overview](https://www.docx-editor.dev/docs/2.x/core)
144
139
  - [Architecture](https://www.docx-editor.dev/docs/2.x/core/architecture)
145
- - [Feature support and fidelity](https://www.docx-editor.dev/docs/2.x/word-fidelity)
140
+ - [Feature support and fidelity](https://www.docx-editor.dev/docs/2.x/docx-fidelity)
146
141
 
147
142
  ## License
148
143
 
@@ -1 +1 @@
1
- 'use strict';var chunkXFEIUKOS_cjs=require('./chunk-XFEIUKOS.cjs');require('./chunk-4C7JUJDX.cjs'),require('./chunk-NPWMZIPA.cjs'),require('./chunk-TZTKEPCC.cjs'),require('./chunk-Q4MUV5KX.cjs'),require('./chunk-AMOFXSEO.cjs'),require('./chunk-JVWRILO3.cjs'),require('./chunk-GTICLPKS.cjs'),require('./chunk-TFJUIP4X.cjs');Object.defineProperty(exports,"AUTOMATION_COMMAND_OPERATIONS",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.m}});Object.defineProperty(exports,"AUTOMATION_QUERY_OPERATIONS",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.l}});Object.defineProperty(exports,"AUTOMATION_SOLITARY_OPERATIONS",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.n}});Object.defineProperty(exports,"HEADER_FOOTER_VARIANTS",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.k}});Object.defineProperty(exports,"SERVER_AUTOMATION_CAPABILITIES",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.v}});Object.defineProperty(exports,"byteSizeBucket",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.E}});Object.defineProperty(exports,"countBucket",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.F}});Object.defineProperty(exports,"createAutomationPaginationProvider",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.t}});Object.defineProperty(exports,"createDiagnosticEmitter",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.G}});Object.defineProperty(exports,"createServerAutomationHost",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.w}});Object.defineProperty(exports,"diagnosticCause",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.I}});Object.defineProperty(exports,"diagnosticCauses",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.H}});Object.defineProperty(exports,"diagnosticCodes",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.z}});Object.defineProperty(exports,"diagnosticErrorName",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.L}});Object.defineProperty(exports,"documentPartKind",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.M}});Object.defineProperty(exports,"exceptionCause",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.K}});Object.defineProperty(exports,"explainDiagnostic",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.y}});Object.defineProperty(exports,"isAutomationCommand",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.p}});Object.defineProperty(exports,"isSolitaryAutomationCommand",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.o}});Object.defineProperty(exports,"openDiagnosticCode",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.A}});Object.defineProperty(exports,"paginationSnapshotOf",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.r}});Object.defineProperty(exports,"reviewCodeOfSkip",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.C}});Object.defineProperty(exports,"reviewDiagnosticCode",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.D}});Object.defineProperty(exports,"reviewSkipOfReason",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.J}});Object.defineProperty(exports,"storeEditDiagnosticCode",{enumerable:true,get:function(){return chunkXFEIUKOS_cjs.B}});
1
+ 'use strict';var chunkQLANEOTJ_cjs=require('./chunk-QLANEOTJ.cjs');require('./chunk-6BZINLEN.cjs'),require('./chunk-32YOHLEK.cjs'),require('./chunk-CBJMRC4L.cjs'),require('./chunk-WWZWT26M.cjs'),require('./chunk-2C75IWUN.cjs'),require('./chunk-QALWAAPL.cjs'),require('./chunk-TY5CE2JR.cjs'),require('./chunk-DCILO4XD.cjs');Object.defineProperty(exports,"AUTOMATION_COMMAND_OPERATIONS",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.m}});Object.defineProperty(exports,"AUTOMATION_QUERY_OPERATIONS",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.l}});Object.defineProperty(exports,"AUTOMATION_SOLITARY_OPERATIONS",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.n}});Object.defineProperty(exports,"HEADER_FOOTER_VARIANTS",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.k}});Object.defineProperty(exports,"SERVER_AUTOMATION_CAPABILITIES",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.v}});Object.defineProperty(exports,"byteSizeBucket",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.E}});Object.defineProperty(exports,"countBucket",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.F}});Object.defineProperty(exports,"createAutomationPaginationProvider",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.t}});Object.defineProperty(exports,"createDiagnosticEmitter",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.G}});Object.defineProperty(exports,"createServerAutomationHost",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.w}});Object.defineProperty(exports,"diagnosticCause",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.I}});Object.defineProperty(exports,"diagnosticCauses",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.H}});Object.defineProperty(exports,"diagnosticCodes",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.z}});Object.defineProperty(exports,"diagnosticErrorName",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.L}});Object.defineProperty(exports,"documentPartKind",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.M}});Object.defineProperty(exports,"exceptionCause",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.K}});Object.defineProperty(exports,"explainDiagnostic",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.y}});Object.defineProperty(exports,"isAutomationCommand",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.p}});Object.defineProperty(exports,"isSolitaryAutomationCommand",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.o}});Object.defineProperty(exports,"openDiagnosticCode",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.A}});Object.defineProperty(exports,"paginationSnapshotOf",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.r}});Object.defineProperty(exports,"reviewCodeOfSkip",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.C}});Object.defineProperty(exports,"reviewDiagnosticCode",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.D}});Object.defineProperty(exports,"reviewSkipOfReason",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.J}});Object.defineProperty(exports,"storeEditDiagnosticCode",{enumerable:true,get:function(){return chunkQLANEOTJ_cjs.B}});
@@ -11,18 +11,18 @@
11
11
  * @packageDocumentation
12
12
  * @public
13
13
  */
14
- import { A as AutomationOperation, a as AutomationCapabilities, b as AutomationHost } from './protocol-0y3iaYj9.js';
15
- export { c as AutomationAlignment, d as AutomationAuthoringOperation, e as AutomationBatchRequest, f as AutomationBatchResponse, g as AutomationChangeEvent, h as AutomationContentControlLock, i as AutomationContentControlRangeLocation, j as AutomationContentControlScope, k as AutomationContentControlSubtype, l as AutomationContentControlValue, m as AutomationCustomNodePayload, n as AutomationEndpoint, o as AutomationError, p as AutomationErrorCode, q as AutomationFontRead, r as AutomationFontWrite, s as AutomationHandle, t as AutomationHandleRef, u as AutomationInlinePictureRead, v as AutomationInlinePictureWrite, w as AutomationListBullet, x as AutomationListLevelFormat, y as AutomationListNumbering, z as AutomationObjectKind, B as AutomationOperationKind, C as AutomationOperationResult, D as AutomationPageOrientation, E as AutomationPageSetupRead, F as AutomationPageSetupWrite, G as AutomationParagraphFormatRead, H as AutomationParagraphFormatWrite, I as AutomationParagraphRef, J as AutomationPoint, K as AutomationReadingOrder, L as AutomationSaveResult, M as AutomationSearchOptions, N as AutomationSelectionMode, O as AutomationShapeRead, P as AutomationShapeType, Q as AutomationSpan, R as AutomationSpanRef, S as AutomationStyleKind, T as AutomationStyleRead, U as AutomationTextProjection, V as AutomationUnsubscribe, W as AutomationValue } from './protocol-0y3iaYj9.js';
16
- import { H as HeaderFooterVariant, N as NoteKind, C as ContentLockPolicy } from './tree-package-store-D0_BOm-r.js';
17
- import { az as OoxmlPackageLimits, aA as OoxmlPackageRejection } from './tree-op-types-CGlwCQXg.js';
18
- export { aB as AutomationTableMutation, J as RevisionAuthorEntry, K as RevisionAuthorResult, L as RevisionAuthorSkipReason, M as RevisionBatchEntry, Q as RevisionBatchResult, T as RevisionBatchSkipDetail, U as RevisionBatchSkipReason, V as RevisionSiteRefusal } from './tree-op-types-CGlwCQXg.js';
19
- import { T as TextMeasurer, S as SemanticLayout } from './semantic-records-thL1rcmG.js';
20
- import { H as HeadlessDocumentView } from './drawing-graphic-kind-_5u2E4ee.js';
14
+ import { A as AutomationOperation, a as AutomationCapabilities, b as AutomationHost } from './protocol-GVVQQwCX.js';
15
+ export { c as AutomationAlignment, d as AutomationAuthoringOperation, e as AutomationBatchRequest, f as AutomationBatchResponse, g as AutomationChangeEvent, h as AutomationContentControlLock, i as AutomationContentControlRangeLocation, j as AutomationContentControlScope, k as AutomationContentControlSubtype, l as AutomationContentControlValue, m as AutomationCustomNodePayload, n as AutomationEndpoint, o as AutomationError, p as AutomationErrorCode, q as AutomationFontRead, r as AutomationFontWrite, s as AutomationHandle, t as AutomationHandleRef, u as AutomationInlinePictureRead, v as AutomationInlinePictureWrite, w as AutomationListBullet, x as AutomationListLevelFormat, y as AutomationListNumbering, z as AutomationObjectKind, B as AutomationOperationKind, C as AutomationOperationResult, D as AutomationPageOrientation, E as AutomationPageSetupRead, F as AutomationPageSetupWrite, G as AutomationParagraphFormatRead, H as AutomationParagraphFormatWrite, I as AutomationParagraphRef, J as AutomationPoint, K as AutomationReadingOrder, L as AutomationSaveResult, M as AutomationSearchOptions, N as AutomationSelectionMode, O as AutomationShapeRead, P as AutomationShapeType, Q as AutomationSpan, R as AutomationSpanRef, S as AutomationStyleKind, T as AutomationStyleRead, U as AutomationTextProjection, V as AutomationUnsubscribe, W as AutomationValue } from './protocol-GVVQQwCX.js';
16
+ import { H as HeaderFooterVariant, N as NoteKind, C as ContentLockPolicy } from './tree-package-fragment-DXZ2B7x0.js';
17
+ import { aP as OoxmlPackageLimits, b as CompareDocumentsEngine, aQ as OoxmlPackageRejection } from './tree-op-types-DmrePCMo.js';
18
+ export { aR as AutomationTableMutation, g as CompareDocumentsEngineErrorCode, h as CompareDocumentsEngineOptions, i as CompareDocumentsEngineResult, j as CompareDocumentsErrorCode, n as CompareDocumentsRefusalReason, a4 as RevisionAuthorEntry, a5 as RevisionAuthorResult, a6 as RevisionAuthorSkipReason, a7 as RevisionBatchEntry, a8 as RevisionBatchResult, a9 as RevisionBatchSkipDetail, aa as RevisionBatchSkipReason, ab as RevisionSiteRefusal } from './tree-op-types-DmrePCMo.js';
19
+ import { T as TextMeasurer, S as SemanticLayout } from './semantic-records-AU2pIYRp.js';
20
+ import { H as HeadlessDocumentView } from './drawing-graphic-kind-8zt6pugF.js';
21
21
  import { CollaborationModuleContribution } from './collaboration.js';
22
22
  export { D as DiagnosticEmitter, a as DiagnosticPayload, b as byteSizeBucket, c as countBucket, e as createDiagnosticEmitter, f as diagnosticCause, d as diagnosticCauses, g as diagnosticErrorName, h as documentPartKind, i as exceptionCause, o as openDiagnosticCode, r as reviewCodeOfSkip, j as reviewDiagnosticCode, k as reviewSkipOfReason, s as storeEditDiagnosticCode } from './diagnostic-context-CkZKkKvB.js';
23
23
  export { B as ByteSizeBucket, C as CollaborationDiagnosticCode, a as CountBucket, b as CustomNodeDiagnosticCode, D as DiagnosticCode, c as DiagnosticErrorName, d as DiagnosticExplanation, e as DocumentOpenDiagnosticCode, f as DocumentPartKind, g as DocumentSaveDiagnosticCode, E as EditDiagnosticCode, F as FailureStage, h as FontDiagnosticCode, i as FormattingChangeKind, H as HistoryDiagnosticCode, P as PerformanceDiagnosticCode, j as ReviewChangeKind, R as ReviewDiagnosticCode, k as ReviewOperation, l as diagnosticCodes, m as explainDiagnostic } from './diagnostic-hints-BTyb8yzX.js';
24
24
  export { c as HistoryGroup, H as HistoryGroupOutcome } from './editor-scope-CA6egMaK.js';
25
- import './revision-projection-CrAv-HP6.js';
25
+ import './revision-projection-vU_UiTLx.js';
26
26
  import './collaboration/replication.js';
27
27
  import './failure-6KGFrDO9.js';
28
28
 
@@ -63,7 +63,7 @@ type AutomationShapeOwnerStory = {
63
63
  /** Operations that read. They never open a transaction. */
64
64
  declare const AUTOMATION_QUERY_OPERATIONS: readonly ["getTables", "getTable", "getTableRows", "getTableCells", "getTableCell", "getMergedTableCell", "getTableCellProperties", "getTableCellBody", "getFields", "getField", "getFieldResult", "getInlinePictures", "getInlinePicture", "getShapes", "getShape", "getShapeBody", "getChangeTrackingMode", "getDocument", "getDocumentProperty", "getStyles", "getBody", "getParagraphs", "getRange", "getSpanParagraphs", "getText", "getSpanText", "getTextRanges", "expandSpan", "getReviewedText", "getParagraphId", "search", "getFont", "getParagraphFormat", "getStyle", "getSections", "getPageSetup", "getFurniture", "getNotes", "getNoteBody", "getNoteText", "getNoteKind", "getLists", "getListId", "getListById", "getListParagraphs", "getParagraphList", "getListLevel", "getHyperlink", "getBookmarks", "getBookmarkName", "getBookmarkRange", "getBookmarkNames", "getBookmarkRangeByName", "getComments", "getCommentReplies", "getCommentId", "getCommentAuthor", "getCommentDate", "getCommentText", "getCommentRange", "getCommentResolved", "getRevisions", "getRevisionType", "getRevisionAuthor", "getRevisionDate", "getRevisionRange", "getReviewItemRange", "getContentControls", "getContentControlById", "getContentControlsByTag", "getContentControlsByTitle", "getContentControlTag", "getContentControlTitle", "getContentControlFileId", "getContentControlSubtype", "getContentControlLock", "getContentControlIsBound", "getContentControlPlaceholderShown", "getContentControlTemporary", "getContentControlText", "getContentControlParagraphs", "getContentControlRange"];
65
65
  /** Operations that write. Every one of these goes through the single transaction path. */
66
- declare const AUTOMATION_COMMAND_OPERATIONS: readonly ["removeDocumentInformation", "setDocumentProperties", "insertTableRows", "insertTable", "updateTable", "updateTableCell", "splitTableCell", "setInlinePicture", "deleteInlinePicture", "insertField", "insertOoxml", "setFieldCode", "setFieldResult", "deleteField", "updateFieldResult", "insertInlinePicture", "insertBreak", "setChangeTrackingMode", "proposeInsertion", "proposeDeletion", "proposeReplacement", "insertText", "replaceSpan", "replaceStoryBlocks", "insertParagraph", "splitParagraph", "deleteParagraph", "selectSpan", "selectBookmark", "insertBookmark", "deleteBookmark", "setFont", "setParagraphFormat", "setStyle", "setPageSetup", "deleteNote", "setListLevel", "startNewList", "attachToList", "detachFromList", "setListLevelFormat", "insertListParagraph", "setHyperlink", "insertComment", "setCommentResolved", "replyToComment", "deleteComment", "acceptRevision", "rejectRevision", "resolveRevisionBatch", "setRevisionAuthorBatch", "acceptAllRevisions", "rejectAllRevisions", "setContentControlValue", "setContentControlProperties", "deleteContentControl", "insertContentControlText", "insertContentControl", "insertCustomNode"];
66
+ declare const AUTOMATION_COMMAND_OPERATIONS: readonly ["removeDocumentInformation", "compareFromBase64", "setDocumentProperties", "insertTableRows", "insertTable", "updateTable", "updateTableCell", "splitTableCell", "setInlinePicture", "deleteInlinePicture", "insertField", "insertOoxml", "setFieldCode", "setFieldResult", "deleteField", "updateFieldResult", "insertInlinePicture", "insertBreak", "setChangeTrackingMode", "proposeInsertion", "proposeDeletion", "proposeReplacement", "insertText", "replaceSpan", "replaceStoryBlocks", "insertParagraph", "splitParagraph", "deleteParagraph", "selectSpan", "selectBookmark", "insertBookmark", "deleteBookmark", "setFont", "setParagraphFormat", "setStyle", "setPageSetup", "deleteNote", "setListLevel", "startNewList", "attachToList", "detachFromList", "setListLevelFormat", "insertListParagraph", "setHyperlink", "insertComment", "setCommentResolved", "replyToComment", "deleteComment", "acceptRevision", "rejectRevision", "resolveRevisionBatch", "setRevisionAuthorBatch", "acceptAllRevisions", "rejectAllRevisions", "setContentControlValue", "setContentControlProperties", "deleteContentControl", "insertContentControlText", "insertContentControl", "insertCustomNode"];
67
67
  /**
68
68
  * Commands that commit as a PACKAGE transaction and therefore share a batch with nothing.
69
69
  *
@@ -77,7 +77,7 @@ declare const AUTOMATION_COMMAND_OPERATIONS: readonly ["removeDocumentInformatio
77
77
  * and shares its batch, and some `updateTable` mutations travel alone. Classify one operation
78
78
  * with {@link isSolitaryAutomationCommand}, not by membership here.
79
79
  */
80
- declare const AUTOMATION_SOLITARY_OPERATIONS: readonly ["removeDocumentInformation", "insertTableRows", "resolveRevisionBatch", "setRevisionAuthorBatch", "insertTable", "insertInlinePicture", "insertBreak", "startNewList", "deleteNote", "insertComment", "setCommentResolved", "replyToComment", "insertCustomNode"];
80
+ declare const AUTOMATION_SOLITARY_OPERATIONS: readonly ["removeDocumentInformation", "compareFromBase64", "insertTableRows", "resolveRevisionBatch", "setRevisionAuthorBatch", "insertTable", "insertInlinePicture", "insertBreak", "startNewList", "deleteNote", "insertComment", "setCommentResolved", "replyToComment", "insertCustomNode"];
81
81
  /** Whether an operation must be the only one in its batch. */
82
82
  declare function isSolitaryAutomationCommand(operation: AutomationOperation): boolean;
83
83
  /** Whether an operation writes. Drives the query/command split inside one batch. */
@@ -149,6 +149,11 @@ interface ServerAutomationHostOptions {
149
149
  * not attach a replica.
150
150
  */
151
151
  readonly collaborationModel?: CollaborationModuleContribution;
152
+ /**
153
+ * Document compare engine from the module registry (the review module's). Absent,
154
+ * `compareFromBase64` refuses.
155
+ */
156
+ readonly compareDocuments?: CompareDocumentsEngine;
152
157
  /**
153
158
  * Opt-in relaxation of `w:lock` for run-property writes (`setFont`): content-locked controls
154
159
  * can be restyled but not retyped. Absent, they refuse both.
@@ -163,5 +168,5 @@ interface ServerAutomationHostOptions {
163
168
  */
164
169
  declare function createServerAutomationHost(bytes: Uint8Array, options?: ServerAutomationHostOptions): ServerAutomationHostResult;
165
170
 
166
- export { AUTOMATION_COMMAND_OPERATIONS, AUTOMATION_QUERY_OPERATIONS, AUTOMATION_SOLITARY_OPERATIONS, AutomationCapabilities, AutomationHost, AutomationOperation, ContentLockPolicy, HEADER_FOOTER_VARIANTS, SERVER_AUTOMATION_CAPABILITIES, createAutomationPaginationProvider, createServerAutomationHost, isAutomationCommand, isSolitaryAutomationCommand, paginationSnapshotOf };
171
+ export { AUTOMATION_COMMAND_OPERATIONS, AUTOMATION_QUERY_OPERATIONS, AUTOMATION_SOLITARY_OPERATIONS, AutomationCapabilities, AutomationHost, AutomationOperation, CompareDocumentsEngine, ContentLockPolicy, HEADER_FOOTER_VARIANTS, SERVER_AUTOMATION_CAPABILITIES, createAutomationPaginationProvider, createServerAutomationHost, isAutomationCommand, isSolitaryAutomationCommand, paginationSnapshotOf };
167
172
  export type { AutomationPaginationOptions, AutomationPaginationProvider, AutomationPaginationSnapshot, AutomationShapeOwnerStory, AutomationStoryId, ServerAutomationHostOptions, ServerAutomationHostRejection, ServerAutomationHostResult };
@@ -1 +1 @@
1
- export{m as AUTOMATION_COMMAND_OPERATIONS,l as AUTOMATION_QUERY_OPERATIONS,n as AUTOMATION_SOLITARY_OPERATIONS,k as HEADER_FOOTER_VARIANTS,v as SERVER_AUTOMATION_CAPABILITIES,E as byteSizeBucket,F as countBucket,t as createAutomationPaginationProvider,G as createDiagnosticEmitter,w as createServerAutomationHost,I as diagnosticCause,H as diagnosticCauses,z as diagnosticCodes,L as diagnosticErrorName,M as documentPartKind,K as exceptionCause,y as explainDiagnostic,p as isAutomationCommand,o as isSolitaryAutomationCommand,A as openDiagnosticCode,r as paginationSnapshotOf,C as reviewCodeOfSkip,D as reviewDiagnosticCode,J as reviewSkipOfReason,B as storeEditDiagnosticCode}from'./chunk-NS2QCOAS.js';import'./chunk-KOYEBRLV.js';import'./chunk-6IYKYYWF.js';import'./chunk-JZ4LO3ZZ.js';import'./chunk-A5GMOQWD.js';import'./chunk-LZ64O473.js';import'./chunk-EMITIPLN.js';import'./chunk-7ACXKFKO.js';import'./chunk-JQPTNBLT.js';
1
+ export{m as AUTOMATION_COMMAND_OPERATIONS,l as AUTOMATION_QUERY_OPERATIONS,n as AUTOMATION_SOLITARY_OPERATIONS,k as HEADER_FOOTER_VARIANTS,v as SERVER_AUTOMATION_CAPABILITIES,E as byteSizeBucket,F as countBucket,t as createAutomationPaginationProvider,G as createDiagnosticEmitter,w as createServerAutomationHost,I as diagnosticCause,H as diagnosticCauses,z as diagnosticCodes,L as diagnosticErrorName,M as documentPartKind,K as exceptionCause,y as explainDiagnostic,p as isAutomationCommand,o as isSolitaryAutomationCommand,A as openDiagnosticCode,r as paginationSnapshotOf,C as reviewCodeOfSkip,D as reviewDiagnosticCode,J as reviewSkipOfReason,B as storeEditDiagnosticCode}from'./chunk-UAUB5YV6.js';import'./chunk-LMASPHYS.js';import'./chunk-K2BBJDM7.js';import'./chunk-Q5YVLUGG.js';import'./chunk-6767S7UF.js';import'./chunk-66ZAVRGB.js';import'./chunk-NYZP5NM3.js';import'./chunk-I4OZW2NO.js';import'./chunk-P3XUE72N.js';
package/dist/binding.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var chunkZF4N3N3L_cjs=require('./chunk-ZF4N3N3L.cjs');require('./chunk-4NPNKO5U.cjs'),require('./chunk-TZTKEPCC.cjs'),require('./chunk-Q4MUV5KX.cjs'),require('./chunk-AMOFXSEO.cjs'),require('./chunk-JVWRILO3.cjs'),require('./chunk-GTICLPKS.cjs'),require('./chunk-TFJUIP4X.cjs');Object.defineProperty(exports,"PROJECTION_ORIGIN",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.o}});Object.defineProperty(exports,"bodyParagraphs",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.c}});Object.defineProperty(exports,"docToTreeOps",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.f}});Object.defineProperty(exports,"mountTreeSurface",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.p}});Object.defineProperty(exports,"openTreeSession",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.m}});Object.defineProperty(exports,"partHasNode",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.g}});Object.defineProperty(exports,"reconcileDoc",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.h}});Object.defineProperty(exports,"runPropsOf",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.b}});Object.defineProperty(exports,"treeSchema",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.a}});Object.defineProperty(exports,"treeToDoc",{enumerable:true,get:function(){return chunkZF4N3N3L_cjs.e}});
1
+ 'use strict';var chunkFLEFHRJG_cjs=require('./chunk-FLEFHRJG.cjs');require('./chunk-SJV6WCTP.cjs'),require('./chunk-CBJMRC4L.cjs'),require('./chunk-WWZWT26M.cjs'),require('./chunk-2C75IWUN.cjs'),require('./chunk-QALWAAPL.cjs'),require('./chunk-TY5CE2JR.cjs'),require('./chunk-DCILO4XD.cjs');Object.defineProperty(exports,"PROJECTION_ORIGIN",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.o}});Object.defineProperty(exports,"bodyParagraphs",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.c}});Object.defineProperty(exports,"docToTreeOps",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.f}});Object.defineProperty(exports,"mountTreeSurface",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.p}});Object.defineProperty(exports,"openTreeSession",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.m}});Object.defineProperty(exports,"partHasNode",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.g}});Object.defineProperty(exports,"reconcileDoc",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.h}});Object.defineProperty(exports,"runPropsOf",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.b}});Object.defineProperty(exports,"treeSchema",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.a}});Object.defineProperty(exports,"treeToDoc",{enumerable:true,get:function(){return chunkFLEFHRJG_cjs.e}});
package/dist/binding.d.ts CHANGED
@@ -9,28 +9,28 @@
9
9
  * @public
10
10
  */
11
11
  import { Node, Schema } from 'prosemirror-model';
12
- import { aC as OoxmlProperty, aD as OoxmlPackageResult, aA as OoxmlPackageRejection } from './tree-op-types-CGlwCQXg.js';
13
- import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-DkThhHjy.js';
14
- export { D as DocumentStyleEntry, M as MapResult, P as PackageWriteOptions, b as TreeApplyOptions, c as TreeBindingRejection, d as bodyParagraphs, e as docToTreeOps, p as partHasNode, r as reconcileDoc, t as treeToDoc } from './tree-session-contract-DkThhHjy.js';
15
- import { C as ContentLockPolicy } from './tree-package-store-D0_BOm-r.js';
16
- export { S as StoryScope, a as StoryTargetRejection } from './tree-package-store-D0_BOm-r.js';
12
+ import { aS as OoxmlProperty, aT as OoxmlPackageResult, aQ as OoxmlPackageRejection } from './tree-op-types-DmrePCMo.js';
13
+ import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-D3e-5YNq.js';
14
+ export { D as DocumentStyleEntry, M as MapResult, P as PackageWriteOptions, b as TreeApplyOptions, c as TreeBindingRejection, d as bodyParagraphs, e as docToTreeOps, p as partHasNode, r as reconcileDoc, t as treeToDoc } from './tree-session-contract-D3e-5YNq.js';
15
+ import { C as ContentLockPolicy } from './tree-package-fragment-DXZ2B7x0.js';
16
+ export { S as StoryScope, a as StoryTargetRejection } from './tree-package-fragment-DXZ2B7x0.js';
17
17
  import { ReviewModuleContribution } from './contracts/modules.js';
18
18
  import { EditorView } from 'prosemirror-view';
19
19
  import './editor-scope-CA6egMaK.js';
20
- import './custom-node-writes-BC3z8NwO.js';
21
- import './drawing-graphic-kind-_5u2E4ee.js';
20
+ import './custom-node-writes-Cj0itq58.js';
21
+ import './drawing-graphic-kind-8zt6pugF.js';
22
22
  import './collaboration/replication.js';
23
- import './revision-projection-CrAv-HP6.js';
23
+ import './revision-projection-vU_UiTLx.js';
24
24
  import './contracts/types.js';
25
25
  import './failure-6KGFrDO9.js';
26
- import './document-protection-8hXPdn5U.js';
27
- import './editor-BGCdE3tB.js';
26
+ import './document-protection-CDLoYQI3.js';
27
+ import './editor-CujQcn1z.js';
28
28
  import './editor-fonts-D_-vjuJi.js';
29
29
  import './diagnostic-hints-BTyb8yzX.js';
30
30
  import './contracts/document.js';
31
31
  import './contracts/interaction.js';
32
- import './semantic-interaction-DcE_ZsiD.js';
33
- import './semantic-records-thL1rcmG.js';
32
+ import './semantic-interaction-LJtUJJS5.js';
33
+ import './semantic-records-AU2pIYRp.js';
34
34
  import './collaboration.js';
35
35
 
36
36
  /** Attributes carried by a projected paragraph. */
package/dist/binding.js CHANGED
@@ -1 +1 @@
1
- export{o as PROJECTION_ORIGIN,c as bodyParagraphs,f as docToTreeOps,p as mountTreeSurface,m as openTreeSession,g as partHasNode,h as reconcileDoc,b as runPropsOf,a as treeSchema,e as treeToDoc}from'./chunk-EBIMIIC3.js';import'./chunk-ELR6HXOO.js';import'./chunk-JZ4LO3ZZ.js';import'./chunk-A5GMOQWD.js';import'./chunk-LZ64O473.js';import'./chunk-EMITIPLN.js';import'./chunk-7ACXKFKO.js';import'./chunk-JQPTNBLT.js';
1
+ export{o as PROJECTION_ORIGIN,c as bodyParagraphs,f as docToTreeOps,p as mountTreeSurface,m as openTreeSession,g as partHasNode,h as reconcileDoc,b as runPropsOf,a as treeSchema,e as treeToDoc}from'./chunk-AVGSD7FB.js';import'./chunk-QDUMZYTX.js';import'./chunk-Q5YVLUGG.js';import'./chunk-6767S7UF.js';import'./chunk-66ZAVRGB.js';import'./chunk-NYZP5NM3.js';import'./chunk-I4OZW2NO.js';import'./chunk-P3XUE72N.js';
@@ -1,21 +1,21 @@
1
1
  import { d as FontOrigin, M as MarkedFontResolver, c as FontConfigurationFragment, g as FontResolver, f as FontResolutionRequest } from './font-resolver-Bm9XqTNO.js';
2
2
  import { F as FontConfiguration, a as FontFaceRequest, b as FontSource } from './editor-fonts-D_-vjuJi.js';
3
+ import { aO as TreeDocOp, bn as TextFormFieldRange, bo as TextFormFieldOptions, aw as ImageDecodePort, aH as Unsubscribe, ao as CompareDocumentsChromeHandlers, E as ExecResult, at as DrawingPositionInput, bh as DrawingTransform, a3 as ParagraphTabStop, Z as IndentFormatting, a2 as ParagraphFlags, a1 as ParagraphDisagreements, b9 as DrawingTreeDocOp, aG as SupportedImageMime, aF as SelectionPin, r as OoxmlPackage, x as ReviewRevisionKind, a$ as PackageWatermarkWrite, az as ImageWrapTarget } from './tree-op-types-DmrePCMo.js';
3
4
  import { V as ViewScope, a as EditorExecOptions } from './editor-scope-CA6egMaK.js';
4
- import { au as TreeDocOp, b3 as TextFormFieldRange, b4 as TextFormFieldOptions, ad as ImageDecodePort, ao as Unsubscribe, E as ExecResult, aa as DrawingPositionInput, aZ as DrawingTransform, G as ParagraphTabStop, y as IndentFormatting, F as ParagraphFlags, A as ParagraphDisagreements, aJ as DrawingTreeDocOp, an as SupportedImageMime, am as SelectionPin, a5 as OoxmlPackage, g as ReviewRevisionKind, aH as PackageWatermarkWrite, ag as ImageWrapTarget } from './tree-op-types-CGlwCQXg.js';
5
- import { aJ as TableInteractionLabelKey, e as BookmarkStory, u as DocumentSource, aR as ZoomMode, J as EditorFontError, x as Editor, b as EditorCommand, C as CanResult, ax as SelectedImageState, _ as FormatPainterSurfaceState, f as BookmarkSummary, av as ScrollPlacement, aP as TrackedChangePredicate, aO as TrackedChangeFilterMode, a9 as ImageContext, aB as TableBorderEdgeTarget, aC as TableBorderSpec, aD as TableBorderStyle, aI as TableContext } from './editor-BGCdE3tB.js';
6
- import { T as TextMeasurer, i as UnsupportedElementRule, S as SemanticLayout, C as ContentControlBoundaryRecord, t as SectionProperties } from './semantic-records-thL1rcmG.js';
7
- import { a as ReviewDisplayMode, d as ResolvedRevisionMarkup, k as RevisionMarkupOptions, g as RevisionMarkupChromeHandlers } from './revision-projection-CrAv-HP6.js';
8
- import { F as FieldResultsMode, C as ContentLockPolicy, I as InsertImageInput, S as StoryScope, A as ApplyImagePropertiesInput, i as ImageIntentResult } from './tree-package-store-D0_BOm-r.js';
5
+ import { aJ as TableInteractionLabelKey, e as BookmarkStory, u as DocumentSource, aR as ZoomMode, J as EditorFontError, x as Editor, b as EditorCommand, C as CanResult, ax as SelectedImageState, _ as FormatPainterSurfaceState, f as BookmarkSummary, av as ScrollPlacement, aP as TrackedChangePredicate, aO as TrackedChangeFilterMode, a9 as ImageContext, aB as TableBorderEdgeTarget, aC as TableBorderSpec, aD as TableBorderStyle, aI as TableContext, W as EditorSnapshot } from './editor-CujQcn1z.js';
6
+ import { a as ReviewDisplayMode, d as ResolvedRevisionMarkup, k as RevisionMarkupOptions, g as RevisionMarkupChromeHandlers } from './revision-projection-vU_UiTLx.js';
7
+ import { T as TextMeasurer, i as UnsupportedElementRule, S as SemanticLayout, C as ContentControlBoundaryRecord, t as SectionProperties } from './semantic-records-AU2pIYRp.js';
8
+ import { F as FieldResultsMode, C as ContentLockPolicy, I as InsertImageInput, S as StoryScope, A as ApplyImagePropertiesInput, i as ImageIntentResult } from './tree-package-fragment-DXZ2B7x0.js';
9
9
  import { ReviewPaneOptions } from './contracts/types.js';
10
10
  import { F as FontShapingOptions } from './font-shaping-policy-BvpkrfxM.js';
11
11
  import { CollaborationModuleContribution, EditorCollaborationSession, CollaborationRemoteSelection } from './collaboration.js';
12
- import { F as FieldShadingMode, c as RevisionStyles, f as DrawingPaintStrings, R as ReviewAuthorInfo, b as RevisionAuthorStyle } from './semantic-paint-DfeN6UQF.js';
12
+ import { F as FieldShadingMode, c as RevisionStyles, f as DrawingPaintStrings, R as ReviewAuthorInfo, b as RevisionAuthorStyle } from './semantic-paint-2LBYlQcn.js';
13
13
  import { ReviewModuleContribution, EditorModule } from './contracts/modules.js';
14
- import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-DcE_ZsiD.js';
15
- import { C as CellSelection } from './semantic-cell-selection-CeG_qqDV.js';
16
- import { R as ResolvedFootnoteProperties, a as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-DGPzKUuA.js';
17
- import { B as BookmarkIndex } from './custom-node-writes-BC3z8NwO.js';
18
- import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-DkThhHjy.js';
14
+ import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-LJtUJJS5.js';
15
+ import { C as CellSelection } from './semantic-cell-selection-CaRIISu-.js';
16
+ import { R as ResolvedFootnoteProperties, a as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-BRpskBeh.js';
17
+ import { B as BookmarkIndex } from './custom-node-writes-Cj0itq58.js';
18
+ import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-D3e-5YNq.js';
19
19
  import { a as CollaborationStatus } from './failure-6KGFrDO9.js';
20
20
 
21
21
  /**
@@ -944,6 +944,12 @@ interface DocxEditorInstance extends Editor {
944
944
  * until disposal restores the previous registration.
945
945
  */
946
946
  setRevisionMarkupChrome(handlers: RevisionMarkupChromeHandlers | null, options?: PopupChromeRegistrationOptions): Unsubscribe;
947
+ /**
948
+ * Register Compare documents chrome. Disposal cancels its active sessions. Manual renderers
949
+ * take priority over fallback renderers. Pass null to use the review module's own dialog
950
+ * until disposal restores the previous registration.
951
+ */
952
+ setCompareDocumentsChrome(handlers: CompareDocumentsChromeHandlers | null, options?: PopupChromeRegistrationOptions): Unsubscribe;
947
953
  /** Register Field Options chrome. Disposal closes sessions owned by this registration. */
948
954
  setTextFormFieldChrome(handlers: TextFormFieldChromeHandlers, options?: PopupChromeRegistrationOptions): Unsubscribe;
949
955
  /** Register typed content-control widget chrome. */
@@ -3531,6 +3537,15 @@ declare const CHROME_GROUPS: readonly [{
3531
3537
  readonly state: {
3532
3538
  readonly kind: 'command';
3533
3539
  };
3540
+ }, {
3541
+ readonly id: 'compareDocuments';
3542
+ readonly shape: 'icon';
3543
+ readonly labelKey: 'review.compareDocuments';
3544
+ readonly defaultToolbar: false;
3545
+ readonly paths: readonly string[];
3546
+ readonly state: {
3547
+ readonly kind: 'command';
3548
+ };
3534
3549
  }, {
3535
3550
  readonly id: 'comments';
3536
3551
  readonly shape: 'icon';
@@ -3882,7 +3897,7 @@ type ChromeGroupId = 'history' | 'zoom' | 'styles' | 'font' | 'text' | 'script'
3882
3897
  *
3883
3898
  * @public
3884
3899
  */
3885
- type ChromeSlotId = 'history.undo' | 'history.redo' | 'zoom.level' | 'styles.style' | 'font.family' | 'font.size' | 'text.bold' | 'text.italic' | 'text.underline' | 'text.strike' | 'text.color' | 'text.highlight' | 'text.link' | 'script.super' | 'script.sub' | 'alignment.left' | 'alignment.center' | 'alignment.right' | 'alignment.justify' | 'direction.ltr' | 'direction.rtl' | 'list.bullet' | 'list.numbered' | 'list.outdent' | 'list.indent' | 'list.lineSpacing' | 'format.painter' | 'format.clear' | 'review.revisionMarkup' | 'review.comments' | 'review.addComment' | 'review.paragraphMarks' | 'review.bookmarks' | 'review.protectDocument' | 'review.simpleMarkup' | 'review.allMarkup' | 'review.noMarkup' | 'review.original' | 'review.previousChange' | 'review.nextChange' | 'review.acceptAllChanges' | 'review.rejectAllChanges' | 'review.authors' | 'review.editingMode' | 'contentControl.showAll' | 'contentControl.formFill' | 'contentControl.inspector' | 'contentControl.remove' | 'image.insert' | 'image.properties' | 'image.wrap' | 'image.altText' | 'table.insert' | 'table.borderTarget' | 'table.borderColor' | 'table.borderStyle' | 'table.borderWidth' | 'table.cellFill' | 'table.mergeCells' | 'table.splitCell' | 'file.open' | 'file.save' | 'file.exportMarkdown' | 'file.exportPdf' | 'file.print' | 'paragraph.dialog' | 'file.pageSetup' | 'insert.textBox' | 'insert.footnote' | 'insert.endnote' | 'insert.pageNumber' | 'insert.totalPages' | 'insert.sectionPages' | 'insert.pageXofY' | 'insert.pageBreak' | 'insert.sectionBreakNextPage' | 'insert.sectionBreakContinuous' | 'insert.toc' | 'insert.bookmark' | 'insert.goToBookmark' | 'insert.watermark';
3900
+ type ChromeSlotId = 'history.undo' | 'history.redo' | 'zoom.level' | 'styles.style' | 'font.family' | 'font.size' | 'text.bold' | 'text.italic' | 'text.underline' | 'text.strike' | 'text.color' | 'text.highlight' | 'text.link' | 'script.super' | 'script.sub' | 'alignment.left' | 'alignment.center' | 'alignment.right' | 'alignment.justify' | 'direction.ltr' | 'direction.rtl' | 'list.bullet' | 'list.numbered' | 'list.outdent' | 'list.indent' | 'list.lineSpacing' | 'format.painter' | 'format.clear' | 'review.revisionMarkup' | 'review.comments' | 'review.addComment' | 'review.paragraphMarks' | 'review.bookmarks' | 'review.protectDocument' | 'review.compareDocuments' | 'review.simpleMarkup' | 'review.allMarkup' | 'review.noMarkup' | 'review.original' | 'review.previousChange' | 'review.nextChange' | 'review.acceptAllChanges' | 'review.rejectAllChanges' | 'review.authors' | 'review.editingMode' | 'contentControl.showAll' | 'contentControl.formFill' | 'contentControl.inspector' | 'contentControl.remove' | 'image.insert' | 'image.properties' | 'image.wrap' | 'image.altText' | 'table.insert' | 'table.borderTarget' | 'table.borderColor' | 'table.borderStyle' | 'table.borderWidth' | 'table.cellFill' | 'table.mergeCells' | 'table.splitCell' | 'file.open' | 'file.save' | 'file.exportMarkdown' | 'file.exportPdf' | 'file.print' | 'paragraph.dialog' | 'file.pageSetup' | 'insert.textBox' | 'insert.footnote' | 'insert.endnote' | 'insert.pageNumber' | 'insert.totalPages' | 'insert.sectionPages' | 'insert.pageXofY' | 'insert.pageBreak' | 'insert.sectionBreakNextPage' | 'insert.sectionBreakContinuous' | 'insert.toc' | 'insert.bookmark' | 'insert.goToBookmark' | 'insert.watermark';
3886
3901
  /**
3887
3902
  * Every control id in the chrome, as a literal union. Unique WITHIN a group, not
3888
3903
  * globally (`image.insert` / `table.insert`) — key consumers on {@link ChromeSlotId}.
@@ -4258,6 +4273,25 @@ interface ChromeExportView {
4258
4273
  readonly revisionMarkup: ResolvedRevisionMarkup;
4259
4274
  /** Stable session slots, including gaps left by removed authors. */
4260
4275
  readonly revisionAuthorSlots?: Readonly<Record<string, number>>;
4276
+ /**
4277
+ * Whether the PDF shows comments. Set from the print settings the user chose. Pass it to
4278
+ * `exportPdf` as `comments`. Absent means the converter default, which shows comments.
4279
+ */
4280
+ readonly comments?: boolean;
4281
+ }
4282
+ /**
4283
+ * Settings the user picks before printing. Each omitted setting keeps the editor's current
4284
+ * view: the review display mode, and comments shown.
4285
+ * @public
4286
+ */
4287
+ interface ChromePrintSettings {
4288
+ /** Which markup prints, as on the Review tab. */
4289
+ readonly displayMode?: ReviewDisplayMode;
4290
+ /**
4291
+ * Whether the PDF shows comments. All Markup prints them in a pane beside each page; the
4292
+ * other modes print them as annotations on the commented text.
4293
+ */
4294
+ readonly comments?: boolean;
4261
4295
  }
4262
4296
  /**
4263
4297
  * Conversion handlers for File > Export. Install the corresponding converter package.
@@ -4290,9 +4324,10 @@ declare class ChromeExportError extends Error {
4290
4324
  /**
4291
4325
  * Saves the current document and converts those bytes through the configured handler.
4292
4326
  * Missing handlers fail before saving. Conversion never changes the editor document.
4327
+ * `settings` overrides the captured view for PDF conversion, such as print settings.
4293
4328
  * @public
4294
4329
  */
4295
- declare function runChromeExport(editor: Pick<Editor, 'save'> & Partial<Pick<DocxEditorInstance, 'snapshot' | 'getReviewAuthors'>>, format: ChromeExportFormat, handlers?: ChromeExportHandlers): Promise<ChromeExportResult>;
4330
+ declare function runChromeExport(editor: Pick<Editor, 'save'> & Partial<Pick<DocxEditorInstance, 'snapshot' | 'getReviewAuthors'>>, format: ChromeExportFormat, handlers?: ChromeExportHandlers, settings?: ChromePrintSettings): Promise<ChromeExportResult>;
4296
4331
 
4297
4332
  /** Why the browser could not print the converted PDF. @public */
4298
4333
  type ChromePrintErrorCode = 'pdf-viewer-unavailable' | 'pdf-load-failed' | 'print-refused' | 'print-ended';
@@ -4339,16 +4374,34 @@ interface ChromePrintJob {
4339
4374
  /** Removes the print frame and revokes `url`. Later `print()` calls reject. */
4340
4375
  dispose(): void;
4341
4376
  }
4377
+ /** Print settings with every choice made. @public */
4378
+ type ResolvedChromePrintSettings = Required<ChromePrintSettings>;
4379
+ /**
4380
+ * The display modes a print form offers, in Review menu order, with their label keys.
4381
+ * @public
4382
+ */
4383
+ declare const CHROME_PRINT_DISPLAY_MODES: readonly {
4384
+ readonly mode: ReviewDisplayMode;
4385
+ readonly labelKey: 'review.simpleMarkup' | 'review.allMarkup' | 'review.noMarkup' | 'review.original';
4386
+ }[];
4387
+ /**
4388
+ * The settings a print form starts with: the editor's current display mode, with comments
4389
+ * shown, as the PDF converter does by default. All Markup prints comments in a pane beside
4390
+ * each page. The other modes print them as PDF annotations on the commented text.
4391
+ * @public
4392
+ */
4393
+ declare function initialChromePrintSettings(snapshot: Pick<EditorSnapshot, 'reviewDisplayMode'> | null | undefined): ResolvedChromePrintSettings;
4342
4394
  /**
4343
4395
  * Saves the current document, converts it with the configured PDF handler, and prepares
4344
4396
  * the result for printing. Uses the same handler and checks as File > Export > PDF, so a
4345
4397
  * missing handler rejects with `ChromeExportError` before the document is saved.
4346
4398
  * Saving commits pending form input and can refresh field results with an undo step.
4347
4399
  * `container` receives the hidden print frame. For an editor inside a modal dialog,
4348
- * pass an element inside that dialog.
4400
+ * pass an element inside that dialog. `settings` carries the user's print settings, such
4401
+ * as the display mode and whether comments print. Omitted settings keep the current view.
4349
4402
  * @public
4350
4403
  */
4351
- declare function runChromePrint(editor: Pick<Editor, 'save'> & Partial<Pick<Editor, 'snapshot'>>, handlers?: ChromeExportHandlers, container?: Document | Element): Promise<ChromePrintJob>;
4404
+ declare function runChromePrint(editor: Pick<Editor, 'save'> & Partial<Pick<DocxEditorInstance, 'snapshot' | 'getReviewAuthors'>>, handlers?: ChromeExportHandlers, container?: Document | Element, settings?: ChromePrintSettings): Promise<ChromePrintJob>;
4352
4405
 
4353
- export { bindHistoryGroup as $, CHROME_GROUPS as C, blankDocumentBytes as a0, chromeMenuSlots as a1, commandForSlot as a2, commandForSlotValue as a3, createDocxEditor as a4, createFontSource as a5, customFonts as a6, deferFonts as a7, isChromePrintShortcut as a8, loadFonts as a9, IMAGE_OVERLAY_NUDGE_SHIFT_PT as aA, TABLE_BORDER_STYLE_OPTIONS as aV, TABLE_BORDER_TARGET_OPTIONS as aW, TABLE_BORDER_WIDTH_OPTIONS as aX, TABLE_CHROME_SLOT_IDS as aY, runChromeExport as aa, runChromePrint as ab, runToolbarCommand as ac, toolbarCommandState as ad, CHROME_UNAVAILABLE_KEY as al, DEFAULT_TABLE_CHROME_DRAFT as ar, EMU_PER_POINT as at, IMAGE_OVERLAY_NUDGE_PT as az, applyTableChromePick as b7, canExecuteImageCommand as b8, captureImageMutationPreconditions as b9, runSave as bA, runTableChromeCommand as bB, runTableCommand as bC, selectedDrawingOverlayTargetOf as bD, selectedImageStateOf as bE, surfacePaintScale as bF, tableChromeIconPaths as bG, tableChromeLabelKeyForTarget as bH, tableChromeToolbarState as bI, tableChromeVisible as bJ, tableCommandToolbarState as bK, toolbarCommandStates as bL, chromeControlCount as ba, chromeProbeForSlot as bb, chromeSlotId as bc, chromeSlotIsToggle as bd, commandExecOptions as be, commandForTableChromeSlotValue as bf, computeImageResizeResult as bg, computeMovedImagePosition as bh, computeResizedImageExtentEmu as bi, createImageOverlayScrollPort as bj, cssPixelsToLayoutPoints as bk, defaultChromeGroups as bl, defaultTableLabel as bm, emuToOverlayPoints as bn, equationAtPosition as bo, executeImageCommand as bp, finalizeImageOverlayInteraction as bq, formattingBarChromeGroups as br, isStaleImageInteractionCommit as bs, isTableChromeSlot as bt, layoutPointsToCssPixels as bu, overlayFrameToSheetCssPixels as bv, overlayHostOrigin as bw, pointsToEmu as bx, probeTableChromeCommand as by, resizePreservesAspect as bz, CHROME_MENUS as d, ChromeExportError as e, ChromePrintError as p };
4354
- export type { AttachOptions as A, BlankDocumentOptions as B, DocxEditorConfig as D, EquationActivation as E, EquationChromeHandlers as F, FontLoadFailure as G, FontLoadFailureReason as H, FontMeasurementState as I, FontUrlSource as J, GoToChromeHandlers as K, HistoryGroupBinding as L, HistoryGroupBindingOptions as M, HyperlinkActivation as N, HyperlinkChromeHandlers as O, InvalidTextFormFieldChromeHandlers as P, InvalidTextFormFieldSession as Q, LoadFontsRequest as R, LoadFontsResult as S, LockedControlNavigation as T, PopupChromeRegistrationOptions as U, SurfaceEquation as V, SurfaceHyperlink as W, TableChromeSlotId as X, ToolbarCommandState as Y, ToolbarValueMap as Z, ToolbarValueSlot as _, BookmarkChromeHandlers as a, TableBorderTargetValue as a$, ImageInteractionSession as aB, ImageOverlayScrollPort as aC, ImageResizeHandle as aD, ImageResizeResult as aE, OpeningIndicatorHost as aF, OverlayFrameRect as aG, PaginatedSurfaceState as aH, ParagraphPropertyEdit as aI, RemoteCaretLabelAnchor as aJ, RemoteCaretLabelHost as aK, ReviewWriteIntent as aL, RunTableChromeCommandResult as aM, SectionAnchor as aN, SectionBreakInsertType as aO, SelectedDrawingOverlayTarget as aP, SurfaceIndentAndListOps as aQ, SurfaceInsertImageInput as aR, SurfaceNavigation as aS, SurfaceOverlayCoordinates as aT, SurfaceParagraphFormat as aU, TableBorderStyleOption as aZ, TableBorderTargetOption as a_, PaginatedSurfaceOptions as ae, OpenPaginatedResult as af, PaginatedSurface as ag, TableCommandPlan as ah, SurfaceFormatting as ai, AnchorFrameOrigin as aj, BookmarkMarkOptionsSource as ak, ChromeControl as am, ChromeControlId as an, ChromeControlState as ao, ChromeGroup as ap, ChromeGroupId as aq, DrawingSelectionIntent as as, EditorCommandExecute as au, EquationOps as av, FinalizedImageOverlayInteraction as aw, FormattingBarOptions as ax, HyperlinkOps as ay, BookmarkMarkInfo as b, TableBorderWidthOption as b0, TableChromeDraft as b1, TableChromePick as b2, TextFormFieldChromeHandlers as b3, TextFormFieldDialogSession as b4, TocRemovalRefusal as b5, ToolbarSlotValue as b6, BookmarkMarkOptions as c, ChromeExportFormat as f, ChromeExportHandlers as g, ChromeExportResult as h, ChromeExportView as i, ChromeMenu as j, ChromeMenuEntry as k, ChromeMenuId as l, ChromeMenuItemEntry as m, ChromeMenuSeparatorEntry as n, ChromeMenuSubmenuEntry as o, ChromePrintErrorCode as q, ChromePrintJob as r, ChromePrintOptions as s, ChromeSlotId as t, CommentDraftChromeHandlers as u, ContentControlWidgetChromeHandlers as v, ContentControlWidgetSession as w, CustomFontsOptions as x, CustomFontsResolver as y, DocxEditorInstance as z };
4406
+ export { CHROME_GROUPS as C, TABLE_BORDER_WIDTH_OPTIONS as a$, bindHistoryGroup as a2, blankDocumentBytes as a3, chromeMenuSlots as a4, commandForSlot as a5, commandForSlotValue as a6, createDocxEditor as a7, createFontSource as a8, customFonts as a9, IMAGE_OVERLAY_NUDGE_PT as aD, IMAGE_OVERLAY_NUDGE_SHIFT_PT as aE, TABLE_BORDER_STYLE_OPTIONS as aZ, TABLE_BORDER_TARGET_OPTIONS as a_, deferFonts as aa, initialChromePrintSettings as ab, isChromePrintShortcut as ac, loadFonts as ad, runChromeExport as ae, runChromePrint as af, runToolbarCommand as ag, toolbarCommandState as ah, CHROME_UNAVAILABLE_KEY as ap, DEFAULT_TABLE_CHROME_DRAFT as av, EMU_PER_POINT as ax, TABLE_CHROME_SLOT_IDS as b0, overlayHostOrigin as bA, pointsToEmu as bB, probeTableChromeCommand as bC, resizePreservesAspect as bD, runSave as bE, runTableChromeCommand as bF, runTableCommand as bG, selectedDrawingOverlayTargetOf as bH, selectedImageStateOf as bI, surfacePaintScale as bJ, tableChromeIconPaths as bK, tableChromeLabelKeyForTarget as bL, tableChromeToolbarState as bM, tableChromeVisible as bN, tableCommandToolbarState as bO, toolbarCommandStates as bP, applyTableChromePick as bb, canExecuteImageCommand as bc, captureImageMutationPreconditions as bd, chromeControlCount as be, chromeProbeForSlot as bf, chromeSlotId as bg, chromeSlotIsToggle as bh, commandExecOptions as bi, commandForTableChromeSlotValue as bj, computeImageResizeResult as bk, computeMovedImagePosition as bl, computeResizedImageExtentEmu as bm, createImageOverlayScrollPort as bn, cssPixelsToLayoutPoints as bo, defaultChromeGroups as bp, defaultTableLabel as bq, emuToOverlayPoints as br, equationAtPosition as bs, executeImageCommand as bt, finalizeImageOverlayInteraction as bu, formattingBarChromeGroups as bv, isStaleImageInteractionCommit as bw, isTableChromeSlot as bx, layoutPointsToCssPixels as by, overlayFrameToSheetCssPixels as bz, CHROME_MENUS as d, CHROME_PRINT_DISPLAY_MODES as e, ChromeExportError as f, ChromePrintError as q };
4407
+ export type { ToolbarCommandState as $, AttachOptions as A, BlankDocumentOptions as B, CustomFontsResolver as D, DocxEditorConfig as E, DocxEditorInstance as F, EquationActivation as G, EquationChromeHandlers as H, FontLoadFailure as I, FontLoadFailureReason as J, FontMeasurementState as K, FontUrlSource as L, GoToChromeHandlers as M, HistoryGroupBinding as N, HistoryGroupBindingOptions as O, HyperlinkActivation as P, HyperlinkChromeHandlers as Q, InvalidTextFormFieldChromeHandlers as R, InvalidTextFormFieldSession as S, LoadFontsRequest as T, LoadFontsResult as U, LockedControlNavigation as V, PopupChromeRegistrationOptions as W, ResolvedChromePrintSettings as X, SurfaceEquation as Y, SurfaceHyperlink as Z, TableChromeSlotId as _, BookmarkChromeHandlers as a, ToolbarValueMap as a0, ToolbarValueSlot as a1, FinalizedImageOverlayInteraction as aA, FormattingBarOptions as aB, HyperlinkOps as aC, ImageInteractionSession as aF, ImageOverlayScrollPort as aG, ImageResizeHandle as aH, ImageResizeResult as aI, OpeningIndicatorHost as aJ, OverlayFrameRect as aK, PaginatedSurfaceState as aL, ParagraphPropertyEdit as aM, RemoteCaretLabelAnchor as aN, RemoteCaretLabelHost as aO, ReviewWriteIntent as aP, RunTableChromeCommandResult as aQ, SectionAnchor as aR, SectionBreakInsertType as aS, SelectedDrawingOverlayTarget as aT, SurfaceIndentAndListOps as aU, SurfaceInsertImageInput as aV, SurfaceNavigation as aW, SurfaceOverlayCoordinates as aX, SurfaceParagraphFormat as aY, PaginatedSurfaceOptions as ai, OpenPaginatedResult as aj, PaginatedSurface as ak, TableCommandPlan as al, SurfaceFormatting as am, AnchorFrameOrigin as an, BookmarkMarkOptionsSource as ao, ChromeControl as aq, ChromeControlId as ar, ChromeControlState as as, ChromeGroup as at, ChromeGroupId as au, DrawingSelectionIntent as aw, EditorCommandExecute as ay, EquationOps as az, BookmarkMarkInfo as b, TableBorderStyleOption as b1, TableBorderTargetOption as b2, TableBorderTargetValue as b3, TableBorderWidthOption as b4, TableChromeDraft as b5, TableChromePick as b6, TextFormFieldChromeHandlers as b7, TextFormFieldDialogSession as b8, TocRemovalRefusal as b9, ToolbarSlotValue as ba, BookmarkMarkOptions as c, ChromeExportFormat as g, ChromeExportHandlers as h, ChromeExportResult as i, ChromeExportView as j, ChromeMenu as k, ChromeMenuEntry as l, ChromeMenuId as m, ChromeMenuItemEntry as n, ChromeMenuSeparatorEntry as o, ChromeMenuSubmenuEntry as p, ChromePrintErrorCode as r, ChromePrintJob as s, ChromePrintOptions as t, ChromePrintSettings as u, ChromeSlotId as v, CommentDraftChromeHandlers as w, ContentControlWidgetChromeHandlers as x, ContentControlWidgetSession as y, CustomFontsOptions as z };
@@ -1 +1 @@
1
- 'use strict';var chunkTFJUIP4X_cjs=require('./chunk-TFJUIP4X.cjs');var w=/^[\p{L}\p{N}\p{M} \-.+_,;]{1,64}$/u,j="Cambria";function $(e){return e!==void 0&&e.trim().length>0&&w.test(e)?e:null}function Q(e){if(e===void 0||e.trim().length===0)return null;if(e.length>1024)return j;let n=v(e);return n.length===0?null:w.test(n)?n:n.startsWith("@")||n.startsWith("\uFF20")?n.length<=128?n:null:j}function Z(e){return e===void 0||e.length>1024?null:$(v(e))}function v(e){let n=e.indexOf(",");return (n<0?e:e.slice(0,n)).trim()}function W(e){return e.kind!=="textValue"}function S(e,n){for(let l of e.children)if(W(l)&&l.localName===n)return l}function V(e,n){return e.attributes.find(l=>l.localName===n)?.value}function ne(e){let n=S(e,"pPr"),l=n?S(n,"outlineLvl"):void 0;if(l){let o=V(l,"val");return o!==void 0&&/^[0-8]$/.test(o)?Number(o):null}let t=S(e,"name"),i=t?/^heading\s+([1-9])$/i.exec(V(t,"val")?.trim()??""):null;return i?Number(i[1])-1:null}function R(e,n=0,l=e.length,t){let i=new Set,o=new Map,d=new Map,u=t?[t]:[];t&&i.add(t);for(let s=n;s<l;s+=1){let r=e[s].node;if(chunkTFJUIP4X_cjs.$g(r,"begin")){u.push(r.id);continue}if(chunkTFJUIP4X_cjs.$g(r,"separate")){let a=u[u.length-1];a&&(i.add(a),o.set(r.id,a));continue}if(chunkTFJUIP4X_cjs.$g(r,"end")){let a=u.pop();a&&(i.add(a),d.set(r.id,a));}}return {activeBegins:i,separateBegin:o,endBegin:d}}function b(e,n,l){if(chunkTFJUIP4X_cjs.$g(l,"begin"))return n.activeBegins.has(l.id)&&e.push({beginId:l.id,separated:false}),true;if(chunkTFJUIP4X_cjs.$g(l,"separate")){let t=n.separateBegin.get(l.id),i=e[e.length-1];return t&&i?.beginId===t&&(i.separated=true),true}if(chunkTFJUIP4X_cjs.$g(l,"end")){let t=n.endBegin.get(l.id),i=e[e.length-1];return t&&i?.beginId===t&&e.pop(),true}return false}function g(e){for(let n of e)if(!n.separated)return false;return true}function ie(e,n){let l=[];chunkTFJUIP4X_cjs.lh(e,l,n);let t=R(l),i=[];return {consume:o=>b(i,t,o),visible:()=>g(i)}}function C(e,n){return e==="original"?n.hiddenInOriginal:e==="current"&&n.hiddenInCurrent}var U=4096,H=chunkTFJUIP4X_cjs.mh*16;function k(){return {out:[],runs:[],symbols:[],symbolDisplays:[],length:0}}function X(e,n,l,t){if(n.length===0||l===t)return;let i=e.runs[e.runs.length-1];if(i?.runId===n&&i.end===l){e.runs[e.runs.length-1]={runId:n,start:i.start,end:t};return}e.runs.push({runId:n,start:l,end:t});}function O(e,n,l,t){let i=chunkTFJUIP4X_cjs.kh(n);if(i.length>t.left)return false;if(t.left-=i.length,i.length>0){let o=e.length;chunkTFJUIP4X_cjs.Tb(n)&&(e.symbols.push(o),e.symbolDisplays.push(chunkTFJUIP4X_cjs.Vl(n))),e.out.push(i),e.length+=i.length,X(e,l,o,e.length);}return true}function z(e,n){let l=e.length;n.text.length>0&&e.out.push(n.text),e.length+=n.text.length;for(let t of n.runs)X(e,t.runId,l+t.start,l+t.end);for(let t of n.symbols??[])e.symbols.push(l+t);for(let t of n.symbolDisplays??[])e.symbolDisplays.push(t);}function T(e){let n=e.out.join("");return e.symbols.length>0?{text:n,runs:e.runs,symbols:e.symbols,symbolDisplays:e.symbolDisplays}:{text:n,runs:e.runs}}var G=Object.freeze({text:"",runs:[]});function M(){return {text:chunkTFJUIP4X_cjs.Wg,runs:[]}}function q(e,n,l,t){let i=[];if(!chunkTFJUIP4X_cjs.lh(e,i,l))return null;let o=i.reverse(),d=k();for(;o.length>0;){let u=o.pop();if(!C(n,u)){if(chunkTFJUIP4X_cjs.ch(u.node)){let s=[];if(!chunkTFJUIP4X_cjs.lh(u.node,s,l))return null;for(let r=s.length-1;r>=0;r-=1)o.push(s[r]);continue}if(!chunkTFJUIP4X_cjs.ah(u.node)&&!O(d,u.node,u.runId,t))return null}}return T(d)}function J(e,n,l,t,i){let o=k(),d=[],u=R(e);for(let s of e){let r=s.node;if(!b(d,u,r)&&!chunkTFJUIP4X_cjs.ah(r)&&g(d)&&!C(n,s)){if(chunkTFJUIP4X_cjs.ch(r)){let a=i>=chunkTFJUIP4X_cjs.nh?q(r,n,l,t):Y(r,n,l,t,i+1);if(a===null)return null;z(o,a);continue}if(!O(o,r,s.runId,t))return null}}return T(o)}function Y(e,n,l,t,i){let o=[];return chunkTFJUIP4X_cjs.lh(e,o,l)?J(o,n,l,t,i):null}function K(e,n,l){let t=n.node;return e.owned.has(t.id)&&(e.nodesLeft-=1,e.nodesLeft<0&&(e.overflow=true)),t.id===e.endId?true:(t.id===e.span.node.id||b(e.states,e.markers,t)||e.overflow||chunkTFJUIP4X_cjs.ah(t)||chunkTFJUIP4X_cjs.ch(t)||!e.owned.has(t.id)||!g(e.states)||C(l,n)||O(e.result,t,n.runId,e.chars)||(e.overflow=true),false)}function ae(e,n,l="allMarkup"){let t=new Map,i=new Map,o=new Map;for(let r of n)r.kind==="complex"?i.set(r.node.id,r):o.set(r.node.id,r);let d=[];chunkTFJUIP4X_cjs.lh(e,d);let u=new Map;for(let r=0;r<d.length;r+=1)u.set(d[r].node.id,r);let s=null;for(let r=0;r<d.length;r+=1){let a=d[r],y=o.get(a.node.id);if(y)if(s!==null&&!g(s.states))t.set(y.node.id,G);else {let f={left:U},I={left:H},m=Y(y.node,l,f,I,0);t.set(y.node.id,m??M());}if(s===null){let f=i.get(a.node.id);if(!f)continue;let I=new Set(f.removeNodeIds),m=-1;for(let N=f.removeNodeIds.length-1;N>=0;N-=1){let F=u.get(f.removeNodeIds[N]);if(!(F===void 0||F<=r)&&chunkTFJUIP4X_cjs.$g(d[F].node,"end")){m=F;break}}let E=d[m];if(!E){t.set(f.node.id,M());continue}s={span:f,owned:I,states:[{beginId:f.node.id,separated:false}],markers:R(d,r+1,m,f.node.id),endId:E.node.id,result:k(),chars:{left:H},nodesLeft:U,overflow:false};}K(s,a,l)&&(t.set(s.span.node.id,s.overflow?M():T(s.result)),s=null);}return s!==null&&t.set(s.span.node.id,M()),t}exports.a=$;exports.b=Q;exports.c=Z;exports.d=ie;exports.e=U;exports.f=ae;exports.g=ne;
1
+ 'use strict';var chunkDCILO4XD_cjs=require('./chunk-DCILO4XD.cjs');var w=/^[\p{L}\p{N}\p{M} \-.+_,;]{1,64}$/u,j="Cambria";function $(e){return e!==void 0&&e.trim().length>0&&w.test(e)?e:null}function Q(e){if(e===void 0||e.trim().length===0)return null;if(e.length>1024)return j;let n=v(e);return n.length===0?null:w.test(n)?n:n.startsWith("@")||n.startsWith("\uFF20")?n.length<=128?n:null:j}function Z(e){return e===void 0||e.length>1024?null:$(v(e))}function v(e){let n=e.indexOf(",");return (n<0?e:e.slice(0,n)).trim()}function W(e){return e.kind!=="textValue"}function S(e,n){for(let l of e.children)if(W(l)&&l.localName===n)return l}function V(e,n){return e.attributes.find(l=>l.localName===n)?.value}function ne(e){let n=S(e,"pPr"),l=n?S(n,"outlineLvl"):void 0;if(l){let o=V(l,"val");return o!==void 0&&/^[0-8]$/.test(o)?Number(o):null}let t=S(e,"name"),i=t?/^heading\s+([1-9])$/i.exec(V(t,"val")?.trim()??""):null;return i?Number(i[1])-1:null}function R(e,n=0,l=e.length,t){let i=new Set,o=new Map,d=new Map,u=t?[t]:[];t&&i.add(t);for(let s=n;s<l;s+=1){let r=e[s].node;if(chunkDCILO4XD_cjs.ah(r,"begin")){u.push(r.id);continue}if(chunkDCILO4XD_cjs.ah(r,"separate")){let a=u[u.length-1];a&&(i.add(a),o.set(r.id,a));continue}if(chunkDCILO4XD_cjs.ah(r,"end")){let a=u.pop();a&&(i.add(a),d.set(r.id,a));}}return {activeBegins:i,separateBegin:o,endBegin:d}}function b(e,n,l){if(chunkDCILO4XD_cjs.ah(l,"begin"))return n.activeBegins.has(l.id)&&e.push({beginId:l.id,separated:false}),true;if(chunkDCILO4XD_cjs.ah(l,"separate")){let t=n.separateBegin.get(l.id),i=e[e.length-1];return t&&i?.beginId===t&&(i.separated=true),true}if(chunkDCILO4XD_cjs.ah(l,"end")){let t=n.endBegin.get(l.id),i=e[e.length-1];return t&&i?.beginId===t&&e.pop(),true}return false}function g(e){for(let n of e)if(!n.separated)return false;return true}function ie(e,n){let l=[];chunkDCILO4XD_cjs.mh(e,l,n);let t=R(l),i=[];return {consume:o=>b(i,t,o),visible:()=>g(i)}}function C(e,n){return e==="original"?n.hiddenInOriginal:e==="current"&&n.hiddenInCurrent}var U=4096,H=chunkDCILO4XD_cjs.nh*16;function k(){return {out:[],runs:[],symbols:[],symbolDisplays:[],length:0}}function X(e,n,l,t){if(n.length===0||l===t)return;let i=e.runs[e.runs.length-1];if(i?.runId===n&&i.end===l){e.runs[e.runs.length-1]={runId:n,start:i.start,end:t};return}e.runs.push({runId:n,start:l,end:t});}function O(e,n,l,t){let i=chunkDCILO4XD_cjs.lh(n);if(i.length>t.left)return false;if(t.left-=i.length,i.length>0){let o=e.length;chunkDCILO4XD_cjs.Tb(n)&&(e.symbols.push(o),e.symbolDisplays.push(chunkDCILO4XD_cjs.Yl(n))),e.out.push(i),e.length+=i.length,X(e,l,o,e.length);}return true}function z(e,n){let l=e.length;n.text.length>0&&e.out.push(n.text),e.length+=n.text.length;for(let t of n.runs)X(e,t.runId,l+t.start,l+t.end);for(let t of n.symbols??[])e.symbols.push(l+t);for(let t of n.symbolDisplays??[])e.symbolDisplays.push(t);}function T(e){let n=e.out.join("");return e.symbols.length>0?{text:n,runs:e.runs,symbols:e.symbols,symbolDisplays:e.symbolDisplays}:{text:n,runs:e.runs}}var G=Object.freeze({text:"",runs:[]});function M(){return {text:chunkDCILO4XD_cjs.Xg,runs:[]}}function q(e,n,l,t){let i=[];if(!chunkDCILO4XD_cjs.mh(e,i,l))return null;let o=i.reverse(),d=k();for(;o.length>0;){let u=o.pop();if(!C(n,u)){if(chunkDCILO4XD_cjs.dh(u.node)){let s=[];if(!chunkDCILO4XD_cjs.mh(u.node,s,l))return null;for(let r=s.length-1;r>=0;r-=1)o.push(s[r]);continue}if(!chunkDCILO4XD_cjs.bh(u.node)&&!O(d,u.node,u.runId,t))return null}}return T(d)}function J(e,n,l,t,i){let o=k(),d=[],u=R(e);for(let s of e){let r=s.node;if(!b(d,u,r)&&!chunkDCILO4XD_cjs.bh(r)&&g(d)&&!C(n,s)){if(chunkDCILO4XD_cjs.dh(r)){let a=i>=chunkDCILO4XD_cjs.oh?q(r,n,l,t):Y(r,n,l,t,i+1);if(a===null)return null;z(o,a);continue}if(!O(o,r,s.runId,t))return null}}return T(o)}function Y(e,n,l,t,i){let o=[];return chunkDCILO4XD_cjs.mh(e,o,l)?J(o,n,l,t,i):null}function K(e,n,l){let t=n.node;return e.owned.has(t.id)&&(e.nodesLeft-=1,e.nodesLeft<0&&(e.overflow=true)),t.id===e.endId?true:(t.id===e.span.node.id||b(e.states,e.markers,t)||e.overflow||chunkDCILO4XD_cjs.bh(t)||chunkDCILO4XD_cjs.dh(t)||!e.owned.has(t.id)||!g(e.states)||C(l,n)||O(e.result,t,n.runId,e.chars)||(e.overflow=true),false)}function ae(e,n,l="allMarkup"){let t=new Map,i=new Map,o=new Map;for(let r of n)r.kind==="complex"?i.set(r.node.id,r):o.set(r.node.id,r);let d=[];chunkDCILO4XD_cjs.mh(e,d);let u=new Map;for(let r=0;r<d.length;r+=1)u.set(d[r].node.id,r);let s=null;for(let r=0;r<d.length;r+=1){let a=d[r],y=o.get(a.node.id);if(y)if(s!==null&&!g(s.states))t.set(y.node.id,G);else {let f={left:U},I={left:H},m=Y(y.node,l,f,I,0);t.set(y.node.id,m??M());}if(s===null){let f=i.get(a.node.id);if(!f)continue;let I=new Set(f.removeNodeIds),m=-1;for(let N=f.removeNodeIds.length-1;N>=0;N-=1){let F=u.get(f.removeNodeIds[N]);if(!(F===void 0||F<=r)&&chunkDCILO4XD_cjs.ah(d[F].node,"end")){m=F;break}}let E=d[m];if(!E){t.set(f.node.id,M());continue}s={span:f,owned:I,states:[{beginId:f.node.id,separated:false}],markers:R(d,r+1,m,f.node.id),endId:E.node.id,result:k(),chars:{left:H},nodesLeft:U,overflow:false};}K(s,a,l)&&(t.set(s.span.node.id,s.overflow?M():T(s.result)),s=null);}return s!==null&&t.set(s.span.node.id,M()),t}exports.a=$;exports.b=Q;exports.c=Z;exports.d=ie;exports.e=U;exports.f=ae;exports.g=ne;
@@ -0,0 +1 @@
1
+ 'use strict';var c=Object.freeze({review:null,collaboration:null,customNodes:Object.freeze([]),customNodePayloadNamespaces:Object.freeze([]),customNodeDiagnostics:Object.freeze([]),diagnosticListeners:Object.freeze([]),wantsDiagnostic:()=>false});function m(o){if(!o||o.length===0)return c;let n=null,t=null,r=[],a=new Set,s=[],d=[],l=[];for(let e of o){e.review&&n===null&&(n=e.review),e.collaboration&&t===null&&(t=e.collaboration),e.customNodes&&r.push(...e.customNodes);for(let i of e.customNodePayloadNamespaces??[])a.add(i);e.onCustomNodeDiagnostic&&s.push(e.onCustomNodeDiagnostic),e.onDiagnostic&&(d.push(e.onDiagnostic),l.push(e.wantsDiagnostic??(()=>true)));}return {review:n,collaboration:t,customNodes:r,customNodePayloadNamespaces:[...a],customNodeDiagnostics:s,diagnosticListeners:d,wantsDiagnostic:e=>l.some(i=>{try{return i(e)===!0}catch{return false}})}}exports.a=m;