superdoc 2.29.0-next.9 → 2.30.0-next.4
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/README.md +127 -25
- package/dist/chunks/{FindReplaceSurface-BKVHzhQ4.es.js → FindReplaceSurface-BEnRLpD9.es.js} +1 -1
- package/dist/chunks/{FindReplaceSurface-BNDrJ6VS.cjs → FindReplaceSurface-DWXgWgg7.cjs} +1 -1
- package/dist/chunks/{PasswordPromptSurface-6mF6Azda.es.js → PasswordPromptSurface-DjV1JgjD.es.js} +1 -1
- package/dist/chunks/{PasswordPromptSurface-BNkaztaP.cjs → PasswordPromptSurface-VFPnQOML.cjs} +1 -1
- package/dist/chunks/{PdfViewer-aOWhUVI7.es.js → PdfViewer-C2r-K8zC.es.js} +4 -10
- package/dist/chunks/{PdfViewer-DmSkZehl.cjs → PdfViewer-DYTbPVUr.cjs} +4 -10
- package/dist/chunks/{_plugin-vue_export-helper-6MBoygIY.cjs → _plugin-vue_export-helper-BzM2_tVU.cjs} +40 -7
- package/dist/chunks/{_plugin-vue_export-helper-CsJQtMvr.es.js → _plugin-vue_export-helper-CmkaJDnr.es.js} +23 -8
- package/dist/chunks/{create-super-doc-ui-DN70aatf.cjs → create-super-doc-ui--kQBNTyt.cjs} +2424 -2302
- package/dist/chunks/{create-super-doc-ui-Bm5kmx0W.es.js → create-super-doc-ui-CbEDXtpm.es.js} +2350 -2228
- package/dist/collaboration-upgrade-engine.cjs +1 -1
- package/dist/collaboration-upgrade-engine.es.js +1 -1
- package/dist/document-api/src/changes/changes.d.ts +26 -0
- package/dist/document-api/src/changes/changes.types.d.ts +156 -0
- package/dist/document-api/src/contract/command-catalog.d.ts +1 -1
- package/dist/document-api/src/contract/operation-definitions.d.ts +51 -1
- package/dist/document-api/src/create/create.d.ts +0 -4
- package/dist/document-api/src/diff/diff.types.d.ts +6 -6
- package/dist/document-api/src/header-footers/header-footers.d.ts +1 -3
- package/dist/document-api/src/index.d.ts +6 -0
- package/dist/document-api/src/inline-semantics/token-sets.d.ts +0 -2
- package/dist/document-api/src/insert/insert.d.ts +0 -1
- package/dist/layout-engine/contracts/src/index.d.ts +3 -1
- package/dist/layout-engine/dom-contract/src/data-attrs.d.ts +4 -0
- package/dist/layout-engine/layout-bridge/src/coupled-footnote-pagination.d.ts +1 -0
- package/dist/layout-engine/layout-bridge/src/footnote-page-certificate.d.ts +1 -0
- package/dist/layout-engine/layout-bridge/src/footnote-page-planner.d.ts +5 -0
- package/dist/layout-engine/layout-bridge/src/incrementalLayout.d.ts +1 -0
- package/dist/layout-engine/layout-engine/src/footnote-page-flow.d.ts +3 -0
- package/dist/layout-engine/layout-engine/src/index.d.ts +7 -0
- package/dist/layout-engine/layout-engine/src/layout-paragraph.d.ts +5 -0
- package/dist/layout-engine/layout-engine/src/layout-table.d.ts +3 -1
- package/dist/layout-engine/layout-engine/src/layout-utils.d.ts +0 -4
- package/dist/layout-engine/layout-engine/src/paginator.d.ts +4 -0
- package/dist/layout-engine/painters/dom/src/paragraph/list-marker.d.ts +1 -1
- package/dist/layout-engine/painters/dom/src/paragraph/renderParagraphContent.d.ts +1 -1
- package/dist/layout-engine/painters/dom/src/styles.d.ts +0 -10
- package/dist/layout-engine/painters/dom/src/svg-utils.d.ts +1 -13
- package/dist/public/ui-react.cjs +1 -1
- package/dist/public/ui-react.es.js +1 -1
- package/dist/public/ui-vue.cjs +1 -1
- package/dist/public/ui-vue.es.js +1 -1
- package/dist/public/ui.cjs +1 -1
- package/dist/public/ui.es.js +1 -1
- package/dist/shared/common/Telemetry.d.ts +50 -0
- package/dist/shared/common/event-types.d.ts +13 -0
- package/dist/shared/font-system/src/bundled-face-names.d.ts +1 -0
- package/dist/shared/font-system/src/resolver.d.ts +1 -0
- package/dist/style.css +1 -1
- package/dist/style.layered.css +1 -1
- package/dist/superdoc/src/components/CommentsLayer/CommentDialog.vue.d.ts +17 -33
- package/dist/superdoc/src/components/CommentsLayer/collect-removed-comment-ids.d.ts +11 -1
- package/dist/superdoc/src/components/CommentsLayer/collect-tracked-change-thread.d.ts +25 -6
- package/dist/superdoc/src/components/CommentsLayer/comment-params.d.ts +84 -0
- package/dist/superdoc/src/components/CommentsLayer/comment-urls.d.ts +1 -1
- package/dist/superdoc/src/components/CommentsLayer/commentsList/super-comments-list.d.ts +23 -20
- package/dist/superdoc/src/components/CommentsLayer/helpers.d.ts +1 -4
- package/dist/superdoc/src/components/CommentsLayer/tracked-change-threading.d.ts +16 -1
- package/dist/superdoc/src/components/CommentsLayer/use-comment.d.ts +15 -95
- package/dist/superdoc/src/components/Whiteboard/WhiteboardLayer.vue.d.ts +4 -5
- package/dist/superdoc/src/components/Whiteboard/WhiteboardPage.vue.d.ts +3 -4
- package/dist/superdoc/src/components/Whiteboard/use-whiteboard.d.ts +30 -9
- package/dist/superdoc/src/components/Whiteboard/whiteboard-types.d.ts +2 -0
- package/dist/superdoc/src/components/surfaces/watermark-surface-runtime.d.ts +7 -7
- package/dist/superdoc/src/composables/use-comment-small-screen.d.ts +11 -7
- package/dist/superdoc/src/composables/use-compact-comment-popover.d.ts +44 -18
- package/dist/superdoc/src/composables/use-document.d.ts +51 -99
- package/dist/superdoc/src/composables/use-find-replace.d.ts +13 -3
- package/dist/superdoc/src/composables/use-password-prompt.d.ts +1 -1
- package/dist/superdoc/src/composables/use-viewport-fit.d.ts +62 -26
- package/dist/superdoc/src/core/SuperDoc.d.ts +15 -6
- package/dist/superdoc/src/core/collaboration/cdn-collaboration-comment-map.d.ts +1 -0
- package/dist/superdoc/src/core/collaboration/collaboration-comment-map.d.ts +2 -0
- package/dist/superdoc/src/core/collaboration/helpers.d.ts +1 -1
- package/dist/superdoc/src/core/document-open-telemetry.d.ts +1 -1
- package/dist/superdoc/src/core/editor-runtime/v2/v2-editor-runtime-adapter.d.ts +1 -0
- package/dist/superdoc/src/core/pdf/pdf-adapter.d.ts +6 -2
- package/dist/superdoc/src/core/types/index.d.ts +108 -43
- package/dist/superdoc/src/core/v2-integration/browser-peer-runtime.d.ts +5 -3
- package/dist/superdoc/src/core/v2-integration/cdn-engine-loader.d.ts +3 -13
- package/dist/superdoc/src/core/v2-integration/internal-vue-runtime.d.ts +64 -59
- package/dist/superdoc/src/helpers/deprecation.d.ts +12 -3
- package/dist/superdoc/src/helpers/object-guards.d.ts +2 -0
- package/dist/superdoc/src/helpers/v2-author-required-rejection.d.ts +8 -11
- package/dist/superdoc/src/helpers/v2-bulk-decision-event.d.ts +9 -7
- package/dist/superdoc/src/helpers/v2-keyboard-edit-rejection.d.ts +8 -7
- package/dist/superdoc/src/helpers/v2-mutation-exception.d.ts +12 -8
- package/dist/superdoc/src/helpers/v2-review-geometry-delivery.d.ts +22 -0
- package/dist/superdoc/src/helpers/v2-review-target.d.ts +11 -1
- package/dist/superdoc/src/helpers/v2-selection-sync.d.ts +40 -14
- package/dist/superdoc/src/helpers/v2-typing-mutation-event.d.ts +14 -5
- package/dist/superdoc/src/icons.d.ts +11 -19
- package/dist/superdoc/src/internal/diagnostics/translate-diagnostic.d.ts +6 -4
- package/dist/superdoc/src/internal/toolbar/built-in/PageNumberMenu.vue.d.ts +25 -15
- package/dist/superdoc/src/internal/toolbar/built-in/ToolbarButton.vue.d.ts +1 -0
- package/dist/superdoc/src/internal/toolbar/built-in/constants.d.ts +3 -1
- package/dist/superdoc/src/internal/toolbar/built-in/font-options.d.ts +15 -1
- package/dist/superdoc/src/internal/toolbar/built-in/font-typeahead.d.ts +37 -7
- package/dist/superdoc/src/internal/toolbar/built-in/general.d.ts +12 -1
- package/dist/superdoc/src/internal/toolbar/built-in/helpers.d.ts +9 -4
- package/dist/superdoc/src/internal/toolbar/built-in/list-style-buttons.d.ts +2 -2
- package/dist/superdoc/src/internal/toolbar/built-in/page-number-feedback.d.ts +4 -5
- package/dist/superdoc/src/internal/toolbar/built-in/scroll-helpers.d.ts +3 -4
- package/dist/superdoc/src/internal/toolbar/built-in/toolbarIcons.d.ts +78 -145
- package/dist/superdoc/src/internal/toolbar/built-in/url-safety.d.ts +11 -3
- package/dist/superdoc/src/internal/toolbar/built-in-toolbar.d.ts +4 -3
- package/dist/superdoc/src/internal/toolbar/image-upload.d.ts +29 -39
- package/dist/superdoc/src/public/content-control-ref.d.ts +12 -0
- package/dist/superdoc/src/public/index.d.cts +16 -0
- package/dist/superdoc/src/public/index.d.ts +3 -0
- package/dist/superdoc/src/public/ui/async-read-cache.d.ts +32 -0
- package/dist/superdoc/src/public/ui/block-commands.d.ts +39 -0
- package/dist/superdoc/src/public/ui/command-results.d.ts +39 -0
- package/dist/superdoc/src/public/ui/create-super-doc-ui.d.ts +1 -17
- package/dist/superdoc/src/public/ui/document-change-records.d.ts +7 -0
- package/dist/superdoc/src/public/ui/entity-rows.d.ts +14 -0
- package/dist/superdoc/src/public/ui/font-options.d.ts +7 -0
- package/dist/superdoc/src/public/ui/format-painter-helpers.d.ts +2 -8
- package/dist/superdoc/src/public/ui/format-painter-state.d.ts +33 -0
- package/dist/superdoc/src/public/ui/heavy-read-policy.d.ts +11 -0
- package/dist/superdoc/src/public/ui/host-events.d.ts +3 -0
- package/dist/superdoc/src/public/ui/inline-values.d.ts +79 -0
- package/dist/superdoc/src/public/ui/loose-record.d.ts +4 -0
- package/dist/superdoc/src/public/ui/selection-targets.d.ts +45 -0
- package/dist/superdoc/src/public/ui/shared-tracked-changes-catalog.d.ts +16 -0
- package/dist/superdoc/src/public/ui/tracked-change-ids.d.ts +51 -0
- package/dist/superdoc/src/public/ui/types.d.ts +12 -2
- package/dist/superdoc/src/public/ui/ui-bench-timing.d.ts +9 -0
- package/dist/superdoc/src/public/ui.d.cts +14 -0
- package/dist/superdoc/src/public/ui.d.ts +1 -1
- package/dist/superdoc/src/stores/comments-store.d.ts +23006 -542
- package/dist/superdoc/src/stores/helpers/comment-document-scope.d.ts +22 -0
- package/dist/superdoc/src/stores/helpers/comment-grouping.d.ts +1 -1
- package/dist/superdoc/src/stores/helpers/comment-identity.d.ts +10 -10
- package/dist/superdoc/src/stores/helpers/pending-selection-snapshot.d.ts +17 -0
- package/dist/superdoc/src/stores/helpers/review-presentation.d.ts +90 -0
- package/dist/superdoc/src/stores/helpers/tracked-change-compaction.d.ts +16 -0
- package/dist/superdoc/src/stores/helpers/tracked-change-decision.d.ts +45 -0
- package/dist/superdoc/src/stores/helpers/tracked-change-identity.d.ts +4 -2
- package/dist/superdoc/src/stores/helpers/tracked-change-row-values.d.ts +1 -8
- package/dist/superdoc/src/stores/helpers/tracked-change-thread-index.d.ts +1 -1
- package/dist/superdoc/src/stores/helpers/v2-review-adapters.d.ts +147 -0
- package/dist/superdoc/src/stores/superdoc-store.d.ts +12 -2895
- package/dist/superdoc.cjs +1019 -844
- package/dist/superdoc.es.js +931 -756
- package/dist/word-layout/src/marker-utils.d.ts +0 -5
- package/dist/word-layout/src/unit-conversions.d.ts +0 -1
- package/dist-cdn/style.layered.css +1 -1
- package/dist-cdn/superdoc.min.css +1 -1
- package/dist-cdn/superdoc.min.js +38 -42
- package/package.json +13 -3
- package/dist/document-api/src/diff/index.d.ts +0 -3
- package/dist/document-api/src/write/locator.d.ts +0 -24
- package/dist/layout-engine/painters/dom/src/features/feature-registry.d.ts +0 -41
- package/dist/superdoc/src/internal/toolbar/built-in/format-negation.d.ts +0 -5
- package/dist/superdoc/src/main.d.ts +0 -1
- package/dist/word-layout/src/tab-layout.d.ts +0 -193
|
@@ -19,7 +19,7 @@ var COLLABORATION_UPGRADE_ENGINE_MINIMUM_NODE_MAJOR = 20;
|
|
|
19
19
|
var PRIVATE_ENGINE_INFO = (0, _superdoc_docx_engine_collaboration_upgrade_engine.getCollaborationUpgradeEngineInfo)();
|
|
20
20
|
var ENGINE_INFO = Object.freeze({
|
|
21
21
|
...PRIVATE_ENGINE_INFO,
|
|
22
|
-
superdocVersion: "2.
|
|
22
|
+
superdocVersion: "2.30.0-next.4",
|
|
23
23
|
roomSchemaVersion: Object.freeze({ ...PRIVATE_ENGINE_INFO.roomSchemaVersion }),
|
|
24
24
|
supportedBundleVersions: SUPPORTED_COLLABORATION_UPGRADE_BUNDLE_VERSIONS,
|
|
25
25
|
supportedV1ReaderContractVersions: SUPPORTED_V1_READER_CONTRACT_VERSIONS
|
|
@@ -18,7 +18,7 @@ var COLLABORATION_UPGRADE_ENGINE_MINIMUM_NODE_MAJOR = 20;
|
|
|
18
18
|
var PRIVATE_ENGINE_INFO = getCollaborationUpgradeEngineInfo$1();
|
|
19
19
|
var ENGINE_INFO = Object.freeze({
|
|
20
20
|
...PRIVATE_ENGINE_INFO,
|
|
21
|
-
superdocVersion: "2.
|
|
21
|
+
superdocVersion: "2.30.0-next.4",
|
|
22
22
|
roomSchemaVersion: Object.freeze({ ...PRIVATE_ENGINE_INFO.roomSchemaVersion }),
|
|
23
23
|
supportedBundleVersions: SUPPORTED_COLLABORATION_UPGRADE_BUNDLE_VERSIONS,
|
|
24
24
|
supportedV1ReaderContractVersions: SUPPORTED_V1_READER_CONTRACT_VERSIONS
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ChangeRecord, ChangesActorsResult, ChangesGetInput, ChangesListInput, ChangesListResult, ChangesResolveInput, ChangesResolveResult, ChangesSnapshotInput, ChangesSnapshotResult } from './changes.types.js';
|
|
2
|
+
export interface ChangesAdapter {
|
|
3
|
+
list(input: ChangesListInput): Promise<ChangesListResult>;
|
|
4
|
+
get(input: ChangesGetInput): Promise<ChangeRecord | null>;
|
|
5
|
+
resolve(input: ChangesResolveInput): Promise<ChangesResolveResult>;
|
|
6
|
+
actors(): Promise<ChangesActorsResult>;
|
|
7
|
+
snapshot(input: ChangesSnapshotInput): Promise<ChangesSnapshotResult>;
|
|
8
|
+
}
|
|
9
|
+
export interface ChangesApi {
|
|
10
|
+
list(input?: ChangesListInput): Promise<ChangesListResult>;
|
|
11
|
+
get(input: ChangesGetInput): Promise<ChangeRecord | null>;
|
|
12
|
+
resolve(input: ChangesResolveInput): Promise<ChangesResolveResult>;
|
|
13
|
+
actors(): Promise<ChangesActorsResult>;
|
|
14
|
+
snapshot(input?: ChangesSnapshotInput): Promise<ChangesSnapshotResult>;
|
|
15
|
+
}
|
|
16
|
+
export declare const CHANGES_LIST_LIMIT_MAX = 1000;
|
|
17
|
+
export declare const CHANGES_WAIT_MS_MAX = 30000;
|
|
18
|
+
export declare function validateChangesListInput(input: unknown): ChangesListInput;
|
|
19
|
+
export declare function validateChangesGetInput(input: unknown): ChangesGetInput;
|
|
20
|
+
export declare function validateChangesResolveInput(input: unknown): ChangesResolveInput;
|
|
21
|
+
export declare function validateChangesSnapshotInput(input: unknown): ChangesSnapshotInput;
|
|
22
|
+
export declare function executeChangesList(adapter: ChangesAdapter | undefined, input?: ChangesListInput): Promise<ChangesListResult>;
|
|
23
|
+
export declare function executeChangesGet(adapter: ChangesAdapter | undefined, input: ChangesGetInput): Promise<ChangeRecord | null>;
|
|
24
|
+
export declare function executeChangesResolve(adapter: ChangesAdapter | undefined, input: ChangesResolveInput): Promise<ChangesResolveResult>;
|
|
25
|
+
export declare function executeChangesActors(adapter: ChangesAdapter | undefined): Promise<ChangesActorsResult>;
|
|
26
|
+
export declare function executeChangesSnapshot(adapter: ChangesAdapter | undefined, input?: ChangesSnapshotInput): Promise<ChangesSnapshotResult>;
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { StoryLocator } from '../types/story.types.js';
|
|
2
|
+
export type ChangeCause = 'user' | 'api' | 'undo' | 'redo';
|
|
3
|
+
export type ChangeProvenance = 'authored' | 'declared' | 'relayed' | 'unknown';
|
|
4
|
+
export type ChangeOrigin = 'local' | 'remote';
|
|
5
|
+
export type ChangeActorType = 'human' | 'code';
|
|
6
|
+
export type ChangesIdentityState = 'configured' | 'missing';
|
|
7
|
+
export type ChangeSidecarKind = 'comment' | 'trackedChange' | 'bookmark';
|
|
8
|
+
export interface ChangeActor {
|
|
9
|
+
id: string | null;
|
|
10
|
+
name?: string;
|
|
11
|
+
email?: string;
|
|
12
|
+
claim?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ChangeTextRange {
|
|
15
|
+
start: number;
|
|
16
|
+
end: number;
|
|
17
|
+
}
|
|
18
|
+
export interface TextBlockChange {
|
|
19
|
+
kind: 'text';
|
|
20
|
+
story: StoryLocator;
|
|
21
|
+
blockId: string;
|
|
22
|
+
range: ChangeTextRange;
|
|
23
|
+
inserted: string;
|
|
24
|
+
deleted: string;
|
|
25
|
+
}
|
|
26
|
+
export interface FormatBlockChange {
|
|
27
|
+
kind: 'format';
|
|
28
|
+
story: StoryLocator;
|
|
29
|
+
blockId: string;
|
|
30
|
+
range: ChangeTextRange;
|
|
31
|
+
attributes: Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
export interface ParagraphBlockChange {
|
|
34
|
+
kind: 'paragraph';
|
|
35
|
+
story: StoryLocator;
|
|
36
|
+
blockId: string;
|
|
37
|
+
properties: Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
export interface SplitBlockChange {
|
|
40
|
+
kind: 'split';
|
|
41
|
+
story: StoryLocator;
|
|
42
|
+
blockId: string;
|
|
43
|
+
tailBlockId: string;
|
|
44
|
+
offset: number;
|
|
45
|
+
}
|
|
46
|
+
export interface MergeBlockChange {
|
|
47
|
+
kind: 'merge';
|
|
48
|
+
story: StoryLocator;
|
|
49
|
+
blockId: string;
|
|
50
|
+
mergedBlockId: string;
|
|
51
|
+
}
|
|
52
|
+
export interface MoveBlockChange {
|
|
53
|
+
kind: 'move';
|
|
54
|
+
story: StoryLocator;
|
|
55
|
+
blockId: string;
|
|
56
|
+
afterBlockId: string | null;
|
|
57
|
+
}
|
|
58
|
+
export interface CreateBlockChange {
|
|
59
|
+
kind: 'create';
|
|
60
|
+
story: StoryLocator;
|
|
61
|
+
blockId: string;
|
|
62
|
+
text: string;
|
|
63
|
+
}
|
|
64
|
+
export interface RemoveBlockChange {
|
|
65
|
+
kind: 'remove';
|
|
66
|
+
story: StoryLocator;
|
|
67
|
+
blockId: string;
|
|
68
|
+
text: string;
|
|
69
|
+
}
|
|
70
|
+
export interface TableBlockChange {
|
|
71
|
+
kind: 'table';
|
|
72
|
+
story: StoryLocator;
|
|
73
|
+
tableId: string;
|
|
74
|
+
detail: Record<string, unknown>;
|
|
75
|
+
}
|
|
76
|
+
export interface SidecarBlockChange {
|
|
77
|
+
kind: 'sidecar';
|
|
78
|
+
affects: ChangeSidecarKind;
|
|
79
|
+
ids: string[];
|
|
80
|
+
}
|
|
81
|
+
export type BlockChange = TextBlockChange | FormatBlockChange | ParagraphBlockChange | SplitBlockChange | MergeBlockChange | MoveBlockChange | CreateBlockChange | RemoveBlockChange | TableBlockChange | SidecarBlockChange;
|
|
82
|
+
export interface ChangeRecordTimes {
|
|
83
|
+
declared: string | null;
|
|
84
|
+
observed: string;
|
|
85
|
+
}
|
|
86
|
+
export interface ChangeRecordSession {
|
|
87
|
+
id: string | null;
|
|
88
|
+
clientId: number;
|
|
89
|
+
}
|
|
90
|
+
export interface ChangeRecord {
|
|
91
|
+
id: string;
|
|
92
|
+
seq: number;
|
|
93
|
+
revision: string;
|
|
94
|
+
origin: ChangeOrigin;
|
|
95
|
+
actor: ChangeActor | null;
|
|
96
|
+
contributors?: ChangeActor[];
|
|
97
|
+
actorType: ChangeActorType | null;
|
|
98
|
+
cause: ChangeCause | null;
|
|
99
|
+
provenance: ChangeProvenance;
|
|
100
|
+
at: ChangeRecordTimes;
|
|
101
|
+
session: ChangeRecordSession;
|
|
102
|
+
changeTag?: string;
|
|
103
|
+
changes: BlockChange[];
|
|
104
|
+
update?: string;
|
|
105
|
+
}
|
|
106
|
+
export interface ChangesListInput {
|
|
107
|
+
after?: string;
|
|
108
|
+
limit?: number;
|
|
109
|
+
story?: StoryLocator;
|
|
110
|
+
blockId?: string;
|
|
111
|
+
actorId?: string;
|
|
112
|
+
includeUpdate?: boolean;
|
|
113
|
+
waitMs?: number;
|
|
114
|
+
}
|
|
115
|
+
export interface ChangesListResult {
|
|
116
|
+
items: ChangeRecord[];
|
|
117
|
+
cursor: string | null;
|
|
118
|
+
truncated: boolean;
|
|
119
|
+
identity: ChangesIdentityState;
|
|
120
|
+
collaboration: boolean;
|
|
121
|
+
}
|
|
122
|
+
export interface ChangesGetInput {
|
|
123
|
+
id: string;
|
|
124
|
+
}
|
|
125
|
+
export interface ChangesResolveInput {
|
|
126
|
+
blockId: string;
|
|
127
|
+
limit?: number;
|
|
128
|
+
}
|
|
129
|
+
export interface ChangesResolveResult {
|
|
130
|
+
blockId: string;
|
|
131
|
+
lineage: string[];
|
|
132
|
+
items: ChangeRecord[];
|
|
133
|
+
}
|
|
134
|
+
export interface ChangesActorBinding {
|
|
135
|
+
clientId: number;
|
|
136
|
+
actorId: string | null;
|
|
137
|
+
name?: string;
|
|
138
|
+
email?: string;
|
|
139
|
+
sessionId: string;
|
|
140
|
+
declaredAt: string;
|
|
141
|
+
claim?: string;
|
|
142
|
+
}
|
|
143
|
+
export interface ChangesActorsResult {
|
|
144
|
+
items: ChangesActorBinding[];
|
|
145
|
+
}
|
|
146
|
+
export interface ChangesSnapshotInput {
|
|
147
|
+
includeState?: boolean;
|
|
148
|
+
}
|
|
149
|
+
export interface ChangesSnapshotResult {
|
|
150
|
+
revision: string;
|
|
151
|
+
cursor: string | null;
|
|
152
|
+
lastChangeId: string | null;
|
|
153
|
+
stateVector: string;
|
|
154
|
+
state?: string;
|
|
155
|
+
at: string;
|
|
156
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CommandCatalog, CommandStaticMetadata, OperationId } from './types.js';
|
|
2
2
|
export declare const COMMAND_CATALOG: CommandCatalog;
|
|
3
3
|
/** Operation IDs whose catalog entry has `mutates: true`. */
|
|
4
|
-
export declare const MUTATING_OPERATION_IDS: ("replace" | "find" | "delete" | "insert" | "info" | "selection.extractOoxml" | "selection.current" | "selection.releaseSnapshot" | "format.readSelection" | "projectHtml" | "projectMarkdown" | "capabilities.check" | "format.apply" | "comments.patch" | "trackChanges.decide" | "styles.getCatalog" | "blocks.delete" | "comments.create" | "blocks.split" | "blocks.merge" | "blocks.move" | "lists.getState" | "lists.apply" | "lists.continue" | "lists.restart" | "lists.remove" | "format.paragraph.setMarkRunProps" | "tables.moveRow" | "tables.moveColumn" | "format.bold" | "format.strike" | "format.color" | "format.position" | "format.cs" | "format.shading" | "format.rtl" | "format.fontFamily" | "format.lang" | "format.fontSize" | "format.fontSizeCs" | "format.highlight" | "format.italic" | "format.underline" | "format.caps" | "format.smallCaps" | "format.outline" | "format.shadow" | "format.emboss" | "format.imprint" | "format.vanish" | "format.webHidden" | "format.specVanish" | "format.border" | "format.dstrike" | "format.vertAlign" | "format.bCs" | "format.iCs" | "format.snapToGrid" | "format.oMath" | "format.letterSpacing" | "format.charScale" | "format.kerning" | "format.fitText" | "format.rStyle" | "format.rFonts" | "format.eastAsianLayout" | "format.em" | "format.ligatures" | "format.numForm" | "format.numSpacing" | "format.stylisticSets" | "format.contextualAlternates" | "get" | "getNode" | "getNodeById" | "getText" | "getMarkdown" | "getHtml" | "markdownToFragment" | "htmlToFragment" | "extract" | "clearContent" | "formatRange" | "blocks.findText" | "blocks.list" | "blocks.deleteRange" | "styles.apply" | "styles.create" | "styles.getTheme" | "templates.apply" | "create.paragraph" | "create.heading" | "create.sectionBreak" | "sections.list" | "sections.get" | "sections.setBreakType" | "sections.setPageMargins" | "sections.setHeaderFooterMargins" | "sections.setPageSetup" | "sections.setColumns" | "sections.setLineNumbering" | "sections.setPageNumbering" | "sections.setTitlePage" | "sections.setOddEvenHeadersFooters" | "sections.setVerticalAlign" | "sections.setSectionDirection" | "sections.setHeaderFooterRef" | "sections.clearHeaderFooterRef" | "sections.setLinkToPrevious" | "sections.setPageBorders" | "sections.clearPageBorders" | "styles.paragraph.setStyle" | "styles.paragraph.setStyleRef" | "styles.paragraph.clearStyle" | "format.paragraph.resetDirectFormatting" | "format.paragraph.setAlignment" | "format.paragraph.clearAlignment" | "format.paragraph.setIndentation" | "format.paragraph.clearIndentation" | "format.paragraph.setSpacing" | "format.paragraph.clearSpacing" | "format.paragraph.setKeepOptions" | "format.paragraph.setOutlineLevel" | "format.paragraph.setFlowOptions" | "format.paragraph.setTabStop" | "format.paragraph.clearTabStop" | "format.paragraph.clearAllTabStops" | "format.paragraph.setBorder" | "format.paragraph.clearBorder" | "format.paragraph.setShading" | "format.paragraph.clearShading" | "format.paragraph.setDirection" | "format.paragraph.clearDirection" | "format.paragraph.setNumbering" | "lists.list" | "lists.get" | "lists.insert" | "lists.create" | "lists.attach" | "lists.detach" | "lists.delete" | "lists.indent" | "lists.outdent" | "lists.join" | "lists.canJoin" | "lists.separate" | "lists.merge" | "lists.split" | "lists.setLevel" | "lists.setValue" | "lists.continuePrevious" | "lists.canContinuePrevious" | "lists.setLevelRestart" | "lists.convertToText" | "lists.applyTemplate" | "lists.applyPreset" | "lists.setType" | "lists.captureTemplate" | "lists.setLevelNumbering" | "lists.setLevelBullet" | "lists.setLevelPictureBullet" | "lists.setLevelAlignment" | "lists.setLevelIndents" | "lists.setLevelTrailingCharacter" | "lists.setLevelMarkerFont" | "lists.clearLevelOverrides" | "lists.getStyle" | "lists.applyStyle" | "lists.restartAt" | "lists.setLevelNumberStyle" | "lists.setLevelText" | "lists.setLevelStart" | "lists.setLevelLayout" | "comments.delete" | "comments.get" | "comments.list" | "trackChanges.list" | "trackChanges.get" | "query.match" | "ranges.resolve" | "mutations.beginTemporary" | "mutations.replaceTemporary" | "mutations.rollbackTemporary" | "mutations.commitTemporary" | "mutations.preview" | "mutations.apply" | "plan.execute" | "capabilities.get" | "capabilities.resolve" | "create.table" | "tables.convertFromText" | "tables.delete" | "tables.clearContents" | "tables.move" | "tables.split" | "tables.convertToText" | "tables.setLayout" | "tables.insertRow" | "tables.deleteRow" | "tables.setRowHeight" | "tables.distributeRows" | "tables.setRowOptions" | "tables.insertColumn" | "tables.deleteColumn" | "tables.setColumnWidth" | "tables.distributeColumns" | "tables.insertCell" | "tables.deleteCell" | "tables.mergeCells" | "tables.unmergeCells" | "tables.splitCell" | "tables.setCellProperties" | "tables.setCellText" | "tables.sort" | "tables.setAltText" | "tables.setStyle" | "tables.clearStyle" | "tables.setStyleOption" | "tables.setBorder" | "tables.clearBorder" | "tables.applyBorderPreset" | "tables.setShading" | "tables.clearShading" | "tables.setTablePadding" | "tables.setCellPadding" | "tables.setCellSpacing" | "tables.clearCellSpacing" | "tables.applyStyle" | "tables.setBorders" | "tables.setTableOptions" | "tables.applyPreset" | "tables.get" | "tables.getCells" | "tables.getProperties" | "tables.getStyles" | "tables.setDefaultStyle" | "tables.clearDefaultStyle" | "create.tableOfContents" | "toc.list" | "toc.get" | "toc.configure" | "toc.update" | "toc.remove" | "toc.markEntry" | "toc.unmarkEntry" | "toc.listEntries" | "toc.getEntry" | "toc.editEntry" | "history.get" | "history.undo" | "history.redo" | "create.image" | "images.list" | "images.get" | "images.delete" | "images.move" | "images.convertToInline" | "images.convertToFloating" | "images.setSize" | "images.setWrapType" | "images.setWrapSide" | "images.setWrapDistances" | "images.setPosition" | "images.setAnchorOptions" | "images.setZOrder" | "images.scale" | "images.setLockAspectRatio" | "images.rotate" | "images.flip" | "images.crop" | "images.resetCrop" | "images.replaceSource" | "images.setAltText" | "images.setDecorative" | "images.setName" | "images.setHyperlink" | "images.insertCaption" | "images.updateCaption" | "images.removeCaption" | "hyperlinks.list" | "hyperlinks.get" | "hyperlinks.wrap" | "hyperlinks.insert" | "hyperlinks.patch" | "hyperlinks.remove" | "headerFooters.list" | "headerFooters.get" | "headerFooters.resolve" | "headerFooters.refs.set" | "headerFooters.refs.clear" | "headerFooters.refs.setLinkedToPrevious" | "headerFooters.parts.list" | "headerFooters.parts.create" | "headerFooters.parts.delete" | "headerFooters.pageNumbers.get" | "headerFooters.pageNumbers.insert" | "headerFooters.pageNumbers.set" | "headerFooters.pageNumbers.remove" | "watermarks.apply" | "watermarks.list" | "watermarks.insert" | "watermarks.replace" | "watermarks.remove" | "create.contentControl" | "contentControls.list" | "contentControls.get" | "contentControls.listInRange" | "contentControls.selectByTag" | "contentControls.selectByTitle" | "contentControls.listChildren" | "contentControls.getParent" | "contentControls.wrap" | "contentControls.unwrap" | "contentControls.delete" | "contentControls.copy" | "contentControls.move" | "contentControls.patch" | "contentControls.setLockMode" | "contentControls.setType" | "contentControls.getContent" | "contentControls.replaceContent" | "contentControls.clearContent" | "contentControls.appendContent" | "contentControls.prependContent" | "contentControls.insertBefore" | "contentControls.insertAfter" | "contentControls.getBinding" | "contentControls.setBinding" | "contentControls.clearBinding" | "contentControls.getRawProperties" | "contentControls.patchRawProperties" | "contentControls.validateWordCompatibility" | "contentControls.normalizeWordCompatibility" | "contentControls.normalizeTagPayload" | "contentControls.text.setMultiline" | "contentControls.text.setValue" | "contentControls.text.clearValue" | "contentControls.date.setValue" | "contentControls.date.clearValue" | "contentControls.date.setDisplayFormat" | "contentControls.date.setDisplayLocale" | "contentControls.date.setStorageFormat" | "contentControls.date.setCalendar" | "contentControls.checkbox.getState" | "contentControls.checkbox.setState" | "contentControls.checkbox.toggle" | "contentControls.checkbox.setSymbolPair" | "contentControls.choiceList.getItems" | "contentControls.choiceList.setItems" | "contentControls.choiceList.setSelected" | "contentControls.repeatingSection.listItems" | "contentControls.repeatingSection.insertItemBefore" | "contentControls.repeatingSection.insertItemAfter" | "contentControls.repeatingSection.cloneItem" | "contentControls.repeatingSection.deleteItem" | "contentControls.repeatingSection.setAllowInsertDelete" | "contentControls.group.wrap" | "contentControls.group.ungroup" | "bookmarks.list" | "bookmarks.get" | "bookmarks.insert" | "bookmarks.rename" | "bookmarks.remove" | "footnotes.list" | "footnotes.get" | "footnotes.insert" | "footnotes.update" | "footnotes.remove" | "footnotes.configure" | "clipboard.parse" | "clipboard.insert" | "clipboard.serializeSelection" | "crossRefs.list" | "crossRefs.get" | "crossRefs.insert" | "crossRefs.rebuild" | "crossRefs.remove" | "index.list" | "index.get" | "index.insert" | "index.configure" | "index.rebuild" | "index.remove" | "index.entries.list" | "index.entries.get" | "index.entries.insert" | "index.entries.update" | "index.entries.remove" | "captions.list" | "captions.get" | "captions.insert" | "captions.update" | "captions.remove" | "captions.configure" | "fields.list" | "fields.get" | "fields.insert" | "fields.rebuild" | "fields.remove" | "citations.list" | "citations.get" | "citations.insert" | "citations.update" | "citations.remove" | "citations.sources.list" | "citations.sources.get" | "citations.sources.insert" | "citations.sources.update" | "citations.sources.remove" | "citations.bibliography.get" | "citations.bibliography.insert" | "citations.bibliography.rebuild" | "citations.bibliography.configure" | "citations.bibliography.remove" | "authorities.list" | "authorities.get" | "authorities.insert" | "authorities.configure" | "authorities.rebuild" | "authorities.remove" | "authorities.entries.list" | "authorities.entries.get" | "authorities.entries.insert" | "authorities.entries.update" | "authorities.entries.remove" | "diff.capture" | "diff.compare" | "diff.apply" | "export.toDocx" | "protection.get" | "protection.setEditingRestriction" | "protection.clearEditingRestriction" | "permissionRanges.list" | "permissionRanges.get" | "permissionRanges.create" | "permissionRanges.remove" | "permissionRanges.updatePrincipal" | "customXml.parts.list" | "customXml.parts.get" | "customXml.parts.create" | "customXml.parts.patch" | "customXml.parts.remove" | "metadata.attach" | "metadata.list" | "metadata.get" | "metadata.update" | "metadata.remove" | "metadata.resolve")[];
|
|
4
|
+
export declare const MUTATING_OPERATION_IDS: ("insert" | "replace" | "find" | "delete" | "info" | "selection.extractOoxml" | "selection.current" | "selection.releaseSnapshot" | "format.readSelection" | "projectHtml" | "projectMarkdown" | "capabilities.check" | "format.apply" | "comments.patch" | "trackChanges.decide" | "styles.getCatalog" | "blocks.delete" | "comments.create" | "blocks.split" | "blocks.merge" | "blocks.move" | "lists.getState" | "lists.apply" | "lists.continue" | "lists.restart" | "lists.remove" | "format.paragraph.setMarkRunProps" | "tables.moveRow" | "tables.moveColumn" | "format.bold" | "format.strike" | "format.color" | "format.position" | "format.cs" | "format.shading" | "format.rtl" | "format.fontFamily" | "format.lang" | "format.fontSize" | "format.fontSizeCs" | "format.highlight" | "format.italic" | "format.underline" | "format.caps" | "format.smallCaps" | "format.outline" | "format.shadow" | "format.emboss" | "format.imprint" | "format.vanish" | "format.webHidden" | "format.specVanish" | "format.border" | "format.dstrike" | "format.vertAlign" | "format.bCs" | "format.iCs" | "format.snapToGrid" | "format.oMath" | "format.letterSpacing" | "format.charScale" | "format.kerning" | "format.fitText" | "format.rStyle" | "format.rFonts" | "format.eastAsianLayout" | "format.em" | "format.ligatures" | "format.numForm" | "format.numSpacing" | "format.stylisticSets" | "format.contextualAlternates" | "get" | "getNode" | "getNodeById" | "getText" | "getMarkdown" | "getHtml" | "markdownToFragment" | "htmlToFragment" | "extract" | "clearContent" | "formatRange" | "blocks.findText" | "blocks.list" | "blocks.deleteRange" | "styles.apply" | "styles.create" | "styles.getTheme" | "templates.apply" | "create.paragraph" | "create.heading" | "create.sectionBreak" | "sections.list" | "sections.get" | "sections.setBreakType" | "sections.setPageMargins" | "sections.setHeaderFooterMargins" | "sections.setPageSetup" | "sections.setColumns" | "sections.setLineNumbering" | "sections.setPageNumbering" | "sections.setTitlePage" | "sections.setOddEvenHeadersFooters" | "sections.setVerticalAlign" | "sections.setSectionDirection" | "sections.setHeaderFooterRef" | "sections.clearHeaderFooterRef" | "sections.setLinkToPrevious" | "sections.setPageBorders" | "sections.clearPageBorders" | "styles.paragraph.setStyle" | "styles.paragraph.setStyleRef" | "styles.paragraph.clearStyle" | "format.paragraph.resetDirectFormatting" | "format.paragraph.setAlignment" | "format.paragraph.clearAlignment" | "format.paragraph.setIndentation" | "format.paragraph.clearIndentation" | "format.paragraph.setSpacing" | "format.paragraph.clearSpacing" | "format.paragraph.setKeepOptions" | "format.paragraph.setOutlineLevel" | "format.paragraph.setFlowOptions" | "format.paragraph.setTabStop" | "format.paragraph.clearTabStop" | "format.paragraph.clearAllTabStops" | "format.paragraph.setBorder" | "format.paragraph.clearBorder" | "format.paragraph.setShading" | "format.paragraph.clearShading" | "format.paragraph.setDirection" | "format.paragraph.clearDirection" | "format.paragraph.setNumbering" | "lists.list" | "lists.get" | "lists.insert" | "lists.create" | "lists.attach" | "lists.detach" | "lists.delete" | "lists.indent" | "lists.outdent" | "lists.join" | "lists.canJoin" | "lists.separate" | "lists.merge" | "lists.split" | "lists.setLevel" | "lists.setValue" | "lists.continuePrevious" | "lists.canContinuePrevious" | "lists.setLevelRestart" | "lists.convertToText" | "lists.applyTemplate" | "lists.applyPreset" | "lists.setType" | "lists.captureTemplate" | "lists.setLevelNumbering" | "lists.setLevelBullet" | "lists.setLevelPictureBullet" | "lists.setLevelAlignment" | "lists.setLevelIndents" | "lists.setLevelTrailingCharacter" | "lists.setLevelMarkerFont" | "lists.clearLevelOverrides" | "lists.getStyle" | "lists.applyStyle" | "lists.restartAt" | "lists.setLevelNumberStyle" | "lists.setLevelText" | "lists.setLevelStart" | "lists.setLevelLayout" | "comments.delete" | "comments.get" | "comments.list" | "trackChanges.list" | "trackChanges.get" | "query.match" | "ranges.resolve" | "mutations.beginTemporary" | "mutations.replaceTemporary" | "mutations.rollbackTemporary" | "mutations.commitTemporary" | "mutations.preview" | "mutations.apply" | "plan.execute" | "capabilities.get" | "capabilities.resolve" | "create.table" | "tables.convertFromText" | "tables.delete" | "tables.clearContents" | "tables.move" | "tables.split" | "tables.convertToText" | "tables.setLayout" | "tables.insertRow" | "tables.deleteRow" | "tables.setRowHeight" | "tables.distributeRows" | "tables.setRowOptions" | "tables.insertColumn" | "tables.deleteColumn" | "tables.setColumnWidth" | "tables.distributeColumns" | "tables.insertCell" | "tables.deleteCell" | "tables.mergeCells" | "tables.unmergeCells" | "tables.splitCell" | "tables.setCellProperties" | "tables.setCellText" | "tables.sort" | "tables.setAltText" | "tables.setStyle" | "tables.clearStyle" | "tables.setStyleOption" | "tables.setBorder" | "tables.clearBorder" | "tables.applyBorderPreset" | "tables.setShading" | "tables.clearShading" | "tables.setTablePadding" | "tables.setCellPadding" | "tables.setCellSpacing" | "tables.clearCellSpacing" | "tables.applyStyle" | "tables.setBorders" | "tables.setTableOptions" | "tables.applyPreset" | "tables.get" | "tables.getCells" | "tables.getProperties" | "tables.getStyles" | "tables.setDefaultStyle" | "tables.clearDefaultStyle" | "create.tableOfContents" | "toc.list" | "toc.get" | "toc.configure" | "toc.update" | "toc.remove" | "toc.markEntry" | "toc.unmarkEntry" | "toc.listEntries" | "toc.getEntry" | "toc.editEntry" | "history.get" | "history.undo" | "history.redo" | "changes.list" | "changes.get" | "changes.resolve" | "changes.actors" | "changes.snapshot" | "create.image" | "images.list" | "images.get" | "images.delete" | "images.move" | "images.convertToInline" | "images.convertToFloating" | "images.setSize" | "images.setWrapType" | "images.setWrapSide" | "images.setWrapDistances" | "images.setPosition" | "images.setAnchorOptions" | "images.setZOrder" | "images.scale" | "images.setLockAspectRatio" | "images.rotate" | "images.flip" | "images.crop" | "images.resetCrop" | "images.replaceSource" | "images.setAltText" | "images.setDecorative" | "images.setName" | "images.setHyperlink" | "images.insertCaption" | "images.updateCaption" | "images.removeCaption" | "hyperlinks.list" | "hyperlinks.get" | "hyperlinks.wrap" | "hyperlinks.insert" | "hyperlinks.patch" | "hyperlinks.remove" | "headerFooters.list" | "headerFooters.get" | "headerFooters.resolve" | "headerFooters.refs.set" | "headerFooters.refs.clear" | "headerFooters.refs.setLinkedToPrevious" | "headerFooters.parts.list" | "headerFooters.parts.create" | "headerFooters.parts.delete" | "headerFooters.pageNumbers.get" | "headerFooters.pageNumbers.insert" | "headerFooters.pageNumbers.set" | "headerFooters.pageNumbers.remove" | "watermarks.apply" | "watermarks.list" | "watermarks.insert" | "watermarks.replace" | "watermarks.remove" | "create.contentControl" | "contentControls.list" | "contentControls.get" | "contentControls.listInRange" | "contentControls.selectByTag" | "contentControls.selectByTitle" | "contentControls.listChildren" | "contentControls.getParent" | "contentControls.wrap" | "contentControls.unwrap" | "contentControls.delete" | "contentControls.copy" | "contentControls.move" | "contentControls.patch" | "contentControls.setLockMode" | "contentControls.setType" | "contentControls.getContent" | "contentControls.replaceContent" | "contentControls.clearContent" | "contentControls.appendContent" | "contentControls.prependContent" | "contentControls.insertBefore" | "contentControls.insertAfter" | "contentControls.getBinding" | "contentControls.setBinding" | "contentControls.clearBinding" | "contentControls.getRawProperties" | "contentControls.patchRawProperties" | "contentControls.validateWordCompatibility" | "contentControls.normalizeWordCompatibility" | "contentControls.normalizeTagPayload" | "contentControls.text.setMultiline" | "contentControls.text.setValue" | "contentControls.text.clearValue" | "contentControls.date.setValue" | "contentControls.date.clearValue" | "contentControls.date.setDisplayFormat" | "contentControls.date.setDisplayLocale" | "contentControls.date.setStorageFormat" | "contentControls.date.setCalendar" | "contentControls.checkbox.getState" | "contentControls.checkbox.setState" | "contentControls.checkbox.toggle" | "contentControls.checkbox.setSymbolPair" | "contentControls.choiceList.getItems" | "contentControls.choiceList.setItems" | "contentControls.choiceList.setSelected" | "contentControls.repeatingSection.listItems" | "contentControls.repeatingSection.insertItemBefore" | "contentControls.repeatingSection.insertItemAfter" | "contentControls.repeatingSection.cloneItem" | "contentControls.repeatingSection.deleteItem" | "contentControls.repeatingSection.setAllowInsertDelete" | "contentControls.group.wrap" | "contentControls.group.ungroup" | "bookmarks.list" | "bookmarks.get" | "bookmarks.insert" | "bookmarks.rename" | "bookmarks.remove" | "footnotes.list" | "footnotes.get" | "footnotes.insert" | "footnotes.update" | "footnotes.remove" | "footnotes.configure" | "clipboard.parse" | "clipboard.insert" | "clipboard.serializeSelection" | "crossRefs.list" | "crossRefs.get" | "crossRefs.insert" | "crossRefs.rebuild" | "crossRefs.remove" | "index.list" | "index.get" | "index.insert" | "index.configure" | "index.rebuild" | "index.remove" | "index.entries.list" | "index.entries.get" | "index.entries.insert" | "index.entries.update" | "index.entries.remove" | "captions.list" | "captions.get" | "captions.insert" | "captions.update" | "captions.remove" | "captions.configure" | "fields.list" | "fields.get" | "fields.insert" | "fields.rebuild" | "fields.remove" | "citations.list" | "citations.get" | "citations.insert" | "citations.update" | "citations.remove" | "citations.sources.list" | "citations.sources.get" | "citations.sources.insert" | "citations.sources.update" | "citations.sources.remove" | "citations.bibliography.get" | "citations.bibliography.insert" | "citations.bibliography.rebuild" | "citations.bibliography.configure" | "citations.bibliography.remove" | "authorities.list" | "authorities.get" | "authorities.insert" | "authorities.configure" | "authorities.rebuild" | "authorities.remove" | "authorities.entries.list" | "authorities.entries.get" | "authorities.entries.insert" | "authorities.entries.update" | "authorities.entries.remove" | "diff.capture" | "diff.compare" | "diff.apply" | "export.toDocx" | "protection.get" | "protection.setEditingRestriction" | "protection.clearEditingRestriction" | "permissionRanges.list" | "permissionRanges.get" | "permissionRanges.create" | "permissionRanges.remove" | "permissionRanges.updatePrincipal" | "customXml.parts.list" | "customXml.parts.get" | "customXml.parts.create" | "customXml.parts.patch" | "customXml.parts.remove" | "metadata.attach" | "metadata.list" | "metadata.get" | "metadata.update" | "metadata.remove" | "metadata.resolve")[];
|
|
5
5
|
/** Maps each operation to its human-readable description. */
|
|
6
6
|
export declare const OPERATION_DESCRIPTION_MAP: Record<OperationId, string>;
|
|
7
7
|
/** Maps each operation to whether it requires an open document to execute. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommandStaticMetadata } from './metadata-types.js';
|
|
2
|
-
export type ReferenceGroupKey = 'core' | 'blocks' | 'capabilities' | 'create' | 'sections' | 'format' | 'format.paragraph' | 'styles' | 'styles.paragraph' | 'templates' | 'lists' | 'comments' | 'trackChanges' | 'query' | 'mutations' | 'tables' | 'history' | 'toc' | 'images' | 'hyperlinks' | 'headerFooters' | 'watermarks' | 'contentControls' | 'bookmarks' | 'footnotes' | 'clipboard' | 'crossRefs' | 'index' | 'captions' | 'fields' | 'citations' | 'authorities' | 'ranges' | 'selection' | 'diff' | 'export' | 'protection' | 'permissionRanges' | 'customXml' | 'metadata';
|
|
2
|
+
export type ReferenceGroupKey = 'core' | 'blocks' | 'capabilities' | 'create' | 'sections' | 'format' | 'format.paragraph' | 'styles' | 'styles.paragraph' | 'templates' | 'lists' | 'comments' | 'trackChanges' | 'query' | 'mutations' | 'tables' | 'history' | 'changes' | 'toc' | 'images' | 'hyperlinks' | 'headerFooters' | 'watermarks' | 'contentControls' | 'bookmarks' | 'footnotes' | 'clipboard' | 'crossRefs' | 'index' | 'captions' | 'fields' | 'citations' | 'authorities' | 'ranges' | 'selection' | 'diff' | 'export' | 'protection' | 'permissionRanges' | 'customXml' | 'metadata';
|
|
3
3
|
export interface OperationDefinitionEntry {
|
|
4
4
|
memberPath: string;
|
|
5
5
|
description: string;
|
|
@@ -1800,6 +1800,56 @@ export declare const OPERATION_DEFINITIONS: {
|
|
|
1800
1800
|
readonly intentGroup: "edit";
|
|
1801
1801
|
readonly intentAction: "redo";
|
|
1802
1802
|
};
|
|
1803
|
+
readonly 'changes.list': {
|
|
1804
|
+
readonly memberPath: "changes.list";
|
|
1805
|
+
readonly description: "List the change records this session retains, oldest first, with each change's actor, cause, provenance and affected blocks. Pass the returned cursor back as `after` to read only newer records; `waitMs` long-polls until at least one newer record exists.";
|
|
1806
|
+
readonly expectedResult: "Returns a ChangesListResult with items (oldest to newest), a resume cursor, a truncated flag when records after `after` were evicted, the session identity state and whether the session is collaborative.";
|
|
1807
|
+
readonly requiresDocumentContext: true;
|
|
1808
|
+
readonly metadata: CommandStaticMetadata;
|
|
1809
|
+
readonly referenceDocPath: "changes/list.mdx";
|
|
1810
|
+
readonly referenceGroup: "changes";
|
|
1811
|
+
readonly batchable: false;
|
|
1812
|
+
};
|
|
1813
|
+
readonly 'changes.get': {
|
|
1814
|
+
readonly memberPath: "changes.get";
|
|
1815
|
+
readonly description: "Get one retained change record by id.";
|
|
1816
|
+
readonly expectedResult: "Returns the ChangeRecord with that id, or null when this session does not retain it.";
|
|
1817
|
+
readonly requiresDocumentContext: true;
|
|
1818
|
+
readonly metadata: CommandStaticMetadata;
|
|
1819
|
+
readonly referenceDocPath: "changes/get.mdx";
|
|
1820
|
+
readonly referenceGroup: "changes";
|
|
1821
|
+
readonly batchable: false;
|
|
1822
|
+
};
|
|
1823
|
+
readonly 'changes.resolve': {
|
|
1824
|
+
readonly memberPath: "changes.resolve";
|
|
1825
|
+
readonly description: "List the retained change records that touched a block, following the blocks it was split from or merged with.";
|
|
1826
|
+
readonly expectedResult: "Returns a ChangesResolveResult with the block id, its lineage (the block plus the blocks it was split from or merged with) and the matching records, oldest to newest.";
|
|
1827
|
+
readonly requiresDocumentContext: true;
|
|
1828
|
+
readonly metadata: CommandStaticMetadata;
|
|
1829
|
+
readonly referenceDocPath: "changes/resolve.mdx";
|
|
1830
|
+
readonly referenceGroup: "changes";
|
|
1831
|
+
readonly batchable: false;
|
|
1832
|
+
};
|
|
1833
|
+
readonly 'changes.actors': {
|
|
1834
|
+
readonly memberPath: "changes.actors";
|
|
1835
|
+
readonly description: "List the identities that collaboration clients declared for this document. Identities and claims are declared by each client and are not verified by SuperDoc.";
|
|
1836
|
+
readonly expectedResult: "Returns a ChangesActorsResult with one item per declared client binding: client id, actor id, optional name, email and claim, session id and declaration time.";
|
|
1837
|
+
readonly requiresDocumentContext: true;
|
|
1838
|
+
readonly metadata: CommandStaticMetadata;
|
|
1839
|
+
readonly referenceDocPath: "changes/actors.mdx";
|
|
1840
|
+
readonly referenceGroup: "changes";
|
|
1841
|
+
readonly batchable: false;
|
|
1842
|
+
};
|
|
1843
|
+
readonly 'changes.snapshot': {
|
|
1844
|
+
readonly memberPath: "changes.snapshot";
|
|
1845
|
+
readonly description: "Capture the current revision, change cursor and collaboration state vector so a verifier can later replay or compare change records against this point.";
|
|
1846
|
+
readonly expectedResult: "Returns a ChangesSnapshotResult with the revision, change cursor, last change id, base64 state vector, optional base64 full state and capture time.";
|
|
1847
|
+
readonly requiresDocumentContext: true;
|
|
1848
|
+
readonly metadata: CommandStaticMetadata;
|
|
1849
|
+
readonly referenceDocPath: "changes/snapshot.mdx";
|
|
1850
|
+
readonly referenceGroup: "changes";
|
|
1851
|
+
readonly batchable: false;
|
|
1852
|
+
};
|
|
1803
1853
|
readonly 'create.image': {
|
|
1804
1854
|
readonly memberPath: "create.image";
|
|
1805
1855
|
readonly description: "Insert a new image at the target position.";
|
|
@@ -17,11 +17,7 @@ export interface CreateApi {
|
|
|
17
17
|
export type CreateAdapter = CreateApi;
|
|
18
18
|
export declare function normalizeCreateParagraphInput(input: CreateParagraphInput): CreateParagraphInput;
|
|
19
19
|
export declare function executeCreateParagraph(adapter: CreateAdapter, input: CreateParagraphInput, options?: MutationOptions): CreateParagraphResult;
|
|
20
|
-
export declare function normalizeCreateHeadingInput(input: CreateHeadingInput): CreateHeadingInput;
|
|
21
20
|
export declare function executeCreateHeading(adapter: CreateAdapter, input: CreateHeadingInput, options?: MutationOptions): CreateHeadingResult;
|
|
22
|
-
export declare function normalizeCreateTableInput(input: CreateTableInput): CreateTableInput;
|
|
23
21
|
export declare function executeCreateTable(adapter: CreateAdapter, input: CreateTableInput, options?: MutationOptions): CreateTableResult;
|
|
24
|
-
export declare function normalizeCreateSectionBreakInput(input: CreateSectionBreakInput): CreateSectionBreakInput;
|
|
25
22
|
export declare function executeCreateSectionBreak(adapter: CreateAdapter, input: CreateSectionBreakInput, options?: MutationOptions): CreateSectionBreakResult;
|
|
26
|
-
export declare function normalizeCreateTableOfContentsInput(input: CreateTableOfContentsInput): CreateTableOfContentsInput;
|
|
27
23
|
export declare function executeCreateTableOfContents(adapter: CreateAdapter, input: CreateTableOfContentsInput, options?: MutationOptions): CreateTableOfContentsResult;
|
|
@@ -105,23 +105,23 @@ export interface DiffApplyResult {
|
|
|
105
105
|
coverage: DiffCoverage;
|
|
106
106
|
summary: DiffSummary;
|
|
107
107
|
diagnostics: string[];
|
|
108
|
-
/** Style
|
|
108
|
+
/** Style policy used for this comparison. Tracked mode preserves unused proposal definitions after rejection. */
|
|
109
109
|
styleChanges?: {
|
|
110
|
-
changeMode: 'direct';
|
|
110
|
+
changeMode: 'direct' | 'tracked';
|
|
111
111
|
partUris: string[];
|
|
112
112
|
};
|
|
113
113
|
}
|
|
114
114
|
/** Input for `diff.compare`. */
|
|
115
115
|
export interface DiffCompareInput {
|
|
116
116
|
targetSnapshot: DiffSnapshot;
|
|
117
|
-
/**
|
|
118
|
-
styleChangeMode?: 'direct';
|
|
117
|
+
/** Directly adopt definitions, or review references to separate proposed styles. */
|
|
118
|
+
styleChangeMode?: 'direct' | 'tracked';
|
|
119
119
|
}
|
|
120
120
|
/** Input for `diff.apply`. */
|
|
121
121
|
export interface DiffApplyInput {
|
|
122
122
|
diff: DiffPayload;
|
|
123
|
-
/**
|
|
124
|
-
styleChangeMode?: 'direct';
|
|
123
|
+
/** Tracked styles require tracked application; direct styles persist after body rejection. */
|
|
124
|
+
styleChangeMode?: 'direct' | 'tracked';
|
|
125
125
|
}
|
|
126
126
|
/** How body content changes are applied. */
|
|
127
127
|
export type DiffChangeMode = 'direct' | 'tracked';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MutationOptions } from '../write/write.js';
|
|
2
2
|
import { SectionMutationResult } from '../sections/sections.types.js';
|
|
3
|
-
import {
|
|
3
|
+
import { HeaderFooterSlotAddress, HeaderFooterPartAddress, HeaderFooterSlotEntry, HeaderFooterResolveResult, HeaderFootersListQuery, HeaderFootersListResult, HeaderFootersGetInput, HeaderFootersResolveInput, HeaderFootersRefsSetInput, HeaderFootersRefsClearInput, HeaderFootersRefsSetLinkedToPreviousInput, HeaderFootersPartsListQuery, HeaderFootersPartsListResult, HeaderFootersPartsCreateInput, HeaderFootersPartsDeleteInput, HeaderFooterPartsMutationResult, HeaderFootersPageNumbersInsertInput, HeaderFooterPageNumbersInsertResult, HeaderFootersPageNumbersSetInput, HeaderFooterPageNumbersSetResult, HeaderFootersPageNumbersRemoveInput, HeaderFooterPageNumbersRemoveResult, HeaderFootersPageNumbersGetInput, HeaderFooterPageNumbersInfo } from './header-footers.types.js';
|
|
4
4
|
export type { HeaderFooterKind, HeaderFooterVariant, HeaderFooterSlotAddress, HeaderFooterPartAddress, HeaderFooterSlotEntry, HeaderFooterResolveResult, HeaderFooterPartEntry, HeaderFootersListQuery, HeaderFootersListResult, HeaderFootersGetInput, HeaderFootersResolveInput, HeaderFootersRefsSetInput, HeaderFootersRefsClearInput, HeaderFootersRefsSetLinkedToPreviousInput, HeaderFootersPartsListQuery, HeaderFootersPartsListResult, HeaderFootersPartsCreateInput, HeaderFootersPartsDeleteInput, HeaderFooterPartsMutationResult, HeaderFooterRefsMutationResult, HeaderFooterRefsMutationSuccessResult, HeaderFooterRefsMutationFailureResult, HeaderFooterPartsMutationSuccessResult, HeaderFooterPartsMutationFailureResult, HeaderFooterPageNumberAlignment, HeaderFootersPageNumbersInsertInput, HeaderFooterPageNumbersInsertResult, HeaderFooterPageNumbersInsertSuccessResult, HeaderFooterPageNumbersInsertFailureResult, HeaderFootersPageNumbersNumberingInput, HeaderFootersPageNumbersSetInput, HeaderFooterPageNumbersSetResult, HeaderFootersPageNumbersRemoveInput, HeaderFooterPageNumbersRemoveResult, HeaderFooterPageNumbersRemoveSuccessResult, HeaderFootersPageNumbersGetInput, HeaderFooterPageNumberPlacement, HeaderFooterPageNumbersInfo, } from './header-footers.types.js';
|
|
5
5
|
export interface HeaderFootersAdapter {
|
|
6
6
|
list(query?: HeaderFootersListQuery): HeaderFootersListResult;
|
|
@@ -27,8 +27,6 @@ export interface HeaderFootersAdapter {
|
|
|
27
27
|
export type HeaderFootersApi = Omit<HeaderFootersAdapter, 'pageNumbers'> & {
|
|
28
28
|
pageNumbers: NonNullable<HeaderFootersAdapter['pageNumbers']>;
|
|
29
29
|
};
|
|
30
|
-
export declare function validateHeaderFooterKind(operationName: string, kind: unknown): asserts kind is HeaderFooterKind;
|
|
31
|
-
export declare function validateHeaderFooterVariant(operationName: string, variant: unknown): asserts variant is HeaderFooterVariant;
|
|
32
30
|
export declare function assertHeaderFooterSlotTarget(input: unknown, operationName: string): asserts input is {
|
|
33
31
|
target: HeaderFooterSlotAddress;
|
|
34
32
|
};
|
|
@@ -40,6 +40,7 @@ import { OperationId } from './contract/types.js';
|
|
|
40
40
|
import { DynamicInvokeRequest, InvokeRequest, InvokeResult } from './contract/operation-registry.js';
|
|
41
41
|
import { PlanApi, PlanExecuteResult, AtomicPlanExecutor } from './plan/plan.js';
|
|
42
42
|
import { HistoryAdapter, HistoryApi } from './history/history.js';
|
|
43
|
+
import { ChangesAdapter, ChangesApi } from './changes/changes.js';
|
|
43
44
|
import { DiffAdapter, DiffApi } from './diff/diff.js';
|
|
44
45
|
import { ExportAdapter, ExportApi } from './export/export.js';
|
|
45
46
|
import { ParagraphsAdapter, ParagraphFormatApi, ParagraphStylesApi } from './paragraphs/paragraphs.js';
|
|
@@ -72,6 +73,9 @@ export * from './capabilities/html-markdown-support.js';
|
|
|
72
73
|
export * from './inline-semantics/index.js';
|
|
73
74
|
export type { HistoryAdapter, HistoryApi } from './history/history.js';
|
|
74
75
|
export { executeHistoryGet, executeHistoryUndo, executeHistoryRedo } from './history/history.js';
|
|
76
|
+
export type { ChangesAdapter, ChangesApi } from './changes/changes.js';
|
|
77
|
+
export { CHANGES_LIST_LIMIT_MAX, CHANGES_WAIT_MS_MAX, executeChangesActors, executeChangesGet, executeChangesList, executeChangesResolve, executeChangesSnapshot, } from './changes/changes.js';
|
|
78
|
+
export type * from './changes/changes.types.js';
|
|
75
79
|
export type { DiffAdapter, DiffApi } from './diff/diff.js';
|
|
76
80
|
export * from './diff/diff.types.js';
|
|
77
81
|
export type { ExportAdapter, ExportApi } from './export/export.js';
|
|
@@ -517,6 +521,7 @@ export interface DocumentApiSurface {
|
|
|
517
521
|
* Session-scoped: reflects the runtime undo/redo stack, not persistent state.
|
|
518
522
|
*/
|
|
519
523
|
history: HistoryApi;
|
|
524
|
+
changes: ChangesApi;
|
|
520
525
|
/**
|
|
521
526
|
* Document-level protection state and editing restriction operations.
|
|
522
527
|
*/
|
|
@@ -618,6 +623,7 @@ export interface DocumentApiAdapters {
|
|
|
618
623
|
/** Modeful DOCX export. Optional; gated when the engine does not provide it. */
|
|
619
624
|
export?: ExportAdapter;
|
|
620
625
|
history: HistoryAdapter;
|
|
626
|
+
changes?: ChangesAdapter;
|
|
621
627
|
protection: ProtectionAdapter;
|
|
622
628
|
permissionRanges: PermissionRangesAdapter;
|
|
623
629
|
/** Custom XML Data Storage Part operations. Optional; not all engines support custom XML. */
|
|
@@ -41,5 +41,3 @@ export declare const ST_THEME_COLOR_VALUE_SET: ReadonlySet<string>;
|
|
|
41
41
|
* list, and a second name for one union is a second thing to keep in step.
|
|
42
42
|
*/
|
|
43
43
|
export declare const ST_HIGHLIGHT_VALUES: readonly ["black", "blue", "cyan", "green", "magenta", "red", "yellow", "white", "darkBlue", "darkCyan", "darkGreen", "darkMagenta", "darkRed", "darkYellow", "darkGray", "lightGray", "none"];
|
|
44
|
-
/** Runtime set for O(1) ST_HighlightColor validation. */
|
|
45
|
-
export declare const ST_HIGHLIGHT_VALUE_SET: ReadonlySet<string>;
|
|
@@ -55,7 +55,6 @@ export type InsertInput = TextInsertInput | RichContentInsertInput | SDInsertInp
|
|
|
55
55
|
export type PlainTextInsertInput = TextInsertInput & {
|
|
56
56
|
type?: 'text';
|
|
57
57
|
};
|
|
58
|
-
export declare function isRichContentInsertInput(input: InsertInput): input is RichContentInsertInput;
|
|
59
58
|
/** Returns true when the input uses the structural SDFragment shape. */
|
|
60
59
|
export declare function isStructuralInsertInput(input: InsertInput): input is SDInsertInput;
|
|
61
60
|
/**
|
|
@@ -371,7 +371,7 @@ export type CrossReferenceMetadata = {
|
|
|
371
371
|
preferFollowing?: boolean;
|
|
372
372
|
};
|
|
373
373
|
export type TextRun = RunMarks & {
|
|
374
|
-
kind
|
|
374
|
+
kind: 'text';
|
|
375
375
|
text: string;
|
|
376
376
|
fontFamily: string;
|
|
377
377
|
fontSize: number;
|
|
@@ -2923,7 +2923,9 @@ export type LayoutBlockResumeCheckpoint = {
|
|
|
2923
2923
|
refId: string;
|
|
2924
2924
|
fullHeight: number;
|
|
2925
2925
|
firstLineHeight: number;
|
|
2926
|
+
rowIndex?: number;
|
|
2926
2927
|
}[];
|
|
2928
|
+
footnoteRequiredStartRefId?: string;
|
|
2927
2929
|
};
|
|
2928
2930
|
/** Final layout output ready for painting. */
|
|
2929
2931
|
export type Layout = {
|
|
@@ -28,6 +28,8 @@ export declare const DATA_ATTRS: {
|
|
|
28
28
|
readonly LAYOUT_EPOCH: "data-layout-epoch";
|
|
29
29
|
/** JSON-encoded table boundary metadata for resize overlays. */
|
|
30
30
|
readonly TABLE_BOUNDARIES: "data-table-boundaries";
|
|
31
|
+
readonly TABLE_ID: "data-table-id";
|
|
32
|
+
readonly ROW_INDEX: "data-row-index";
|
|
31
33
|
/** SDT unique identifier. */
|
|
32
34
|
readonly SDT_ID: "data-sdt-id";
|
|
33
35
|
/** SDT type (fieldAnnotation, structuredContent, documentSection, etc.). */
|
|
@@ -65,6 +67,8 @@ export declare const DATASET_KEYS: {
|
|
|
65
67
|
readonly PM_END: "pmEnd";
|
|
66
68
|
readonly LAYOUT_EPOCH: "layoutEpoch";
|
|
67
69
|
readonly TABLE_BOUNDARIES: "tableBoundaries";
|
|
70
|
+
readonly TABLE_ID: "tableId";
|
|
71
|
+
readonly ROW_INDEX: "rowIndex";
|
|
68
72
|
readonly SDT_ID: "sdtId";
|
|
69
73
|
readonly SDT_TYPE: "sdtType";
|
|
70
74
|
readonly FIELD_ID: "fieldId";
|
|
@@ -5,6 +5,7 @@ export type FootnoteCertificatePreparedOptions = Readonly<Omit<CoupledFootnotePa
|
|
|
5
5
|
type PendingEntry = Readonly<{
|
|
6
6
|
id: string;
|
|
7
7
|
ranges: readonly Readonly<FootnoteRange>[];
|
|
8
|
+
started?: boolean;
|
|
8
9
|
}>;
|
|
9
10
|
export type FootnotePendingQueue = ReadonlyMap<number, readonly PendingEntry[]>;
|
|
10
11
|
declare const ownerBrand: unique symbol;
|
|
@@ -3,10 +3,12 @@ import { FootnoteRange, FootnoteSlice } from './footnote-content.js';
|
|
|
3
3
|
export type PendingFootnote = {
|
|
4
4
|
id: string;
|
|
5
5
|
ranges: FootnoteRange[];
|
|
6
|
+
started?: boolean;
|
|
6
7
|
};
|
|
7
8
|
type IncomingFootnote = {
|
|
8
9
|
readonly id: string;
|
|
9
10
|
readonly ranges: readonly FootnoteRange[];
|
|
11
|
+
readonly started?: boolean;
|
|
10
12
|
};
|
|
11
13
|
export type FootnotePageLedgerDraft = Omit<FootnotePageLedger, 'pageIndex' | 'appliedBodyReservePx' | 'deadReservePx'>;
|
|
12
14
|
export type FootnotePagePlanInput = {
|
|
@@ -20,6 +22,9 @@ export type FootnotePagePlanInput = {
|
|
|
20
22
|
fullHeightById: ReadonlyMap<string, number>;
|
|
21
23
|
firstLineHeightById: ReadonlyMap<string, number>;
|
|
22
24
|
pendingByColumn: ReadonlyMap<number, readonly IncomingFootnote[]>;
|
|
25
|
+
requiredStartId?: string;
|
|
26
|
+
deferStartIds?: ReadonlySet<string>;
|
|
27
|
+
noteOnlyPage?: boolean;
|
|
23
28
|
separatorSpacingBefore: number;
|
|
24
29
|
dividerHeight: number;
|
|
25
30
|
continuationDividerHeight: number;
|
|
@@ -210,6 +210,7 @@ export type IncrementalLayoutBridgeTiming = {
|
|
|
210
210
|
headerFooterPreLayoutBodyBlocksEnumerated: number;
|
|
211
211
|
headerFooterPreLayoutSectionsEnumerated: number;
|
|
212
212
|
footnoteRelayouts: number;
|
|
213
|
+
footnoteIncomingDemandUnconverged: number;
|
|
213
214
|
footnoteReserveRelayouts: number;
|
|
214
215
|
footnoteGrowRelayouts: number;
|
|
215
216
|
footnoteTightenRelayouts: number;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Page } from '../../contracts/src/index.js';
|
|
2
2
|
import { PageState } from './paginator.js';
|
|
3
3
|
import { FootnoteAnchorRef } from './layout-paragraph.js';
|
|
4
|
+
export declare const maxFootnoteBand: (physicalContentHeight: number) => number;
|
|
5
|
+
export declare const footnoteQueueDemand: (incomingHeight: number, committed: readonly FootnoteAnchorRef[], prior: readonly FootnoteAnchorRef[], currentLine: readonly FootnoteAnchorRef[]) => number;
|
|
4
6
|
/** Internal body/notes handshake. The bridge owns exact continuation ranges. */
|
|
5
7
|
export type FootnotePageFlow = {
|
|
6
8
|
/** False for a bounded block horizon: its EOF is not the document's EOF. */
|
|
@@ -15,6 +17,7 @@ export type FootnotePageFlow = {
|
|
|
15
17
|
bodyBottom: number;
|
|
16
18
|
physicalBottom: number;
|
|
17
19
|
anchors: readonly FootnoteAnchorRef[];
|
|
20
|
+
requiredStartRefId?: string;
|
|
18
21
|
}): void;
|
|
19
22
|
hasPendingContinuation(): boolean;
|
|
20
23
|
};
|
|
@@ -3,6 +3,7 @@ import { FootnotePageFlow } from './footnote-page-flow.js';
|
|
|
3
3
|
import { PageState, ConstraintBoundary } from './paginator.js';
|
|
4
4
|
import { LayoutExecutionControl } from './execution.js';
|
|
5
5
|
export type { FootnotePageFlow } from './footnote-page-flow.js';
|
|
6
|
+
export { maxFootnoteBand } from './footnote-page-flow.js';
|
|
6
7
|
export { findLineIndexForRunOrdinal, findKeepNextChainStart, isOutOfFlowDrawing } from './layout-utils.js';
|
|
7
8
|
type PageSize = {
|
|
8
9
|
w: number;
|
|
@@ -50,6 +51,11 @@ export type LayoutOptions = {
|
|
|
50
51
|
* increasing the effective bottom margin for that page only.
|
|
51
52
|
*/
|
|
52
53
|
footnoteReservedByPageIndex?: number[];
|
|
54
|
+
footnoteIncomingByPageIndex?: ReadonlyArray<{
|
|
55
|
+
height: number;
|
|
56
|
+
refs: number;
|
|
57
|
+
} | undefined>;
|
|
58
|
+
trailingNotePageCount?: number;
|
|
53
59
|
/**
|
|
54
60
|
* Footnote metadata. The core layout engine consumes only the fields below
|
|
55
61
|
* (SD-3049: ref positions + per-footnote body heights for block-aware breaks).
|
|
@@ -226,6 +232,7 @@ export type LayoutOptions = {
|
|
|
226
232
|
footnoteDemandThisPage: number;
|
|
227
233
|
footnoteRefsThisPage: number;
|
|
228
234
|
footnoteAnchorsThisPage: readonly PageState['footnoteAnchorsThisPage'][number][];
|
|
235
|
+
footnoteRequiredStartRefId?: string;
|
|
229
236
|
};
|
|
230
237
|
};
|
|
231
238
|
/**
|
|
@@ -15,9 +15,14 @@ export type FootnoteAnchorRef = {
|
|
|
15
15
|
refId: string;
|
|
16
16
|
fullHeight: number;
|
|
17
17
|
firstLineHeight: number;
|
|
18
|
+
rowIndex?: number;
|
|
18
19
|
};
|
|
19
20
|
export type ParagraphLayoutContext = {
|
|
20
21
|
incomingFootnoteDemand?: FootnotePageFlow['incomingDemand'];
|
|
22
|
+
legacyIncomingFootnoteDemand?: (pageIndex: number) => {
|
|
23
|
+
height: number;
|
|
24
|
+
refs: number;
|
|
25
|
+
} | undefined;
|
|
21
26
|
block: ParagraphBlock;
|
|
22
27
|
measure: ParagraphMeasure;
|
|
23
28
|
columnWidth: number;
|
|
@@ -11,6 +11,8 @@ export type TableLayoutContext = {
|
|
|
11
11
|
columnX: (state: PageState, columnIndex?: number) => number;
|
|
12
12
|
resumeCursor?: TableLayoutCursor;
|
|
13
13
|
onFragmentStart?: (state: PageState, cursor: TableLayoutCursor) => void;
|
|
14
|
+
footnoteRowBottom?: (rowIndex: number, startRow: number, state: PageState) => number;
|
|
15
|
+
onFragmentPlaced?: (state: PageState, fragment: TableFragment) => void;
|
|
14
16
|
};
|
|
15
17
|
export type TableLayoutCursor = {
|
|
16
18
|
currentRow: number;
|
|
@@ -93,7 +95,7 @@ export declare function generateFragmentMetadata(measure: TableMeasure, block: T
|
|
|
93
95
|
* @param context - Table layout context
|
|
94
96
|
|
|
95
97
|
*/
|
|
96
|
-
export declare function layoutTableBlockSteps({ block, measure, columnWidth, pagePositionedTableFitHeight, ensurePage, advanceColumn, columnX, resumeCursor, onFragmentStart, }: TableLayoutContext): Generator<TableLayoutStep, void, void>;
|
|
98
|
+
export declare function layoutTableBlockSteps({ block, measure, columnWidth, pagePositionedTableFitHeight, ensurePage, advanceColumn, columnX, resumeCursor, onFragmentStart, footnoteRowBottom, onFragmentPlaced, }: TableLayoutContext): Generator<TableLayoutStep, void, void>;
|
|
97
99
|
export declare function layoutTableBlock(context: TableLayoutContext): void;
|
|
98
100
|
/**
|
|
99
101
|
* Create a table fragment for an anchored/floating table at its computed position.
|