@wiggindev/utils 0.2.1 → 0.2.4

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.
File without changes
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- import { LiteralUnion } from '../LiteralUnion';
1
+ import { LiteralUnion } from '../types/LiteralUnion';
2
2
  declare type EventMap = WindowEventMap | DocumentEventMap | HTMLElementEventMap;
3
3
  export declare type EventName<M extends EventMap> = LiteralUnion<keyof M, string>;
4
4
  export declare type EventListener<M extends EventMap, N extends EventName<M>> = (event: N extends keyof M ? M[N] : Event) => void;
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- var n=function(n,t){document.addEventListener(n,t)},t=function(n,t){document.removeEventListener(n,t)},e=function(n,t){window.addEventListener(n,t)},o=function(n,t){window.removeEventListener(n,t)},i=function(n,t,e){n.addEventListener(t,e)},c=function(n,t,e){n.removeEventListener(t,e)};exports.events={document:{__proto__:null,on:n,off:t,once:function(e,o){n(e,function n(i){o(i),t(e,n)})},trigger:function(n){var t=new CustomEvent(n);document.dispatchEvent(t)}},window:{__proto__:null,on:e,off:o,once:function(n,t){e(n,function e(i){t(i),o(n,e)})},trigger:function(n){var t=new CustomEvent(n);window.dispatchEvent(t)}},element:{__proto__:null,on:i,off:c,once:function(n,t,e){i(n,t,function o(i){e(i),c(n,t,o)})},trigger:function(n,t){var e=new CustomEvent(t);n.dispatchEvent(e)}}};
1
+ var n=function(n,t){document.addEventListener(n,t)},t=function(n,t){document.removeEventListener(n,t)},e=function(n,t){window.addEventListener(n,t)},o=function(n,t){window.removeEventListener(n,t)},i=function(n,t,e){n.addEventListener(t,e)},r=function(n,t,e){n.removeEventListener(t,e)};exports.events={document:{__proto__:null,on:n,off:t,once:function(e,o){n(e,function n(i){o(i),t(e,n)})},trigger:function(n){var t=new CustomEvent(n);document.dispatchEvent(t)}},window:{__proto__:null,on:e,off:o,once:function(n,t){e(n,function e(i){t(i),o(n,e)})},trigger:function(n){var t=new CustomEvent(n);window.dispatchEvent(t)}},element:{__proto__:null,on:i,off:r,once:function(n,t,e){i(n,t,function o(i){e(i),r(n,t,o)})},trigger:function(n,t){var e=new CustomEvent(t);n.dispatchEvent(e)}}},exports.noop=function(){},exports.throttle=function(n,t){var e,o;return function(){return e||(e=!0,setTimeout(function(){return e=!1},t),o=n.apply(void 0,[].slice.call(arguments))),o}};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","wrappedListener","e","customEvent","CustomEvent","dispatchEvent"],"mappings":"AAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,mBCXjB,CAClBC,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDQ,EAAsDC,GACxDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCE,SAASU,cAAcF,KGvBvBJ,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDQ,EAAoDC,GACtDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCM,OAAOM,cAAcF,KEtBrBH,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDQ,EAAyDC,GAC3DR,EAASQ,GACTL,EAAIG,EAASP,EAAOQ,cAKL,SAACD,EAAsBP,GAC1C,IAAMU,EAAc,IAAIC,YAAYX,GACpCO,EAAQK,cAAcF"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts","../src/noop.ts","../src/throttle.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n","export const noop = () => undefined;\n","import { Callback } from './types/Callback';\n\ntype ThrottledFunction<C extends Callback> = (\n ...args: Parameters<C>\n) => ReturnType<C>;\n\nexport const throttle = <C extends Callback>(\n callback: C,\n limit: number\n): ThrottledFunction<C> => {\n let waiting: boolean;\n let prev: ReturnType<C>;\n return (...args: Parameters<C>) => {\n if (!waiting) {\n waiting = true;\n setTimeout(() => (waiting = false), limit);\n prev = callback.apply(this, args) as ReturnType<C>;\n }\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return prev;\n };\n};\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","wrappedListener","e","customEvent","CustomEvent","dispatchEvent","callback","limit","waiting","prev","setTimeout","apply","slice","call","arguments"],"mappings":"AAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,mBCXjB,CAClBC,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDQ,EAAsDC,GACxDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCE,SAASU,cAAcF,KGvBvBJ,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDQ,EAAoDC,GACtDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCM,OAAOM,cAAcF,KEtBrBH,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDQ,EAAyDC,GAC3DR,EAASQ,GACTL,EAAIG,EAASP,EAAOQ,cAKL,SAACD,EAAsBP,GAC1C,IAAMU,EAAc,IAAIC,YAAYX,GACpCO,EAAQK,cAAcF,mBEhCN,8BCMI,SACpBG,EACAC,GAEA,IAAIC,EACAC,EACJ,OAAO,WAOH,OANKD,IACDA,GAAU,EACVE,WAAW,WAAA,OAAOF,GAAU,GAAQD,GACpCE,EAAOH,EAASK,aACnB,GAAAC,MAAAC,KAAAC,aAEML"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,5 @@
1
1
  export { events } from './events';
