2 var _typeof=
"function"==typeof Symbol&&
"symbol"==typeof Symbol.iterator?
function(t){
return typeof t}:
function(t){
return t&&
"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?
"symbol":typeof t},Keybindings=
function(t){this.table=t,this.watchKeys=null,this.pressedKeys=null,this.keyupBinding=!1,this.keydownBinding=!1};Keybindings.prototype.initialize=
function(){var t=this.table.options.keybindings,e={};
if(this.watchKeys={},this.pressedKeys=[],!1!==t){
for(var i in this.bindings)e[i]=this.bindings[i];
if(Object.keys(t).length)
for(var n in t)e[n]=t[n];this.mapBindings(e),this.bindEvents()}},Keybindings.prototype.mapBindings=
function(t){var e=
this,i=
this;
for(var n in t)!
function(n){e.actions[n]?t[n]&&(
"object"!==_typeof(t[n])&&(t[n]=[t[n]]),t[n].forEach(
function(t){i.mapBinding(n,t)})):console.warn(
"Key Binding Error - no such action:",n)}(n)},Keybindings.prototype.mapBinding=function(t,e){var i=
this,n={action:this.actions[t],keys:[],ctrl:!1,shift:!1};e.toString().toLowerCase().split(
" ").join(
"").split(
"+").forEach(
function(t){
switch(t){
case"ctrl":n.ctrl=!0;
break;
case"shift":n.shift=!0;
break;
default:t=parseInt(t),n.keys.push(t),i.watchKeys[t]||(i.watchKeys[t]=[]),i.watchKeys[t].push(n)}})},Keybindings.prototype.bindEvents=
function(){var t=
this;this.keyupBinding=
function(e){var i=e.keyCode,n=t.watchKeys[i];n&&(t.pressedKeys.push(i),n.forEach(
function(i){t.checkBinding(e,i)}))},this.keydownBinding=
function(e){var i=e.keyCode;
if(t.watchKeys[i]){var n=t.pressedKeys.indexOf(i);n>-1&&t.pressedKeys.splice(n,1)}},this.table.element.addEventListener(
"keydown",this.keyupBinding),this.table.element.addEventListener(
"keyup",this.keydownBinding)},Keybindings.prototype.clearBindings=
function(){this.keyupBinding&&this.table.element.removeEventListener(
"keydown",this.keyupBinding),this.keydownBinding&&this.table.element.removeEventListener(
"keyup",this.keydownBinding)},Keybindings.prototype.checkBinding=
function(t,e){var i=
this,n=!0;
return t.ctrlKey==e.ctrl&&t.shiftKey==e.shift&&(e.keys.forEach(
function(t){-1==i.pressedKeys.indexOf(t)&&(n=!1)}),n&&e.action.call(i,t),!0)},Keybindings.prototype.bindings={navPrev:
"shift + 9",navNext:9,navUp:38,navDown:40,scrollPageUp:33,scrollPageDown:34,scrollToStart:36,scrollToEnd:35,undo:
"ctrl + 90",redo:
"ctrl + 89",copyToClipboard:
"ctrl + 67"},Keybindings.prototype.actions={keyBlock:
function(t){t.stopPropagation(),t.preventDefault()},scrollPageUp:
function(t){var e=this.table.rowManager,i=e.scrollTop-e.height;e.element.scrollHeight;t.preventDefault(),e.displayRowsCount&&(i>=0?e.element.scrollTop=i:e.scrollToRow(e.getDisplayRows()[0])),this.table.element.focus()},scrollPageDown:
function(t){var e=this.table.rowManager,i=e.scrollTop+e.height,n=e.element.scrollHeight;t.preventDefault(),e.displayRowsCount&&(i<=n?e.element.scrollTop=i:e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1])),this.table.element.focus()},scrollToStart:
function(t){var e=this.table.rowManager;t.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[0]),this.table.element.focus()},scrollToEnd:
function(t){var e=this.table.rowManager;t.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1]),this.table.element.focus()},navPrev:
function(t){var e=!1;this.table.modExists(
"edit")&&(e=this.table.modules.edit.currentCell)&&(t.preventDefault(),e.nav().prev())},navNext:
function(t){var e,i=!1,n=this.table.options.tabEndNewRow;this.table.modExists(
"edit")&&(i=this.table.modules.edit.currentCell)&&(t.preventDefault(),e=i.nav(),e.next()||n&&(n=!0===n?this.table.addRow({}):
"function"==typeof n?this.table.addRow(n(i.row.getComponent())):this.table.addRow(n),n.then(
function(){e.next()})))},navLeft:
function(t){var e=!1;this.table.modExists(
"edit")&&(e=this.table.modules.edit.currentCell)&&(t.preventDefault(),e.nav().left())},navRight:
function(t){var e=!1;this.table.modExists(
"edit")&&(e=this.table.modules.edit.currentCell)&&(t.preventDefault(),e.nav().right())},navUp:
function(t){var e=!1;this.table.modExists(
"edit")&&(e=this.table.modules.edit.currentCell)&&(t.preventDefault(),e.nav().up())},navDown:
function(t){var e=!1;this.table.modExists(
"edit")&&(e=this.table.modules.edit.currentCell)&&(t.preventDefault(),e.nav().down())},undo:
function(t){this.table.options.history&&this.table.modExists(
"history")&&this.table.modExists(
"edit")&&(this.table.modules.edit.currentCell||(t.preventDefault(),this.table.modules.history.undo()))},redo:
function(t){this.table.options.history&&this.table.modExists(
"history")&&this.table.modExists(
"edit")&&(this.table.modules.edit.currentCell||(t.preventDefault(),this.table.modules.history.redo()))},copyToClipboard:
function(t){this.table.modules.edit.currentCell||this.table.modExists(
"clipboard",!0)&&this.table.modules.clipboard.copy(this.table.options.selectable&&
"highlight"!=
this.table.options.selectable?
"selected":
"active",null,null,null,!0)}},Tabulator.prototype.registerModule(
"keybindings",Keybindings);