Editor 完整签名索引
本页从当前公开Editor源码提取全部非私有成员,包含参数、默认值及返回类型,共119项。它是签名索引;构造参数和行为说明请从Editor总览进入相应专题。
TContainer表示渲染适配器的宿主容器类型;Leafer浏览器接入通常为HTMLElement。表中的类型名称来自Editor或Core公开协议,不要求应用为查询签名导入内部文件。
| 成员 | 当前签名 | 说明 |
|---|---|---|
engine | readonly engine: SkyNoteEngine | 底层引擎,供插件装配与高级扩展使用;界面优先使用Editor门面。 |
textEditor | readonly textEditor = new TextEditPlugin() | 画布文字编辑插件,用于查询编辑状态和设置文字选区样式。 |
constructor | constructor(options: SkyNoteEditorOptions<TContainer>) | 创建Editor,装配引擎、基础插件及宿主提供的渲染适配器。 |
isMounted | get isMounted(): boolean | 查询当前是否已挂载到宿主容器。 |
mount | mount(container: TContainer): void | 挂载到已有尺寸的容器;已挂载时先卸载原容器。 |
unmount | unmount(): void | 卸载渲染器,保留引擎与文档,可再次挂载。 |
destroy | destroy(): void | 卸载渲染器并销毁引擎、插件和订阅,结束实例生命周期。 |
getImageLoadState | getImageLoadState(nodeId: string): ImageLoadState | undefined | 查询图片节点的加载状态;无对应状态时返回undefined。 |
retryImages | retryImages(nodeIds: readonly string[]): readonly string[] | 重试指定图片的加载,返回接受重试的节点ID。 |
onImageLoadChange | onImageLoadChange(listener: () => void): () => void | 订阅图片加载状态变化,返回取消订阅函数。 |
documentEpoch | get documentEpoch(): number | 查询当前文档世代标识,供异步任务识别文档切换。 |
getHistorySnapshot | getHistorySnapshot(): CanvasHistorySnapshot | 获取当前撤销与重做历史快照。 |
beginMaintenance | beginMaintenance(): { readonly drained: Promise<void>; resume(): void } | 暂停事务和历史操作;等待drained后维护,完成后调用resume恢复。 |
onAssetTaskEvent | onAssetTaskEvent(listener: (event: AssetTaskEvent) => void): () => void | 订阅资产任务事件,返回取消订阅函数。 |
onSelectionChange | onSelectionChange(listener: () => void): () => void | 订阅节点或连线选区变化,返回取消订阅函数。 |
onToolChange | onToolChange(listener: () => void): () => void | 订阅当前画布工具变化,返回取消订阅函数。 |
onConnectorDropOnBlank | onConnectorDropOnBlank(listener: (e: ConnectorDropEvent) => void): () => void | 订阅连线自由端落在空白处的事件,可配合connectNewNode创建节点。 |
onViewportChange | onViewportChange(listener: () => void): () => void | 订阅视口平移与缩放变化,返回取消订阅函数。 |
onDocumentChange | onDocumentChange(listener: (changes: DocumentChangeSet) => void): () => void | 订阅按实体归类的文档增量变更,返回取消订阅函数。 |
registerCursor | registerCursor(definition: CursorDefinition): () => void | 注册或覆盖画布光标,返回注销或恢复原定义的函数。 |
setCursorStyle | setCursorStyle(style: Partial<CursorStyle>): void | 统一更新内置与插件光标的配色样式。 |
registerInputScope | registerInputScope(scope: InputScope): () => void | 注册键盘输入作用域,参与焦点与优先级分发,返回注销函数。 |
onCommit | onCommit(listener: (patches: readonly CanvasPatch[], record: CanvasOperationRecord) => void): () => void | 订阅每次提交的正向补丁和事务记录,含撤销、重做与导入。 |
onHistoryChange | onHistoryChange(listener: HistoryChangeListener): () => void | 订阅撤销与重做历史状态变化,返回取消订阅函数。 |
viewport | get viewport(): Readonly<ViewportState> | 读取当前视口的平移和缩放状态。 |
viewportCenter | get viewportCenter(): Point | 读取视口中心对应的世界坐标。 |
viewportSize | get viewportSize(): { width: number; height: number } | 读取视口的像素宽高。 |
screenToWorld | screenToWorld(point: Point): Point | 将画布容器内的屏幕坐标转换为世界坐标。 |
worldToScreen | worldToScreen(point: Point): Point | 将世界坐标转换为画布容器内的屏幕坐标。 |
zoomAt | zoomAt(factor: number, center?: Point): void | 以指定屏幕点为中心按倍数缩放,默认使用视口中心。 |
applyInitialView | applyInitialView(mode: InitialViewMode = this.initialView, viewport?: Partial<ViewportState>): void | 应用文档打开策略;preserve模式可传入宿主保存的视口。 |
fitContent | fitContent(): void | 调整视口以容纳全部内容;内容较少时不超过原始尺寸。 |
fitEntities | fitEntities(refs: EntityRefs): void | 调整视口以容纳指定节点和连线;目标均不存在时保持原视口。 |
canExportPng | get canExportPng(): boolean | 查询渲染适配器是否支持PNG导出。 |
revealEntities | revealEntities( refs: EntityRefs, options: { center?: boolean; padding?: number; insets?: Partial<{ left: number; right: number; top: number; bottom: number }>; } = {} ): void | 保持缩放并平移以显示目标,可指定居中、留白及宿主面板占用区域。 |
previewEntities | previewEntities(refs: EntityRefs): () => void | 显示独立于选区的临时预览框,返回释放函数。 |
getPngExportInfo | getPngExportInfo(options: { scope?: 'content' | 'selection'; scale?: number } = {}): { bounds: RectBounds; width: number; height: number; } | 计算PNG导出的范围和像素尺寸;范围或预算无效时抛出异常。 |
exportPng | async exportPng( options: { scope?: 'content' | 'selection'; scale?: number; background?: 'transparent' | 'canvas'; signal?: AbortSignal; } = {} ): Promise<CanvasExportResult> | 异步导出内容或选区为PNG,支持取消;不改变视口、选区或历史。 |
theme | get theme(): CanvasTheme | 读取当前解析后的画布主题。 |
setTheme | setTheme(config: CanvasThemeConfig): void | 通过种子色与可选覆盖值更新画布主题。 |
resolveColor | resolveColor(colorOrToken: string): string | 将调色板或主题颜色令牌解析为色值,无法解析时原样返回。 |
tool | get tool(): CanvasTool | 读取当前画布工具。 |
connectorToolType | get connectorToolType(): ConnectorLineType | 读取连线工具当前采用的线型。 |
startConnectorTool | startConnectorTool(connectorType: ConnectorLineType = this.connectorToolType): void | 进入指定线型的连线绘制工具,完成绘制后回到选择工具。 |
stopTool | stopTool(): void | 取消当前工具操作并回到选择工具。 |
isReadOnly | get isReadOnly(): boolean | 查询是否处于只读浏览模式。 |
setReadOnly | setReadOnly(readOnly: boolean): void | 切换只读浏览模式,进入只读时清空选区并限制编辑交互。 |
onReadOnlyChange | onReadOnlyChange(listener: (isReadOnly: boolean) => void): () => void | 订阅只读状态变化,返回取消订阅函数。 |
selectedNodeIds | get selectedNodeIds(): ReadonlySet<string> | 读取当前直接选中的节点ID集合。 |
selectedConnectorIds | get selectedConnectorIds(): ReadonlySet<string> | 读取当前选中的连线ID集合。 |
select | select(nodeIds: readonly string[], connectorIds: readonly string[] = []): void | 用指定节点和连线替换原选区,按可见性等选择规则过滤。 |
selectedSubtreeNodeIds | get selectedSubtreeNodeIds(): ReadonlySet<string> | 读取当前以整体子树语义选中的根节点ID集合。 |
selectSubtree | selectSubtree(rootId: string): void | 按布局公开的整体语义选择子树,文档操作仍以根节点为入口。 |
selectAll | selectAll(): void | 选中根层级节点与连线,容器后代随容器参与操作。 |
nodeCount | get nodeCount(): number | 查询文档中的节点总数。 |
isNodeVisible | isNodeVisible(id: string): boolean | 查询节点在当前布局折叠状态下是否可见。 |
isConnectorVisible | isConnectorVisible(id: string): boolean | 查询连线是否可见;绑定端点隐藏时连线也隐藏。 |
getNodeBounds | getNodeBounds(id: string): RectBounds | undefined | 查询节点可见的世界外框,隐藏或不存在时返回undefined。 |
onLayoutChange | onLayoutChange(listener: () => void): () => void | 订阅布局能力或可见性变化,返回取消订阅函数。 |
getNode | getNode(id: string): Readonly<NodeEntity> | undefined | 按ID读取节点,不存在时返回undefined。 |
getNodes | getNodes(): readonly Readonly<NodeEntity>[] | 全量读取节点,适合低频查询;持续观察优先消费文档增量。 |
getConnectors | getConnectors(): readonly Readonly<ConnectorEntity>[] | 全量读取文档中的连线。 |
getNodeTypeLabel | getNodeTypeLabel(nodeType: string): string | 获取节点类型的展示名称。 |
getChildIds | getChildIds(parentId?: string): string[] | 读取容器的直接子节点ID;省略parentId时查询根层级。 |
nodeAt | nodeAt(point: Point): Readonly<NodeEntity> | undefined | 命中世界坐标处最上层的节点,按实际轮廓与框外装饰判断。 |
connectorAt | connectorAt(point: Point): Readonly<ConnectorEntity> | undefined | 命中世界坐标处的连线,命中容差按屏幕像素计算。 |
getConnector | getConnector(id: string): Readonly<ConnectorEntity> | undefined | 按ID读取连线,不存在时返回undefined。 |
dispatchContextMenu | dispatchContextMenu(point: Point): boolean | 先向插件分发右键操作;返回true时宿主不再弹出菜单。 |
getConnectorStyle | getConnectorStyle(id: string): ConnectorStyle | undefined | 读取连线默认样式与自身样式合并后的生效样式。 |
getEntitiesBounds | getEntitiesBounds(refs: EntityRefs): RectBounds | undefined | 计算节点与连线的整体世界外框,包含旋转、装饰和真实路由。 |
getNodeStyle | getNodeStyle(id: string): NodeStyle | undefined | 读取节点类型默认样式与自身样式合并后的生效样式。 |
isAspectLocked | isAspectLocked(id: string): boolean | 查询节点当前是否锁定宽高比,优先使用节点显式设置。 |
getNodeResizeAxes | getNodeResizeAxes(id: string): NodeResizeAxes | 查询节点允许手动调整尺寸的轴。 |
supportsCornerRadius | supportsCornerRadius(id: string): boolean | 查询节点是否支持圆角设置。 |
canFitContent | canFitContent(id: string): boolean | 查询节点是否支持尺寸适应内容。 |
createNode | createNode<T extends string>(request: CreateNodeRequest<T>): string | null | 按父容器内左上角坐标创建节点,不改变选区;失败返回null。 |
insertNodeAtViewportCenter | insertNodeAtViewportCenter(request: ViewportInsertRequest): string | null | 在视口中心插入并选中新节点,一步撤销;失败返回null。 |
insertNodeAt | insertNodeAt(request: ViewportInsertRequest, point: Point): string | null | 以指定世界坐标为中心插入并选中新节点;失败返回null。 |
insertImage | insertImage(file: unknown, point: Point): Promise<AssetTaskResult<string>> | 上传并插入图片,异步返回成功、取消或失败的资产任务结果。 |
replaceImage | replaceImage(nodeIds: readonly string[], file: unknown): Promise<AssetTaskResult<readonly string[]>> | 替换图片节点的资产引用,保留几何与样式,返回资产任务结果。 |
duplicateEntities | duplicateEntities(refs: EntityRefs, offset: Point = { x: 20, y: 20 }): EntityIds | 复制节点、后代及相关连线,偏移并选中副本,一步撤销。 |
deleteEntities | deleteEntities(refs: EntityRefs, label?: string): void | 删除指定实体,节点级联删除后代与依附连线,一步撤销。 |
updateNodes | updateNodes( nodeIds: readonly string[], fields: Partial<NodeEntity> | ((node: Readonly<NodeEntity>) => Partial<NodeEntity>), options?: UpdateOptions ): void | 批量写入节点字段;style和data默认按字段合并,可显式整体替换。 |
updateNodeStyle | updateNodeStyle(nodeIds: readonly string[], style: Partial<NodeStyle>, options?: EditOptions): void | 合并更新节点样式,同一groupId的连续调整可合并历史。 |
setNodeRadius | setNodeRadius(nodeIds: readonly string[], radius: number, options?: EditOptions & { corner?: RadiusCorner }): void | 设置全部或指定角的圆角;指定单角时保留其余角。 |
setLocked | setLocked(refs: EntityRefs, locked: boolean): void | 锁定或解锁节点与连线,一步撤销。 |
setAspectLocked | setAspectLocked(nodeIds: readonly string[], locked: boolean): void | 设置节点是否锁定宽高比。 |
moveNodeLayers | moveNodeLayers(nodeIds: readonly string[], move: LayerMove): void | 上移、下移、置顶或置底指定节点。 |
getNodeArrangementInfo | getNodeArrangementInfo(nodeIds: readonly string[]): NodeArrangementInfo | 查询节点排列条件,供对齐、分布等操作入口判断。 |
alignNodes | alignNodes(nodeIds: readonly string[], alignment: NodeAlignment): void | 按世界外框对齐节点;锁定或受自动布局控制时整体不执行。 |
distributeNodes | distributeNodes(nodeIds: readonly string[], axis: NodeDistributionAxis): void | 固定两端并均分节点边缘间距,需要至少三个独立节点。 |
autoArrangeNodes | autoArrangeNodes(nodeIds: readonly string[], options?: NodeAutoArrangeOptions): void | 将节点一次整理为网格,保持尺寸、朝向与父子关系。 |
fitNodesContent | fitNodesContent(nodeIds: readonly string[]): void | 让支持该能力的节点尺寸适应内容,跳过不支持或已适应的节点。 |
canGroupNodes | canGroupNodes(nodeIds: readonly string[]): boolean | 判断节点集合是否满足创建组合的条件。 |
canUngroupNodes | canUngroupNodes(nodeIds: readonly string[]): boolean | 判断是否存在可解散的组合或含子节点的容器外壳。 |
groupNodes | groupNodes(nodeIds: readonly string[]): string | null | 创建组合并选中新组合,返回组合ID;失败返回null。 |
ungroupNodes | ungroupNodes(nodeIds: readonly string[]): string[] | 解散组合或容器外壳,选中释放的子节点并返回其ID。 |
setFrameAutoLayout | setFrameAutoLayout( frameIds: readonly string[], options: (Partial<Omit<StackLayoutOptions, 'padding'>> & { padding?: StackPaddingInput }) | null, editOptions?: EditOptions ): void | 开启或更新画框的自动堆叠布局,传null关闭,一步撤销。 |
restoreImageSize | restoreImageSize(nodeIds: readonly string[]): void | 将图片恢复为资产记录的固有尺寸,缺少元数据时跳过。 |
restoreImageRatio | restoreImageRatio(nodeIds: readonly string[]): void | 保持图片当前宽度,按资产固有宽高比恢复高度。 |
updateConnectorStyle | updateConnectorStyle(connectorIds: readonly string[], style: Partial<ConnectorStyle>, options?: EditOptions): void | 合并更新连线样式,后续新画连线沿用该设置。 |
setConnectorType | setConnectorType(connectorIds: readonly string[], connectorType: ConnectorLineType): void | 切换线型并清除手动拐点,后续新画连线沿用该线型。 |
connectNewNode | connectNewNode(connectorId: string, request: ConnectNodeRequest): string | null | 在连线自由端创建并连接新节点,选中新节点;无自由端时返回null。 |
resetConnectorRoute | resetConnectorRoute(connectorIds: readonly string[]): void | 清除连线手动拐点,恢复自动路由。 |
setNodeSize | setNodeSize(nodeIds: readonly string[], size: { width?: number; height?: number }, options?: EditOptions): void | 保持左上角设置节点宽高,按节点的比例锁定状态联动。 |
setNodeRotation | setNodeRotation(nodeIds: readonly string[], rotation: number, options?: EditOptions): void | 设置节点绕自身中心的旋转角度,规整到0至360度。 |
endGeometryEdit | endGeometryEdit(groupId?: string): void | 结束本次数值编辑并释放几何快照;指定分组避免结束其他面板编辑。 |
rotateNodesBy | rotateNodesBy(nodeIds: readonly string[], degrees: number, options?: EditOptions): void | 让节点围绕整体选区中心增量旋转指定角度。 |
documentName | get documentName(): string | 读取文档名称,不创建完整文档副本。 |
exportDocument | exportDocument(): CanvasDocument | 获取当前文档的完整副本,可进行JSON序列化。 |
prepareDocumentImport | prepareDocumentImport(value: unknown): ParseResult<DocumentAssetInspection> | 预检外部文档的结构与资产问题,不修改当前文档。 |
importDocument | importDocument(value: unknown, options?: { allowAssetIssues?: boolean; label?: string }): ParseResult<void> | 校验后以一步可撤销事务替换文档,返回解析结果。 |
restoreDocument | restoreDocument(doc: CanvasDocument, options?: DocumentRestoreOptions): ParseResult<void> | 恢复已校验的文档,不入撤销栈并清空历史;选项可指定打开视口策略。 |
restoreRecovery | restoreRecovery(document: unknown, history: unknown, options?: DocumentRestoreOptions): ParseResult<void> | 恢复包含文档与历史的完整检查点,返回解析结果。 |
canUndo | get canUndo(): boolean | 查询当前是否可以撤销。 |
canRedo | get canRedo(): boolean | 查询当前是否可以重做。 |
undo | undo(): boolean | 撤销上一步操作,返回是否执行成功。 |
redo | redo(): boolean | 重做下一步操作,返回是否执行成功。 |
clearHistory | clearHistory(): void | 清空撤销与重做历史。 |
按任务查阅
源码中的公开成员不代表每个宿主都提供相应按钮。返回可取消异步结果的接口、渲染器能力和业务确认步骤仍需由宿主处理。此索引不表示npm产物已完成安装验收。