Skip to main content

Class: RangeSelection

lexical.RangeSelection

Implements

Constructors

constructor

new RangeSelection(anchor, focus, format, style)

Parameters

NameType
anchorPointType
focusPointType
formatnumber
stylestring

Defined in

lexical/src/LexicalSelection.ts:739

Properties

_cachedNodes

_cachedNodes: null | LexicalNode[]

Defined in

lexical/src/LexicalSelection.ts:737


anchor

anchor: PointType

Defined in

lexical/src/LexicalSelection.ts:732


dirty

dirty: boolean

Implementation of

BaseSelection.dirty

Defined in

lexical/src/LexicalSelection.ts:734


focus

focus: PointType

Defined in

lexical/src/LexicalSelection.ts:733


format

format: number

Defined in

lexical/src/LexicalSelection.ts:735


style

style: string

Defined in

lexical/src/LexicalSelection.ts:736

Methods

applyDOMRange

applyDOMRange(range): void

Attempts to map a DOM selection range onto this Lexical Selection, setting the anchor, focus, and type accordingly

Parameters

NameTypeDescription
rangeStaticRangea DOM Selection range conforming to the StaticRange interface.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:945


clone

clone(): RangeSelection

Creates a new RangeSelection, copying over all the property values from this one.

Returns

RangeSelection

a new RangeSelection with the same property values as this one.

Implementation of

BaseSelection.clone

Defined in

lexical/src/LexicalSelection.ts:981


deleteCharacter

deleteCharacter(isBackward): void

Performs one logical character deletion operation on the EditorState based on the current Selection. Handles different node types.

Parameters

NameTypeDescription
isBackwardbooleanwhether or not the selection is backwards.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:2268


deleteLine

deleteLine(isBackward): void

Performs one logical line deletion operation on the EditorState based on the current Selection. Handles different node types.

Parameters

NameTypeDescription
isBackwardbooleanwhether or not the selection is backwards.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:2388


deleteWord

deleteWord(isBackward): void

Performs one logical word deletion operation on the EditorState based on the current Selection. Handles different node types.

Parameters

NameTypeDescription
isBackwardbooleanwhether or not the selection is backwards.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:2411


extract

extract(): LexicalNode[]

Extracts the nodes in the Selection, splitting nodes where necessary to get offset-level precision.

Returns

LexicalNode[]

The nodes in the Selection

Implementation of

BaseSelection.extract

Defined in

lexical/src/LexicalSelection.ts:2062


formatText

formatText(formatType): void

Applies the provided format to the TextNodes in the Selection, splitting or merging nodes as necessary.

Parameters

NameTypeDescription
formatTypeTextFormatTypethe format type to apply to the nodes in the Selection.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:1398


getCharacterOffsets

getCharacterOffsets(): [number, number]

Returns the character-based offsets of the Selection, accounting for non-text Points by using the children size or text content.

Returns

[number, number]

the character offsets for the Selection

Defined in

lexical/src/LexicalSelection.ts:2052


getNodes

getNodes(): LexicalNode[]

Gets all the nodes in the Selection. Uses caching to make it generally suitable for use in hot paths.

Returns

LexicalNode[]

an Array containing all the nodes in the Selection

Implementation of

BaseSelection.getNodes

Defined in

lexical/src/LexicalSelection.ts:800


getTextContent

getTextContent(): string

Gets the (plain) text content of all the nodes in the selection.

Returns

string

a string representing the text content of all the nodes in the Selection

Implementation of

BaseSelection.getTextContent

Defined in

lexical/src/LexicalSelection.ts:877


hasFormat

hasFormat(type): boolean

Returns whether the provided TextFormatType is present on the Selection. This will be true if any node in the Selection has the specified format.

Parameters

NameTypeDescription
typeTextFormatTypethe TextFormatType to check for.

Returns

boolean

true if the provided format is currently toggled on on the Selection, false otherwise.

Defined in

lexical/src/LexicalSelection.ts:1020


insertLineBreak

insertLineBreak(selectStart?): void

Inserts a logical linebreak, which may be a new LineBreakNode or a new ParagraphNode, into the EditorState at the current Selection.

Parameters

