@docx-editor.dev/core 2.27.0 → 2.28.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.
- package/dist/automation.cjs +1 -1
- package/dist/automation.d.ts +26 -13
- package/dist/automation.js +1 -1
- package/dist/binding.cjs +1 -1
- package/dist/binding.d.ts +20 -9
- package/dist/binding.js +1 -1
- package/dist/chunk-2GO5T2JU.cjs +1 -0
- package/dist/chunk-2RC2EPND.js +3 -0
- package/dist/chunk-4GBTELJV.cjs +28 -0
- package/dist/chunk-4R3TEXMN.js +18 -0
- package/dist/chunk-5CSUYANV.js +1 -0
- package/dist/chunk-6APGXLBB.cjs +3 -0
- package/dist/chunk-6AWEKBLB.cjs +1 -0
- package/dist/chunk-6EYYL7FL.js +1 -0
- package/dist/chunk-E7BQA6UP.js +2 -0
- package/dist/chunk-EO4C5QJW.cjs +2 -0
- package/dist/chunk-ETTO6GK3.js +1 -0
- package/dist/chunk-FIJZIQXA.cjs +18 -0
- package/dist/chunk-FRXAOVTB.js +28 -0
- package/dist/chunk-J6BVWIDB.js +2 -0
- package/dist/chunk-JGNVNT2A.cjs +2 -0
- package/dist/chunk-K5U2PLDP.cjs +2 -0
- package/dist/chunk-KKIJG3C6.js +2 -0
- package/dist/chunk-LWDSDCMO.js +27 -0
- package/dist/chunk-O2AL2HSJ.cjs +1 -0
- package/dist/chunk-QMLCVPCD.cjs +1 -0
- package/dist/chunk-RCHS4ZEH.cjs +27 -0
- package/dist/chunk-SRPILEWV.cjs +5 -0
- package/dist/chunk-TSLBZ26X.js +1 -0
- package/dist/chunk-VDNNLG6X.js +2 -0
- package/dist/chunk-VHAVHCQY.js +7 -0
- package/dist/chunk-VX43VBAX.cjs +7 -0
- package/dist/chunk-Z6WBFXJU.js +5 -0
- package/dist/{chunk-2GK7YQB2.cjs → chunk-ZUHOMK52.cjs} +1 -1
- package/dist/collaboration/replication.cjs +1 -1
- package/dist/collaboration/replication.d.ts +41 -5
- package/dist/collaboration/replication.js +1 -1
- package/dist/collaboration.cjs +1 -1
- package/dist/collaboration.d.ts +98 -6
- package/dist/collaboration.js +1 -1
- package/dist/contracts/document.d.ts +17 -2
- package/dist/contracts/editor.d.ts +19 -9
- package/dist/contracts/interaction.d.ts +29 -0
- package/dist/contracts/modules.d.ts +31 -7
- package/dist/contracts/types.d.ts +10 -1
- package/dist/{custom-node-writes-Vzpq9I8_.d.ts → custom-node-writes-cvL5rhcD.d.ts} +2 -2
- package/dist/{document-protection-9zpIHWTE.d.ts → document-protection-BAGVGqaP.d.ts} +1 -1
- package/dist/{editor-B3OBYNrF.d.ts → editor-Ci7IZGmG.d.ts} +392 -140
- package/dist/editor.cjs +1 -1
- package/dist/editor.css +5 -5
- package/dist/editor.d.ts +415 -30
- package/dist/editor.js +1 -1
- package/dist/export.cjs +2 -2
- package/dist/export.d.ts +23 -13
- package/dist/export.js +2 -2
- package/dist/failure-NS2lsya4.d.ts +115 -0
- package/dist/{font-resolver-DN0xNOf_.d.ts → font-resolver-BVQB14qT.d.ts} +1 -1
- package/dist/{headless-document-view-ICYqNkQ1.d.ts → headless-document-view-qH331moE.d.ts} +2 -2
- package/dist/{image-resources-BDFxcu7W.d.ts → image-resources-BN-hUgCn.d.ts} +9 -9
- package/dist/{index-CkQVRJtJ.d.ts → index-Bsg7oIKP.d.ts} +234 -111
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +46 -19
- package/dist/index.js +1 -1
- package/dist/{layout-shaping-BvZD_VKP.d.ts → layout-shaping-BEyuiQOk.d.ts} +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.d.ts +170 -78
- package/dist/layout.js +1 -1
- package/dist/{note-properties-CkAk7g-n.d.ts → note-properties-4Y9o6Gyk.d.ts} +1 -1
- package/dist/{omml-equation-DuczgG5o.d.ts → omml-equation-CuzBL5DD.d.ts} +1 -1
- package/dist/output.cjs +1 -1
- package/dist/output.d.ts +18 -8
- package/dist/output.js +1 -1
- package/dist/{protocol-aKYr8r3u.d.ts → protocol-Bqk4Izjc.d.ts} +44 -4
- package/dist/review-pane-D9jm8DcY.d.ts +128 -0
- package/dist/{review-paragraph-order-Ddj5d6rp.d.ts → review-paragraph-order-DT-n6ouC.d.ts} +5 -2
- package/dist/{revision-projection-CSNFudZY.d.ts → revision-projection-DZ4kKVev.d.ts} +1 -1
- package/dist/{semantic-cell-selection-DoqYCz_F.d.ts → semantic-cell-selection-D9D1KSXq.d.ts} +8 -6
- package/dist/{semantic-interaction-G0bjmmmk.d.ts → semantic-interaction-CIC-PooQ.d.ts} +25 -34
- package/dist/{semantic-paint-CsMzF8-O.d.ts → semantic-paint-BME37OMv.d.ts} +4 -4
- package/dist/{semantic-record-queries-1du6lQqS.d.ts → semantic-record-queries-CBlZqZNa.d.ts} +1 -1
- package/dist/{semantic-records-B9OolWGN.d.ts → semantic-records-4B3WwFAi.d.ts} +74 -42
- package/dist/store.cjs +1 -1
- package/dist/store.d.ts +157 -134
- package/dist/store.js +1 -1
- package/dist/{tree-package-fragment-DYZIk1rY.d.ts → tree-package-fragment-BeeKxDw8.d.ts} +77 -57
- package/dist/{tree-session-contract-DQVJOOkv.d.ts → tree-session-contract-CVbmlMlq.d.ts} +7 -5
- package/dist/{types-barrel-BFKR8Pzp.d.ts → types-barrel-D3xCgQX6.d.ts} +462 -362
- package/package.json +2 -2
- package/dist/chunk-4KZ6L5YF.cjs +0 -15
- package/dist/chunk-55AT3MOU.cjs +0 -25
- package/dist/chunk-6ZQMII6V.js +0 -1
- package/dist/chunk-7IGCWG4H.js +0 -2
- package/dist/chunk-7MYITTAH.js +0 -5
- package/dist/chunk-AVKVRU7Z.cjs +0 -5
- package/dist/chunk-CWRBFNK5.cjs +0 -5
- package/dist/chunk-DGPA3TST.cjs +0 -27
- package/dist/chunk-DNXVNQEO.js +0 -1
- package/dist/chunk-FQN4KSFL.cjs +0 -7
- package/dist/chunk-GVUOWHTO.cjs +0 -1
- package/dist/chunk-GWQJ5774.js +0 -5
- package/dist/chunk-HAQ72KD7.js +0 -1
- package/dist/chunk-HO5XFO32.cjs +0 -3
- package/dist/chunk-IGR23DV2.js +0 -1
- package/dist/chunk-JSIX2EOH.js +0 -3
- package/dist/chunk-K246T47S.cjs +0 -1
- package/dist/chunk-KAXOGCGA.js +0 -1
- package/dist/chunk-LZLTN5A3.cjs +0 -1
- package/dist/chunk-OHAXVTWG.cjs +0 -1
- package/dist/chunk-S74GRBNE.js +0 -7
- package/dist/chunk-UBLUVNZR.js +0 -27
- package/dist/chunk-UMRSBLO7.js +0 -15
- package/dist/chunk-VIPMGGUT.js +0 -25
- package/dist/chunk-WG4KMSX2.cjs +0 -2
- package/dist/chunk-WRLKVNNR.cjs +0 -1
- package/dist/chunk-ZU7IVN6G.js +0 -2
- package/dist/failure-BIPVQbRm.d.ts +0 -65
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import { W as TreeDocOp,
|
|
2
|
-
import {
|
|
3
|
-
import './
|
|
1
|
+
import { W as TreeDocOp, co as TextFormFieldRange, cn as TextFormFieldOptions, au as Unsubscribe, E as ExecResult, ao as DrawingPositionInput, aM as DrawingTransform, A as ParagraphTabStop, y as IndentFormatting, z as ParagraphFlags, aB as ParagraphDisagreements, aj as DrawingTreeDocOp, at as SelectionPin, Q as OoxmlPackage, g as ReviewRevisionKind, an as ImageWrapTarget } from './types-barrel-D3xCgQX6.js';
|
|
2
|
+
import { k as FieldResultsMode, I as InsertImageInput, S as StoryScope, A as ApplyImagePropertiesInput, i as ImageIntentResult } from './tree-package-fragment-BeeKxDw8.js';
|
|
3
|
+
import { a as ImageDecodePort, S as SupportedImageMime } from './image-resources-BN-hUgCn.js';
|
|
4
|
+
import './document-protection-BAGVGqaP.js';
|
|
4
5
|
import { EditorModule, ReviewModuleContribution } from './contracts/modules.js';
|
|
5
|
-
import { D as DocumentSource, a as FontConfiguration, Z as ZoomMode, E as EditorFontError,
|
|
6
|
-
import { e as RevisionMarkupOptions, a as ReviewDisplayMode, i as RevisionMarkupChromeHandlers, d as ResolvedRevisionMarkup } from './revision-projection-
|
|
7
|
-
import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-
|
|
8
|
-
import { e as FontConfigurationFragment, g as FontResolver, i as MarkedFontResolver, f as FontResolutionRequest } from './font-resolver-
|
|
6
|
+
import { D as DocumentSource, a as FontConfiguration, Z as ZoomMode, E as EditorFontError, i as Editor, e as EditorCommand, C as CanResult, p as SelectedImageState, z as FormatPainterSurfaceState, g as ScrollPlacement, r as TrackedChangePredicate, q as TrackedChangeFilterMode, F as FontFaceRequest, b as FontSource, I as ImageContext, B as TableBorderEdgeTarget, G as TableBorderSpec, J as TableBorderStyle, K as TableContext } from './editor-Ci7IZGmG.js';
|
|
7
|
+
import { e as RevisionMarkupOptions, a as ReviewDisplayMode, i as RevisionMarkupChromeHandlers, d as ResolvedRevisionMarkup } from './revision-projection-DZ4kKVev.js';
|
|
8
|
+
import { S as SemanticPosition, a as SemanticSelection, N as NavigationCommand } from './semantic-interaction-CIC-PooQ.js';
|
|
9
|
+
import { e as FontConfigurationFragment, g as FontResolver, i as MarkedFontResolver, f as FontResolutionRequest } from './font-resolver-BVQB14qT.js';
|
|
10
|
+
import { R as ReviewPaneOptions } from './review-pane-D9jm8DcY.js';
|
|
9
11
|
import { EditorCollaborationSession, CollaborationRemoteSelection, CollaborationModuleContribution } from './collaboration.js';
|
|
10
|
-
import { d as RevisionStyles, R as ReviewAuthorInfo, c as RevisionAuthorStyle, F as FieldShadingMode, f as DrawingPaintStrings } from './semantic-paint-
|
|
11
|
-
import { b as ResolvedFootnoteProperties, R as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-
|
|
12
|
-
import { S as SemanticLayout, T as TextMeasurer, C as ContentControlBoundaryRecord } from './semantic-records-
|
|
13
|
-
import { B as BookmarkIndex } from './custom-node-writes-
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { C as CollaborationStatus } from './failure-BIPVQbRm.js';
|
|
12
|
+
import { d as RevisionStyles, R as ReviewAuthorInfo, c as RevisionAuthorStyle, F as FieldShadingMode, f as DrawingPaintStrings } from './semantic-paint-BME37OMv.js';
|
|
13
|
+
import { b as ResolvedFootnoteProperties, R as ResolvedEndnoteProperties, A as AuthoredNoteProperties } from './note-properties-4Y9o6Gyk.js';
|
|
14
|
+
import { S as SemanticLayout, T as TextMeasurer, C as ContentControlBoundaryRecord } from './semantic-records-4B3WwFAi.js';
|
|
15
|
+
import { B as BookmarkIndex } from './custom-node-writes-cvL5rhcD.js';
|
|
16
|
+
import { C as CellSelection, S as SectionProperties } from './semantic-cell-selection-D9D1KSXq.js';
|
|
17
|
+
import { T as TreeDocxSessionView, a as TreeApplyResult } from './tree-session-contract-CVbmlMlq.js';
|
|
18
|
+
import { C as CollaborationStatus } from './failure-NS2lsya4.js';
|
|
18
19
|
import { V as ViewScope, b as EditorExecOptions } from './editor-scope-OHPwVQ5l.js';
|
|
19
20
|
import './contracts/document.js';
|
|
20
21
|
import './contracts/interaction.js';
|
|
@@ -140,6 +141,31 @@ interface TextFormFieldChromeHandlers {
|
|
|
140
141
|
readonly onRequest?: (session: TextFormFieldDialogSession) => void;
|
|
141
142
|
}
|
|
142
143
|
|
|
144
|
+
/**
|
|
145
|
+
* Receives the element that shows the loading indicator on the first page, while a large
|
|
146
|
+
* document lays out its remaining pages.
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```ts
|
|
150
|
+
* editor.setOpeningIndicatorHost({
|
|
151
|
+
* publish(element) {
|
|
152
|
+
* // Render your indicator into `element`, or remove it when `element` is null.
|
|
153
|
+
* },
|
|
154
|
+
* });
|
|
155
|
+
* ```
|
|
156
|
+
*
|
|
157
|
+
* @public
|
|
158
|
+
*/
|
|
159
|
+
interface OpeningIndicatorHost {
|
|
160
|
+
/**
|
|
161
|
+
* Called with the indicator element when the first pages show, and with `null` when the
|
|
162
|
+
* remaining pages are laid out or the open is abandoned. The element is empty while a host
|
|
163
|
+
* is set: render the host's content into it. It is centered on the first page, at most 30%
|
|
164
|
+
* of the window height below the page top, and scrolls with the document.
|
|
165
|
+
*/
|
|
166
|
+
publish(element: HTMLElement | null): void;
|
|
167
|
+
}
|
|
168
|
+
|
|
143
169
|
/**
|
|
144
170
|
* A hyperlink as the surface reports it: its identity, where it sits, and the SANITIZED
|
|
145
171
|
* target. `href: null` is an inert link — a refused scheme or a dangling relationship — which
|
|
@@ -372,6 +398,23 @@ interface DocxEditorConfig {
|
|
|
372
398
|
revisionMarkup?: RevisionMarkupOptions;
|
|
373
399
|
/** Initial review projection. Markup modes require a review module. */
|
|
374
400
|
reviewDisplayMode?: ReviewDisplayMode;
|
|
401
|
+
/**
|
|
402
|
+
* How the reader edits saved field results.
|
|
403
|
+
*
|
|
404
|
+
* - `'atomic'` (the DEFAULT) — every field is one unit: typing beside a field lands before
|
|
405
|
+
* or after it, and Backspace removes it whole.
|
|
406
|
+
* - `'editable'` — fields that show their saved result (DATE, TIME, MERGEFIELD, HYPERLINK
|
|
407
|
+
* display text, QUOTE, FILENAME, FILLIN, SEQ, and the save, print, and creation dates)
|
|
408
|
+
* accept typing, deletion, and selection inside the result. Fields the engine computes
|
|
409
|
+
* live (PAGE, NUMPAGES, REF, PAGEREF, DOCPROPERTY, and others) stay one unit.
|
|
410
|
+
*
|
|
411
|
+
* Editable results must be unnested. Simple fields inside complex field results are not
|
|
412
|
+
* supported in editable mode.
|
|
413
|
+
*
|
|
414
|
+
* Fixed for the instance. `'editable'` with a collaboration module throws a `TypeError`:
|
|
415
|
+
* shared paragraph text keeps every field one unit.
|
|
416
|
+
*/
|
|
417
|
+
fieldResults?: FieldResultsMode;
|
|
375
418
|
/** Override raster decode for insert/replace image commands; defaults to browser/headless. */
|
|
376
419
|
imageDecodePort?: ImageDecodePort;
|
|
377
420
|
/**
|
|
@@ -472,6 +515,25 @@ interface DocxEditorInstance extends Editor {
|
|
|
472
515
|
* mount, and it survives a document reload the way the hyperlink chrome does.
|
|
473
516
|
*/
|
|
474
517
|
setRemoteCaretLabelHost(host: RemoteCaretLabelHost | null): void;
|
|
518
|
+
/**
|
|
519
|
+
* Render the host's own loading indicator on the first page while a large document lays out
|
|
520
|
+
* its remaining pages, or restore the packaged spinner with `null`. The engine keeps owning
|
|
521
|
+
* the element and its place on the page; the host owns its content.
|
|
522
|
+
*
|
|
523
|
+
* Instance-only, like `setRemoteCaretLabelHost`, and tolerated at any time: a host set
|
|
524
|
+
* before the open applies when the first pages show. `DocxEditor.Loading` with `overlay`
|
|
525
|
+
* registers one for you, so set this only when you build your own loading screen.
|
|
526
|
+
*
|
|
527
|
+
* @example
|
|
528
|
+
* ```ts
|
|
529
|
+
* editor.setOpeningIndicatorHost({
|
|
530
|
+
* publish(element) {
|
|
531
|
+
* element?.replaceChildren(document.createTextNode('Opening…'));
|
|
532
|
+
* },
|
|
533
|
+
* });
|
|
534
|
+
* ```
|
|
535
|
+
*/
|
|
536
|
+
setOpeningIndicatorHost(host: OpeningIndicatorHost | null): void;
|
|
475
537
|
/**
|
|
476
538
|
* Monotonic version of the observable editor state. Bumps whenever anything
|
|
477
539
|
* `snapshot()` reports could have moved — a committed change, a selection move, zoom,
|
|
@@ -616,6 +678,26 @@ interface DocxEditorInstance extends Editor {
|
|
|
616
678
|
* Invalid settings throw TypeError without changing the previous settings.
|
|
617
679
|
*/
|
|
618
680
|
setRevisionMarkup(options: RevisionMarkupOptions): void;
|
|
681
|
+
/**
|
|
682
|
+
* Change the review pane settings: every field of `ReviewPaneOptions`, such as when the
|
|
683
|
+
* pane opens by itself and what it does when its card column does not fit. An omitted
|
|
684
|
+
* field keeps its value. Read the settings in force
|
|
685
|
+
* from `snapshot().reviewPane`. They stay in force across `load()` and are never saved into
|
|
686
|
+
* the document. This sets how the pane behaves; to open or close the pane itself, use
|
|
687
|
+
* `useReview().setPaneOpen` or the `toggleReviewPane` command.
|
|
688
|
+
*
|
|
689
|
+
* Returns `changed: false` on success, like every view-only call, because `changed` answers
|
|
690
|
+
* for the document; to detect a settings change, compare the `snapshot().reviewPane`
|
|
691
|
+
* reference, which changes only when a setting changes. Refused with `unsupported` when no review module is registered, and
|
|
692
|
+
* with `invalidArgs` for an unknown field or value. A refusal changes nothing.
|
|
693
|
+
*
|
|
694
|
+
* @example
|
|
695
|
+
* ```ts
|
|
696
|
+
* const result = editor.setReviewPaneOptions({ opening: 'manual', overflow: 'shrinkPage' });
|
|
697
|
+
* if (!result.ok) console.warn(result.reason);
|
|
698
|
+
* ```
|
|
699
|
+
*/
|
|
700
|
+
setReviewPaneOptions(options: ReviewPaneOptions): ExecResult;
|
|
619
701
|
/**
|
|
620
702
|
* Mount into `el`. If the instance holds pending document bytes (created without a
|
|
621
703
|
* container, or previously detached), they mount now — under the shaped measurer when
|
|
@@ -635,6 +717,37 @@ interface DocxEditorInstance extends Editor {
|
|
|
635
717
|
detach(): void;
|
|
636
718
|
}
|
|
637
719
|
|
|
720
|
+
/** Which of the eight resize handles a drag started from, by compass direction. */
|
|
721
|
+
type ImageResizeHandle = 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w' | 'nw';
|
|
722
|
+
/** EMUs per point. DrawingML stores extents in EMU; layout works in points. */
|
|
723
|
+
declare const EMU_PER_POINT = 12700;
|
|
724
|
+
/** Points to EMU, rounded — EMUs are integral in the file. */
|
|
725
|
+
declare function pointsToEmu(points: number): number;
|
|
726
|
+
/** EMU to points. Unrounded, so overlay geometry keeps sub-point precision during a drag. */
|
|
727
|
+
declare function emuToOverlayPoints(emu: number): number;
|
|
728
|
+
/**
|
|
729
|
+
* The extent a resize drag produces, in EMU.
|
|
730
|
+
*
|
|
731
|
+
* Computed from the drag's START extent rather than the previous frame's, so a drag that reverses
|
|
732
|
+
* direction lands exactly where it began instead of accumulating rounding error.
|
|
733
|
+
*
|
|
734
|
+
* `preserveAspect` behaves the way Word's handles do: a corner handle scales by whichever axis
|
|
735
|
+
* moved further, while an edge handle drives the other axis from the original ratio. Both axes
|
|
736
|
+
* are floored at one point, so a drag past the opposite edge cannot invert the image.
|
|
737
|
+
*/
|
|
738
|
+
declare function computeResizedImageExtentEmu(startWidthEmu: number, startHeightEmu: number, handle: ImageResizeHandle, deltaWidthPt: number, deltaHeightPt: number, preserveAspect: boolean): {
|
|
739
|
+
readonly cx: number;
|
|
740
|
+
readonly cy: number;
|
|
741
|
+
};
|
|
742
|
+
/**
|
|
743
|
+
* The position a move drag produces, preserving the anchoring the file already used.
|
|
744
|
+
*
|
|
745
|
+
* A `frame`-mode position keeps its `relativeToH`/`relativeToV` bases and only shifts the offsets
|
|
746
|
+
* it actually had — writing an offset the file omitted would re-anchor the drawing to a different
|
|
747
|
+
* reference and move it somewhere the drag never pointed.
|
|
748
|
+
*/
|
|
749
|
+
declare function computeMovedImagePosition(start: DrawingPositionInput, deltaXPt: number, deltaYPt: number): DrawingPositionInput;
|
|
750
|
+
|
|
638
751
|
type ImageMutationPreconditions = Readonly<{
|
|
639
752
|
mountGeneration: number;
|
|
640
753
|
packageRevision: number;
|
|
@@ -674,14 +787,10 @@ declare function canExecuteImageCommand(command: Extract<EditorCommand, {
|
|
|
674
787
|
declare function executeImageCommand(editor: DocxEditorInstance, command: Extract<EditorCommand, {
|
|
675
788
|
type: 'insertImage' | 'replaceImage';
|
|
676
789
|
}>): Promise<ExecResult>;
|
|
677
|
-
/** Which of the eight resize handles a drag started from, by compass direction. */
|
|
678
|
-
type ImageResizeHandle = 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w' | 'nw';
|
|
679
790
|
/** How far one arrow-key press nudges a selected image, in points. */
|
|
680
791
|
declare const IMAGE_OVERLAY_NUDGE_PT = 1;
|
|
681
792
|
/** How far Shift+arrow nudges a selected image, in points. */
|
|
682
793
|
declare const IMAGE_OVERLAY_NUDGE_SHIFT_PT = 10;
|
|
683
|
-
/** EMUs per point. DrawingML stores extents in EMU; layout works in points. */
|
|
684
|
-
declare const EMU_PER_POINT = 12700;
|
|
685
794
|
/**
|
|
686
795
|
* One in-flight image drag: where it started, and everything needed to decide at commit time
|
|
687
796
|
* whether the document still describes what the gesture was planned against.
|
|
@@ -761,32 +870,6 @@ interface SelectedDrawingOverlayTarget {
|
|
|
761
870
|
* claim an object the user did not single out.
|
|
762
871
|
*/
|
|
763
872
|
declare function selectedDrawingOverlayTargetOf(surface: PaginatedSurface | null): SelectedDrawingOverlayTarget | null;
|
|
764
|
-
/** Points to EMU, rounded — EMUs are integral in the file. */
|
|
765
|
-
declare function pointsToEmu(points: number): number;
|
|
766
|
-
/** EMU to points. Unrounded, so overlay geometry keeps sub-point precision during a drag. */
|
|
767
|
-
declare function emuToOverlayPoints(emu: number): number;
|
|
768
|
-
/**
|
|
769
|
-
* The extent a resize drag produces, in EMU.
|
|
770
|
-
*
|
|
771
|
-
* Computed from the drag's START extent rather than the previous frame's, so a drag that reverses
|
|
772
|
-
* direction lands exactly where it began instead of accumulating rounding error.
|
|
773
|
-
*
|
|
774
|
-
* `preserveAspect` behaves the way Word's handles do: a corner handle scales by whichever axis
|
|
775
|
-
* moved further, while an edge handle drives the other axis from the original ratio. Both axes
|
|
776
|
-
* are floored at one point, so a drag past the opposite edge cannot invert the image.
|
|
777
|
-
*/
|
|
778
|
-
declare function computeResizedImageExtentEmu(startWidthEmu: number, startHeightEmu: number, handle: ImageResizeHandle, deltaWidthPt: number, deltaHeightPt: number, preserveAspect: boolean): {
|
|
779
|
-
readonly cx: number;
|
|
780
|
-
readonly cy: number;
|
|
781
|
-
};
|
|
782
|
-
/**
|
|
783
|
-
* The position a move drag produces, preserving the anchoring the file already used.
|
|
784
|
-
*
|
|
785
|
-
* A `frame`-mode position keeps its `relativeToH`/`relativeToV` bases and only shifts the offsets
|
|
786
|
-
* it actually had — writing an offset the file omitted would re-anchor the drawing to a different
|
|
787
|
-
* reference and move it somewhere the drag never pointed.
|
|
788
|
-
*/
|
|
789
|
-
declare function computeMovedImagePosition(start: DrawingPositionInput, deltaXPt: number, deltaYPt: number): DrawingPositionInput;
|
|
790
873
|
/**
|
|
791
874
|
* Whether a drag's commit should be refused because the document moved under it — the refusal to
|
|
792
875
|
* return, or null when the commit is still valid.
|
|
@@ -1034,7 +1117,7 @@ interface ParagraphPropertyEdit {
|
|
|
1034
1117
|
* `commentReference` naming a comment it never received. Naming the write lets each be admitted
|
|
1035
1118
|
* only once a two-replica test proves it arrives whole.
|
|
1036
1119
|
*/
|
|
1037
|
-
type ReviewWriteIntent = 'revision-resolve' | 'comment-add' | 'comment-reply' | 'comment-resolve' | 'comment-delete' | 'package-scoped';
|
|
1120
|
+
type ReviewWriteIntent = 'revision-resolve' | 'revision-attribution' | 'comment-add' | 'comment-reply' | 'comment-resolve' | 'comment-delete' | 'package-scoped';
|
|
1038
1121
|
|
|
1039
1122
|
/**
|
|
1040
1123
|
* Everything an overlay needs to paint over one rendered frame of the surface.
|
|
@@ -1228,6 +1311,13 @@ interface PaginatedSurfaceOptions {
|
|
|
1228
1311
|
* authority.
|
|
1229
1312
|
*/
|
|
1230
1313
|
readonly collaborationModel?: CollaborationModuleContribution;
|
|
1314
|
+
/**
|
|
1315
|
+
* How saved field results are edited. `atomic` (the default) keeps every field one unit.
|
|
1316
|
+
* `editable` lets the reader type, delete, and select inside the saved result of a DATE,
|
|
1317
|
+
* MERGEFIELD, HYPERLINK, or similar field. Results must be unnested; simple fields inside
|
|
1318
|
+
* complex field results are not supported. Refused with a {@link collaborationModel}.
|
|
1319
|
+
*/
|
|
1320
|
+
readonly fieldResults?: FieldResultsMode;
|
|
1231
1321
|
readonly measurer?: TextMeasurer;
|
|
1232
1322
|
/** Ambient author for tracked edits. Required before suggesting can write anything. */
|
|
1233
1323
|
readonly author?: string;
|
|
@@ -1416,7 +1506,7 @@ interface RevealOptions {
|
|
|
1416
1506
|
* centred when it has to move, so the reader lands looking AT the thing rather than at
|
|
1417
1507
|
* the bottom line of the window. Default `'start'`.
|
|
1418
1508
|
*/
|
|
1419
|
-
readonly block?:
|
|
1509
|
+
readonly block?: ScrollPlacement;
|
|
1420
1510
|
/** Padding above the target, in CSS pixels. Default 24. */
|
|
1421
1511
|
readonly offsetPx?: number;
|
|
1422
1512
|
readonly behavior?: ScrollBehavior;
|
|
@@ -1604,6 +1694,25 @@ interface PaginatedSurface {
|
|
|
1604
1694
|
* where there is no list to demote).
|
|
1605
1695
|
*/
|
|
1606
1696
|
adjustIndent(direction: 'increase' | 'decrease'): boolean;
|
|
1697
|
+
/**
|
|
1698
|
+
* Tab (`increase`) or Shift+Tab (`decrease`) over a selection outside a list: change the
|
|
1699
|
+
* indent and keep the text.
|
|
1700
|
+
*
|
|
1701
|
+
* A selection over two or more paragraphs, or a cell rectangle, steps the left indent of
|
|
1702
|
+
* each paragraph. A selection in one paragraph that starts at the paragraph start, whole or
|
|
1703
|
+
* partial, works on the first line: Tab sets a first-line indent of one default tab stop
|
|
1704
|
+
* (`w:defaultTabStop`), or steps the left indent when the first line already has that
|
|
1705
|
+
* indent or more, or a hanging indent. Shift+Tab clears a first-line indent that the
|
|
1706
|
+
* paragraph states itself, so a style value applies again, and otherwise steps the left
|
|
1707
|
+
* indent back. A paragraph the selection reaches only at its start is not touched by this
|
|
1708
|
+
* rule, unless it is the empty last paragraph of the story.
|
|
1709
|
+
*
|
|
1710
|
+
* Answers true when the selection takes this rule, also when the write is refused or
|
|
1711
|
+
* changes nothing, so the text is never replaced. Answers false for a caret and for a
|
|
1712
|
+
* selection in one paragraph that starts inside the text; there Tab types a tab character
|
|
1713
|
+
* and Shift+Tab steps the left indent.
|
|
1714
|
+
*/
|
|
1715
|
+
indentWithTab(direction: 'increase' | 'decrease'): boolean;
|
|
1607
1716
|
/**
|
|
1608
1717
|
* Set indent to exact values on every paragraph the selection touches — what a ruler
|
|
1609
1718
|
* drag and an indent spinner both need, where {@link adjustIndent} only steps.
|
|
@@ -1925,6 +2034,8 @@ interface PaginatedSurface {
|
|
|
1925
2034
|
setEditingMode(mode: SurfaceEditingMode): void;
|
|
1926
2035
|
/** Set the ambient author after buffered text commits under the previous author. */
|
|
1927
2036
|
setAuthor(author: string | undefined): void;
|
|
2037
|
+
/** The ambient author tracked edits and review writes record, or undefined. */
|
|
2038
|
+
author(): string | undefined;
|
|
1928
2039
|
/** Replace localized drawing labels and repaint materialized pages. */
|
|
1929
2040
|
setDrawingStrings(strings: DrawingPaintStrings): void;
|
|
1930
2041
|
/** Update shared form-control labels without replacing open dialogs. */
|
|
@@ -2418,6 +2529,68 @@ type CustomFontsResolver = MarkedFontResolver<(request: FontResolutionRequest) =
|
|
|
2418
2529
|
*/
|
|
2419
2530
|
declare function customFonts(options: CustomFontsOptions): CustomFontsResolver;
|
|
2420
2531
|
|
|
2532
|
+
/**
|
|
2533
|
+
* A row that runs one chrome slot.
|
|
2534
|
+
*
|
|
2535
|
+
* @public
|
|
2536
|
+
*/
|
|
2537
|
+
interface ChromeMenuItemEntry {
|
|
2538
|
+
readonly kind: 'item';
|
|
2539
|
+
readonly slot: ChromeSlotId;
|
|
2540
|
+
/**
|
|
2541
|
+
* Plain-label override for this row.
|
|
2542
|
+
*
|
|
2543
|
+
* A slot's own `labelKey` is a TOOLTIP key, and several of them fold the shortcut into
|
|
2544
|
+
* the text (`formattingBar.boldShortcut` is "Bold (Ctrl+B)"). A menu puts the shortcut
|
|
2545
|
+
* in its own right-hand column, so the row needs the bare noun. Both keys already exist
|
|
2546
|
+
* in the catalogue — this points at the plain one rather than minting a duplicate.
|
|
2547
|
+
*/
|
|
2548
|
+
readonly labelKey?: string;
|
|
2549
|
+
/** i18n key of the shortcut shown right-aligned on the row (`toolbar.saveShortcut`). */
|
|
2550
|
+
readonly shortcutKey?: string;
|
|
2551
|
+
/**
|
|
2552
|
+
* The row opens a size PICKER instead of firing on click — Word's insert-table grid.
|
|
2553
|
+
* The slot still owns the label, the icon and the enabled state; only the dispatch
|
|
2554
|
+
* differs, and the picked size is what the host sends.
|
|
2555
|
+
*/
|
|
2556
|
+
readonly picker?: 'tableGrid';
|
|
2557
|
+
}
|
|
2558
|
+
/**
|
|
2559
|
+
* A row that opens a nested panel of rows (Insert › Break).
|
|
2560
|
+
*
|
|
2561
|
+
* It carries its own label and icon rather than a slot, because a submenu PARENT has no
|
|
2562
|
+
* command: clicking it opens the panel. Giving it a slot would mint a public id for a
|
|
2563
|
+
* control that can never be enabled, and `toolbarCommandState` would have to invent an
|
|
2564
|
+
* answer about it.
|
|
2565
|
+
*
|
|
2566
|
+
* @public
|
|
2567
|
+
*/
|
|
2568
|
+
interface ChromeMenuSubmenuEntry {
|
|
2569
|
+
readonly kind: 'submenu';
|
|
2570
|
+
readonly labelKey: string;
|
|
2571
|
+
readonly paths: readonly string[] | null;
|
|
2572
|
+
readonly items: readonly ChromeMenuEntry[];
|
|
2573
|
+
}
|
|
2574
|
+
/** A horizontal rule between groups of rows. @public */
|
|
2575
|
+
interface ChromeMenuSeparatorEntry {
|
|
2576
|
+
readonly kind: 'separator';
|
|
2577
|
+
}
|
|
2578
|
+
/** One row of a chrome menu. @public */
|
|
2579
|
+
type ChromeMenuEntry = ChromeMenuItemEntry | ChromeMenuSubmenuEntry | ChromeMenuSeparatorEntry;
|
|
2580
|
+
/**
|
|
2581
|
+
* Every menu id, as a literal union. Stable public API; renaming one is a breaking change,
|
|
2582
|
+
* exactly like a group or slot id.
|
|
2583
|
+
*
|
|
2584
|
+
* @public
|
|
2585
|
+
*/
|
|
2586
|
+
type ChromeMenuId = 'file' | 'format' | 'insert' | 'review' | 'help';
|
|
2587
|
+
/** One menu of the menu bar. @public */
|
|
2588
|
+
interface ChromeMenu {
|
|
2589
|
+
readonly id: ChromeMenuId;
|
|
2590
|
+
readonly labelKey: string;
|
|
2591
|
+
readonly entries: readonly ChromeMenuEntry[];
|
|
2592
|
+
}
|
|
2593
|
+
|
|
2421
2594
|
/**
|
|
2422
2595
|
* HOW a control reaches the engine — never WHETHER it is enabled.
|
|
2423
2596
|
*
|
|
@@ -2812,6 +2985,7 @@ declare const CHROME_GROUPS: readonly [{
|
|
|
2812
2985
|
readonly id: 'revisionMarkup';
|
|
2813
2986
|
readonly shape: 'icon';
|
|
2814
2987
|
readonly labelKey: 'revisionMarkup.title';
|
|
2988
|
+
readonly defaultToolbar: false;
|
|
2815
2989
|
readonly paths: readonly string[];
|
|
2816
2990
|
readonly state: {
|
|
2817
2991
|
readonly kind: 'command';
|
|
@@ -2914,6 +3088,15 @@ declare const CHROME_GROUPS: readonly [{
|
|
|
2914
3088
|
readonly state: {
|
|
2915
3089
|
readonly kind: 'command';
|
|
2916
3090
|
};
|
|
3091
|
+
}, {
|
|
3092
|
+
readonly id: 'addComment';
|
|
3093
|
+
readonly shape: 'icon';
|
|
3094
|
+
readonly labelKey: 'formattingBar.addComment';
|
|
3095
|
+
readonly defaultToolbar: false;
|
|
3096
|
+
readonly paths: readonly string[];
|
|
3097
|
+
readonly state: {
|
|
3098
|
+
readonly kind: 'command';
|
|
3099
|
+
};
|
|
2917
3100
|
}, {
|
|
2918
3101
|
readonly id: 'authors';
|
|
2919
3102
|
readonly shape: 'dropdown';
|
|
@@ -3213,7 +3396,7 @@ type ChromeGroupId = 'history' | 'zoom' | 'styles' | 'font' | 'text' | 'script'
|
|
|
3213
3396
|
*
|
|
3214
3397
|
* @public
|
|
3215
3398
|
*/
|
|
3216
|
-
type ChromeSlotId = 'history.undo' | 'history.redo' | 'zoom.level' | 'styles.style' | 'font.family' | 'font.size' | 'text.bold' | 'text.italic' | 'text.underline' | 'text.strike' | 'text.color' | 'text.highlight' | 'text.link' | 'script.super' | 'script.sub' | 'alignment.left' | 'alignment.center' | 'alignment.right' | 'alignment.justify' | 'direction.ltr' | 'direction.rtl' | 'list.bullet' | 'list.numbered' | 'list.outdent' | 'list.indent' | 'list.lineSpacing' | 'format.painter' | 'format.clear' | 'review.revisionMarkup' | 'review.comments' | 'review.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';
|
|
3399
|
+
type ChromeSlotId = 'history.undo' | 'history.redo' | 'zoom.level' | 'styles.style' | 'font.family' | 'font.size' | 'text.bold' | 'text.italic' | 'text.underline' | 'text.strike' | 'text.color' | 'text.highlight' | 'text.link' | 'script.super' | 'script.sub' | 'alignment.left' | 'alignment.center' | 'alignment.right' | 'alignment.justify' | 'direction.ltr' | 'direction.rtl' | 'list.bullet' | 'list.numbered' | 'list.outdent' | 'list.indent' | 'list.lineSpacing' | 'format.painter' | 'format.clear' | 'review.revisionMarkup' | 'review.comments' | 'review.addComment' | 'review.paragraphMarks' | 'review.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';
|
|
3217
3400
|
/**
|
|
3218
3401
|
* Every control id in the chrome, as a literal union. Unique WITHIN a group, not
|
|
3219
3402
|
* globally (`image.insert` / `table.insert`) — key consumers on {@link ChromeSlotId}.
|
|
@@ -3252,67 +3435,7 @@ declare function defaultChromeGroups(): readonly ChromeGroup[];
|
|
|
3252
3435
|
* @public
|
|
3253
3436
|
*/
|
|
3254
3437
|
declare function formattingBarChromeGroups(image: ImageContext | null): readonly ChromeGroup[];
|
|
3255
|
-
|
|
3256
|
-
* A row that runs one chrome slot.
|
|
3257
|
-
*
|
|
3258
|
-
* @public
|
|
3259
|
-
*/
|
|
3260
|
-
interface ChromeMenuItemEntry {
|
|
3261
|
-
readonly kind: 'item';
|
|
3262
|
-
readonly slot: ChromeSlotId;
|
|
3263
|
-
/**
|
|
3264
|
-
* Plain-label override for this row.
|
|
3265
|
-
*
|
|
3266
|
-
* A slot's own `labelKey` is a TOOLTIP key, and several of them fold the shortcut into
|
|
3267
|
-
* the text (`formattingBar.boldShortcut` is "Bold (Ctrl+B)"). A menu puts the shortcut
|
|
3268
|
-
* in its own right-hand column, so the row needs the bare noun. Both keys already exist
|
|
3269
|
-
* in the catalogue — this points at the plain one rather than minting a duplicate.
|
|
3270
|
-
*/
|
|
3271
|
-
readonly labelKey?: string;
|
|
3272
|
-
/** i18n key of the shortcut shown right-aligned on the row (`toolbar.saveShortcut`). */
|
|
3273
|
-
readonly shortcutKey?: string;
|
|
3274
|
-
/**
|
|
3275
|
-
* The row opens a size PICKER instead of firing on click — Word's insert-table grid.
|
|
3276
|
-
* The slot still owns the label, the icon and the enabled state; only the dispatch
|
|
3277
|
-
* differs, and the picked size is what the host sends.
|
|
3278
|
-
*/
|
|
3279
|
-
readonly picker?: 'tableGrid';
|
|
3280
|
-
}
|
|
3281
|
-
/**
|
|
3282
|
-
* A row that opens a nested panel of rows (Insert › Break).
|
|
3283
|
-
*
|
|
3284
|
-
* It carries its own label and icon rather than a slot, because a submenu PARENT has no
|
|
3285
|
-
* command: clicking it opens the panel. Giving it a slot would mint a public id for a
|
|
3286
|
-
* control that can never be enabled, and `toolbarCommandState` would have to invent an
|
|
3287
|
-
* answer about it.
|
|
3288
|
-
*
|
|
3289
|
-
* @public
|
|
3290
|
-
*/
|
|
3291
|
-
interface ChromeMenuSubmenuEntry {
|
|
3292
|
-
readonly kind: 'submenu';
|
|
3293
|
-
readonly labelKey: string;
|
|
3294
|
-
readonly paths: readonly string[] | null;
|
|
3295
|
-
readonly items: readonly ChromeMenuEntry[];
|
|
3296
|
-
}
|
|
3297
|
-
/** A horizontal rule between groups of rows. @public */
|
|
3298
|
-
interface ChromeMenuSeparatorEntry {
|
|
3299
|
-
readonly kind: 'separator';
|
|
3300
|
-
}
|
|
3301
|
-
/** One row of a chrome menu. @public */
|
|
3302
|
-
type ChromeMenuEntry = ChromeMenuItemEntry | ChromeMenuSubmenuEntry | ChromeMenuSeparatorEntry;
|
|
3303
|
-
/**
|
|
3304
|
-
* Every menu id, as a literal union. Stable public API; renaming one is a breaking change,
|
|
3305
|
-
* exactly like a group or slot id.
|
|
3306
|
-
*
|
|
3307
|
-
* @public
|
|
3308
|
-
*/
|
|
3309
|
-
type ChromeMenuId = 'file' | 'format' | 'insert' | 'review' | 'help';
|
|
3310
|
-
/** One menu of the menu bar. @public */
|
|
3311
|
-
interface ChromeMenu {
|
|
3312
|
-
readonly id: ChromeMenuId;
|
|
3313
|
-
readonly labelKey: string;
|
|
3314
|
-
readonly entries: readonly ChromeMenuEntry[];
|
|
3315
|
-
}
|
|
3438
|
+
|
|
3316
3439
|
/**
|
|
3317
3440
|
* The menu bar the chrome shows above the toolbar, in bar order: File, Format, Insert, Review,
|
|
3318
3441
|
* Help.
|
|
@@ -3742,5 +3865,5 @@ interface ChromePrintJob {
|
|
|
3742
3865
|
*/
|
|
3743
3866
|
declare function runChromePrint(editor: Pick<Editor, 'save'> & Partial<Pick<Editor, 'snapshot'>>, handlers?: ChromeExportHandlers, container?: Document | Element): Promise<ChromePrintJob>;
|
|
3744
3867
|
|
|
3745
|
-
export { IMAGE_OVERLAY_NUDGE_SHIFT_PT as $, CHROME_GROUPS as C, DEFAULT_TABLE_CHROME_DRAFT as F, EMU_PER_POINT as I, IMAGE_OVERLAY_NUDGE_PT as _,
|
|
3746
|
-
export type { AnchorFrameOrigin as A, CustomFontsOptions as B, DocxEditorInstance as D, CustomFontsResolver as E, DocxEditorConfig as G, DrawingSelectionIntent as H, EditorCommandExecute as J, EquationActivation as K, EquationChromeHandlers as L, EquationOps as M, FinalizedImageOverlayInteraction as N, OpenPaginatedResult as O, PaginatedSurfaceOptions as P, FontLoadFailure as Q, FontLoadFailureReason as R, FontMeasurementState as S, TableCommandPlan as T, FontUrlSource as U, HistoryGroupBinding as V, HistoryGroupBindingOptions as W, HyperlinkActivation as X, HyperlinkChromeHandlers as Y, HyperlinkOps as Z, PaginatedSurface as a, ImageInteractionSession as a0, ImageOverlayScrollPort as a1, ImageResizeHandle as a2, ImageResizeResult as a3, InvalidTextFormFieldChromeHandlers as a4, InvalidTextFormFieldSession as a5, LoadFontsRequest as a6, LoadFontsResult as a7,
|
|
3868
|
+
export { IMAGE_OVERLAY_NUDGE_SHIFT_PT as $, CHROME_GROUPS as C, DEFAULT_TABLE_CHROME_DRAFT as F, EMU_PER_POINT as I, IMAGE_OVERLAY_NUDGE_PT as _, createFontSource as a$, applyTableChromePick as aJ, bindHistoryGroup as aK, blankDocumentBytes as aL, canExecuteImageCommand as aM, captureImageMutationPreconditions as aN, chromeControlCount as aO, chromeMenuSlots as aP, chromeProbeForSlot as aQ, chromeSlotId as aR, chromeSlotIsToggle as aS, commandExecOptions as aT, commandForSlot as aU, commandForSlotValue as aV, commandForTableChromeSlotValue as aW, computeImageResizeResult as aX, computeMovedImagePosition as aY, computeResizedImageExtentEmu as aZ, createDocxEditor as a_, TABLE_BORDER_STYLE_OPTIONS as ar, TABLE_BORDER_TARGET_OPTIONS as as, TABLE_BORDER_WIDTH_OPTIONS as at, TABLE_CHROME_SLOT_IDS as au, CHROME_MENUS as b, createImageOverlayScrollPort as b0, cssPixelsToLayoutPoints as b1, customFonts as b2, defaultChromeGroups as b3, defaultTableLabel as b4, emuToOverlayPoints as b5, equationAtPosition as b6, executeImageCommand as b7, finalizeImageOverlayInteraction as b8, formattingBarChromeGroups as b9, isChromePrintShortcut as ba, isStaleImageInteractionCommit as bb, isTableChromeSlot as bc, layoutPointsToCssPixels as bd, loadFonts as be, overlayFrameToSheetCssPixels as bf, overlayHostOrigin as bg, pointsToEmu as bh, probeTableChromeCommand as bi, resizePreservesAspect as bj, runChromeExport as bk, runChromePrint as bl, runSave as bm, runTableChromeCommand as bn, runTableCommand as bo, runToolbarCommand as bp, selectedDrawingOverlayTargetOf as bq, selectedImageStateOf as br, surfacePaintScale as bs, tableChromeIconPaths as bt, tableChromeLabelKeyForTarget as bu, tableChromeToolbarState as bv, tableChromeVisible as bw, tableCommandToolbarState as bx, toolbarCommandState as by, toolbarCommandStates as bz, CHROME_UNAVAILABLE_KEY as c, ChromeExportError as g, ChromePrintError as t };
|
|
3869
|
+
export type { AnchorFrameOrigin as A, CustomFontsOptions as B, DocxEditorInstance as D, CustomFontsResolver as E, DocxEditorConfig as G, DrawingSelectionIntent as H, EditorCommandExecute as J, EquationActivation as K, EquationChromeHandlers as L, EquationOps as M, FinalizedImageOverlayInteraction as N, OpenPaginatedResult as O, PaginatedSurfaceOptions as P, FontLoadFailure as Q, FontLoadFailureReason as R, FontMeasurementState as S, TableCommandPlan as T, FontUrlSource as U, HistoryGroupBinding as V, HistoryGroupBindingOptions as W, HyperlinkActivation as X, HyperlinkChromeHandlers as Y, HyperlinkOps as Z, PaginatedSurface as a, ImageInteractionSession as a0, ImageOverlayScrollPort as a1, ImageResizeHandle as a2, ImageResizeResult as a3, InvalidTextFormFieldChromeHandlers as a4, InvalidTextFormFieldSession as a5, LoadFontsRequest as a6, LoadFontsResult as a7, OpeningIndicatorHost as a8, OverlayFrameRect as a9, TableChromePick as aA, TableChromeSlotId as aB, TableInteractionLabelKey as aC, TextFormFieldChromeHandlers as aD, TextFormFieldDialogSession as aE, ToolbarCommandState as aF, ToolbarSlotValue as aG, ToolbarValueMap as aH, ToolbarValueSlot as aI, PaginatedSurfaceState as aa, ParagraphPropertyEdit as ab, PopupChromeRegistrationOptions as ac, RemoteCaretLabelAnchor as ad, RemoteCaretLabelHost as ae, ReviewWriteIntent as af, RunTableChromeCommandResult as ag, SectionAnchor as ah, SectionBreakInsertType as ai, SelectedDrawingOverlayTarget as aj, SurfaceEquation as ak, SurfaceFormatting as al, SurfaceHyperlink as am, SurfaceInsertImageInput as an, SurfaceNavigation as ao, SurfaceOverlayCoordinates as ap, SurfaceParagraphFormat as aq, TableBorderStyleOption as av, TableBorderTargetOption as aw, TableBorderTargetValue as ax, TableBorderWidthOption as ay, TableChromeDraft as az, ChromeControl as d, ChromeControlId as e, ChromeControlState as f, ChromeExportFormat as h, ChromeExportHandlers as i, ChromeExportResult as j, ChromeExportView as k, ChromeGroup as l, ChromeGroupId as m, ChromeMenu as n, ChromeMenuEntry as o, ChromeMenuId as p, ChromeMenuItemEntry as q, ChromeMenuSeparatorEntry as r, ChromeMenuSubmenuEntry as s, ChromePrintErrorCode as u, ChromePrintJob as v, ChromePrintOptions as w, ChromeSlotId as x, ContentControlWidgetChromeHandlers as y, ContentControlWidgetSession as z };
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkRCHS4ZEH_cjs=require('./chunk-RCHS4ZEH.cjs');require('./chunk-NBCVVZOM.cjs'),require('./chunk-EO4C5QJW.cjs');var chunkK5U2PLDP_cjs=require('./chunk-K5U2PLDP.cjs');require('./chunk-6APGXLBB.cjs'),require('./chunk-VX43VBAX.cjs'),require('./chunk-6AWEKBLB.cjs'),require('./chunk-4GBTELJV.cjs'),require('./chunk-SRPILEWV.cjs'),require('./chunk-QMLCVPCD.cjs'),require('./chunk-ZUHOMK52.cjs'),require('./chunk-O2AL2HSJ.cjs'),require('./chunk-JGNVNT2A.cjs'),require('./chunk-BTQKU64Q.cjs'),require('./chunk-2GO5T2JU.cjs'),require('./chunk-FIJZIQXA.cjs'),require('./chunk-UKVVUHZL.cjs');Object.defineProperty(exports,"CHROME_GROUPS",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.Ta}});Object.defineProperty(exports,"CHROME_MENUS",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.Xa}});Object.defineProperty(exports,"ChromeExportError",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.nc}});Object.defineProperty(exports,"ChromePrintError",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.pc}});Object.defineProperty(exports,"bindHistoryGroup",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.dc}});Object.defineProperty(exports,"blankDocumentBytes",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.g}});Object.defineProperty(exports,"chromeMenuSlots",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.Ya}});Object.defineProperty(exports,"commandForSlot",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.ma}});Object.defineProperty(exports,"commandForSlotValue",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.oa}});Object.defineProperty(exports,"createDocxEditor",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.Bb}});Object.defineProperty(exports,"createFontSource",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.l}});Object.defineProperty(exports,"customFonts",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.m}});Object.defineProperty(exports,"isChromePrintShortcut",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.qc}});Object.defineProperty(exports,"loadFonts",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.k}});Object.defineProperty(exports,"runChromeExport",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.oc}});Object.defineProperty(exports,"runChromePrint",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.rc}});Object.defineProperty(exports,"runToolbarCommand",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.ua}});Object.defineProperty(exports,"toolbarCommandState",{enumerable:true,get:function(){return chunkRCHS4ZEH_cjs.qa}});Object.defineProperty(exports,"DEFAULT_FONT",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.d}});Object.defineProperty(exports,"FONT_RESOLVER_BRAND",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.i}});Object.defineProperty(exports,"FONT_RESOLVER_MARK_KEY",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.h}});Object.defineProperty(exports,"WORD_DEFAULT_FONT",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.e}});Object.defineProperty(exports,"composeFontConfiguration",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.f}});Object.defineProperty(exports,"composeFontOrigins",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.n}});Object.defineProperty(exports,"defineFontResolver",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.j}});Object.defineProperty(exports,"isFontResolver",{enumerable:true,get:function(){return chunkK5U2PLDP_cjs.k}});
|
package/dist/index.d.ts
CHANGED
|
@@ -1,26 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* `@docx-editor.dev/core` — the engine: contracts, layout, store, and the editor facade.
|
|
3
|
+
*
|
|
4
|
+
* One preservation model and one pipeline: bytes are read into a canonical typed-and-generic
|
|
5
|
+
* OOXML tree, mutated only through the store's ops, laid out DOM-free, and painted onto pages
|
|
6
|
+
* that ARE the editable surface. Content the engine does not model is carried losslessly rather
|
|
7
|
+
* than dropped, so an unfamiliar document never locks editing.
|
|
8
|
+
*
|
|
9
|
+
* @example Create an editor over DOCX bytes
|
|
10
|
+
* ```ts
|
|
11
|
+
* import { createDocxEditor } from '@docx-editor.dev/core';
|
|
12
|
+
*
|
|
13
|
+
* const editor = createDocxEditor({ document: bytes });
|
|
14
|
+
* editor.attach(element);
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* THIS ENTRY IS THE 80% PATH. Everything needed to stand up an editor over DOCX bytes,
|
|
18
|
+
* measure it with real fonts, and drive it from chrome is here, so the common case is one
|
|
19
|
+
* import. The subpaths (`./store`, `./layout`, `./output`, `./automation`, and the
|
|
20
|
+
* `./contracts/*` declarations) stay available for the deeper work — walking the canonical
|
|
21
|
+
* tree, running layout by hand, painting — and nothing here hides them.
|
|
22
|
+
* If you want the editor already wired to a UI, use `@docx-editor.dev/react`.
|
|
23
|
+
*
|
|
24
|
+
* @packageDocumentation
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export { B as Block, r as ColorValue, C as CommentRecord, m as ContainerRef, s as ContentControl, n as ContentControlFilter, i as ContentControlType, t as DocAnchor, u as DocAnchorRange, q as DocComment, v as DocLocation, o as DocRange, j as DocTarget, w as DocumentBody, D as DocxDocument, av as DocxDocumentJSON, aw as DrawingHorizontalReferenceFrame, am as DrawingKind, ap as DrawingLocks, ao as DrawingPositionInput, ax as DrawingVerticalReferenceFrame, x as ExecErrorCode, E as ExecResult, l as Extent, ay as FontDefinition, H as HeaderFooterSet, an as ImageWrapTarget, y as IndentFormatting, I as InsertableContentControlType, az as NumberingRef, aA as PageMargins, P as Paragraph, aB as ParagraphDisagreements, z as ParagraphFlags, aq as ParagraphFormatCommand, A as ParagraphTabStop, aC as Point, as as Rect, c as ReviewCommentItem, d as ReviewCustomItem, a as ReviewItem, R as ReviewModelInput, e as ReviewPosition, f as ReviewRange, b as ReviewRevisionItem, g as ReviewRevisionKind, p as Revision, h as RevisionAddress, a3 as RevisionAuthorResult, a6 as RevisionBatchResult, F as RevisionType, aD as Run, k as RunFormatting, G as Section, J as SectionProperties, at as SelectionPin, K as StyleDefinition, S as StyleDefinitions, T as Table, aE as TableCell, aF as TableRow, L as Theme, M as ThemeColorScheme, au as Unsubscribe, ar as Watermark } from './types-barrel-D3xCgQX6.js';
|
|
28
|
+
export { k as FieldResultsMode } from './tree-package-fragment-BeeKxDw8.js';
|
|
29
|
+
export { b as ImageResourceState, P as PreservedImageMime, R as RenderableImageMime, S as SupportedImageMime, V as ValidatedImageBytesHandle, c as VectorImageMime } from './image-resources-BN-hUgCn.js';
|
|
30
|
+
export { a as DocumentProtectionEdit, D as DocumentProtectionState } from './document-protection-BAGVGqaP.js';
|
|
4
31
|
export { CollectReviewItems, EditorModule, ReviewModuleContribution } from './contracts/modules.js';
|
|
5
|
-
export {
|
|
6
|
-
export { b as RevisionDisplayMode } from './revision-projection-
|
|
7
|
-
export { S as SemanticPosition, a as SemanticSelection } from './semantic-interaction-
|
|
8
|
-
export { C as ComposeFontOriginsOptions, D as DEFAULT_FONT, b as FONT_RESOLVER_BRAND, c as FONT_RESOLVER_MARK_KEY, d as FontConfigurationBase, e as FontConfigurationFragment, a as FontOrigin, F as FontOriginFailure, f as FontResolutionRequest, g as FontResolver, h as FontResolverMark, i as MarkedFontResolver, W as WORD_DEFAULT_FONT, j as composeFontConfiguration, k as composeFontOrigins, l as defineFontResolver, m as isFontResolver } from './font-resolver-
|
|
9
|
-
export { C as CHROME_GROUPS, b as CHROME_MENUS, g as ChromeExportError, h as ChromeExportFormat, i as ChromeExportHandlers, j as ChromeExportResult, n as ChromeMenu, o as ChromeMenuEntry, p as ChromeMenuId, q as ChromeMenuItemEntry, r as ChromeMenuSeparatorEntry, s as ChromeMenuSubmenuEntry, t as ChromePrintError, u as ChromePrintErrorCode, v as ChromePrintJob, w as ChromePrintOptions, x as ChromeSlotId, B as CustomFontsOptions, E as CustomFontsResolver, G as DocxEditorConfig, D as DocxEditorInstance, Q as FontLoadFailure, R as FontLoadFailureReason, S as FontMeasurementState, U as FontUrlSource, V as HistoryGroupBinding, W as HistoryGroupBindingOptions, X as HyperlinkActivation, Y as HyperlinkChromeHandlers, a6 as LoadFontsRequest, a7 as LoadFontsResult,
|
|
32
|
+
export { h as AnchorHighlightAnimation, A as AnchorHighlightOptions, L as AuthoredNoteNumbering, C as CanResult, f as ClearAnchorHighlightOptions, M as DocumentChange, N as DocumentEditingMode, O as DocumentHandle, D as DocumentSource, i as Editor, P as EditorAnchorNavigation, e as EditorCommand, Q as EditorCommandShape, U as EditorCommands, V as EditorError, W as EditorEvents, E as EditorFontError, X as EditorFontErrorCode, Y as EditorFormatPainterCommands, _ as EditorHeaderFooterCommands, $ as EditorHighlights, a0 as EditorNoteCommands, a1 as EditorPosition, a2 as EditorQueries, a3 as EditorQuery, a4 as EditorQueryResults, a5 as EditorReviewHits, a6 as EditorSelection, d as EditorSnapshot, a as FontConfiguration, F as FontFaceRequest, b as FontSource, c as FontSourceSubstitution, a7 as FormatPainterLevel, a8 as FormatPainterMode, z as FormatPainterSurfaceState, a9 as FurnitureVariant, aa as HeaderFooterSlotArgs, ab as HeaderFooterState, l as HighlightHit, k as HighlightOptions, H as HighlightRange, m as HighlightRect, j as HighlightResult, ac as HyperlinkInfo, I as ImageContext, n as ImageCropPercent, ad as NoteKind, ae as NotePropertiesSide, af as NotePropertiesState, ag as PageSetup, ah as ResolveReviewChangesOptions, ai as ResolvedNoteNumbering, aj as ReviewActivationOptions, ak as ReviewChangesAttribution, al as ReviewCommentPlacement, am as ReviewCustomPlacement, R as ReviewItemHit, an as ReviewItemPlacement, ao as ReviewItemPlacementBase, ap as ReviewItemQuery, aq as ReviewItemRevealEvent, ar as ReviewItemRevealSource, as as ReviewRevisionPlacement, g as ScrollPlacement, S as ScrollToAnchorOptions, p as SelectedImageState, at as SetReviewChangesAuthorOptions, B as TableBorderEdgeTarget, G as TableBorderSpec, J as TableBorderStyle, au as TableBorderTarget, av as TableCellVerticalAlignment, aw as TableColumnDividerResizeTarget, ax as TableColumnOccurrenceTarget, K as TableContext, ay as TableRightEdgeResizeTarget, az as TableRowOccurrenceTarget, T as TextMatch, q as TrackedChangeFilterMode, r as TrackedChangePredicate, aA as ZoomFitTarget, Z as ZoomMode } from './editor-Ci7IZGmG.js';
|
|
33
|
+
export { a as ReviewDisplayMode, b as RevisionDisplayMode } from './revision-projection-DZ4kKVev.js';
|
|
34
|
+
export { S as SemanticPosition, a as SemanticSelection } from './semantic-interaction-CIC-PooQ.js';
|
|
35
|
+
export { C as ComposeFontOriginsOptions, D as DEFAULT_FONT, b as FONT_RESOLVER_BRAND, c as FONT_RESOLVER_MARK_KEY, d as FontConfigurationBase, e as FontConfigurationFragment, a as FontOrigin, F as FontOriginFailure, f as FontResolutionRequest, g as FontResolver, h as FontResolverMark, i as MarkedFontResolver, W as WORD_DEFAULT_FONT, j as composeFontConfiguration, k as composeFontOrigins, l as defineFontResolver, m as isFontResolver } from './font-resolver-BVQB14qT.js';
|
|
36
|
+
export { C as CHROME_GROUPS, b as CHROME_MENUS, g as ChromeExportError, h as ChromeExportFormat, i as ChromeExportHandlers, j as ChromeExportResult, n as ChromeMenu, o as ChromeMenuEntry, p as ChromeMenuId, q as ChromeMenuItemEntry, r as ChromeMenuSeparatorEntry, s as ChromeMenuSubmenuEntry, t as ChromePrintError, u as ChromePrintErrorCode, v as ChromePrintJob, w as ChromePrintOptions, x as ChromeSlotId, B as CustomFontsOptions, E as CustomFontsResolver, G as DocxEditorConfig, D as DocxEditorInstance, Q as FontLoadFailure, R as FontLoadFailureReason, S as FontMeasurementState, U as FontUrlSource, V as HistoryGroupBinding, W as HistoryGroupBindingOptions, X as HyperlinkActivation, Y as HyperlinkChromeHandlers, a6 as LoadFontsRequest, a7 as LoadFontsResult, am as SurfaceHyperlink, aF as ToolbarCommandState, aK as bindHistoryGroup, aL as blankDocumentBytes, aP as chromeMenuSlots, aU as commandForSlot, aV as commandForSlotValue, a_ as createDocxEditor, a$ as createFontSource, b2 as customFonts, ba as isChromePrintShortcut, be as loadFonts, bk as runChromeExport, bl as runChromePrint, bp as runToolbarCommand, by as toolbarCommandState } from './index-Bsg7oIKP.js';
|
|
10
37
|
export { ApplyResult, ContentControlSummary, DocEdit, DocEdits, DocQueries, DocQuery, DocQueryResults, ParagraphSummary } from './contracts/document.js';
|
|
11
38
|
export { b as EditorExecOptions, E as EditorScope, H as HistoryDiagnostic, a as HistoryGroup, c as HistoryGroupOutcome, V as ViewScope } from './editor-scope-OHPwVQ5l.js';
|
|
12
39
|
export { InteractionAffinity, InteractionOutcome, InteractionOutcomeCode, SemanticIdentity, SemanticTarget } from './contracts/interaction.js';
|
|
40
|
+
import './review-pane-D9jm8DcY.js';
|
|
13
41
|
import './collaboration.js';
|
|
14
|
-
import './tree-package-fragment-DYZIk1rY.js';
|
|
15
42
|
import './collaboration/replication.js';
|
|
16
|
-
import './failure-
|
|
17
|
-
import './semantic-records-
|
|
18
|
-
import './omml-equation-
|
|
19
|
-
import './semantic-paint-
|
|
20
|
-
import './semantic-record-queries-
|
|
21
|
-
import './note-properties-
|
|
22
|
-
import './custom-node-writes-
|
|
23
|
-
import './semantic-cell-selection-
|
|
24
|
-
import './tree-session-contract-
|
|
25
|
-
import './headless-document-view-
|
|
43
|
+
import './failure-NS2lsya4.js';
|
|
44
|
+
import './semantic-records-4B3WwFAi.js';
|
|
45
|
+
import './omml-equation-CuzBL5DD.js';
|
|
46
|
+
import './semantic-paint-BME37OMv.js';
|
|
47
|
+
import './semantic-record-queries-CBlZqZNa.js';
|
|
48
|
+
import './note-properties-4Y9o6Gyk.js';
|
|
49
|
+
import './custom-node-writes-cvL5rhcD.js';
|
|
50
|
+
import './semantic-cell-selection-D9D1KSXq.js';
|
|
51
|
+
import './tree-session-contract-CVbmlMlq.js';
|
|
52
|
+
import './headless-document-view-qH331moE.js';
|
|
26
53
|
import 'prosemirror-model';
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{Ta as CHROME_GROUPS,Xa as CHROME_MENUS,nc as ChromeExportError,pc as ChromePrintError,dc as bindHistoryGroup,g as blankDocumentBytes,Ya as chromeMenuSlots,ma as commandForSlot,oa as commandForSlotValue,Bb as createDocxEditor,l as createFontSource,m as customFonts,qc as isChromePrintShortcut,k as loadFonts,oc as runChromeExport,rc as runChromePrint,ua as runToolbarCommand,qa as toolbarCommandState}from'./chunk-LWDSDCMO.js';import'./chunk-O5INAWZQ.js';import'./chunk-KKIJG3C6.js';export{d as DEFAULT_FONT,i as FONT_RESOLVER_BRAND,h as FONT_RESOLVER_MARK_KEY,e as WORD_DEFAULT_FONT,f as composeFontConfiguration,n as composeFontOrigins,j as defineFontResolver,k as isFontResolver}from'./chunk-VDNNLG6X.js';import'./chunk-2RC2EPND.js';import'./chunk-RIYSCEFQ.js';import'./chunk-VHAVHCQY.js';import'./chunk-6EYYL7FL.js';import'./chunk-FRXAOVTB.js';import'./chunk-Z6WBFXJU.js';import'./chunk-5CSUYANV.js';import'./chunk-E7BQA6UP.js';import'./chunk-TSLBZ26X.js';import'./chunk-J6BVWIDB.js';import'./chunk-6JIJOZDW.js';import'./chunk-ETTO6GK3.js';import'./chunk-4R3TEXMN.js';import'./chunk-S6J4O5XP.js';
|