Interface: BaseCaret<T, D, Type>
lexical.BaseCaret
Type parameters
| Name | Type |
|---|---|
T | extends LexicalNode |
D | extends CaretDirection |
Type | Type |
Hierarchy
-
Iterable<SiblingCaret<LexicalNode,D>>↳
BaseCaret↳↳
ChildCaret↳↳
SiblingCaret
Properties
direction
• Readonly direction: D
next if pointing at the next sibling or first child, previous if pointing at the previous sibling or last child
Defined in
packages/lexical/src/caret/LexicalCaret.ts:55
getAdjacentCaret
• getAdjacentCaret: () => null | SiblingCaret<LexicalNode, D>
Get a new SiblingCaret from getNodeAtCaret() in the same direction.
Type declaration
▸ (): null | SiblingCaret<LexicalNode, D>
Returns
null | SiblingCaret<LexicalNode, D>
Defined in
packages/lexical/src/caret/LexicalCaret.ts:61
getNodeAtCaret
• getNodeAtCaret: () => null | LexicalNode
Get the node connected to the origin in the caret's direction, or null if there is no node
Type declaration
▸ (): null | LexicalNode
Returns
null | LexicalNode
Defined in
packages/lexical/src/caret/LexicalCaret.ts:59
getParentAtCaret
• getParentAtCaret: () => null | ElementNode
Get the ElementNode that is the logical parent (origin for ChildCaret, origin.getParent() for SiblingCaret)
Type declaration
▸ (): null | ElementNode
Returns
null | ElementNode
Defined in
packages/lexical/src/caret/LexicalCaret.ts:57
getSiblingCaret
• getSiblingCaret: () => SiblingCaret<T, D>
Get a new SiblingCaret with this same node
Type declaration
▸ (): SiblingCaret<T, D>
Returns
SiblingCaret<T, D>
Defined in
packages/lexical/src/caret/LexicalCaret.ts:65
insert
• insert: (node: LexicalNode) => this
Insert a node connected to origin in this direction (before the node that this caret is pointing towards, if any existed).
For a SiblingCaret this is origin.insertAfter(node) for next, or origin.insertBefore(node) for previous.
For a ChildCaret this is origin.splice(0, 0, [node]) for next or origin.append(node) for previous.
Type declaration
▸ (node): this
Parameters
| Name | Type |
|---|---|
node | LexicalNode |
Returns
this
Defined in
packages/lexical/src/caret/LexicalCaret.ts:73
origin
• Readonly origin: T
The origin node of this caret, typically this is what you will use in traversals
Defined in
packages/lexical/src/caret/LexicalCaret.ts:51
remove
• remove: () => this
Remove the getNodeAtCaret() node that this caret is pointing towards, if it exists
Type declaration
▸ (): this
Returns
this
Defined in
packages/lexical/src/caret/LexicalCaret.ts:67
replaceOrInsert
• replaceOrInsert: (node: LexicalNode, includeChildren?: boolean) => this
If getNodeAtCaret() is not null then replace it with node, otherwise insert node
Type declaration
▸ (node, includeChildren?): this
Parameters
| Name | Type |
|---|---|
node | LexicalNode |
includeChildren? | boolean |
Returns
this
Defined in
packages/lexical/src/caret/LexicalCaret.ts:75
splice
• splice: (deleteCount: number, nodes: Iterable<LexicalNode>, nodesDirection?: CaretDirection) => this
Splice an iterable (typically an Array) of nodes into this location.
Type declaration
▸ (deleteCount, nodes, nodesDirection?): this
Parameters
| Name | Type | Description |
|---|---|---|
deleteCount | number | The number of existing nodes to replace or delete |
nodes | Iterable<LexicalNode> | An iterable of nodes that will be inserted in this location, using replace instead of insert for the first deleteCount nodes |
nodesDirection? | CaretDirection | The direction of the nodes iterable, defaults to 'next' |
Returns
this
Defined in
packages/lexical/src/caret/LexicalCaret.ts:83
type
• Readonly type: Type
sibling for a SiblingCaret (pointing at the next or previous sibling) or child for a ChildCaret (pointing at the first or last child)