Skip to content

createEmojiPickerBehaviors

createEmojiPickerBehaviors<TEmojiMatch>(config): Behavior<"serialize" | "clipboard.copy" | "clipboard.cut" | "drag.dragstart" | "serialization.failure" | "serialization.success" | "deserialize" | "deserialization.failure" | "deserialization.success" | "delete" | "select" | "*" | "annotation.add" | "annotation.remove" | "block.set" | "block.unset" | "decorator.add" | "decorator.remove" | "delete.backward" | "delete.block" | "delete.forward" | "history.redo" | "history.undo" | "insert.inline object" | "insert.block" | "insert.span" | "insert.text" | "move.backward" | "move.block" | "move.forward" | "split.block" | "annotation.toggle" | "decorator.toggle" | "delete.text" | "insert.blocks" | "insert.break" | "insert.soft break" | "list item.add" | "list item.remove" | "list item.toggle" | "move.block down" | "move.block up" | "select.previous block" | "select.next block" | "style.add" | "style.remove" | "style.toggle" | "clipboard.paste" | "drag.drag" | "drag.dragend" | "drag.dragenter" | "drag.dragover" | "drag.dragleave" | "drag.drop" | "input.*" | "keyboard.keydown" | "keyboard.keyup" | "mouse.click" | "serialize.*" | "deserialize.*" | "split.*" | "style.*" | "block.*" | "delete.*" | "move.*" | "select.*" | "history.*" | "annotation.*" | "decorator.*" | "insert.*" | "serialization.*" | "deserialization.*" | "list item.*" | "clipboard.*" | "drag.*" | "keyboard.*" | "mouse.*" | `custom.${string}`, true, { annotation: { name: string; value: {[prop: string]: unknown; }; }; type: "annotation.add"; } | { annotation: { name: string; }; type: "annotation.remove"; } | { at: [KeyedSegment]; props: Record<string, unknown>; type: "block.set"; } | { at: [KeyedSegment]; props: string[]; type: "block.unset"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; decorator: string; type: "decorator.add"; } | { decorator: string; type: "decorator.remove"; } | { at: { anchor: EditorSelectionPoint; backward: boolean; focus: EditorSelectionPoint; }; type: "delete"; } | { type: "delete.backward"; unit: TextUnit; } | { at: [KeyedSegment]; type: "delete.block"; } | { type: "delete.forward"; unit: TextUnit; } | { type: "history.redo"; } | { type: "history.undo"; } | { inlineObject: { name: string; value: {[prop: string]: unknown; }; }; type: "insert.inline object"; } | { block: BlockWithOptionalKey; placement: InsertPlacement; select: "end" | "start" | "none"; type: "insert.block"; } | { annotations: object[]; decorators: string[]; text: string; type: "insert.span"; } | { text: string; type: "insert.text"; } | { distance: number; type: "move.backward"; } | { at: [KeyedSegment]; to: [KeyedSegment]; type: "move.block"; } | { distance: number; type: "move.forward"; } | { at: EditorSelection; type: "select"; } | { type: "split.block"; } | { annotation: { name: string; value: {[prop: string]: unknown; }; }; type: "annotation.toggle"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; decorator: string; type: "decorator.toggle"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; type: "delete.text"; } | { originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; type: "deserialize"; } | { originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; type: "serialize"; } | { data: PortableTextBlock[]; mimeType: `${string}/${string}`; originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; type: "deserialization.success"; } | { mimeType: `${string}/${string}`; originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; reason: string; type: "deserialization.failure"; } | { data: string; mimeType: `${string}/${string}`; originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; type: "serialization.success"; } | { mimeType: `${string}/${string}`; originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; reason: string; type: "serialization.failure"; } | { blocks: PortableTextBlock[]; placement: InsertPlacement; type: "insert.blocks"; } | { type: "insert.break"; } | { type: "insert.soft break"; } | { listItem: string; type: "list item.add"; } | { listItem: string; type: "list item.remove"; } | { listItem: string; type: "list item.toggle"; } | { at: [KeyedSegment]; type: "move.block down"; } | { at: [KeyedSegment]; type: "move.block up"; } | { select: "end" | "start"; type: "select.previous block"; } | { select: "end" | "start"; type: "select.next block"; } | { style: string; type: "style.add"; } | { style: string; type: "style.remove"; } | { style: string; type: "style.toggle"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.copy"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.cut"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.paste"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "drag.dragstart"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.drag"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.dragend"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.dragenter"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.dragover"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.drop"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.dragleave"; } | InputBehaviorEvent | { originEvent: Pick<KeyboardEvent, "key" | "code" | "altKey" | "ctrlKey" | "metaKey" | "shiftKey">; type: "keyboard.keydown"; } | { originEvent: Pick<KeyboardEvent, "key" | "code" | "altKey" | "ctrlKey" | "metaKey" | "shiftKey">; type: "keyboard.keyup"; } | MouseBehaviorEvent | CustomBehaviorEvent<Record<string, unknown>, string, `custom.${string}`>>[]

Defined in: behaviors/behavior.emoji-picker.ts:30

Type Parameters

TEmojiMatch

TEmojiMatch

Parameters

config

EmojiPickerBehaviorsConfig<TEmojiMatch>

Returns

Behavior<"serialize" | "clipboard.copy" | "clipboard.cut" | "drag.dragstart" | "serialization.failure" | "serialization.success" | "deserialize" | "deserialization.failure" | "deserialization.success" | "delete" | "select" | "*" | "annotation.add" | "annotation.remove" | "block.set" | "block.unset" | "decorator.add" | "decorator.remove" | "delete.backward" | "delete.block" | "delete.forward" | "history.redo" | "history.undo" | "insert.inline object" | "insert.block" | "insert.span" | "insert.text" | "move.backward" | "move.block" | "move.forward" | "split.block" | "annotation.toggle" | "decorator.toggle" | "delete.text" | "insert.blocks" | "insert.break" | "insert.soft break" | "list item.add" | "list item.remove" | "list item.toggle" | "move.block down" | "move.block up" | "select.previous block" | "select.next block" | "style.add" | "style.remove" | "style.toggle" | "clipboard.paste" | "drag.drag" | "drag.dragend" | "drag.dragenter" | "drag.dragover" | "drag.dragleave" | "drag.drop" | "input.*" | "keyboard.keydown" | "keyboard.keyup" | "mouse.click" | "serialize.*" | "deserialize.*" | "split.*" | "style.*" | "block.*" | "delete.*" | "move.*" | "select.*" | "history.*" | "annotation.*" | "decorator.*" | "insert.*" | "serialization.*" | "deserialization.*" | "list item.*" | "clipboard.*" | "drag.*" | "keyboard.*" | "mouse.*" | `custom.${string}`, true, { annotation: { name: string; value: {[prop: string]: unknown; }; }; type: "annotation.add"; } | { annotation: { name: string; }; type: "annotation.remove"; } | { at: [KeyedSegment]; props: Record<string, unknown>; type: "block.set"; } | { at: [KeyedSegment]; props: string[]; type: "block.unset"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; decorator: string; type: "decorator.add"; } | { decorator: string; type: "decorator.remove"; } | { at: { anchor: EditorSelectionPoint; backward: boolean; focus: EditorSelectionPoint; }; type: "delete"; } | { type: "delete.backward"; unit: TextUnit; } | { at: [KeyedSegment]; type: "delete.block"; } | { type: "delete.forward"; unit: TextUnit; } | { type: "history.redo"; } | { type: "history.undo"; } | { inlineObject: { name: string; value: {[prop: string]: unknown; }; }; type: "insert.inline object"; } | { block: BlockWithOptionalKey; placement: InsertPlacement; select: "end" | "start" | "none"; type: "insert.block"; } | { annotations: object[]; decorators: string[]; text: string; type: "insert.span"; } | { text: string; type: "insert.text"; } | { distance: number; type: "move.backward"; } | { at: [KeyedSegment]; to: [KeyedSegment]; type: "move.block"; } | { distance: number; type: "move.forward"; } | { at: EditorSelection; type: "select"; } | { type: "split.block"; } | { annotation: { name: string; value: {[prop: string]: unknown; }; }; type: "annotation.toggle"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; decorator: string; type: "decorator.toggle"; } | { at: { anchor: BlockOffset; focus: BlockOffset; }; type: "delete.text"; } | { originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; type: "deserialize"; } | { originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; type: "serialize"; } | { data: PortableTextBlock[]; mimeType: `${string}/${string}`; originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; type: "deserialization.success"; } | { mimeType: `${string}/${string}`; originEvent: InputBehaviorEvent | PickFromUnion<NativeBehaviorEvent, "type", "clipboard.paste" | "drag.drop">; reason: string; type: "deserialization.failure"; } | { data: string; mimeType: `${string}/${string}`; originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; type: "serialization.success"; } | { mimeType: `${string}/${string}`; originEvent: PickFromUnion<NativeBehaviorEvent, "type", "clipboard.copy" | "clipboard.cut" | "drag.dragstart">; reason: string; type: "serialization.failure"; } | { blocks: PortableTextBlock[]; placement: InsertPlacement; type: "insert.blocks"; } | { type: "insert.break"; } | { type: "insert.soft break"; } | { listItem: string; type: "list item.add"; } | { listItem: string; type: "list item.remove"; } | { listItem: string; type: "list item.toggle"; } | { at: [KeyedSegment]; type: "move.block down"; } | { at: [KeyedSegment]; type: "move.block up"; } | { select: "end" | "start"; type: "select.previous block"; } | { select: "end" | "start"; type: "select.next block"; } | { style: string; type: "style.add"; } | { style: string; type: "style.remove"; } | { style: string; type: "style.toggle"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.copy"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.cut"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "clipboard.paste"; } | { originEvent: { dataTransfer: DataTransfer; }; position: Pick<EventPosition, "selection">; type: "drag.dragstart"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.drag"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.dragend"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.dragenter"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.dragover"; } | { originEvent: { dataTransfer: DataTransfer; }; position: EventPosition; type: "drag.drop"; } | { originEvent: { dataTransfer: DataTransfer; }; type: "drag.dragleave"; } | InputBehaviorEvent | { originEvent: Pick<KeyboardEvent, "key" | "code" | "altKey" | "ctrlKey" | "metaKey" | "shiftKey">; type: "keyboard.keydown"; } | { originEvent: Pick<KeyboardEvent, "key" | "code" | "altKey" | "ctrlKey" | "metaKey" | "shiftKey">; type: "keyboard.keyup"; } | MouseBehaviorEvent | CustomBehaviorEvent<Record<string, unknown>, string, `custom.${string}`>>[]