/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ import type { BaseSelection, LexicalCommand, LexicalNode, TextFormatType, } from 'lexical'; export type PasteCommandType = ClipboardEvent | InputEvent | KeyboardEvent; export function createCommand(type?: string): LexicalCommand { return __DEV__ ? {type} : {}; } export const SELECTION_CHANGE_COMMAND: LexicalCommand = createCommand( 'SELECTION_CHANGE_COMMAND', ); export const SELECTION_INSERT_CLIPBOARD_NODES_COMMAND: LexicalCommand<{ nodes: Array; selection: BaseSelection; }> = createCommand('SELECTION_INSERT_CLIPBOARD_NODES_COMMAND'); export const CLICK_COMMAND: LexicalCommand = createCommand('CLICK_COMMAND'); export const DELETE_CHARACTER_COMMAND: LexicalCommand = createCommand( 'DELETE_CHARACTER_COMMAND', ); export const INSERT_LINE_BREAK_COMMAND: LexicalCommand = createCommand( 'INSERT_LINE_BREAK_COMMAND', ); export const INSERT_PARAGRAPH_COMMAND: LexicalCommand = createCommand( 'INSERT_PARAGRAPH_COMMAND', ); export const CONTROLLED_TEXT_INSERTION_COMMAND: LexicalCommand< InputEvent | string > = createCommand('CONTROLLED_TEXT_INSERTION_COMMAND'); export const PASTE_COMMAND: LexicalCommand = createCommand('PASTE_COMMAND'); export const REMOVE_TEXT_COMMAND: LexicalCommand = createCommand('REMOVE_TEXT_COMMAND'); export const DELETE_WORD_COMMAND: LexicalCommand = createCommand( 'DELETE_WORD_COMMAND', ); export const DELETE_LINE_COMMAND: LexicalCommand = createCommand( 'DELETE_LINE_COMMAND', ); export const FORMAT_TEXT_COMMAND: LexicalCommand = createCommand('FORMAT_TEXT_COMMAND'); export const UNDO_COMMAND: LexicalCommand = createCommand('UNDO_COMMAND'); export const REDO_COMMAND: LexicalCommand = createCommand('REDO_COMMAND'); export const KEY_DOWN_COMMAND: LexicalCommand = createCommand('KEYDOWN_COMMAND'); export const KEY_ARROW_RIGHT_COMMAND: LexicalCommand = createCommand('KEY_ARROW_RIGHT_COMMAND'); export const MOVE_TO_END: LexicalCommand = createCommand('MOVE_TO_END'); export const KEY_ARROW_LEFT_COMMAND: LexicalCommand = createCommand('KEY_ARROW_LEFT_COMMAND'); export const MOVE_TO_START: LexicalCommand = createCommand('MOVE_TO_START'); export const KEY_ARROW_UP_COMMAND: LexicalCommand = createCommand('KEY_ARROW_UP_COMMAND'); export const KEY_ARROW_DOWN_COMMAND: LexicalCommand = createCommand('KEY_ARROW_DOWN_COMMAND'); export const KEY_ENTER_COMMAND: LexicalCommand = createCommand('KEY_ENTER_COMMAND'); export const KEY_SPACE_COMMAND: LexicalCommand = createCommand('KEY_SPACE_COMMAND'); export const KEY_BACKSPACE_COMMAND: LexicalCommand = createCommand('KEY_BACKSPACE_COMMAND'); export const KEY_ESCAPE_COMMAND: LexicalCommand = createCommand('KEY_ESCAPE_COMMAND'); export const KEY_DELETE_COMMAND: LexicalCommand = createCommand('KEY_DELETE_COMMAND'); export const KEY_TAB_COMMAND: LexicalCommand = createCommand('KEY_TAB_COMMAND'); export const INSERT_TAB_COMMAND: LexicalCommand = createCommand('INSERT_TAB_COMMAND'); export const INDENT_CONTENT_COMMAND: LexicalCommand = createCommand( 'INDENT_CONTENT_COMMAND', ); export const OUTDENT_CONTENT_COMMAND: LexicalCommand = createCommand( 'OUTDENT_CONTENT_COMMAND', ); export const DROP_COMMAND: LexicalCommand = createCommand('DROP_COMMAND'); export const DRAGSTART_COMMAND: LexicalCommand = createCommand('DRAGSTART_COMMAND'); export const DRAGOVER_COMMAND: LexicalCommand = createCommand('DRAGOVER_COMMAND'); export const DRAGEND_COMMAND: LexicalCommand = createCommand('DRAGEND_COMMAND'); export const COPY_COMMAND: LexicalCommand< ClipboardEvent | KeyboardEvent | null > = createCommand('COPY_COMMAND'); export const CUT_COMMAND: LexicalCommand< ClipboardEvent | KeyboardEvent | null > = createCommand('CUT_COMMAND'); export const SELECT_ALL_COMMAND: LexicalCommand = createCommand('SELECT_ALL_COMMAND'); export const CLEAR_EDITOR_COMMAND: LexicalCommand = createCommand( 'CLEAR_EDITOR_COMMAND', ); export const CLEAR_HISTORY_COMMAND: LexicalCommand = createCommand( 'CLEAR_HISTORY_COMMAND', ); export const CAN_REDO_COMMAND: LexicalCommand = createCommand('CAN_REDO_COMMAND'); export const CAN_UNDO_COMMAND: LexicalCommand = createCommand('CAN_UNDO_COMMAND'); export const FOCUS_COMMAND: LexicalCommand = createCommand('FOCUS_COMMAND'); export const BLUR_COMMAND: LexicalCommand = createCommand('BLUR_COMMAND'); export const KEY_MODIFIER_COMMAND: LexicalCommand = createCommand('KEY_MODIFIER_COMMAND');