@beyondwork/docx-react-component 1.0.134 → 1.0.135

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 (83) hide show
  1. package/dist/api/public-types.cjs +20 -2
  2. package/dist/api/public-types.d.cts +1 -1
  3. package/dist/api/public-types.d.ts +1 -1
  4. package/dist/api/public-types.js +2 -2
  5. package/dist/api/v3.cjs +20 -2
  6. package/dist/api/v3.d.cts +2 -2
  7. package/dist/api/v3.d.ts +2 -2
  8. package/dist/api/v3.js +4 -4
  9. package/dist/{chunk-REFHJ2FN.js → chunk-2BNXARVO.js} +3 -3
  10. package/dist/{chunk-INLRCC4N.js → chunk-4CIHTMCH.js} +2 -2
  11. package/dist/{chunk-IJD6D7HU.js → chunk-5CCYF333.js} +2 -2
  12. package/dist/{chunk-MQ5GAJ54.js → chunk-BJXSMPHD.js} +1 -1
  13. package/dist/{chunk-ESEEWELA.js → chunk-EPFVMUKF.js} +3 -3
  14. package/dist/{chunk-XBQFDBXE.js → chunk-EZFF6GKF.js} +9 -2
  15. package/dist/{chunk-3YR47WTD.js → chunk-FGJTOFZY.js} +21 -9
  16. package/dist/{chunk-EBSI6VQX.js → chunk-GIFXKIM5.js} +181 -44
  17. package/dist/{chunk-74R5B2EZ.js → chunk-H4HI6RUE.js} +1 -1
  18. package/dist/{chunk-7Y6JCIK3.js → chunk-HWMPNLEF.js} +1 -1
  19. package/dist/{chunk-VA24T4EB.js → chunk-NEMOQ4QR.js} +1 -1
  20. package/dist/{chunk-O4EDZR44.js → chunk-P7XDEVS6.js} +12 -1
  21. package/dist/{chunk-QTRJLKR2.js → chunk-TSNK4ECL.js} +1 -1
  22. package/dist/{chunk-WDDFU2N2.js → chunk-UR2LW63N.js} +1 -1
  23. package/dist/core/commands/formatting-commands.d.cts +1 -1
  24. package/dist/core/commands/formatting-commands.d.ts +1 -1
  25. package/dist/core/commands/image-commands.cjs +9 -2
  26. package/dist/core/commands/image-commands.d.cts +1 -1
  27. package/dist/core/commands/image-commands.d.ts +1 -1
  28. package/dist/core/commands/image-commands.js +4 -4
  29. package/dist/core/commands/section-layout-commands.d.cts +1 -1
  30. package/dist/core/commands/section-layout-commands.d.ts +1 -1
  31. package/dist/core/commands/style-commands.d.cts +1 -1
  32. package/dist/core/commands/style-commands.d.ts +1 -1
  33. package/dist/core/commands/table-structure-commands.cjs +9 -2
  34. package/dist/core/commands/table-structure-commands.d.cts +1 -1
  35. package/dist/core/commands/table-structure-commands.d.ts +1 -1
  36. package/dist/core/commands/table-structure-commands.js +3 -3
  37. package/dist/core/commands/text-commands.cjs +9 -2
  38. package/dist/core/commands/text-commands.d.cts +1 -1
  39. package/dist/core/commands/text-commands.d.ts +1 -1
  40. package/dist/core/commands/text-commands.js +4 -4
  41. package/dist/core/selection/mapping.d.cts +1 -1
  42. package/dist/core/selection/mapping.d.ts +1 -1
  43. package/dist/core/state/editor-state.d.cts +1 -1
  44. package/dist/core/state/editor-state.d.ts +1 -1
  45. package/dist/index.cjs +212 -44
  46. package/dist/index.d.cts +4 -4
  47. package/dist/index.d.ts +4 -4
  48. package/dist/index.js +15 -14
  49. package/dist/io/docx-session.d.cts +3 -3
  50. package/dist/io/docx-session.d.ts +3 -3
  51. package/dist/{loader-CK3lZy4h.d.cts → loader-BQ7AB-0v.d.cts} +2 -2
  52. package/dist/{loader-CQXplstv.d.ts → loader-Cy6OYBfn.d.ts} +2 -2
  53. package/dist/{public-types-BR1SYK2F.d.cts → public-types-D31xKNGc.d.cts} +6 -0
  54. package/dist/{public-types-DXNZVKrS.d.ts → public-types-DqYt8GdP.d.ts} +6 -0
  55. package/dist/public-types.cjs +20 -2
  56. package/dist/public-types.d.cts +1 -1
  57. package/dist/public-types.d.ts +1 -1
  58. package/dist/public-types.js +2 -2
  59. package/dist/runtime/collab.d.cts +2 -2
  60. package/dist/runtime/collab.d.ts +2 -2
  61. package/dist/runtime/document-runtime.cjs +192 -37
  62. package/dist/runtime/document-runtime.d.cts +1 -1
  63. package/dist/runtime/document-runtime.d.ts +1 -1
  64. package/dist/runtime/document-runtime.js +10 -10
  65. package/dist/{session-CSbwkgII.d.cts → session-DA-F2fCw.d.cts} +2 -2
  66. package/dist/{session-C9UjrhJF.d.ts → session-DqL8H0oZ.d.ts} +2 -2
  67. package/dist/session.d.cts +4 -4
  68. package/dist/session.d.ts +4 -4
  69. package/dist/tailwind.cjs +27 -8
  70. package/dist/tailwind.d.cts +1 -1
  71. package/dist/tailwind.d.ts +1 -1
  72. package/dist/tailwind.js +5 -5
  73. package/dist/{types-CZtAueri.d.cts → types-B2y94n5t.d.cts} +1 -1
  74. package/dist/{types-RzkCXDNV.d.ts → types-SllbCtGs.d.ts} +1 -1
  75. package/dist/ui-tailwind/editor-surface/search-plugin.cjs +11 -0
  76. package/dist/ui-tailwind/editor-surface/search-plugin.d.cts +2 -2
  77. package/dist/ui-tailwind/editor-surface/search-plugin.d.ts +2 -2
  78. package/dist/ui-tailwind/editor-surface/search-plugin.js +3 -3
  79. package/dist/ui-tailwind.cjs +27 -8
  80. package/dist/ui-tailwind.d.cts +2 -2
  81. package/dist/ui-tailwind.d.ts +2 -2
  82. package/dist/ui-tailwind.js +5 -5
  83. package/package.json +1 -1
@@ -5,9 +5,9 @@ import {
5
5
  removeCellFromRow,
6
6
  removeTableRowPure,
7
7
  tableStructureActionHandleForTarget
8
- } from "../../chunk-WDDFU2N2.js";
9
- import "../../chunk-QTRJLKR2.js";
10
- import "../../chunk-XBQFDBXE.js";
8
+ } from "../../chunk-UR2LW63N.js";
9
+ import "../../chunk-TSNK4ECL.js";
10
+ import "../../chunk-EZFF6GKF.js";
11
11
  import "../../chunk-OYGMRRR7.js";
12
12
  import "../../chunk-5KTJKTNE.js";
13
13
  import "../../chunk-UFVDIR2C.js";
