pixijs-input-devices 0.5.1 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -236,7 +236,7 @@ gamepad.playVibration({
236
236
 
237
237
  The gamepad buttons reference **Standard Controller Layout**:
238
238
 
239
- | Button Index | BindableCode | Description | Xbox | Playstation | Nintendo<sup>[[?]](#gamepad---nintendo-layout-remapping)</sup> |
239
+ | Button Index | GamepadCode | Description | Xbox | Playstation | Nintendo<sup>[[?]](#gamepad---nintendo-layout-remapping)</sup> |
240
240
  |:---:|:---|:---|:---:|:---:|:---:|
241
241
  | `0` | `"A"` | **Face Button 0** | A | Cross | A |
242
242
  | `1` | `"B"` | **Face Button 1** | B | Circle | X* |
@@ -259,7 +259,7 @@ The gamepad buttons reference **Standard Controller Layout**:
259
259
 
260
260
  Bindable helpers are available for the joysticks too:
261
261
 
262
- | Axis # | BindableCode | Standard | Layout
262
+ | Axis # | GamepadCode | Standard | Layout
263
263
  |:---:|:---:|:---:|:---:|
264
264
  | `0` | `"LeftStickLeft"`<br/>`"LeftStickRight"` | **Left Stick (Left/Right)** | ⬅️➡️ |
265
265
  | `1` | `"LeftStickUp"`<br/>`"LeftStickDown"` | **Left Stick (Up/Down)** | ⬆️⬇️ |
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";const e=0,t=1,i=2,s=3,o=["LeftStickLeft","LeftStickRight","LeftStickUp","LeftStickDown","RightStickLeft","RightStickRight","RightStickUp","RightStickDown"],n={A:0,B:1,X:2,Y:3,LeftShoulder:4,RightShoulder:5,LeftTrigger:6,RightTrigger:7,Back:8,Start:9,LeftStickClick:10,RightStickClick:11,DPadUp:12,DPadDown:13,DPadLeft:14,DPadRight:15},a=["A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight"];let r=new Map;function throttle(e,t){var i;const s=Date.now();return(null!==(i=r.get(e))&&void 0!==i?i:0)>s||(r.set(e,s+t),!1)}class EventEmitter{constructor(){this._listeners={}}hasListener(e){return void 0!==this._listeners[e]}emit(e,t){var i;null===(i=this._listeners[e])||void 0===i||i.forEach((e=>e(t)))}on(e,t){var i;this._listeners[e]||(this._listeners[e]=[]),null===(i=this._listeners[e])||void 0===i||i.push(t)}off(e,t){var i,s;this._listeners[e]=void 0===t||null===(i=this._listeners[e])||void 0===i?void 0:i.filter((e=>e!==t)),0===(null===(s=this._listeners[e])||void 0===s?void 0:s.length)&&(this._listeners[e]=void 0)}}class GamepadDevice{static configureDefaultBinds(e){this.defaultOptions.binds=Object.assign(Object.assign({},this.defaultOptions.binds),e)}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.button[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.button[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return this._bindEmitter.on(e,t),this}offBind(e,t){return this._bindEmitter.off(e,t),this}playVibration({duration:e=200,weakMagnitude:t=.5,strongMagnitude:i=.5,vibrationType:s="dual-rumble",rightTrigger:o=0,leftTrigger:n=0,startDelay:a=0}={}){if(!this.options.vibration.enabled)return;if(!this.source.vibrationActuator)return;const r=this.options.vibration.intensity;try{this.source.vibrationActuator.playEffect(s,{duration:e,startDelay:a,weakMagnitude:r*t,strongMagnitude:r*i,leftTrigger:r*n,rightTrigger:r*o})}catch(e){}}update(e,t){this.updatePresses(e,t),this.source=e}clear(){this.button=[...o,...a].reduce(((e,t)=>(e[t]=!1,e)),{})}constructor(e){this.source=e,this.type="gamepad",this.meta={},this.lastInteraction=performance.now(),this.options=JSON.parse(JSON.stringify(GamepadDevice.defaultOptions)),this.leftJoystick={x:0,y:0},this.rightJoystick={x:0,y:0},this.button=[...a,...o].reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this.leftTrigger=0,this.rightTrigger=0,this.leftShoulder=0,this.rightShoulder=0,this.id="gamepad"+e.index,this.layout=function detectLayout(e){const t=(e.id||"").toLowerCase();return/(steam|28de)/.test(t)?"steam":/(logitech|046d|c216)/.test(t)?"logitech":/(nintendo|switch|joycon|057e)/.test(t)?"nintendo":/(dualshock|dualsense|sony|054c|0ce6|0810)/.test(t)?"playstation":/(xbox|xinput|045e|028e|0291|02a0|02a1|02ea|02ff)/.test(t)?"xbox":"standard"}(e)}updatePresses(r,d){var c,u,l,h,g,p,m;const v=this.options.joystick;for(let e=0;e<4;e++){const t=_scale(r.axes[e],v.deadzone),i=o[2*e+(t>0?1:0)];if(Math.abs(t)<v.threshold)this.button[i]=!1;else{const t=v.autoRepeatDelayMs[+this.button[i]];this.button[i]=!0,throttle(i,t)||(this.lastInteraction=d,this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,axis:e,axisCode:i}))),Object.entries(this.options.binds).forEach((([t,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"axis",axis:e,axisCode:i,name:t};this._bindEmitter.emit(t,s),this._emitter.emit("bind",s)}))})))}}for(let e=0;e<16;e++){let t=e;"nintendo"===this.layout&&"none"!==this.options.nintendoRemapMode&&("physical"===this.options.nintendoRemapMode?t===n.B?t=n.A:t===n.A?t=n.B:t===n.X?t=n.Y:t===n.Y&&(t=n.X):t===n.B?t=n.X:t===n.X&&(t=n.B));const i=a[t];if(this.button[i]===(null===(c=r.buttons[e])||void 0===c?void 0:c.pressed))continue;this.lastInteraction=d;const s=null!==(l=null===(u=r.buttons[e])||void 0===u?void 0:u.pressed)&&void 0!==l&&l;this.button[i]=s,s&&(this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,button:t,buttonCode:i}))),Object.entries(this.options.binds).forEach((([e,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"button",button:t,buttonCode:i,name:e};this._bindEmitter.emit(e,s),this._emitter.emit("bind",s)}))})))}const f=this.options.trigger.deadzone;this.leftTrigger=_scale(r.buttons[n.LeftTrigger].value,f),this.rightTrigger=_scale(r.buttons[n.RightTrigger].value,f),this.leftShoulder=_scale(r.buttons[n.LeftShoulder].value,f),this.rightShoulder=_scale(r.buttons[n.RightShoulder].value,f);const y=v.deadzone;this.leftJoystick.x=_scale(null!==(h=r.axes[e])&&void 0!==h?h:0,y),this.leftJoystick.y=_scale(null!==(g=r.axes[t])&&void 0!==g?g:0,y),this.rightJoystick.x=_scale(null!==(p=r.axes[i])&&void 0!==p?p:0,y),this.rightJoystick.y=_scale(null!==(m=r.axes[s])&&void 0!==m?m:0,y)}}function _scale(e,t){const i=(Math.abs(e)-t[0])/(t[1]-t[0]);return i>=0&&i<=1?Math.sign(e)*i:i>1?1*Math.sign(e):0}GamepadDevice.defaultOptions={nintendoRemapMode:"physical",binds:{"navigate.back":["B","Back"],"navigate.down":["DPadDown","LeftStickDown"],"navigate.left":["DPadLeft","LeftStickLeft"],"navigate.right":["DPadRight","LeftStickRight"],"navigate.trigger":["A"],"navigate.up":["DPadUp","LeftStickUp"]},joystick:{deadzone:[0,1],threshold:.25,autoRepeatDelayMs:[400,80]},trigger:{deadzone:[0,1]},vibration:{enabled:!0,intensity:1}};const d={AltLeft:"AltLeft",AltRight:"AltRight",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",ArrowUp:"ArrowUp",Backquote:"Backquote",Backslash:"Backslash",Backspace:"Backspace",BracketLeft:"BracketLeft",BracketRight:"BracketRight",CapsLock:"CapsLock",Comma:"Comma",ContextMenu:"ContextMenu",ControlLeft:"ControlLeft",ControlRight:"ControlRight",Delete:"Delete",Digit0:"Digit0",Digit1:"Digit1",Digit2:"Digit2",Digit3:"Digit3",Digit4:"Digit4",Digit5:"Digit5",Digit6:"Digit6",Digit7:"Digit7",Digit8:"Digit8",Digit9:"Digit9",End:"End",Enter:"Enter",Equal:"Equal",Escape:"Escape",F1:"F1",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F2:"F2",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F3:"F3",F30:"F30",F31:"F31",F32:"F32",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",Home:"Home",IntlBackslash:"IntlBackslash",IntlRo:"IntlRo",IntlYen:"IntlYen",KeyA:"KeyA",KeyB:"KeyB",KeyC:"KeyC",KeyD:"KeyD",KeyE:"KeyE",KeyF:"KeyF",KeyG:"KeyG",KeyH:"KeyH",KeyI:"KeyI",KeyJ:"KeyJ",KeyK:"KeyK",KeyL:"KeyL",KeyM:"KeyM",KeyN:"KeyN",KeyO:"KeyO",KeyP:"KeyP",KeyQ:"KeyQ",KeyR:"KeyR",KeyS:"KeyS",KeyT:"KeyT",KeyU:"KeyU",KeyV:"KeyV",KeyW:"KeyW",KeyX:"KeyX",KeyY:"KeyY",KeyZ:"KeyZ",Lang1:"Lang1",Lang2:"Lang2",MediaTrackNext:"MediaTrackNext",MediaTrackPrevious:"MediaTrackPrevious",MetaLeft:"MetaLeft",MetaRight:"MetaRight",Minus:"Minus",NumLock:"NumLock",Numpad0:"Numpad0",Numpad1:"Numpad1",Numpad2:"Numpad2",Numpad3:"Numpad3",Numpad4:"Numpad4",Numpad5:"Numpad5",Numpad6:"Numpad6",Numpad7:"Numpad7",Numpad8:"Numpad8",Numpad9:"Numpad9",NumpadAdd:"NumpadAdd",NumpadComma:"NumpadComma",NumpadDecimal:"NumpadDecimal",NumpadDivide:"NumpadDivide",NumpadMultiply:"NumpadMultiply",NumpadSubtract:"NumpadSubtract",OSLeft:"OSLeft",Pause:"Pause",Period:"Period",Quote:"Quote",ScrollLock:"ScrollLock",Semicolon:"Semicolon",ShiftLeft:"ShiftLeft",ShiftRight:"ShiftRight",Slash:"Slash",Space:"Space",Tab:"Tab",VolumeDown:"VolumeDown",VolumeMute:"VolumeMute",VolumeUp:"VolumeUp",WakeUp:"WakeUp"};function __awaiter(e,t,i,s){return new(i||(i=Promise))((function(o,n){function fulfilled(e){try{step(s.next(e))}catch(e){n(e)}}function rejected(e){try{step(s.throw(e))}catch(e){n(e)}}function step(e){e.done?o(e.value):function adopt(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))}let c,u;"function"==typeof SuppressedError&&SuppressedError;const l=["fr","mg","lu"],h=["ab","ba","be","bg","ch","kk","ky","mk","mn","ru","sr","tg","tt","uk","uz"],g=["de","cs","sk","sl","hu","hr","bs","ro","sq","me","lt","lv","et"],p=/ф|и|с|в|у|а|п|р|ш|о|л|д|ь|т|щ|з|й|к|ы|е|г|м|ц|ч|н|я|ё|х|ъ|б|ю|э|ж|и/i,m=/[a-z]/i;function inferKeyboardLayoutFromLang(e=function getLang(){var e;const t=navigator;return null!=(null===(e=t.languages)||void 0===e?void 0:e.length)?t.languages[0]:t.userLanguage||t.language||t.browserLanguage}()){const t=(e||"").toLowerCase(),i=t.split("-")[0];return l.includes(i)||t.startsWith("nl-be")?"AZERTY":h.includes(i)?"JCUKEN":g.includes(i)||t.startsWith("sr-latn")?"QWERTZ":"QWERTY"}const v=new Set(["AZERTY","JCUKEN","QWERTY","QWERTZ"]);function getLayoutKeyLabel(e,t){var i,s;if(void 0===u){const e={ArrowLeft:"⬅",ArrowRight:"➡",ArrowUp:"⬆",ArrowDown:"⬇",AltLeft:"Left Alt",AltRight:"Right Alt",Backquote:"`",Backslash:"\\",Backspace:"Backspace",BracketLeft:"[",BracketRight:"]",CapsLock:"CapsLock",Comma:",",ContextMenu:"Context Menu",ControlLeft:"Left Ctrl",ControlRight:"Right Ctrl",Delete:"Delete",Digit0:"0",Digit1:"1",Digit2:"2",Digit3:"3",Digit4:"4",Digit5:"5",Digit6:"6",Digit7:"7",Digit8:"8",Digit9:"9",End:"End",Enter:"Enter",Equal:"=",Escape:"Esc",F1:"F1",F2:"F2",F3:"F3",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F30:"F30",F31:"F31",F32:"F32",Home:"Home",IntlBackslash:"\\",IntlRo:"Ro",IntlYen:"¥",KeyA:"A",KeyB:"B",KeyC:"C",KeyD:"D",KeyE:"E",KeyF:"F",KeyG:"G",KeyH:"H",KeyI:"I",KeyJ:"J",KeyK:"K",KeyL:"L",KeyM:"M",KeyN:"N",KeyO:"O",KeyP:"P",KeyQ:"Q",KeyR:"R",KeyS:"S",KeyT:"T",KeyU:"U",KeyV:"V",KeyW:"W",KeyX:"X",KeyY:"Y",KeyZ:"Z",Lang1:"Language 1",Lang2:"Language 2",MediaTrackNext:"Next Track",MediaTrackPrevious:"Previous Track",MetaLeft:"Left "+getMetaKeyLabel(),MetaRight:"Right "+getMetaKeyLabel(),Minus:"-",NumLock:"Num Lock",Numpad0:"Num0",Numpad1:"Num1",Numpad2:"Num2",Numpad3:"Num3",Numpad4:"Num4",Numpad5:"Num5",Numpad6:"Num6",Numpad7:"Num7",Numpad8:"Num8",Numpad9:"Num9",NumpadAdd:"+",NumpadComma:",",NumpadDecimal:".",NumpadDivide:"/",NumpadMultiply:"*",NumpadSubtract:"-",OSLeft:"OS Left",Pause:"Pause",Period:".",Quote:"'",ScrollLock:"Scroll Lock",Semicolon:";",ShiftLeft:"Left Shift",ShiftRight:"Right Shift",Slash:"/",Space:"Space",Tab:"Tab",VolumeDown:"Volume Down",VolumeMute:"Volume Mute",VolumeUp:"Volume Up",WakeUp:"Wake Up"};u={AZERTY:{KeyA:"Q",KeyQ:"A",KeyW:"Z",KeyZ:"W",Backquote:"²",BracketLeft:"«",BracketRight:"»"},JCUKEN:{KeyA:"Ф",KeyB:"И",KeyC:"С",KeyD:"В",KeyE:"У",KeyF:"А",KeyG:"П",KeyH:"Р",KeyI:"Ш",KeyJ:"О",KeyK:"Л",KeyL:"Д",KeyM:"Ь",KeyN:"Т",KeyO:"Щ",KeyP:"З",KeyQ:"Й",KeyR:"К",KeyS:"Ы",KeyT:"Е",KeyU:"Г",KeyV:"М",KeyW:"Ц",KeyX:"Ч",KeyY:"Н",KeyZ:"Я",Backquote:"Ё",BracketLeft:"х",BracketRight:"ъ",Comma:"Б",Period:"Ю",Quote:"Э",Semicolon:"Ж",Slash:"И"},QWERTY:e,QWERTZ:{KeyY:"Z",KeyZ:"Y",BracketLeft:"ü",BracketRight:"ö",Slash:"-"}}}return null!==(s=null!==(i=u[t][e])&&void 0!==i?i:u.QWERTY[e])&&void 0!==s?s:e}function getMetaKeyLabel(){var e,t,i,s;const o=navigator,n=null!==(t=null===(e=o.platform)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",a=null!==(s=null===(i=o.userAgent)||void 0===i?void 0:i.toLowerCase())&&void 0!==s?s:"";return n.includes("mac")?"⌘":n.includes("win")||n.includes("linux")?"⊞":a.includes("android")?"Search":a.includes("iphone")||a.includes("ipad")?"⌘":"⊞"}class KeyboardDevice{constructor(){this.type="keyboard",this.id="keyboard",this.meta={},this.lastInteraction=performance.now(),this.detectLayoutOnKeypress=!0,this.detected=!1,this.options={binds:{"navigate.back":["Escape","Backspace"],"navigate.down":["ArrowDown","KeyS"],"navigate.left":["ArrowLeft","KeyA"],"navigate.right":["ArrowRight","KeyD"],"navigate.trigger":["Enter","Space"],"navigate.up":["ArrowUp","KeyW"]},repeatableBinds:["navigate.down","navigate.left","navigate.right","navigate.up"]},this.key=Object.keys(d).reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._deferredKeydown=[],this._layout=inferKeyboardLayoutFromLang(),this._layoutSource="lang",function requestKeyboardLayout(){return __awaiter(this,void 0,void 0,(function*(){const e=navigator;if(e.keyboard&&e.keyboard.getLayoutMap)try{const t=yield e.keyboard.getLayoutMap();c=t;const i=t.get("KeyQ"),s=t.get("KeyA"),o=t.get("KeyZ");if("a"===i&&"w"===o&&"q"===s)return"AZERTY";if("q"===i&&"y"===o&&"a"===s)return"QWERTZ";if("q"===i&&"z"===o&&"a"===s)return"QWERTY";if("й"===i&&"я"===o&&"ф"===s)return"JCUKEN"}catch(e){}}))}().then((e=>{void 0!==e&&(this._layoutSource="browser",this._layout=e,this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layoutSource:"browser",layout:e,device:this}))})),this._configureEventListeners()}get layout(){return this._layout}set layout(e){this._layoutSource="manual",this._layout=e,this.detectLayoutOnKeypress=!1}get layoutSource(){return this._layoutSource}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.key[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.key[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return this._bindEmitter.on(e,t),this}offBind(e,t){return this._bindEmitter.off(e,t),this}getKeyLabel(e,t){var i;return t?getLayoutKeyLabel(e,t):null!==(i=function getNavigatorKeyLabel(e){const t=null==c?void 0:c.get(e);return void 0===t?void 0:function _toLocaleTitleCase(e){return e.split(/\s+/).map((e=>e.charAt(0).toLocaleUpperCase()+e.slice(1))).join(" ")}(t)}(e))&&void 0!==i?i:getLayoutKeyLabel(e,null!=t?t:this._layout)}update(e){this._deferredKeydown.length>0&&(this._deferredKeydown.forEach((e=>this._processDeferredKeydownEvent(e))),this._deferredKeydown.length=0)}clear(){for(const e of Object.keys(d))this.key[e]=!1}_configureEventListeners(){const e=this.key,t=this._deferredKeydown;window.addEventListener("keydown",(i=>{e[i.code]=!0,t.push(i),this.lastInteraction=performance.now()}),{passive:!0,capture:!0}),window.addEventListener("keyup",(t=>{e[t.code]=!1,this.lastInteraction=performance.now()}),{passive:!0,capture:!0})}_processDeferredKeydownEvent(e){const t=e.code;if(!e.repeat){if(this.detectLayoutOnKeypress&&"lang"===this._layoutSource){const t=function detectKeyboardLayoutFromKeydown(e){const t=e.key.toLowerCase(),i=e.code;return p.test(t)?(v.delete("AZERTY"),v.delete("QWERTY"),v.delete("QWERTZ")):"Backquote"===i&&"²"===t||"BracketLeft"===i&&"«"===t||"BracketRight"===i&&"»"===t||"KeyA"===i&&"q"===t||"KeyQ"===i&&"a"===t||"KeyW"===i&&"z"===t||"KeyZ"===i&&"w"===t?(v.delete("JCUKEN"),v.delete("QWERTY"),v.delete("QWERTZ")):"BracketLeft"===i&&"ü"===t||"BracketRight"===i&&"ö"===t||"KeyY"===i&&"z"===t||"KeyZ"===i&&"y"===t||"Slash"===i&&"-"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTY")):"BracketLeft"===i&&"["===t||"BracketRight"===i&&"]"===t||"KeyZ"===i&&"z"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTZ")):"KeyQ"===i&&"q"===t||"KeyW"===i&&"w"===t?(v.delete("AZERTY"),v.delete("JCUKEN")):"KeyY"===i&&"y"===t?(v.delete("QWERTZ"),v.delete("JCUKEN")):m.test(t)&&v.delete("JCUKEN"),1===v.size?[...v][0]:void 0}(e);void 0!==t&&(this._layout=t,this._layoutSource="keypress",this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layout:t,layoutSource:"keypress",device:this}))}this._emitter.hasListener(t)&&setTimeout((()=>this._emitter.emit(t,{device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e})))}Object.entries(this.options.binds).forEach((([i,s])=>{s.includes(t)&&(e.repeat&&!this.options.repeatableBinds.includes(i)||setTimeout((()=>{const s={device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e,name:i,repeat:e.repeat};this._bindEmitter.emit(i,s),this._emitter.emit("bind",s)})))}))}}KeyboardDevice.global=new KeyboardDevice;class InputDeviceManager{constructor(){this.isMobile=(()=>{let e=!1;var t;return t=navigator.userAgent||navigator.vendor,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4)))&&(e=!0),e})(),this.isTouchCapable=function isTouchCapable(){return"ontouchstart"in window||navigator.maxTouchPoints>0}(),this.options={requireFocus:!0,clearInputInBackground:!0},this._devices=[],this._gamepadDevices=[],this._gamepadDeviceMap=new Map,this._customDevices=[],this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._hasFocus=!1,this.keyboard=KeyboardDevice.global,this.isTouchCapable||this.isMobile?window.addEventListener("keydown",(()=>this.add(this.keyboard)),{once:!0}):this.add(this.keyboard),window.addEventListener("gamepadconnected",(()=>this._pollGamepads(performance.now()))),window.addEventListener("gamepaddisconnected",(e=>this._removeGamepad(e.gamepad.index)))}get devices(){return this._devices}get gamepads(){return this._gamepadDevices}get custom(){return this._customDevices}get lastInteractedDevice(){return this._lastInteractedDevice}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.on(e,t))),this}offBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.off(e,t))),this}emitBind(e){this._bindEmitter.emit(e.name,e)}add(e){-1===this._devices.indexOf(e)&&(this._devices.push(e),e instanceof KeyboardDevice?(e.detected=!0,e.on("bind",(e=>this.emitBind(e)))):e instanceof GamepadDevice?(this._gamepadDeviceMap.set(e.source.index,e),this._gamepadDevices.push(e),e.on("bind",(e=>this.emitBind(e)))):this._customDevices.push(e),this._emitter.emit("deviceadded",{device:e}))}remove(e){if(!(e instanceof KeyboardDevice||e instanceof GamepadDevice)){const t=this._customDevices.indexOf(e);-1!==t&&this._devices.splice(t,1)}const t=this._devices.indexOf(e);-1!==t&&(this._devices.splice(t,1),this._emitter.emit("deviceremoved",{device:e}))}update(){if(this.options.requireFocus&&!document.hasFocus())return this._hasFocus&&this.options.clearInputInBackground&&this.devices.forEach((e=>{var t;return null===(t=e.clear)||void 0===t?void 0:t.call(e)})),this._hasFocus=!1,this._devices;this._hasFocus=!0;const e=performance.now();return this.keyboard.detected&&this.keyboard.update(e),this._gamepadDevices.length>0&&this._pollGamepads(e),this._customDevices.length>0&&this._customDevices.forEach((t=>t.update(e))),this._updateLastInteracted(),this._devices}_updateLastInteracted(){if(0===this._devices.length)return;let e;if(1===this._devices.length)e=this._devices[0];else for(const t of this._devices)(void 0===e||t.lastInteraction>e.lastInteraction)&&(e=t);this._lastInteractedDevice=e}_pollGamepads(e){if(!document.hasFocus())return this._gamepadDevices;if(void 0===navigator.getGamepads)return this._gamepadDevices;for(const t of navigator.getGamepads())if(null!=t)if(this._gamepadDeviceMap.has(t.index)){this._gamepadDeviceMap.get(t.index).update(t,e)}else{const i=new GamepadDevice(t);this.add(i),i.update(t,e)}return this._gamepadDevices}_removeGamepad(e){const t=this._gamepadDeviceMap.get(e);if(!t)return;const i=this._gamepadDevices.indexOf(t);-1!==i&&this._gamepadDevices.splice(i,1),this.remove(t),this._gamepadDeviceMap.delete(e)}}InputDeviceManager.global=new InputDeviceManager;const f=InputDeviceManager.global;function getAllNavigatables(e,t=[]){var i;for(const s of null!==(i=e.children)&&void 0!==i?i:[])s.isNavigatable?t.push(s):getAllNavigatables(s,t);return t}function getFirstNavigatable(e,t,i,{minimumDistance:s=0}={}){return function chooseFirstNavigatableInDirection(e,t,i,s=0){var o,n,a,r,d,c,u,l,h;const g=e.filter((e=>e.isNavigatable&&null!=e.parent&&isVisible(e))),p=g.find((e=>e===t));if(void 0===p)return g.sort(((e,t)=>t.navigationPriority-e.navigationPriority)),g[0];if(void 0===i&&p)return p;const m=null!=p?p:g[Math.floor(Math.random()*g.length)];if(void 0===p)return null!==(o=e[0])&&void 0!==o?o:m;const v=p.getGlobalPosition(),f=p.getBounds(),y={x:v.x+f.left+f.width/2,y:v.y+f.top+f.height/2},b=g.filter((e=>e!==p)).map((e=>{const t=e.getGlobalPosition(),i=e.getBounds(),s={x:t.x+i.left+i.width/2,y:t.y+i.top+i.height/2};return{element:e,bounds:i,center:s,xDistSqrd:weightedDistSquared(s,y,1,3),yDistSqrd:weightedDistSquared(s,y,3,1)}}));switch(i){case"navigate.up":return null!==(a=null===(n=b.filter((e=>e.center.y<y.y-s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===n?void 0:n.element)&&void 0!==a?a:m;case"navigate.left":return null!==(d=null===(r=b.filter((e=>e.center.x<y.x-s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===r?void 0:r.element)&&void 0!==d?d:m;case"navigate.right":return null!==(u=null===(c=b.filter((e=>e.center.x>y.x+s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===c?void 0:c.element)&&void 0!==u?u:m;case"navigate.down":return null!==(h=null===(l=b.filter((e=>e.center.y>y.y+s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===l?void 0:l.element)&&void 0!==h?h:m;default:return p}}(getAllNavigatables(e),t,i,s)}function isChildOf(e,t){for(;null!=e;){if(e===t)return!0;e=e.parent}return!1}function weightedDistSquared(e,t,i,s){const o=t.x-e.x,n=t.y-e.y;return o*o*i+n*n*s}function isVisible(e){for(;null!=e;){if(!e.visible)return!1;e=e.parent}return!0}const y=["navigate.left","navigate.right","navigate.up","navigate.down","navigate.back","navigate.trigger"];class NavigationManager{constructor(){this.options={useFallbackHoverEffect:!0,minimumDirectionDistance:10},this.enabled=!1,this._responders=[]}get focusTarget(){var e,t;return null!==(t=null===(e=this.responders.find((e=>null!=e.focusTarget&&isVisible(e.focusTarget))))||void 0===e?void 0:e.focusTarget)&&void 0!==t?t:this._rootFocused}set focusTarget(e){const t=this.focusTarget;if(t===e)return;const i=this.getResponderStage();i&&(!e||e.isNavigatable&&isChildOf(e,i))&&(t&&this._emitBlur(t),e&&this._emitFocus(e),this.firstResponder?this.firstResponder.focusTarget=e:this._rootFocused=e)}get firstResponder(){return this._responders[0]}get responders(){return this._responders}configureWithRoot(e){null==this._root&&f.onBind(y,(e=>this._propagate(e))),this._root=e,this.enabled=!0}popResponder(){var e,t,i,s,o;const n=this.focusTarget,a=this._responders.shift();a.focusTarget=void 0;const r=this.focusTarget;return null===(e=null==a?void 0:a.resignedAsFirstResponder)||void 0===e||e.call(a),this._invalidateFocusedIfNeeded(),this.firstResponder&&(null===(i=(t=this.firstResponder).becameFirstResponder)||void 0===i||i.call(t)),n!==r&&(null!==(o=null===(s=this.firstResponder)||void 0===s?void 0:s.autoFocus)&&void 0!==o?o:void 0===r)&&this.autoFocus(),a}pushResponder(e){var t,i,s;const o=e;if(this._responders.includes(o))throw new Error("Responder already in stack.");const n=this.firstResponder;this._responders.unshift(o),null===(t=null==n?void 0:n.resignedAsFirstResponder)||void 0===t||t.call(n),this._invalidateFocusedIfNeeded(),null===(i=o.becameFirstResponder)||void 0===i||i.call(o),(null===(s=o.autoFocus)||void 0===s||s)&&this.autoFocus()}autoFocus(){if(!b.enabled)return;const e=this.getResponderStage();if(!e)return;const t=getFirstNavigatable(e);void 0!==t?t!==this.focusTarget&&(this.focusTarget=t):console.debug("navigation: no navigatable containers found")}getResponderStage(){var e;return null!==(e=this.responders.find(isContainer))&&void 0!==e?e:this._root}_propagate({device:e,name:t}){var i;if(this.enabled){for(const s of this._responders)if(null===(i=s.handledNavigationIntent)||void 0===i?void 0:i.call(s,t,e))return;if(null==this._root)throw this.enabled=!1,new Error("Navigation requires root responder to be configured");{const e=this.getResponderStage();this._handleGlobalIntent(e,t)}}}_handleGlobalIntent(e,t){var i;this._invalidateFocusedIfNeeded(e);const s=this.focusTarget;if(void 0===s)return void this.autoFocus();if("navigate.back"===t)return this._emitBlur(s),void(this.focusTarget=void 0);if("navigate.trigger"===t)return void this._emitTrigger(s);const o=null!==(i=getFirstNavigatable(e,s,t,{minimumDistance:this.options.minimumDirectionDistance}))&&void 0!==i?i:s;o!==s&&(this.focusTarget=o)}_emitBlur(e){const t=e.eventNames();t.includes("pointerout")?e.emit("pointerout"):t.includes("mouseout")?e.emit("mouseout"):this.options.useFallbackHoverEffect&&(e.alpha=1),e.emit("deviceout")}_emitFocus(e){const t=e.eventNames();t.includes("pointerover")?e.emit("pointerover"):t.includes("mouseover")?e.emit("mouseover"):this.options.useFallbackHoverEffect&&(e.alpha=.5),e.emit("deviceover")}_emitTrigger(e){const t=e.eventNames();t.includes("pointerdown")?e.emit("pointerdown"):t.includes("mousedown")?e.emit("mousedown"):this.options.useFallbackHoverEffect&&(e.alpha=.75),e.emit("devicedown")}_invalidateFocusedIfNeeded(e=this.getResponderStage()){if(!e)return;const t=this.focusTarget;t&&!isChildOf(t,e)&&(this._emitBlur(t),this.focusTarget=void 0)}}function isContainer(e){return"children"in e}NavigationManager.global=new NavigationManager;const b=NavigationManager.global;let K=!1;exports.Button=n,exports.GamepadDevice=GamepadDevice,exports.InputDevice=f,exports.KeyCode=d,exports.KeyboardDevice=KeyboardDevice,exports.UINavigation=b,exports.getAllNavigatables=getAllNavigatables,exports.getFirstNavigatable=getFirstNavigatable,exports.isChildOf=isChildOf,exports.isVisible=isVisible,exports.navigationIntents=y,exports.registerPixiJSNavigationMixin=function registerPixiJSNavigationMixin(e){if(K)return;K=!0;const t=e.prototype;t.navigationPriority=0,t.navigationMode="auto",Object.defineProperty(t,"isNavigatable",{get:function(){if("target"===this.navigationMode)return!0;if("none"===this.navigationMode)return!1;const e=this.eventNames();return e.includes("pointerdown")||e.includes("mousedown")},configurable:!0,enumerable:!1})};
1
+ "use strict";const e=0,t=1,i=2,s=3,o=["LeftStickLeft","LeftStickRight","LeftStickUp","LeftStickDown","RightStickLeft","RightStickRight","RightStickUp","RightStickDown"],n={A:0,B:1,X:2,Y:3,LeftShoulder:4,RightShoulder:5,LeftTrigger:6,RightTrigger:7,Back:8,Start:9,LeftStickClick:10,RightStickClick:11,DPadUp:12,DPadDown:13,DPadLeft:14,DPadRight:15},a=["A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight"];let r=new Map;function throttle(e,t){var i;const s=Date.now();return(null!==(i=r.get(e))&&void 0!==i?i:0)>s||(r.set(e,s+t),!1)}class EventEmitter{constructor(){this._listeners={}}hasListener(e){return void 0!==this._listeners[e]}emit(e,t){var i;null===(i=this._listeners[e])||void 0===i||i.forEach((e=>e(t)))}on(e,t,i){var s,o;if(this._listeners[e]||(this._listeners[e]=[]),null==i?void 0:i.once){const onceFn=i=>{t(i),this.off(e,onceFn)};null===(s=this._listeners[e])||void 0===s||s.push(onceFn)}else null===(o=this._listeners[e])||void 0===o||o.push(t)}off(e,t){var i,s;this._listeners[e]=void 0===t||null===(i=this._listeners[e])||void 0===i?void 0:i.filter((e=>e!==t)),0===(null===(s=this._listeners[e])||void 0===s?void 0:s.length)&&(this._listeners[e]=void 0)}}class GamepadDevice{static configureDefaultBinds(e){this.defaultOptions.binds=Object.assign(Object.assign({},this.defaultOptions.binds),e)}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.button[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.button[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t,i){return this._emitter.on(e,t,i),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return this._bindEmitter.on(e,t,i),this}offBind(e,t){return this._bindEmitter.off(e,t),this}playVibration({duration:e=200,weakMagnitude:t=.5,strongMagnitude:i=.5,vibrationType:s="dual-rumble",rightTrigger:o=0,leftTrigger:n=0,startDelay:a=0}={}){if(!this.options.vibration.enabled)return;if(!this.source.vibrationActuator)return;const r=this.options.vibration.intensity;try{this.source.vibrationActuator.playEffect(s,{duration:e,startDelay:a,weakMagnitude:r*t,strongMagnitude:r*i,leftTrigger:r*n,rightTrigger:r*o})}catch(e){}}update(e,t){this.updatePresses(e,t),this.source=e}clear(){this.button=[...o,...a].reduce(((e,t)=>(e[t]=!1,e)),{})}constructor(e){this.source=e,this.type="gamepad",this.meta={},this.lastInteraction=performance.now(),this.options=JSON.parse(JSON.stringify(GamepadDevice.defaultOptions)),this.leftJoystick={x:0,y:0},this.rightJoystick={x:0,y:0},this.button=[...a,...o].reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this.leftTrigger=0,this.rightTrigger=0,this.leftShoulder=0,this.rightShoulder=0,this.id="gamepad"+e.index,this.layout=function detectLayout(e){const t=(e.id||"").toLowerCase();return/(steam|28de)/.test(t)?"steam":/(logitech|046d|c216)/.test(t)?"logitech":/(nintendo|switch|joycon|057e)/.test(t)?"nintendo":/(dualshock|dualsense|sony|054c|0ce6|0810)/.test(t)?"playstation":/(xbox|xinput|045e|028e|0291|02a0|02a1|02ea|02ff)/.test(t)?"xbox":"standard"}(e)}updatePresses(r,d){var c,u,l,h,g,p,m;const v=this.options.joystick;for(let e=0;e<4;e++){const t=_scale(r.axes[e],v.deadzone),i=o[2*e+(t>0?1:0)];if(Math.abs(t)<v.threshold)this.button[i]=!1;else{const t=v.autoRepeatDelayMs[+this.button[i]];this.button[i]=!0,throttle(i,t)||(this.lastInteraction=d,this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,axis:e,axisCode:i}))),Object.entries(this.options.binds).forEach((([t,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"axis",axis:e,axisCode:i,name:t};this._bindEmitter.emit(t,s),this._emitter.emit("bind",s)}))})))}}for(let e=0;e<16;e++){let t=e;"nintendo"===this.layout&&"none"!==this.options.nintendoRemapMode&&("physical"===this.options.nintendoRemapMode?t===n.B?t=n.A:t===n.A?t=n.B:t===n.X?t=n.Y:t===n.Y&&(t=n.X):t===n.B?t=n.X:t===n.X&&(t=n.B));const i=a[t];if(this.button[i]===(null===(c=r.buttons[e])||void 0===c?void 0:c.pressed))continue;this.lastInteraction=d;const s=null!==(l=null===(u=r.buttons[e])||void 0===u?void 0:u.pressed)&&void 0!==l&&l;this.button[i]=s,s&&(this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,button:t,buttonCode:i}))),Object.entries(this.options.binds).forEach((([e,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"button",button:t,buttonCode:i,name:e};this._bindEmitter.emit(e,s),this._emitter.emit("bind",s)}))})))}const f=this.options.trigger.deadzone;this.leftTrigger=_scale(r.buttons[n.LeftTrigger].value,f),this.rightTrigger=_scale(r.buttons[n.RightTrigger].value,f),this.leftShoulder=_scale(r.buttons[n.LeftShoulder].value,f),this.rightShoulder=_scale(r.buttons[n.RightShoulder].value,f);const y=v.deadzone;this.leftJoystick.x=_scale(null!==(h=r.axes[e])&&void 0!==h?h:0,y),this.leftJoystick.y=_scale(null!==(g=r.axes[t])&&void 0!==g?g:0,y),this.rightJoystick.x=_scale(null!==(p=r.axes[i])&&void 0!==p?p:0,y),this.rightJoystick.y=_scale(null!==(m=r.axes[s])&&void 0!==m?m:0,y)}}function _scale(e,t){const i=(Math.abs(e)-t[0])/(t[1]-t[0]);return i>=0&&i<=1?Math.sign(e)*i:i>1?1*Math.sign(e):0}GamepadDevice.defaultOptions={nintendoRemapMode:"physical",binds:{"navigate.back":["B","Back"],"navigate.down":["DPadDown","LeftStickDown"],"navigate.left":["DPadLeft","LeftStickLeft"],"navigate.right":["DPadRight","LeftStickRight"],"navigate.trigger":["A"],"navigate.up":["DPadUp","LeftStickUp"]},joystick:{deadzone:[0,1],threshold:.25,autoRepeatDelayMs:[400,80]},trigger:{deadzone:[0,1]},vibration:{enabled:!0,intensity:1}};const d={AltLeft:"AltLeft",AltRight:"AltRight",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",ArrowUp:"ArrowUp",Backquote:"Backquote",Backslash:"Backslash",Backspace:"Backspace",BracketLeft:"BracketLeft",BracketRight:"BracketRight",CapsLock:"CapsLock",Comma:"Comma",ContextMenu:"ContextMenu",ControlLeft:"ControlLeft",ControlRight:"ControlRight",Delete:"Delete",Digit0:"Digit0",Digit1:"Digit1",Digit2:"Digit2",Digit3:"Digit3",Digit4:"Digit4",Digit5:"Digit5",Digit6:"Digit6",Digit7:"Digit7",Digit8:"Digit8",Digit9:"Digit9",End:"End",Enter:"Enter",Equal:"Equal",Escape:"Escape",F1:"F1",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F2:"F2",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F3:"F3",F30:"F30",F31:"F31",F32:"F32",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",Home:"Home",IntlBackslash:"IntlBackslash",IntlRo:"IntlRo",IntlYen:"IntlYen",KeyA:"KeyA",KeyB:"KeyB",KeyC:"KeyC",KeyD:"KeyD",KeyE:"KeyE",KeyF:"KeyF",KeyG:"KeyG",KeyH:"KeyH",KeyI:"KeyI",KeyJ:"KeyJ",KeyK:"KeyK",KeyL:"KeyL",KeyM:"KeyM",KeyN:"KeyN",KeyO:"KeyO",KeyP:"KeyP",KeyQ:"KeyQ",KeyR:"KeyR",KeyS:"KeyS",KeyT:"KeyT",KeyU:"KeyU",KeyV:"KeyV",KeyW:"KeyW",KeyX:"KeyX",KeyY:"KeyY",KeyZ:"KeyZ",Lang1:"Lang1",Lang2:"Lang2",MediaTrackNext:"MediaTrackNext",MediaTrackPrevious:"MediaTrackPrevious",MetaLeft:"MetaLeft",MetaRight:"MetaRight",Minus:"Minus",NumLock:"NumLock",Numpad0:"Numpad0",Numpad1:"Numpad1",Numpad2:"Numpad2",Numpad3:"Numpad3",Numpad4:"Numpad4",Numpad5:"Numpad5",Numpad6:"Numpad6",Numpad7:"Numpad7",Numpad8:"Numpad8",Numpad9:"Numpad9",NumpadAdd:"NumpadAdd",NumpadComma:"NumpadComma",NumpadDecimal:"NumpadDecimal",NumpadDivide:"NumpadDivide",NumpadMultiply:"NumpadMultiply",NumpadSubtract:"NumpadSubtract",OSLeft:"OSLeft",Pause:"Pause",Period:"Period",Quote:"Quote",ScrollLock:"ScrollLock",Semicolon:"Semicolon",ShiftLeft:"ShiftLeft",ShiftRight:"ShiftRight",Slash:"Slash",Space:"Space",Tab:"Tab",VolumeDown:"VolumeDown",VolumeMute:"VolumeMute",VolumeUp:"VolumeUp",WakeUp:"WakeUp"};function __awaiter(e,t,i,s){return new(i||(i=Promise))((function(o,n){function fulfilled(e){try{step(s.next(e))}catch(e){n(e)}}function rejected(e){try{step(s.throw(e))}catch(e){n(e)}}function step(e){e.done?o(e.value):function adopt(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))}let c,u;"function"==typeof SuppressedError&&SuppressedError;const l=["fr","mg","lu"],h=["ab","ba","be","bg","ch","kk","ky","mk","mn","ru","sr","tg","tt","uk","uz"],g=["de","cs","sk","sl","hu","hr","bs","ro","sq","me","lt","lv","et"],p=/ф|и|с|в|у|а|п|р|ш|о|л|д|ь|т|щ|з|й|к|ы|е|г|м|ц|ч|н|я|ё|х|ъ|б|ю|э|ж|и/i,m=/[a-z]/i;function inferKeyboardLayoutFromLang(e=function getLang(){var e;const t=navigator;return null!=(null===(e=t.languages)||void 0===e?void 0:e.length)?t.languages[0]:t.userLanguage||t.language||t.browserLanguage}()){const t=(e||"").toLowerCase(),i=t.split("-")[0];return l.includes(i)||t.startsWith("nl-be")?"AZERTY":h.includes(i)?"JCUKEN":g.includes(i)||t.startsWith("sr-latn")?"QWERTZ":"QWERTY"}const v=new Set(["AZERTY","JCUKEN","QWERTY","QWERTZ"]);function getLayoutKeyLabel(e,t){var i,s;if(void 0===u){const e={ArrowLeft:"⬅",ArrowRight:"➡",ArrowUp:"⬆",ArrowDown:"⬇",AltLeft:"Left Alt",AltRight:"Right Alt",Backquote:"`",Backslash:"\\",Backspace:"Backspace",BracketLeft:"[",BracketRight:"]",CapsLock:"CapsLock",Comma:",",ContextMenu:"Context Menu",ControlLeft:"Left Ctrl",ControlRight:"Right Ctrl",Delete:"Delete",Digit0:"0",Digit1:"1",Digit2:"2",Digit3:"3",Digit4:"4",Digit5:"5",Digit6:"6",Digit7:"7",Digit8:"8",Digit9:"9",End:"End",Enter:"Enter",Equal:"=",Escape:"Esc",F1:"F1",F2:"F2",F3:"F3",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F30:"F30",F31:"F31",F32:"F32",Home:"Home",IntlBackslash:"\\",IntlRo:"Ro",IntlYen:"¥",KeyA:"A",KeyB:"B",KeyC:"C",KeyD:"D",KeyE:"E",KeyF:"F",KeyG:"G",KeyH:"H",KeyI:"I",KeyJ:"J",KeyK:"K",KeyL:"L",KeyM:"M",KeyN:"N",KeyO:"O",KeyP:"P",KeyQ:"Q",KeyR:"R",KeyS:"S",KeyT:"T",KeyU:"U",KeyV:"V",KeyW:"W",KeyX:"X",KeyY:"Y",KeyZ:"Z",Lang1:"Language 1",Lang2:"Language 2",MediaTrackNext:"Next Track",MediaTrackPrevious:"Previous Track",MetaLeft:"Left "+getMetaKeyLabel(),MetaRight:"Right "+getMetaKeyLabel(),Minus:"-",NumLock:"Num Lock",Numpad0:"Num0",Numpad1:"Num1",Numpad2:"Num2",Numpad3:"Num3",Numpad4:"Num4",Numpad5:"Num5",Numpad6:"Num6",Numpad7:"Num7",Numpad8:"Num8",Numpad9:"Num9",NumpadAdd:"+",NumpadComma:",",NumpadDecimal:".",NumpadDivide:"/",NumpadMultiply:"*",NumpadSubtract:"-",OSLeft:"OS Left",Pause:"Pause",Period:".",Quote:"'",ScrollLock:"Scroll Lock",Semicolon:";",ShiftLeft:"Left Shift",ShiftRight:"Right Shift",Slash:"/",Space:"Space",Tab:"Tab",VolumeDown:"Volume Down",VolumeMute:"Volume Mute",VolumeUp:"Volume Up",WakeUp:"Wake Up"};u={AZERTY:{KeyA:"Q",KeyQ:"A",KeyW:"Z",KeyZ:"W",Backquote:"²",BracketLeft:"«",BracketRight:"»"},JCUKEN:{KeyA:"Ф",KeyB:"И",KeyC:"С",KeyD:"В",KeyE:"У",KeyF:"А",KeyG:"П",KeyH:"Р",KeyI:"Ш",KeyJ:"О",KeyK:"Л",KeyL:"Д",KeyM:"Ь",KeyN:"Т",KeyO:"Щ",KeyP:"З",KeyQ:"Й",KeyR:"К",KeyS:"Ы",KeyT:"Е",KeyU:"Г",KeyV:"М",KeyW:"Ц",KeyX:"Ч",KeyY:"Н",KeyZ:"Я",Backquote:"Ё",BracketLeft:"х",BracketRight:"ъ",Comma:"Б",Period:"Ю",Quote:"Э",Semicolon:"Ж",Slash:"И"},QWERTY:e,QWERTZ:{KeyY:"Z",KeyZ:"Y",BracketLeft:"ü",BracketRight:"ö",Slash:"-"}}}return null!==(s=null!==(i=u[t][e])&&void 0!==i?i:u.QWERTY[e])&&void 0!==s?s:e}function getMetaKeyLabel(){var e,t,i,s;const o=navigator,n=null!==(t=null===(e=o.platform)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",a=null!==(s=null===(i=o.userAgent)||void 0===i?void 0:i.toLowerCase())&&void 0!==s?s:"";return n.includes("mac")?"⌘":n.includes("win")||n.includes("linux")?"⊞":a.includes("android")?"Search":a.includes("iphone")||a.includes("ipad")?"⌘":"⊞"}class KeyboardDevice{constructor(){this.type="keyboard",this.id="keyboard",this.meta={},this.lastInteraction=performance.now(),this.detectLayoutOnKeypress=!0,this.detected=!1,this.options={binds:{"navigate.back":["Escape","Backspace"],"navigate.down":["ArrowDown","KeyS"],"navigate.left":["ArrowLeft","KeyA"],"navigate.right":["ArrowRight","KeyD"],"navigate.trigger":["Enter","Space"],"navigate.up":["ArrowUp","KeyW"]},repeatableBinds:["navigate.down","navigate.left","navigate.right","navigate.up"]},this.key=Object.keys(d).reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._deferredKeydown=[],this._layout=inferKeyboardLayoutFromLang(),this._layoutSource="lang",function requestKeyboardLayout(){return __awaiter(this,void 0,void 0,(function*(){const e=navigator;if(e.keyboard&&e.keyboard.getLayoutMap)try{const t=yield e.keyboard.getLayoutMap();c=t;const i=t.get("KeyQ"),s=t.get("KeyA"),o=t.get("KeyZ");if("a"===i&&"w"===o&&"q"===s)return"AZERTY";if("q"===i&&"y"===o&&"a"===s)return"QWERTZ";if("q"===i&&"z"===o&&"a"===s)return"QWERTY";if("й"===i&&"я"===o&&"ф"===s)return"JCUKEN"}catch(e){}}))}().then((e=>{void 0!==e&&(this._layoutSource="browser",this._layout=e,this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layoutSource:"browser",layout:e,device:this}))})),this._configureEventListeners()}get layout(){return this._layout}set layout(e){this._layoutSource="manual",this._layout=e,this.detectLayoutOnKeypress=!1}get layoutSource(){return this._layoutSource}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.key[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.key[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t,i){return this._emitter.on(e,t,i),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return this._bindEmitter.on(e,t,i),this}offBind(e,t){return this._bindEmitter.off(e,t),this}getKeyLabel(e,t){var i;return t?getLayoutKeyLabel(e,t):null!==(i=function getNavigatorKeyLabel(e){const t=null==c?void 0:c.get(e);return void 0===t?void 0:function _toLocaleTitleCase(e){return e.split(/\s+/).map((e=>e.charAt(0).toLocaleUpperCase()+e.slice(1))).join(" ")}(t)}(e))&&void 0!==i?i:getLayoutKeyLabel(e,null!=t?t:this._layout)}update(e){this._deferredKeydown.length>0&&(this._deferredKeydown.forEach((e=>this._processDeferredKeydownEvent(e))),this._deferredKeydown.length=0)}clear(){for(const e of Object.keys(d))this.key[e]=!1}_configureEventListeners(){const e=this.key,t=this._deferredKeydown;window.addEventListener("keydown",(i=>{e[i.code]=!0,t.push(i),this.lastInteraction=performance.now()}),{passive:!0,capture:!0}),window.addEventListener("keyup",(t=>{e[t.code]=!1,this.lastInteraction=performance.now()}),{passive:!0,capture:!0})}_processDeferredKeydownEvent(e){const t=e.code;if(!e.repeat){if(this.detectLayoutOnKeypress&&"lang"===this._layoutSource){const t=function detectKeyboardLayoutFromKeydown(e){const t=e.key.toLowerCase(),i=e.code;return p.test(t)?(v.delete("AZERTY"),v.delete("QWERTY"),v.delete("QWERTZ")):"Backquote"===i&&"²"===t||"BracketLeft"===i&&"«"===t||"BracketRight"===i&&"»"===t||"KeyA"===i&&"q"===t||"KeyQ"===i&&"a"===t||"KeyW"===i&&"z"===t||"KeyZ"===i&&"w"===t?(v.delete("JCUKEN"),v.delete("QWERTY"),v.delete("QWERTZ")):"BracketLeft"===i&&"ü"===t||"BracketRight"===i&&"ö"===t||"KeyY"===i&&"z"===t||"KeyZ"===i&&"y"===t||"Slash"===i&&"-"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTY")):"BracketLeft"===i&&"["===t||"BracketRight"===i&&"]"===t||"KeyZ"===i&&"z"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTZ")):"KeyQ"===i&&"q"===t||"KeyW"===i&&"w"===t?(v.delete("AZERTY"),v.delete("JCUKEN")):"KeyY"===i&&"y"===t?(v.delete("QWERTZ"),v.delete("JCUKEN")):m.test(t)&&v.delete("JCUKEN"),1===v.size?[...v][0]:void 0}(e);void 0!==t&&(this._layout=t,this._layoutSource="keypress",this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layout:t,layoutSource:"keypress",device:this}))}this._emitter.hasListener(t)&&setTimeout((()=>this._emitter.emit(t,{device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e})))}Object.entries(this.options.binds).forEach((([i,s])=>{s.includes(t)&&(e.repeat&&!this.options.repeatableBinds.includes(i)||setTimeout((()=>{const s={device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e,name:i,repeat:e.repeat};this._bindEmitter.emit(i,s),this._emitter.emit("bind",s)})))}))}}KeyboardDevice.global=new KeyboardDevice;class InputDeviceManager{constructor(){this.isMobile=(()=>{let e=!1;var t;return t=navigator.userAgent||navigator.vendor,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4)))&&(e=!0),e})(),this.isTouchCapable=function isTouchCapable(){return"ontouchstart"in window||navigator.maxTouchPoints>0}(),this.options={requireFocus:!0,clearInputInBackground:!0},this._devices=[],this._gamepadDevices=[],this._gamepadDeviceMap=new Map,this._customDevices=[],this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._hasFocus=!1,this.keyboard=KeyboardDevice.global,this.isTouchCapable||this.isMobile?window.addEventListener("keydown",(()=>this.add(this.keyboard)),{once:!0}):this.add(this.keyboard),window.addEventListener("gamepadconnected",(()=>this._pollGamepads(performance.now()))),window.addEventListener("gamepaddisconnected",(e=>this._removeGamepad(e.gamepad.index)))}get devices(){return this._devices}get gamepads(){return this._gamepadDevices}get custom(){return this._customDevices}get lastInteractedDevice(){return this._lastInteractedDevice}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.on(e,t,i))),this}offBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.off(e,t))),this}emitBind(e){this._bindEmitter.emit(e.name,e)}add(e){-1===this._devices.indexOf(e)&&(this._devices.push(e),e instanceof KeyboardDevice?(e.detected=!0,e.on("bind",(e=>this.emitBind(e)))):e instanceof GamepadDevice?(this._gamepadDeviceMap.set(e.source.index,e),this._gamepadDevices.push(e),e.on("bind",(e=>this.emitBind(e)))):this._customDevices.push(e),this._emitter.emit("deviceadded",{device:e}))}remove(e){if(!(e instanceof KeyboardDevice||e instanceof GamepadDevice)){const t=this._customDevices.indexOf(e);-1!==t&&this._devices.splice(t,1)}const t=this._devices.indexOf(e);-1!==t&&(this._devices.splice(t,1),this._emitter.emit("deviceremoved",{device:e}))}update(){if(this.options.requireFocus&&!document.hasFocus())return this._hasFocus&&this.options.clearInputInBackground&&this.devices.forEach((e=>{var t;return null===(t=e.clear)||void 0===t?void 0:t.call(e)})),this._hasFocus=!1,this._devices;this._hasFocus=!0;const e=performance.now();return this.keyboard.detected&&this.keyboard.update(e),this._gamepadDevices.length>0&&this._pollGamepads(e),this._customDevices.length>0&&this._customDevices.forEach((t=>t.update(e))),this._updateLastInteracted(),this._devices}_updateLastInteracted(){if(0===this._devices.length)return;let e;if(1===this._devices.length)e=this._devices[0];else for(const t of this._devices)(void 0===e||t.lastInteraction>e.lastInteraction)&&(e=t);this._lastInteractedDevice=e}_pollGamepads(e){if(!document.hasFocus())return this._gamepadDevices;if(void 0===navigator.getGamepads)return this._gamepadDevices;for(const t of navigator.getGamepads())if(null!=t)if(this._gamepadDeviceMap.has(t.index)){this._gamepadDeviceMap.get(t.index).update(t,e)}else{const i=new GamepadDevice(t);this.add(i),i.update(t,e)}return this._gamepadDevices}_removeGamepad(e){const t=this._gamepadDeviceMap.get(e);if(!t)return;const i=this._gamepadDevices.indexOf(t);-1!==i&&this._gamepadDevices.splice(i,1),this.remove(t),this._gamepadDeviceMap.delete(e)}}InputDeviceManager.global=new InputDeviceManager;const f=InputDeviceManager.global;function getAllNavigatables(e,t=[]){var i;for(const s of null!==(i=e.children)&&void 0!==i?i:[])s.isNavigatable?t.push(s):getAllNavigatables(s,t);return t}function getFirstNavigatable(e,t,i,{minimumDistance:s=0}={}){return function chooseFirstNavigatableInDirection(e,t,i,s=0){var o,n,a,r,d,c,u,l,h;const g=e.filter((e=>e.isNavigatable&&null!=e.parent&&isVisible(e))),p=g.find((e=>e===t));if(void 0===p)return g.sort(((e,t)=>t.navigationPriority-e.navigationPriority)),g[0];if(void 0===i&&p)return p;const m=null!=p?p:g[Math.floor(Math.random()*g.length)];if(void 0===p)return null!==(o=e[0])&&void 0!==o?o:m;const v=p.getGlobalPosition(),f=p.getBounds(),y={x:v.x+f.left+f.width/2,y:v.y+f.top+f.height/2},b=g.filter((e=>e!==p)).map((e=>{const t=e.getGlobalPosition(),i=e.getBounds(),s={x:t.x+i.left+i.width/2,y:t.y+i.top+i.height/2};return{element:e,bounds:i,center:s,xDistSqrd:weightedDistSquared(s,y,1,3),yDistSqrd:weightedDistSquared(s,y,3,1)}}));switch(i){case"navigate.up":return null!==(a=null===(n=b.filter((e=>e.center.y<y.y-s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===n?void 0:n.element)&&void 0!==a?a:m;case"navigate.left":return null!==(d=null===(r=b.filter((e=>e.center.x<y.x-s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===r?void 0:r.element)&&void 0!==d?d:m;case"navigate.right":return null!==(u=null===(c=b.filter((e=>e.center.x>y.x+s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===c?void 0:c.element)&&void 0!==u?u:m;case"navigate.down":return null!==(h=null===(l=b.filter((e=>e.center.y>y.y+s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===l?void 0:l.element)&&void 0!==h?h:m;default:return p}}(getAllNavigatables(e),t,i,s)}function isChildOf(e,t){for(;null!=e;){if(e===t)return!0;e=e.parent}return!1}function weightedDistSquared(e,t,i,s){const o=t.x-e.x,n=t.y-e.y;return o*o*i+n*n*s}function isVisible(e){for(;null!=e;){if(!e.visible)return!1;e=e.parent}return!0}const y=["navigate.left","navigate.right","navigate.up","navigate.down","navigate.back","navigate.trigger"];class NavigationManager{constructor(){this.options={useFallbackHoverEffect:!0,minimumDirectionDistance:10},this.enabled=!1,this._responders=[]}get focusTarget(){var e,t;return null!==(t=null===(e=this.responders.find((e=>null!=e.focusTarget&&isVisible(e.focusTarget))))||void 0===e?void 0:e.focusTarget)&&void 0!==t?t:this._rootFocused}set focusTarget(e){const t=this.focusTarget;if(t===e)return;const i=this.getResponderStage();i&&(!e||e.isNavigatable&&isChildOf(e,i))&&(t&&this._emitBlur(t),e&&this._emitFocus(e),this.firstResponder?this.firstResponder.focusTarget=e:this._rootFocused=e)}get firstResponder(){return this._responders[0]}get responders(){return this._responders}configureWithRoot(e){null==this._root&&f.onBind(y,(e=>this._propagate(e))),this._root=e,this.enabled=!0}popResponder(){var e,t,i,s,o;const n=this.focusTarget,a=this._responders.shift();a.focusTarget=void 0;const r=this.focusTarget;return null===(e=null==a?void 0:a.resignedAsFirstResponder)||void 0===e||e.call(a),this._invalidateFocusedIfNeeded(),this.firstResponder&&(null===(i=(t=this.firstResponder).becameFirstResponder)||void 0===i||i.call(t)),n!==r&&(null!==(o=null===(s=this.firstResponder)||void 0===s?void 0:s.autoFocus)&&void 0!==o?o:void 0===r)&&this.autoFocus(),a}pushResponder(e){var t,i,s;const o=e;if(this._responders.includes(o))throw new Error("Responder already in stack.");const n=this.firstResponder;this._responders.unshift(o),null===(t=null==n?void 0:n.resignedAsFirstResponder)||void 0===t||t.call(n),this._invalidateFocusedIfNeeded(),null===(i=o.becameFirstResponder)||void 0===i||i.call(o),(null===(s=o.autoFocus)||void 0===s||s)&&this.autoFocus()}autoFocus(){if(!b.enabled)return;const e=this.getResponderStage();if(!e)return;const t=getFirstNavigatable(e);void 0!==t?t!==this.focusTarget&&(this.focusTarget=t):console.debug("navigation: no navigatable containers found")}getResponderStage(){var e;return null!==(e=this.responders.find(isContainer))&&void 0!==e?e:this._root}_propagate({device:e,name:t}){var i;if(this.enabled){for(const s of this._responders)if(null===(i=s.handledNavigationIntent)||void 0===i?void 0:i.call(s,t,e))return;if(null==this._root)throw this.enabled=!1,new Error("Navigation requires root responder to be configured");{const e=this.getResponderStage();this._handleGlobalIntent(e,t)}}}_handleGlobalIntent(e,t){var i;this._invalidateFocusedIfNeeded(e);const s=this.focusTarget;if(void 0===s)return void this.autoFocus();if("navigate.back"===t)return this._emitBlur(s),void(this.focusTarget=void 0);if("navigate.trigger"===t)return void this._emitTrigger(s);const o=null!==(i=getFirstNavigatable(e,s,t,{minimumDistance:this.options.minimumDirectionDistance}))&&void 0!==i?i:s;o!==s&&(this.focusTarget=o)}_emitBlur(e){const t=e.eventNames();t.includes("pointerout")?e.emit("pointerout"):t.includes("mouseout")?e.emit("mouseout"):this.options.useFallbackHoverEffect&&(e.alpha=1),e.emit("deviceout")}_emitFocus(e){const t=e.eventNames();t.includes("pointerover")?e.emit("pointerover"):t.includes("mouseover")?e.emit("mouseover"):this.options.useFallbackHoverEffect&&(e.alpha=.5),e.emit("deviceover")}_emitTrigger(e){const t=e.eventNames();t.includes("pointerdown")?e.emit("pointerdown"):t.includes("mousedown")?e.emit("mousedown"):this.options.useFallbackHoverEffect&&(e.alpha=.75),e.emit("devicedown")}_invalidateFocusedIfNeeded(e=this.getResponderStage()){if(!e)return;const t=this.focusTarget;t&&!isChildOf(t,e)&&(this._emitBlur(t),this.focusTarget=void 0)}}function isContainer(e){return"children"in e}NavigationManager.global=new NavigationManager;const b=NavigationManager.global;let K=!1;exports.Button=n,exports.GamepadDevice=GamepadDevice,exports.InputDevice=f,exports.KeyCode=d,exports.KeyboardDevice=KeyboardDevice,exports.UINavigation=b,exports.getAllNavigatables=getAllNavigatables,exports.getFirstNavigatable=getFirstNavigatable,exports.isChildOf=isChildOf,exports.isVisible=isVisible,exports.navigationIntents=y,exports.registerPixiJSNavigationMixin=function registerPixiJSNavigationMixin(e){if(K)return;K=!0;const t=e.prototype;t.navigationPriority=0,t.navigationMode="auto",Object.defineProperty(t,"isNavigatable",{get:function(){if("target"===this.navigationMode)return!0;if("none"===this.navigationMode)return!1;const e=this.eventNames();return e.includes("pointerdown")||e.includes("mousedown")},configurable:!0,enumerable:!1})};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/lib/devices/gamepads/buttons.ts","../src/lib/utils/throttle.ts","../src/lib/utils/events.ts","../src/lib/devices/gamepads/GamepadDevice.ts","../src/lib/devices/gamepads/layouts.ts","../src/lib/devices/keyboard/keys.ts","../node_modules/tslib/tslib.es6.js","../src/lib/devices/keyboard/layouts.ts","../src/lib/devices/keyboard/KeyboardDevice.ts","../src/lib/InputDevice.ts","../src/lib/utils/detectors.ts","../src/lib/navigation/Navigatable.ts","../src/lib/navigation/NavigationIntent.ts","../src/lib/navigation/UINavigation.ts","../src/Container.mixin.ts"],"sourcesContent":[null,null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null],"names":["Axis","AxisCode","Button","A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight","ButtonCode","_cooldowns","Map","throttle","id","cooldownMs","now","Date","_a","get","undefined","set","EventEmitter","constructor","this","_listeners","hasListener","e","emit","payload","forEach","fn","on","event","push","off","filter","l","_b","length","GamepadDevice","configureDefaultBinds","binds","defaultOptions","Object","assign","pressedBind","name","options","pressedAny","btns","i","button","pressedAll","configureBinds","listener","_emitter","onBind","_bindEmitter","offBind","playVibration","duration","weakMagnitude","strongMagnitude","vibrationType","rightTrigger","leftTrigger","startDelay","vibration","enabled","source","vibrationActuator","intensity","playEffect","update","updatePresses","clear","reduce","obj","key","type","meta","lastInteraction","performance","JSON","parse","stringify","leftJoystick","x","y","rightJoystick","leftShoulder","rightShoulder","index","layout","detectLayout","gamepad","toLowerCase","test","joy","joystick","a","value","_scale","axes","deadzone","axisCode","Math","abs","threshold","throttleMs","autoRepeatDelayMs","setTimeout","device","axis","entries","values","includes","b","nintendoRemapMode","buttonCode","buttons","pressed","isPressed","_d","_c","tdz","trigger","jdz","range","scaled","sign","KeyCode","AltLeft","AltRight","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Backquote","Backslash","Backspace","BracketLeft","BracketRight","CapsLock","Comma","ContextMenu","ControlLeft","ControlRight","Delete","Digit0","Digit1","Digit2","Digit3","Digit4","Digit5","Digit6","Digit7","Digit8","Digit9","End","Enter","Equal","Escape","F1","F10","F11","F12","F13","F14","F15","F16","F17","F18","F19","F2","F20","F21","F22","F23","F24","F25","F26","F27","F28","F29","F3","F30","F31","F32","F4","F5","F6","F7","F8","F9","Home","IntlBackslash","IntlRo","IntlYen","KeyA","KeyB","KeyC","KeyD","KeyE","KeyF","KeyG","KeyH","KeyI","KeyJ","KeyK","KeyL","KeyM","KeyN","KeyO","KeyP","KeyQ","KeyR","KeyS","KeyT","KeyU","KeyV","KeyW","KeyX","KeyY","KeyZ","Lang1","Lang2","MediaTrackNext","MediaTrackPrevious","MetaLeft","MetaRight","Minus","NumLock","Numpad0","Numpad1","Numpad2","Numpad3","Numpad4","Numpad5","Numpad6","Numpad7","Numpad8","Numpad9","NumpadAdd","NumpadComma","NumpadDecimal","NumpadDivide","NumpadMultiply","NumpadSubtract","OSLeft","Pause","Period","Quote","ScrollLock","Semicolon","ShiftLeft","ShiftRight","Slash","Space","Tab","VolumeDown","VolumeMute","VolumeUp","WakeUp","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","adopt","then","apply","_navigatorLayoutMap","_keyLabels","SuppressedError","MACRO_AZERTY","MACRO_JCUKEN","MACRO_QWERTZ","JCUKEN_REGEX","xxERTx_REGEX","inferKeyboardLayoutFromLang","lang","getLang","n","navigator","languages","userLanguage","language","browserLanguage","tag","macro","split","startsWith","_possibleLayouts","Set","getLayoutKeyLabel","DEFAULT_LABELS","getMetaKeyLabel","AZERTY","JCUKEN","QWERTY","QWERTZ","platform","userAgent","KeyboardDevice","detectLayoutOnKeypress","detected","repeatableBinds","keys","_deferredKeydown","_layout","_layoutSource","requestKeyboardLayout","keyboard","getLayoutMap","layoutMap","q","z","layoutSource","_configureEventListeners","getKeyLabel","getNavigatorKeyLabel","_toLocaleTitleCase","input","map","word","charAt","toLocaleUpperCase","slice","join","_processDeferredKeydownEvent","k","d","window","addEventListener","code","passive","capture","keyCode","repeat","detectKeyboardLayoutFromKeydown","delete","size","keyLabel","global","InputDeviceManager","isMobile","check","vendor","substr","isTouchCapable","maxTouchPoints","requireFocus","clearInputInBackground","_devices","_gamepadDevices","_gamepadDeviceMap","_customDevices","_hasFocus","add","once","_pollGamepads","_removeGamepad","devices","gamepads","custom","lastInteractedDevice","_lastInteractedDevice","Array","isArray","emitBind","indexOf","remove","customIndex","splice","devicesIndex","document","hasFocus","_updateLastInteracted","last","getGamepads","has","gamepadIndex","gamepadsIndex","InputDevice","getAllNavigatables","target","navigatables","child","children","isNavigatable","getFirstNavigatable","root","currentFocus","nearestDirection","minimumDistance","chooseFirstNavigatableInDirection","elements","el","parent","isVisible","focusedElement","find","sort","navigationPriority","fallbackElement","floor","random","focusedGlobalPos","getGlobalPosition","focusedBounds","getBounds","focusedCenter","left","width","top","height","otherElements","globalPos","bounds","center","element","xDistSqrd","weightedDistSquared","yDistSqrd","_e","_g","_f","_j","_h","isChildOf","xw","yw","dx","dy","visible","navigationIntents","NavigationManager","useFallbackHoverEffect","minimumDirectionDistance","_responders","focusTarget","responders","res","_rootFocused","previous","responderStage","getResponderStage","_emitBlur","_emitFocus","firstResponder","configureWithRoot","stage","_root","_propagate","popResponder","previousFocused","responder","shift","nextFocused","resignedAsFirstResponder","_invalidateFocusedIfNeeded","becameFirstResponder","autoFocus","pushResponder","Error","previousResponder","unshift","call","UINavigation","navigatable","console","debug","isContainer","handledNavigationIntent","_handleGlobalIntent","intent","_emitTrigger","nextTarget","eventNames","alpha","_registered","registerPixiJSNavigationMixin","container","prototype","navigationMode","defineProperty","onEvents","configurable","enumerable"],"mappings":"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","x_google_ignoreList":[6]}
1
+ {"version":3,"file":"index.cjs","sources":["../src/lib/devices/gamepads/buttons.ts","../src/lib/utils/throttle.ts","../src/lib/utils/events.ts","../src/lib/devices/gamepads/GamepadDevice.ts","../src/lib/devices/gamepads/layouts.ts","../src/lib/devices/keyboard/keys.ts","../node_modules/tslib/tslib.es6.js","../src/lib/devices/keyboard/layouts.ts","../src/lib/devices/keyboard/KeyboardDevice.ts","../src/lib/InputDevice.ts","../src/lib/utils/detectors.ts","../src/lib/navigation/Navigatable.ts","../src/lib/navigation/NavigationIntent.ts","../src/lib/navigation/UINavigation.ts","../src/Container.mixin.ts"],"sourcesContent":[null,null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null],"names":["Axis","AxisCode","Button","A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight","ButtonCode","_cooldowns","Map","throttle","id","cooldownMs","now","Date","_a","get","undefined","set","EventEmitter","constructor","this","_listeners","hasListener","e","emit","payload","forEach","fn","on","event","options","once","onceFn","off","push","_b","filter","l","length","GamepadDevice","configureDefaultBinds","binds","defaultOptions","Object","assign","pressedBind","name","pressedAny","btns","i","button","pressedAll","configureBinds","listener","_emitter","onBind","_bindEmitter","offBind","playVibration","duration","weakMagnitude","strongMagnitude","vibrationType","rightTrigger","leftTrigger","startDelay","vibration","enabled","source","vibrationActuator","intensity","playEffect","update","updatePresses","clear","reduce","obj","key","type","meta","lastInteraction","performance","JSON","parse","stringify","leftJoystick","x","y","rightJoystick","leftShoulder","rightShoulder","index","layout","detectLayout","gamepad","toLowerCase","test","joy","joystick","a","value","_scale","axes","deadzone","axisCode","Math","abs","threshold","throttleMs","autoRepeatDelayMs","setTimeout","device","axis","entries","values","includes","b","nintendoRemapMode","buttonCode","buttons","pressed","isPressed","_d","_c","tdz","trigger","jdz","range","scaled","sign","KeyCode","AltLeft","AltRight","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Backquote","Backslash","Backspace","BracketLeft","BracketRight","CapsLock","Comma","ContextMenu","ControlLeft","ControlRight","Delete","Digit0","Digit1","Digit2","Digit3","Digit4","Digit5","Digit6","Digit7","Digit8","Digit9","End","Enter","Equal","Escape","F1","F10","F11","F12","F13","F14","F15","F16","F17","F18","F19","F2","F20","F21","F22","F23","F24","F25","F26","F27","F28","F29","F3","F30","F31","F32","F4","F5","F6","F7","F8","F9","Home","IntlBackslash","IntlRo","IntlYen","KeyA","KeyB","KeyC","KeyD","KeyE","KeyF","KeyG","KeyH","KeyI","KeyJ","KeyK","KeyL","KeyM","KeyN","KeyO","KeyP","KeyQ","KeyR","KeyS","KeyT","KeyU","KeyV","KeyW","KeyX","KeyY","KeyZ","Lang1","Lang2","MediaTrackNext","MediaTrackPrevious","MetaLeft","MetaRight","Minus","NumLock","Numpad0","Numpad1","Numpad2","Numpad3","Numpad4","Numpad5","Numpad6","Numpad7","Numpad8","Numpad9","NumpadAdd","NumpadComma","NumpadDecimal","NumpadDivide","NumpadMultiply","NumpadSubtract","OSLeft","Pause","Period","Quote","ScrollLock","Semicolon","ShiftLeft","ShiftRight","Slash","Space","Tab","VolumeDown","VolumeMute","VolumeUp","WakeUp","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","adopt","then","apply","_navigatorLayoutMap","_keyLabels","SuppressedError","MACRO_AZERTY","MACRO_JCUKEN","MACRO_QWERTZ","JCUKEN_REGEX","xxERTx_REGEX","inferKeyboardLayoutFromLang","lang","getLang","n","navigator","languages","userLanguage","language","browserLanguage","tag","macro","split","startsWith","_possibleLayouts","Set","getLayoutKeyLabel","DEFAULT_LABELS","getMetaKeyLabel","AZERTY","JCUKEN","QWERTY","QWERTZ","platform","userAgent","KeyboardDevice","detectLayoutOnKeypress","detected","repeatableBinds","keys","_deferredKeydown","_layout","_layoutSource","requestKeyboardLayout","keyboard","getLayoutMap","layoutMap","q","z","layoutSource","_configureEventListeners","getKeyLabel","getNavigatorKeyLabel","_toLocaleTitleCase","input","map","word","charAt","toLocaleUpperCase","slice","join","_processDeferredKeydownEvent","k","d","window","addEventListener","code","passive","capture","keyCode","repeat","detectKeyboardLayoutFromKeydown","delete","size","keyLabel","global","InputDeviceManager","isMobile","check","vendor","substr","isTouchCapable","maxTouchPoints","requireFocus","clearInputInBackground","_devices","_gamepadDevices","_gamepadDeviceMap","_customDevices","_hasFocus","add","_pollGamepads","_removeGamepad","devices","gamepads","custom","lastInteractedDevice","_lastInteractedDevice","Array","isArray","emitBind","indexOf","remove","customIndex","splice","devicesIndex","document","hasFocus","_updateLastInteracted","last","getGamepads","has","gamepadIndex","gamepadsIndex","InputDevice","getAllNavigatables","target","navigatables","child","children","isNavigatable","getFirstNavigatable","root","currentFocus","nearestDirection","minimumDistance","chooseFirstNavigatableInDirection","elements","el","parent","isVisible","focusedElement","find","sort","navigationPriority","fallbackElement","floor","random","focusedGlobalPos","getGlobalPosition","focusedBounds","getBounds","focusedCenter","left","width","top","height","otherElements","globalPos","bounds","center","element","xDistSqrd","weightedDistSquared","yDistSqrd","_e","_g","_f","_j","_h","isChildOf","xw","yw","dx","dy","visible","navigationIntents","NavigationManager","useFallbackHoverEffect","minimumDirectionDistance","_responders","focusTarget","responders","res","_rootFocused","previous","responderStage","getResponderStage","_emitBlur","_emitFocus","firstResponder","configureWithRoot","stage","_root","_propagate","popResponder","previousFocused","responder","shift","nextFocused","resignedAsFirstResponder","_invalidateFocusedIfNeeded","becameFirstResponder","autoFocus","pushResponder","Error","previousResponder","unshift","call","UINavigation","navigatable","console","debug","isContainer","handledNavigationIntent","_handleGlobalIntent","intent","_emitTrigger","nextTarget","eventNames","alpha","_registered","registerPixiJSNavigationMixin","container","prototype","navigationMode","defineProperty","onEvents","configurable","enumerable"],"mappings":"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","x_google_ignoreList":[6]}
package/dist/index.d.ts CHANGED
@@ -89,7 +89,7 @@ declare class InputDeviceManager {
89
89
  /** Remove an event listener (or all if none provided) */
90
90
  off<K extends keyof InputDeviceEvent>(event: K, listener: (event: InputDeviceEvent[K]) => void): this;
91
91
  /** Adds a named bind event listener. */
92
- onBind<N extends string>(name: N | readonly N[], listener: (event: NamedBindEvent<N>) => void): this;
92
+ onBind<N extends string>(name: N | readonly N[], listener: (event: NamedBindEvent<N>) => void, options?: EventOptions): this;
93
93
  /** Remove a named bind event listener (or all if none provided). */
94
94
  offBind(name: string | string[], listener?: (event: NamedBindEvent) => void): this;
95
95
  /** Report a named bind event (from a CustomDevice). */
@@ -220,7 +220,7 @@ declare const ButtonCode: readonly [
220
220
  export declare class GamepadDevice {
221
221
  source: Gamepad;
222
222
  /** Set named binds for newly connected gamepads */
223
- static configureDefaultBinds(binds: Partial<Record<string, BindableCode[]>>): void;
223
+ static configureDefaultBinds(binds: Partial<Record<string, GamepadCode[]>>): void;
224
224
  static defaultOptions: {
225
225
  /**
226
226
  * When set to `"physical"` _(default)_, ABXY refer to the equivalent
@@ -252,7 +252,7 @@ export declare class GamepadDevice {
252
252
  * // ...
253
253
  * }
254
254
  */
255
- binds: Partial<Record<string, BindableCode[]>>;
255
+ binds: Partial<Record<string, GamepadCode[]>>;
256
256
  joystick: {
257
257
  /**
258
258
  * The range of movement in a joystick recognized as input, to
@@ -340,17 +340,17 @@ export declare class GamepadDevice {
340
340
  /** @returns true if any button from the named bind is pressed. */
341
341
  pressedBind(name: string): boolean;
342
342
  /** @returns true if any of the given buttons are pressed. */
343
- pressedAny(btns: BindableCode[]): boolean;
343
+ pressedAny(btns: GamepadCode[]): boolean;
344
344
  /** @returns true if all of the given buttons are pressed. */
345
- pressedAll(btns: BindableCode[]): boolean;
345
+ pressedAll(btns: GamepadCode[]): boolean;
346
346
  /** Set named binds for this gamepad */
347
- configureBinds(binds: Partial<Record<string, BindableCode[]>>): void;
347
+ configureBinds(binds: Partial<Record<string, GamepadCode[]>>): void;
348
348
  /** Add an event listener */
349
- on<K extends keyof GamepadDeviceEvent>(event: K, listener: (event: GamepadDeviceEvent[K]) => void): this;
349
+ on<K extends keyof GamepadDeviceEvent>(event: K, listener: (event: GamepadDeviceEvent[K]) => void, options?: EventOptions): this;
350
350
  /** Remove an event listener (or all if none provided). */
351
351
  off<K extends keyof GamepadDeviceEvent>(event: K, listener?: (event: GamepadDeviceEvent[K]) => void): this;
352
352
  /** Add a named bind event listener (or all if none provided). */
353
- onBind(name: string, listener: (event: GamepadNamedBindEvent) => void): this;
353
+ onBind(name: string, listener: (event: GamepadNamedBindEvent) => void, options?: EventOptions): this;
354
354
  /** Remove a named bind event listener (or all if none provided). */
355
355
  offBind(name: string, listener?: (event: GamepadNamedBindEvent) => void): this;
356
356
  /**
@@ -455,11 +455,11 @@ export declare class KeyboardDevice {
455
455
  /** Set custom binds */
456
456
  configureBinds(binds: Partial<Record<string, KeyCode[]>>): void;
457
457
  /** Add an event listener. */
458
- on<K extends keyof KeyboardDeviceEvent>(event: K, listener: (event: KeyboardDeviceEvent[K]) => void): this;
458
+ on<K extends keyof KeyboardDeviceEvent>(event: K, listener: (event: KeyboardDeviceEvent[K]) => void, options?: EventOptions): this;
459
459
  /** Remove an event listener (or all if none provided). */
460
460
  off<K extends keyof KeyboardDeviceEvent>(event: K, listener?: (event: KeyboardDeviceEvent[K]) => void): this;
461
461
  /** Add a named bind event listener (or all if none provided). */
462
- onBind(name: string, listener: (event: KeyboardDeviceNamedBindKeydownEvent) => void): this;
462
+ onBind(name: string, listener: (event: KeyboardDeviceNamedBindKeydownEvent) => void, options?: EventOptions): this;
463
463
  /** Remove a named bind event listener (or all if none provided). */
464
464
  offBind(name: string, listener?: (event: KeyboardDeviceNamedBindKeydownEvent) => void): this;
465
465
  /**
@@ -688,6 +688,9 @@ export interface CustomDevice {
688
688
  */
689
689
  clear?(): void;
690
690
  }
691
+ export interface EventOptions {
692
+ once?: boolean;
693
+ }
691
694
  export interface GamepadAxisEvent {
692
695
  device: GamepadDevice;
693
696
  axis: Axis;
@@ -761,14 +764,14 @@ export interface NavigationResponder {
761
764
  }
762
765
  export type Axis = (typeof Axis)[keyof typeof Axis];
763
766
  export type AxisCode = typeof AxisCode[number];
764
- /**
765
- * Bindable codes for button and joystick events.
766
- */
767
- export type BindableCode = ButtonCode | AxisCode;
768
767
  export type Button = (typeof Button)[keyof typeof Button];
769
768
  export type ButtonCode = typeof ButtonCode[number];
770
769
  export type Device = GamepadDevice | KeyboardDevice | CustomDevice;
771
770
  export type GamepadButtonDownEvent = (gamepad: GamepadDevice, button: Button) => void;
771
+ /**
772
+ * Bindable codes for button and joystick events.
773
+ */
774
+ export type GamepadCode = ButtonCode | AxisCode;
772
775
  export type GamepadDeviceEvent = {
773
776
  bind: GamepadNamedBindEvent;
774
777
  } & {
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- const e=0,t=1,i=2,s=3,n=["LeftStickLeft","LeftStickRight","LeftStickUp","LeftStickDown","RightStickLeft","RightStickRight","RightStickUp","RightStickDown"],o={A:0,B:1,X:2,Y:3,LeftShoulder:4,RightShoulder:5,LeftTrigger:6,RightTrigger:7,Back:8,Start:9,LeftStickClick:10,RightStickClick:11,DPadUp:12,DPadDown:13,DPadLeft:14,DPadRight:15},a=["A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight"];let r=new Map;function throttle(e,t){var i;const s=Date.now();return(null!==(i=r.get(e))&&void 0!==i?i:0)>s||(r.set(e,s+t),!1)}class EventEmitter{constructor(){this._listeners={}}hasListener(e){return void 0!==this._listeners[e]}emit(e,t){var i;null===(i=this._listeners[e])||void 0===i||i.forEach((e=>e(t)))}on(e,t){var i;this._listeners[e]||(this._listeners[e]=[]),null===(i=this._listeners[e])||void 0===i||i.push(t)}off(e,t){var i,s;this._listeners[e]=void 0===t||null===(i=this._listeners[e])||void 0===i?void 0:i.filter((e=>e!==t)),0===(null===(s=this._listeners[e])||void 0===s?void 0:s.length)&&(this._listeners[e]=void 0)}}class GamepadDevice{static configureDefaultBinds(e){this.defaultOptions.binds=Object.assign(Object.assign({},this.defaultOptions.binds),e)}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.button[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.button[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return this._bindEmitter.on(e,t),this}offBind(e,t){return this._bindEmitter.off(e,t),this}playVibration({duration:e=200,weakMagnitude:t=.5,strongMagnitude:i=.5,vibrationType:s="dual-rumble",rightTrigger:n=0,leftTrigger:o=0,startDelay:a=0}={}){if(!this.options.vibration.enabled)return;if(!this.source.vibrationActuator)return;const r=this.options.vibration.intensity;try{this.source.vibrationActuator.playEffect(s,{duration:e,startDelay:a,weakMagnitude:r*t,strongMagnitude:r*i,leftTrigger:r*o,rightTrigger:r*n})}catch(e){}}update(e,t){this.updatePresses(e,t),this.source=e}clear(){this.button=[...n,...a].reduce(((e,t)=>(e[t]=!1,e)),{})}constructor(e){this.source=e,this.type="gamepad",this.meta={},this.lastInteraction=performance.now(),this.options=JSON.parse(JSON.stringify(GamepadDevice.defaultOptions)),this.leftJoystick={x:0,y:0},this.rightJoystick={x:0,y:0},this.button=[...a,...n].reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this.leftTrigger=0,this.rightTrigger=0,this.leftShoulder=0,this.rightShoulder=0,this.id="gamepad"+e.index,this.layout=function detectLayout(e){const t=(e.id||"").toLowerCase();return/(steam|28de)/.test(t)?"steam":/(logitech|046d|c216)/.test(t)?"logitech":/(nintendo|switch|joycon|057e)/.test(t)?"nintendo":/(dualshock|dualsense|sony|054c|0ce6|0810)/.test(t)?"playstation":/(xbox|xinput|045e|028e|0291|02a0|02a1|02ea|02ff)/.test(t)?"xbox":"standard"}(e)}updatePresses(r,d){var c,u,l,h,g,p,m;const v=this.options.joystick;for(let e=0;e<4;e++){const t=_scale(r.axes[e],v.deadzone),i=n[2*e+(t>0?1:0)];if(Math.abs(t)<v.threshold)this.button[i]=!1;else{const t=v.autoRepeatDelayMs[+this.button[i]];this.button[i]=!0,throttle(i,t)||(this.lastInteraction=d,this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,axis:e,axisCode:i}))),Object.entries(this.options.binds).forEach((([t,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"axis",axis:e,axisCode:i,name:t};this._bindEmitter.emit(t,s),this._emitter.emit("bind",s)}))})))}}for(let e=0;e<16;e++){let t=e;"nintendo"===this.layout&&"none"!==this.options.nintendoRemapMode&&("physical"===this.options.nintendoRemapMode?t===o.B?t=o.A:t===o.A?t=o.B:t===o.X?t=o.Y:t===o.Y&&(t=o.X):t===o.B?t=o.X:t===o.X&&(t=o.B));const i=a[t];if(this.button[i]===(null===(c=r.buttons[e])||void 0===c?void 0:c.pressed))continue;this.lastInteraction=d;const s=null!==(l=null===(u=r.buttons[e])||void 0===u?void 0:u.pressed)&&void 0!==l&&l;this.button[i]=s,s&&(this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,button:t,buttonCode:i}))),Object.entries(this.options.binds).forEach((([e,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"button",button:t,buttonCode:i,name:e};this._bindEmitter.emit(e,s),this._emitter.emit("bind",s)}))})))}const f=this.options.trigger.deadzone;this.leftTrigger=_scale(r.buttons[o.LeftTrigger].value,f),this.rightTrigger=_scale(r.buttons[o.RightTrigger].value,f),this.leftShoulder=_scale(r.buttons[o.LeftShoulder].value,f),this.rightShoulder=_scale(r.buttons[o.RightShoulder].value,f);const y=v.deadzone;this.leftJoystick.x=_scale(null!==(h=r.axes[e])&&void 0!==h?h:0,y),this.leftJoystick.y=_scale(null!==(g=r.axes[t])&&void 0!==g?g:0,y),this.rightJoystick.x=_scale(null!==(p=r.axes[i])&&void 0!==p?p:0,y),this.rightJoystick.y=_scale(null!==(m=r.axes[s])&&void 0!==m?m:0,y)}}function _scale(e,t){const i=(Math.abs(e)-t[0])/(t[1]-t[0]);return i>=0&&i<=1?Math.sign(e)*i:i>1?1*Math.sign(e):0}GamepadDevice.defaultOptions={nintendoRemapMode:"physical",binds:{"navigate.back":["B","Back"],"navigate.down":["DPadDown","LeftStickDown"],"navigate.left":["DPadLeft","LeftStickLeft"],"navigate.right":["DPadRight","LeftStickRight"],"navigate.trigger":["A"],"navigate.up":["DPadUp","LeftStickUp"]},joystick:{deadzone:[0,1],threshold:.25,autoRepeatDelayMs:[400,80]},trigger:{deadzone:[0,1]},vibration:{enabled:!0,intensity:1}};const d={AltLeft:"AltLeft",AltRight:"AltRight",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",ArrowUp:"ArrowUp",Backquote:"Backquote",Backslash:"Backslash",Backspace:"Backspace",BracketLeft:"BracketLeft",BracketRight:"BracketRight",CapsLock:"CapsLock",Comma:"Comma",ContextMenu:"ContextMenu",ControlLeft:"ControlLeft",ControlRight:"ControlRight",Delete:"Delete",Digit0:"Digit0",Digit1:"Digit1",Digit2:"Digit2",Digit3:"Digit3",Digit4:"Digit4",Digit5:"Digit5",Digit6:"Digit6",Digit7:"Digit7",Digit8:"Digit8",Digit9:"Digit9",End:"End",Enter:"Enter",Equal:"Equal",Escape:"Escape",F1:"F1",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F2:"F2",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F3:"F3",F30:"F30",F31:"F31",F32:"F32",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",Home:"Home",IntlBackslash:"IntlBackslash",IntlRo:"IntlRo",IntlYen:"IntlYen",KeyA:"KeyA",KeyB:"KeyB",KeyC:"KeyC",KeyD:"KeyD",KeyE:"KeyE",KeyF:"KeyF",KeyG:"KeyG",KeyH:"KeyH",KeyI:"KeyI",KeyJ:"KeyJ",KeyK:"KeyK",KeyL:"KeyL",KeyM:"KeyM",KeyN:"KeyN",KeyO:"KeyO",KeyP:"KeyP",KeyQ:"KeyQ",KeyR:"KeyR",KeyS:"KeyS",KeyT:"KeyT",KeyU:"KeyU",KeyV:"KeyV",KeyW:"KeyW",KeyX:"KeyX",KeyY:"KeyY",KeyZ:"KeyZ",Lang1:"Lang1",Lang2:"Lang2",MediaTrackNext:"MediaTrackNext",MediaTrackPrevious:"MediaTrackPrevious",MetaLeft:"MetaLeft",MetaRight:"MetaRight",Minus:"Minus",NumLock:"NumLock",Numpad0:"Numpad0",Numpad1:"Numpad1",Numpad2:"Numpad2",Numpad3:"Numpad3",Numpad4:"Numpad4",Numpad5:"Numpad5",Numpad6:"Numpad6",Numpad7:"Numpad7",Numpad8:"Numpad8",Numpad9:"Numpad9",NumpadAdd:"NumpadAdd",NumpadComma:"NumpadComma",NumpadDecimal:"NumpadDecimal",NumpadDivide:"NumpadDivide",NumpadMultiply:"NumpadMultiply",NumpadSubtract:"NumpadSubtract",OSLeft:"OSLeft",Pause:"Pause",Period:"Period",Quote:"Quote",ScrollLock:"ScrollLock",Semicolon:"Semicolon",ShiftLeft:"ShiftLeft",ShiftRight:"ShiftRight",Slash:"Slash",Space:"Space",Tab:"Tab",VolumeDown:"VolumeDown",VolumeMute:"VolumeMute",VolumeUp:"VolumeUp",WakeUp:"WakeUp"};function __awaiter(e,t,i,s){return new(i||(i=Promise))((function(n,o){function fulfilled(e){try{step(s.next(e))}catch(e){o(e)}}function rejected(e){try{step(s.throw(e))}catch(e){o(e)}}function step(e){e.done?n(e.value):function adopt(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))}let c,u;"function"==typeof SuppressedError&&SuppressedError;const l=["fr","mg","lu"],h=["ab","ba","be","bg","ch","kk","ky","mk","mn","ru","sr","tg","tt","uk","uz"],g=["de","cs","sk","sl","hu","hr","bs","ro","sq","me","lt","lv","et"],p=/ф|и|с|в|у|а|п|р|ш|о|л|д|ь|т|щ|з|й|к|ы|е|г|м|ц|ч|н|я|ё|х|ъ|б|ю|э|ж|и/i,m=/[a-z]/i;function inferKeyboardLayoutFromLang(e=function getLang(){var e;const t=navigator;return null!=(null===(e=t.languages)||void 0===e?void 0:e.length)?t.languages[0]:t.userLanguage||t.language||t.browserLanguage}()){const t=(e||"").toLowerCase(),i=t.split("-")[0];return l.includes(i)||t.startsWith("nl-be")?"AZERTY":h.includes(i)?"JCUKEN":g.includes(i)||t.startsWith("sr-latn")?"QWERTZ":"QWERTY"}const v=new Set(["AZERTY","JCUKEN","QWERTY","QWERTZ"]);function getLayoutKeyLabel(e,t){var i,s;if(void 0===u){const e={ArrowLeft:"⬅",ArrowRight:"➡",ArrowUp:"⬆",ArrowDown:"⬇",AltLeft:"Left Alt",AltRight:"Right Alt",Backquote:"`",Backslash:"\\",Backspace:"Backspace",BracketLeft:"[",BracketRight:"]",CapsLock:"CapsLock",Comma:",",ContextMenu:"Context Menu",ControlLeft:"Left Ctrl",ControlRight:"Right Ctrl",Delete:"Delete",Digit0:"0",Digit1:"1",Digit2:"2",Digit3:"3",Digit4:"4",Digit5:"5",Digit6:"6",Digit7:"7",Digit8:"8",Digit9:"9",End:"End",Enter:"Enter",Equal:"=",Escape:"Esc",F1:"F1",F2:"F2",F3:"F3",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F30:"F30",F31:"F31",F32:"F32",Home:"Home",IntlBackslash:"\\",IntlRo:"Ro",IntlYen:"¥",KeyA:"A",KeyB:"B",KeyC:"C",KeyD:"D",KeyE:"E",KeyF:"F",KeyG:"G",KeyH:"H",KeyI:"I",KeyJ:"J",KeyK:"K",KeyL:"L",KeyM:"M",KeyN:"N",KeyO:"O",KeyP:"P",KeyQ:"Q",KeyR:"R",KeyS:"S",KeyT:"T",KeyU:"U",KeyV:"V",KeyW:"W",KeyX:"X",KeyY:"Y",KeyZ:"Z",Lang1:"Language 1",Lang2:"Language 2",MediaTrackNext:"Next Track",MediaTrackPrevious:"Previous Track",MetaLeft:"Left "+getMetaKeyLabel(),MetaRight:"Right "+getMetaKeyLabel(),Minus:"-",NumLock:"Num Lock",Numpad0:"Num0",Numpad1:"Num1",Numpad2:"Num2",Numpad3:"Num3",Numpad4:"Num4",Numpad5:"Num5",Numpad6:"Num6",Numpad7:"Num7",Numpad8:"Num8",Numpad9:"Num9",NumpadAdd:"+",NumpadComma:",",NumpadDecimal:".",NumpadDivide:"/",NumpadMultiply:"*",NumpadSubtract:"-",OSLeft:"OS Left",Pause:"Pause",Period:".",Quote:"'",ScrollLock:"Scroll Lock",Semicolon:";",ShiftLeft:"Left Shift",ShiftRight:"Right Shift",Slash:"/",Space:"Space",Tab:"Tab",VolumeDown:"Volume Down",VolumeMute:"Volume Mute",VolumeUp:"Volume Up",WakeUp:"Wake Up"};u={AZERTY:{KeyA:"Q",KeyQ:"A",KeyW:"Z",KeyZ:"W",Backquote:"²",BracketLeft:"«",BracketRight:"»"},JCUKEN:{KeyA:"Ф",KeyB:"И",KeyC:"С",KeyD:"В",KeyE:"У",KeyF:"А",KeyG:"П",KeyH:"Р",KeyI:"Ш",KeyJ:"О",KeyK:"Л",KeyL:"Д",KeyM:"Ь",KeyN:"Т",KeyO:"Щ",KeyP:"З",KeyQ:"Й",KeyR:"К",KeyS:"Ы",KeyT:"Е",KeyU:"Г",KeyV:"М",KeyW:"Ц",KeyX:"Ч",KeyY:"Н",KeyZ:"Я",Backquote:"Ё",BracketLeft:"х",BracketRight:"ъ",Comma:"Б",Period:"Ю",Quote:"Э",Semicolon:"Ж",Slash:"И"},QWERTY:e,QWERTZ:{KeyY:"Z",KeyZ:"Y",BracketLeft:"ü",BracketRight:"ö",Slash:"-"}}}return null!==(s=null!==(i=u[t][e])&&void 0!==i?i:u.QWERTY[e])&&void 0!==s?s:e}function getMetaKeyLabel(){var e,t,i,s;const n=navigator,o=null!==(t=null===(e=n.platform)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",a=null!==(s=null===(i=n.userAgent)||void 0===i?void 0:i.toLowerCase())&&void 0!==s?s:"";return o.includes("mac")?"⌘":o.includes("win")||o.includes("linux")?"⊞":a.includes("android")?"Search":a.includes("iphone")||a.includes("ipad")?"⌘":"⊞"}class KeyboardDevice{constructor(){this.type="keyboard",this.id="keyboard",this.meta={},this.lastInteraction=performance.now(),this.detectLayoutOnKeypress=!0,this.detected=!1,this.options={binds:{"navigate.back":["Escape","Backspace"],"navigate.down":["ArrowDown","KeyS"],"navigate.left":["ArrowLeft","KeyA"],"navigate.right":["ArrowRight","KeyD"],"navigate.trigger":["Enter","Space"],"navigate.up":["ArrowUp","KeyW"]},repeatableBinds:["navigate.down","navigate.left","navigate.right","navigate.up"]},this.key=Object.keys(d).reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._deferredKeydown=[],this._layout=inferKeyboardLayoutFromLang(),this._layoutSource="lang",function requestKeyboardLayout(){return __awaiter(this,void 0,void 0,(function*(){const e=navigator;if(e.keyboard&&e.keyboard.getLayoutMap)try{const t=yield e.keyboard.getLayoutMap();c=t;const i=t.get("KeyQ"),s=t.get("KeyA"),n=t.get("KeyZ");if("a"===i&&"w"===n&&"q"===s)return"AZERTY";if("q"===i&&"y"===n&&"a"===s)return"QWERTZ";if("q"===i&&"z"===n&&"a"===s)return"QWERTY";if("й"===i&&"я"===n&&"ф"===s)return"JCUKEN"}catch(e){}}))}().then((e=>{void 0!==e&&(this._layoutSource="browser",this._layout=e,this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layoutSource:"browser",layout:e,device:this}))})),this._configureEventListeners()}get layout(){return this._layout}set layout(e){this._layoutSource="manual",this._layout=e,this.detectLayoutOnKeypress=!1}get layoutSource(){return this._layoutSource}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.key[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.key[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return this._bindEmitter.on(e,t),this}offBind(e,t){return this._bindEmitter.off(e,t),this}getKeyLabel(e,t){var i;return t?getLayoutKeyLabel(e,t):null!==(i=function getNavigatorKeyLabel(e){const t=null==c?void 0:c.get(e);return void 0===t?void 0:function _toLocaleTitleCase(e){return e.split(/\s+/).map((e=>e.charAt(0).toLocaleUpperCase()+e.slice(1))).join(" ")}(t)}(e))&&void 0!==i?i:getLayoutKeyLabel(e,null!=t?t:this._layout)}update(e){this._deferredKeydown.length>0&&(this._deferredKeydown.forEach((e=>this._processDeferredKeydownEvent(e))),this._deferredKeydown.length=0)}clear(){for(const e of Object.keys(d))this.key[e]=!1}_configureEventListeners(){const e=this.key,t=this._deferredKeydown;window.addEventListener("keydown",(i=>{e[i.code]=!0,t.push(i),this.lastInteraction=performance.now()}),{passive:!0,capture:!0}),window.addEventListener("keyup",(t=>{e[t.code]=!1,this.lastInteraction=performance.now()}),{passive:!0,capture:!0})}_processDeferredKeydownEvent(e){const t=e.code;if(!e.repeat){if(this.detectLayoutOnKeypress&&"lang"===this._layoutSource){const t=function detectKeyboardLayoutFromKeydown(e){const t=e.key.toLowerCase(),i=e.code;return p.test(t)?(v.delete("AZERTY"),v.delete("QWERTY"),v.delete("QWERTZ")):"Backquote"===i&&"²"===t||"BracketLeft"===i&&"«"===t||"BracketRight"===i&&"»"===t||"KeyA"===i&&"q"===t||"KeyQ"===i&&"a"===t||"KeyW"===i&&"z"===t||"KeyZ"===i&&"w"===t?(v.delete("JCUKEN"),v.delete("QWERTY"),v.delete("QWERTZ")):"BracketLeft"===i&&"ü"===t||"BracketRight"===i&&"ö"===t||"KeyY"===i&&"z"===t||"KeyZ"===i&&"y"===t||"Slash"===i&&"-"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTY")):"BracketLeft"===i&&"["===t||"BracketRight"===i&&"]"===t||"KeyZ"===i&&"z"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTZ")):"KeyQ"===i&&"q"===t||"KeyW"===i&&"w"===t?(v.delete("AZERTY"),v.delete("JCUKEN")):"KeyY"===i&&"y"===t?(v.delete("QWERTZ"),v.delete("JCUKEN")):m.test(t)&&v.delete("JCUKEN"),1===v.size?[...v][0]:void 0}(e);void 0!==t&&(this._layout=t,this._layoutSource="keypress",this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layout:t,layoutSource:"keypress",device:this}))}this._emitter.hasListener(t)&&setTimeout((()=>this._emitter.emit(t,{device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e})))}Object.entries(this.options.binds).forEach((([i,s])=>{s.includes(t)&&(e.repeat&&!this.options.repeatableBinds.includes(i)||setTimeout((()=>{const s={device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e,name:i,repeat:e.repeat};this._bindEmitter.emit(i,s),this._emitter.emit("bind",s)})))}))}}KeyboardDevice.global=new KeyboardDevice;class InputDeviceManager{constructor(){this.isMobile=(()=>{let e=!1;var t;return t=navigator.userAgent||navigator.vendor,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4)))&&(e=!0),e})(),this.isTouchCapable=function isTouchCapable(){return"ontouchstart"in window||navigator.maxTouchPoints>0}(),this.options={requireFocus:!0,clearInputInBackground:!0},this._devices=[],this._gamepadDevices=[],this._gamepadDeviceMap=new Map,this._customDevices=[],this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._hasFocus=!1,this.keyboard=KeyboardDevice.global,this.isTouchCapable||this.isMobile?window.addEventListener("keydown",(()=>this.add(this.keyboard)),{once:!0}):this.add(this.keyboard),window.addEventListener("gamepadconnected",(()=>this._pollGamepads(performance.now()))),window.addEventListener("gamepaddisconnected",(e=>this._removeGamepad(e.gamepad.index)))}get devices(){return this._devices}get gamepads(){return this._gamepadDevices}get custom(){return this._customDevices}get lastInteractedDevice(){return this._lastInteractedDevice}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.on(e,t))),this}offBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.off(e,t))),this}emitBind(e){this._bindEmitter.emit(e.name,e)}add(e){-1===this._devices.indexOf(e)&&(this._devices.push(e),e instanceof KeyboardDevice?(e.detected=!0,e.on("bind",(e=>this.emitBind(e)))):e instanceof GamepadDevice?(this._gamepadDeviceMap.set(e.source.index,e),this._gamepadDevices.push(e),e.on("bind",(e=>this.emitBind(e)))):this._customDevices.push(e),this._emitter.emit("deviceadded",{device:e}))}remove(e){if(!(e instanceof KeyboardDevice||e instanceof GamepadDevice)){const t=this._customDevices.indexOf(e);-1!==t&&this._devices.splice(t,1)}const t=this._devices.indexOf(e);-1!==t&&(this._devices.splice(t,1),this._emitter.emit("deviceremoved",{device:e}))}update(){if(this.options.requireFocus&&!document.hasFocus())return this._hasFocus&&this.options.clearInputInBackground&&this.devices.forEach((e=>{var t;return null===(t=e.clear)||void 0===t?void 0:t.call(e)})),this._hasFocus=!1,this._devices;this._hasFocus=!0;const e=performance.now();return this.keyboard.detected&&this.keyboard.update(e),this._gamepadDevices.length>0&&this._pollGamepads(e),this._customDevices.length>0&&this._customDevices.forEach((t=>t.update(e))),this._updateLastInteracted(),this._devices}_updateLastInteracted(){if(0===this._devices.length)return;let e;if(1===this._devices.length)e=this._devices[0];else for(const t of this._devices)(void 0===e||t.lastInteraction>e.lastInteraction)&&(e=t);this._lastInteractedDevice=e}_pollGamepads(e){if(!document.hasFocus())return this._gamepadDevices;if(void 0===navigator.getGamepads)return this._gamepadDevices;for(const t of navigator.getGamepads())if(null!=t)if(this._gamepadDeviceMap.has(t.index)){this._gamepadDeviceMap.get(t.index).update(t,e)}else{const i=new GamepadDevice(t);this.add(i),i.update(t,e)}return this._gamepadDevices}_removeGamepad(e){const t=this._gamepadDeviceMap.get(e);if(!t)return;const i=this._gamepadDevices.indexOf(t);-1!==i&&this._gamepadDevices.splice(i,1),this.remove(t),this._gamepadDeviceMap.delete(e)}}InputDeviceManager.global=new InputDeviceManager;const f=InputDeviceManager.global;function getAllNavigatables(e,t=[]){var i;for(const s of null!==(i=e.children)&&void 0!==i?i:[])s.isNavigatable?t.push(s):getAllNavigatables(s,t);return t}function getFirstNavigatable(e,t,i,{minimumDistance:s=0}={}){return function chooseFirstNavigatableInDirection(e,t,i,s=0){var n,o,a,r,d,c,u,l,h;const g=e.filter((e=>e.isNavigatable&&null!=e.parent&&isVisible(e))),p=g.find((e=>e===t));if(void 0===p)return g.sort(((e,t)=>t.navigationPriority-e.navigationPriority)),g[0];if(void 0===i&&p)return p;const m=null!=p?p:g[Math.floor(Math.random()*g.length)];if(void 0===p)return null!==(n=e[0])&&void 0!==n?n:m;const v=p.getGlobalPosition(),f=p.getBounds(),y={x:v.x+f.left+f.width/2,y:v.y+f.top+f.height/2},b=g.filter((e=>e!==p)).map((e=>{const t=e.getGlobalPosition(),i=e.getBounds(),s={x:t.x+i.left+i.width/2,y:t.y+i.top+i.height/2};return{element:e,bounds:i,center:s,xDistSqrd:weightedDistSquared(s,y,1,3),yDistSqrd:weightedDistSquared(s,y,3,1)}}));switch(i){case"navigate.up":return null!==(a=null===(o=b.filter((e=>e.center.y<y.y-s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===o?void 0:o.element)&&void 0!==a?a:m;case"navigate.left":return null!==(d=null===(r=b.filter((e=>e.center.x<y.x-s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===r?void 0:r.element)&&void 0!==d?d:m;case"navigate.right":return null!==(u=null===(c=b.filter((e=>e.center.x>y.x+s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===c?void 0:c.element)&&void 0!==u?u:m;case"navigate.down":return null!==(h=null===(l=b.filter((e=>e.center.y>y.y+s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===l?void 0:l.element)&&void 0!==h?h:m;default:return p}}(getAllNavigatables(e),t,i,s)}function isChildOf(e,t){for(;null!=e;){if(e===t)return!0;e=e.parent}return!1}function weightedDistSquared(e,t,i,s){const n=t.x-e.x,o=t.y-e.y;return n*n*i+o*o*s}function isVisible(e){for(;null!=e;){if(!e.visible)return!1;e=e.parent}return!0}const y=["navigate.left","navigate.right","navigate.up","navigate.down","navigate.back","navigate.trigger"];class NavigationManager{constructor(){this.options={useFallbackHoverEffect:!0,minimumDirectionDistance:10},this.enabled=!1,this._responders=[]}get focusTarget(){var e,t;return null!==(t=null===(e=this.responders.find((e=>null!=e.focusTarget&&isVisible(e.focusTarget))))||void 0===e?void 0:e.focusTarget)&&void 0!==t?t:this._rootFocused}set focusTarget(e){const t=this.focusTarget;if(t===e)return;const i=this.getResponderStage();i&&(!e||e.isNavigatable&&isChildOf(e,i))&&(t&&this._emitBlur(t),e&&this._emitFocus(e),this.firstResponder?this.firstResponder.focusTarget=e:this._rootFocused=e)}get firstResponder(){return this._responders[0]}get responders(){return this._responders}configureWithRoot(e){null==this._root&&f.onBind(y,(e=>this._propagate(e))),this._root=e,this.enabled=!0}popResponder(){var e,t,i,s,n;const o=this.focusTarget,a=this._responders.shift();a.focusTarget=void 0;const r=this.focusTarget;return null===(e=null==a?void 0:a.resignedAsFirstResponder)||void 0===e||e.call(a),this._invalidateFocusedIfNeeded(),this.firstResponder&&(null===(i=(t=this.firstResponder).becameFirstResponder)||void 0===i||i.call(t)),o!==r&&(null!==(n=null===(s=this.firstResponder)||void 0===s?void 0:s.autoFocus)&&void 0!==n?n:void 0===r)&&this.autoFocus(),a}pushResponder(e){var t,i,s;const n=e;if(this._responders.includes(n))throw new Error("Responder already in stack.");const o=this.firstResponder;this._responders.unshift(n),null===(t=null==o?void 0:o.resignedAsFirstResponder)||void 0===t||t.call(o),this._invalidateFocusedIfNeeded(),null===(i=n.becameFirstResponder)||void 0===i||i.call(n),(null===(s=n.autoFocus)||void 0===s||s)&&this.autoFocus()}autoFocus(){if(!b.enabled)return;const e=this.getResponderStage();if(!e)return;const t=getFirstNavigatable(e);void 0!==t?t!==this.focusTarget&&(this.focusTarget=t):console.debug("navigation: no navigatable containers found")}getResponderStage(){var e;return null!==(e=this.responders.find(isContainer))&&void 0!==e?e:this._root}_propagate({device:e,name:t}){var i;if(this.enabled){for(const s of this._responders)if(null===(i=s.handledNavigationIntent)||void 0===i?void 0:i.call(s,t,e))return;if(null==this._root)throw this.enabled=!1,new Error("Navigation requires root responder to be configured");{const e=this.getResponderStage();this._handleGlobalIntent(e,t)}}}_handleGlobalIntent(e,t){var i;this._invalidateFocusedIfNeeded(e);const s=this.focusTarget;if(void 0===s)return void this.autoFocus();if("navigate.back"===t)return this._emitBlur(s),void(this.focusTarget=void 0);if("navigate.trigger"===t)return void this._emitTrigger(s);const n=null!==(i=getFirstNavigatable(e,s,t,{minimumDistance:this.options.minimumDirectionDistance}))&&void 0!==i?i:s;n!==s&&(this.focusTarget=n)}_emitBlur(e){const t=e.eventNames();t.includes("pointerout")?e.emit("pointerout"):t.includes("mouseout")?e.emit("mouseout"):this.options.useFallbackHoverEffect&&(e.alpha=1),e.emit("deviceout")}_emitFocus(e){const t=e.eventNames();t.includes("pointerover")?e.emit("pointerover"):t.includes("mouseover")?e.emit("mouseover"):this.options.useFallbackHoverEffect&&(e.alpha=.5),e.emit("deviceover")}_emitTrigger(e){const t=e.eventNames();t.includes("pointerdown")?e.emit("pointerdown"):t.includes("mousedown")?e.emit("mousedown"):this.options.useFallbackHoverEffect&&(e.alpha=.75),e.emit("devicedown")}_invalidateFocusedIfNeeded(e=this.getResponderStage()){if(!e)return;const t=this.focusTarget;t&&!isChildOf(t,e)&&(this._emitBlur(t),this.focusTarget=void 0)}}function isContainer(e){return"children"in e}NavigationManager.global=new NavigationManager;const b=NavigationManager.global;let K=!1;function registerPixiJSNavigationMixin(e){if(K)return;K=!0;const t=e.prototype;t.navigationPriority=0,t.navigationMode="auto",Object.defineProperty(t,"isNavigatable",{get:function(){if("target"===this.navigationMode)return!0;if("none"===this.navigationMode)return!1;const e=this.eventNames();return e.includes("pointerdown")||e.includes("mousedown")},configurable:!0,enumerable:!1})}export{o as Button,GamepadDevice,f as InputDevice,d as KeyCode,KeyboardDevice,b as UINavigation,getAllNavigatables,getFirstNavigatable,isChildOf,isVisible,y as navigationIntents,registerPixiJSNavigationMixin};
1
+ const e=0,t=1,i=2,s=3,n=["LeftStickLeft","LeftStickRight","LeftStickUp","LeftStickDown","RightStickLeft","RightStickRight","RightStickUp","RightStickDown"],o={A:0,B:1,X:2,Y:3,LeftShoulder:4,RightShoulder:5,LeftTrigger:6,RightTrigger:7,Back:8,Start:9,LeftStickClick:10,RightStickClick:11,DPadUp:12,DPadDown:13,DPadLeft:14,DPadRight:15},a=["A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight"];let r=new Map;function throttle(e,t){var i;const s=Date.now();return(null!==(i=r.get(e))&&void 0!==i?i:0)>s||(r.set(e,s+t),!1)}class EventEmitter{constructor(){this._listeners={}}hasListener(e){return void 0!==this._listeners[e]}emit(e,t){var i;null===(i=this._listeners[e])||void 0===i||i.forEach((e=>e(t)))}on(e,t,i){var s,n;if(this._listeners[e]||(this._listeners[e]=[]),null==i?void 0:i.once){const onceFn=i=>{t(i),this.off(e,onceFn)};null===(s=this._listeners[e])||void 0===s||s.push(onceFn)}else null===(n=this._listeners[e])||void 0===n||n.push(t)}off(e,t){var i,s;this._listeners[e]=void 0===t||null===(i=this._listeners[e])||void 0===i?void 0:i.filter((e=>e!==t)),0===(null===(s=this._listeners[e])||void 0===s?void 0:s.length)&&(this._listeners[e]=void 0)}}class GamepadDevice{static configureDefaultBinds(e){this.defaultOptions.binds=Object.assign(Object.assign({},this.defaultOptions.binds),e)}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.button[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.button[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t,i){return this._emitter.on(e,t,i),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return this._bindEmitter.on(e,t,i),this}offBind(e,t){return this._bindEmitter.off(e,t),this}playVibration({duration:e=200,weakMagnitude:t=.5,strongMagnitude:i=.5,vibrationType:s="dual-rumble",rightTrigger:n=0,leftTrigger:o=0,startDelay:a=0}={}){if(!this.options.vibration.enabled)return;if(!this.source.vibrationActuator)return;const r=this.options.vibration.intensity;try{this.source.vibrationActuator.playEffect(s,{duration:e,startDelay:a,weakMagnitude:r*t,strongMagnitude:r*i,leftTrigger:r*o,rightTrigger:r*n})}catch(e){}}update(e,t){this.updatePresses(e,t),this.source=e}clear(){this.button=[...n,...a].reduce(((e,t)=>(e[t]=!1,e)),{})}constructor(e){this.source=e,this.type="gamepad",this.meta={},this.lastInteraction=performance.now(),this.options=JSON.parse(JSON.stringify(GamepadDevice.defaultOptions)),this.leftJoystick={x:0,y:0},this.rightJoystick={x:0,y:0},this.button=[...a,...n].reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this.leftTrigger=0,this.rightTrigger=0,this.leftShoulder=0,this.rightShoulder=0,this.id="gamepad"+e.index,this.layout=function detectLayout(e){const t=(e.id||"").toLowerCase();return/(steam|28de)/.test(t)?"steam":/(logitech|046d|c216)/.test(t)?"logitech":/(nintendo|switch|joycon|057e)/.test(t)?"nintendo":/(dualshock|dualsense|sony|054c|0ce6|0810)/.test(t)?"playstation":/(xbox|xinput|045e|028e|0291|02a0|02a1|02ea|02ff)/.test(t)?"xbox":"standard"}(e)}updatePresses(r,d){var u,c,l,h,g,p,m;const v=this.options.joystick;for(let e=0;e<4;e++){const t=_scale(r.axes[e],v.deadzone),i=n[2*e+(t>0?1:0)];if(Math.abs(t)<v.threshold)this.button[i]=!1;else{const t=v.autoRepeatDelayMs[+this.button[i]];this.button[i]=!0,throttle(i,t)||(this.lastInteraction=d,this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,axis:e,axisCode:i}))),Object.entries(this.options.binds).forEach((([t,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"axis",axis:e,axisCode:i,name:t};this._bindEmitter.emit(t,s),this._emitter.emit("bind",s)}))})))}}for(let e=0;e<16;e++){let t=e;"nintendo"===this.layout&&"none"!==this.options.nintendoRemapMode&&("physical"===this.options.nintendoRemapMode?t===o.B?t=o.A:t===o.A?t=o.B:t===o.X?t=o.Y:t===o.Y&&(t=o.X):t===o.B?t=o.X:t===o.X&&(t=o.B));const i=a[t];if(this.button[i]===(null===(u=r.buttons[e])||void 0===u?void 0:u.pressed))continue;this.lastInteraction=d;const s=null!==(l=null===(c=r.buttons[e])||void 0===c?void 0:c.pressed)&&void 0!==l&&l;this.button[i]=s,s&&(this._emitter.hasListener(i)&&setTimeout((()=>this._emitter.emit(i,{device:this,button:t,buttonCode:i}))),Object.entries(this.options.binds).forEach((([e,s])=>{s.includes(i)&&setTimeout((()=>{const s={device:this,type:"button",button:t,buttonCode:i,name:e};this._bindEmitter.emit(e,s),this._emitter.emit("bind",s)}))})))}const f=this.options.trigger.deadzone;this.leftTrigger=_scale(r.buttons[o.LeftTrigger].value,f),this.rightTrigger=_scale(r.buttons[o.RightTrigger].value,f),this.leftShoulder=_scale(r.buttons[o.LeftShoulder].value,f),this.rightShoulder=_scale(r.buttons[o.RightShoulder].value,f);const y=v.deadzone;this.leftJoystick.x=_scale(null!==(h=r.axes[e])&&void 0!==h?h:0,y),this.leftJoystick.y=_scale(null!==(g=r.axes[t])&&void 0!==g?g:0,y),this.rightJoystick.x=_scale(null!==(p=r.axes[i])&&void 0!==p?p:0,y),this.rightJoystick.y=_scale(null!==(m=r.axes[s])&&void 0!==m?m:0,y)}}function _scale(e,t){const i=(Math.abs(e)-t[0])/(t[1]-t[0]);return i>=0&&i<=1?Math.sign(e)*i:i>1?1*Math.sign(e):0}GamepadDevice.defaultOptions={nintendoRemapMode:"physical",binds:{"navigate.back":["B","Back"],"navigate.down":["DPadDown","LeftStickDown"],"navigate.left":["DPadLeft","LeftStickLeft"],"navigate.right":["DPadRight","LeftStickRight"],"navigate.trigger":["A"],"navigate.up":["DPadUp","LeftStickUp"]},joystick:{deadzone:[0,1],threshold:.25,autoRepeatDelayMs:[400,80]},trigger:{deadzone:[0,1]},vibration:{enabled:!0,intensity:1}};const d={AltLeft:"AltLeft",AltRight:"AltRight",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",ArrowUp:"ArrowUp",Backquote:"Backquote",Backslash:"Backslash",Backspace:"Backspace",BracketLeft:"BracketLeft",BracketRight:"BracketRight",CapsLock:"CapsLock",Comma:"Comma",ContextMenu:"ContextMenu",ControlLeft:"ControlLeft",ControlRight:"ControlRight",Delete:"Delete",Digit0:"Digit0",Digit1:"Digit1",Digit2:"Digit2",Digit3:"Digit3",Digit4:"Digit4",Digit5:"Digit5",Digit6:"Digit6",Digit7:"Digit7",Digit8:"Digit8",Digit9:"Digit9",End:"End",Enter:"Enter",Equal:"Equal",Escape:"Escape",F1:"F1",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F2:"F2",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F3:"F3",F30:"F30",F31:"F31",F32:"F32",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",Home:"Home",IntlBackslash:"IntlBackslash",IntlRo:"IntlRo",IntlYen:"IntlYen",KeyA:"KeyA",KeyB:"KeyB",KeyC:"KeyC",KeyD:"KeyD",KeyE:"KeyE",KeyF:"KeyF",KeyG:"KeyG",KeyH:"KeyH",KeyI:"KeyI",KeyJ:"KeyJ",KeyK:"KeyK",KeyL:"KeyL",KeyM:"KeyM",KeyN:"KeyN",KeyO:"KeyO",KeyP:"KeyP",KeyQ:"KeyQ",KeyR:"KeyR",KeyS:"KeyS",KeyT:"KeyT",KeyU:"KeyU",KeyV:"KeyV",KeyW:"KeyW",KeyX:"KeyX",KeyY:"KeyY",KeyZ:"KeyZ",Lang1:"Lang1",Lang2:"Lang2",MediaTrackNext:"MediaTrackNext",MediaTrackPrevious:"MediaTrackPrevious",MetaLeft:"MetaLeft",MetaRight:"MetaRight",Minus:"Minus",NumLock:"NumLock",Numpad0:"Numpad0",Numpad1:"Numpad1",Numpad2:"Numpad2",Numpad3:"Numpad3",Numpad4:"Numpad4",Numpad5:"Numpad5",Numpad6:"Numpad6",Numpad7:"Numpad7",Numpad8:"Numpad8",Numpad9:"Numpad9",NumpadAdd:"NumpadAdd",NumpadComma:"NumpadComma",NumpadDecimal:"NumpadDecimal",NumpadDivide:"NumpadDivide",NumpadMultiply:"NumpadMultiply",NumpadSubtract:"NumpadSubtract",OSLeft:"OSLeft",Pause:"Pause",Period:"Period",Quote:"Quote",ScrollLock:"ScrollLock",Semicolon:"Semicolon",ShiftLeft:"ShiftLeft",ShiftRight:"ShiftRight",Slash:"Slash",Space:"Space",Tab:"Tab",VolumeDown:"VolumeDown",VolumeMute:"VolumeMute",VolumeUp:"VolumeUp",WakeUp:"WakeUp"};function __awaiter(e,t,i,s){return new(i||(i=Promise))((function(n,o){function fulfilled(e){try{step(s.next(e))}catch(e){o(e)}}function rejected(e){try{step(s.throw(e))}catch(e){o(e)}}function step(e){e.done?n(e.value):function adopt(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))}let u,c;"function"==typeof SuppressedError&&SuppressedError;const l=["fr","mg","lu"],h=["ab","ba","be","bg","ch","kk","ky","mk","mn","ru","sr","tg","tt","uk","uz"],g=["de","cs","sk","sl","hu","hr","bs","ro","sq","me","lt","lv","et"],p=/ф|и|с|в|у|а|п|р|ш|о|л|д|ь|т|щ|з|й|к|ы|е|г|м|ц|ч|н|я|ё|х|ъ|б|ю|э|ж|и/i,m=/[a-z]/i;function inferKeyboardLayoutFromLang(e=function getLang(){var e;const t=navigator;return null!=(null===(e=t.languages)||void 0===e?void 0:e.length)?t.languages[0]:t.userLanguage||t.language||t.browserLanguage}()){const t=(e||"").toLowerCase(),i=t.split("-")[0];return l.includes(i)||t.startsWith("nl-be")?"AZERTY":h.includes(i)?"JCUKEN":g.includes(i)||t.startsWith("sr-latn")?"QWERTZ":"QWERTY"}const v=new Set(["AZERTY","JCUKEN","QWERTY","QWERTZ"]);function getLayoutKeyLabel(e,t){var i,s;if(void 0===c){const e={ArrowLeft:"⬅",ArrowRight:"➡",ArrowUp:"⬆",ArrowDown:"⬇",AltLeft:"Left Alt",AltRight:"Right Alt",Backquote:"`",Backslash:"\\",Backspace:"Backspace",BracketLeft:"[",BracketRight:"]",CapsLock:"CapsLock",Comma:",",ContextMenu:"Context Menu",ControlLeft:"Left Ctrl",ControlRight:"Right Ctrl",Delete:"Delete",Digit0:"0",Digit1:"1",Digit2:"2",Digit3:"3",Digit4:"4",Digit5:"5",Digit6:"6",Digit7:"7",Digit8:"8",Digit9:"9",End:"End",Enter:"Enter",Equal:"=",Escape:"Esc",F1:"F1",F2:"F2",F3:"F3",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",F10:"F10",F11:"F11",F12:"F12",F13:"F13",F14:"F14",F15:"F15",F16:"F16",F17:"F17",F18:"F18",F19:"F19",F20:"F20",F21:"F21",F22:"F22",F23:"F23",F24:"F24",F25:"F25",F26:"F26",F27:"F27",F28:"F28",F29:"F29",F30:"F30",F31:"F31",F32:"F32",Home:"Home",IntlBackslash:"\\",IntlRo:"Ro",IntlYen:"¥",KeyA:"A",KeyB:"B",KeyC:"C",KeyD:"D",KeyE:"E",KeyF:"F",KeyG:"G",KeyH:"H",KeyI:"I",KeyJ:"J",KeyK:"K",KeyL:"L",KeyM:"M",KeyN:"N",KeyO:"O",KeyP:"P",KeyQ:"Q",KeyR:"R",KeyS:"S",KeyT:"T",KeyU:"U",KeyV:"V",KeyW:"W",KeyX:"X",KeyY:"Y",KeyZ:"Z",Lang1:"Language 1",Lang2:"Language 2",MediaTrackNext:"Next Track",MediaTrackPrevious:"Previous Track",MetaLeft:"Left "+getMetaKeyLabel(),MetaRight:"Right "+getMetaKeyLabel(),Minus:"-",NumLock:"Num Lock",Numpad0:"Num0",Numpad1:"Num1",Numpad2:"Num2",Numpad3:"Num3",Numpad4:"Num4",Numpad5:"Num5",Numpad6:"Num6",Numpad7:"Num7",Numpad8:"Num8",Numpad9:"Num9",NumpadAdd:"+",NumpadComma:",",NumpadDecimal:".",NumpadDivide:"/",NumpadMultiply:"*",NumpadSubtract:"-",OSLeft:"OS Left",Pause:"Pause",Period:".",Quote:"'",ScrollLock:"Scroll Lock",Semicolon:";",ShiftLeft:"Left Shift",ShiftRight:"Right Shift",Slash:"/",Space:"Space",Tab:"Tab",VolumeDown:"Volume Down",VolumeMute:"Volume Mute",VolumeUp:"Volume Up",WakeUp:"Wake Up"};c={AZERTY:{KeyA:"Q",KeyQ:"A",KeyW:"Z",KeyZ:"W",Backquote:"²",BracketLeft:"«",BracketRight:"»"},JCUKEN:{KeyA:"Ф",KeyB:"И",KeyC:"С",KeyD:"В",KeyE:"У",KeyF:"А",KeyG:"П",KeyH:"Р",KeyI:"Ш",KeyJ:"О",KeyK:"Л",KeyL:"Д",KeyM:"Ь",KeyN:"Т",KeyO:"Щ",KeyP:"З",KeyQ:"Й",KeyR:"К",KeyS:"Ы",KeyT:"Е",KeyU:"Г",KeyV:"М",KeyW:"Ц",KeyX:"Ч",KeyY:"Н",KeyZ:"Я",Backquote:"Ё",BracketLeft:"х",BracketRight:"ъ",Comma:"Б",Period:"Ю",Quote:"Э",Semicolon:"Ж",Slash:"И"},QWERTY:e,QWERTZ:{KeyY:"Z",KeyZ:"Y",BracketLeft:"ü",BracketRight:"ö",Slash:"-"}}}return null!==(s=null!==(i=c[t][e])&&void 0!==i?i:c.QWERTY[e])&&void 0!==s?s:e}function getMetaKeyLabel(){var e,t,i,s;const n=navigator,o=null!==(t=null===(e=n.platform)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",a=null!==(s=null===(i=n.userAgent)||void 0===i?void 0:i.toLowerCase())&&void 0!==s?s:"";return o.includes("mac")?"⌘":o.includes("win")||o.includes("linux")?"⊞":a.includes("android")?"Search":a.includes("iphone")||a.includes("ipad")?"⌘":"⊞"}class KeyboardDevice{constructor(){this.type="keyboard",this.id="keyboard",this.meta={},this.lastInteraction=performance.now(),this.detectLayoutOnKeypress=!0,this.detected=!1,this.options={binds:{"navigate.back":["Escape","Backspace"],"navigate.down":["ArrowDown","KeyS"],"navigate.left":["ArrowLeft","KeyA"],"navigate.right":["ArrowRight","KeyD"],"navigate.trigger":["Enter","Space"],"navigate.up":["ArrowUp","KeyW"]},repeatableBinds:["navigate.down","navigate.left","navigate.right","navigate.up"]},this.key=Object.keys(d).reduce(((e,t)=>(e[t]=!1,e)),{}),this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._deferredKeydown=[],this._layout=inferKeyboardLayoutFromLang(),this._layoutSource="lang",function requestKeyboardLayout(){return __awaiter(this,void 0,void 0,(function*(){const e=navigator;if(e.keyboard&&e.keyboard.getLayoutMap)try{const t=yield e.keyboard.getLayoutMap();u=t;const i=t.get("KeyQ"),s=t.get("KeyA"),n=t.get("KeyZ");if("a"===i&&"w"===n&&"q"===s)return"AZERTY";if("q"===i&&"y"===n&&"a"===s)return"QWERTZ";if("q"===i&&"z"===n&&"a"===s)return"QWERTY";if("й"===i&&"я"===n&&"ф"===s)return"JCUKEN"}catch(e){}}))}().then((e=>{void 0!==e&&(this._layoutSource="browser",this._layout=e,this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layoutSource:"browser",layout:e,device:this}))})),this._configureEventListeners()}get layout(){return this._layout}set layout(e){this._layoutSource="manual",this._layout=e,this.detectLayoutOnKeypress=!1}get layoutSource(){return this._layoutSource}pressedBind(e){return void 0!==this.options.binds[e]&&this.pressedAny(this.options.binds[e])}pressedAny(e){for(let t=0;t<e.length;t++)if(this.key[e[t]])return!0;return!1}pressedAll(e){for(let t=0;t<e.length;t++)if(!this.key[e[t]])return!1;return!0}configureBinds(e){this.options.binds=Object.assign(Object.assign({},this.options.binds),e)}on(e,t,i){return this._emitter.on(e,t,i),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return this._bindEmitter.on(e,t,i),this}offBind(e,t){return this._bindEmitter.off(e,t),this}getKeyLabel(e,t){var i;return t?getLayoutKeyLabel(e,t):null!==(i=function getNavigatorKeyLabel(e){const t=null==u?void 0:u.get(e);return void 0===t?void 0:function _toLocaleTitleCase(e){return e.split(/\s+/).map((e=>e.charAt(0).toLocaleUpperCase()+e.slice(1))).join(" ")}(t)}(e))&&void 0!==i?i:getLayoutKeyLabel(e,null!=t?t:this._layout)}update(e){this._deferredKeydown.length>0&&(this._deferredKeydown.forEach((e=>this._processDeferredKeydownEvent(e))),this._deferredKeydown.length=0)}clear(){for(const e of Object.keys(d))this.key[e]=!1}_configureEventListeners(){const e=this.key,t=this._deferredKeydown;window.addEventListener("keydown",(i=>{e[i.code]=!0,t.push(i),this.lastInteraction=performance.now()}),{passive:!0,capture:!0}),window.addEventListener("keyup",(t=>{e[t.code]=!1,this.lastInteraction=performance.now()}),{passive:!0,capture:!0})}_processDeferredKeydownEvent(e){const t=e.code;if(!e.repeat){if(this.detectLayoutOnKeypress&&"lang"===this._layoutSource){const t=function detectKeyboardLayoutFromKeydown(e){const t=e.key.toLowerCase(),i=e.code;return p.test(t)?(v.delete("AZERTY"),v.delete("QWERTY"),v.delete("QWERTZ")):"Backquote"===i&&"²"===t||"BracketLeft"===i&&"«"===t||"BracketRight"===i&&"»"===t||"KeyA"===i&&"q"===t||"KeyQ"===i&&"a"===t||"KeyW"===i&&"z"===t||"KeyZ"===i&&"w"===t?(v.delete("JCUKEN"),v.delete("QWERTY"),v.delete("QWERTZ")):"BracketLeft"===i&&"ü"===t||"BracketRight"===i&&"ö"===t||"KeyY"===i&&"z"===t||"KeyZ"===i&&"y"===t||"Slash"===i&&"-"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTY")):"BracketLeft"===i&&"["===t||"BracketRight"===i&&"]"===t||"KeyZ"===i&&"z"===t?(v.delete("AZERTY"),v.delete("JCUKEN"),v.delete("QWERTZ")):"KeyQ"===i&&"q"===t||"KeyW"===i&&"w"===t?(v.delete("AZERTY"),v.delete("JCUKEN")):"KeyY"===i&&"y"===t?(v.delete("QWERTZ"),v.delete("JCUKEN")):m.test(t)&&v.delete("JCUKEN"),1===v.size?[...v][0]:void 0}(e);void 0!==t&&(this._layout=t,this._layoutSource="keypress",this.detectLayoutOnKeypress=!1,this._emitter.emit("layoutdetected",{layout:t,layoutSource:"keypress",device:this}))}this._emitter.hasListener(t)&&setTimeout((()=>this._emitter.emit(t,{device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e})))}Object.entries(this.options.binds).forEach((([i,s])=>{s.includes(t)&&(e.repeat&&!this.options.repeatableBinds.includes(i)||setTimeout((()=>{const s={device:this,keyCode:t,keyLabel:this.getKeyLabel(t),event:e,name:i,repeat:e.repeat};this._bindEmitter.emit(i,s),this._emitter.emit("bind",s)})))}))}}KeyboardDevice.global=new KeyboardDevice;class InputDeviceManager{constructor(){this.isMobile=(()=>{let e=!1;var t;return t=navigator.userAgent||navigator.vendor,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4)))&&(e=!0),e})(),this.isTouchCapable=function isTouchCapable(){return"ontouchstart"in window||navigator.maxTouchPoints>0}(),this.options={requireFocus:!0,clearInputInBackground:!0},this._devices=[],this._gamepadDevices=[],this._gamepadDeviceMap=new Map,this._customDevices=[],this._emitter=new EventEmitter,this._bindEmitter=new EventEmitter,this._hasFocus=!1,this.keyboard=KeyboardDevice.global,this.isTouchCapable||this.isMobile?window.addEventListener("keydown",(()=>this.add(this.keyboard)),{once:!0}):this.add(this.keyboard),window.addEventListener("gamepadconnected",(()=>this._pollGamepads(performance.now()))),window.addEventListener("gamepaddisconnected",(e=>this._removeGamepad(e.gamepad.index)))}get devices(){return this._devices}get gamepads(){return this._gamepadDevices}get custom(){return this._customDevices}get lastInteractedDevice(){return this._lastInteractedDevice}on(e,t){return this._emitter.on(e,t),this}off(e,t){return this._emitter.off(e,t),this}onBind(e,t,i){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.on(e,t,i))),this}offBind(e,t){return(e=Array.isArray(e)?e:[e]).forEach((e=>this._bindEmitter.off(e,t))),this}emitBind(e){this._bindEmitter.emit(e.name,e)}add(e){-1===this._devices.indexOf(e)&&(this._devices.push(e),e instanceof KeyboardDevice?(e.detected=!0,e.on("bind",(e=>this.emitBind(e)))):e instanceof GamepadDevice?(this._gamepadDeviceMap.set(e.source.index,e),this._gamepadDevices.push(e),e.on("bind",(e=>this.emitBind(e)))):this._customDevices.push(e),this._emitter.emit("deviceadded",{device:e}))}remove(e){if(!(e instanceof KeyboardDevice||e instanceof GamepadDevice)){const t=this._customDevices.indexOf(e);-1!==t&&this._devices.splice(t,1)}const t=this._devices.indexOf(e);-1!==t&&(this._devices.splice(t,1),this._emitter.emit("deviceremoved",{device:e}))}update(){if(this.options.requireFocus&&!document.hasFocus())return this._hasFocus&&this.options.clearInputInBackground&&this.devices.forEach((e=>{var t;return null===(t=e.clear)||void 0===t?void 0:t.call(e)})),this._hasFocus=!1,this._devices;this._hasFocus=!0;const e=performance.now();return this.keyboard.detected&&this.keyboard.update(e),this._gamepadDevices.length>0&&this._pollGamepads(e),this._customDevices.length>0&&this._customDevices.forEach((t=>t.update(e))),this._updateLastInteracted(),this._devices}_updateLastInteracted(){if(0===this._devices.length)return;let e;if(1===this._devices.length)e=this._devices[0];else for(const t of this._devices)(void 0===e||t.lastInteraction>e.lastInteraction)&&(e=t);this._lastInteractedDevice=e}_pollGamepads(e){if(!document.hasFocus())return this._gamepadDevices;if(void 0===navigator.getGamepads)return this._gamepadDevices;for(const t of navigator.getGamepads())if(null!=t)if(this._gamepadDeviceMap.has(t.index)){this._gamepadDeviceMap.get(t.index).update(t,e)}else{const i=new GamepadDevice(t);this.add(i),i.update(t,e)}return this._gamepadDevices}_removeGamepad(e){const t=this._gamepadDeviceMap.get(e);if(!t)return;const i=this._gamepadDevices.indexOf(t);-1!==i&&this._gamepadDevices.splice(i,1),this.remove(t),this._gamepadDeviceMap.delete(e)}}InputDeviceManager.global=new InputDeviceManager;const f=InputDeviceManager.global;function getAllNavigatables(e,t=[]){var i;for(const s of null!==(i=e.children)&&void 0!==i?i:[])s.isNavigatable?t.push(s):getAllNavigatables(s,t);return t}function getFirstNavigatable(e,t,i,{minimumDistance:s=0}={}){return function chooseFirstNavigatableInDirection(e,t,i,s=0){var n,o,a,r,d,u,c,l,h;const g=e.filter((e=>e.isNavigatable&&null!=e.parent&&isVisible(e))),p=g.find((e=>e===t));if(void 0===p)return g.sort(((e,t)=>t.navigationPriority-e.navigationPriority)),g[0];if(void 0===i&&p)return p;const m=null!=p?p:g[Math.floor(Math.random()*g.length)];if(void 0===p)return null!==(n=e[0])&&void 0!==n?n:m;const v=p.getGlobalPosition(),f=p.getBounds(),y={x:v.x+f.left+f.width/2,y:v.y+f.top+f.height/2},b=g.filter((e=>e!==p)).map((e=>{const t=e.getGlobalPosition(),i=e.getBounds(),s={x:t.x+i.left+i.width/2,y:t.y+i.top+i.height/2};return{element:e,bounds:i,center:s,xDistSqrd:weightedDistSquared(s,y,1,3),yDistSqrd:weightedDistSquared(s,y,3,1)}}));switch(i){case"navigate.up":return null!==(a=null===(o=b.filter((e=>e.center.y<y.y-s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===o?void 0:o.element)&&void 0!==a?a:m;case"navigate.left":return null!==(d=null===(r=b.filter((e=>e.center.x<y.x-s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===r?void 0:r.element)&&void 0!==d?d:m;case"navigate.right":return null!==(c=null===(u=b.filter((e=>e.center.x>y.x+s)).sort(((e,t)=>e.xDistSqrd-t.xDistSqrd))[0])||void 0===u?void 0:u.element)&&void 0!==c?c:m;case"navigate.down":return null!==(h=null===(l=b.filter((e=>e.center.y>y.y+s)).sort(((e,t)=>e.yDistSqrd-t.yDistSqrd))[0])||void 0===l?void 0:l.element)&&void 0!==h?h:m;default:return p}}(getAllNavigatables(e),t,i,s)}function isChildOf(e,t){for(;null!=e;){if(e===t)return!0;e=e.parent}return!1}function weightedDistSquared(e,t,i,s){const n=t.x-e.x,o=t.y-e.y;return n*n*i+o*o*s}function isVisible(e){for(;null!=e;){if(!e.visible)return!1;e=e.parent}return!0}const y=["navigate.left","navigate.right","navigate.up","navigate.down","navigate.back","navigate.trigger"];class NavigationManager{constructor(){this.options={useFallbackHoverEffect:!0,minimumDirectionDistance:10},this.enabled=!1,this._responders=[]}get focusTarget(){var e,t;return null!==(t=null===(e=this.responders.find((e=>null!=e.focusTarget&&isVisible(e.focusTarget))))||void 0===e?void 0:e.focusTarget)&&void 0!==t?t:this._rootFocused}set focusTarget(e){const t=this.focusTarget;if(t===e)return;const i=this.getResponderStage();i&&(!e||e.isNavigatable&&isChildOf(e,i))&&(t&&this._emitBlur(t),e&&this._emitFocus(e),this.firstResponder?this.firstResponder.focusTarget=e:this._rootFocused=e)}get firstResponder(){return this._responders[0]}get responders(){return this._responders}configureWithRoot(e){null==this._root&&f.onBind(y,(e=>this._propagate(e))),this._root=e,this.enabled=!0}popResponder(){var e,t,i,s,n;const o=this.focusTarget,a=this._responders.shift();a.focusTarget=void 0;const r=this.focusTarget;return null===(e=null==a?void 0:a.resignedAsFirstResponder)||void 0===e||e.call(a),this._invalidateFocusedIfNeeded(),this.firstResponder&&(null===(i=(t=this.firstResponder).becameFirstResponder)||void 0===i||i.call(t)),o!==r&&(null!==(n=null===(s=this.firstResponder)||void 0===s?void 0:s.autoFocus)&&void 0!==n?n:void 0===r)&&this.autoFocus(),a}pushResponder(e){var t,i,s;const n=e;if(this._responders.includes(n))throw new Error("Responder already in stack.");const o=this.firstResponder;this._responders.unshift(n),null===(t=null==o?void 0:o.resignedAsFirstResponder)||void 0===t||t.call(o),this._invalidateFocusedIfNeeded(),null===(i=n.becameFirstResponder)||void 0===i||i.call(n),(null===(s=n.autoFocus)||void 0===s||s)&&this.autoFocus()}autoFocus(){if(!b.enabled)return;const e=this.getResponderStage();if(!e)return;const t=getFirstNavigatable(e);void 0!==t?t!==this.focusTarget&&(this.focusTarget=t):console.debug("navigation: no navigatable containers found")}getResponderStage(){var e;return null!==(e=this.responders.find(isContainer))&&void 0!==e?e:this._root}_propagate({device:e,name:t}){var i;if(this.enabled){for(const s of this._responders)if(null===(i=s.handledNavigationIntent)||void 0===i?void 0:i.call(s,t,e))return;if(null==this._root)throw this.enabled=!1,new Error("Navigation requires root responder to be configured");{const e=this.getResponderStage();this._handleGlobalIntent(e,t)}}}_handleGlobalIntent(e,t){var i;this._invalidateFocusedIfNeeded(e);const s=this.focusTarget;if(void 0===s)return void this.autoFocus();if("navigate.back"===t)return this._emitBlur(s),void(this.focusTarget=void 0);if("navigate.trigger"===t)return void this._emitTrigger(s);const n=null!==(i=getFirstNavigatable(e,s,t,{minimumDistance:this.options.minimumDirectionDistance}))&&void 0!==i?i:s;n!==s&&(this.focusTarget=n)}_emitBlur(e){const t=e.eventNames();t.includes("pointerout")?e.emit("pointerout"):t.includes("mouseout")?e.emit("mouseout"):this.options.useFallbackHoverEffect&&(e.alpha=1),e.emit("deviceout")}_emitFocus(e){const t=e.eventNames();t.includes("pointerover")?e.emit("pointerover"):t.includes("mouseover")?e.emit("mouseover"):this.options.useFallbackHoverEffect&&(e.alpha=.5),e.emit("deviceover")}_emitTrigger(e){const t=e.eventNames();t.includes("pointerdown")?e.emit("pointerdown"):t.includes("mousedown")?e.emit("mousedown"):this.options.useFallbackHoverEffect&&(e.alpha=.75),e.emit("devicedown")}_invalidateFocusedIfNeeded(e=this.getResponderStage()){if(!e)return;const t=this.focusTarget;t&&!isChildOf(t,e)&&(this._emitBlur(t),this.focusTarget=void 0)}}function isContainer(e){return"children"in e}NavigationManager.global=new NavigationManager;const b=NavigationManager.global;let K=!1;function registerPixiJSNavigationMixin(e){if(K)return;K=!0;const t=e.prototype;t.navigationPriority=0,t.navigationMode="auto",Object.defineProperty(t,"isNavigatable",{get:function(){if("target"===this.navigationMode)return!0;if("none"===this.navigationMode)return!1;const e=this.eventNames();return e.includes("pointerdown")||e.includes("mousedown")},configurable:!0,enumerable:!1})}export{o as Button,GamepadDevice,f as InputDevice,d as KeyCode,KeyboardDevice,b as UINavigation,getAllNavigatables,getFirstNavigatable,isChildOf,isVisible,y as navigationIntents,registerPixiJSNavigationMixin};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/lib/devices/gamepads/buttons.ts","../src/lib/utils/throttle.ts","../src/lib/utils/events.ts","../src/lib/devices/gamepads/GamepadDevice.ts","../src/lib/devices/gamepads/layouts.ts","../src/lib/devices/keyboard/keys.ts","../node_modules/tslib/tslib.es6.js","../src/lib/devices/keyboard/layouts.ts","../src/lib/devices/keyboard/KeyboardDevice.ts","../src/lib/InputDevice.ts","../src/lib/utils/detectors.ts","../src/lib/navigation/Navigatable.ts","../src/lib/navigation/NavigationIntent.ts","../src/lib/navigation/UINavigation.ts","../src/Container.mixin.ts"],"sourcesContent":[null,null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null],"names":["Axis","AxisCode","Button","A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight","ButtonCode","_cooldowns","Map","throttle","id","cooldownMs","now","Date","_a","get","undefined","set","EventEmitter","constructor","this","_listeners","hasListener","e","emit","payload","forEach","fn","on","event","push","off","filter","l","_b","length","GamepadDevice","configureDefaultBinds","binds","defaultOptions","Object","assign","pressedBind","name","options","pressedAny","btns","i","button","pressedAll","configureBinds","listener","_emitter","onBind","_bindEmitter","offBind","playVibration","duration","weakMagnitude","strongMagnitude","vibrationType","rightTrigger","leftTrigger","startDelay","vibration","enabled","source","vibrationActuator","intensity","playEffect","update","updatePresses","clear","reduce","obj","key","type","meta","lastInteraction","performance","JSON","parse","stringify","leftJoystick","x","y","rightJoystick","leftShoulder","rightShoulder","index","layout","detectLayout","gamepad","toLowerCase","test","joy","joystick","a","value","_scale","axes","deadzone","axisCode","Math","abs","threshold","throttleMs","autoRepeatDelayMs","setTimeout","device","axis","entries","values","includes","b","nintendoRemapMode","buttonCode","buttons","pressed","isPressed","_d","_c","tdz","trigger","jdz","range","scaled","sign","KeyCode","AltLeft","AltRight","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Backquote","Backslash","Backspace","BracketLeft","BracketRight","CapsLock","Comma","ContextMenu","ControlLeft","ControlRight","Delete","Digit0","Digit1","Digit2","Digit3","Digit4","Digit5","Digit6","Digit7","Digit8","Digit9","End","Enter","Equal","Escape","F1","F10","F11","F12","F13","F14","F15","F16","F17","F18","F19","F2","F20","F21","F22","F23","F24","F25","F26","F27","F28","F29","F3","F30","F31","F32","F4","F5","F6","F7","F8","F9","Home","IntlBackslash","IntlRo","IntlYen","KeyA","KeyB","KeyC","KeyD","KeyE","KeyF","KeyG","KeyH","KeyI","KeyJ","KeyK","KeyL","KeyM","KeyN","KeyO","KeyP","KeyQ","KeyR","KeyS","KeyT","KeyU","KeyV","KeyW","KeyX","KeyY","KeyZ","Lang1","Lang2","MediaTrackNext","MediaTrackPrevious","MetaLeft","MetaRight","Minus","NumLock","Numpad0","Numpad1","Numpad2","Numpad3","Numpad4","Numpad5","Numpad6","Numpad7","Numpad8","Numpad9","NumpadAdd","NumpadComma","NumpadDecimal","NumpadDivide","NumpadMultiply","NumpadSubtract","OSLeft","Pause","Period","Quote","ScrollLock","Semicolon","ShiftLeft","ShiftRight","Slash","Space","Tab","VolumeDown","VolumeMute","VolumeUp","WakeUp","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","adopt","then","apply","_navigatorLayoutMap","_keyLabels","SuppressedError","MACRO_AZERTY","MACRO_JCUKEN","MACRO_QWERTZ","JCUKEN_REGEX","xxERTx_REGEX","inferKeyboardLayoutFromLang","lang","getLang","n","navigator","languages","userLanguage","language","browserLanguage","tag","macro","split","startsWith","_possibleLayouts","Set","getLayoutKeyLabel","DEFAULT_LABELS","getMetaKeyLabel","AZERTY","JCUKEN","QWERTY","QWERTZ","platform","userAgent","KeyboardDevice","detectLayoutOnKeypress","detected","repeatableBinds","keys","_deferredKeydown","_layout","_layoutSource","requestKeyboardLayout","keyboard","getLayoutMap","layoutMap","q","z","layoutSource","_configureEventListeners","getKeyLabel","getNavigatorKeyLabel","_toLocaleTitleCase","input","map","word","charAt","toLocaleUpperCase","slice","join","_processDeferredKeydownEvent","k","d","window","addEventListener","code","passive","capture","keyCode","repeat","detectKeyboardLayoutFromKeydown","delete","size","keyLabel","global","InputDeviceManager","isMobile","check","vendor","substr","isTouchCapable","maxTouchPoints","requireFocus","clearInputInBackground","_devices","_gamepadDevices","_gamepadDeviceMap","_customDevices","_hasFocus","add","once","_pollGamepads","_removeGamepad","devices","gamepads","custom","lastInteractedDevice","_lastInteractedDevice","Array","isArray","emitBind","indexOf","remove","customIndex","splice","devicesIndex","document","hasFocus","_updateLastInteracted","last","getGamepads","has","gamepadIndex","gamepadsIndex","InputDevice","getAllNavigatables","target","navigatables","child","children","isNavigatable","getFirstNavigatable","root","currentFocus","nearestDirection","minimumDistance","chooseFirstNavigatableInDirection","elements","el","parent","isVisible","focusedElement","find","sort","navigationPriority","fallbackElement","floor","random","focusedGlobalPos","getGlobalPosition","focusedBounds","getBounds","focusedCenter","left","width","top","height","otherElements","globalPos","bounds","center","element","xDistSqrd","weightedDistSquared","yDistSqrd","_e","_g","_f","_j","_h","isChildOf","xw","yw","dx","dy","visible","navigationIntents","NavigationManager","useFallbackHoverEffect","minimumDirectionDistance","_responders","focusTarget","responders","res","_rootFocused","previous","responderStage","getResponderStage","_emitBlur","_emitFocus","firstResponder","configureWithRoot","stage","_root","_propagate","popResponder","previousFocused","responder","shift","nextFocused","resignedAsFirstResponder","_invalidateFocusedIfNeeded","becameFirstResponder","autoFocus","pushResponder","Error","previousResponder","unshift","call","UINavigation","navigatable","console","debug","isContainer","handledNavigationIntent","_handleGlobalIntent","intent","_emitTrigger","nextTarget","eventNames","alpha","_registered","registerPixiJSNavigationMixin","container","prototype","navigationMode","defineProperty","onEvents","configurable","enumerable"],"mappings":"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","x_google_ignoreList":[6]}
1
+ {"version":3,"file":"index.mjs","sources":["../src/lib/devices/gamepads/buttons.ts","../src/lib/utils/throttle.ts","../src/lib/utils/events.ts","../src/lib/devices/gamepads/GamepadDevice.ts","../src/lib/devices/gamepads/layouts.ts","../src/lib/devices/keyboard/keys.ts","../node_modules/tslib/tslib.es6.js","../src/lib/devices/keyboard/layouts.ts","../src/lib/devices/keyboard/KeyboardDevice.ts","../src/lib/InputDevice.ts","../src/lib/utils/detectors.ts","../src/lib/navigation/Navigatable.ts","../src/lib/navigation/NavigationIntent.ts","../src/lib/navigation/UINavigation.ts","../src/Container.mixin.ts"],"sourcesContent":[null,null,null,null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n",null,null,null,null,null,null,null,null],"names":["Axis","AxisCode","Button","A","B","X","Y","LeftShoulder","RightShoulder","LeftTrigger","RightTrigger","Back","Start","LeftStickClick","RightStickClick","DPadUp","DPadDown","DPadLeft","DPadRight","ButtonCode","_cooldowns","Map","throttle","id","cooldownMs","now","Date","_a","get","undefined","set","EventEmitter","constructor","this","_listeners","hasListener","e","emit","payload","forEach","fn","on","event","options","once","onceFn","off","push","_b","filter","l","length","GamepadDevice","configureDefaultBinds","binds","defaultOptions","Object","assign","pressedBind","name","pressedAny","btns","i","button","pressedAll","configureBinds","listener","_emitter","onBind","_bindEmitter","offBind","playVibration","duration","weakMagnitude","strongMagnitude","vibrationType","rightTrigger","leftTrigger","startDelay","vibration","enabled","source","vibrationActuator","intensity","playEffect","update","updatePresses","clear","reduce","obj","key","type","meta","lastInteraction","performance","JSON","parse","stringify","leftJoystick","x","y","rightJoystick","leftShoulder","rightShoulder","index","layout","detectLayout","gamepad","toLowerCase","test","joy","joystick","a","value","_scale","axes","deadzone","axisCode","Math","abs","threshold","throttleMs","autoRepeatDelayMs","setTimeout","device","axis","entries","values","includes","b","nintendoRemapMode","buttonCode","buttons","pressed","isPressed","_d","_c","tdz","trigger","jdz","range","scaled","sign","KeyCode","AltLeft","AltRight","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Backquote","Backslash","Backspace","BracketLeft","BracketRight","CapsLock","Comma","ContextMenu","ControlLeft","ControlRight","Delete","Digit0","Digit1","Digit2","Digit3","Digit4","Digit5","Digit6","Digit7","Digit8","Digit9","End","Enter","Equal","Escape","F1","F10","F11","F12","F13","F14","F15","F16","F17","F18","F19","F2","F20","F21","F22","F23","F24","F25","F26","F27","F28","F29","F3","F30","F31","F32","F4","F5","F6","F7","F8","F9","Home","IntlBackslash","IntlRo","IntlYen","KeyA","KeyB","KeyC","KeyD","KeyE","KeyF","KeyG","KeyH","KeyI","KeyJ","KeyK","KeyL","KeyM","KeyN","KeyO","KeyP","KeyQ","KeyR","KeyS","KeyT","KeyU","KeyV","KeyW","KeyX","KeyY","KeyZ","Lang1","Lang2","MediaTrackNext","MediaTrackPrevious","MetaLeft","MetaRight","Minus","NumLock","Numpad0","Numpad1","Numpad2","Numpad3","Numpad4","Numpad5","Numpad6","Numpad7","Numpad8","Numpad9","NumpadAdd","NumpadComma","NumpadDecimal","NumpadDivide","NumpadMultiply","NumpadSubtract","OSLeft","Pause","Period","Quote","ScrollLock","Semicolon","ShiftLeft","ShiftRight","Slash","Space","Tab","VolumeDown","VolumeMute","VolumeUp","WakeUp","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","adopt","then","apply","_navigatorLayoutMap","_keyLabels","SuppressedError","MACRO_AZERTY","MACRO_JCUKEN","MACRO_QWERTZ","JCUKEN_REGEX","xxERTx_REGEX","inferKeyboardLayoutFromLang","lang","getLang","n","navigator","languages","userLanguage","language","browserLanguage","tag","macro","split","startsWith","_possibleLayouts","Set","getLayoutKeyLabel","DEFAULT_LABELS","getMetaKeyLabel","AZERTY","JCUKEN","QWERTY","QWERTZ","platform","userAgent","KeyboardDevice","detectLayoutOnKeypress","detected","repeatableBinds","keys","_deferredKeydown","_layout","_layoutSource","requestKeyboardLayout","keyboard","getLayoutMap","layoutMap","q","z","layoutSource","_configureEventListeners","getKeyLabel","getNavigatorKeyLabel","_toLocaleTitleCase","input","map","word","charAt","toLocaleUpperCase","slice","join","_processDeferredKeydownEvent","k","d","window","addEventListener","code","passive","capture","keyCode","repeat","detectKeyboardLayoutFromKeydown","delete","size","keyLabel","global","InputDeviceManager","isMobile","check","vendor","substr","isTouchCapable","maxTouchPoints","requireFocus","clearInputInBackground","_devices","_gamepadDevices","_gamepadDeviceMap","_customDevices","_hasFocus","add","_pollGamepads","_removeGamepad","devices","gamepads","custom","lastInteractedDevice","_lastInteractedDevice","Array","isArray","emitBind","indexOf","remove","customIndex","splice","devicesIndex","document","hasFocus","_updateLastInteracted","last","getGamepads","has","gamepadIndex","gamepadsIndex","InputDevice","getAllNavigatables","target","navigatables","child","children","isNavigatable","getFirstNavigatable","root","currentFocus","nearestDirection","minimumDistance","chooseFirstNavigatableInDirection","elements","el","parent","isVisible","focusedElement","find","sort","navigationPriority","fallbackElement","floor","random","focusedGlobalPos","getGlobalPosition","focusedBounds","getBounds","focusedCenter","left","width","top","height","otherElements","globalPos","bounds","center","element","xDistSqrd","weightedDistSquared","yDistSqrd","_e","_g","_f","_j","_h","isChildOf","xw","yw","dx","dy","visible","navigationIntents","NavigationManager","useFallbackHoverEffect","minimumDirectionDistance","_responders","focusTarget","responders","res","_rootFocused","previous","responderStage","getResponderStage","_emitBlur","_emitFocus","firstResponder","configureWithRoot","stage","_root","_propagate","popResponder","previousFocused","responder","shift","nextFocused","resignedAsFirstResponder","_invalidateFocusedIfNeeded","becameFirstResponder","autoFocus","pushResponder","Error","previousResponder","unshift","call","UINavigation","navigatable","console","debug","isContainer","handledNavigationIntent","_handleGlobalIntent","intent","_emitTrigger","nextTarget","eventNames","alpha","_registered","registerPixiJSNavigationMixin","container","prototype","navigationMode","defineProperty","onEvents","configurable","enumerable"],"mappings":"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","x_google_ignoreList":[6]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pixijs-input-devices",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "author": "Reece Como <reece.como@gmail.com>",
5
5
  "authors": [
6
6
  "Reece Como <reece.como@gmail.com>"