Skip to main content

Class: EmojiNode

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:45

EmojiNode doesn't really need to override any of TextNode's functionality, other than these serialization and type related static methods.

The behavior is augmented in $createEmojiNode where we set mode to token so it is treated as an "atomic" unit and not considered for further text transforms.

The display behavior is all implemented in the mutation listener set up by EmojiExtension, which makes it a little easier to ensure that clean-up is done properly.

Extends​

  • TextNode

Constructors​

Constructor​

new EmojiNode(text?, key?): EmojiNode

Defined in: node_modules/lexical/nodes/LexicalTextNode.d.ts:49

Parameters​

text?​

string

key?​

string

Returns​

EmojiNode

Inherited from​

TextNode.constructor

Methods​

$config()​

$config(): StaticNodeConfigRecord<"emoji", { extends: typeof TextNode; stateConfigs: object[]; }>

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:46

Override this to implement the new static node configuration protocol, this method is called directly on the prototype and must not depend on anything initialized in the constructor. Generally it should be a trivial implementation.

Returns​

StaticNodeConfigRecord<"emoji", { extends: typeof TextNode; stateConfigs: object[]; }>

Example​

class MyNode extends TextNode {
$config() {
return this.config('my-node', {extends: TextNode});
}
}

Overrides​

TextNode.$config


createDOM()​

createDOM(config, editor?): HTMLElement

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:91

Parameters​

config​

EditorConfig

editor?​

LexicalEditor

Returns​

HTMLElement

Overrides​

TextNode.createDOM


getShortcode()​

getShortcode(): string | undefined

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:115

Returns​

string | undefined


setShortcode()​

setShortcode(shortcode?): this

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:119

Parameters​

shortcode?​

StateValueOrUpdater<StateConfig<"shortcode", string | undefined>>

Returns​

this


updateDOM()​

updateDOM(prevNode, dom, config): boolean

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:75

Parameters​

prevNode​

this

dom​

HTMLElement

config​

EditorConfig

Returns​

boolean

Overrides​

TextNode.updateDOM


importDOM()​

static importDOM(): DOMConversionMap | null

Defined in: packages/lexical-emoji-extension/src/EmojiNode.ts:53

Returns​

DOMConversionMap | null

Overrides​

TextNode.importDOM