2
- export type { LiteralUnion } from './LiteralUnion';
2
+ export type { EventName, EventListener } from './events';
3
+ export type { LiteralUnion, Callback } from './types';
4
+ export { throttle } from './throttle';
5
+ export { noop } from './noop';
@@ -1,2 +1,2 @@
1
- const e=(e,n)=>{document.addEventListener(e,n)},n=(e,n)=>{document.removeEventListener(e,n)},t=(e,n)=>{window.addEventListener(e,n)},o=(e,n)=>{window.removeEventListener(e,n)},r=(e,n,t)=>{e.addEventListener(n,t)},s=(e,n,t)=>{e.removeEventListener(n,t)},c={document:{__proto__:null,on:e,off:n,once:(t,o)=>{const r=e=>{o(e),n(t,r)};e(t,r)},trigger:e=>{const n=new CustomEvent(e);document.dispatchEvent(n)}},window:{__proto__:null,on:t,off:o,once:(e,n)=>{const r=t=>{n(t),o(e,r)};t(e,r)},trigger:e=>{const n=new CustomEvent(e);window.dispatchEvent(n)}},element:{__proto__:null,on:r,off:s,once:(e,n,t)=>{const o=r=>{t(r),s(e,n,o)};r(e,n,o)},trigger:(e,n)=>{const t=new CustomEvent(n);e.dispatchEvent(t)}}};export{c as events};
1
+ const e=(e,n)=>{document.addEventListener(e,n)},n=(e,n)=>{document.removeEventListener(e,n)},t=(e,n)=>{window.addEventListener(e,n)},o=(e,n)=>{window.removeEventListener(e,n)},r=(e,n,t)=>{e.addEventListener(n,t)},s=(e,n,t)=>{e.removeEventListener(n,t)},d={document:{__proto__:null,on:e,off:n,once:(t,o)=>{const r=e=>{o(e),n(t,r)};e(t,r)},trigger:e=>{const n=new CustomEvent(e);document.dispatchEvent(n)}},window:{__proto__:null,on:t,off:o,once:(e,n)=>{const r=t=>{n(t),o(e,r)};t(e,r)},trigger:e=>{const n=new CustomEvent(e);window.dispatchEvent(n)}},element:{__proto__:null,on:r,off:s,once:(e,n,t)=>{const o=r=>{t(r),s(e,n,o)};r(e,n,o)},trigger:(e,n)=>{const t=new CustomEvent(n);e.dispatchEvent(t)}}},i=(e,n)=>{let t,o;return(...r)=>(t||(t=!0,setTimeout(()=>t=!1,n),o=e.apply(void 0,r)),o)},c=()=>{};export{d as events,c as noop,i as throttle};
2
2
  //# sourceMappingURL=index.modern.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","events","wrappedListener","e","customEvent","CustomEvent","dispatchEvent"],"mappings":"AAEO,MAAMA,EAAK,CACdC,EACAC,KAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,CACfJ,EACAC,KAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,CACdC,EACAC,KAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,CACfJ,EACAC,KAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,CACdQ,EACAP,EACAC,KAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,CACfG,EACAP,EACAC,KAEAM,EAAQF,oBAAoBL,EAAOC,ICX1BO,EAAS,CAClBN,yCHWgB,CAChBF,EACAC,KAEA,MAAMQ,EAAsDC,IACxDT,EAASS,GACTN,EAAIJ,EAAOS,IAEfV,EAAGC,EAAOS,YAGUT,IACpB,MAAMW,EAAc,IAAIC,YAAYZ,GACpCE,SAASW,cAAcF,KGvBvBL,uCFUgB,CAChBN,EACAC,KAEA,MAAMQ,EAAoDC,IACtDT,EAASS,GACTN,EAAIJ,EAAOS,IAEfV,EAAGC,EAAOS,YAGUT,IACpB,MAAMW,EAAc,IAAIC,YAAYZ,GACpCM,OAAOO,cAAcF,KEtBrBJ,wCDWgB,CAChBA,EACAP,EACAC,KAEA,MAAMQ,EAAyDC,IAC3DT,EAASS,GACTN,EAAIG,EAASP,EAAOS,IAExBV,EAAGQ,EAASP,EAAOS,YAGA,CAACF,EAAsBP,KAC1C,MAAMW,EAAc,IAAIC,YAAYZ,GACpCO,EAAQM,cAAcF"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts","../src/throttle.ts","../src/noop.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n","import { Callback } from './types/Callback';\n\ntype ThrottledFunction<C extends Callback> = (\n ...args: Parameters<C>\n) => ReturnType<C>;\n\nexport const throttle = <C extends Callback>(\n callback: C,\n limit: number\n): ThrottledFunction<C> => {\n let waiting: boolean;\n let prev: ReturnType<C>;\n return (...args: Parameters<C>) => {\n if (!waiting) {\n waiting = true;\n setTimeout(() => (waiting = false), limit);\n prev = callback.apply(this, args) as ReturnType<C>;\n }\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return prev;\n };\n};\n","export const noop = () => undefined;\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","events","wrappedListener","e","customEvent","CustomEvent","dispatchEvent","throttle","callback","limit","waiting","prev","args","setTimeout","apply","this","noop"],"mappings":"AAEO,MAAMA,EAAK,CACdC,EACAC,KAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,CACfJ,EACAC,KAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,CACdC,EACAC,KAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,CACfJ,EACAC,KAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,CACdQ,EACAP,EACAC,KAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,CACfG,EACAP,EACAC,KAEAM,EAAQF,oBAAoBL,EAAOC,ICX1BO,EAAS,CAClBN,yCHWgB,CAChBF,EACAC,KAEA,MAAMQ,EAAsDC,IACxDT,EAASS,GACTN,EAAIJ,EAAOS,IAEfV,EAAGC,EAAOS,YAGUT,IACpB,MAAMW,EAAc,IAAIC,YAAYZ,GACpCE,SAASW,cAAcF,KGvBvBL,uCFUgB,CAChBN,EACAC,KAEA,MAAMQ,EAAoDC,IACtDT,EAASS,GACTN,EAAIJ,EAAOS,IAEfV,EAAGC,EAAOS,YAGUT,IACpB,MAAMW,EAAc,IAAIC,YAAYZ,GACpCM,OAAOO,cAAcF,KEtBrBJ,wCDWgB,CAChBA,EACAP,EACAC,KAEA,MAAMQ,EAAyDC,IAC3DT,EAASS,GACTN,EAAIG,EAASP,EAAOS,IAExBV,EAAGQ,EAASP,EAAOS,YAGA,CAACF,EAAsBP,KAC1C,MAAMW,EAAc,IAAIC,YAAYZ,GACpCO,EAAQM,cAAcF,ME1BbG,EAAW,CACpBC,EACAC,KAEA,IAAIC,EACAC,EACJ,MAAO,IAAIC,KACFF,IACDA,GAAU,EACVG,WAAW,IAAOH,GAAU,EAAQD,GACpCE,EAAOH,EAASM,WAAMC,EAAMH,IAGzBD,ICnBFK,EAAO"}
