Edit in GitHubLog an issue

@express-document-sdk / ExpressContext

Class: ExpressContext

Contains The Express specific APIs related to the current selection state.

Extends

Accessors

currentPage

get currentPage(): PageNode

Returns

PageNode

The currently viewed page. To change the current page, call ExpressViewport.bringIntoView with an artboard or other content on that page.


hasSelection

get hasSelection(): boolean

Returns

boolean

false if the current editable selection does not contain any nodes, otherwise true.


insertionParent

get insertionParent(): ContainerNode

Returns

ContainerNode

the preferred parent to insert newly added content into (i.e., the location content would get inserted if a user were to Paste or use the Shapes panel in the UI). This will vary depending on the user's current selection and other UI state.


selection

get selection(): readonly Node[]

set selection(nodes): void

Sets the current selection to an array of Node. Accepts a single node as a shortcut for a length-1 array [node] or undefined as a shortcut for [], which clears the selection.

Only node(s) that meet the following criteria can be selected:

  • Nodes must be within the current artboard (nodes outside the active artboard are filtered out).
  • A node cannot be selected if its ancestor is also selected (descendants are filtered out).
  • Locked nodes are filtered out (but will still be included in selectionIncludingNonEditable).

Parameters

nodes: undefined | Node | readonly Node[]

Returns

readonly Node[]

the current selection. Nodes that are locked or otherwise non-editable are never included in the regular selection (see selectionIncludingNonEditable to get any locked nodes the user may have clicked).


selectionIncludingNonEditable

get selectionIncludingNonEditable(): readonly Node[]

Returns

readonly Node[]

the current selection and any locked nodes the user has attempted to select at the same time. This can happen for example if the user clicks on a locked node or if the user drags a selection marquee that overlaps locked nodes in addition to regular unlocked nodes.

Methods

off()

off(eventName, handlerId): void

Unregisters handlers for editor events like selection change.

Parameters

eventName: selectionChange

an editor event name.

handlerId: string

a unique ID returned by editor.context.on API. Callback that was previously registered will be removed and will no more be invoked when the event occurs.

Returns

void

Inherited from

Context.off


on()

on(eventName, callback): string

Registers a handler for editor events such as selection change. The registered callback will be invoked when the specified event occurs.

Parameters

eventName: selectionChange

an editor event name.

callback: EditorEventHandler

a callback to be registered for an editor event.

Returns

string

a unique ID for the registered event handler.

Inherited from

Context.on

  • Privacy
  • Terms of Use
  • Do not sell or share my personal information
  • AdChoices
Copyright © 2025 Adobe. All rights reserved.