hotkeys-js
Advanced tools
Comparing version 3.6.8 to 3.6.9
/*! | ||
* hotkeys-js v3.6.8 | ||
* hotkeys-js v3.6.9 | ||
* A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies. | ||
@@ -252,4 +252,9 @@ * | ||
if (keys.length > 1) mods = getMods(_modifier, keys); // 获取除修饰键外的键值key | ||
if (keys.length > 1) { | ||
mods = getMods(_modifier, keys); | ||
} else { | ||
mods = []; | ||
} // 获取除修饰键外的键值key | ||
key = keys[keys.length - 1]; | ||
@@ -303,3 +308,5 @@ key = key === '*' ? '*' : code(key); // 判断是否传入范围,没有就获取范围 | ||
var asterisk = _handlers['*']; | ||
var key = event.keyCode || event.which || event.charCode; // Collect bound keys | ||
var key = event.keyCode || event.which || event.charCode; // 表单控件过滤 默认表单控件不触发快捷键 | ||
if (!hotkeys.filter.call(this, event)) return; // Collect bound keys | ||
// If an Input Method Editor is processing key input and the event is keydown, return 229. | ||
@@ -329,7 +336,5 @@ // https://stackoverflow.com/questions/25043934/is-it-ok-to-ignore-keydown-events-with-keycode-229 | ||
} | ||
} // 表单控件过滤 默认表单控件不触发快捷键 | ||
} // 获取范围 默认为all | ||
if (!hotkeys.filter.call(this, event)) return; // 获取范围 默认为all | ||
var scope = getScope(); // 对任何快捷键都需要做的处理 | ||
@@ -336,0 +341,0 @@ |
@@ -1,2 +0,2 @@ | ||
/*! hotkeys-js v3.6.8 | MIT (c) 2019 kenny wong <wowohoo@qq.com> | http://jaywcjlove.github.io/hotkeys */ | ||
"use strict";var isff="undefined"!=typeof navigator&&0<navigator.userAgent.toLowerCase().indexOf("firefox");function addEvent(e,o,t){e.addEventListener?e.addEventListener(o,t,!1):e.attachEvent&&e.attachEvent("on".concat(o),function(){t(window.event)})}function getMods(e,o){for(var t=o.slice(0,o.length-1),n=0;n<t.length;n++)t[n]=e[t[n].toLowerCase()];return t}function getKeys(e){e||(e="");for(var o=(e=e.replace(/\s/g,"")).split(","),t=o.lastIndexOf("");0<=t;)o[t-1]+=",",o.splice(t,1),t=o.lastIndexOf("");return o}function compareArray(e,o){for(var t=e.length<o.length?o:e,n=e.length<o.length?e:o,r=!0,s=0;s<t.length;s++)~n.indexOf(t[s])||(r=!1);return r}for(var _keyMap={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":isff?173:189,"=":isff?61:187,";":isff?59:186,"'":222,"[":219,"]":221,"\\":220},_modifier={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":isff?224:91,cmd:isff?224:91,command:isff?224:91},_downKeys=[],modifierMap={16:"shiftKey",18:"altKey",17:"ctrlKey"},_mods={16:!1,18:!1,17:!1},_handlers={},k=1;k<20;k++)_keyMap["f".concat(k)]=111+k;_mods[isff?224:91]=!(modifierMap[isff?224:91]="metaKey");var _scope="all",elementHasBindEvent=[],code=function(e){return _keyMap[e.toLowerCase()]||_modifier[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function setScope(e){_scope=e||"all"}function getScope(){return _scope||"all"}function getPressedKeyCodes(){return _downKeys.slice(0)}function filter(e){var o=e.target||e.srcElement,t=o.tagName,n=!0;return!o.isContentEditable&&"TEXTAREA"!==t&&("INPUT"!==t&&"TEXTAREA"!==t||o.readOnly)||(n=!1),n}function isPressed(e){return"string"==typeof e&&(e=code(e)),!!~_downKeys.indexOf(e)}function deleteScope(e,o){var t,n;for(var r in e||(e=getScope()),_handlers)if(Object.prototype.hasOwnProperty.call(_handlers,r))for(t=_handlers[r],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;getScope()===e&&setScope(o||"all")}function clearModifier(e){var o=e.keyCode||e.which||e.charCode,t=_downKeys.indexOf(o);if(t<0||_downKeys.splice(t,1),e.key&&"meta"==e.key.toLowerCase()&&_downKeys.splice(0,_downKeys.length),93!==o&&224!==o||(o=91),o in _mods)for(var n in _mods[o]=!1,_modifier)_modifier[n]===o&&(hotkeys[n]=!1)}function unbind(e,o,t){var n,r,s=getKeys(e),d=[];"function"==typeof o&&(t=o,o="all");for(var i=0;i<s.length;i++){if(1<(n=s[i].split("+")).length&&(d=getMods(_modifier,n)),e="*"===(e=n[n.length-1])?"*":code(e),o||(o=getScope()),!_handlers[e])return;for(var a=0;a<_handlers[e].length;a++){r=_handlers[e][a],t&&r.method!==t||r.scope!==o||!compareArray(r.mods,d)||(_handlers[e][a]={})}}}function eventHandler(e,o,t){var n;if(o.scope===t||"all"===o.scope){for(var r in n=0<o.mods.length,_mods)Object.prototype.hasOwnProperty.call(_mods,r)&&(!_mods[r]&&-1<o.mods.indexOf(+r)||_mods[r]&&!~o.mods.indexOf(+r))&&(n=!1);(0!==o.mods.length||_mods[16]||_mods[18]||_mods[17]||_mods[91])&&!n&&"*"!==o.shortcut||!1===o.method(e,o)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function dispatch(e){var o=_handlers["*"],t=e.keyCode||e.which||e.charCode;if(~_downKeys.indexOf(t)||229===t||_downKeys.push(t),93!==t&&224!==t||(t=91),t in _mods){for(var n in _mods[t]=!0,_modifier)_modifier[n]===t&&(hotkeys[n]=!0);if(!o)return}for(var r in _mods)Object.prototype.hasOwnProperty.call(_mods,r)&&(_mods[r]=e[modifierMap[r]]);if(hotkeys.filter.call(this,e)){var s=getScope();if(o)for(var d=0;d<o.length;d++)o[d].scope===s&&("keydown"===e.type&&o[d].keydown||"keyup"===e.type&&o[d].keyup)&&eventHandler(e,o[d],s);if(t in _handlers)for(var i=0;i<_handlers[t].length;i++)if(("keydown"===e.type&&_handlers[t][i].keydown||"keyup"===e.type&&_handlers[t][i].keyup)&&_handlers[t][i].key){for(var a=_handlers[t][i].key.split("+"),l=[],c=0;c<a.length;c++)l.push(code(a[c]));(l=l.sort()).join("")===_downKeys.sort().join("")&&eventHandler(e,_handlers[t][i],s)}}}function isElementBind(e){return-1<elementHasBindEvent.indexOf(e)}function hotkeys(e,o,t){var n=getKeys(e),r=[],s="all",d=document,i=0,a=!1,l=!0;for(void 0===t&&"function"==typeof o&&(t=o),"[object Object]"===Object.prototype.toString.call(o)&&(o.scope&&(s=o.scope),o.element&&(d=o.element),o.keyup&&(a=o.keyup),o.keydown&&(l=o.keydown)),"string"==typeof o&&(s=o);i<n.length;i++)r=[],1<(e=n[i].split("+")).length&&(r=getMods(_modifier,e)),(e="*"===(e=e[e.length-1])?"*":code(e))in _handlers||(_handlers[e]=[]),_handlers[e].push({keyup:a,keydown:l,scope:s,mods:r,shortcut:n[i],method:t,key:n[i]});void 0===d||isElementBind(d)||(elementHasBindEvent.push(d),addEvent(d,"keydown",function(e){dispatch(e)}),addEvent(d,"keyup",function(e){dispatch(e),clearModifier(e)}))}var _api={setScope:setScope,getScope:getScope,deleteScope:deleteScope,getPressedKeyCodes:getPressedKeyCodes,isPressed:isPressed,filter:filter,unbind:unbind};for(var a in _api)Object.prototype.hasOwnProperty.call(_api,a)&&(hotkeys[a]=_api[a]);if("undefined"!=typeof window){var _hotkeys=window.hotkeys;hotkeys.noConflict=function(e){return e&&window.hotkeys===hotkeys&&(window.hotkeys=_hotkeys),hotkeys},window.hotkeys=hotkeys}module.exports=hotkeys; | ||
/*! hotkeys-js v3.6.9 | MIT (c) 2019 kenny wong <wowohoo@qq.com> | http://jaywcjlove.github.io/hotkeys */ | ||
"use strict";var isff="undefined"!=typeof navigator&&0<navigator.userAgent.toLowerCase().indexOf("firefox");function addEvent(e,o,t){e.addEventListener?e.addEventListener(o,t,!1):e.attachEvent&&e.attachEvent("on".concat(o),function(){t(window.event)})}function getMods(e,o){for(var t=o.slice(0,o.length-1),n=0;n<t.length;n++)t[n]=e[t[n].toLowerCase()];return t}function getKeys(e){e||(e="");for(var o=(e=e.replace(/\s/g,"")).split(","),t=o.lastIndexOf("");0<=t;)o[t-1]+=",",o.splice(t,1),t=o.lastIndexOf("");return o}function compareArray(e,o){for(var t=e.length<o.length?o:e,n=e.length<o.length?e:o,r=!0,s=0;s<t.length;s++)~n.indexOf(t[s])||(r=!1);return r}for(var _keyMap={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":isff?173:189,"=":isff?61:187,";":isff?59:186,"'":222,"[":219,"]":221,"\\":220},_modifier={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":isff?224:91,cmd:isff?224:91,command:isff?224:91},_downKeys=[],modifierMap={16:"shiftKey",18:"altKey",17:"ctrlKey"},_mods={16:!1,18:!1,17:!1},_handlers={},k=1;k<20;k++)_keyMap["f".concat(k)]=111+k;_mods[isff?224:91]=!(modifierMap[isff?224:91]="metaKey");var _scope="all",elementHasBindEvent=[],code=function(e){return _keyMap[e.toLowerCase()]||_modifier[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function setScope(e){_scope=e||"all"}function getScope(){return _scope||"all"}function getPressedKeyCodes(){return _downKeys.slice(0)}function filter(e){var o=e.target||e.srcElement,t=o.tagName,n=!0;return!o.isContentEditable&&"TEXTAREA"!==t&&("INPUT"!==t&&"TEXTAREA"!==t||o.readOnly)||(n=!1),n}function isPressed(e){return"string"==typeof e&&(e=code(e)),!!~_downKeys.indexOf(e)}function deleteScope(e,o){var t,n;for(var r in e||(e=getScope()),_handlers)if(Object.prototype.hasOwnProperty.call(_handlers,r))for(t=_handlers[r],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;getScope()===e&&setScope(o||"all")}function clearModifier(e){var o=e.keyCode||e.which||e.charCode,t=_downKeys.indexOf(o);if(t<0||_downKeys.splice(t,1),e.key&&"meta"==e.key.toLowerCase()&&_downKeys.splice(0,_downKeys.length),93!==o&&224!==o||(o=91),o in _mods)for(var n in _mods[o]=!1,_modifier)_modifier[n]===o&&(hotkeys[n]=!1)}function unbind(e,o,t){var n,r,s=getKeys(e),d=[];"function"==typeof o&&(t=o,o="all");for(var i=0;i<s.length;i++){if(d=1<(n=s[i].split("+")).length?getMods(_modifier,n):[],e="*"===(e=n[n.length-1])?"*":code(e),o||(o=getScope()),!_handlers[e])return;for(var a=0;a<_handlers[e].length;a++){r=_handlers[e][a],t&&r.method!==t||r.scope!==o||!compareArray(r.mods,d)||(_handlers[e][a]={})}}}function eventHandler(e,o,t){var n;if(o.scope===t||"all"===o.scope){for(var r in n=0<o.mods.length,_mods)Object.prototype.hasOwnProperty.call(_mods,r)&&(!_mods[r]&&-1<o.mods.indexOf(+r)||_mods[r]&&!~o.mods.indexOf(+r))&&(n=!1);(0!==o.mods.length||_mods[16]||_mods[18]||_mods[17]||_mods[91])&&!n&&"*"!==o.shortcut||!1===o.method(e,o)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function dispatch(e){var o=_handlers["*"],t=e.keyCode||e.which||e.charCode;if(hotkeys.filter.call(this,e)){if(~_downKeys.indexOf(t)||229===t||_downKeys.push(t),93!==t&&224!==t||(t=91),t in _mods){for(var n in _mods[t]=!0,_modifier)_modifier[n]===t&&(hotkeys[n]=!0);if(!o)return}for(var r in _mods)Object.prototype.hasOwnProperty.call(_mods,r)&&(_mods[r]=e[modifierMap[r]]);var s=getScope();if(o)for(var d=0;d<o.length;d++)o[d].scope===s&&("keydown"===e.type&&o[d].keydown||"keyup"===e.type&&o[d].keyup)&&eventHandler(e,o[d],s);if(t in _handlers)for(var i=0;i<_handlers[t].length;i++)if(("keydown"===e.type&&_handlers[t][i].keydown||"keyup"===e.type&&_handlers[t][i].keyup)&&_handlers[t][i].key){for(var a=_handlers[t][i].key.split("+"),l=[],c=0;c<a.length;c++)l.push(code(a[c]));(l=l.sort()).join("")===_downKeys.sort().join("")&&eventHandler(e,_handlers[t][i],s)}}}function isElementBind(e){return-1<elementHasBindEvent.indexOf(e)}function hotkeys(e,o,t){var n=getKeys(e),r=[],s="all",d=document,i=0,a=!1,l=!0;for(void 0===t&&"function"==typeof o&&(t=o),"[object Object]"===Object.prototype.toString.call(o)&&(o.scope&&(s=o.scope),o.element&&(d=o.element),o.keyup&&(a=o.keyup),o.keydown&&(l=o.keydown)),"string"==typeof o&&(s=o);i<n.length;i++)r=[],1<(e=n[i].split("+")).length&&(r=getMods(_modifier,e)),(e="*"===(e=e[e.length-1])?"*":code(e))in _handlers||(_handlers[e]=[]),_handlers[e].push({keyup:a,keydown:l,scope:s,mods:r,shortcut:n[i],method:t,key:n[i]});void 0===d||isElementBind(d)||(elementHasBindEvent.push(d),addEvent(d,"keydown",function(e){dispatch(e)}),addEvent(d,"keyup",function(e){dispatch(e),clearModifier(e)}))}var _api={setScope:setScope,getScope:getScope,deleteScope:deleteScope,getPressedKeyCodes:getPressedKeyCodes,isPressed:isPressed,filter:filter,unbind:unbind};for(var a in _api)Object.prototype.hasOwnProperty.call(_api,a)&&(hotkeys[a]=_api[a]);if("undefined"!=typeof window){var _hotkeys=window.hotkeys;hotkeys.noConflict=function(e){return e&&window.hotkeys===hotkeys&&(window.hotkeys=_hotkeys),hotkeys},window.hotkeys=hotkeys}module.exports=hotkeys; |
/*! | ||
* hotkeys-js v3.6.8 | ||
* hotkeys-js v3.6.9 | ||
* A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies. | ||
@@ -250,4 +250,9 @@ * | ||
if (keys.length > 1) mods = getMods(_modifier, keys); // 获取除修饰键外的键值key | ||
if (keys.length > 1) { | ||
mods = getMods(_modifier, keys); | ||
} else { | ||
mods = []; | ||
} // 获取除修饰键外的键值key | ||
key = keys[keys.length - 1]; | ||
@@ -301,3 +306,5 @@ key = key === '*' ? '*' : code(key); // 判断是否传入范围,没有就获取范围 | ||
var asterisk = _handlers['*']; | ||
var key = event.keyCode || event.which || event.charCode; // Collect bound keys | ||
var key = event.keyCode || event.which || event.charCode; // 表单控件过滤 默认表单控件不触发快捷键 | ||
if (!hotkeys.filter.call(this, event)) return; // Collect bound keys | ||
// If an Input Method Editor is processing key input and the event is keydown, return 229. | ||
@@ -327,7 +334,5 @@ // https://stackoverflow.com/questions/25043934/is-it-ok-to-ignore-keydown-events-with-keycode-229 | ||
} | ||
} // 表单控件过滤 默认表单控件不触发快捷键 | ||
} // 获取范围 默认为all | ||
if (!hotkeys.filter.call(this, event)) return; // 获取范围 默认为all | ||
var scope = getScope(); // 对任何快捷键都需要做的处理 | ||
@@ -334,0 +339,0 @@ |
/*! | ||
* hotkeys-js v3.6.8 | ||
* hotkeys-js v3.6.9 | ||
* A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies. | ||
@@ -256,4 +256,9 @@ * | ||
if (keys.length > 1) mods = getMods(_modifier, keys); // 获取除修饰键外的键值key | ||
if (keys.length > 1) { | ||
mods = getMods(_modifier, keys); | ||
} else { | ||
mods = []; | ||
} // 获取除修饰键外的键值key | ||
key = keys[keys.length - 1]; | ||
@@ -307,3 +312,5 @@ key = key === '*' ? '*' : code(key); // 判断是否传入范围,没有就获取范围 | ||
var asterisk = _handlers['*']; | ||
var key = event.keyCode || event.which || event.charCode; // Collect bound keys | ||
var key = event.keyCode || event.which || event.charCode; // 表单控件过滤 默认表单控件不触发快捷键 | ||
if (!hotkeys.filter.call(this, event)) return; // Collect bound keys | ||
// If an Input Method Editor is processing key input and the event is keydown, return 229. | ||
@@ -333,7 +340,5 @@ // https://stackoverflow.com/questions/25043934/is-it-ok-to-ignore-keydown-events-with-keycode-229 | ||
} | ||
} // 表单控件过滤 默认表单控件不触发快捷键 | ||
} // 获取范围 默认为all | ||
if (!hotkeys.filter.call(this, event)) return; // 获取范围 默认为all | ||
var scope = getScope(); // 对任何快捷键都需要做的处理 | ||
@@ -340,0 +345,0 @@ |
@@ -1,2 +0,2 @@ | ||
/*! hotkeys-js v3.6.8 | MIT (c) 2019 kenny wong <wowohoo@qq.com> | http://jaywcjlove.github.io/hotkeys */ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).hotkeys=t()}(this,function(){"use strict";var e="undefined"!=typeof navigator&&0<navigator.userAgent.toLowerCase().indexOf("firefox");function s(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function p(e,t){for(var n=t.slice(0,t.length-1),o=0;o<n.length;o++)n[o]=e[n[o].toLowerCase()];return n}function d(e){e||(e="");for(var t=(e=e.replace(/\s/g,"")).split(","),n=t.lastIndexOf("");0<=n;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function l(e,t){for(var n=e.length<t.length?t:e,o=e.length<t.length?e:t,r=!0,i=0;i<n.length;i++)~o.indexOf(n[i])||(r=!1);return r}for(var t={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":e?173:189,"=":e?61:187,";":e?59:186,"'":222,"[":219,"]":221,"\\":220},u={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":e?224:91,cmd:e?224:91,command:e?224:91},y=[],h={16:"shiftKey",18:"altKey",17:"ctrlKey"},v={16:!1,18:!1,17:!1},g={},n=1;n<20;n++)t["f".concat(n)]=111+n;v[e?224:91]=!(h[e?224:91]="metaKey");var o="all",w=[],k=function(e){return t[e.toLowerCase()]||u[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function i(e){o=e||"all"}function m(){return o||"all"}function O(e,t,n){var o;if(t.scope===n||"all"===t.scope){for(var r in o=0<t.mods.length,v)Object.prototype.hasOwnProperty.call(v,r)&&(!v[r]&&-1<t.mods.indexOf(+r)||v[r]&&!~t.mods.indexOf(+r))&&(o=!1);(0!==t.mods.length||v[16]||v[18]||v[17]||v[91])&&!o&&"*"!==t.shortcut||!1===t.method(e,t)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function b(e){var t=g["*"],n=e.keyCode||e.which||e.charCode;if(~y.indexOf(n)||229===n||y.push(n),93!==n&&224!==n||(n=91),n in v){for(var o in v[n]=!0,u)u[o]===n&&(C[o]=!0);if(!t)return}for(var r in v)Object.prototype.hasOwnProperty.call(v,r)&&(v[r]=e[h[r]]);if(C.filter.call(this,e)){var i=m();if(t)for(var a=0;a<t.length;a++)t[a].scope===i&&("keydown"===e.type&&t[a].keydown||"keyup"===e.type&&t[a].keyup)&&O(e,t[a],i);if(n in g)for(var c=0;c<g[n].length;c++)if(("keydown"===e.type&&g[n][c].keydown||"keyup"===e.type&&g[n][c].keyup)&&g[n][c].key){for(var f=g[n][c].key.split("+"),l=[],s=0;s<f.length;s++)l.push(k(f[s]));(l=l.sort()).join("")===y.sort().join("")&&O(e,g[n][c],i)}}}function C(e,t,n){var o=d(e),r=[],i="all",a=document,c=0,f=!1,l=!0;for(void 0===n&&"function"==typeof t&&(n=t),"[object Object]"===Object.prototype.toString.call(t)&&(t.scope&&(i=t.scope),t.element&&(a=t.element),t.keyup&&(f=t.keyup),t.keydown&&(l=t.keydown)),"string"==typeof t&&(i=t);c<o.length;c++)r=[],1<(e=o[c].split("+")).length&&(r=p(u,e)),(e="*"===(e=e[e.length-1])?"*":k(e))in g||(g[e]=[]),g[e].push({keyup:f,keydown:l,scope:i,mods:r,shortcut:o[c],method:n,key:o[c]});void 0===a||function(e){return-1<w.indexOf(e)}(a)||(w.push(a),s(a,"keydown",function(e){b(e)}),s(a,"keyup",function(e){b(e),function(e){var t=e.keyCode||e.which||e.charCode,n=y.indexOf(t);if(n<0||y.splice(n,1),e.key&&"meta"==e.key.toLowerCase()&&y.splice(0,y.length),93!==t&&224!==t||(t=91),t in v)for(var o in v[t]=!1,u)u[o]===t&&(C[o]=!1)}(e)}))}var r={setScope:i,getScope:m,deleteScope:function(e,t){var n,o;for(var r in e||(e=m()),g)if(Object.prototype.hasOwnProperty.call(g,r))for(n=g[r],o=0;o<n.length;)n[o].scope===e?n.splice(o,1):o++;m()===e&&i(t||"all")},getPressedKeyCodes:function(){return y.slice(0)},isPressed:function(e){return"string"==typeof e&&(e=k(e)),!!~y.indexOf(e)},filter:function(e){var t=e.target||e.srcElement,n=t.tagName,o=!0;return!t.isContentEditable&&"TEXTAREA"!==n&&("INPUT"!==n&&"TEXTAREA"!==n||t.readOnly)||(o=!1),o},unbind:function(e,t,n){var o,r,i=d(e),a=[];"function"==typeof t&&(n=t,t="all");for(var c=0;c<i.length;c++){if(1<(o=i[c].split("+")).length&&(a=p(u,o)),e="*"===(e=o[o.length-1])?"*":k(e),t||(t=m()),!g[e])return;for(var f=0;f<g[e].length;f++)r=g[e][f],n&&r.method!==n||r.scope!==t||!l(r.mods,a)||(g[e][f]={})}}};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(C[a]=r[a]);if("undefined"!=typeof window){var c=window.hotkeys;C.noConflict=function(e){return e&&window.hotkeys===C&&(window.hotkeys=c),C},window.hotkeys=C}return C}); | ||
/*! hotkeys-js v3.6.9 | MIT (c) 2019 kenny wong <wowohoo@qq.com> | http://jaywcjlove.github.io/hotkeys */ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).hotkeys=t()}(this,function(){"use strict";var e="undefined"!=typeof navigator&&0<navigator.userAgent.toLowerCase().indexOf("firefox");function s(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function p(e,t){for(var n=t.slice(0,t.length-1),o=0;o<n.length;o++)n[o]=e[n[o].toLowerCase()];return n}function d(e){e||(e="");for(var t=(e=e.replace(/\s/g,"")).split(","),n=t.lastIndexOf("");0<=n;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function l(e,t){for(var n=e.length<t.length?t:e,o=e.length<t.length?e:t,r=!0,i=0;i<n.length;i++)~o.indexOf(n[i])||(r=!1);return r}for(var t={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":e?173:189,"=":e?61:187,";":e?59:186,"'":222,"[":219,"]":221,"\\":220},u={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":e?224:91,cmd:e?224:91,command:e?224:91},y=[],h={16:"shiftKey",18:"altKey",17:"ctrlKey"},v={16:!1,18:!1,17:!1},g={},n=1;n<20;n++)t["f".concat(n)]=111+n;v[e?224:91]=!(h[e?224:91]="metaKey");var o="all",w=[],k=function(e){return t[e.toLowerCase()]||u[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function i(e){o=e||"all"}function m(){return o||"all"}function O(e,t,n){var o;if(t.scope===n||"all"===t.scope){for(var r in o=0<t.mods.length,v)Object.prototype.hasOwnProperty.call(v,r)&&(!v[r]&&-1<t.mods.indexOf(+r)||v[r]&&!~t.mods.indexOf(+r))&&(o=!1);(0!==t.mods.length||v[16]||v[18]||v[17]||v[91])&&!o&&"*"!==t.shortcut||!1===t.method(e,t)&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function b(e){var t=g["*"],n=e.keyCode||e.which||e.charCode;if(C.filter.call(this,e)){if(~y.indexOf(n)||229===n||y.push(n),93!==n&&224!==n||(n=91),n in v){for(var o in v[n]=!0,u)u[o]===n&&(C[o]=!0);if(!t)return}for(var r in v)Object.prototype.hasOwnProperty.call(v,r)&&(v[r]=e[h[r]]);var i=m();if(t)for(var a=0;a<t.length;a++)t[a].scope===i&&("keydown"===e.type&&t[a].keydown||"keyup"===e.type&&t[a].keyup)&&O(e,t[a],i);if(n in g)for(var c=0;c<g[n].length;c++)if(("keydown"===e.type&&g[n][c].keydown||"keyup"===e.type&&g[n][c].keyup)&&g[n][c].key){for(var f=g[n][c].key.split("+"),l=[],s=0;s<f.length;s++)l.push(k(f[s]));(l=l.sort()).join("")===y.sort().join("")&&O(e,g[n][c],i)}}}function C(e,t,n){var o=d(e),r=[],i="all",a=document,c=0,f=!1,l=!0;for(void 0===n&&"function"==typeof t&&(n=t),"[object Object]"===Object.prototype.toString.call(t)&&(t.scope&&(i=t.scope),t.element&&(a=t.element),t.keyup&&(f=t.keyup),t.keydown&&(l=t.keydown)),"string"==typeof t&&(i=t);c<o.length;c++)r=[],1<(e=o[c].split("+")).length&&(r=p(u,e)),(e="*"===(e=e[e.length-1])?"*":k(e))in g||(g[e]=[]),g[e].push({keyup:f,keydown:l,scope:i,mods:r,shortcut:o[c],method:n,key:o[c]});void 0===a||function(e){return-1<w.indexOf(e)}(a)||(w.push(a),s(a,"keydown",function(e){b(e)}),s(a,"keyup",function(e){b(e),function(e){var t=e.keyCode||e.which||e.charCode,n=y.indexOf(t);if(n<0||y.splice(n,1),e.key&&"meta"==e.key.toLowerCase()&&y.splice(0,y.length),93!==t&&224!==t||(t=91),t in v)for(var o in v[t]=!1,u)u[o]===t&&(C[o]=!1)}(e)}))}var r={setScope:i,getScope:m,deleteScope:function(e,t){var n,o;for(var r in e||(e=m()),g)if(Object.prototype.hasOwnProperty.call(g,r))for(n=g[r],o=0;o<n.length;)n[o].scope===e?n.splice(o,1):o++;m()===e&&i(t||"all")},getPressedKeyCodes:function(){return y.slice(0)},isPressed:function(e){return"string"==typeof e&&(e=k(e)),!!~y.indexOf(e)},filter:function(e){var t=e.target||e.srcElement,n=t.tagName,o=!0;return!t.isContentEditable&&"TEXTAREA"!==n&&("INPUT"!==n&&"TEXTAREA"!==n||t.readOnly)||(o=!1),o},unbind:function(e,t,n){var o,r,i=d(e),a=[];"function"==typeof t&&(n=t,t="all");for(var c=0;c<i.length;c++){if(a=1<(o=i[c].split("+")).length?p(u,o):[],e="*"===(e=o[o.length-1])?"*":k(e),t||(t=m()),!g[e])return;for(var f=0;f<g[e].length;f++)r=g[e][f],n&&r.method!==n||r.scope!==t||!l(r.mods,a)||(g[e][f]={})}}};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(C[a]=r[a]);if("undefined"!=typeof window){var c=window.hotkeys;C.noConflict=function(e){return e&&window.hotkeys===C&&(window.hotkeys=c),C},window.hotkeys=C}return C}); |
{ | ||
"name": "hotkeys-js", | ||
"description": "A simple micro-library for defining and dispatching keyboard shortcuts. It has no dependencies.", | ||
"version": "3.6.8", | ||
"version": "3.6.9", | ||
"main": "index.js", | ||
@@ -9,3 +9,3 @@ "module": "dist/hotkeys.esm.js", | ||
"lint": "eslint --ext .js src website", | ||
"deploy": "npm run build && npm run doc:build && gh-pages -d doc", | ||
"deploy": "node scripts/build.js && npm run doc:build && gh-pages -d doc", | ||
"build": "node scripts/build.js && npm run doc:build", | ||
@@ -20,2 +20,6 @@ "watch": "node scripts/watch.js", | ||
}, | ||
"files": [ | ||
"dist", | ||
"doc" | ||
], | ||
"husky": { | ||
@@ -22,0 +26,0 @@ "hooks": { |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
1086687
14
5135