@atlaskit/editor-plugin-undo-redo
Version:
Undo redo plugin for @atlaskit/editor-core
38 lines (37 loc) • 1.87 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.keymapPlugin = keymapPlugin;
var _keymaps = require("@atlaskit/editor-common/keymaps");
var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
var _keymap = require("@atlaskit/editor-prosemirror/keymap");
var _commands = require("./commands");
/**
*
* @param api
* @example
*/
function keymapPlugin(api) {
var _api$analytics, _api$analytics2, _api$analytics3;
var list = {};
(0, _keymaps.bindKeymapWithCommand)(
// Ignored via go/ees005
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
(0, _keymaps.findKeyMapForBrowser)(_keymaps.redo), (0, _commands.redoFromKeyboardWithAnalytics)(api === null || api === void 0 || (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions), list);
(0, _keymaps.bindKeymapWithCommand)(
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
(0, _keymaps.findKeyMapForBrowser)(_keymaps.redoAlt), (0, _commands.redoFromKeyboardWithAnalytics)(api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions), list);
(0, _keymaps.bindKeymapWithCommand)(
// Ignored via go/ees005
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
_keymaps.undo.common, (0, _commands.undoFromKeyboardWithAnalytics)(api === null || api === void 0 || (_api$analytics3 = api.analytics) === null || _api$analytics3 === void 0 ? void 0 : _api$analytics3.actions), list);
return new _safePlugin.SafePlugin({
props: {
handleKeyDown: function handleKeyDown(view, event) {
var keyboardEvent = (0, _keymaps.isCapsLockOnAndModifyKeyboardEvent)(event);
return (0, _keymap.keydownHandler)(list)(view, keyboardEvent);
}
}
});
}