superdoc 2.16.1-next.4 → 2.16.1-next.6

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.
@@ -1,6 +1,6 @@
1
1
  import { OperationId } from './operation-definitions.js';
2
2
  import { CommandStaticMetadata } from './metadata-types.js';
3
- export { OPERATION_IDEMPOTENCY_VALUES, type OperationIdempotency, PRE_APPLY_THROW_CODES, type PreApplyThrowCode, type CommandThrowPolicy, type CommandStaticMetadata, } from './metadata-types.js';
3
+ export { OPERATION_IDEMPOTENCY_VALUES, type OperationIdempotency, OPERATION_TRACKED_SUPPORT_VALUES, type OperationTrackedSupport, PRE_APPLY_THROW_CODES, type PreApplyThrowCode, type CommandThrowPolicy, type CommandStaticMetadata, } from './metadata-types.js';
4
4
  export { type OperationId, OPERATION_IDS, SINGLETON_OPERATION_IDS, NAMESPACED_OPERATION_IDS, } from './operation-definitions.js';
5
5
  export declare const CONTRACT_VERSION = "0.1.0";
6
6
  export declare const JSON_SCHEMA_DIALECT = "https://json-schema.org/draft/2020-12/schema";
@@ -32,7 +32,7 @@ import { TableLocator, TableMutationResult, TablesConvertFromTextInput, TablesMo
32
32
  import { TrackChangesAdapter, TrackChangesApi } from './track-changes/track-changes.js';
33
33
  import { MutationOptions, RichContentMutationOptions, WriteAdapter } from './write/write.js';
34
34
  import { SelectionMutationAdapter } from './selection-mutation.js';
35
- import { CapabilitiesAdapter, DocumentApiCapabilities } from './capabilities/capabilities.js';
35
+ import { CapabilitiesAdapter, DocumentApiCapabilities, OperationCapabilityResolveInput, OperationCapabilityResolveResult } from './capabilities/capabilities.js';
36
36
  import { SDHtmlMarkdownSupportCheckInput, SDHtmlMarkdownSupportCheckResult } from './capabilities/html-markdown-support.js';
37
37
  import { OperationId } from './contract/types.js';
38
38
  import { DynamicInvokeRequest, InvokeRequest, InvokeResult } from './contract/operation-registry.js';
@@ -242,6 +242,7 @@ export interface CapabilitiesApi {
242
242
  (): DocumentApiCapabilities;
243
243
  get(): DocumentApiCapabilities;
244
244
  check(input: SDHtmlMarkdownSupportCheckInput): Promise<SDHtmlMarkdownSupportCheckResult>;
245
+ resolve(input: OperationCapabilityResolveInput): OperationCapabilityResolveResult;
245
246
  }
246
247
  export interface QueryApi {
247
248
  /** Accepts canonical nested input or a selector shorthand normalized to `{ select: ... }` internally. */
@@ -267,7 +268,7 @@ export interface MutationsAdapter {
267
268
  /**
268
269
  * The Document API interface for querying and inspecting document nodes.
269
270
  */
270
- export interface DocumentApi {
271
+ export interface DocumentApiSurface {
271
272
  /**
272
273
  * Read the full document as an SDDocument structure.
273
274
  * @param input - Get input with optional read options.
@@ -511,6 +512,9 @@ export interface DocumentApi {
511
512
  * Callable directly (`capabilities()`) or via `.get()`.
512
513
  */
513
514
  capabilities: CapabilitiesApi;
515
+ }
516
+ /** Complete Document API surface, including typed dynamic invocation. */
517
+ export interface DocumentApi extends DocumentApiSurface {
514
518
  /**
515
519
  * Dynamically dispatch any operation by its operation ID.
516
520
  *
@@ -1,5 +1,5 @@
1
- import { OperationId } from '../contract/types.js';
2
1
  import { OperationRegistry } from '../contract/operation-registry.js';
2
+ import { OperationId } from '../contract/types.js';
3
3
  import { DocumentApi } from '../index.js';
4
4
  type DispatchOutput<K extends OperationId> = K extends 'mutations.preview' | 'mutations.apply' ? Promise<OperationRegistry[K]['output']> : K extends 'plan.execute' ? OperationRegistry[K]['output'] | Promise<OperationRegistry[K]['output']> : OperationRegistry[K]['output'];
5
5
  type TypedDispatchHandler<K extends OperationId> = OperationRegistry[K]['options'] extends never ? (input: OperationRegistry[K]['input']) => DispatchOutput<K> : (input: OperationRegistry[K]['input'], options?: OperationRegistry[K]['options']) => DispatchOutput<K>;
@@ -7,12 +7,8 @@ export type TypedDispatchTable = {
7
7
  [K in OperationId]: TypedDispatchHandler<K>;
8
8
  };
9
9
  /**
10
- * Builds a dispatch table that maps every OperationId to the corresponding
11
- * direct method call on the given DocumentApi instance.
12
- *
13
- * Each entry delegates to the direct method: no parallel execution path.
14
- * The return type is {@link TypedDispatchTable}, which validates at compile
15
- * time that each handler conforms to the {@link OperationRegistry} contract.
10
+ * Builds the generic invoke dispatch from the same operation definitions that
11
+ * publish operation IDs and direct API member paths.
16
12
  */
17
13
  export declare function buildDispatchTable(api: DocumentApi): TypedDispatchTable;
18
14
  export {};
@@ -30,7 +30,7 @@ import { BuiltInCommandId } from './commands.js';
30
30
  * (`scripts/ensure-types.cjs` `rewriteDocApiPaths`), so no bare private
31
31
  * specifier leaks into the emitted `.d.ts`.
32
32
  */
33
- export type { Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, DocumentApi, EntityAddress, CommentsListQuery as DocumentApiCommentsListQuery, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, RichContentInsertInput, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, } from '../../../../document-api/src/index.js';
33
+ export type { Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, DocumentApi, EntityAddress, CommentsListQuery as DocumentApiCommentsListQuery, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, } from '../../../../document-api/src/index.js';
34
34
  export type { StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, } from '../../../../document-api/src/index.js';
35
35
  export type { ListPresetId } from '../../../../document-api/src/index.js';
36
36
  export type { BrowserDocumentApi, PartialBrowserDocumentApi } from '../browser-document-api.js';
@@ -40,6 +40,7 @@ import type { FontsHandle as __Cjs_FontsHandle } from './ui.js' with { "resoluti
40
40
  import type { FontSizeOption as __Cjs_FontSizeOption } from './ui.js' with { "resolution-mode": "import" };
41
41
  import type { FontsSlice as __Cjs_FontsSlice } from './ui.js' with { "resolution-mode": "import" };
42
42
  import type { MetadataHandle as __Cjs_MetadataHandle } from './ui.js' with { "resolution-mode": "import" };
43
+ import type { OperationCapabilityResolveResult as __Cjs_OperationCapabilityResolveResult } from './ui.js' with { "resolution-mode": "import" };
43
44
  import type { PartialBrowserDocumentApi as __Cjs_PartialBrowserDocumentApi } from './ui.js' with { "resolution-mode": "import" };
44
45
  import type { PictureWatermarkInput as __Cjs_PictureWatermarkInput } from './ui.js' with { "resolution-mode": "import" };
45
46
  import type { Receipt as __Cjs_Receipt } from './ui.js' with { "resolution-mode": "import" };
@@ -154,6 +155,7 @@ export type { __Cjs_FontsHandle as FontsHandle };
154
155
  export type { __Cjs_FontSizeOption as FontSizeOption };
155
156
  export type { __Cjs_FontsSlice as FontsSlice };
156
157
  export type { __Cjs_MetadataHandle as MetadataHandle };
158
+ export type { __Cjs_OperationCapabilityResolveResult as OperationCapabilityResolveResult };
157
159
  export type { __Cjs_PartialBrowserDocumentApi as PartialBrowserDocumentApi };
158
160
  export type { __Cjs_PictureWatermarkInput as PictureWatermarkInput };
159
161
  export type { __Cjs_Receipt as Receipt };
@@ -26,4 +26,4 @@
26
26
  export { createSuperDocUI } from './ui/create-super-doc-ui.js';
27
27
  export { shallowEqual } from './ui/equality.js';
28
28
  export { BUILT_IN_COMMAND_IDS } from './ui/commands.js';
29
- export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, ContentControlFocusResult, ContentControlHighlightResult, FontsHandle, ZoomHandle, DocumentHandle, DocumentReplacementResult, ViewportHandle, StylesHandle, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, 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, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, RichContentInsertInput, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, } from './ui/types.js';
29
+ export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, ContentControlFocusResult, ContentControlHighlightResult, FontsHandle, ZoomHandle, DocumentHandle, DocumentReplacementResult, ViewportHandle, StylesHandle, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, 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, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, } from './ui/types.js';
package/dist/superdoc.cjs CHANGED
@@ -316,7 +316,7 @@ var shuffleArray = (array) => {
316
316
  var DEFAULT_ENDPOINT = "https://ingest.superdoc.dev/v1/collect";
317
317
  function getSuperdocVersion() {
318
318
  try {
319
- return "2.16.1-next.4";
319
+ return "2.16.1-next.6";
320
320
  } catch {
321
321
  return "unknown";
322
322
  }
@@ -45710,7 +45710,7 @@ var SuperDoc = class extends require_eventemitter3.import_eventemitter3.default
45710
45710
  this.config.colors = shuffleArray(this.config.colors);
45711
45711
  this.userColorMap = /* @__PURE__ */ new Map();
45712
45712
  this.colorIndex = 0;
45713
- this.version = "2.16.1-next.4";
45713
+ this.version = "2.16.1-next.6";
45714
45714
  this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
45715
45715
  this.superdocId = config.superdocId || require_uuid.v4();
45716
45716
  this.colors = this.config.colors ?? [];
@@ -315,7 +315,7 @@ var shuffleArray = (array) => {
315
315
  var DEFAULT_ENDPOINT = "https://ingest.superdoc.dev/v1/collect";
316
316
  function getSuperdocVersion() {
317
317
  try {
318
- return "2.16.1-next.4";
318
+ return "2.16.1-next.6";
319
319
  } catch {
320
320
  return "unknown";
321
321
  }
@@ -45641,7 +45641,7 @@ var SuperDoc = class extends import_eventemitter3.default {
45641
45641
  this.config.colors = shuffleArray(this.config.colors);
45642
45642
  this.userColorMap = /* @__PURE__ */ new Map();
45643
45643
  this.colorIndex = 0;
45644
- this.version = "2.16.1-next.4";
45644
+ this.version = "2.16.1-next.6";
45645
45645
  this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
45646
45646
  this.superdocId = config.superdocId || v4();
45647
45647
  this.colors = this.config.colors ?? [];