@docx-editor.dev/core 2.23.0 → 2.25.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 (100) hide show
  1. package/README.md +7 -6
  2. package/dist/automation.cjs +1 -1
  3. package/dist/automation.d.ts +30 -11
  4. package/dist/automation.js +1 -1
  5. package/dist/binding.cjs +1 -1
  6. package/dist/binding.d.ts +8 -8
  7. package/dist/binding.js +1 -1
  8. package/dist/{chunk-QTFAXWVI.cjs → chunk-3RMHRNDA.cjs} +1 -1
  9. package/dist/{chunk-PCPBDYEL.cjs → chunk-42N7OV3G.cjs} +1 -1
  10. package/dist/chunk-47ZJEEBT.js +2 -0
  11. package/dist/chunk-4B3SXBV6.js +4 -0
  12. package/dist/chunk-5MWFZ7F4.cjs +11 -0
  13. package/dist/chunk-AS2OC6J4.cjs +26 -0
  14. package/dist/{chunk-FWX535CS.cjs → chunk-B7SYEMZ7.cjs} +1 -1
  15. package/dist/{chunk-EHT4LKKZ.cjs → chunk-BME2KUNL.cjs} +1 -1
  16. package/dist/chunk-CDGVVEUK.js +26 -0
  17. package/dist/chunk-E4RAPI5J.cjs +2 -0
  18. package/dist/chunk-FZJTQPH4.js +2 -0
  19. package/dist/chunk-H7XMRUAO.cjs +5 -0
  20. package/dist/{chunk-GRVRQBKU.js → chunk-ILUE2SI5.js} +1 -1
  21. package/dist/{chunk-UMBHUW6R.js → chunk-IZT3C23R.js} +1 -1
  22. package/dist/chunk-KJLPVGSX.cjs +4 -0
  23. package/dist/chunk-LF5LPZOP.cjs +18 -0
  24. package/dist/{chunk-QK23BSRK.cjs → chunk-MEF2AK5L.cjs} +1 -1
  25. package/dist/{chunk-DZOGUV7O.js → chunk-N5WE5O5Q.js} +1 -1
  26. package/dist/chunk-OVDW4XQD.cjs +2 -0
  27. package/dist/{chunk-6QS5WL63.js → chunk-SNN53UPD.js} +1 -1
  28. package/dist/chunk-V7LBEUVW.js +5 -0
  29. package/dist/chunk-VE7YBFQD.js +5 -0
  30. package/dist/chunk-VOVDX7GW.js +18 -0
  31. package/dist/chunk-VQ33XGNP.cjs +5 -0
  32. package/dist/{chunk-KRBBWATQ.js → chunk-WVJRO4WY.js} +1 -1
  33. package/dist/chunk-XUJINXW6.js +1 -0
  34. package/dist/{chunk-RLO64PHP.cjs → chunk-Y3TPAITU.cjs} +1 -1
  35. package/dist/chunk-Z65JJLLF.js +11 -0
  36. package/dist/collaboration/replication.cjs +1 -1
  37. package/dist/collaboration/replication.d.ts +4 -4
  38. package/dist/collaboration/replication.js +1 -1
  39. package/dist/collaboration.d.ts +3 -3
  40. package/dist/contracts/document.d.ts +2 -2
  41. package/dist/contracts/editor.d.ts +8 -8
  42. package/dist/contracts/modules.d.ts +6 -6
  43. package/dist/contracts/types.d.ts +1 -1
  44. package/dist/{custom-node-writes-77rvPW2-.d.ts → custom-node-writes-Cy9imOjA.d.ts} +2 -2
  45. package/dist/{document-protection-CYIjO-li.d.ts → document-protection-Bp19Ad4I.d.ts} +1 -1
  46. package/dist/{editor-DhUQsWWH.d.ts → editor-DkfCCTxA.d.ts} +147 -9
  47. package/dist/editor.cjs +1 -1
  48. package/dist/editor.css +3 -1
  49. package/dist/editor.d.ts +179 -34
  50. package/dist/editor.js +1 -1
  51. package/dist/export.cjs +2 -2
  52. package/dist/export.d.ts +12 -12
  53. package/dist/export.js +1 -1
  54. package/dist/{font-resolver-BwoHFBlr.d.ts → font-resolver-C295obND.d.ts} +1 -1
  55. package/dist/{headless-document-view-Cc3fFWhv.d.ts → headless-document-view-R9bzzepb.d.ts} +2 -2
  56. package/dist/{image-resources-DkuzBnTM.d.ts → image-resources-DfagDguq.d.ts} +1 -1
  57. package/dist/{index-BYaCkGKO.d.ts → index-3KAxeSic.d.ts} +345 -316
  58. package/dist/index.cjs +1 -1
  59. package/dist/index.d.ts +17 -17
  60. package/dist/index.js +1 -1
  61. package/dist/{layout-shaping-DpWQG26a.d.ts → layout-shaping-C889tgmj.d.ts} +2 -2
  62. package/dist/layout.cjs +1 -1
  63. package/dist/layout.d.ts +67 -52
  64. package/dist/layout.js +1 -1
  65. package/dist/{note-properties-DMfKK3QU.d.ts → note-properties-CmfvOJsi.d.ts} +1 -1
  66. package/dist/{omml-equation-BY7OdfGY.d.ts → omml-equation-CZ6IG2ja.d.ts} +1 -1
  67. package/dist/output.cjs +1 -1
  68. package/dist/output.d.ts +7 -7
  69. package/dist/output.js +1 -1
  70. package/dist/{protocol-CPAakntQ.d.ts → protocol-BhmenALD.d.ts} +43 -22
  71. package/dist/{review-paragraph-order-B0BP_wJP.d.ts → review-paragraph-order-BwhRT264.d.ts} +1 -1
  72. package/dist/{revision-projection-CVJeA2jp.d.ts → revision-projection-DfWxdBqA.d.ts} +1 -1
  73. package/dist/{semantic-cell-selection-B8GF_H2e.d.ts → semantic-cell-selection-CC3NwCtx.d.ts} +4 -4
  74. package/dist/{semantic-interaction-DQjtIruQ.d.ts → semantic-interaction-BHlV61hK.d.ts} +1 -1
  75. package/dist/{semantic-paint-DoPl85nR.d.ts → semantic-paint-DfWIWUs6.d.ts} +2 -2
  76. package/dist/{semantic-records-DB0VgWsr.d.ts → semantic-records-DrExlBy-.d.ts} +9 -9
  77. package/dist/store.cjs +1 -1
  78. package/dist/store.d.ts +37 -41
  79. package/dist/store.js +1 -1
  80. package/dist/{tree-package-fragment-BIyGh6L8.d.ts → tree-package-fragment-YPyYC1aD.d.ts} +9 -4
  81. package/dist/{tree-session-contract-CHcCnz3W.d.ts → tree-session-contract-AeY2v0x9.d.ts} +8 -6
  82. package/dist/{types-barrel-DN_-gaRX.d.ts → types-barrel-BO73JqHG.d.ts} +44 -30
  83. package/package.json +3 -3
  84. package/dist/chunk-4OAXZNBU.js +0 -5
  85. package/dist/chunk-6745I4XF.cjs +0 -20
  86. package/dist/chunk-6KA3L3FR.cjs +0 -11
  87. package/dist/chunk-BUDXZ7T2.cjs +0 -5
  88. package/dist/chunk-DYRXA5UJ.cjs +0 -2
  89. package/dist/chunk-F5LAOPAD.js +0 -20
  90. package/dist/chunk-JN62FLHE.cjs +0 -4
  91. package/dist/chunk-KV5HFE23.cjs +0 -2
  92. package/dist/chunk-Q4RDWB3U.cjs +0 -18
  93. package/dist/chunk-T7RGKBCE.cjs +0 -5
  94. package/dist/chunk-VE6H5EJA.js +0 -5
  95. package/dist/chunk-WHG23WNI.js +0 -1
  96. package/dist/chunk-XBYZTDF7.js +0 -4
  97. package/dist/chunk-XRBPZCNK.js +0 -11
  98. package/dist/chunk-Y5JCIWTF.js +0 -2
  99. package/dist/chunk-ZA6HEWUM.js +0 -2
  100. package/dist/chunk-ZCRSPN4Q.js +0 -18
