@atlaskit/editor-plugin-code-block-advanced
Version:
CodeBlockAdvanced plugin for @atlaskit/editor-core
33 lines (32 loc) • 999 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.backspaceKeymap = void 0;
var _state = require("@atlaskit/editor-prosemirror/state");
var backspaceKeymap = exports.backspaceKeymap = function backspaceKeymap(_ref) {
var _getPos;
var cm = _ref.cm,
view = _ref.view,
getPos = _ref.getPos,
getNode = _ref.getNode;
var ranges = cm.state.selection.ranges;
if (ranges.length > 1) {
return false;
}
var selection = ranges[0];
if (selection && (!selection.empty || selection.anchor > 0)) {
return false;
}
if (cm.state.doc.lines >= 2) {
return false;
}
var state = view.state;
var pos = (_getPos = getPos()) !== null && _getPos !== void 0 ? _getPos : 0;
var node = getNode();
var tr = state.tr.replaceWith(pos, pos + node.nodeSize, state.schema.nodes.paragraph.createChecked({}, node.content));
tr.setSelection(_state.TextSelection.near(tr.doc.resolve(pos)));
view.dispatch(tr);
view.focus();
return true;
};