@@ -1,2 +1,2 @@
1
- var n=function(n,t){document.addEventListener(n,t)},t=function(n,t){document.removeEventListener(n,t)},e=function(n,t){window.addEventListener(n,t)},o=function(n,t){window.removeEventListener(n,t)},i=function(n,t,e){n.addEventListener(t,e)},c=function(n,t,e){n.removeEventListener(t,e)},u={document:{__proto__:null,on:n,off:t,once:function(e,o){n(e,function n(i){o(i),t(e,n)})},trigger:function(n){var t=new CustomEvent(n);document.dispatchEvent(t)}},window:{__proto__:null,on:e,off:o,once:function(n,t){e(n,function e(i){t(i),o(n,e)})},trigger:function(n){var t=new CustomEvent(n);window.dispatchEvent(t)}},element:{__proto__:null,on:i,off:c,once:function(n,t,e){i(n,t,function o(i){e(i),c(n,t,o)})},trigger:function(n,t){var e=new CustomEvent(t);n.dispatchEvent(e)}}};export{u as events};
1
+ var n=function(n,t){document.addEventListener(n,t)},t=function(n,t){document.removeEventListener(n,t)},e=function(n,t){window.addEventListener(n,t)},o=function(n,t){window.removeEventListener(n,t)},i=function(n,t,e){n.addEventListener(t,e)},u=function(n,t,e){n.removeEventListener(t,e)},c={document:{__proto__:null,on:n,off:t,once:function(e,o){n(e,function n(i){o(i),t(e,n)})},trigger:function(n){var t=new CustomEvent(n);document.dispatchEvent(t)}},window:{__proto__:null,on:e,off:o,once:function(n,t){e(n,function e(i){t(i),o(n,e)})},trigger:function(n){var t=new CustomEvent(n);window.dispatchEvent(t)}},element:{__proto__:null,on:i,off:u,once:function(n,t,e){i(n,t,function o(i){e(i),u(n,t,o)})},trigger:function(n,t){var e=new CustomEvent(t);n.dispatchEvent(e)}}},r=function(n,t){var e,o;return function(){return e||(e=!0,setTimeout(function(){return e=!1},t),o=n.apply(void 0,[].slice.call(arguments))),o}},f=function(){};export{c as events,f as noop,r as throttle};
2
2
  //# sourceMappingURL=index.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","events","wrappedListener","e","customEvent","CustomEvent","dispatchEvent"],"mappings":"AAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,ICX1BO,EAAS,CAClBN,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDS,EAAsDC,GACxDT,EAASS,GACTN,EAAIJ,EAAOS,cAKI,SAACT,GACpB,IAAMW,EAAc,IAAIC,YAAYZ,GACpCE,SAASW,cAAcF,KGvBvBL,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDS,EAAoDC,GACtDT,EAASS,GACTN,EAAIJ,EAAOS,cAKI,SAACT,GACpB,IAAMW,EAAc,IAAIC,YAAYZ,GACpCM,OAAOO,cAAcF,KEtBrBJ,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDS,EAAyDC,GAC3DT,EAASS,GACTN,EAAIG,EAASP,EAAOS,cAKL,SAACF,EAAsBP,GAC1C,IAAMW,EAAc,IAAIC,YAAYZ,GACpCO,EAAQM,cAAcF"}