@@ -5390,10 +5390,16 @@ var FormattingContextImpl = class {
5390
5390
  // surface-projection calls `resolveParagraphCascade` on the same
5391
5391
  // paragraph via `resolveParagraph` + numbering resolve + marker-rPr;
5392
5392
  // each of those re-walked the style catalog before.
5393
- paragraphCascadeCache = /* @__PURE__ */ new WeakMap();
5393
+ //
5394
+ // Defaults to a per-context instance, but the runtime can supply a
5395
+ // persistent `WeakMap` via `FormattingContextOptions.paragraphCascadeCache`
5396
+ // so unchanged paragraphs don't re-cascade on every keystroke. See the
5397
+ // contract on the option for invalidation semantics.
5398
+ paragraphCascadeCache;
5394
5399
  constructor(doc, opts) {
5395
5400
  this.doc = doc;
5396
5401
  this.opts = opts;
5402
+ this.paragraphCascadeCache = opts.paragraphCascadeCache ?? /* @__PURE__ */ new WeakMap();
5397
5403
  const canonicalTheme = doc.subParts?.canonicalTheme;
5398
5404
  this.theme = opts.themeResolver ?? (canonicalTheme ? new ThemeColorResolver(canonicalTheme) : void 0);
5399
5405
  this.numbering = opts.numberingPrefixResolver ?? createNumberingPrefixResolver(doc.numbering);
@@ -5878,7 +5884,8 @@ function createEditorSurfaceSnapshot(document, _selection, activeStory = { kind:
5878
5884
  const formattingContext = createFormattingContext(document, {
5879
5885
  ...options.revisionMarkupMode ? { revisionMarkupMode: options.revisionMarkupMode } : {},
5880
5886
  ...options.getEffectiveMarkupMode ? { getEffectiveMarkupMode: options.getEffectiveMarkupMode } : {},
5881
- ...options.authorColorPalette ? { authorColorPalette: options.authorColorPalette } : {}
5887
+ ...options.authorColorPalette ? { authorColorPalette: options.authorColorPalette } : {},
5888
+ ...options.paragraphCascadeCache ? { paragraphCascadeCache: options.paragraphCascadeCache } : {}
5882
5889
  });
5883
5890
  const editableTargetsByBlockPath = options.editableTargetsByBlockPath ?? indexEditableTargetsByBlockPath(document);
5884
5891
  const layoutIdentitiesByBlockPath = options.layoutIdentitiesByBlockPath;
@@ -1,4 +1,4 @@
1
- import { T as TextTransactionTextTarget, d as EditorSurfaceSnapshot, S as ScopeSurfaceTelemetry, C as CanonicalDocumentEnvelope, e as SelectionSnapshot, f as TextTransactionResult, g as StructuralMutationResult, I as InsertTableOptions, h as TextFormattingDirective, i as TransactionMapping } from '../../public-types-BR1SYK2F.cjs';
1
+ import { T as TextTransactionTextTarget, d as EditorSurfaceSnapshot, S as ScopeSurfaceTelemetry, C as CanonicalDocumentEnvelope, e as SelectionSnapshot, f as TextTransactionResult, g as StructuralMutationResult, I as InsertTableOptions, h as TextFormattingDirective, i as TransactionMapping } from '../../public-types-D31xKNGc.cjs';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
@@ -1,4 +1,4 @@
1
- import { T as TextTransactionTextTarget, d as EditorSurfaceSnapshot, S as ScopeSurfaceTelemetry, C as CanonicalDocumentEnvelope, e as SelectionSnapshot, f as TextTransactionResult, g as StructuralMutationResult, I as InsertTableOptions, h as TextFormattingDirective, i as TransactionMapping } from '../../public-types-DXNZVKrS.js';
1
+ import { T as TextTransactionTextTarget, d as EditorSurfaceSnapshot, S as ScopeSurfaceTelemetry, C as CanonicalDocumentEnvelope, e as SelectionSnapshot, f as TextTransactionResult, g as StructuralMutationResult, I as InsertTableOptions, h as TextFormattingDirective, i as TransactionMapping } from '../../public-types-DqYt8GdP.js';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
@@ -8,12 +8,12 @@ import {
8
8
  insertText,
9
9
  outdentParagraphAtSelection,
10
10
  splitParagraph
11
- } from "../../chunk-REFHJ2FN.js";
11
+ } from "../../chunk-2BNXARVO.js";
12
12
  import "../../chunk-Y4XZCMCS.js";
13
- import "../../chunk-MQ5GAJ54.js";
14
- import "../../chunk-QTRJLKR2.js";
13
+ import "../../chunk-BJXSMPHD.js";
14
+ import "../../chunk-TSNK4ECL.js";
15
15
  import "../../chunk-QIO6V46H.js";
16
- import "../../chunk-XBQFDBXE.js";
16
+ import "../../chunk-EZFF6GKF.js";
17
17
  import "../../chunk-OYGMRRR7.js";
18
18
  import "../../chunk-5KTJKTNE.js";
19
19
  import "../../chunk-UFVDIR2C.js";
@@ -1,4 +1,4 @@
1
- export { fq as Assoc, fr as BoundaryAssoc, fs as DEFAULT_BOUNDARY_ASSOC, ft as DetachedAnchor, fu as DocRange, b7 as EditorAnchorProjection, fv as InternalEditorAnchorProjection, fw as MAIN_STORY_TARGET, fx as MappingResult, fy as MappingStep, fz as NodeAnchor, fA as Position, fB as RangeAnchor, i as TransactionMapping, fC as anchorUnaffectedByMapping, fD as areAnchorsEqual, fE as createDetachedAnchor, fF as createEmptyMapping, fG as createNodeAnchor, fH as createRangeAnchor, fI as getEffectiveRange, fJ as mapAnchor, fK as mapPosition, fL as mapRange, fM as normalizeRange, fN as storyTargetsEqual } from '../../public-types-BR1SYK2F.cjs';
1
+ export { fq as Assoc, fr as BoundaryAssoc, fs as DEFAULT_BOUNDARY_ASSOC, ft as DetachedAnchor, fu as DocRange, b7 as EditorAnchorProjection, fv as InternalEditorAnchorProjection, fw as MAIN_STORY_TARGET, fx as MappingResult, fy as MappingStep, fz as NodeAnchor, fA as Position, fB as RangeAnchor, i as TransactionMapping, fC as anchorUnaffectedByMapping, fD as areAnchorsEqual, fE as createDetachedAnchor, fF as createEmptyMapping, fG as createNodeAnchor, fH as createRangeAnchor, fI as getEffectiveRange, fJ as mapAnchor, fK as mapPosition, fL as mapRange, fM as normalizeRange, fN as storyTargetsEqual } from '../../public-types-D31xKNGc.cjs';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
@@ -1,4 +1,4 @@
1
- export { fq as Assoc, fr as BoundaryAssoc, fs as DEFAULT_BOUNDARY_ASSOC, ft as DetachedAnchor, fu as DocRange, b7 as EditorAnchorProjection, fv as InternalEditorAnchorProjection, fw as MAIN_STORY_TARGET, fx as MappingResult, fy as MappingStep, fz as NodeAnchor, fA as Position, fB as RangeAnchor, i as TransactionMapping, fC as anchorUnaffectedByMapping, fD as areAnchorsEqual, fE as createDetachedAnchor, fF as createEmptyMapping, fG as createNodeAnchor, fH as createRangeAnchor, fI as getEffectiveRange, fJ as mapAnchor, fK as mapPosition, fL as mapRange, fM as normalizeRange, fN as storyTargetsEqual } from '../../public-types-DXNZVKrS.js';
1
+ export { fq as Assoc, fr as BoundaryAssoc, fs as DEFAULT_BOUNDARY_ASSOC, ft as DetachedAnchor, fu as DocRange, b7 as EditorAnchorProjection, fv as InternalEditorAnchorProjection, fw as MAIN_STORY_TARGET, fx as MappingResult, fy as MappingStep, fz as NodeAnchor, fA as Position, fB as RangeAnchor, i as TransactionMapping, fC as anchorUnaffectedByMapping, fD as areAnchorsEqual, fE as createDetachedAnchor, fF as createEmptyMapping, fG as createNodeAnchor, fH as createRangeAnchor, fI as getEffectiveRange, fJ as mapAnchor, fK as mapPosition, fL as mapRange, fM as normalizeRange, fN as storyTargetsEqual } from '../../public-types-DqYt8GdP.js';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
@@ -1,4 +1,4 @@
1
- export { C as CanonicalDocumentEnvelope, fO as CommandStateSnapshot, fP as CommentEntryRecord, fQ as CommentResolutionRecord, fR as CommentSidebarSnapshot, fS as CommentThreadRecord, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, fT as CompatibilityPanelSnapshot, r as CompatibilityReport, fU as CreateEditorStateOptions, fV as DocumentStats, t as EditorError, cu as EditorErrorCode, fW as EditorRuntimeState, fX as EditorState, cJ as EditorWarning, cK as EditorWarningCode, fY as PersistedEditorSnapshot, fZ as ReviewStore, f_ as RevisionMetadataRecord, f$ as RevisionRecord, g0 as RuntimePhase, g1 as RuntimeRenderSnapshot, e as SelectionSnapshot, g2 as TrackedChangesSnapshot, g3 as createDefaultCanonicalDocument, g4 as createEditorState, g5 as createEmptyCompatibilityReport, g6 as createEmptyReviewStore, g7 as createPersistedEditorSnapshot, g8 as createSelectionSnapshot, g9 as deriveDocumentStats, ga as deriveRenderSnapshot, gb as normalizeCommentThreadRecord } from '../../public-types-BR1SYK2F.cjs';
1
+ export { C as CanonicalDocumentEnvelope, fO as CommandStateSnapshot, fP as CommentEntryRecord, fQ as CommentResolutionRecord, fR as CommentSidebarSnapshot, fS as CommentThreadRecord, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, fT as CompatibilityPanelSnapshot, r as CompatibilityReport, fU as CreateEditorStateOptions, fV as DocumentStats, t as EditorError, cu as EditorErrorCode, fW as EditorRuntimeState, fX as EditorState, cJ as EditorWarning, cK as EditorWarningCode, fY as PersistedEditorSnapshot, fZ as ReviewStore, f_ as RevisionMetadataRecord, f$ as RevisionRecord, g0 as RuntimePhase, g1 as RuntimeRenderSnapshot, e as SelectionSnapshot, g2 as TrackedChangesSnapshot, g3 as createDefaultCanonicalDocument, g4 as createEditorState, g5 as createEmptyCompatibilityReport, g6 as createEmptyReviewStore, g7 as createPersistedEditorSnapshot, g8 as createSelectionSnapshot, g9 as deriveDocumentStats, ga as deriveRenderSnapshot, gb as normalizeCommentThreadRecord } from '../../public-types-D31xKNGc.cjs';
2
2
  export { o as createCanonicalDocumentId } from '../../canonical-document-CfZIc-fC.cjs';
3
3
  import 'react';
4
4
  import 'yjs';
@@ -1,4 +1,4 @@
1
- export { C as CanonicalDocumentEnvelope, fO as CommandStateSnapshot, fP as CommentEntryRecord, fQ as CommentResolutionRecord, fR as CommentSidebarSnapshot, fS as CommentThreadRecord, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, fT as CompatibilityPanelSnapshot, r as CompatibilityReport, fU as CreateEditorStateOptions, fV as DocumentStats, t as EditorError, cu as EditorErrorCode, fW as EditorRuntimeState, fX as EditorState, cJ as EditorWarning, cK as EditorWarningCode, fY as PersistedEditorSnapshot, fZ as ReviewStore, f_ as RevisionMetadataRecord, f$ as RevisionRecord, g0 as RuntimePhase, g1 as RuntimeRenderSnapshot, e as SelectionSnapshot, g2 as TrackedChangesSnapshot, g3 as createDefaultCanonicalDocument, g4 as createEditorState, g5 as createEmptyCompatibilityReport, g6 as createEmptyReviewStore, g7 as createPersistedEditorSnapshot, g8 as createSelectionSnapshot, g9 as deriveDocumentStats, ga as deriveRenderSnapshot, gb as normalizeCommentThreadRecord } from '../../public-types-DXNZVKrS.js';
1
+ export { C as CanonicalDocumentEnvelope, fO as CommandStateSnapshot, fP as CommentEntryRecord, fQ as CommentResolutionRecord, fR as CommentSidebarSnapshot, fS as CommentThreadRecord, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, fT as CompatibilityPanelSnapshot, r as CompatibilityReport, fU as CreateEditorStateOptions, fV as DocumentStats, t as EditorError, cu as EditorErrorCode, fW as EditorRuntimeState, fX as EditorState, cJ as EditorWarning, cK as EditorWarningCode, fY as PersistedEditorSnapshot, fZ as ReviewStore, f_ as RevisionMetadataRecord, f$ as RevisionRecord, g0 as RuntimePhase, g1 as RuntimeRenderSnapshot, e as SelectionSnapshot, g2 as TrackedChangesSnapshot, g3 as createDefaultCanonicalDocument, g4 as createEditorState, g5 as createEmptyCompatibilityReport, g6 as createEmptyReviewStore, g7 as createPersistedEditorSnapshot, g8 as createSelectionSnapshot, g9 as deriveDocumentStats, ga as deriveRenderSnapshot, gb as normalizeCommentThreadRecord } from '../../public-types-DqYt8GdP.js';
2
2
  export { o as createCanonicalDocumentId } from '../../canonical-document-CfZIc-fC.js';
3
3
  import 'react';
4
4
  import 'yjs';
package/dist/index.cjs CHANGED
@@ -12983,10 +12983,16 @@ var FormattingContextImpl = class {
12983
12983
  // surface-projection calls `resolveParagraphCascade` on the same
12984
12984
  // paragraph via `resolveParagraph` + numbering resolve + marker-rPr;
12985
12985
  // each of those re-walked the style catalog before.
12986
- paragraphCascadeCache = /* @__PURE__ */ new WeakMap();
12986
+ //
12987
+ // Defaults to a per-context instance, but the runtime can supply a
12988
+ // persistent `WeakMap` via `FormattingContextOptions.paragraphCascadeCache`
12989
+ // so unchanged paragraphs don't re-cascade on every keystroke. See the
12990
+ // contract on the option for invalidation semantics.
12991
+ paragraphCascadeCache;
12987
12992
  constructor(doc, opts) {
12988
12993
  this.doc = doc;
12989
12994
  this.opts = opts;
12995
+ this.paragraphCascadeCache = opts.paragraphCascadeCache ?? /* @__PURE__ */ new WeakMap();
12990
12996
  const canonicalTheme = doc.subParts?.canonicalTheme;
12991
12997
  this.theme = opts.themeResolver ?? (canonicalTheme ? new ThemeColorResolver(canonicalTheme) : void 0);
12992
12998
  this.numbering = opts.numberingPrefixResolver ?? createNumberingPrefixResolver(doc.numbering);
@@ -13552,7 +13558,8 @@ function createEditorSurfaceSnapshot(document2, _selection, activeStory = { kind
13552
13558
  const formattingContext = createFormattingContext(document2, {
13553
13559
  ...options.revisionMarkupMode ? { revisionMarkupMode: options.revisionMarkupMode } : {},
13554
13560
  ...options.getEffectiveMarkupMode ? { getEffectiveMarkupMode: options.getEffectiveMarkupMode } : {},
13555
- ...options.authorColorPalette ? { authorColorPalette: options.authorColorPalette } : {}
13561
+ ...options.authorColorPalette ? { authorColorPalette: options.authorColorPalette } : {},
13562
+ ...options.paragraphCascadeCache ? { paragraphCascadeCache: options.paragraphCascadeCache } : {}
13556
13563
  });
13557
13564
  const editableTargetsByBlockPath = options.editableTargetsByBlockPath ?? indexEditableTargetsByBlockPath(document2);
13558
13565
  const layoutIdentitiesByBlockPath = options.layoutIdentitiesByBlockPath;
@@ -22575,6 +22582,8 @@ function buildSearchPattern(query, options = {}) {
22575
22582
  function findSearchMatches(text, query, options = {}) {
22576
22583
  const pattern = buildSearchPattern(query, options);
22577
22584
  if (!pattern) return [];
22585
+ const limit = normalizeSearchLimit(options.limit);
22586
+ if (limit === 0) return [];
22578
22587
  const results = [];
22579
22588
  let match;
22580
22589
  pattern.lastIndex = 0;
@@ -22585,12 +22594,21 @@ function findSearchMatches(text, query, options = {}) {
22585
22594
  text: match[0],
22586
22595
  index: results.length
22587
22596
  });
22597
+ if (results.length >= limit) {
22598
+ break;
22599
+ }
22588
22600
  if (match[0].length === 0) {
22589
22601
  pattern.lastIndex += 1;
22590
22602
  }
22591
22603
  }
22592
22604
  return results;
22593
22605
  }
22606
+ function normalizeSearchLimit(limit) {
22607
+ if (limit === void 0 || !Number.isFinite(limit)) {
22608
+ return Number.POSITIVE_INFINITY;
22609
+ }
22610
+ return Math.max(0, Math.floor(limit));
22611
+ }
22594
22612
  function createSearchExcerpt(text, from, to, radius = 24) {
22595
22613
  const safeFrom = Math.max(0, Math.min(from, text.length));
22596
22614
  const safeTo = Math.max(safeFrom, Math.min(to, text.length));
@@ -70555,6 +70573,36 @@ function createDocumentRuntime(options) {
70555
70573
  let viewportBlockRanges = null;
70556
70574
  let viewportRangesKey = serializeViewportRanges(viewportBlockRanges);
70557
70575
  let viewportBlocksPerPageEstimate = null;
70576
+ let fullSurfaceWarmupScheduled = false;
70577
+ let fullSurfaceWarmupCompleted = false;
70578
+ function scheduleFullSurfaceWarmupAfterCull() {
70579
+ if (fullSurfaceWarmupScheduled || fullSurfaceWarmupCompleted) return;
70580
+ fullSurfaceWarmupScheduled = true;
70581
+ perfCounters.increment("surface.fullSurfaceWarmup.scheduled");
70582
+ runOnIdle(() => {
70583
+ fullSurfaceWarmupScheduled = false;
70584
+ if (cachedFullSurface) {
70585
+ perfCounters.increment("surface.fullSurfaceWarmup.alreadyCached");
70586
+ fullSurfaceWarmupCompleted = true;
70587
+ return;
70588
+ }
70589
+ const t0 = performance.now();
70590
+ try {
70591
+ getCachedFullSurface(state.document, activeStory);
70592
+ fullSurfaceWarmupCompleted = true;
70593
+ perfCounters.increment("surface.fullSurfaceWarmup.committed");
70594
+ } catch (error) {
70595
+ perfCounters.increment("surface.fullSurfaceWarmup.failed");
70596
+ fullSurfaceWarmupCompleted = false;
70597
+ void error;
70598
+ } finally {
70599
+ perfCounters.increment(
70600
+ "surface.fullSurfaceWarmup.us",
70601
+ Math.round((performance.now() - t0) * 1e3)
70602
+ );
70603
+ }
70604
+ });
70605
+ }
70558
70606
  const getRuntimeForLayoutFacet = () => {
70559
70607
  if (!runtimeRef) {
70560
70608
  throw new Error("Document runtime viewport methods are not initialized");
@@ -70747,6 +70795,15 @@ function createDocumentRuntime(options) {
70747
70795
  let cachedSurface;
70748
70796
  let cachedFullSurface;
70749
70797
  const editableTargetBlockCache = createEditableTargetBlockCache();
70798
+ let paragraphCascadeCache = /* @__PURE__ */ new WeakMap();
70799
+ let paragraphCascadeCacheStylesRef = null;
70800
+ function ensureParagraphCascadeCacheForStyles(nextStyles) {
70801
+ if (paragraphCascadeCacheStylesRef !== nextStyles) {
70802
+ paragraphCascadeCache = /* @__PURE__ */ new WeakMap();
70803
+ paragraphCascadeCacheStylesRef = nextStyles;
70804
+ }
70805
+ return paragraphCascadeCache;
70806
+ }
70750
70807
  let cachedEditableTargetMap = null;
70751
70808
  function getEditableTargetsByBlockPath(document2) {
70752
70809
  if (cachedEditableTargetMap !== null && cachedEditableTargetMap.document === document2) {
@@ -70800,6 +70857,7 @@ function createDocumentRuntime(options) {
70800
70857
  const snapshot = createEditorSurfaceSnapshot(document2, state.selection, nextActiveStory, {
70801
70858
  viewportBlockRanges: null,
70802
70859
  editableTargetsByBlockPath: getEditableTargetsByBlockPath(document2),
70860
+ paragraphCascadeCache: ensureParagraphCascadeCacheForStyles(document2.styles),
70803
70861
  ...effectiveMarkupModeProvider ? { getEffectiveMarkupMode: effectiveMarkupModeProvider } : {}
70804
70862
  });
70805
70863
  recordPerfSample("snapshot.surface");
@@ -70840,6 +70898,7 @@ function createDocumentRuntime(options) {
70840
70898
  activeStoryKey,
70841
70899
  surfaceViewportRanges
70842
70900
  ),
70901
+ paragraphCascadeCache: ensureParagraphCascadeCacheForStyles(document2.styles),
70843
70902
  ...effectiveMarkupModeProvider ? { getEffectiveMarkupMode: effectiveMarkupModeProvider } : {}
70844
70903
  });
70845
70904
  recordPerfSample("snapshot.surface");
@@ -71051,7 +71110,17 @@ function createDocumentRuntime(options) {
71051
71110
  }
71052
71111
  }
71053
71112
  function tryPatchNestedLocalTextSurface(previousSurface, editFrom, editTo, insertedText) {
71054
- const shiftBudget = estimateLocalTextPatchShiftBudget(previousSurface.blocks, 0);
71113
+ const containerIndex = previousSurface.blocks.findIndex(
71114
+ (block) => editFrom >= block.from && editTo <= block.to
71115
+ );
71116
+ if (containerIndex < 0) {
71117
+ perfCounters.increment("surface.localText.patchMiss");
71118
+ return null;
71119
+ }
71120
+ const shiftBudget = estimateLocalTextPatchShiftBudget(
71121
+ previousSurface.blocks,
71122
+ containerIndex + 1
71123
+ );
71055
71124
  perfCounters.increment("surface.localText.shiftedBlocks", shiftBudget.shiftedBlocks);
71056
71125
  perfCounters.increment("surface.localText.shiftedNodes", shiftBudget.shiftedNodes);
71057
71126
  if (!shiftBudget.withinBudget) {
@@ -71131,19 +71200,9 @@ function createDocumentRuntime(options) {
71131
71200
  for (let index = startIndex; index < blocks.length; index += 1) {
71132
71201
  const shiftedBlockNodes = countSurfaceShiftNodesUpTo(
71133
71202
  blocks[index],
71134
- Math.min(
71135
- policy.maxShiftedNodesPerBlock,
71136
- policy.maxShiftedSurfaceNodes - shiftedNodes
71137
- ) + 1
71203
+ policy.maxShiftedSurfaceNodes - shiftedNodes + 1
71138
71204
  );
71139
71205
  shiftedNodes += shiftedBlockNodes;
71140
- if (shiftedBlockNodes > policy.maxShiftedNodesPerBlock) {
71141
- return {
71142
- shiftedBlocks,
71143
- shiftedNodes,
71144
- withinBudget: false
71145
- };
71146
- }
71147
71206
  if (shiftedNodes > policy.maxShiftedSurfaceNodes) {
71148
71207
  return {
71149
71208
  shiftedBlocks,
@@ -71815,6 +71874,9 @@ function createDocumentRuntime(options) {
71815
71874
  viewportBlockRangesOverride: firstSurfaceViewportBlockRanges
71816
71875
  }) : getCachedSurface(state.document, activeStory)
71817
71876
  );
71877
+ if (firstSurfaceViewportBlockRanges) {
71878
+ scheduleFullSurfaceWarmupAfterCull();
71879
+ }
71818
71880
  const snapshot = {
71819
71881
  documentId: state.documentId,
71820
71882
  sessionId: state.sessionId,
@@ -71928,6 +71990,9 @@ function createDocumentRuntime(options) {
71928
71990
  activeStoryKey,
71929
71991
  viewportBlockRanges
71930
71992
  ),
71993
+ paragraphCascadeCache: ensureParagraphCascadeCacheForStyles(
71994
+ state.document.styles
71995
+ ),
71931
71996
  ...effectiveMarkupModeProvider ? { getEffectiveMarkupMode: effectiveMarkupModeProvider } : {}
71932
71997
  }
71933
71998
  );
@@ -75200,10 +75265,11 @@ function createDocumentRuntime(options) {
75200
75265
  document: state.document,
75201
75266
  editableTarget,
75202
75267
  selection,
75268
+ storyTarget: activeStory,
75203
75269
  targetResolution,
75204
75270
  timestamp
75205
75271
  });
75206
- if (selectedListItemDelete && activeStory.kind === "main" && context.documentMode !== "suggesting") {
75272
+ if (selectedListItemDelete && context.documentMode !== "suggesting") {
75207
75273
  const replacementCommand = {
75208
75274
  type: "document.replace",
75209
75275
  document: selectedListItemDelete.document,
@@ -75468,6 +75534,9 @@ function createDocumentRuntime(options) {
75468
75534
  });
75469
75535
  }
75470
75536
  function scheduleIdleContextAnalytics(callback) {
75537
+ runOnIdle(callback);
75538
+ }
75539
+ function runOnIdle(callback) {
75471
75540
  const requestIdle = globalThis.requestIdleCallback;
75472
75541
  if (typeof requestIdle === "function") {
75473
75542
  requestIdle(callback, { timeout: 250 });
@@ -78099,7 +78168,7 @@ function isTopLevelMainStoryBlockPath(blockPath) {
78099
78168
  return typeof blockPath === "string" && /^main\/block\[\d+\]$/u.test(blockPath);
78100
78169
  }
78101
78170
  function createSelectedListItemDeleteReplacement(input) {
78102
- const { command, document: document2, editableTarget, selection, targetResolution, timestamp } = input;
78171
+ const { command, document: document2, editableTarget, selection, storyTarget, targetResolution, timestamp } = input;
78103
78172
  if (command.type !== "text.delete-backward" && command.type !== "text.delete-forward") {
78104
78173
  return null;
78105
78174
  }
@@ -78111,20 +78180,19 @@ function createSelectedListItemDeleteReplacement(input) {
78111
78180
  if (selectionFrom !== targetResolution.range.from || selectionTo !== targetResolution.range.to) {
78112
78181
  return null;
78113
78182
  }
78114
- const root = document2.content;
78115
- const replacement = removeNumberedParagraphAtMainStoryPath(root.children, editableTarget.blockPath);
78183
+ const storyBlocks = getStoryBlocks(document2, storyTarget);
78184
+ const replacement = removeNumberedParagraphAtStoryPath(storyBlocks, editableTarget.blockPath, storyTarget);
78116
78185
  if (!replacement) {
78117
78186
  return null;
78118
78187
  }
78119
- const nextDocument = {
78188
+ const nextDocument = replaceStoryBlocks({
78120
78189
  ...document2,
78121
- updatedAt: timestamp,
78122
- content: {
78123
- ...root,
78124
- children: replacement.blocks
78125
- }
78126
- };
78127
- const nextStorySize = parseTextStory(nextDocument.content).size;
78190
+ updatedAt: timestamp
78191
+ }, storyTarget, replacement.blocks);
78192
+ const nextStorySize = parseTextStory({
78193
+ type: "doc",
78194
+ children: [...getStoryBlocks(nextDocument, storyTarget)]
78195
+ }).size;
78128
78196
  const nextAnchor = Math.min(selectionFrom, nextStorySize);
78129
78197
  return {
78130
78198
  document: nextDocument,
@@ -78141,8 +78209,8 @@ function createSelectedListItemDeleteReplacement(input) {
78141
78209
  }
78142
78210
  };
78143
78211
  }
78144
- function removeNumberedParagraphAtMainStoryPath(blocks, blockPath) {
78145
- const tokens = parseMainStoryBlockPathTokens(blockPath);
78212
+ function removeNumberedParagraphAtStoryPath(blocks, blockPath, storyTarget) {
78213
+ const tokens = parseStoryBlockPathTokens(blockPath, storyTarget);
78146
78214
  if (!tokens) return null;
78147
78215
  return removeNumberedParagraphFromBlocks(blocks, tokens);
78148
78216
  }
@@ -78188,6 +78256,52 @@ function removeNumberedParagraphFromBlocks(blocks, tokens) {
78188
78256
  ]
78189
78257
  };
78190
78258
  }
78259
+ if (block.type === "paragraph" && next?.kind === "inline") {
78260
+ const updatedParagraph = removeNumberedParagraphFromTextBoxInline(block, rest);
78261
+ if (!updatedParagraph) return null;
78262
+ return {
78263
+ blocks: [
78264
+ ...blocks.slice(0, token.index),
78265
+ updatedParagraph,
78266
+ ...blocks.slice(token.index + 1)
78267
+ ]
78268
+ };
78269
+ }
78270
+ return null;
78271
+ }
78272
+ function removeNumberedParagraphFromTextBoxInline(paragraph, tokens) {
78273
+ const [inlineToken, textBoxToken, ...childTokens] = tokens;
78274
+ if (inlineToken?.kind !== "inline" || textBoxToken?.kind !== "txbx" || childTokens[0]?.kind !== "block") {
78275
+ return null;
78276
+ }
78277
+ const inline = paragraph.children[inlineToken.index];
78278
+ if (!inline) return null;
78279
+ const updatedInline = removeNumberedParagraphFromInlineTextBox(inline, childTokens);
78280
+ if (!updatedInline) return null;
78281
+ return {
78282
+ ...paragraph,
78283
+ children: [
78284
+ ...paragraph.children.slice(0, inlineToken.index),
78285
+ updatedInline,
78286
+ ...paragraph.children.slice(inlineToken.index + 1)
78287
+ ]
78288
+ };
78289
+ }
78290
+ function removeNumberedParagraphFromInlineTextBox(inline, tokens) {
78291
+ if (inline.type === "shape" && inline.txbxBlocks) {
78292
+ const updatedBlocks = removeNumberedParagraphFromBlocks(inline.txbxBlocks, tokens);
78293
+ return updatedBlocks ? { ...inline, txbxBlocks: updatedBlocks.blocks } : null;
78294
+ }
78295
+ if (inline.type === "drawing_frame" && inline.content.type === "shape" && inline.content.txbxBlocks) {
78296
+ const updatedBlocks = removeNumberedParagraphFromBlocks(inline.content.txbxBlocks, tokens);
78297
+ return updatedBlocks ? {
78298
+ ...inline,
78299
+ content: {
78300
+ ...inline.content,
78301
+ txbxBlocks: updatedBlocks.blocks
78302
+ }
78303
+ } : null;
78304
+ }
78191
78305
  return null;
78192
78306
  }
78193
78307
  function removeNumberedParagraphFromTable(table, tokens) {
@@ -78228,15 +78342,29 @@ function createSelectedListItemDeleteReplayCommand(input) {
78228
78342
  target: editableTarget,
78229
78343
  activeStoryKey: canonicalEditableTargetStoryKey(storyTarget)
78230
78344
  });
78345
+ const resolvedEditableTarget = targetResolution.kind === "accepted" ? editableTarget : storyTarget.kind !== "main" && blockPathBelongsToStoryTarget(editableTarget.blockPath, storyTarget) ? resolveEditableCommandTarget({
78346
+ document: document2,
78347
+ target: editableTarget,
78348
+ activeStoryKey: canonicalEditableTargetStoryKey(storyTarget),
78349
+ commandFamilies: ["text-leaf"]
78350
+ }) : null;
78351
+ const selectedRange = {
78352
+ from: Math.min(selection.anchor, selection.head),
78353
+ to: Math.max(selection.anchor, selection.head)
78354
+ };
78231
78355
  const replacement = createSelectedListItemDeleteReplacement({
78232
78356
  command,
78233
78357
  document: document2,
78234
- editableTarget,
78358
+ editableTarget: resolvedEditableTarget && resolvedEditableTarget.kind === "accepted" ? resolvedEditableTarget.target : editableTarget,
78235
78359
  selection,
78236
- targetResolution,
78360
+ storyTarget,
78361
+ targetResolution: resolvedEditableTarget && resolvedEditableTarget.kind === "accepted" ? {
78362
+ kind: "accepted",
78363
+ range: selectedRange
78364
+ } : targetResolution,
78237
78365
  timestamp
78238
78366
  });
78239
- if (!replacement || storyTarget.kind !== "main") {
78367
+ if (!replacement) {
78240
78368
  return null;
78241
78369
  }
78242
78370
  return {
@@ -78248,22 +78376,49 @@ function createSelectedListItemDeleteReplayCommand(input) {
78248
78376
  origin: command.origin
78249
78377
  };
78250
78378
  }
78251
- function parseMainStoryBlockPathTokens(blockPath) {
78252
- const parts = blockPath?.split("/") ?? [];
78253
- if (parts[0] !== "main" || parts.length < 2) {
78379
+ function parseStoryBlockPathTokens(blockPath, storyTarget) {
78380
+ if (!blockPath) {
78381
+ return null;
78382
+ }
78383
+ const firstTokenMatch = /\/(?:block|row|cell)\[\d+\]/u.exec(blockPath);
78384
+ if (!firstTokenMatch?.index) {
78254
78385
  return null;
78255
78386
  }
78387
+ const storyPrefix = blockPath.slice(0, firstTokenMatch.index);
78388
+ if (!blockPathBelongsToStoryTarget(storyPrefix, storyTarget)) {
78389
+ return null;
78390
+ }
78391
+ const parts = blockPath.slice(firstTokenMatch.index + 1).split("/");
78256
78392
  const tokens = [];
78257
- for (const part of parts.slice(1)) {
78258
- const match = /^(block|row|cell)\[(\d+)\]$/u.exec(part);
78393
+ for (const part of parts) {
78394
+ if (part === "txbx") {
78395
+ tokens.push({ kind: "txbx" });
78396
+ continue;
78397
+ }
78398
+ const match = /^(block|row|cell|inline)\[(\d+)\]$/u.exec(part);
78259
78399
  if (!match) return null;
78400
+ const kind = match[1];
78260
78401
  tokens.push({
78261
- kind: match[1],
78402
+ kind,
78262
78403
  index: Number.parseInt(match[2], 10)
78263
78404
  });
78264
78405
  }
78265
78406
  return tokens;
78266
78407
  }
78408
+ function blockPathBelongsToStoryTarget(storyPrefix, storyTarget) {
78409
+ switch (storyTarget.kind) {
78410
+ case "main":
78411
+ return storyPrefix === "main" || storyPrefix.startsWith("main/");
78412
+ case "header":
78413
+ return storyPrefix.startsWith("header:");
78414
+ case "footer":
78415
+ return storyPrefix.startsWith("footer:");
78416
+ case "footnote":
78417
+ return storyPrefix === `footnote:${storyTarget.noteId}` || storyPrefix.startsWith(`footnote:${storyTarget.noteId}/`);
78418
+ case "endnote":
78419
+ return storyPrefix === `endnote:${storyTarget.noteId}` || storyPrefix.startsWith(`endnote:${storyTarget.noteId}/`);
78420
+ }
78421
+ }
78267
78422
  function toInternalSelectionSnapshot2(selection) {
78268
78423
  return {
78269
78424
  anchor: selection.anchor,
@@ -94737,7 +94892,8 @@ async function persistAndExport(input) {
94737
94892
  });
94738
94893
  result = withExportDelivery(result, {
94739
94894
  mode: "persisted-by-host",
94740
- savedAt: saveResult.savedAt
94895
+ savedAt: saveResult.savedAt,
94896
+ ...input.options?.download === false ? { downloadSuppressed: true } : {}
94741
94897
  });
94742
94898
  } catch (error) {
94743
94899
  const normalized = normalizeStorageError(error, {
@@ -108247,6 +108403,10 @@ function TwTableGripLayer({
108247
108403
  tableGeometry,
108248
108404
  plan.columnsTwips
108249
108405
  );
108406
+ const columnWidthCapability = tableContext.operations.setColumnWidth;
108407
+ const rowHeightCapability = tableContext.operations.setRowHeight;
108408
+ const columnResizeDisabled = !!disabled || !onSetColumnWidth || columnWidthCapability?.enabled === false;
108409
+ const rowResizeDisabled = !!disabled || !onSetRowHeight || rowHeightCapability?.enabled === false;
108250
108410
  return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(import_jsx_runtime61.Fragment, { children: [
108251
108411
  plan.columnResizeHandles.map((handle) => {
108252
108412
  const rect3 = resolveColumnEdgeRect(
@@ -108261,7 +108421,8 @@ function TwTableGripLayer({
108261
108421
  colIndex: handle.columnIndex,
108262
108422
  originalTwips: plan.columnsTwips[handle.columnIndex] ?? 720,
108263
108423
  pxPerTwip,
108264
- disabled: !!disabled || !onSetColumnWidth,
108424
+ disabled: columnResizeDisabled,
108425
+ disabledReason: columnWidthCapability?.reason,
108265
108426
  onCommit: onSetColumnWidth
108266
108427
  },
108267
108428
  `col-${blockId}-${handle.columnIndex}`
@@ -108282,7 +108443,8 @@ function TwTableGripLayer({
108282
108443
  rowIndex,
108283
108444
  originalTwips,
108284
108445
  pxPerTwip,
108285
- disabled: !!disabled || !onSetRowHeight,
108446
+ disabled: rowResizeDisabled,
108447
+ disabledReason: rowHeightCapability?.reason,
108286
108448
  onCommit: onSetRowHeight
108287
108449
  },
108288
108450
  `row-${blockId}-${rowIndex}`
@@ -108372,6 +108534,7 @@ function ColResizeGrip({
108372
108534
  originalTwips,
108373
108535
  pxPerTwip,
108374
108536
  disabled,
108537
+ disabledReason,
108375
108538
  onCommit
108376
108539
  }) {
108377
108540
  const dragRef = (0, import_react34.useRef)(null);
@@ -108430,11 +108593,13 @@ function ColResizeGrip({
108430
108593
  role: "separator",
108431
108594
  "aria-orientation": "vertical",
108432
108595
  "aria-label": `Resize column ${colIndex + 1}`,
108596
+ "aria-disabled": disabled ? "true" : void 0,
108433
108597
  "data-testid": `col-resize-grip-${colIndex}`,
108434
108598
  "data-active": isActive ? "true" : "false",
108599
+ title: disabled ? disabledReason : void 0,
108435
108600
  className: [
108436
- "wre-table-grip-col pointer-events-auto absolute",
108437
- disabled ? "opacity-0 cursor-default" : ""
108601
+ "wre-table-grip-col absolute",
108602
+ disabled ? "pointer-events-none opacity-0 cursor-default" : "pointer-events-auto"
108438
108603
  ].filter(Boolean).join(" "),
108439
108604
  style: {
108440
108605
  left: `calc(${pos.left} - ${GRIP_HIT_PX / 2}px)`,
@@ -108452,6 +108617,7 @@ function RowResizeGrip({
108452
108617
  originalTwips,
108453
108618
  pxPerTwip,
108454
108619
  disabled,
108620
+ disabledReason,
108455
108621
  onCommit
108456
108622
  }) {
108457
108623
  const dragRef = (0, import_react34.useRef)(null);
@@ -108511,11 +108677,13 @@ function RowResizeGrip({
108511
108677
  role: "separator",
108512
108678
  "aria-orientation": "horizontal",
108513
108679
  "aria-label": `Resize row ${rowIndex + 1}`,
108680
+ "aria-disabled": disabled ? "true" : void 0,
108514
108681
  "data-testid": `row-resize-grip-${rowIndex}`,
108515
108682
  "data-active": isActive ? "true" : "false",
108683
+ title: disabled ? disabledReason : void 0,
108516
108684
  className: [
108517
- "wre-table-grip-row pointer-events-auto absolute",
108518
- disabled ? "opacity-0 cursor-default" : ""
108685
+ "wre-table-grip-row absolute",
108686
+ disabled ? "pointer-events-none opacity-0 cursor-default" : "pointer-events-auto"
108519
108687
  ].filter(Boolean).join(" "),
108520
108688
  style: {
108521
108689
  left: pos.left,
package/dist/index.d.cts CHANGED
@@ -1,8 +1,8 @@
1
- import { b8 as TextCommandAck, b9 as TextCommandRefreshClass, ba as WordReviewEditorProps, bb as WordReviewEditorRef, a as EditorSessionState, P as PersistedEditorSnapshot, bc as validatePersistedEditorSnapshot, bd as PayloadSigner, be as PayloadSignature, bf as TransportStatus, bg as CollabPosture, bh as PresenceSnapshot, bi as AwarenessIdentity, bj as ExternalCustody, bk as ExternalCustodyResolver, bl as ExternalCustodyRestoredContent, bm as RuntimePageGraph, d as EditorSurfaceSnapshot, r as CompatibilityReport } from './public-types-BR1SYK2F.cjs';
2
- export { bn as ActiveListContext, bo as ActiveNoteContext, bp as AddCommentParams, bq as AddCommentReplyResult, br as AddCommentResult, bs as AiExplanationScopeInput, bt as AiExplanationScopeResult, K as ApiV3, bu as AttachPayloadArgs, bv as AuthorKind, bw as AutosaveConfig, bx as AutosaveState, by as AwarenessPeer, bz as BatchEditEntryResult, bA as BatchEditOperation, bB as BatchEditOptions, bC as BatchEditResult, bD as CaretAffinity, bE as ChangeAnchor, bF as ChangeFilter, bG as ChartPreviewResolveParams, bH as ChartSnapshot, bI as ChartSnapshotBubbleSeries, bJ as ChartSnapshotData, bK as ChartSnapshotScatterSeries, bL as ChartSnapshotSeries, bM as CollabBlockReason, bN as CollabSession, bO as CollabSessionBridge, bP as CollabSessionEvent, bQ as CollabSessionEventOrIntegrity, bR as CollabSessionFacet, bS as CollabSessionOptions, bT as CommandStateSnapshot, bU as CommentAttachment, bV as CommentAudience, bW as CommentBody, bX as CommentLabel, bY as CommentMention, bZ as CommentNegotiationAction, b_ as CommentNegotiationActionType, b$ as CommentNegotiationEntry, c0 as CommentNegotiationSnapshot, c1 as CommentNegotiationState, c2 as CommentPresentation, c3 as CommentPresentationAction, c4 as CommentPresentationReply, c5 as CommentPresentationSnapshot, c6 as CommentReaction, c7 as CommentSidebarSnapshot, c8 as CommentSidebarThreadEntrySnapshot, c9 as CommentSidebarThreadSnapshot, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, cc as CompatibilityPanelSnapshot, a7 as CreateApiV3Opts, cd as CreateCollabSessionBridgeOptions, ce as DispatchContext, cf as DispatchResult, cg as DocumentChunkKind, ch as DocumentChunkSnapshot, ci as DocumentHeadingSnapshot, cj as DocumentLocationSnapshot, ck as DocumentLocationSource, cl as DocumentNavigationSnapshot, cm as DocumentOutlineHeadingSnapshot, cn as DocumentOutlineSnapshot, co as DocumentPageSnapshot, cp as DocumentSectionSnapshot, cq as DocumentStats, cr as DocumentTextToken, cs as EditorAnchorProjection, ct as EditorDatastoreAdapter, t as EditorError, cu as EditorErrorCode, E as EditorHostAdapter, cv as EditorStateBlob, aA as EditorStateLocation, az as EditorStateNamespace, cw as EditorStatePartLoadFailure, cx as EditorStatePartPersistFailure, cy as EditorStatePersister, cz as EditorStatePolicy, cA as EditorStatePolicyEntry, cB as EditorStatePolicyMigration, cC as EditorStateResolveErrorMode, cD as EditorStateResolver, cE as EditorStateStorageRef, cF as EditorStoryTarget, cG as EditorTelemetryEvent, cH as EditorUser, cI as EditorViewStateSnapshot, cJ as EditorWarning, cK as EditorWarningCode, b as ExportDocxOptions, c as ExportResult, cL as ExternalCustodyArchivePayload, cM as ExternalDocumentSource, cN as HeaderFooterLinkPatch, cO as HostAnnotationItem, cP as HostAnnotationKind, cQ as HostAnnotationOverlay, cR as HostAnnotationSnapshot, cS as ISSUE_METADATA_ID, cT as InteractionGuardSnapshot, cU as IssueMetadataValue, cV as IssueMode, cW as IssueOwner, cX as IssueSeverity, cY as LayoutMeasurement, cZ as LoadRequest, c_ as LoadResult, c$ as LoadSourcePolicy, d0 as MetadataIntegrity, d1 as MetadataPersistenceMode, d2 as MetadataResolverMissingError, d3 as NegotiationBlockReason, d4 as NegotiationCounterProposal, d5 as NegotiationHistoryRow, d6 as NegotiationRole, d7 as NegotiationVote, d8 as PageLayoutSnapshot, d9 as PageRegionHitTest, da as Participant, db as ParticipantRole, dc as ParticipantRoster, dd as PayloadVerifier, de as REVIEW_ACTION_METADATA_ID, df as RestorePointCheckpointType, dg as RestorePointSnapshot, dh as RestoreResult, di as ReviewActionKind, dj as ReviewActionMetadataValue, dk as ReviewQueueItem, dl as ReviewQueueItemKind, dm as ReviewQueueSnapshot, dn as ReviewWorkItemSnapshot, dp as ReviewWorkSnapshot, dq as RuntimeContextAnalyticsActionHint, dr as RuntimeContextAnalyticsBadge, ds as RuntimeContextAnalyticsCounts, dt as RuntimeContextAnalyticsProvenance, du as RuntimeContextAnalyticsQuery, dv as RuntimeContextAnalyticsScopeKind, dw as RuntimeContextAnalyticsSnapshot, dx as RuntimeContextAnalyticsState, dy as RuntimeContextAnalyticsUnavailableField, R as RuntimeRenderSnapshot, dz as RuntimeSendToExternalArgs, dA as RuntimeSendToExternalResult, dB as SELECTION_TOOL_REGISTRY, dC as SaveExportParams, dD as SaveExportResult, dE as SaveSessionParams, dF as SaveSessionResult, dG as SaveSnapshotParams, dH as SaveSnapshotResult, dI as ScopeCardModel, dJ as ScopeIssueAction, dK as ScopeMetadataPersistence, dL as ScopeMetadataResolver, dM as ScopeMetadataStorageRef, dN as ScopeTagTouch, dO as SectionBreakType, dP as SectionLayoutPatch, dQ as SectionPageNumberingPatch, j as SelectionSnapshot, dR as SelectionToolKind, dS as SelectionToolRegistryEntry, dT as SendToExternalCallArgs, dU as SignatureAlgorithm, dV as SnapshotRefreshChangeKind, dW as SnapshotRefreshHints, dX as SnapshotRefreshInvalidateTarget, dY as SnapshotRefreshStaleTarget, dZ as StoryTextStreamSnapshot, d_ as StyleCatalogEntrySnapshot, d$ as StyleCatalogSnapshot, e0 as SuggestionEntrySnapshot, e1 as SuggestionGroup, e2 as SuggestionsSnapshot, e3 as SurfaceBlockSnapshot, e4 as SurfaceInlineSegment, e5 as SurfaceTableCellSnapshot, e6 as SurfaceTableRowSnapshot, e7 as SurfaceTextMark, e8 as TamperGate, e9 as TamperGateArgs, ea as TamperGateAttachArgs, eb as TamperGateEvent, ec as TamperGateGuardResult, ed as TextCommandAckKind, ee as TextProjection, ef as TextProjectionLine, eg as TextProjectionOptions, eh as TextProjectionStoryEntry, ei as TocEntrySnapshot, ej as TocRegionSnapshot, ek as TocSnapshot, el as TrackedChangeEntrySnapshot, em as TrackedChangesSnapshot, en as ViewMode, eo as WordReviewEditorChromeOptions, ep as WordReviewEditorChromePreset, eq as WordReviewEditorChromeVisibility, er as WordReviewEditorEvent, es as WorkflowBlockedCommandReason, et as WorkflowCandidateRange, eu as WorkflowCandidateRangeOptions, ev as WorkflowCommentMarkup, ew as WorkflowFieldMarkup, ex as WorkflowHighlightMarkup, ey as WorkflowMarkupBase, ez as WorkflowMarkupItem, eA as WorkflowMarkupKind, eB as WorkflowMarkupSnapshot, eC as WorkflowMetadataDefinition, eD as WorkflowMetadataEntry, eE as WorkflowMetadataMarkup, eF as WorkflowMetadataPersistence, eG as WorkflowMetadataSnapshot, eH as WorkflowOpaqueFragmentMarkup, eI as WorkflowOverlay, eJ as WorkflowOverlayPatch, eK as WorkflowProtectedRangeMarkup, eL as WorkflowRevisionMarkup, eM as WorkflowScope, eN as WorkflowScopeMode, eO as WorkflowScopeSnapshot, eP as WorkflowWorkItem, eQ as WorkspaceMode, eR as ZoomLevel, ax as createApiV3, eS as createCollabSession, eT as createCollabSessionBridge, eU as createCollabSessionFacet, eV as createHmacSigner, eW as createHmacVerifier, eX as createTamperGate, eY as resolveSelectionToolRegistry, eZ as runtimeSendToExternal, e_ as sendToExternal, e$ as signWorkflowPayloadXml, f0 as verifyWorkflowPayloadXml } from './public-types-BR1SYK2F.cjs';
1
+ import { b8 as TextCommandAck, b9 as TextCommandRefreshClass, ba as WordReviewEditorProps, bb as WordReviewEditorRef, a as EditorSessionState, P as PersistedEditorSnapshot, bc as validatePersistedEditorSnapshot, bd as PayloadSigner, be as PayloadSignature, bf as TransportStatus, bg as CollabPosture, bh as PresenceSnapshot, bi as AwarenessIdentity, bj as ExternalCustody, bk as ExternalCustodyResolver, bl as ExternalCustodyRestoredContent, bm as RuntimePageGraph, d as EditorSurfaceSnapshot, r as CompatibilityReport } from './public-types-D31xKNGc.cjs';
2
+ export { bn as ActiveListContext, bo as ActiveNoteContext, bp as AddCommentParams, bq as AddCommentReplyResult, br as AddCommentResult, bs as AiExplanationScopeInput, bt as AiExplanationScopeResult, K as ApiV3, bu as AttachPayloadArgs, bv as AuthorKind, bw as AutosaveConfig, bx as AutosaveState, by as AwarenessPeer, bz as BatchEditEntryResult, bA as BatchEditOperation, bB as BatchEditOptions, bC as BatchEditResult, bD as CaretAffinity, bE as ChangeAnchor, bF as ChangeFilter, bG as ChartPreviewResolveParams, bH as ChartSnapshot, bI as ChartSnapshotBubbleSeries, bJ as ChartSnapshotData, bK as ChartSnapshotScatterSeries, bL as ChartSnapshotSeries, bM as CollabBlockReason, bN as CollabSession, bO as CollabSessionBridge, bP as CollabSessionEvent, bQ as CollabSessionEventOrIntegrity, bR as CollabSessionFacet, bS as CollabSessionOptions, bT as CommandStateSnapshot, bU as CommentAttachment, bV as CommentAudience, bW as CommentBody, bX as CommentLabel, bY as CommentMention, bZ as CommentNegotiationAction, b_ as CommentNegotiationActionType, b$ as CommentNegotiationEntry, c0 as CommentNegotiationSnapshot, c1 as CommentNegotiationState, c2 as CommentPresentation, c3 as CommentPresentationAction, c4 as CommentPresentationReply, c5 as CommentPresentationSnapshot, c6 as CommentReaction, c7 as CommentSidebarSnapshot, c8 as CommentSidebarThreadEntrySnapshot, c9 as CommentSidebarThreadSnapshot, ca as CompatibilityFeatureClass, cb as CompatibilityFeatureEntry, cc as CompatibilityPanelSnapshot, a7 as CreateApiV3Opts, cd as CreateCollabSessionBridgeOptions, ce as DispatchContext, cf as DispatchResult, cg as DocumentChunkKind, ch as DocumentChunkSnapshot, ci as DocumentHeadingSnapshot, cj as DocumentLocationSnapshot, ck as DocumentLocationSource, cl as DocumentNavigationSnapshot, cm as DocumentOutlineHeadingSnapshot, cn as DocumentOutlineSnapshot, co as DocumentPageSnapshot, cp as DocumentSectionSnapshot, cq as DocumentStats, cr as DocumentTextToken, cs as EditorAnchorProjection, ct as EditorDatastoreAdapter, t as EditorError, cu as EditorErrorCode, E as EditorHostAdapter, cv as EditorStateBlob, aA as EditorStateLocation, az as EditorStateNamespace, cw as EditorStatePartLoadFailure, cx as EditorStatePartPersistFailure, cy as EditorStatePersister, cz as EditorStatePolicy, cA as EditorStatePolicyEntry, cB as EditorStatePolicyMigration, cC as EditorStateResolveErrorMode, cD as EditorStateResolver, cE as EditorStateStorageRef, cF as EditorStoryTarget, cG as EditorTelemetryEvent, cH as EditorUser, cI as EditorViewStateSnapshot, cJ as EditorWarning, cK as EditorWarningCode, b as ExportDocxOptions, c as ExportResult, cL as ExternalCustodyArchivePayload, cM as ExternalDocumentSource, cN as HeaderFooterLinkPatch, cO as HostAnnotationItem, cP as HostAnnotationKind, cQ as HostAnnotationOverlay, cR as HostAnnotationSnapshot, cS as ISSUE_METADATA_ID, cT as InteractionGuardSnapshot, cU as IssueMetadataValue, cV as IssueMode, cW as IssueOwner, cX as IssueSeverity, cY as LayoutMeasurement, cZ as LoadRequest, c_ as LoadResult, c$ as LoadSourcePolicy, d0 as MetadataIntegrity, d1 as MetadataPersistenceMode, d2 as MetadataResolverMissingError, d3 as NegotiationBlockReason, d4 as NegotiationCounterProposal, d5 as NegotiationHistoryRow, d6 as NegotiationRole, d7 as NegotiationVote, d8 as PageLayoutSnapshot, d9 as PageRegionHitTest, da as Participant, db as ParticipantRole, dc as ParticipantRoster, dd as PayloadVerifier, de as REVIEW_ACTION_METADATA_ID, df as RestorePointCheckpointType, dg as RestorePointSnapshot, dh as RestoreResult, di as ReviewActionKind, dj as ReviewActionMetadataValue, dk as ReviewQueueItem, dl as ReviewQueueItemKind, dm as ReviewQueueSnapshot, dn as ReviewWorkItemSnapshot, dp as ReviewWorkSnapshot, dq as RuntimeContextAnalyticsActionHint, dr as RuntimeContextAnalyticsBadge, ds as RuntimeContextAnalyticsCounts, dt as RuntimeContextAnalyticsProvenance, du as RuntimeContextAnalyticsQuery, dv as RuntimeContextAnalyticsScopeKind, dw as RuntimeContextAnalyticsSnapshot, dx as RuntimeContextAnalyticsState, dy as RuntimeContextAnalyticsUnavailableField, R as RuntimeRenderSnapshot, dz as RuntimeSendToExternalArgs, dA as RuntimeSendToExternalResult, dB as SELECTION_TOOL_REGISTRY, dC as SaveExportParams, dD as SaveExportResult, dE as SaveSessionParams, dF as SaveSessionResult, dG as SaveSnapshotParams, dH as SaveSnapshotResult, dI as ScopeCardModel, dJ as ScopeIssueAction, dK as ScopeMetadataPersistence, dL as ScopeMetadataResolver, dM as ScopeMetadataStorageRef, dN as ScopeTagTouch, dO as SectionBreakType, dP as SectionLayoutPatch, dQ as SectionPageNumberingPatch, j as SelectionSnapshot, dR as SelectionToolKind, dS as SelectionToolRegistryEntry, dT as SendToExternalCallArgs, dU as SignatureAlgorithm, dV as SnapshotRefreshChangeKind, dW as SnapshotRefreshHints, dX as SnapshotRefreshInvalidateTarget, dY as SnapshotRefreshStaleTarget, dZ as StoryTextStreamSnapshot, d_ as StyleCatalogEntrySnapshot, d$ as StyleCatalogSnapshot, e0 as SuggestionEntrySnapshot, e1 as SuggestionGroup, e2 as SuggestionsSnapshot, e3 as SurfaceBlockSnapshot, e4 as SurfaceInlineSegment, e5 as SurfaceTableCellSnapshot, e6 as SurfaceTableRowSnapshot, e7 as SurfaceTextMark, e8 as TamperGate, e9 as TamperGateArgs, ea as TamperGateAttachArgs, eb as TamperGateEvent, ec as TamperGateGuardResult, ed as TextCommandAckKind, ee as TextProjection, ef as TextProjectionLine, eg as TextProjectionOptions, eh as TextProjectionStoryEntry, ei as TocEntrySnapshot, ej as TocRegionSnapshot, ek as TocSnapshot, el as TrackedChangeEntrySnapshot, em as TrackedChangesSnapshot, en as ViewMode, eo as WordReviewEditorChromeOptions, ep as WordReviewEditorChromePreset, eq as WordReviewEditorChromeVisibility, er as WordReviewEditorEvent, es as WorkflowBlockedCommandReason, et as WorkflowCandidateRange, eu as WorkflowCandidateRangeOptions, ev as WorkflowCommentMarkup, ew as WorkflowFieldMarkup, ex as WorkflowHighlightMarkup, ey as WorkflowMarkupBase, ez as WorkflowMarkupItem, eA as WorkflowMarkupKind, eB as WorkflowMarkupSnapshot, eC as WorkflowMetadataDefinition, eD as WorkflowMetadataEntry, eE as WorkflowMetadataMarkup, eF as WorkflowMetadataPersistence, eG as WorkflowMetadataSnapshot, eH as WorkflowOpaqueFragmentMarkup, eI as WorkflowOverlay, eJ as WorkflowOverlayPatch, eK as WorkflowProtectedRangeMarkup, eL as WorkflowRevisionMarkup, eM as WorkflowScope, eN as WorkflowScopeMode, eO as WorkflowScopeSnapshot, eP as WorkflowWorkItem, eQ as WorkspaceMode, eR as ZoomLevel, ax as createApiV3, eS as createCollabSession, eT as createCollabSessionBridge, eU as createCollabSessionFacet, eV as createHmacSigner, eW as createHmacVerifier, eX as createTamperGate, eY as resolveSelectionToolRegistry, eZ as runtimeSendToExternal, e_ as sendToExternal, e$ as signWorkflowPayloadXml, f0 as verifyWorkflowPayloadXml } from './public-types-D31xKNGc.cjs';
3
3
  import React__default from 'react';
4
- export { D as DocxSession, S as SessionNotOpenError, a as SessionNotWiredError } from './session-CSbwkgII.cjs';
5
- export { E as EmbeddedDocumentManifest, a as ExportOptions, O as OpenOptions, b as OpenResult, P as PreservationSnapshot, V as ValidateOptions, c as ValidationFinding, d as ValidationReport } from './types-CZtAueri.cjs';
4
+ export { D as DocxSession, S as SessionNotOpenError, a as SessionNotWiredError } from './session-DA-F2fCw.cjs';
5
+ export { E as EmbeddedDocumentManifest, a as ExportOptions, O as OpenOptions, b as OpenResult, P as PreservationSnapshot, V as ValidateOptions, c as ValidationFinding, d as ValidationReport } from './types-B2y94n5t.cjs';
6
6
  import { Awareness } from 'y-protocols/awareness';
7
7
  import { C as CanonicalDocument } from './canonical-document-CfZIc-fC.cjs';
8
8
  import 'yjs';