UNPKG

@atlaskit/editor-core

Version:

A package contains Atlassian editor core functionality

27 lines 1.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var prosemirror_1 = require("../../prosemirror"); function codeMirrorKeymapsPlugin() { return prosemirror_1.keymap({ ArrowLeft: arrowHandler('left'), ArrowRight: arrowHandler('right'), ArrowUp: arrowHandler('up'), ArrowDown: arrowHandler('down') }); } exports.default = codeMirrorKeymapsPlugin; function arrowHandler(dir) { return function (state, dispatch, view) { if (state.selection.empty && view.endOfTextblock(dir)) { var side = dir === 'left' || dir === 'up' ? -1 : 1; var $head = state.selection.$head; var nextPos = prosemirror_1.Selection.near(state.doc.resolve(side > 0 ? $head.after() : $head.before()), side); if (nextPos.$head && nextPos.$head.parent.type.name === 'codeBlock') { dispatch(state.tr.setSelection(nextPos)); return true; } } return false; }; } //# sourceMappingURL=keymaps.js.map