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
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { LooseRecord } from './loose-record.js';
|
|
2
|
+
import { TableCommandSpec } from './commands.js';
|
|
3
|
+
export declare const PARAGRAPH_INDENT_STEP_TWIPS = 720;
|
|
4
|
+
export type ParagraphIndentationTwips = {
|
|
5
|
+
left?: number;
|
|
6
|
+
right?: number;
|
|
7
|
+
firstLine?: number;
|
|
8
|
+
hanging?: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function pointsToTwips(value: number): number;
|
|
11
|
+
export declare function readParagraphIndentationFromResult(result: unknown): ParagraphIndentationTwips | null;
|
|
12
|
+
export interface ResolvedTableContext {
|
|
13
|
+
canMerge: boolean;
|
|
14
|
+
tableNodeId: string;
|
|
15
|
+
rowIndex: number;
|
|
16
|
+
columnIndex: number;
|
|
17
|
+
cellNodeId: string | null;
|
|
18
|
+
mergeRange: {
|
|
19
|
+
start: {
|
|
20
|
+
rowIndex: number;
|
|
21
|
+
columnIndex: number;
|
|
22
|
+
};
|
|
23
|
+
end: {
|
|
24
|
+
rowIndex: number;
|
|
25
|
+
columnIndex: number;
|
|
26
|
+
};
|
|
27
|
+
} | null;
|
|
28
|
+
}
|
|
29
|
+
export declare function readMergeRange(range: LooseRecord | undefined): {
|
|
30
|
+
start: {
|
|
31
|
+
rowIndex: number;
|
|
32
|
+
columnIndex: number;
|
|
33
|
+
};
|
|
34
|
+
end: {
|
|
35
|
+
rowIndex: number;
|
|
36
|
+
columnIndex: number;
|
|
37
|
+
};
|
|
38
|
+
} | null;
|
|
39
|
+
export declare function buildTableCommandInput(action: TableCommandSpec['action'], context: ResolvedTableContext): LooseRecord | null;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { SuperDocUIReason } from './reasons.js';
|
|
2
|
+
import { CommandExecutionResult, CommandState, ListPresetId, PartialLinkEditReceipt, Receipt, SelectionSlice, SuperDocUIFailureReceipt, SuperDocUIReceiptFailureCode, ViewportRect, ViewportRectResult, WorkflowActionResult } from './types.js';
|
|
3
|
+
import { AnyFn, LooseRecord } from './loose-record.js';
|
|
4
|
+
import { CommandDescriptor, TrackDecisionSpec } from './commands.js';
|
|
5
|
+
export declare const SUPERDOC_UI_REASON_VALUES: Set<string>;
|
|
6
|
+
export declare function coerceSuperDocUIReason(reason: unknown, fallback: SuperDocUIReason): SuperDocUIReason;
|
|
7
|
+
export declare function normalizeHostSelectionApplyResult(result: unknown): WorkflowActionResult;
|
|
8
|
+
export declare const LIST_TOGGLE_KINDS: Record<string, 'bullet' | 'ordered'>;
|
|
9
|
+
export declare function listToggleKind(id: string): 'bullet' | 'ordered' | null;
|
|
10
|
+
export declare const TOOLBAR_LIST_STYLE_PRESETS: Record<string, ListPresetId>;
|
|
11
|
+
export declare function presetFromToolbarStyleKey(styleKey: string): {
|
|
12
|
+
preset?: ListPresetId;
|
|
13
|
+
behavior?: 'toggleStyle';
|
|
14
|
+
};
|
|
15
|
+
export declare function safeCall<T>(fn: (() => T) | undefined, fallback: T): T;
|
|
16
|
+
export declare function hostMethod(target: unknown, name: string): ((...args: unknown[]) => unknown) | null;
|
|
17
|
+
export declare function hasAbortedFlag(value: unknown): value is {
|
|
18
|
+
readonly aborted: boolean;
|
|
19
|
+
};
|
|
20
|
+
export declare function isPromiseLike(value: unknown): value is PromiseLike<unknown>;
|
|
21
|
+
export declare function resolveDocOperation(doc: LooseRecord | null, path: string): AnyFn | null;
|
|
22
|
+
export declare function failedReceipt(message: string, code?: Exclude<SuperDocUIReceiptFailureCode, 'PARTIAL_LINK_EDIT'>): SuperDocUIFailureReceipt;
|
|
23
|
+
export declare function partialLinkEditFailure(hyperlinkResult: CommandExecutionResult, textResult: CommandExecutionResult): PartialLinkEditReceipt;
|
|
24
|
+
export declare const MIRRORED_EDIT_COMMAND_IDS: {
|
|
25
|
+
readonly undo: "history.undo";
|
|
26
|
+
readonly redo: "history.redo";
|
|
27
|
+
};
|
|
28
|
+
export declare function normalizeCommandState(state: Partial<CommandState>, source: CommandState['source']): CommandState;
|
|
29
|
+
export declare function commandResultFromOperationResult(result: unknown): CommandExecutionResult;
|
|
30
|
+
export declare function isSuccessfulReceipt(result: CommandExecutionResult): result is Extract<Receipt, {
|
|
31
|
+
success: true;
|
|
32
|
+
}>;
|
|
33
|
+
export declare function commandResultSucceeded(result: CommandExecutionResult): boolean;
|
|
34
|
+
export declare function combineCommandResults(results: readonly CommandExecutionResult[]): CommandExecutionResult;
|
|
35
|
+
export declare function trackDecisionCommand(id: string): TrackDecisionSpec | null;
|
|
36
|
+
export declare function rectResult(rects: readonly ViewportRect[]): ViewportRectResult;
|
|
37
|
+
export declare function rectFailure(reason: string): ViewportRectResult;
|
|
38
|
+
export declare function relativizeRects(result: ViewportRectResult, relativeTo?: HTMLElement): ViewportRectResult;
|
|
39
|
+
export declare function commandIsActive(descriptor: CommandDescriptor, selection: SelectionSlice): boolean;
|
|
@@ -8,7 +8,7 @@ type FirstPartyCommandMutation = {
|
|
|
8
8
|
};
|
|
9
9
|
supports: (memberPath: string) => boolean;
|
|
10
10
|
run: (memberPath: string, args: readonly unknown[]) => unknown;
|
|
11
|
-
runListApply: (input: unknown) => Promise<
|
|
11
|
+
runListApply: (input: unknown) => Promise<unknown>;
|
|
12
12
|
};
|
|
13
13
|
export declare function registerFirstPartyCommandMutation(superdoc: object, host: object, mutation: FirstPartyCommandMutation): void;
|
|
14
14
|
/**
|
|
@@ -18,21 +18,5 @@ export declare function registerFirstPartyCommandMutation(superdoc: object, host
|
|
|
18
18
|
export declare function readFirstPartyPageNumbers(ui: object): Promise<unknown>;
|
|
19
19
|
export declare function executeFirstPartyCommandAsync(ui: Pick<SuperDocUI, 'commands'>, id: string, payload?: unknown): Promise<CommandExecutionResult>;
|
|
20
20
|
export declare function executeFirstPartyShortcutAsync(ui: object, id: string, payload?: unknown): Promise<CommandExecutionResult>;
|
|
21
|
-
/**
|
|
22
|
-
* Heavy-read policy for the async read coordinator (source-loading deferral).
|
|
23
|
-
* One shared table: the coordinator's gate and the table-driven policy tests
|
|
24
|
-
* both consume THIS list, so the deferred set cannot silently drift from the
|
|
25
|
-
* tested set. Keys are coordinator cache keys (exact) or key families
|
|
26
|
-
* (prefix). See the gate in `readAsync` for the runtime semantics.
|
|
27
|
-
*/
|
|
28
|
-
interface HeavyDocReadPolicyEntry {
|
|
29
|
-
key: string;
|
|
30
|
-
match: 'exact' | 'prefix';
|
|
31
|
-
/** Audit rationale — why this key is catalog-scale (or reserved). */
|
|
32
|
-
note: string;
|
|
33
|
-
}
|
|
34
|
-
export declare const HEAVY_DOC_READ_POLICY: readonly HeavyDocReadPolicyEntry[];
|
|
35
|
-
/** Whether a coordinator cache key falls under the heavy-read policy. */
|
|
36
|
-
export declare function isHeavyDocReadKey(key: string): boolean;
|
|
37
21
|
export declare function createSuperDocUI(options: SuperDocUIOptions): SuperDocUI;
|
|
38
22
|
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ChangeRecord, StoryLocator } from '../../../../document-api/src/index.js';
|
|
2
|
+
import { SuperDocDocumentChange } from './types.js';
|
|
3
|
+
type RemoteDocumentChangeFacts = Omit<SuperDocDocumentChange, 'documentEpoch' | 'seq'>;
|
|
4
|
+
export declare function remoteChangeRecordsOf(event: Record<string, unknown>): ChangeRecord[];
|
|
5
|
+
export declare function storiesOfChangeRecords(records: readonly ChangeRecord[]): StoryLocator[];
|
|
6
|
+
export declare function remoteDocumentChange(records: readonly ChangeRecord[]): RemoteDocumentChangeFacts;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function readEntityTarget(row: unknown): unknown | null;
|
|
2
|
+
export declare function isHostGeometryTarget(target: unknown): boolean;
|
|
3
|
+
export declare function readTrackedChangeNavigationTarget(row: unknown, options?: {
|
|
4
|
+
preferStableBlock?: boolean;
|
|
5
|
+
}): unknown | null;
|
|
6
|
+
export declare function storyLocatorSignature(story: unknown): string;
|
|
7
|
+
export declare function readEntityStory(row: unknown): unknown | null;
|
|
8
|
+
export declare function entityRowMatchesRequest(row: unknown, id: string, story?: unknown): boolean;
|
|
9
|
+
export declare function readEntityRequestStory(row: unknown): unknown | undefined;
|
|
10
|
+
export declare function layoutStoryDatasetToStoryLocator(raw: unknown): unknown;
|
|
11
|
+
export declare function storyKeyToStoryLocator(raw: unknown): unknown;
|
|
12
|
+
export declare function readSelectionTarget(row: unknown): unknown | null;
|
|
13
|
+
export declare function readContentControlRequestId(input: unknown): string | null;
|
|
14
|
+
export declare function readEntityId(row: unknown): string | null;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FontFamilyOption, FontSizeOption } from './types.js';
|
|
2
|
+
export declare const DEFAULT_FONT_FAMILY_OPTIONS: readonly FontFamilyOption[];
|
|
3
|
+
export declare function canonicalFontFamilyName(family: string): string;
|
|
4
|
+
export declare function normalizeDocumentFontOptions(raw: unknown): FontFamilyOption[];
|
|
5
|
+
export declare function normalizePickerFontOptions(raw: unknown): FontFamilyOption[];
|
|
6
|
+
export declare function composeFontFamilyOptions(documentOptions: readonly FontFamilyOption[], pickerOptions?: readonly FontFamilyOption[]): FontFamilyOption[];
|
|
7
|
+
export declare const DEFAULT_FONT_SIZE_OPTIONS: readonly FontSizeOption[];
|
|
@@ -2,22 +2,16 @@
|
|
|
2
2
|
* Maps SDRunProps field names to InlineRunPatch field names.
|
|
3
3
|
* SDRunProps (read-side) and InlineRunPatch (write-side) use different keys
|
|
4
4
|
* for the same properties; direct assignment between them is forbidden.
|
|
5
|
-
*
|
|
6
|
-
* @param {Record<string, unknown>} props - SDRunProps object from doc.getNodeById
|
|
7
|
-
* @returns {Record<string, unknown>} InlineRunPatch ready for doc.format.apply
|
|
8
5
|
*/
|
|
9
|
-
export function sdRunPropsToInlineRunPatch(props: Record<string, unknown>): Record<string, unknown>;
|
|
6
|
+
export declare function sdRunPropsToInlineRunPatch(props: Record<string, unknown>): Record<string, unknown>;
|
|
10
7
|
/**
|
|
11
8
|
* Serializes a selection to a stable string key used to detect whether
|
|
12
9
|
* the target selection is the same as the source (skip apply in that case).
|
|
13
10
|
*
|
|
14
11
|
* Falls back to the plain text target when the host has not populated an
|
|
15
12
|
* explicit `selectionTarget` yet.
|
|
16
|
-
*
|
|
17
|
-
* @param {{ selectionTarget?: unknown; target?: unknown } | null | undefined} selection
|
|
18
|
-
* @returns {string}
|
|
19
13
|
*/
|
|
20
|
-
export function selectionKey(selection: {
|
|
14
|
+
export declare function selectionKey(selection: {
|
|
21
15
|
selectionTarget?: unknown;
|
|
22
16
|
target?: unknown;
|
|
23
17
|
} | null | undefined): string;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export type FormatPainterMode = 'idle' | 'armed' | 'persistent';
|
|
2
|
+
export interface FormatPainterParagraphSnapshot {
|
|
3
|
+
styleId: string | null;
|
|
4
|
+
alignment: 'left' | 'right' | 'center' | 'justify' | null;
|
|
5
|
+
spacing: unknown | null;
|
|
6
|
+
indentation: {
|
|
7
|
+
left?: number;
|
|
8
|
+
right?: number;
|
|
9
|
+
firstLine?: number;
|
|
10
|
+
hanging?: number;
|
|
11
|
+
} | null;
|
|
12
|
+
markRunProps: unknown | null;
|
|
13
|
+
numbering: {
|
|
14
|
+
numId: number;
|
|
15
|
+
level?: number;
|
|
16
|
+
} | null;
|
|
17
|
+
listStyle: unknown | null;
|
|
18
|
+
}
|
|
19
|
+
export interface FormatPainterSnapshot {
|
|
20
|
+
story: unknown | null;
|
|
21
|
+
inline: Record<string, unknown>;
|
|
22
|
+
mixedInlineKeys: string[];
|
|
23
|
+
paragraph: FormatPainterParagraphSnapshot | null;
|
|
24
|
+
}
|
|
25
|
+
export declare const FORMAT_PAINTER_BOOLEAN_KEYS: Set<string>;
|
|
26
|
+
export interface FormatPainterState {
|
|
27
|
+
mode: FormatPainterMode;
|
|
28
|
+
snapshot: FormatPainterSnapshot | null;
|
|
29
|
+
sourceSelectionKey: string | null;
|
|
30
|
+
lastClickAt: number;
|
|
31
|
+
pointerSelecting: boolean;
|
|
32
|
+
keyboardSelecting: boolean;
|
|
33
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SliceStatus } from './types.js';
|
|
2
|
+
export interface HeavyDocReadPolicyEntry {
|
|
3
|
+
key: string;
|
|
4
|
+
match: 'exact' | 'prefix';
|
|
5
|
+
note: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const HEAVY_DOC_READ_POLICY: readonly HeavyDocReadPolicyEntry[];
|
|
8
|
+
export declare const COMMENTS_CATALOG_PART_URIS: ReadonlySet<string>;
|
|
9
|
+
export declare function isHeavyDocReadKey(key: string): boolean;
|
|
10
|
+
export declare const STATUS_RANK: Record<SliceStatus, number>;
|
|
11
|
+
export declare function combineStatus(...statuses: readonly SliceStatus[]): SliceStatus;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ContentControlClickPayload } from './types.js';
|
|
2
|
+
export declare const HOST_EVENTS: readonly ["document-replaced", "editorCreate", "active-editor-change", "document-mode-change", "formatting-marks-change", "zoomChange", "measurement-unit-change", "viewport-change", "fonts-changed"];
|
|
3
|
+
export declare function isContentControlClickPayload(value: unknown): value is ContentControlClickPayload;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { SelectionSlice, SelectionTarget, SuperDocUIState } from './types.js';
|
|
2
|
+
import { LooseRecord } from './loose-record.js';
|
|
3
|
+
import { CommandDescriptor } from './commands.js';
|
|
4
|
+
export type EffectiveInlineUniformityState = {
|
|
5
|
+
state: 'uniform';
|
|
6
|
+
value: string;
|
|
7
|
+
} | {
|
|
8
|
+
state: 'mixed' | 'unresolvable';
|
|
9
|
+
};
|
|
10
|
+
export declare function readEffectiveInlineUniformityStates(raw: unknown): Record<string, EffectiveInlineUniformityState> | null;
|
|
11
|
+
export type SelectionTextSegment = {
|
|
12
|
+
blockId: string;
|
|
13
|
+
start: number;
|
|
14
|
+
end: number;
|
|
15
|
+
};
|
|
16
|
+
export declare const PROJECTED_INLINE_SELECTION_VALUE_KEYS: readonly ["fontFamily", "fontSize", "color", "highlight"];
|
|
17
|
+
export type ProjectedInlineSelectionValueKey = (typeof PROJECTED_INLINE_SELECTION_VALUE_KEYS)[number];
|
|
18
|
+
export type ProjectedInlineSelectionValues = Partial<Record<ProjectedInlineSelectionValueKey, string>>;
|
|
19
|
+
export declare const EFFECTIVE_MARK_KEYS: readonly ["bold", "italic", "underline", "strikethrough"];
|
|
20
|
+
export type EffectiveMarkKey = (typeof EFFECTIVE_MARK_KEYS)[number];
|
|
21
|
+
export type EffectiveMarkValues = Partial<Record<EffectiveMarkKey, boolean>>;
|
|
22
|
+
export type OptimisticInlineSelectionValue = {
|
|
23
|
+
selectionSignature: string;
|
|
24
|
+
value: string;
|
|
25
|
+
};
|
|
26
|
+
export type OptimisticInlineToggle = {
|
|
27
|
+
selectionSignature: string;
|
|
28
|
+
active: boolean;
|
|
29
|
+
generation: number;
|
|
30
|
+
settled: boolean;
|
|
31
|
+
editorSource: unknown;
|
|
32
|
+
documentSource: unknown;
|
|
33
|
+
documentMode: SuperDocUIState['documentMode'];
|
|
34
|
+
};
|
|
35
|
+
export type OptimisticParagraphAlignment = {
|
|
36
|
+
selectionSignature: string;
|
|
37
|
+
value: 'left' | 'center' | 'right' | 'justify';
|
|
38
|
+
generation: number;
|
|
39
|
+
settled: boolean;
|
|
40
|
+
canReconcile: boolean;
|
|
41
|
+
};
|
|
42
|
+
export type PendingInlineToggleMutation = {
|
|
43
|
+
key: string;
|
|
44
|
+
mutate: () => unknown;
|
|
45
|
+
result: Promise<unknown>;
|
|
46
|
+
resolve: (value: unknown | PromiseLike<unknown>) => void;
|
|
47
|
+
};
|
|
48
|
+
export declare function isProjectedInlineSelectionValueKey(value: string): value is ProjectedInlineSelectionValueKey;
|
|
49
|
+
export declare function selectionTextSegments(selection: SelectionSlice): SelectionTextSegment[];
|
|
50
|
+
export declare function selectionStoryLocator(selection: SelectionSlice): unknown | undefined;
|
|
51
|
+
export declare function selectionInlineValueStorySignature(selection: SelectionSlice): string;
|
|
52
|
+
export declare function selectionInlineValueSignature(selection: SelectionSlice): string | null;
|
|
53
|
+
export declare function selectionEffectiveUniformitySignature(selection: SelectionSlice): string | null;
|
|
54
|
+
export declare function normalizeOptimisticInlineSelectionValue(key: ProjectedInlineSelectionValueKey, value: unknown): string | null;
|
|
55
|
+
export declare function rangesOverlap(left: {
|
|
56
|
+
start: number;
|
|
57
|
+
end: number;
|
|
58
|
+
}, right: {
|
|
59
|
+
start: number;
|
|
60
|
+
end: number;
|
|
61
|
+
}): boolean;
|
|
62
|
+
export declare function queryMatchItemSegments(item: LooseRecord | null | undefined): SelectionTextSegment[];
|
|
63
|
+
export declare function sameSelectionTextSegments(left: readonly SelectionTextSegment[], right: readonly SelectionTextSegment[]): boolean;
|
|
64
|
+
export declare function pickSelectionTextQueryItem(result: LooseRecord | null, selection: SelectionSlice): LooseRecord | null;
|
|
65
|
+
export declare function readProjectedInlineStyleValue(styles: LooseRecord | null | undefined, key: ProjectedInlineSelectionValueKey): string | undefined;
|
|
66
|
+
export declare function normalizeLayoutFontFamily(value: unknown): string | undefined;
|
|
67
|
+
export declare function normalizeLayoutFontSizePt(value: unknown): string | undefined;
|
|
68
|
+
export declare function normalizeProjectedInlineStyleValueKey(key: ProjectedInlineSelectionValueKey, value: string): string;
|
|
69
|
+
export declare function projectInlineValuesFromQueryItem(item: LooseRecord | null, selection: SelectionSlice): ProjectedInlineSelectionValues;
|
|
70
|
+
export declare function collectProjectionTextBlocks(blocks: unknown): LooseRecord[];
|
|
71
|
+
export declare function projectionBlockMatchesId(block: LooseRecord, id: string): boolean;
|
|
72
|
+
export declare function projectionRunSelectionLength(run: LooseRecord): number;
|
|
73
|
+
export declare function inlineFormatMethod(descriptor: CommandDescriptor): string | null;
|
|
74
|
+
export declare const CLEAR_INLINE_PATCH: Readonly<Record<string, null>>;
|
|
75
|
+
export declare const TRACKED_CLEAR_INLINE_PATCH: Readonly<Record<string, null>>;
|
|
76
|
+
export declare function buildInlineFormatInput(spec: {
|
|
77
|
+
key: string;
|
|
78
|
+
kind: 'toggle' | 'value-string' | 'value-number' | 'clear';
|
|
79
|
+
}, target: SelectionTarget, payload: unknown, active: boolean): LooseRecord | null;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export type AnyFn = (...args: unknown[]) => unknown;
|
|
2
|
+
export type LooseRecord = Record<string, unknown>;
|
|
3
|
+
export declare function readRecord(value: unknown): LooseRecord | undefined;
|
|
4
|
+
export declare function readRecordList(value: unknown): Array<LooseRecord | undefined>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { SelectionCapture, SelectionSlice, SelectionTarget } from './types.js';
|
|
2
|
+
import { LooseRecord } from './loose-record.js';
|
|
3
|
+
export declare const EMPTY_SELECTION: SelectionSlice;
|
|
4
|
+
export declare function selectionBlockRange(selection: SelectionSlice): {
|
|
5
|
+
startBlockId: string;
|
|
6
|
+
endBlockId: string;
|
|
7
|
+
} | null;
|
|
8
|
+
export declare function selectionBlockIds(selection: SelectionSlice): string[];
|
|
9
|
+
export declare const MAX_REACTIVE_SELECTION_BLOCK_READS = 64;
|
|
10
|
+
export declare function canProbeEverySelectedBlock(blockIds: readonly string[]): boolean;
|
|
11
|
+
export declare function selectionStory(selection: SelectionSlice): LooseRecord;
|
|
12
|
+
export declare function paragraphTarget(blockId: string, story?: unknown): LooseRecord;
|
|
13
|
+
export declare function listsBlockTarget(blockId: string): LooseRecord;
|
|
14
|
+
export declare function listItemTarget(blockId: string, story?: unknown): LooseRecord;
|
|
15
|
+
export declare function selectionTextAddresses(selection: SelectionSlice): LooseRecord[];
|
|
16
|
+
export declare function textAddressesFromTarget(target: unknown): LooseRecord[];
|
|
17
|
+
export declare function collapsedTextAddressFromTarget(target: unknown): LooseRecord | null;
|
|
18
|
+
export declare function collapsedTextAddressFromSelection(selection: SelectionSlice): LooseRecord | null;
|
|
19
|
+
export declare function isHeaderFooterCaret(selection: SelectionSlice): boolean;
|
|
20
|
+
export declare function createLocationAt(selection: SelectionSlice, mode: 'nodeId' | 'target'): LooseRecord;
|
|
21
|
+
export declare function hyperlinkAddressToSelectionTarget(address: LooseRecord | null | undefined): LooseRecord | null;
|
|
22
|
+
export declare function hyperlinkTargetFromHref(href: string): LooseRecord;
|
|
23
|
+
export declare function isAddressableSegment(segment: unknown): segment is {
|
|
24
|
+
blockId: string;
|
|
25
|
+
range: {
|
|
26
|
+
start: number;
|
|
27
|
+
end: number;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export declare function selectionTargetFromTextTarget(target: SelectionSlice['target'] | SelectionCapture['target'] | null): SelectionTarget | null;
|
|
31
|
+
export type CellSelectionCapture = SelectionCapture & {
|
|
32
|
+
_tableCellSelectionTarget?: unknown;
|
|
33
|
+
_paintedSelectionTarget?: unknown;
|
|
34
|
+
};
|
|
35
|
+
export type TextSelectionTarget = SelectionTarget & {
|
|
36
|
+
start: Extract<SelectionTarget['start'], {
|
|
37
|
+
kind: 'text';
|
|
38
|
+
}>;
|
|
39
|
+
end: Extract<SelectionTarget['end'], {
|
|
40
|
+
kind: 'text';
|
|
41
|
+
}>;
|
|
42
|
+
};
|
|
43
|
+
export declare function capturedTableCellTarget(value: unknown): TextSelectionTarget | null;
|
|
44
|
+
export declare function selectionTargetForRestore(capture: SelectionCapture): SelectionTarget | null;
|
|
45
|
+
export declare function resolveInlineSelectionTarget(selection: SelectionSlice): SelectionTarget | null;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type SharedUiTrackedChangesCatalogState = {
|
|
2
|
+
refCount: number;
|
|
3
|
+
generation: number;
|
|
4
|
+
abortController: AbortController;
|
|
5
|
+
inFlight: {
|
|
6
|
+
generation: number;
|
|
7
|
+
commitSeq: number;
|
|
8
|
+
promise: Promise<unknown>;
|
|
9
|
+
} | null;
|
|
10
|
+
activeMutationTokens: Set<string>;
|
|
11
|
+
commitSeq: number;
|
|
12
|
+
countedCommitEvents: WeakSet<object>;
|
|
13
|
+
};
|
|
14
|
+
export declare const sharedUiTrackedChangesCatalogByHost: WeakMap<object, SharedUiTrackedChangesCatalogState>;
|
|
15
|
+
export declare function acquireSharedUiTrackedChangesCatalog(host: object): SharedUiTrackedChangesCatalogState;
|
|
16
|
+
export declare function releaseSharedUiTrackedChangesCatalog(host: object, state: SharedUiTrackedChangesCatalogState): void;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { CommentInfo, SelectionSlice, TrackChangeInfo, TrackChangesItem } from './types.js';
|
|
2
|
+
import { LooseRecord } from './loose-record.js';
|
|
3
|
+
import { SuperDocUIReason } from './reasons.js';
|
|
4
|
+
export declare function identityText(value: unknown): string;
|
|
5
|
+
export type TrackChangeAuthorship = Pick<TrackChangeInfo, 'author' | 'authorEmail'> & {
|
|
6
|
+
authorId?: unknown;
|
|
7
|
+
};
|
|
8
|
+
export declare function trackedChangeOwnedByCurrentUser(change: TrackChangeAuthorship, currentUser: LooseRecord | null): boolean;
|
|
9
|
+
export declare function readCollapsedHostTrackChangeId(snapshot: unknown): string | null;
|
|
10
|
+
export declare function isNonCollapsedHostSelection(snapshot: unknown): boolean;
|
|
11
|
+
export type SelectionTrackDecisionPlan = {
|
|
12
|
+
kind: 'ids';
|
|
13
|
+
ids: readonly string[];
|
|
14
|
+
} | {
|
|
15
|
+
kind: 'id';
|
|
16
|
+
id: string;
|
|
17
|
+
story?: unknown;
|
|
18
|
+
} | {
|
|
19
|
+
kind: 'range';
|
|
20
|
+
target: LooseRecord;
|
|
21
|
+
changeId: string | null;
|
|
22
|
+
story?: unknown;
|
|
23
|
+
permissionIds?: readonly string[];
|
|
24
|
+
} | {
|
|
25
|
+
kind: 'blocked';
|
|
26
|
+
reason: SuperDocUIReason;
|
|
27
|
+
} | {
|
|
28
|
+
kind: 'unavailable';
|
|
29
|
+
};
|
|
30
|
+
export interface TrackedChangeIdContext {
|
|
31
|
+
toPublicId(rawId: string): string | null;
|
|
32
|
+
aliasesFor(publicId: string): readonly string[];
|
|
33
|
+
}
|
|
34
|
+
export declare const trackedChangeIdContextCache: WeakMap<readonly unknown[], TrackedChangeIdContext>;
|
|
35
|
+
export declare function readTrackChangeProvenanceIds(item: unknown): string[];
|
|
36
|
+
export declare function buildTrackedChangeIdContext(items: readonly unknown[]): TrackedChangeIdContext;
|
|
37
|
+
export declare const storyScopedTrackedChangeIdContextCache: WeakMap<readonly unknown[], Map<string, TrackedChangeIdContext>>;
|
|
38
|
+
export declare const declaredBodyItemsCache: WeakMap<readonly unknown[], readonly unknown[]>;
|
|
39
|
+
export declare function buildStoryScopedTrackedChangeIdContext(items: readonly unknown[], story: unknown): TrackedChangeIdContext;
|
|
40
|
+
export declare function isTextboxStory(story: unknown): boolean;
|
|
41
|
+
export declare function resolveStorylessCanonicalTrackedChangeId(items: readonly unknown[], selectionIds: readonly string[]): string | null;
|
|
42
|
+
export declare function declaredBodyItems(items: readonly unknown[]): readonly unknown[];
|
|
43
|
+
export declare function resolveSelectionActiveChangeId(options: {
|
|
44
|
+
selectionIds: readonly string[];
|
|
45
|
+
publicIds?: readonly string[];
|
|
46
|
+
selection: SelectionSlice;
|
|
47
|
+
bodyItems: readonly unknown[];
|
|
48
|
+
allStoryItems: readonly unknown[] | null;
|
|
49
|
+
}): string | null;
|
|
50
|
+
export declare function resolveActiveCommentId(items: readonly CommentInfo[], commentId: string): string | null;
|
|
51
|
+
export declare function trackChangesItemPayload(item: TrackChangesItem): TrackChangeInfo;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { CommentsListQuery as DocumentApiCommentsListQuery, CommentsListResult, TrackChangesListResult, EntityAddress, TextAddress, BookmarkAddress, TextTarget, ScrollIntoViewInput, ScrollIntoViewOutput, SelectionInfo, SelectionTarget, Receipt, ReceiptFailureCode, ContentControlInfo, ContentControlTarget, StyleCatalogItem, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, StoryLocator as DocumentStoryLocator } from '../../../../document-api/src/index.js';
|
|
1
|
+
import { CommentsListQuery as DocumentApiCommentsListQuery, CommentsListResult, TrackChangesListResult, EntityAddress, TextAddress, BookmarkAddress, TextTarget, ScrollIntoViewInput, ScrollIntoViewOutput, SelectionInfo, SelectionTarget, Receipt, ReceiptFailureCode, ContentControlInfo, ContentControlTarget, StyleCatalogItem, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, StoryLocator as DocumentStoryLocator, ChangeRecord } from '../../../../document-api/src/index.js';
|
|
2
2
|
import { BrowserDocumentApi, PartialBrowserDocumentApi } from '../browser-document-api.js';
|
|
3
|
+
import { ContentControlClickPayload } from '../content-control-ref.js';
|
|
3
4
|
import { ExportParams } from '../export-types.js';
|
|
4
5
|
import { SuperDocVisualHandle, SuperDocVisualOptions } from '../../core/extensions/types.js';
|
|
5
6
|
import { DocumentReplacementResult } from '../document-replacement.js';
|
|
@@ -31,10 +32,11 @@ import { BuiltInCommandId } from './commands.js';
|
|
|
31
32
|
* (`scripts/ensure-types.cjs` `rewriteDocApiPaths`), so no bare private
|
|
32
33
|
* specifier leaks into the emitted `.d.ts`.
|
|
33
34
|
*/
|
|
34
|
-
export type { Receipt, DocumentApiRejectionReason, DocumentApiRejectionDetails, TextRangeRejectionReason, ContentControlCreationRejectionReason, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, BookmarkAddress, ScrollIntoViewInput, ScrollIntoViewOutput, DocumentApi, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, TemporaryMutationOperation, TemporaryOperationResultTarget, TemporaryOperationEffects, TemporaryMutationInput, TemporaryMutationReplaceInput, TemporaryMutationHandleInput, TemporaryMutationReceipt, StoryLocator as DocumentStoryLocator, OperationId, OperationCall, OperationInput, OperationOptions, OperationOutput, } from '../../../../document-api/src/index.js';
|
|
35
|
+
export type { Receipt, DocumentApiRejectionReason, DocumentApiRejectionDetails, TextRangeRejectionReason, ContentControlCreationRejectionReason, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, BookmarkAddress, ScrollIntoViewInput, ScrollIntoViewOutput, DocumentApi, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, TemporaryMutationOperation, TemporaryOperationResultTarget, TemporaryOperationEffects, TemporaryMutationInput, TemporaryMutationReplaceInput, TemporaryMutationHandleInput, TemporaryMutationReceipt, StoryLocator as DocumentStoryLocator, ChangeRecord, ChangeActor, ChangeCause, ChangeProvenance, BlockChange, OperationId, OperationCall, OperationInput, OperationOptions, OperationOutput, } from '../../../../document-api/src/index.js';
|
|
35
36
|
export type { StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, } from '../../../../document-api/src/index.js';
|
|
36
37
|
export type { ListPresetId } from '../../../../document-api/src/index.js';
|
|
37
38
|
export type { BrowserDocumentApi, PartialBrowserDocumentApi } from '../browser-document-api.js';
|
|
39
|
+
export type { ContentControlClickPayload, ContentControlRef } from '../content-control-ref.js';
|
|
38
40
|
export type { DocumentReplacementResult } from '../document-replacement.js';
|
|
39
41
|
export type { SuperDocUIReason } from './reasons.js';
|
|
40
42
|
export type { BuiltInCommandId } from './commands.js';
|
|
@@ -164,6 +166,7 @@ export interface FontSizeOption {
|
|
|
164
166
|
}
|
|
165
167
|
/** Observable enable/active state for a toolbar-style command. */
|
|
166
168
|
export interface CommandState {
|
|
169
|
+
pending?: boolean;
|
|
167
170
|
/** Availability for a control in the current selection / mode snapshot. */
|
|
168
171
|
enabled: boolean;
|
|
169
172
|
/** Compatibility inverse of `enabled` for demo code that models commands as disabled. */
|
|
@@ -689,6 +692,12 @@ export interface SuperDocDocumentChange {
|
|
|
689
692
|
} | {
|
|
690
693
|
kind: 'unknown';
|
|
691
694
|
};
|
|
695
|
+
/**
|
|
696
|
+
* Attributed change records behind a remote change, oldest first. Present
|
|
697
|
+
* only when the engine recorded the remote transactions; `scope` is then
|
|
698
|
+
* derived from the stories the records touched.
|
|
699
|
+
*/
|
|
700
|
+
records?: ChangeRecord[];
|
|
692
701
|
}
|
|
693
702
|
/** Document-level state slice. */
|
|
694
703
|
export interface DocumentSlice {
|
|
@@ -1132,6 +1141,7 @@ export interface ContentControlsHandle extends SnapshotSubscribable<ContentContr
|
|
|
1132
1141
|
* should use {@link observe}.
|
|
1133
1142
|
*/
|
|
1134
1143
|
observeActivePath(listener: (snapshot: ContentControlsSlice) => void): () => void;
|
|
1144
|
+
onClick(listener: (payload: ContentControlClickPayload) => void): () => void;
|
|
1135
1145
|
/** Event-shaped alias of {@link observe}. */
|
|
1136
1146
|
subscribe(listener: (event: {
|
|
1137
1147
|
snapshot: ContentControlsSlice;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function uiBenchNowMs(): number;
|
|
2
|
+
export declare function readUiBenchRuntime(): {
|
|
3
|
+
sink: ((event: Record<string, unknown>) => void) | null;
|
|
4
|
+
workerContext: {
|
|
5
|
+
commandId: string | null;
|
|
6
|
+
commandKind: string | null;
|
|
7
|
+
} | null;
|
|
8
|
+
};
|
|
9
|
+
export declare function emitUiBenchTiming(event: Record<string, unknown>): void;
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
// Generated by scripts/ensure-types.cjs. Do not edit by hand.
|
|
2
2
|
import type { ActiveParagraphStyle as __Cjs_ActiveParagraphStyle } from './ui.js' with { "resolution-mode": "import" };
|
|
3
|
+
import type { BlockChange as __Cjs_BlockChange } from './ui.js' with { "resolution-mode": "import" };
|
|
3
4
|
import type { BookmarkAddress as __Cjs_BookmarkAddress } from './ui.js' with { "resolution-mode": "import" };
|
|
4
5
|
import type { BookmarksHandle as __Cjs_BookmarksHandle } from './ui.js' with { "resolution-mode": "import" };
|
|
5
6
|
import type { BorrowedSuperDocUI as __Cjs_BorrowedSuperDocUI } from './ui.js' with { "resolution-mode": "import" };
|
|
6
7
|
import type { BrowserDocumentApi as __Cjs_BrowserDocumentApi } from './ui.js' with { "resolution-mode": "import" };
|
|
7
8
|
import type { BuiltInCommandId as __Cjs_BuiltInCommandId } from './ui.js' with { "resolution-mode": "import" };
|
|
9
|
+
import type { ChangeActor as __Cjs_ChangeActor } from './ui.js' with { "resolution-mode": "import" };
|
|
10
|
+
import type { ChangeCause as __Cjs_ChangeCause } from './ui.js' with { "resolution-mode": "import" };
|
|
11
|
+
import type { ChangeProvenance as __Cjs_ChangeProvenance } from './ui.js' with { "resolution-mode": "import" };
|
|
12
|
+
import type { ChangeRecord as __Cjs_ChangeRecord } from './ui.js' with { "resolution-mode": "import" };
|
|
8
13
|
import type { CommandExecutionResult as __Cjs_CommandExecutionResult } from './ui.js' with { "resolution-mode": "import" };
|
|
9
14
|
import type { CommandHandle as __Cjs_CommandHandle } from './ui.js' with { "resolution-mode": "import" };
|
|
10
15
|
import type { CommandId as __Cjs_CommandId } from './ui.js' with { "resolution-mode": "import" };
|
|
@@ -17,10 +22,12 @@ import type { CommentsHandle as __Cjs_CommentsHandle } from './ui.js' with { "re
|
|
|
17
22
|
import type { CommentsListQuery as __Cjs_CommentsListQuery } from './ui.js' with { "resolution-mode": "import" };
|
|
18
23
|
import type { CommentsListResult as __Cjs_CommentsListResult } from './ui.js' with { "resolution-mode": "import" };
|
|
19
24
|
import type { CommentsSlice as __Cjs_CommentsSlice } from './ui.js' with { "resolution-mode": "import" };
|
|
25
|
+
import type { ContentControlClickPayload as __Cjs_ContentControlClickPayload } from './ui.js' with { "resolution-mode": "import" };
|
|
20
26
|
import type { ContentControlCreationRejectionReason as __Cjs_ContentControlCreationRejectionReason } from './ui.js' with { "resolution-mode": "import" };
|
|
21
27
|
import type { ContentControlFocusResult as __Cjs_ContentControlFocusResult } from './ui.js' with { "resolution-mode": "import" };
|
|
22
28
|
import type { ContentControlHighlightResult as __Cjs_ContentControlHighlightResult } from './ui.js' with { "resolution-mode": "import" };
|
|
23
29
|
import type { ContentControlInfo as __Cjs_ContentControlInfo } from './ui.js' with { "resolution-mode": "import" };
|
|
30
|
+
import type { ContentControlRef as __Cjs_ContentControlRef } from './ui.js' with { "resolution-mode": "import" };
|
|
24
31
|
import type { ContentControlsHandle as __Cjs_ContentControlsHandle } from './ui.js' with { "resolution-mode": "import" };
|
|
25
32
|
import type { ContentControlsListResult as __Cjs_ContentControlsListResult } from './ui.js' with { "resolution-mode": "import" };
|
|
26
33
|
import type { ContentControlsSlice as __Cjs_ContentControlsSlice } from './ui.js' with { "resolution-mode": "import" };
|
|
@@ -157,12 +164,17 @@ import type { WorkflowScrollResult as __Cjs_WorkflowScrollResult } from './ui.js
|
|
|
157
164
|
import type { ZoomHandle as __Cjs_ZoomHandle } from './ui.js' with { "resolution-mode": "import" };
|
|
158
165
|
import type { ZoomSlice as __Cjs_ZoomSlice } from './ui.js' with { "resolution-mode": "import" };
|
|
159
166
|
export type { __Cjs_ActiveParagraphStyle as ActiveParagraphStyle };
|
|
167
|
+
export type { __Cjs_BlockChange as BlockChange };
|
|
160
168
|
export type { __Cjs_BookmarkAddress as BookmarkAddress };
|
|
161
169
|
export type { __Cjs_BookmarksHandle as BookmarksHandle };
|
|
162
170
|
export type { __Cjs_BorrowedSuperDocUI as BorrowedSuperDocUI };
|
|
163
171
|
export type { __Cjs_BrowserDocumentApi as BrowserDocumentApi };
|
|
164
172
|
export declare const BUILT_IN_COMMAND_IDS: typeof import('./ui.js', { with: { "resolution-mode": "import" } }).BUILT_IN_COMMAND_IDS;
|
|
165
173
|
export type { __Cjs_BuiltInCommandId as BuiltInCommandId };
|
|
174
|
+
export type { __Cjs_ChangeActor as ChangeActor };
|
|
175
|
+
export type { __Cjs_ChangeCause as ChangeCause };
|
|
176
|
+
export type { __Cjs_ChangeProvenance as ChangeProvenance };
|
|
177
|
+
export type { __Cjs_ChangeRecord as ChangeRecord };
|
|
166
178
|
export type { __Cjs_CommandExecutionResult as CommandExecutionResult };
|
|
167
179
|
export type { __Cjs_CommandHandle as CommandHandle };
|
|
168
180
|
export type { __Cjs_CommandId as CommandId };
|
|
@@ -175,10 +187,12 @@ export type { __Cjs_CommentsHandle as CommentsHandle };
|
|
|
175
187
|
export type { __Cjs_CommentsListQuery as CommentsListQuery };
|
|
176
188
|
export type { __Cjs_CommentsListResult as CommentsListResult };
|
|
177
189
|
export type { __Cjs_CommentsSlice as CommentsSlice };
|
|
190
|
+
export type { __Cjs_ContentControlClickPayload as ContentControlClickPayload };
|
|
178
191
|
export type { __Cjs_ContentControlCreationRejectionReason as ContentControlCreationRejectionReason };
|
|
179
192
|
export type { __Cjs_ContentControlFocusResult as ContentControlFocusResult };
|
|
180
193
|
export type { __Cjs_ContentControlHighlightResult as ContentControlHighlightResult };
|
|
181
194
|
export type { __Cjs_ContentControlInfo as ContentControlInfo };
|
|
195
|
+
export type { __Cjs_ContentControlRef as ContentControlRef };
|
|
182
196
|
export type { __Cjs_ContentControlsHandle as ContentControlsHandle };
|
|
183
197
|
export type { __Cjs_ContentControlsListResult as ContentControlsListResult };
|
|
184
198
|
export type { __Cjs_ContentControlsSlice as ContentControlsSlice };
|
|
@@ -18,5 +18,5 @@ export { createSuperDocUI } from './ui/create-super-doc-ui.js';
|
|
|
18
18
|
export { getDocumentApiRejectionReason } from './ui/rejection-reasons.js';
|
|
19
19
|
export { shallowEqual } from './ui/equality.js';
|
|
20
20
|
export { BUILT_IN_COMMAND_IDS } from './ui/commands.js';
|
|
21
|
-
export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, WatermarkHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, TablesHandle, TableContextInfo, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, BookmarksHandle, BookmarkAddress, ContentControlFocusResult, ContentControlHighlightResult, FontsHandle, ZoomHandle, HistoryHandle, DocumentHandle, DocumentReplacementResult, SuperDocDocumentChange, DocumentVersion, DocumentMarkCleanResult, ScopedDocumentHandle, ViewportHandle, DecorationsHandle, DecorationPointerEvent, StylesHandle, StylesUpdateToMatchSelectionInput, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, HistorySlice, DocumentSlice, StylesSlice, SearchSnapshot, SearchSlice, StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, CommentInfo, CommentsListQuery, TrackChangeInfo, TrackChangePointHit, TrackChangesItem, FontFamilyOption, FontSizeOption, CommentAddress, TrackedChangeAddress, ContentControlViewportAddress, ViewportEntityAddress, ViewportEntityHit, ViewportContext, ViewportRect, ViewportGetRectInput, ViewportGetRectTarget, ViewportGetRectsInput, ViewportGetRectsResult, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, DocumentApiRejectionReason, DocumentApiRejectionDetails, TextRangeRejectionReason, ContentControlCreationRejectionReason, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, TemporaryMutationOperation, TemporaryOperationResultTarget, TemporaryOperationEffects, TemporaryMutationInput, TemporaryMutationReplaceInput, TemporaryMutationHandleInput, TemporaryMutationReceipt, DocumentStoryLocator, OperationId, OperationCall, OperationInput, OperationOptions, OperationOutput, } from './ui/types.js';
|
|
21
|
+
export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, WatermarkHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, TablesHandle, TableContextInfo, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, BookmarksHandle, BookmarkAddress, ContentControlFocusResult, ContentControlHighlightResult, ContentControlClickPayload, ContentControlRef, FontsHandle, ZoomHandle, HistoryHandle, DocumentHandle, DocumentReplacementResult, SuperDocDocumentChange, DocumentVersion, DocumentMarkCleanResult, ScopedDocumentHandle, ViewportHandle, DecorationsHandle, DecorationPointerEvent, StylesHandle, StylesUpdateToMatchSelectionInput, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, HistorySlice, DocumentSlice, StylesSlice, SearchSnapshot, SearchSlice, StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, CommentInfo, CommentsListQuery, TrackChangeInfo, TrackChangePointHit, TrackChangesItem, FontFamilyOption, FontSizeOption, CommentAddress, TrackedChangeAddress, ContentControlViewportAddress, ViewportEntityAddress, ViewportEntityHit, ViewportContext, ViewportRect, ViewportGetRectInput, ViewportGetRectTarget, ViewportGetRectsInput, ViewportGetRectsResult, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, DocumentApiRejectionReason, DocumentApiRejectionDetails, TextRangeRejectionReason, ContentControlCreationRejectionReason, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, TemporaryMutationOperation, TemporaryOperationResultTarget, TemporaryOperationEffects, TemporaryMutationInput, TemporaryMutationReplaceInput, TemporaryMutationHandleInput, TemporaryMutationReceipt, DocumentStoryLocator, ChangeRecord, ChangeActor, ChangeCause, ChangeProvenance, BlockChange, OperationId, OperationCall, OperationInput, OperationOptions, OperationOutput, } from './ui/types.js';
|
|
22
22
|
export type { PageMetricsHandle, PageMetricsSnapshot, PageMetricsPage, PageBodyTarget } from './ui/page-metrics.js';
|