@@ -1,19 +1,19 @@
1
- import { W as TreeDocOp, cl as TextFormFieldRange, ck as TextFormFieldOptions, ah as Unsubscribe, ab as DrawingPositionInput, aJ as DrawingTransform, E as ExecResult, A as ParagraphTabStop, y as IndentFormatting, z as ParagraphFlags, ao as ParagraphDisagreements, aB as DrawingTreeDocOp, ag as SelectionPin, Q as OoxmlPackage, g as ReviewRevisionKind, aa as ImageWrapTarget } from './types-barrel-DN_-gaRX.js';
2
- import { a as ImageDecodePort, S as SupportedImageMime } from './image-resources-DkuzBnTM.js';
3
- import './document-protection-CYIjO-li.js';
1
+ import { W as TreeDocOp, cl as TextFormFieldRange, ck as TextFormFieldOptions, ah as Unsubscribe, ab as DrawingPositionInput, aJ as DrawingTransform, E as ExecResult, A as ParagraphTabStop, y as IndentFormatting, z as ParagraphFlags, ao as ParagraphDisagreements, aB as DrawingTreeDocOp, ag as SelectionPin, Q as OoxmlPackage, g as ReviewRevisionKind, aa as ImageWrapTarget } from './types-barrel-BO73JqHG.js';
2
+ import { a as ImageDecodePort, S as SupportedImageMime } from './image-resources-DfagDguq.js';
3
+ import './document-protection-Bp19Ad4I.js';
4
4
  import { EditorModule, ReviewModuleContribution } from './contracts/modules.js';
5
- import { D as DocumentSource, a as FontConfiguration, Z as ZoomMode, E as EditorFontError, q as Editor, e as EditorCommand, C as CanResult, j as SelectedImageState, r as FormatPainterSurfaceState, k as TrackedChangePredicate, T as TrackedChangeFilterMode, F as FontFaceRequest, b as FontSource, I as ImageContext, t as TableBorderEdgeTarget, u as TableBorderSpec, w as TableBorderStyle, x as TableContext } from './editor-DhUQsWWH.js';
6
- import { R as ReviewDisplayMode } from './revision-projection-CVJeA2jp.js';
7
- import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-DQjtIruQ.js';
8
- import { e as FontConfigurationFragment, g as FontResolver, i as MarkedFontResolver, f as FontResolutionRequest } from './font-resolver-BwoHFBlr.js';
5
+ import { D as DocumentSource, a as FontConfiguration, Z as ZoomMode, E as EditorFontError, h as Editor, e as EditorCommand, C as CanResult, o as SelectedImageState, y as FormatPainterSurfaceState, q as TrackedChangePredicate, p as TrackedChangeFilterMode, F as FontFaceRequest, b as FontSource, I as ImageContext, z as TableBorderEdgeTarget, B as TableBorderSpec, G as TableBorderStyle, J as TableContext } from './editor-DkfCCTxA.js';
6
+ import { R as ReviewDisplayMode } from './revision-projection-DfWxdBqA.js';
7
+ import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-BHlV61hK.js';
8
+ import { e as FontConfigurationFragment, g as FontResolver, i as MarkedFontResolver, f as FontResolutionRequest } from './font-resolver-C295obND.js';
9
9
  import { EditorCollaborationSession, CollaborationRemoteSelection, CollaborationModuleContribution } from './collaboration.js';