1
+ {"version":3,"file":"index.module.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts","../src/throttle.ts","../src/noop.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n","import { Callback } from './types/Callback';\n\ntype ThrottledFunction<C extends Callback> = (\n ...args: Parameters<C>\n) => ReturnType<C>;\n\nexport const throttle = <C extends Callback>(\n callback: C,\n limit: number\n): ThrottledFunction<C> => {\n let waiting: boolean;\n let prev: ReturnType<C>;\n return (...args: Parameters<C>) => {\n if (!waiting) {\n waiting = true;\n setTimeout(() => (waiting = false), limit);\n prev = callback.apply(this, args) as ReturnType<C>;\n }\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return prev;\n };\n};\n","export const noop = () => undefined;\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","events","wrappedListener","e","customEvent","CustomEvent","dispatchEvent","throttle","callback","limit","waiting","prev","setTimeout","apply","slice","call","arguments","noop"],"mappings":"AAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,ICX1BO,EAAS,CAClBN,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDS,EAAsDC,GACxDT,EAASS,GACTN,EAAIJ,EAAOS,cAKI,SAACT,GACpB,IAAMW,EAAc,IAAIC,YAAYZ,GACpCE,SAASW,cAAcF,KGvBvBL,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDS,EAAoDC,GACtDT,EAASS,GACTN,EAAIJ,EAAOS,cAKI,SAACT,GACpB,IAAMW,EAAc,IAAIC,YAAYZ,GACpCM,OAAOO,cAAcF,KEtBrBJ,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDS,EAAyDC,GAC3DT,EAASS,GACTN,EAAIG,EAASP,EAAOS,cAKL,SAACF,EAAsBP,GAC1C,IAAMW,EAAc,IAAIC,YAAYZ,GACpCO,EAAQM,cAAcF,ME1BbG,EAAW,SACpBC,EACAC,GAEA,IAAIC,EACAC,EACJ,OAAO,WAOH,OANKD,IACDA,GAAU,EACVE,WAAW,WAAA,OAAOF,GAAU,GAAQD,GACpCE,EAAOH,EAASK,aACnB,GAAAC,MAAAC,KAAAC,aAEML,ICnBFM,EAAO"}
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((n||self).utils={})}(this,function(n){var e=function(n,e){document.addEventListener(n,e)},t=function(n,e){document.removeEventListener(n,e)},o=function(n,e){window.addEventListener(n,e)},i=function(n,e){window.removeEventListener(n,e)},f=function(n,e,t){n.addEventListener(e,t)},u=function(n,e,t){n.removeEventListener(e,t)};n.events={document:{__proto__:null,on:e,off:t,once:function(n,o){e(n,function e(i){o(i),t(n,e)})},trigger:function(n){var e=new CustomEvent(n);document.dispatchEvent(e)}},window:{__proto__:null,on:o,off:i,once:function(n,e){o(n,function t(o){e(o),i(n,t)})},trigger:function(n){var e=new CustomEvent(n);window.dispatchEvent(e)}},element:{__proto__:null,on:f,off:u,once:function(n,e,t){f(n,e,function o(i){t(i),u(n,e,o)})},trigger:function(n,e){var t=new CustomEvent(e);n.dispatchEvent(t)}}}});
1
+ !function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n||self).utils={})}(this,function(n){var t=function(n,t){document.addEventListener(n,t)},e=function(n,t){document.removeEventListener(n,t)},o=function(n,t){window.addEventListener(n,t)},i=function(n,t){window.removeEventListener(n,t)},u=function(n,t,e){n.addEventListener(t,e)},f=function(n,t,e){n.removeEventListener(t,e)},c=void 0;n.events={document:{__proto__:null,on:t,off:e,once:function(n,o){t(n,function t(i){o(i),e(n,t)})},trigger:function(n){var t=new CustomEvent(n);document.dispatchEvent(t)}},window:{__proto__:null,on:o,off:i,once:function(n,t){o(n,function e(o){t(o),i(n,e)})},trigger:function(n){var t=new CustomEvent(n);window.dispatchEvent(t)}},element:{__proto__:null,on:u,off:f,once:function(n,t,e){u(n,t,function o(i){e(i),f(n,t,o)})},trigger:function(n,t){var e=new CustomEvent(t);n.dispatchEvent(e)}}},n.noop=function(){},n.throttle=function(n,t){var e,o;return function(){return e||(e=!0,setTimeout(function(){return e=!1},t),o=n.apply(c,[].slice.call(arguments))),o}}});
2
2
  //# sourceMappingURL=index.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","wrappedListener","e","customEvent","CustomEvent","dispatchEvent"],"mappings":"+NAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,aCXjB,CAClBC,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDQ,EAAsDC,GACxDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCE,SAASU,cAAcF,KGvBvBJ,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDQ,EAAoDC,GACtDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCM,OAAOM,cAAcF,KEtBrBH,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDQ,EAAyDC,GAC3DR,EAASQ,GACTL,EAAIG,EAASP,EAAOQ,cAKL,SAACD,EAAsBP,GAC1C,IAAMU,EAAc,IAAIC,YAAYX,GACpCO,EAAQK,cAAcF"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts","../src/noop.ts","../src/throttle.ts"],"sourcesContent":["import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n document.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<DocumentEventMap>>(\n event: E,\n listener: EventListener<DocumentEventMap, E>\n) => {\n const wrappedListener: EventListener<DocumentEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n document.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n window.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<WindowEventMap>>(\n event: E,\n listener: EventListener<WindowEventMap, E>\n) => {\n const wrappedListener: EventListener<WindowEventMap, E> = e => {\n listener(e);\n off(event, wrappedListener);\n };\n on(event, wrappedListener);\n};\n\nexport const trigger = (event: string) => {\n const customEvent = new CustomEvent(event);\n window.dispatchEvent(customEvent);\n};\n","import { EventListener, EventName, DomEventListener } from './eventTypes';\n\nexport const on = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.addEventListener(event, listener as DomEventListener);\n};\n\nexport const off = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n element.removeEventListener(event, listener as DomEventListener);\n};\n\nexport const once = <E extends EventName<HTMLElementEventMap>>(\n element: HTMLElement,\n event: E,\n listener: EventListener<HTMLElementEventMap, E>\n) => {\n const wrappedListener: EventListener<HTMLElementEventMap, E> = e => {\n listener(e);\n off(element, event, wrappedListener);\n };\n on(element, event, wrappedListener);\n};\n\nexport const trigger = (element: HTMLElement, event: string) => {\n const customEvent = new CustomEvent(event);\n element.dispatchEvent(customEvent);\n};\n","import * as documentEvents from './document';\nimport * as windowEvents from './window';\nimport * as elementEvents from './element';\n\nexport const events = {\n document: documentEvents,\n window: windowEvents,\n element: elementEvents,\n};\n\nexport type { EventListener, EventName } from './eventTypes';\n","export const noop = () => undefined;\n","import { Callback } from './types/Callback';\n\ntype ThrottledFunction<C extends Callback> = (\n ...args: Parameters<C>\n) => ReturnType<C>;\n\nexport const throttle = <C extends Callback>(\n callback: C,\n limit: number\n): ThrottledFunction<C> => {\n let waiting: boolean;\n let prev: ReturnType<C>;\n return (...args: Parameters<C>) => {\n if (!waiting) {\n waiting = true;\n setTimeout(() => (waiting = false), limit);\n prev = callback.apply(this, args) as ReturnType<C>;\n }\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return prev;\n };\n};\n"],"names":["on","event","listener","document","addEventListener","off","removeEventListener","window","element","wrappedListener","e","customEvent","CustomEvent","dispatchEvent","callback","limit","waiting","prev","setTimeout","apply","_this","slice","call","arguments"],"mappings":"+NAEO,IAAMA,EAAK,SACdC,EACAC,GAEAC,SAASC,iBAAiBH,EAAOC,IAGxBG,EAAM,SACfJ,EACAC,GAEAC,SAASG,oBAAoBL,EAAOC,ICX3BF,EAAK,SACdC,EACAC,GAEAK,OAAOH,iBAAiBH,EAAOC,IAGtBG,EAAM,SACfJ,EACAC,GAEAK,OAAOD,oBAAoBL,EAAOC,ICXzBF,EAAK,SACdQ,EACAP,EACAC,GAEAM,EAAQJ,iBAAiBH,EAAOC,IAGvBG,EAAM,SACfG,EACAP,EACAC,GAEAM,EAAQF,oBAAoBL,EAAOC,sBCXjB,CAClBC,yCHWgB,SAChBF,EACAC,GAMAF,EAAGC,EAJyD,SAAtDQ,EAAsDC,GACxDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCE,SAASU,cAAcF,KGvBvBJ,uCFUgB,SAChBN,EACAC,GAMAF,EAAGC,EAJuD,SAApDQ,EAAoDC,GACtDR,EAASQ,GACTL,EAAIJ,EAAOQ,cAKI,SAACR,GACpB,IAAMU,EAAc,IAAIC,YAAYX,GACpCM,OAAOM,cAAcF,KEtBrBH,wCDWgB,SAChBA,EACAP,EACAC,GAMAF,EAAGQ,EAASP,EAJmD,SAAzDQ,EAAyDC,GAC3DR,EAASQ,GACTL,EAAIG,EAASP,EAAOQ,cAKL,SAACD,EAAsBP,GAC1C,IAAMU,EAAc,IAAIC,YAAYX,GACpCO,EAAQK,cAAcF,aEhCN,wBCMI,SACpBG,EACAC,GAEA,IAAIC,EACAC,EACJ,OAAO,WAOH,OANKD,IACDA,GAAU,EACVE,WAAW,WAAA,OAAOF,GAAU,GAAQD,GACpCE,EAAOH,EAASK,MAAMC,EACzB,GAAAC,MAAAC,KAAAC,aAEMN"}
