@paged-media/plugin-api 0.2.38-canary.3 → 0.2.39-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/host.d.ts +20 -1
- package/dist/index.d.ts +1 -0
- package/dist/wire.d.ts +150 -3
- package/package.json +1 -1
package/dist/host.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CollectionName, DocumentMeta, ElementGeometryItem, ElementId, HitFilter, HitResult, MintedElement, Mutation, PageId, ElementProperties, PathAnchorsResult, PathAnchorTriple, SceneTreeNode, SelectionMode } from "./wire";
|
|
1
|
+
import type { CollectionName, DocumentMeta, ElementGeometryItem, ElementId, HitFilter, HitResult, MintedElement, Mutation, PageId, ElementProperties, PathAnchorsResult, PathAnchorTriple, SceneTreeNode, SelectionMode, SnapPointQuery, SnapPointResult } from "./wire";
|
|
2
2
|
import type { CommandContribution, ExporterContribution, ImporterContribution, KeybindingContribution, OverlayContribution, PagedEditor, PanelContribution, ToolContribution, ToolPreviewShape } from "./editor";
|
|
3
3
|
import type { SceneLayer } from "./wire";
|
|
4
4
|
import type { AssetSurface } from "./assets";
|
|
@@ -904,6 +904,25 @@ export interface DocumentSurface {
|
|
|
904
904
|
* forwards at all.
|
|
905
905
|
*/
|
|
906
906
|
planarRegions(elementIds: ElementId[], point?: [number, number]): Promise<PlanarRegionsResult>;
|
|
907
|
+
/**
|
|
908
|
+
* v67 (RFI C-68) — snap one page-local point the way the host's own
|
|
909
|
+
* tools do: to the anchors, frame corners and centres of every visible
|
|
910
|
+
* element, the page, the x / y lines through all of them (smart
|
|
911
|
+
* guides), ruler guides, the document grid and the nearest outline,
|
|
912
|
+
* with the session's tolerance and switches. One engine resolver
|
|
913
|
+
* answers the Pen, Direct Selection, a move and this door, so a plugin
|
|
914
|
+
* tool snaps exactly like the host.
|
|
915
|
+
*
|
|
916
|
+
* Leave the path being edited out with `exclude` (`anchors` names the
|
|
917
|
+
* dragged ones; the element's outline is then skipped too, since the
|
|
918
|
+
* host is previewing a shape the engine has not seen), and add the
|
|
919
|
+
* points of a path still being drawn with `extraPoints`.
|
|
920
|
+
*
|
|
921
|
+
* Pure READ, gated on `capabilities.document.read`. Never throws: a
|
|
922
|
+
* host whose engine predates v67 answers the point unsnapped
|
|
923
|
+
* (`snapped: false`). Probe `supports("document.snapPoint@1")`.
|
|
924
|
+
*/
|
|
925
|
+
snapPoint(query: SnapPointQuery): Promise<SnapPointResult>;
|
|
907
926
|
/** D-01 (protocol v43) — enumerate every plugin-tagged placeholder
|
|
908
927
|
* field in the document, in story order. Offsets are FRESH-READ
|
|
909
928
|
* addresses (a placeholder is its own tagged run; re-enumerate
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export type { WidgetSurface, ColorPickerProps, CodeEditorProps, CodeEditorDiagno
|
|
|
6
6
|
export type { BindingTarget, BindingPropertyRequest, BindingPropertyWrite, BindingCollectionRequest, BindingRead, BindingResolved, BindingDecline, BindingWrite, BindingCollection, BindingOp, BindingProvider, BindingProviderScope, BindingProviderHandle, BindingReadResult, BindingWriteResult, BindingCollectionResult, ActiveBindingProvider, } from "./binding-provider";
|
|
7
7
|
export type { AssetSurface, AssetKind, FontFaceAsset, FontFaceFormat, } from "./assets";
|
|
8
8
|
export type { ProviderTileWire } from "./wire";
|
|
9
|
+
export type { SnapPointQuery, SnapPointResult, SnapPointHit, SnapAxisHit, SnapSegmentHit, SnapExclude, SnapSource, SnapSettings, } from "./wire";
|
|
9
10
|
export type { MintedElement } from "./wire";
|
|
10
11
|
export type { ClipboardSurface, ClipboardPayload, TabularClipboard, } from "./clipboard";
|
|
11
12
|
export type * from "./contributions";
|
package/dist/wire.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// GENERATED — do not edit. Vendored verbatim from the published
|
|
2
2
|
// @paged-media/canvas-wasm .d.ts (tsify output from paged-media/core,
|
|
3
3
|
// MPL-2.0 OR PMEL). Sync: node scripts/sync-wire.mjs · Check: --check.
|
|
4
|
-
// Synced from @paged-media/canvas-wasm@0.
|
|
4
|
+
// Synced from @paged-media/canvas-wasm@0.67.0
|
|
5
5
|
/* tslint:disable */
|
|
6
6
|
/* eslint-disable */
|
|
7
7
|
|
|
@@ -102,6 +102,19 @@ export interface SceneLayer {
|
|
|
102
102
|
items: SceneItem[];
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
+
/**
|
|
106
|
+
* A point target the query landed on.
|
|
107
|
+
*/
|
|
108
|
+
export interface SnapPointHit {
|
|
109
|
+
source: SnapSource;
|
|
110
|
+
at: [number, number];
|
|
111
|
+
element?: ElementId | null;
|
|
112
|
+
/**
|
|
113
|
+
* Flat anchor index when `source` is `anchor` on a path.
|
|
114
|
+
*/
|
|
115
|
+
anchorIndex?: number | null;
|
|
116
|
+
}
|
|
117
|
+
|
|
105
118
|
/**
|
|
106
119
|
* A single-line text run in frame-content coordinates (C-1.1).
|
|
107
120
|
*/
|
|
@@ -159,6 +172,25 @@ export interface WordBounds {
|
|
|
159
172
|
end: number;
|
|
160
173
|
}
|
|
161
174
|
|
|
175
|
+
/**
|
|
176
|
+
* An alignment line the query was pulled onto (one per axis).
|
|
177
|
+
*/
|
|
178
|
+
export interface SnapAxisHit {
|
|
179
|
+
source: SnapSource;
|
|
180
|
+
/**
|
|
181
|
+
* x for the vertical line, y for the horizontal one (page-local).
|
|
182
|
+
*/
|
|
183
|
+
position: number;
|
|
184
|
+
/**
|
|
185
|
+
* The element whose point the line runs through, for smart guides.
|
|
186
|
+
*/
|
|
187
|
+
element?: ElementId | null;
|
|
188
|
+
/**
|
|
189
|
+
* That point, so a host can draw the guide from it to the pointer.
|
|
190
|
+
*/
|
|
191
|
+
through?: [number, number] | null;
|
|
192
|
+
}
|
|
193
|
+
|
|
162
194
|
/**
|
|
163
195
|
* Axis the snap line guides. `X` is a vertical guide (snaps the x
|
|
164
196
|
* coordinate); `Y` is a horizontal guide (snaps the y coordinate).
|
|
@@ -567,7 +599,7 @@ export type CaretDirection = "up" | "down";
|
|
|
567
599
|
/**
|
|
568
600
|
* Discriminated payload of a `WorkerToMain` message.
|
|
569
601
|
*/
|
|
570
|
-
export type WorkerToMainKind = { kind: "ready"; payload: { protocol: ProtocolVersion } } | { kind: "documentLoaded"; payload: DocumentHandle } | { kind: "loadFailed"; payload: { error: LoadError } } | { kind: "mutationFailed"; payload: { error: WorkerError } } | { kind: "displayListReady"; payload: { pageId: PageId; lod: LodTier; commands: number; layoutGeneration: number; numberingGeneration: number } } | { kind: "hitResult"; payload: HitResult } | { kind: "pagesDirty"; payload: { pageIds: PageId[] } } | { kind: "storyDirty"; payload: { storyId: string } } | { kind: "warning"; payload: { kind: string; details: string } } | { kind: "stats"; payload: DocumentStats } | { kind: "snapshotReady"; payload: SnapshotPng } | { kind: "snapshotFailed"; payload: { error: SnapshotError } } | { kind: "mutationApplied"; payload: { clientSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; createdId?: ElementId | null; minted?: MintedElement[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null; reflow?: FrameReflowInfo | null } } | { kind: "selectionGeometry"; payload: { rects: SelectionRect[] } } | { kind: "caretGeometry"; payload: { caret: CaretGeometry | null } } | { kind: "caretNavResult"; payload: { offset?: number | null } } | { kind: "lineBoundsResult"; payload: { bounds?: LineBounds | null } } | { kind: "wordBoundsResult"; payload: { bounds?: WordBounds | null } } | { kind: "paragraphBoundsResult"; payload: { bounds?: ParagraphBounds | null } } | { kind: "storyContentResult"; payload: { content?: StoryContent | null } } | { kind: "undoApplied"; payload: { undoneSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "redoApplied"; payload: { redoneSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "fontRegistered"; payload: { family: string; pageIds?: PageId[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "fontRegistryCleared"; payload: { pageIds?: PageId[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "colorProfileRegistered"; payload: { name: string } } | { kind: "elementSelectionApplied"; payload: { ids: ElementId[] } } | { kind: "marqueeHits"; payload: { ids: ElementId[] } } | { kind: "elementGeometry"; payload: { items: ElementGeometryItem[] } } | { kind: "groupLeaves"; payload: { ids: ElementId[] } } | { kind: "pathAnchors"; payload: { result: PathAnchorsResult | null } } | { kind: "textOutlines"; payload: { result: TextOutlinesResult | null } } | { kind: "planarRegions"; payload: { result: PlanarRegionsResult } } | { kind: "nearestPathPoint"; payload: { result: NearestPathPointResult | null } } | { kind: "layers"; payload: { items: LayerSummary[] } } | { kind: "collectionReply"; payload: { name: CollectionName; items: any } } | { kind: "frameChainResult"; payload: { links: FrameChainLink[] } } | { kind: "documentPlaceholders"; payload: { items: PlaceholderItem[] } } | { kind: "placedAssetBytes"; payload: { elementId: string; found: boolean; uri: string; width: number; height: number; encoded: number[] } } | { kind: "fontFaceBytes"; payload: { found: boolean; family: string; style: string | null; postscriptName: string | null; format: string; bytes: number[] } } | { kind: "measureTextResult"; payload: { advance: number; ascender: number; descender: number } } | { kind: "sceneLayerApplied"; payload: { elementId: string; applied: boolean; pageIds?: PageId[] } } | { kind: "resourceClaimApplied"; payload: { imageId: string; applied: boolean; needed?: ResourceTilesNeededWire[] } } | { kind: "resourceTilesNeeded"; payload: ResourceTilesNeededWire } | { kind: "frameReflow"; payload: { frameId: string; contentBox: [number, number, number, number] } } | { kind: "documentMetaReply"; payload: { meta: DocumentMeta } } | { kind: "colorPreviewReply"; payload: { result: ColorPreview | null } } | { kind: "colorComputeReply"; payload: { rgbHex: string; cmyk: [number, number, number, number] | null; outOfGamut: boolean } } | { kind: "gradientDetailReply"; payload: { result: GradientDetail | null } } | { kind: "swatchLibraryExported"; payload: { aseBytes: number[] } } | { kind: "exportPdfBegun"; payload: { session: number; pageCount: number } } | { kind: "exportPdfProgress"; payload: { session: number; done: number; total: number } } | { kind: "pdfExported"; payload: { pdfBytes: number[]; diagnostics: string[]; findings?: PreflightFinding[] } } | { kind: "exportPdfCancelled"; payload: { session: number } } | { kind: "exportPdfFailed"; payload: { error: string } } | { kind: "idmlExported"; payload: { idmlBytes: number[]; lost?: string[]; links?: ExportedLinkWire[] } } | { kind: "exportIdmlFailed"; payload: { error: string } } | { kind: "pagedPartWritten"; payload: {} } | { kind: "pagedPartRead"; payload: { found: boolean; bytes: number[] } } | { kind: "pagedPartList"; payload: { paths: string[] } } | { kind: "pagedPartDeleted"; payload: { existed: boolean } } | { kind: "pagedExported"; payload: { bytes: number[] } } | { kind: "pagedPartFailed"; payload: { error: string } } | { kind: "elementProperties"; payload: { result: ElementProperties | null } } | { kind: "styleProperties"; payload: { result: StyleProperties | null } } | { kind: "sceneTree"; payload: { roots: SceneTreeNode[] } } | { kind: "scriptResult"; payload: { output: string[]; error: string | null; budgetKind?: ScriptBudgetKind } } | { kind: "gestureBegun"; payload: { handle: GestureHandle } } | { kind: "gestureUpdated"; payload: { handle: GestureHandle; pageIds: PageId[]; snapLines?: SnapLine[] } } | { kind: "gestureCommitted"; payload: { handle: GestureHandle; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats } } | { kind: "gestureCancelled"; payload: { handle: GestureHandle; pageIds: PageId[] } } | { kind: "gestureFailed"; payload: { error: GestureFailure } } | { kind: "attachReady"; payload: { gpuActive: boolean; sceneCacheBudget: number } } | { kind: "gestureSnapLines"; payload: { snapLines: SnapLine[] } } | { kind: "resolutionDone"; payload: ResolutionResult };
|
|
602
|
+
export type WorkerToMainKind = { kind: "ready"; payload: { protocol: ProtocolVersion } } | { kind: "documentLoaded"; payload: DocumentHandle } | { kind: "loadFailed"; payload: { error: LoadError } } | { kind: "mutationFailed"; payload: { error: WorkerError } } | { kind: "displayListReady"; payload: { pageId: PageId; lod: LodTier; commands: number; layoutGeneration: number; numberingGeneration: number } } | { kind: "hitResult"; payload: HitResult } | { kind: "pagesDirty"; payload: { pageIds: PageId[] } } | { kind: "storyDirty"; payload: { storyId: string } } | { kind: "warning"; payload: { kind: string; details: string } } | { kind: "stats"; payload: DocumentStats } | { kind: "snapshotReady"; payload: SnapshotPng } | { kind: "snapshotFailed"; payload: { error: SnapshotError } } | { kind: "mutationApplied"; payload: { clientSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; createdId?: ElementId | null; minted?: MintedElement[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null; reflow?: FrameReflowInfo | null } } | { kind: "selectionGeometry"; payload: { rects: SelectionRect[] } } | { kind: "caretGeometry"; payload: { caret: CaretGeometry | null } } | { kind: "caretNavResult"; payload: { offset?: number | null } } | { kind: "lineBoundsResult"; payload: { bounds?: LineBounds | null } } | { kind: "wordBoundsResult"; payload: { bounds?: WordBounds | null } } | { kind: "paragraphBoundsResult"; payload: { bounds?: ParagraphBounds | null } } | { kind: "storyContentResult"; payload: { content?: StoryContent | null } } | { kind: "undoApplied"; payload: { undoneSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "redoApplied"; payload: { redoneSeq: number; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "fontRegistered"; payload: { family: string; pageIds?: PageId[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "fontRegistryCleared"; payload: { pageIds?: PageId[]; pageStructureChanged?: boolean; pageSizesPt?: [number, number][] | null } } | { kind: "colorProfileRegistered"; payload: { name: string } } | { kind: "elementSelectionApplied"; payload: { ids: ElementId[] } } | { kind: "marqueeHits"; payload: { ids: ElementId[] } } | { kind: "elementGeometry"; payload: { items: ElementGeometryItem[] } } | { kind: "groupLeaves"; payload: { ids: ElementId[] } } | { kind: "pathAnchors"; payload: { result: PathAnchorsResult | null } } | { kind: "textOutlines"; payload: { result: TextOutlinesResult | null } } | { kind: "snapPoint"; payload: { result: SnapPointResult } } | { kind: "snapSettingsApplied"; payload: { settings: SnapSettings } } | { kind: "planarRegions"; payload: { result: PlanarRegionsResult } } | { kind: "nearestPathPoint"; payload: { result: NearestPathPointResult | null } } | { kind: "layers"; payload: { items: LayerSummary[] } } | { kind: "collectionReply"; payload: { name: CollectionName; items: any } } | { kind: "frameChainResult"; payload: { links: FrameChainLink[] } } | { kind: "documentPlaceholders"; payload: { items: PlaceholderItem[] } } | { kind: "placedAssetBytes"; payload: { elementId: string; found: boolean; uri: string; width: number; height: number; encoded: number[] } } | { kind: "fontFaceBytes"; payload: { found: boolean; family: string; style: string | null; postscriptName: string | null; format: string; bytes: number[] } } | { kind: "measureTextResult"; payload: { advance: number; ascender: number; descender: number } } | { kind: "sceneLayerApplied"; payload: { elementId: string; applied: boolean; pageIds?: PageId[] } } | { kind: "resourceClaimApplied"; payload: { imageId: string; applied: boolean; needed?: ResourceTilesNeededWire[] } } | { kind: "resourceTilesNeeded"; payload: ResourceTilesNeededWire } | { kind: "frameReflow"; payload: { frameId: string; contentBox: [number, number, number, number] } } | { kind: "documentMetaReply"; payload: { meta: DocumentMeta } } | { kind: "colorPreviewReply"; payload: { result: ColorPreview | null } } | { kind: "colorComputeReply"; payload: { rgbHex: string; cmyk: [number, number, number, number] | null; outOfGamut: boolean } } | { kind: "gradientDetailReply"; payload: { result: GradientDetail | null } } | { kind: "swatchLibraryExported"; payload: { aseBytes: number[] } } | { kind: "exportPdfBegun"; payload: { session: number; pageCount: number } } | { kind: "exportPdfProgress"; payload: { session: number; done: number; total: number } } | { kind: "pdfExported"; payload: { pdfBytes: number[]; diagnostics: string[]; findings?: PreflightFinding[] } } | { kind: "exportPdfCancelled"; payload: { session: number } } | { kind: "exportPdfFailed"; payload: { error: string } } | { kind: "idmlExported"; payload: { idmlBytes: number[]; lost?: string[]; links?: ExportedLinkWire[] } } | { kind: "exportIdmlFailed"; payload: { error: string } } | { kind: "pagedPartWritten"; payload: {} } | { kind: "pagedPartRead"; payload: { found: boolean; bytes: number[] } } | { kind: "pagedPartList"; payload: { paths: string[] } } | { kind: "pagedPartDeleted"; payload: { existed: boolean } } | { kind: "pagedExported"; payload: { bytes: number[] } } | { kind: "pagedPartFailed"; payload: { error: string } } | { kind: "elementProperties"; payload: { result: ElementProperties | null } } | { kind: "styleProperties"; payload: { result: StyleProperties | null } } | { kind: "sceneTree"; payload: { roots: SceneTreeNode[] } } | { kind: "scriptResult"; payload: { output: string[]; error: string | null; budgetKind?: ScriptBudgetKind } } | { kind: "gestureBegun"; payload: { handle: GestureHandle } } | { kind: "gestureUpdated"; payload: { handle: GestureHandle; pageIds: PageId[]; snapLines?: SnapLine[] } } | { kind: "gestureCommitted"; payload: { handle: GestureHandle; appliedSeq: number; pageIds: PageId[]; cacheStats: LayoutCacheStats } } | { kind: "gestureCancelled"; payload: { handle: GestureHandle; pageIds: PageId[] } } | { kind: "gestureFailed"; payload: { error: GestureFailure } } | { kind: "attachReady"; payload: { gpuActive: boolean; sceneCacheBudget: number } } | { kind: "gestureSnapLines"; payload: { snapLines: SnapLine[] } } | { kind: "resolutionDone"; payload: ResolutionResult };
|
|
571
603
|
|
|
572
604
|
/**
|
|
573
605
|
* Editor-ops — wire mirror of `paged_model::GradientFeatherParams`.
|
|
@@ -753,6 +785,18 @@ export interface ElementProperties {
|
|
|
753
785
|
entries: PropertyEntry[];
|
|
754
786
|
}
|
|
755
787
|
|
|
788
|
+
/**
|
|
789
|
+
* Leave an element (or some of its anchors) out of the targets. With
|
|
790
|
+
* `anchors` absent the whole element is ignored; with `anchors` given,
|
|
791
|
+
* those anchors (flat indices, the `pathAnchors` numbering) are not
|
|
792
|
+
* targets and neither are the element\'s segments, since a host editing
|
|
793
|
+
* those anchors is previewing a path the engine has not seen yet.
|
|
794
|
+
*/
|
|
795
|
+
export interface SnapExclude {
|
|
796
|
+
id: ElementId;
|
|
797
|
+
anchors?: number[] | null;
|
|
798
|
+
}
|
|
799
|
+
|
|
756
800
|
/**
|
|
757
801
|
* Lightweight serialisable variant — the canvas worker hands this
|
|
758
802
|
* (encoded as a `WorkerToMain` message) to the main thread. The
|
|
@@ -934,6 +978,24 @@ export interface TextOutlineRun {
|
|
|
934
978
|
glyphs: number;
|
|
935
979
|
}
|
|
936
980
|
|
|
981
|
+
/**
|
|
982
|
+
* One point query. `point` is page-local pt on `page_id`.
|
|
983
|
+
*/
|
|
984
|
+
export interface SnapPointQuery {
|
|
985
|
+
pageId: PageId;
|
|
986
|
+
point: [number, number];
|
|
987
|
+
/**
|
|
988
|
+
* CSS px per pt at the current zoom. Absent ⇒ 1.
|
|
989
|
+
*/
|
|
990
|
+
cameraScale?: number | null;
|
|
991
|
+
exclude?: SnapExclude[];
|
|
992
|
+
/**
|
|
993
|
+
* Points only the caller knows about, page-local — the anchors of a
|
|
994
|
+
* path still being drawn. Targets as points and as alignment lines.
|
|
995
|
+
*/
|
|
996
|
+
extraPoints?: [number, number][];
|
|
997
|
+
}
|
|
998
|
+
|
|
937
999
|
/**
|
|
938
1000
|
* One stop of a gradient on the wire. Mirrors `GradientStopRef`.
|
|
939
1001
|
*/
|
|
@@ -1923,7 +1985,64 @@ export type Operation = { kind: "SetProperty"; node: NodeId; path: PropertyPath;
|
|
|
1923
1985
|
* variants so e.g. `cmyk_icc_profile` becomes `cmykIccProfile` on
|
|
1924
1986
|
* the wire — the TS protocol mirror locks the camelCase contract.
|
|
1925
1987
|
*/
|
|
1926
|
-
export type MainToWorkerKind = { kind: "hello" } | { kind: "loadDocument"; payload: { bytes: number[]; font?: number[] | null; cmykIccProfile?: number[] | null } } | { kind: "newBlankDocument"; payload: { widthPt: number; heightPt: number; font?: number[] | null } } | { kind: "registerFont"; payload: { family: string; style?: string | null; bytes: number[] } } | { kind: "clearFontRegistry" } | { kind: "registerColorProfile"; payload: { name: string; bytes: number[] } } | { kind: "mutate"; payload: Mutation } | { kind: "requestPage"; payload: { pageId: PageId; lod: LodTier } } | { kind: "hitTest"; payload: { pageId: PageId; docPoint: [number, number]; filter: HitFilter } } | { kind: "requestSnapshot"; payload: { pageId: PageId; targetWidthPx: number; dpi?: number | null } } | { kind: "setSelection"; payload: { selection: ContentSelection | null } } | { kind: "requestSelectionGeometry"; payload: { selection: ContentSelection } } | { kind: "requestCaretGeometry"; payload: { selection: ContentSelection } } | { kind: "requestCaretNav"; payload: { storyId: string; offset: number; direction: CaretDirection; cell?: TextCellAddr | null } } | { kind: "requestLineBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "requestWordBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "requestParagraphBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "undo" } | { kind: "redo" } | { kind: "setElementSelection"; payload: { ids: ElementId[]; mode: SelectionMode } } | { kind: "requestMarqueeHits"; payload: { pageId: PageId; rect: [number, number, number, number] } } | { kind: "requestElementGeometry"; payload: { ids: ElementId[] } } | { kind: "requestGroupLeaves"; payload: { groupId: string } } | { kind: "requestPathAnchors"; payload: { id: ElementId } } | { kind: "requestTextOutlines"; payload: { id: ElementId } } | { kind: "requestNearestPathPoint"; payload: { id: ElementId; point: [number, number] } } | { kind: "requestPlanarRegions"; payload: { elementIds: ElementId[]; point?: [number, number] | null } } | { kind: "requestLayers" } | { kind: "requestCollection"; payload: { name: CollectionName } } | { kind: "requestFrameChain"; payload: { storyId: string } } | { kind: "requestStoryContent"; payload: { storyId: string } } | { kind: "requestStyleProperties"; payload: { collection: StyleCollection; styleId: string } } | { kind: "requestPlacedAssetBytes"; payload: { elementId: string } } | { kind: "requestFontFaceBytes"; payload: { family: string; style?: string | null } } | { kind: "requestMeasureText"; payload: { family: string; style?: string | null; text: string; sizePt: number } } | { kind: "submitSceneLayer"; payload: { elementId: string; layer: SceneLayer; caller?: string } } | { kind: "clearSceneLayer"; payload: { elementId: string } } | { kind: "submitPixelLayer"; payload: { elementId: string; layer: PixelLayer } } | { kind: "clearPixelLayer"; payload: { elementId: string } } | { kind: "claimImageResource"; payload: { imageId: string; levels: number; tileSize: number; baseWidth: number; baseHeight: number; revision: number } } | { kind: "releaseImageResource"; payload: { imageId: string } } | { kind: "submitResourceTiles"; payload: { imageId: string; level: number; tiles: ProviderTileWire[]; generation: number } } | { kind: "requestDocumentMeta" } | { kind: "requestDocumentPlaceholders" } | { kind: "requestColorPreview"; payload: { swatchId: string } } | { kind: "requestColorCompute"; payload: { space: string; value: number[]; tint?: number | null; model?: string | null; alternateSpace?: string | null; alternateValue?: number[] | null } } | { kind: "requestGradientDetail"; payload: { gradientId: string } } | { kind: "exportSwatchLibrary"; payload: { groupId?: string | null } } | { kind: "executeScript"; payload: { source: string; budget?: ScriptBudgetWire | null } } | { kind: "exportPdfBegin"; payload: { options: ExportPdfWireOptions } } | { kind: "exportPdfPage"; payload: { session: number } } | { kind: "exportPdfFinish"; payload: { session: number } } | { kind: "exportPdfCancel"; payload: { session: number } } | { kind: "exportIdml"; payload: { linkBase?: string | null } } | { kind: "writePagedPart"; payload: { path: string; bytes: number[]; caller?: string } } | { kind: "readPagedPart"; payload: { path: string } } | { kind: "listPagedParts"; payload: { prefix: string } } | { kind: "deletePagedPart"; payload: { path: string; caller?: string } } | { kind: "exportPaged"; payload: {} } | { kind: "requestElementProperties"; payload: { id: ElementId } } | { kind: "requestSceneTree" } | { kind: "beginGesture"; payload: { nodes: ElementId[]; gesture: GestureType; anchor?: GestureAnchor | null; cameraScale?: number | null } } | { kind: "updateGesture"; payload: { handle: GestureHandle; delta: [number, number]; modifiers: GestureModifiers } } | { kind: "commitGesture"; payload: { handle: GestureHandle } } | { kind: "cancelGesture"; payload: { handle: GestureHandle } };
|
|
1988
|
+
export type MainToWorkerKind = { kind: "hello" } | { kind: "loadDocument"; payload: { bytes: number[]; font?: number[] | null; cmykIccProfile?: number[] | null } } | { kind: "newBlankDocument"; payload: { widthPt: number; heightPt: number; font?: number[] | null } } | { kind: "registerFont"; payload: { family: string; style?: string | null; bytes: number[] } } | { kind: "clearFontRegistry" } | { kind: "registerColorProfile"; payload: { name: string; bytes: number[] } } | { kind: "mutate"; payload: Mutation } | { kind: "requestPage"; payload: { pageId: PageId; lod: LodTier } } | { kind: "hitTest"; payload: { pageId: PageId; docPoint: [number, number]; filter: HitFilter } } | { kind: "requestSnapshot"; payload: { pageId: PageId; targetWidthPx: number; dpi?: number | null } } | { kind: "setSelection"; payload: { selection: ContentSelection | null } } | { kind: "requestSelectionGeometry"; payload: { selection: ContentSelection } } | { kind: "requestCaretGeometry"; payload: { selection: ContentSelection } } | { kind: "requestCaretNav"; payload: { storyId: string; offset: number; direction: CaretDirection; cell?: TextCellAddr | null } } | { kind: "requestLineBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "requestWordBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "requestParagraphBounds"; payload: { storyId: string; offset: number; cell?: TextCellAddr | null } } | { kind: "undo" } | { kind: "redo" } | { kind: "setElementSelection"; payload: { ids: ElementId[]; mode: SelectionMode } } | { kind: "requestMarqueeHits"; payload: { pageId: PageId; rect: [number, number, number, number] } } | { kind: "requestElementGeometry"; payload: { ids: ElementId[] } } | { kind: "requestGroupLeaves"; payload: { groupId: string } } | { kind: "requestPathAnchors"; payload: { id: ElementId } } | { kind: "requestTextOutlines"; payload: { id: ElementId } } | { kind: "requestSnapPoint"; payload: { query: SnapPointQuery } } | { kind: "setSnapSettings"; payload: { settings: SnapSettings } } | { kind: "requestNearestPathPoint"; payload: { id: ElementId; point: [number, number] } } | { kind: "requestPlanarRegions"; payload: { elementIds: ElementId[]; point?: [number, number] | null } } | { kind: "requestLayers" } | { kind: "requestCollection"; payload: { name: CollectionName } } | { kind: "requestFrameChain"; payload: { storyId: string } } | { kind: "requestStoryContent"; payload: { storyId: string } } | { kind: "requestStyleProperties"; payload: { collection: StyleCollection; styleId: string } } | { kind: "requestPlacedAssetBytes"; payload: { elementId: string } } | { kind: "requestFontFaceBytes"; payload: { family: string; style?: string | null } } | { kind: "requestMeasureText"; payload: { family: string; style?: string | null; text: string; sizePt: number } } | { kind: "submitSceneLayer"; payload: { elementId: string; layer: SceneLayer; caller?: string } } | { kind: "clearSceneLayer"; payload: { elementId: string } } | { kind: "submitPixelLayer"; payload: { elementId: string; layer: PixelLayer } } | { kind: "clearPixelLayer"; payload: { elementId: string } } | { kind: "claimImageResource"; payload: { imageId: string; levels: number; tileSize: number; baseWidth: number; baseHeight: number; revision: number } } | { kind: "releaseImageResource"; payload: { imageId: string } } | { kind: "submitResourceTiles"; payload: { imageId: string; level: number; tiles: ProviderTileWire[]; generation: number } } | { kind: "requestDocumentMeta" } | { kind: "requestDocumentPlaceholders" } | { kind: "requestColorPreview"; payload: { swatchId: string } } | { kind: "requestColorCompute"; payload: { space: string; value: number[]; tint?: number | null; model?: string | null; alternateSpace?: string | null; alternateValue?: number[] | null } } | { kind: "requestGradientDetail"; payload: { gradientId: string } } | { kind: "exportSwatchLibrary"; payload: { groupId?: string | null } } | { kind: "executeScript"; payload: { source: string; budget?: ScriptBudgetWire | null } } | { kind: "exportPdfBegin"; payload: { options: ExportPdfWireOptions } } | { kind: "exportPdfPage"; payload: { session: number } } | { kind: "exportPdfFinish"; payload: { session: number } } | { kind: "exportPdfCancel"; payload: { session: number } } | { kind: "exportIdml"; payload: { linkBase?: string | null } } | { kind: "writePagedPart"; payload: { path: string; bytes: number[]; caller?: string } } | { kind: "readPagedPart"; payload: { path: string } } | { kind: "listPagedParts"; payload: { prefix: string } } | { kind: "deletePagedPart"; payload: { path: string; caller?: string } } | { kind: "exportPaged"; payload: {} } | { kind: "requestElementProperties"; payload: { id: ElementId } } | { kind: "requestSceneTree" } | { kind: "beginGesture"; payload: { nodes: ElementId[]; gesture: GestureType; anchor?: GestureAnchor | null; cameraScale?: number | null } } | { kind: "updateGesture"; payload: { handle: GestureHandle; delta: [number, number]; modifiers: GestureModifiers } } | { kind: "commitGesture"; payload: { handle: GestureHandle } } | { kind: "cancelGesture"; payload: { handle: GestureHandle } };
|
|
1989
|
+
|
|
1990
|
+
/**
|
|
1991
|
+
* The document\'s snapping preferences — one set for every tool and
|
|
1992
|
+
* gesture, so a move and a pen click agree on what \"close\" means.
|
|
1993
|
+
* Session state, not document state: it is not saved and not undoable.
|
|
1994
|
+
*/
|
|
1995
|
+
export interface SnapSettings {
|
|
1996
|
+
/**
|
|
1997
|
+
* Master switch. Off ⇒ no gesture snaps and every query answers the
|
|
1998
|
+
* point it was given.
|
|
1999
|
+
*/
|
|
2000
|
+
enabled?: boolean;
|
|
2001
|
+
/**
|
|
2002
|
+
* Tolerance in CSS px, converted to pt through the camera scale.
|
|
2003
|
+
*/
|
|
2004
|
+
tolerancePx?: number;
|
|
2005
|
+
/**
|
|
2006
|
+
* Anchors, frame corners, oval quadrant points and element centres.
|
|
2007
|
+
*/
|
|
2008
|
+
points?: boolean;
|
|
2009
|
+
/**
|
|
2010
|
+
* The x / y lines through those points (smart guides).
|
|
2011
|
+
*/
|
|
2012
|
+
alignment?: boolean;
|
|
2013
|
+
/**
|
|
2014
|
+
* The nearest point on an element\'s outline.
|
|
2015
|
+
*/
|
|
2016
|
+
segments?: boolean;
|
|
2017
|
+
/**
|
|
2018
|
+
* Page corners, centre, edges and centre lines.
|
|
2019
|
+
*/
|
|
2020
|
+
page?: boolean;
|
|
2021
|
+
/**
|
|
2022
|
+
* Ruler guides.
|
|
2023
|
+
*/
|
|
2024
|
+
guides?: boolean;
|
|
2025
|
+
/**
|
|
2026
|
+
* The document grid (`GridPreference` gridline divisions). Off by
|
|
2027
|
+
* default, as in InDesign.
|
|
2028
|
+
*/
|
|
2029
|
+
grid?: boolean;
|
|
2030
|
+
}
|
|
2031
|
+
|
|
2032
|
+
/**
|
|
2033
|
+
* The segment the query landed on.
|
|
2034
|
+
*/
|
|
2035
|
+
export interface SnapSegmentHit {
|
|
2036
|
+
element: ElementId;
|
|
2037
|
+
/**
|
|
2038
|
+
* Flat index of the segment\'s start / end anchor. Absent for an
|
|
2039
|
+
* outline the element does not store as anchors (a box-drawn
|
|
2040
|
+
* frame, an oval).
|
|
2041
|
+
*/
|
|
2042
|
+
segStart?: number | null;
|
|
2043
|
+
segEnd?: number | null;
|
|
2044
|
+
t: number;
|
|
2045
|
+
}
|
|
1927
2046
|
|
|
1928
2047
|
/**
|
|
1929
2048
|
* Track J — wire-shape mirror of `paged_model::PathAnchor`. The
|
|
@@ -2265,6 +2384,11 @@ export interface TableHitContext {
|
|
|
2265
2384
|
col: number;
|
|
2266
2385
|
}
|
|
2267
2386
|
|
|
2387
|
+
/**
|
|
2388
|
+
* What a snap landed on.
|
|
2389
|
+
*/
|
|
2390
|
+
export type SnapSource = "anchor" | "corner" | "center" | "page" | "guide" | "grid" | "extra";
|
|
2391
|
+
|
|
2268
2392
|
/**
|
|
2269
2393
|
* What the resolver produced this pass. The canvas worker reads
|
|
2270
2394
|
* `numbering_map` to drive the running-header / page-number
|
|
@@ -2421,6 +2545,29 @@ export interface LineBounds {
|
|
|
2421
2545
|
lineEnd: number;
|
|
2422
2546
|
}
|
|
2423
2547
|
|
|
2548
|
+
/**
|
|
2549
|
+
* `RequestSnapPoint` reply payload.
|
|
2550
|
+
*/
|
|
2551
|
+
export interface SnapPointResult {
|
|
2552
|
+
/**
|
|
2553
|
+
* The point after snapping; the query\'s point when nothing snapped.
|
|
2554
|
+
*/
|
|
2555
|
+
point: [number, number];
|
|
2556
|
+
snapped: boolean;
|
|
2557
|
+
pointTarget?: SnapPointHit | null;
|
|
2558
|
+
xTarget?: SnapAxisHit | null;
|
|
2559
|
+
yTarget?: SnapAxisHit | null;
|
|
2560
|
+
segmentTarget?: SnapSegmentHit | null;
|
|
2561
|
+
/**
|
|
2562
|
+
* The guides to draw, same shape the translate gesture reports.
|
|
2563
|
+
*/
|
|
2564
|
+
lines: SnapLine[];
|
|
2565
|
+
/**
|
|
2566
|
+
* The tolerance the query ran with, in pt.
|
|
2567
|
+
*/
|
|
2568
|
+
tolerancePt: number;
|
|
2569
|
+
}
|
|
2570
|
+
|
|
2424
2571
|
/**
|
|
2425
2572
|
* panels.md gap 20 — one structured PDF-export preflight finding for
|
|
2426
2573
|
* the export dialog\'s findings list. The wire mirror of
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paged-media/plugin-api",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.39-canary.0",
|
|
4
4
|
"description": "The Paged plugin contract: manifest, bundle lifecycle, the BundleHost surface, and the contribution + engine wire types. Type-only.",
|
|
5
5
|
"license": "MPL-2.0 OR LicenseRef-PMEL",
|
|
6
6
|
"type": "module",
|