@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
26 lines • 1.06 kB
JavaScript
import { keymap } from '../../prosemirror';
import * as keymaps from '../../keymaps';
import { stateKey } from './';
export function keymapPlugin(schema) {
var list = {};
keymaps.bindKeymapWithCommand(keymaps.backspace.common, removeMediaNode, list);
keymaps.bindKeymapWithCommand(keymaps.undo.common, ignoreLinksInSteps, list);
keymaps.bindKeymapWithCommand(keymaps.enter.common, splitMediaGroup, list);
keymaps.bindKeymapWithCommand(keymaps.insertNewLine.common, splitMediaGroup, list);
return keymap(list);
}
function removeMediaNode(state, dispatch) {
var mediaPluginState = stateKey.getState(state);
return mediaPluginState.removeSelectedMediaNode();
}
function ignoreLinksInSteps(state, dispatch) {
var mediaPluginState = stateKey.getState(state);
mediaPluginState.ignoreLinks = true;
return false;
}
function splitMediaGroup(state, dispatch) {
var mediaPluginState = stateKey.getState(state);
return mediaPluginState.splitMediaGroup();
}
export default keymapPlugin;
//# sourceMappingURL=keymap.js.map