NameTypeDescription
selectStart?booleanwhether or not to select the start of the insertion range after the operation completes.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:2028


insertNodes

insertNodes(nodes, selectStart?): boolean

Attempts to "intelligently" insert an arbitrary list of Lexical nodes into the EditorState at the current Selection according to a set of heuristics that determine how surrounding nodes should be changed, replaced, or moved to accomodate the incoming ones.

Parameters

NameTypeDescription
nodesLexicalNode[]the nodes to insert
selectStart?booleanwhether or not to select the start after the insertion.

Returns

boolean

true if the nodes were inserted successfully, false otherwise.

Defined in

lexical/src/LexicalSelection.ts:1531


insertParagraph

insertParagraph(): void

Inserts a new ParagraphNode into the EditorState at the current Selection

Returns

void

Defined in

lexical/src/LexicalSelection.ts:1912


insertRawText

insertRawText(text): void

Attempts to insert the provided text into the EditorState at the current Selection. converts tabs, newlines, and carriage returns into LexicalNodes.

Parameters

NameTypeDescription
textstringthe text to insert into the Selection

Returns

void

Implementation of

BaseSelection.insertRawText

Defined in

lexical/src/LexicalSelection.ts:1031


insertText

insertText(text): void

Attempts to insert the provided text into the EditorState at the current Selection as a new Lexical TextNode, according to a series of insertion heuristics based on the selection type and position.

Parameters

NameTypeDescription
textstringthe text to insert into the Selection

Returns

void

Defined in

lexical/src/LexicalSelection.ts:1054


is

is(selection): boolean

Used to check if the provided selections is equal to this one by value, inluding anchor, focus, format, and style properties.

Parameters

NameTypeDescription
selectionnull | RangeSelection | NodeSelection | GridSelectionthe Selection to compare this one to.

Returns

boolean

true if the Selections are equal, false otherwise.

Implementation of

BaseSelection.is

Defined in

lexical/src/LexicalSelection.ts:761


isBackward

isBackward(): boolean

Returns whether the Selection is "backwards", meaning the focus logically precedes the anchor in the EditorState.

Returns

boolean

true if the Selection is backwards, false otherwise.

Defined in

lexical/src/LexicalSelection.ts:780


isCollapsed

isCollapsed(): boolean

Returns whether the Selection is "collapsed", meaning the anchor and focus are the same node and have the same offset.

Returns

boolean

true if the Selection is collapsed, false otherwise.

Defined in

lexical/src/LexicalSelection.ts:790


modify

modify(alter, isBackward, granularity): void

Modifies the Selection according to the parameters and a set of heuristics that account for various node types. Can be used to safely move or extend selection by one logical "unit" without dealing explicitly with all the possible node types.

Parameters

NameTypeDescription
alter"move" | "extend"the type of modification to perform
isBackwardbooleanwhether or not selection is backwards
granularity"character" | "word" | "lineboundary"the granularity at which to apply the modification

Returns

void

Defined in

lexical/src/LexicalSelection.ts:2120


removeText

removeText(): void

Removes the text in the Selection, adjusting the EditorState accordingly.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:1388


setStyle

setStyle(style): void

Sets the value of the style property on the Selection

Parameters

NameTypeDescription
stylestringthe style to set at the value of the style property.

Returns

void

Defined in

lexical/src/LexicalSelection.ts:1008


setTextNodeRange

setTextNodeRange(anchorNode, anchorOffset, focusNode, focusOffset): void

Sets this Selection to be of type "text" at the provided anchor and focus values.

Parameters

NameTypeDescription
anchorNodeTextNodethe anchor node to set on the Selection
anchorOffsetnumberthe offset to set on the Selection
focusNodeTextNodethe focus node to set on the Selection
focusOffsetnumberthe focus offset to set on the Selection

Returns

void

Defined in

lexical/src/LexicalSelection.ts:860


toggleFormat

toggleFormat(format): void

Toggles the provided format on all the TextNodes in the Selection.

Parameters

NameTypeDescription
formatTextFormatTypea string TextFormatType to toggle on the TextNodes in the selection

Returns

void

Defined in

lexical/src/LexicalSelection.ts:998