UNPKG

@grafana/ui

Version:
1 lines 1.48 kB
{"version":3,"file":"selection_shortcuts.mjs","sources":["../../../src/slate-plugins/selection_shortcuts.ts"],"sourcesContent":["import { isKeyHotkey } from 'is-hotkey';\nimport { Plugin } from 'slate-react';\n\nconst isSelectLineHotkey = isKeyHotkey('mod+l');\n\n// Clears the rest of the line after the caret\nexport function SelectionShortcutsPlugin(): Plugin {\n return {\n onKeyDown(event, editor, next) {\n if (isSelectLineHotkey(event)) {\n event.preventDefault();\n const { focusBlock, document } = editor.value;\n\n editor.moveAnchorToStartOfBlock();\n\n const nextBlock = document.getNextBlock(focusBlock.key);\n if (nextBlock) {\n editor.moveFocusToStartOfNextBlock();\n } else {\n editor.moveFocusToEndOfText();\n }\n } else {\n return next();\n }\n\n return true;\n },\n };\n}\n"],"names":[],"mappings":";;AAGA,MAAM,kBAAA,GAAqB,YAAY,OAAO,CAAA;AAGvC,SAAS,wBAAmC,GAAA;AACjD,EAAO,OAAA;AAAA,IACL,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,IAAM,EAAA;AAC7B,MAAI,IAAA,kBAAA,CAAmB,KAAK,CAAG,EAAA;AAC7B,QAAA,KAAA,CAAM,cAAe,EAAA;AACrB,QAAA,MAAM,EAAE,UAAA,EAAY,QAAS,EAAA,GAAI,MAAO,CAAA,KAAA;AAExC,QAAA,MAAA,CAAO,wBAAyB,EAAA;AAEhC,QAAA,MAAM,SAAY,GAAA,QAAA,CAAS,YAAa,CAAA,UAAA,CAAW,GAAG,CAAA;AACtD,QAAA,IAAI,SAAW,EAAA;AACb,UAAA,MAAA,CAAO,2BAA4B,EAAA;AAAA,SAC9B,MAAA;AACL,UAAA,MAAA,CAAO,oBAAqB,EAAA;AAAA;AAC9B,OACK,MAAA;AACL,QAAA,OAAO,IAAK,EAAA;AAAA;AAGd,MAAO,OAAA,IAAA;AAAA;AACT,GACF;AACF;;;;"}