package/dist/noop.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare const noop: () => undefined;
@@ -0,0 +1,4 @@
1
+ import { Callback } from './types/Callback';
2
+ declare type ThrottledFunction<C extends Callback> = (...args: Parameters<C>) => ReturnType<C>;
3
+ export declare const throttle: <C extends Callback>(callback: C, limit: number) => ThrottledFunction<C>;
4
+ export {};
@@ -0,0 +1 @@
1
+ export declare type Callback = (...args: any) => any;
@@ -0,0 +1,2 @@
1
+ export type { LiteralUnion } from './LiteralUnion';
2
+ export type { Callback } from './Callback';
package/package.json CHANGED
@@ -1,16 +1,13 @@
1
1
  {
2
2
  "name": "@wiggindev/utils",
3
3
  "description": "Various utilities that I use in my projects",
4
- "version": "0.2.1",
4
+ "version": "0.2.4",
5
5
  "author": {
6
6
  "name": "Andrew Wiggin",
7
7
  "email": "andrew@wiggin.dev",
8
8
  "url": "https://wiggin.dev"
9
9
  },
10
- "repository": {
11
- "type": "git",
12
- "url": "https://github.com/wiggindev/utils.git"
13
- },
10
+ "repository": "git://github.com/wiggindev/utils.git",
14
11
  "type": "module",
15
12
  "source": "src/index.ts",
16
13
  "exports": {
@@ -22,9 +19,8 @@
22
19
  "unpkg": "dist/index.umd.js",
23
20
  "types": "dist/index.d.ts",
24
21
  "scripts": {
25
- "prebuild": "rimraf dist",
26
- "build": "microbundle",
27
- "dev": "microbundle watch",
22
+ "build": "rimraf dist && microbundle",
23
+ "dev": "rimraf dist && microbundle watch",
28
24
  "_postinstall": "husky install",
29
25
  "prepack": "pinst --disable",
30
26
  "postpack": "pinst --enable",
@@ -1,4 +1,4 @@
1
- import { LiteralUnion } from '../LiteralUnion';
1
+ import { LiteralUnion } from '../types/LiteralUnion';
2
2
 
3
3
  type EventMap = WindowEventMap | DocumentEventMap | HTMLElementEventMap;
4
4
 
package/src/index.ts CHANGED
@@ -1,2 +1,5 @@
1
1
  export { events } from './events';
2
- export type { LiteralUnion } from './LiteralUnion';
2
+ export type { EventName, EventListener } from './events';
3
+ export type { LiteralUnion, Callback } from './types';
4
+ export { throttle } from './throttle';
5
+ export { noop } from './noop';
package/src/noop.ts ADDED
@@ -0,0 +1 @@
1
+ export const noop = () => undefined;
@@ -0,0 +1,22 @@
1
+ import { Callback } from './types/Callback';
2
+
3
+ type ThrottledFunction<C extends Callback> = (
4
+ ...args: Parameters<C>
5
+ ) => ReturnType<C>;
6
+
7
+ export const throttle = <C extends Callback>(
8
+ callback: C,
9
+ limit: number
10
+ ): ThrottledFunction<C> => {
11
+ let waiting: boolean;
12
+ let prev: ReturnType<C>;
13
+ return (...args: Parameters<C>) => {
14
+ if (!waiting) {
15
+ waiting = true;
16
+ setTimeout(() => (waiting = false), limit);
17
+ prev = callback.apply(this, args) as ReturnType<C>;
18
+ }
19
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
20
+ return prev;
21
+ };
22
+ };
@@ -0,0 +1 @@
1
+ export type Callback = (...args: any) => any;
File without changes
@@ -0,0 +1,2 @@
1
+ export type { LiteralUnion } from './LiteralUnion';
2
+ export type { Callback } from './Callback';
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es5.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2016.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2019.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2021.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2022.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.esnext.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.dom.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.dom.iterable.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.core.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.collection.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.generator.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.promise.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.object.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.string.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.intl.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.intl.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.promise.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2019.array.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2019.object.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2019.string.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.promise.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.string.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2020.intl.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2021.promise.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2021.string.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2021.intl.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2022.array.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2022.error.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2022.object.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.es2022.string.d.ts","../.yarn/cache/typescript-patch-e50fdcf519-1cb434fbc6.zip/node_modules/typescript/lib/lib.esnext.intl.d.ts","../src/LiteralUnion.ts","../src/events/eventTypes.ts","../src/events/document.ts","../src/events/window.ts","../src/events/element.ts","../src/events/index.ts","../src/index.ts","../.yarn/cache/@types-react-npm-18.0.9-4dccadcd56-162364dad7.zip/node_modules/@types/react/global.d.ts","../.yarn/cache/csstype-npm-3.0.11-b49897178d-95e56abfe9.zip/node_modules/csstype/index.d.ts","../.yarn/cache/@types-prop-types-npm-15.7.5-2aa48aa177-5b43b8b154.zip/node_modules/@types/prop-types/index.d.ts","../.yarn/cache/@types-scheduler-npm-0.16.2-ba3a7d8c68-b6b4dcfeae.zip/node_modules/@types/scheduler/tracing.d.ts","../.yarn/cache/@types-react-npm-18.0.9-4dccadcd56-162364dad7.zip/node_modules/@types/react/index.d.ts"],"fileInfos":[{"version":"3ac1b83264055b28c0165688fda6dfcc39001e9e7828f649299101c23ad0a0c3","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","2f93dda35dafec68ec217c9ce67f0f4fbbbb030c055ac312641565ad60dd7e26","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"72704b10d97777e15f1a581b73f88273037ef752d2e50b72287bd0a90af64fe6","affectsGlobalScope":true},{"version":"dbb73d4d99be496175cb432c74c2615f78c76f4272f1d83cba11ee0ed6dbddf0","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"5075b36ab861c8c0c45377cb8c96270d7c65f0eeaf105d53fac6850da61f1027","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"e8c9f4e445a489991ca1a4232667de3ac36b07ba75ea335971fbeacf2d26fe67","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"6ea9ab679ea030cf46c16a711a316078e9e02619ebaf07a7fcd16964aba88f2d","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"39125865b15f27d09467afb0bd67d8fc1b11f53f32c674a8a0a446ac16cbf299","a47cf749fdeb425c898770f0995408f4f4a433bdea2e11a315c19c55c4b194cd","3e8133a46c3faa17303cfb0e26b88efd12e6577342231ddb225a80a94b2e4b35","a094c7dd1469e7d4aedb2b1256c2c54977e26281f99f13fb1d2ec13dde8880d4","92c5e8a15ba74a84a8d578eff677d97f7a02ede8819ef1809cf16f00f50c3e0f","fb036afaa5fe14ae7219e8ff7338dd391a4879da47c023905c6ded28ef02dc7e","d7ba361e0b6a90d570ce57502d6455f7a7eb88ead9aeedded40cdb82dc391ae7",{"version":"bbdf156fea2fabed31a569445835aeedcc33643d404fcbaa54541f06c109df3f","affectsGlobalScope":true},"ea0aa24a32c073b8639aa1f3130ba0add0f0f2f76b314d9ba988a5cb91d7e3c4","6a386ff939f180ae8ef064699d8b7b6e62bc2731a62d7fbf5e02589383838dea","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"4c4229a7fe27b87aba0b8bab7f7338bc63e74b814156ba6925b552f9bec83154","affectsGlobalScope":true}],"options":{"esModuleInterop":true,"module":99,"outDir":"./","strict":true,"target":99},"fileIdsList":[[59,60,61,62],[53],[52],[53,54,55,56],[52,57]],"referencedMap":[[63,1],[54,2],[56,2],[53,3],[57,4],[55,2],[58,5]],"exportedModulesMap":[[63,1],[54,2],[56,2],[53,3],[57,4],[55,2],[58,5]],"semanticDiagnosticsPerFile":[61,59,63,62,60,11,12,14,13,2,15,16,17,18,19,20,21,22,3,4,26,23,24,25,27,28,29,5,30,31,32,33,6,34,35,36,37,7,42,38,39,40,41,8,46,43,44,45,47,9,48,49,50,1,10,51,52,54,56,53,57,55,58],"affectedFilesPendingEmit":[[61,1],[59,1],[63,1],[62,1],[60,1],[2,1],[3,1],[4,1],[5,1],[6,1],[7,1],[8,1],[9,1],[10,1],[52,1],[54,1],[56,1],[53,1],[57,1],[55,1],[58,1]]},"version":"4.6.4"}