10
- import { c as RevisionStyles, R as ReviewAuthorInfo, b as RevisionAuthorStyle, F as FieldShadingMode, d as DrawingPaintStrings } from './semantic-paint-DoPl85nR.js';
11
- import { b as ResolvedFootnoteProperties, R as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-DMfKK3QU.js';
12
- import { S as SemanticLayout, C as ContentControlBoundaryRecord, T as TextMeasurer } from './semantic-records-DB0VgWsr.js';
13
- import { B as BookmarkIndex } from './custom-node-writes-77rvPW2-.js';
14
- import { I as InsertImageInput, S as StoryScope, A as ApplyImagePropertiesInput, i as ImageIntentResult } from './tree-package-fragment-BIyGh6L8.js';
15
- import { C as CellSelection, S as SectionProperties } from './semantic-cell-selection-B8GF_H2e.js';
16
- import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-CHcCnz3W.js';
10
+ import { c as RevisionStyles, R as ReviewAuthorInfo, b as RevisionAuthorStyle, F as FieldShadingMode, d as DrawingPaintStrings } from './semantic-paint-DfWIWUs6.js';
11
+ import { b as ResolvedFootnoteProperties, R as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-CmfvOJsi.js';
12
+ import { S as SemanticLayout, T as TextMeasurer, C as ContentControlBoundaryRecord } from './semantic-records-DrExlBy-.js';
13
+ import { B as BookmarkIndex } from './custom-node-writes-Cy9imOjA.js';
14
+ import { I as InsertImageInput, S as StoryScope, A as ApplyImagePropertiesInput, i as ImageIntentResult } from './tree-package-fragment-YPyYC1aD.js';
15
+ import { C as CellSelection, S as SectionProperties } from './semantic-cell-selection-CC3NwCtx.js';
16
+ import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-AeY2v0x9.js';
17
17
  import { C as CollaborationStatus } from './failure-BIPVQbRm.js';
18
18
  import { V as ViewScope, b as EditorExecOptions } from './editor-scope-OHPwVQ5l.js';
19
19
  import './contracts/document.js';
@@ -631,9 +631,7 @@ type ImageMutationPreconditions = Readonly<{
631
631
  /**
632
632
  * The selected image and what may be done to it, or null when nothing image-like is selected.
633
633
  *
634
- * Null covers more than "no selection": a placeholder graphic, a drawing the file marks hidden,
635
- * and one whose `select` lock is set all read as no selection, because chrome that offered
636
- * resize handles on them would promise an edit the store is about to refuse.
634
+ * Unsupported placeholders, hidden drawings, and select-locked drawings cannot be selected.
637
635
  */
638
636
  declare function selectedImageStateOf(surface: PaginatedSurface | null): SelectedImageState | null;
639
637
  /**
@@ -719,6 +717,8 @@ interface ImageOverlayScrollPort {
719
717
  * decide what it is looking at.
720
718
  */
721
719
  interface SelectedDrawingOverlayTarget {
720
+ /** Keep the text area available for pointer editing through the frame. */
721
+ readonly textbox?: boolean;
722
722
  readonly id: string;
723
723
  readonly pageIndex: number;
724
724
  readonly x: number;
@@ -831,7 +831,7 @@ declare function overlayHostOrigin(surfaceElement: HTMLElement | null): {
831
831
  readonly top: number;
832
832
  };
833
833
  /** Whether this handle drag should preserve aspect ratio. */
834
- declare function resizePreservesAspect(handle: ImageResizeHandle, aspectLocked: boolean, shiftKey: boolean): boolean;
834
+ declare function resizePreservesAspect(handle: ImageResizeHandle, aspectLocked: boolean, shiftKey: boolean, textbox?: boolean): boolean;
835
835
  /**
836
836
  * Where an anchored drawing's positioning frame begins, in layout points.
837
837
  *
@@ -912,6 +912,7 @@ declare function finalizeImageOverlayInteraction(options: {
912
912
  readonly accumulatedScrollPt: number;
913
913
  readonly aspectLocked: boolean;
914
914
  readonly shiftKey: boolean;
915
+ readonly textbox?: boolean;
915
916
  readonly anchorFrameOrigin: AnchorFrameOrigin | null;
916
917
  }): FinalizedImageOverlayInteraction;
917
918
 
@@ -1021,6 +1022,24 @@ interface ParagraphPropertyEdit {
1021
1022
  */
1022
1023
  type ReviewWriteIntent = 'revision-resolve' | 'comment-add' | 'comment-reply' | 'comment-resolve' | 'comment-delete' | 'package-scoped';
1023
1024
 
1025
+ /**
1026
+ * Everything an overlay needs to paint over one rendered frame of the surface.
1027
+ *
1028
+ * `pages` is the materialized page set (absent when every page is built), and `scale` and
1029
+ * `pageOffsetX` are the values the page painter used, so overlay geometry lands on the text.
1030
+ */
1031
+ interface SurfaceOverlayFrame {
1032
+ readonly layer: HTMLElement;
1033
+ readonly layout: SemanticLayout;
1034
+ readonly revision: number;
1035
+ readonly scale: number;
1036
+ readonly pages?: ReadonlySet<number>;
1037
+ readonly pageOffsetX?: ReadonlyMap<number, number>;
1038
+ readonly measurer?: TextMeasurer;
1039
+ }
1040
+ /** A painter the surface calls after every render, and on request. */
1041
+ type SurfaceOverlayPainter = (frame: SurfaceOverlayFrame) => void;
1042
+
1024
1043
  /**
1025
1044
  * Content-control interaction lane on the paginated surface.
1026
1045
  *
@@ -1935,6 +1954,13 @@ interface PaginatedSurface {
1935
1954
  * collaborator-name labels.
1936
1955
  */
1937
1956
  setRemoteCaretLabelHost(host: RemoteCaretLabelHost | null): void;
1957
+ /**
1958
+ * Install the painter for host text highlights, or remove it with `null`. The surface calls
1959
+ * it after every render and once on installation, with the frame it just painted.
1960
+ */
1961
+ setHighlightPainter(painter: SurfaceOverlayPainter | null): void;
1962
+ /** Call the installed highlight painter against the current frame. */
1963
+ repaintHighlights(): void;
1938
1964
  /**
1939
1965
  * Commit ops that came from automation, through the gate a keystroke goes through.
1940
1966
  *
@@ -1954,7 +1980,7 @@ interface PaginatedSurface {
1954
1980
  * planned left its target in a read-only document's `.rels`. A builder answering null means the
1955
1981
  * target is one this engine will not author, and the write is refused having changed nothing.
1956
1982
  */
1957
- applyAutomationOps(staged: (relate: (url: string) => string | null) => readonly TreeDocOp[] | null, scope?: StoryScope, packageEdits?: readonly ((pkg: OoxmlPackage) => OoxmlPackage)[]): TreeApplyResult;
1983
+ applyAutomationOps(staged: (relate: (url: string) => string | null) => readonly TreeDocOp[] | null, scope?: StoryScope, packageEdits?: readonly ((pkg: OoxmlPackage) => OoxmlPackage)[], requiresReview?: boolean): TreeApplyResult;
1958
1984
  /**
1959
1985
  * Which revision halves this surface is SHOWING.
1960
1986
  *
@@ -2511,632 +2537,640 @@ interface ChromeGroup<Id extends string = string, ControlId extends string = str
2511
2537
  * (`alignment.left`, not `alignment.alignLeft`; `font.family`, not `font.fontFamily`).
2512
2538
  */
2513
2539
  declare const CHROME_GROUPS: readonly [{
2514
- readonly id: "history";
2515
- readonly labelKey: "formattingBar.groups.history";
2540
+ readonly id: 'history';
2541
+ readonly labelKey: 'formattingBar.groups.history';
2516
2542
  readonly controls: readonly [{
2517
- readonly id: "undo";
2518
- readonly labelKey: "formattingBar.undoShortcut";
2543
+ readonly id: 'undo';
2544
+ readonly labelKey: 'formattingBar.undoShortcut';
2519
2545
  readonly paths: readonly string[];
2520
2546
  readonly state: {
2521
- readonly kind: "command";
2547
+ readonly kind: 'command';
2522
2548
  };
2523
2549
  }, {
2524
- readonly id: "redo";
2525
- readonly labelKey: "formattingBar.redoShortcut";
2550
+ readonly id: 'redo';
2551
+ readonly labelKey: 'formattingBar.redoShortcut';
2526
2552
  readonly paths: readonly string[];
2527
2553
  readonly state: {
2528
- readonly kind: "command";
2554
+ readonly kind: 'command';
2529
2555
  };
2530
2556
  }];
2531
2557
  }, {
2532
- readonly id: "zoom";
2533
- readonly labelKey: "formattingBar.groups.zoom";
2558
+ readonly id: 'zoom';
2559
+ readonly labelKey: 'formattingBar.groups.zoom';
2534
2560
  readonly controls: readonly [{
2535
- readonly id: "level";
2536
- readonly shape: "stepper";
2537
- readonly valueText: "100%";
2538
- readonly labelKey: "formattingBar.groups.zoom";
2561
+ readonly id: 'level';
2562
+ readonly shape: 'stepper';
2563
+ readonly valueText: '100%';
2564
+ readonly labelKey: 'formattingBar.groups.zoom';
2539
2565
  readonly paths: null;
2540
- readonly valueKey: "zoom.zoomLevel";
2566
+ readonly valueKey: 'zoom.zoomLevel';
2541
2567
  readonly state: {
2542
- readonly kind: "command";
2568
+ readonly kind: 'command';
2543
2569
  };
2544
2570
  }];
2545
2571
  }, {
2546
- readonly id: "styles";
2547
- readonly labelKey: "formattingBar.groups.styles";
2572
+ readonly id: 'styles';
2573
+ readonly labelKey: 'formattingBar.groups.styles';
2548
2574
  readonly controls: readonly [{
2549
- readonly id: "style";
2550
- readonly shape: "dropdown";
2551
- readonly labelKey: "styles.selectAriaLabel";
2575
+ readonly id: 'style';
2576
+ readonly shape: 'dropdown';
2577
+ readonly labelKey: 'styles.selectAriaLabel';
2552
2578
  readonly paths: null;
2553
- readonly valueKey: "styles.normalText";
2579
+ readonly valueKey: 'styles.normalText';
2554
2580
  readonly state: {
2555
- readonly kind: "value";
2581
+ readonly kind: 'value';
2556
2582
  };
2557
2583
  }];
2558
2584
  }, {
2559
- readonly id: "font";
2560
- readonly labelKey: "formattingBar.groups.font";
2585
+ readonly id: 'font';
2586
+ readonly labelKey: 'formattingBar.groups.font';
2561
2587
  readonly controls: readonly [{
2562
- readonly id: "family";
2563
- readonly shape: "dropdown";
2564
- readonly labelKey: "font.selectAriaLabel";
2588
+ readonly id: 'family';
2589
+ readonly shape: 'dropdown';
2590
+ readonly labelKey: 'font.selectAriaLabel';
2565
2591
  readonly paths: null;
2566
- readonly valueKey: "font.sansSerif";
2592
+ readonly valueKey: 'font.sansSerif';
2567
2593
  readonly state: {
2568
- readonly kind: "value";
2594
+ readonly kind: 'value';
2569
2595
  };
2570
2596
  }, {
2571
- readonly id: "size";
2572
- readonly shape: "stepper";
2573
- readonly valueText: "11";
2574
- readonly labelKey: "fontSize.listLabel";
2597
+ readonly id: 'size';
2598
+ readonly shape: 'stepper';
2599
+ readonly valueText: '11';
2600
+ readonly labelKey: 'fontSize.listLabel';
2575
2601
  readonly paths: null;
2576
- readonly valueKey: "fontSize.label";
2602
+ readonly valueKey: 'fontSize.label';
2577
2603
  readonly state: {
2578
- readonly kind: "value";
2604
+ readonly kind: 'value';
2579
2605
  };
2580
2606
  }];
2581
2607
  }, {
2582
- readonly id: "text";
2583
- readonly labelKey: "formattingBar.groups.textFormatting";
2608
+ readonly id: 'text';
2609
+ readonly labelKey: 'formattingBar.groups.textFormatting';
2584
2610
  readonly controls: readonly [{
2585
- readonly id: "bold";
2586
- readonly labelKey: "formattingBar.boldShortcut";
2611
+ readonly id: 'bold';
2612
+ readonly labelKey: 'formattingBar.boldShortcut';
2587
2613
  readonly paths: readonly string[];
2588
2614
  readonly state: {
2589
- readonly kind: "command";
2615
+ readonly kind: 'command';
2590
2616
  };
2591
2617
  }, {
2592
- readonly id: "italic";
2593
- readonly labelKey: "formattingBar.italicShortcut";
2618
+ readonly id: 'italic';
2619
+ readonly labelKey: 'formattingBar.italicShortcut';
2594
2620
  readonly paths: readonly string[];
2595
2621
  readonly state: {
2596
- readonly kind: "command";
2622
+ readonly kind: 'command';
2597
2623
  };
2598
2624
  }, {
2599
- readonly id: "underline";
2600
- readonly labelKey: "formattingBar.underlineShortcut";
2625
+ readonly id: 'underline';
2626
+ readonly labelKey: 'formattingBar.underlineShortcut';
2601
2627
  readonly paths: readonly string[];
2602
2628
  readonly state: {
2603
- readonly kind: "command";
2629
+ readonly kind: 'command';
2604
2630
  };
2605
2631
  }, {
2606
- readonly id: "strike";
2607
- readonly labelKey: "formattingBar.strikethrough";
2632
+ readonly id: 'strike';
2633
+ readonly labelKey: 'formattingBar.strikethrough';
2608
2634
  readonly paths: readonly string[];
2609
2635
  readonly state: {
2610
- readonly kind: "command";
2636
+ readonly kind: 'command';
2611
2637
  };
2612
2638
  }, {
2613
- readonly id: "color";
2614
- readonly shape: "colorSplit";
2615
- readonly swatch: "#ff0000";
2616
- readonly labelKey: "formattingBar.fontColor";
2639
+ readonly id: 'color';
2640
+ readonly shape: 'colorSplit';
2641
+ readonly swatch: '#ff0000';
2642
+ readonly labelKey: 'formattingBar.fontColor';
2617
2643
  readonly paths: readonly string[];
2618
2644
  readonly state: {
2619
- readonly kind: "value";
2645
+ readonly kind: 'value';
2620
2646
  };
2621
2647
  }, {
2622
- readonly id: "highlight";
2623
- readonly shape: "colorSplit";
2624
- readonly swatch: "#ffff00";
2625
- readonly labelKey: "formattingBar.highlightColor";
2648
+ readonly id: 'highlight';
2649
+ readonly shape: 'colorSplit';
2650
+ readonly swatch: '#ffff00';
2651
+ readonly labelKey: 'formattingBar.highlightColor';
2626
2652
  readonly paths: readonly string[];
2627
2653
  readonly state: {
2628
- readonly kind: "value";
2654
+ readonly kind: 'value';
2629
2655
  };
2630
2656
  }, {
2631
- readonly id: "link";
2632
- readonly labelKey: "formattingBar.insertLinkShortcut";
2657
+ readonly id: 'link';
2658
+ readonly labelKey: 'formattingBar.insertLinkShortcut';
2633
2659
  readonly paths: readonly string[];
2634
2660
  readonly state: {
2635
- readonly kind: "command";
2661
+ readonly kind: 'command';
2636
2662
  };
2637
2663
  }];
2638
2664
  }, {
2639
- readonly id: "script";
2640
- readonly labelKey: "formattingBar.groups.script";
2665
+ readonly id: 'script';
2666
+ readonly labelKey: 'formattingBar.groups.script';
2641
2667
  readonly controls: readonly [{
2642
- readonly id: "super";
2643
- readonly labelKey: "formattingBar.superscript";
2668
+ readonly id: 'super';
2669
+ readonly labelKey: 'formattingBar.superscript';
2644
2670
  readonly paths: readonly string[];
2645
2671
  readonly state: {
2646
- readonly kind: "command";
2672
+ readonly kind: 'command';
2647
2673
  };
2648
2674
  }, {
2649
- readonly id: "sub";
2650
- readonly labelKey: "formattingBar.subscript";
2675
+ readonly id: 'sub';
2676
+ readonly labelKey: 'formattingBar.subscript';
2651
2677
  readonly paths: readonly string[];
2652
2678
  readonly state: {
2653
- readonly kind: "command";
2679
+ readonly kind: 'command';
2654
2680
  };
2655
2681
  }];
2656
2682
  }, {
2657
- readonly id: "alignment";
2658
- readonly labelKey: "formattingBar.groups.alignment";
2683
+ readonly id: 'alignment';
2684
+ readonly labelKey: 'formattingBar.groups.alignment';
2659
2685
  readonly controls: readonly [{
2660
- readonly id: "left";
2661
- readonly labelKey: "alignment.alignLeft";
2686
+ readonly id: 'left';
2687
+ readonly labelKey: 'alignment.alignLeft';
2662
2688
  readonly paths: readonly string[];
2663
2689
  readonly state: {
2664
- readonly kind: "command";
2690
+ readonly kind: 'command';
2665
2691
  };
2666
2692
  }, {
2667
- readonly id: "center";
2668
- readonly labelKey: "alignment.center";
2693
+ readonly id: 'center';
2694
+ readonly labelKey: 'alignment.center';
2669
2695
  readonly paths: readonly string[];
2670
2696
  readonly state: {
2671
- readonly kind: "command";
2697
+ readonly kind: 'command';
2672
2698
  };
2673
2699
  }, {
2674
- readonly id: "right";
2675
- readonly labelKey: "alignment.alignRight";
2700
+ readonly id: 'right';
2701
+ readonly labelKey: 'alignment.alignRight';
2676
2702
  readonly paths: readonly string[];
2677
2703
  readonly state: {
2678
- readonly kind: "command";
2704
+ readonly kind: 'command';
2679
2705
  };
2680
2706
  }, {
2681
- readonly id: "justify";
2682
- readonly labelKey: "alignment.justify";
2707
+ readonly id: 'justify';
2708
+ readonly labelKey: 'alignment.justify';
2683
2709
  readonly paths: readonly string[];
2684
2710
  readonly state: {
2685
- readonly kind: "command";
2711
+ readonly kind: 'command';
2686
2712
  };
2687
2713
  }];
2688
2714
  }, {
2689
- readonly id: "direction";
2690
- readonly labelKey: "formattingBar.groups.direction";
2715
+ readonly id: 'direction';
2716
+ readonly labelKey: 'formattingBar.groups.direction';
2717
+ readonly contextual: true;
2691
2718
  readonly controls: readonly [{
2692
- readonly id: "ltr";
2693
- readonly labelKey: "toolbar.leftToRight";
2719
+ readonly id: 'ltr';
2720
+ readonly labelKey: 'toolbar.leftToRight';
2694
2721
  readonly paths: readonly string[];
2695
2722
  readonly state: {
2696
- readonly kind: "command";
2723
+ readonly kind: 'command';
2697
2724
  };
2698
2725
  }, {
2699
- readonly id: "rtl";
2700
- readonly labelKey: "toolbar.rightToLeft";
2726
+ readonly id: 'rtl';
2727
+ readonly labelKey: 'toolbar.rightToLeft';
2701
2728
  readonly paths: readonly string[];
2702
2729
  readonly state: {
2703
- readonly kind: "command";
2730
+ readonly kind: 'command';
2704
2731
  };
2705
2732
  }];
2706
2733
  }, {
2707
- readonly id: "list";
2708
- readonly labelKey: "formattingBar.groups.listFormatting";
2734
+ readonly id: 'list';
2735
+ readonly labelKey: 'formattingBar.groups.listFormatting';
2709
2736
  readonly controls: readonly [{
2710
- readonly id: "bullet";
2711
- readonly labelKey: "lists.bulletList";
2737
+ readonly id: 'bullet';
2738
+ readonly labelKey: 'lists.bulletList';
2712
2739
  readonly paths: readonly string[];
2713
2740
  readonly state: {
2714
- readonly kind: "command";
2741
+ readonly kind: 'command';
2715
2742
  };
2716
2743
  }, {
2717
- readonly id: "numbered";
2718
- readonly labelKey: "lists.numberedList";
2744
+ readonly id: 'numbered';
2745
+ readonly labelKey: 'lists.numberedList';
2719
2746
  readonly paths: readonly string[];
2720
2747
  readonly state: {
2721
- readonly kind: "command";
2748
+ readonly kind: 'command';
2722
2749
  };
2723
2750
  }, {
2724
- readonly id: "outdent";
2725
- readonly labelKey: "lists.decreaseIndent";
2751
+ readonly id: 'outdent';
2752
+ readonly labelKey: 'lists.decreaseIndent';
2726
2753
  readonly paths: readonly string[];
2727
2754
  readonly state: {
2728
- readonly kind: "command";
2755
+ readonly kind: 'command';
2729
2756
  };
2730
2757
  }, {
2731
- readonly id: "indent";
2732
- readonly labelKey: "lists.increaseIndent";
2758
+ readonly id: 'indent';
2759
+ readonly labelKey: 'lists.increaseIndent';
2733
2760
  readonly paths: readonly string[];
2734
2761
  readonly state: {
2735
- readonly kind: "command";
2762
+ readonly kind: 'command';
2736
2763
  };
2737
2764
  }, {
2738
- readonly id: "lineSpacing";
2739
- readonly shape: "dropdown";
2740
- readonly labelKey: "lineSpacing.label";
2765
+ readonly id: 'lineSpacing';
2766
+ readonly shape: 'dropdown';
2767
+ readonly labelKey: 'lineSpacing.label';
2741
2768
  readonly paths: readonly string[];
2742
2769
  readonly state: {
2743
- readonly kind: "command";
2770
+ readonly kind: 'command';
2744
2771
  };
2745
2772
  }];
2746
2773
  }, {
2747
- readonly id: "format";
2748
- readonly labelKey: "formattingBar.groups.format";
2774
+ readonly id: 'format';
2775
+ readonly labelKey: 'formattingBar.groups.format';
2749
2776
  readonly controls: readonly [{
2750
- readonly id: "painter";
2751
- readonly labelKey: "formattingBar.formatPainterShortcut";
2777
+ readonly id: 'painter';
2778
+ readonly labelKey: 'formattingBar.formatPainterShortcut';
2752
2779
  readonly paths: readonly string[];
2753
2780
  readonly state: {
2754
- readonly kind: "command";
2781
+ readonly kind: 'command';
2755
2782
  };
2756
2783
  }, {
2757
- readonly id: "clear";
2758
- readonly labelKey: "formattingBar.clearFormatting";
2784
+ readonly id: 'clear';
2785
+ readonly labelKey: 'formattingBar.clearFormatting';
2759
2786
  readonly paths: readonly string[];
2760
2787
  readonly state: {
2761
- readonly kind: "command";
2788
+ readonly kind: 'command';
2762
2789
  };
2763
2790
  }];
2764
2791
  }, {
2765
- readonly id: "review";
2766
- readonly labelKey: "formattingBar.commentsAndChanges";
2792
+ readonly id: 'review';
2793
+ readonly labelKey: 'formattingBar.commentsAndChanges';
2767
2794
  readonly controls: readonly [{
2768
- readonly id: "simpleMarkup";
2769
- readonly shape: "icon";
2770
- readonly labelKey: "review.simpleMarkup";
2795
+ readonly id: 'simpleMarkup';
2796
+ readonly shape: 'icon';
2797
+ readonly labelKey: 'review.simpleMarkup';
2771
2798
  readonly defaultToolbar: false;
2772
2799
  readonly paths: readonly string[];
2773
2800
  readonly state: {
2774
- readonly kind: "command";
2801
+ readonly kind: 'command';
2775
2802
  };
2776
2803
  }, {
2777
- readonly id: "allMarkup";
2778
- readonly shape: "icon";
2779
- readonly labelKey: "review.allMarkup";
2804
+ readonly id: 'allMarkup';
2805
+ readonly shape: 'icon';
2806
+ readonly labelKey: 'review.allMarkup';
2780
2807
  readonly defaultToolbar: false;
2781
2808
  readonly paths: readonly string[];
2782
2809
  readonly state: {
2783
- readonly kind: "command";
2810
+ readonly kind: 'command';
2784
2811
  };
2785
2812
  }, {
2786
- readonly id: "noMarkup";
2787
- readonly shape: "icon";
2788
- readonly labelKey: "review.noMarkup";
2813
+ readonly id: 'noMarkup';
2814
+ readonly shape: 'icon';
2815
+ readonly labelKey: 'review.noMarkup';
2789
2816
  readonly defaultToolbar: false;
2790
2817
  readonly paths: readonly string[];
2791
2818
  readonly state: {
2792
- readonly kind: "command";
2819
+ readonly kind: 'command';
2793
2820
  };
2794
2821
  }, {
2795
- readonly id: "original";
2796
- readonly shape: "icon";
2797
- readonly labelKey: "review.original";
2822
+ readonly id: 'original';
2823
+ readonly shape: 'icon';
2824
+ readonly labelKey: 'review.original';
2798
2825
  readonly defaultToolbar: false;
2799
2826
  readonly paths: readonly string[];
2800
2827
  readonly state: {
2801
- readonly kind: "command";
2828
+ readonly kind: 'command';
2802
2829
  };
2803
2830
  }, {
2804
- readonly id: "previousChange";
2805
- readonly shape: "icon";
2806
- readonly labelKey: "review.previousChange";
2831
+ readonly id: 'previousChange';
2832
+ readonly shape: 'icon';
2833
+ readonly labelKey: 'review.previousChange';
2807
2834
  readonly defaultToolbar: false;
2808
2835
  readonly paths: readonly string[];
2809
2836
  readonly state: {
2810
- readonly kind: "command";
2837
+ readonly kind: 'command';
2811
2838
  };
2812
2839
  }, {
2813
- readonly id: "nextChange";
2814
- readonly shape: "icon";
2815
- readonly labelKey: "review.nextChange";
2840
+ readonly id: 'nextChange';
2841
+ readonly shape: 'icon';
2842
+ readonly labelKey: 'review.nextChange';
2816
2843
  readonly defaultToolbar: false;
2817
2844
  readonly paths: readonly string[];
2818
2845
  readonly state: {
2819
- readonly kind: "command";
2846
+ readonly kind: 'command';
2820
2847
  };
2821
2848
  }, {
2822
- readonly id: "acceptAllChanges";
2823
- readonly shape: "icon";
2824
- readonly labelKey: "review.acceptAllChanges";
2849
+ readonly id: 'acceptAllChanges';
2850
+ readonly shape: 'icon';
2851
+ readonly labelKey: 'review.acceptAllChanges';
2825
2852
  readonly defaultToolbar: false;
2826
2853
  readonly paths: readonly string[];
2827
2854
  readonly state: {
2828
- readonly kind: "command";
2855
+ readonly kind: 'command';
2829
2856
  };
2830
2857
  }, {
2831
- readonly id: "rejectAllChanges";
2832
- readonly shape: "icon";
2833
- readonly labelKey: "review.rejectAllChanges";
2858
+ readonly id: 'rejectAllChanges';
2859
+ readonly shape: 'icon';
2860
+ readonly labelKey: 'review.rejectAllChanges';
2834
2861
  readonly defaultToolbar: false;
2835
2862
  readonly paths: readonly string[];
2836
2863
  readonly state: {
2837
- readonly kind: "command";
2864
+ readonly kind: 'command';
2838
2865
  };
2839
2866
  }, {
2840
- readonly id: "paragraphMarks";
2841
- readonly shape: "icon";
2842
- readonly labelKey: "formattingBar.paragraphMarks";
2867
+ readonly id: 'paragraphMarks';
2868
+ readonly shape: 'icon';
2869
+ readonly labelKey: 'formattingBar.paragraphMarks';
2843
2870
  readonly defaultToolbar: false;
2844
2871
  readonly paths: readonly string[];
2845
2872
  readonly state: {
2846
- readonly kind: "command";
2873
+ readonly kind: 'command';
2847
2874
  };
2848
2875
  }, {
2849
- readonly id: "protectDocument";
2850
- readonly shape: "icon";
2851
- readonly labelKey: "review.protectDocument";
2876
+ readonly id: 'protectDocument';
2877
+ readonly shape: 'icon';
2878
+ readonly labelKey: 'review.protectDocument';
2852
2879
  readonly defaultToolbar: false;
2853
2880
  readonly paths: readonly string[];
2854
2881
  readonly state: {
2855
- readonly kind: "command";
2882
+ readonly kind: 'command';
2856
2883
  };
2857
2884
  }, {
2858
- readonly id: "comments";
2859
- readonly shape: "icon";
2860
- readonly labelKey: "formattingBar.commentsAndChanges";
2885
+ readonly id: 'comments';
2886
+ readonly shape: 'icon';
2887
+ readonly labelKey: 'formattingBar.commentsAndChanges';
2861
2888
  readonly paths: readonly string[];
2862
2889
  readonly state: {
2863
- readonly kind: "command";
2890
+ readonly kind: 'command';
2864
2891
  };
2865
2892
  }, {
2866
- readonly id: "authors";
2867
- readonly shape: "dropdown";
2868
- readonly labelKey: "reviewers.label";
2893
+ readonly id: 'authors';
2894
+ readonly shape: 'dropdown';
2895
+ readonly labelKey: 'reviewers.label';
2869
2896
  readonly paths: readonly string[];
2870
2897
  readonly defaultToolbar: false;
2871
2898
  readonly state: {
2872
- readonly kind: "command";
2899
+ readonly kind: 'command';
2873
2900
  };
2874
2901
  }, {
2875
- readonly id: "editingMode";
2876
- readonly shape: "dropdown";
2877
- readonly labelKey: "editingMode.label";
2878
- readonly valueKey: "editingMode.editing";
2902
+ readonly id: 'editingMode';
2903
+ readonly shape: 'dropdown';
2904
+ readonly labelKey: 'editingMode.label';
2905
+ readonly valueKey: 'editingMode.editing';
2879
2906
  readonly paths: readonly string[];
2880
2907
  readonly state: {
2881
- readonly kind: "command";
2908
+ readonly kind: 'command';
2882
2909
  };
2883
2910
  }];
2884
2911
  }, {
2885
- readonly id: "contentControl";
2886
- readonly labelKey: "contentControl.group";
2912
+ readonly id: 'contentControl';
2913
+ readonly labelKey: 'contentControl.group';
2887
2914
  readonly contextual: true;
2888
2915
  readonly controls: readonly [{
2889
- readonly id: "showAll";
2890
- readonly labelKey: "contentControl.showAll";
2916
+ readonly id: 'showAll';
2917
+ readonly labelKey: 'contentControl.showAll';
2891
2918
  readonly paths: readonly string[];
2892
2919
  readonly state: {
2893
- readonly kind: "command";
2920
+ readonly kind: 'command';
2894
2921
  };
2895
2922
  }, {
2896
- readonly id: "formFill";
2897
- readonly labelKey: "contentControl.formFill";
2923
+ readonly id: 'formFill';
2924
+ readonly labelKey: 'contentControl.formFill';
2898
2925
  readonly paths: readonly string[];
2899
2926
  readonly state: {
2900
- readonly kind: "command";
2927
+ readonly kind: 'command';
2901
2928
  };
2902
2929
  }, {
2903
- readonly id: "inspector";
2904
- readonly labelKey: "contentControl.inspector";
2930
+ readonly id: 'inspector';
2931
+ readonly labelKey: 'contentControl.inspector';
2905
2932
  readonly paths: readonly string[];
2906
2933
  readonly state: {
2907
- readonly kind: "command";
2934
+ readonly kind: 'command';
2908
2935
  };
2909
2936
  }, {
2910
- readonly id: "remove";
2911
- readonly labelKey: "contentControl.remove";
2937
+ readonly id: 'remove';
2938
+ readonly labelKey: 'contentControl.remove';
2912
2939
  readonly paths: readonly string[];
2913
2940
  readonly state: {
2914
- readonly kind: "command";
2941
+ readonly kind: 'command';
2915
2942
  };
2916
2943
  }];
2917
2944
  }, {
2918
- readonly id: "image";
2919
- readonly labelKey: "formattingBar.groups.image";
2945
+ readonly id: 'image';
2946
+ readonly labelKey: 'formattingBar.groups.image';
2920
2947
  readonly contextual: true;
2921
2948
  readonly controls: readonly [{
2922
- readonly id: "insert";
2923
- readonly labelKey: "toolbar.image";
2949
+ readonly id: 'insert';
2950
+ readonly labelKey: 'toolbar.image';
2924
2951
  readonly paths: readonly string[];
2925
2952
  readonly state: {
2926
- readonly kind: "command";
2953
+ readonly kind: 'command';
2927
2954
  };
2928
2955
  }, {
2929
- readonly id: "properties";
2930
- readonly labelKey: "formattingBar.imagePropertiesShortcut";
2956
+ readonly id: 'properties';
2957
+ readonly labelKey: 'formattingBar.imagePropertiesShortcut';
2931
2958
  readonly paths: readonly string[];
2932
2959
  readonly state: {
2933
- readonly kind: "command";
2960
+ readonly kind: 'command';
2934
2961
  };
2935
2962
  }, {
2936
- readonly id: "wrap";
2937
- readonly shape: "dropdown";
2938
- readonly labelKey: "formattingBar.imageWrap";
2963
+ readonly id: 'wrap';
2964
+ readonly shape: 'dropdown';
2965
+ readonly labelKey: 'formattingBar.imageWrap';
2939
2966
  readonly paths: readonly string[];
2940
- readonly valueKey: "imageWrap.inline";
2967
+ readonly valueKey: 'imageWrap.inline';
2941
2968
  readonly state: {
2942
- readonly kind: "value";
2969
+ readonly kind: 'value';
2943
2970
  };
2944
2971
  }, {
2945
- readonly id: "altText";
2946
- readonly shape: "dropdown";
2947
- readonly labelKey: "formattingBar.altText";
2972
+ readonly id: 'altText';
2973
+ readonly shape: 'dropdown';
2974
+ readonly labelKey: 'formattingBar.altText';
2948
2975
  readonly paths: null;
2949
- readonly valueKey: "imageProperties.altText";
2976
+ readonly valueKey: 'imageProperties.altText';
2950
2977
  readonly state: {
2951
- readonly kind: "value";
2978
+ readonly kind: 'value';
2952
2979
  };
2953
2980
  }];
2954
2981
  }, {
2955
- readonly id: "table";
2956
- readonly labelKey: "formattingBar.groups.table";
2982
+ readonly id: 'table';
2983
+ readonly labelKey: 'formattingBar.groups.table';
2957
2984
  readonly contextual: true;
2958
2985
  readonly controls: readonly [{
2959
- readonly id: "insert";
2960
- readonly labelKey: "toolbar.table";
2986
+ readonly id: 'insert';
2987
+ readonly labelKey: 'toolbar.table';
2961
2988
  readonly paths: readonly string[];
2962
2989
  readonly state: {
2963
- readonly kind: "command";
2990
+ readonly kind: 'command';
2964
2991
  };
2965
2992
  }, {
2966
- readonly id: "borderTarget";
2967
- readonly shape: "dropdown";
2968
- readonly labelKey: "table.borders.tooltip";
2993
+ readonly id: 'borderTarget';
2994
+ readonly shape: 'dropdown';
2995
+ readonly labelKey: 'table.borders.tooltip';
2969
2996
  readonly paths: readonly string[];
2970
2997
  readonly state: {
2971
- readonly kind: "value";
2998
+ readonly kind: 'value';
2972
2999
  };
2973
3000
  }, {
2974
- readonly id: "borderColor";
2975
- readonly shape: "colorSplit";
2976
- readonly swatch: "#000000";
2977
- readonly labelKey: "table.borderColor";
3001
+ readonly id: 'borderColor';
3002
+ readonly shape: 'colorSplit';
3003
+ readonly swatch: '#000000';
3004
+ readonly labelKey: 'table.borderColor';
2978
3005
  readonly paths: readonly string[];
2979
3006
  readonly state: {
2980
- readonly kind: "value";
3007
+ readonly kind: 'value';
2981
3008
  };
2982
3009
  }, {
2983
- readonly id: "borderStyle";
2984
- readonly shape: "dropdown";
2985
- readonly labelKey: "table.borders.styleAriaLabel";
3010
+ readonly id: 'borderStyle';
3011
+ readonly shape: 'dropdown';
3012
+ readonly labelKey: 'table.borders.styleAriaLabel';
2986
3013
  readonly paths: readonly string[];
2987
3014
  readonly state: {
2988
- readonly kind: "value";
3015
+ readonly kind: 'value';
2989
3016
  };
2990
3017
  }, {
2991
- readonly id: "borderWidth";
2992
- readonly shape: "dropdown";
2993
- readonly labelKey: "table.borderWidth";
3018
+ readonly id: 'borderWidth';
3019
+ readonly shape: 'dropdown';
3020
+ readonly labelKey: 'table.borderWidth';
2994
3021
  readonly paths: readonly string[];
2995
3022
  readonly state: {
2996
- readonly kind: "value";
3023
+ readonly kind: 'value';
2997
3024
  };
2998
3025
  }, {
2999
- readonly id: "cellFill";
3000
- readonly shape: "colorSplit";
3001
- readonly swatch: "#ffffff";
3002
- readonly labelKey: "table.cellFillColor";
3026
+ readonly id: 'cellFill';
3027
+ readonly shape: 'colorSplit';
3028
+ readonly swatch: '#ffffff';
3029
+ readonly labelKey: 'table.cellFillColor';
3003
3030
  readonly paths: readonly string[];
3004
3031
  readonly state: {
3005
- readonly kind: "value";
3032
+ readonly kind: 'value';
3006
3033
  };
3007
3034
  }];
3008
3035
  }, {
3009
- readonly id: "paragraph";
3010
- readonly labelKey: "dialogs.paragraph.title";
3036
+ readonly id: 'paragraph';
3037
+ readonly labelKey: 'dialogs.paragraph.title';
3011
3038
  readonly contextual: true;
3012
3039
  readonly controls: readonly [{
3013
- readonly id: "dialog";
3014
- readonly labelKey: "lineSpacing.options";
3040
+ readonly id: 'dialog';
3041
+ readonly labelKey: 'lineSpacing.options';
3015
3042
  readonly paths: readonly string[];
3016
3043
  readonly state: {
3017
- readonly kind: "command";
3044
+ readonly kind: 'command';
3018
3045
  };
3019
3046
  }];
3020
3047
  }, {
3021
- readonly id: "file";
3022
- readonly labelKey: "toolbar.file";
3048
+ readonly id: 'file';
3049
+ readonly labelKey: 'toolbar.file';
3023
3050
  readonly contextual: true;
3024
3051
  readonly controls: readonly [{
3025
- readonly id: "open";
3026
- readonly labelKey: "toolbar.open";
3052
+ readonly id: 'open';
3053
+ readonly labelKey: 'toolbar.open';
3027
3054
  readonly paths: readonly string[];
3028
3055
  readonly state: {
3029
- readonly kind: "load";
3056
+ readonly kind: 'load';
3030
3057
  };
3031
3058
  }, {
3032
- readonly id: "save";
3033
- readonly labelKey: "toolbar.saveShortcut";
3059
+ readonly id: 'save';
3060
+ readonly labelKey: 'toolbar.saveShortcut';
3034
3061
  readonly paths: readonly string[];
3035
3062
  readonly state: {
3036
- readonly kind: "save";
3063
+ readonly kind: 'save';
3037
3064
  };
3038
3065
  }, {
3039
- readonly id: "exportMarkdown";
3040
- readonly labelKey: "toolbar.exportMarkdown";
3066
+ readonly id: 'exportMarkdown';
3067
+ readonly labelKey: 'toolbar.exportMarkdown';
3041
3068
  readonly paths: readonly string[];
3042
3069
  readonly state: {
3043
- readonly kind: "export";
3070
+ readonly kind: 'export';
3044
3071
  };
3045
3072
  }, {
3046
- readonly id: "exportPdf";
3047
- readonly labelKey: "toolbar.exportPdf";
3073
+ readonly id: 'exportPdf';
3074
+ readonly labelKey: 'toolbar.exportPdf';
3048
3075
  readonly paths: readonly string[];
3049
3076
  readonly state: {
3050
- readonly kind: "export";
3077
+ readonly kind: 'export';
3051
3078
  };
3052
3079
  }, {
3053
- readonly id: "print";
3054
- readonly labelKey: "toolbar.print";
3080
+ readonly id: 'print';
3081
+ readonly labelKey: 'toolbar.print';
3055
3082
  readonly paths: readonly string[];
3056
3083
  readonly state: {
3057
- readonly kind: "export";
3084
+ readonly kind: 'export';
3058
3085
  };
3059
3086
  }, {
3060
- readonly id: "pageSetup";
3061
- readonly labelKey: "toolbar.pageSetup";
3087
+ readonly id: 'pageSetup';
3088
+ readonly labelKey: 'toolbar.pageSetup';
3062
3089
  readonly paths: readonly string[];
3063
3090
  readonly state: {
3064
- readonly kind: "command";
3091
+ readonly kind: 'command';
3065
3092
  };
3066
3093
  }];
3067
3094
  }, {
3068
- readonly id: "insert";
3069
- readonly labelKey: "toolbar.insert";
3095
+ readonly id: 'insert';
3096
+ readonly labelKey: 'toolbar.insert';
3070
3097
  readonly contextual: true;
3071
3098
  readonly controls: readonly [{
3072
- readonly id: "footnote";
3073
- readonly labelKey: "toolbar.insertFootnote";
3099
+ readonly id: 'textBox';
3100
+ readonly labelKey: 'toolbar.insertTextBox';
3101
+ readonly paths: readonly string[];
3102
+ readonly state: {
3103
+ readonly kind: 'command';
3104
+ };
3105
+ }, {
3106
+ readonly id: 'footnote';
3107
+ readonly labelKey: 'toolbar.insertFootnote';
3074
3108
  readonly paths: readonly string[];
3075
3109
  readonly state: {
3076
- readonly kind: "command";
3110
+ readonly kind: 'command';
3077
3111
  };
3078
3112
  }, {
3079
- readonly id: "endnote";
3080
- readonly labelKey: "toolbar.insertEndnote";
3113
+ readonly id: 'endnote';
3114
+ readonly labelKey: 'toolbar.insertEndnote';
3081
3115
  readonly paths: readonly string[];
3082
3116
  readonly state: {
3083
- readonly kind: "command";
3117
+ readonly kind: 'command';
3084
3118
  };
3085
3119
  }, {
3086
- readonly id: "pageNumber";
3087
- readonly labelKey: "headerFooter.insertPageNumber";
3120
+ readonly id: 'pageNumber';
3121
+ readonly labelKey: 'headerFooter.insertPageNumber';
3088
3122
  readonly paths: readonly string[];
3089
3123
  readonly state: {
3090
- readonly kind: "command";
3124
+ readonly kind: 'command';
3091
3125
  };
3092
3126
  }, {
3093
- readonly id: "totalPages";
3094
- readonly labelKey: "headerFooter.insertTotalPages";
3127
+ readonly id: 'totalPages';
3128
+ readonly labelKey: 'headerFooter.insertTotalPages';
3095
3129
  readonly paths: readonly string[];
3096
3130
  readonly state: {
3097
- readonly kind: "command";
3131
+ readonly kind: 'command';
3098
3132
  };
3099
3133
  }, {
3100
- readonly id: "sectionPages";
3101
- readonly labelKey: "headerFooter.insertSectionPages";
3134
+ readonly id: 'sectionPages';
3135
+ readonly labelKey: 'headerFooter.insertSectionPages';
3102
3136
  readonly paths: readonly string[];
3103
3137
  readonly state: {
3104
- readonly kind: "command";
3138
+ readonly kind: 'command';
3105
3139
  };
3106
3140
  }, {
3107
- readonly id: "pageXofY";
3108
- readonly labelKey: "headerFooter.insertPageXofY";
3141
+ readonly id: 'pageXofY';
3142
+ readonly labelKey: 'headerFooter.insertPageXofY';
3109
3143
  readonly paths: readonly string[];
3110
3144
  readonly state: {
3111
- readonly kind: "command";
3145
+ readonly kind: 'command';
3112
3146
  };
3113
3147
  }, {
3114
- readonly id: "pageBreak";
3115
- readonly labelKey: "toolbar.pageBreak";
3148
+ readonly id: 'pageBreak';
3149
+ readonly labelKey: 'toolbar.pageBreak';
3116
3150
  readonly paths: readonly string[];
3117
3151
  readonly state: {
3118
- readonly kind: "command";
3152
+ readonly kind: 'command';
3119
3153
  };
3120
3154
  }, {
3121
- readonly id: "sectionBreakNextPage";
3122
- readonly labelKey: "toolbar.sectionBreakNextPage";
3155
+ readonly id: 'sectionBreakNextPage';
3156
+ readonly labelKey: 'toolbar.sectionBreakNextPage';
3123
3157
  readonly paths: readonly string[];
3124
3158
  readonly state: {
3125
- readonly kind: "command";
3159
+ readonly kind: 'command';
3126
3160
  };
3127
3161
  }, {
3128
- readonly id: "sectionBreakContinuous";
3129
- readonly labelKey: "toolbar.sectionBreakContinuous";
3162
+ readonly id: 'sectionBreakContinuous';
3163
+ readonly labelKey: 'toolbar.sectionBreakContinuous';
3130
3164
  readonly paths: readonly string[];
3131
3165
  readonly state: {
3132
- readonly kind: "command";
3166
+ readonly kind: 'command';
3133
3167
  };
3134
3168
  }, {
3135
- readonly id: "toc";
3136
- readonly labelKey: "toolbar.tableOfContents";
3169
+ readonly id: 'toc';
3170
+ readonly labelKey: 'toolbar.tableOfContents';
3137
3171
  readonly paths: readonly string[];
3138
3172
  readonly state: {
3139
- readonly kind: "command";
3173
+ readonly kind: 'command';
3140
3174
  };
3141
3175
  }];
3142
3176
  }];
@@ -3154,7 +3188,7 @@ type ChromeGroupId = 'history' | 'zoom' | 'styles' | 'font' | 'text' | 'script'
3154
3188
  *
3155
3189
  * @public
3156
3190
  */
3157
- 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.comments' | 'review.paragraphMarks' | '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' | 'file.open' | 'file.save' | 'file.exportMarkdown' | 'file.exportPdf' | 'file.print' | 'paragraph.dialog' | 'file.pageSetup' | 'insert.footnote' | 'insert.endnote' | 'insert.pageNumber' | 'insert.totalPages' | 'insert.sectionPages' | 'insert.pageXofY' | 'insert.pageBreak' | 'insert.sectionBreakNextPage' | 'insert.sectionBreakContinuous' | 'insert.toc';
3191
+ 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.comments' | 'review.paragraphMarks' | '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' | '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';
3158
3192
  /**
3159
3193
  * Every control id in the chrome, as a literal union. Unique WITHIN a group, not
3160
3194
  * globally (`image.insert` / `table.insert`) — key consumers on {@link ChromeSlotId}.
@@ -3270,12 +3304,7 @@ declare const CHROME_MENUS: readonly ChromeMenu[];
3270
3304
  declare function chromeMenuSlots(): readonly ChromeSlotId[];
3271
3305
  /** Total controls, so a parity test can assert none were dropped. */
3272
3306
  declare function chromeControlCount(): number;
3273
- /**
3274
- * i18n key for the tooltip on a control an ADAPTER renders but cannot drive yet — a
3275
- * value slot in a toolbar that has grown no picker for it, say. It is never the reason
3276
- * a control is disabled: when the ENGINE refuses, the tooltip is the engine's own
3277
- * `disabledReason`, never an adapter paraphrase.
3278
- */
3307
+ /** Tooltip for adapter controls without a picker; command refusals use engine reasons. */
3279
3308
  declare const CHROME_UNAVAILABLE_KEY = "formattingBar.unavailableInPreview";
3280
3309
 
3281
3310
  /** Material Symbol name → SVG path data (viewBox "0 -960 960 960"). */