events.js 1.2 KB

12345
  1. /*
  2. All material copyright ESRI, All Rights Reserved, unless otherwise specified.
  3. See https://js.arcgis.com/4.24/esri/copyright.txt for details.
  4. */
  5. function e(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function r(r,t,n){if(!e(r))throw new TypeError("target is not a Evented or EventTarget object");if("on"in r)return r.on(t,n);if(Array.isArray(t)){const e=t.slice();for(const t of e)r.addEventListener(t,n);return{remove(){for(const t of e)r.removeEventListener(t,n)}}}return r.addEventListener(t,n),{remove(){r.removeEventListener(t,n)}}}function t(t,n,o){if(!e(t))throw new TypeError("target is not a Evented or EventTarget object");if("once"in t)return t.once(n,o);const i=r(t,n,(e=>{i.remove(),o.call(t,e)}));return{remove(){i.remove()}}}function n(e,t,n){let o=!1;const i=r(e,t,(r=>{o||n.call(e,r)}));return{resume(){o=!1},pause(){o=!0},remove(){i.remove()}}}const o={Win:"Meta",Scroll:"ScrollLock",Spacebar:" ",Down:"ArrowDown",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Del:"Delete",Apps:"ContextMenu",Esc:"Escape",Multiply:"*",Add:"+",Subtract:"-",Decimal:".",Divide:"/"};function i({key:e}){return o[e]||e}export{i as eventKey,o as ieKeyNormalizationMap,e as isEventTarget,r as on,t as once,n as pausable};