UNPKG

whale-plus

Version:

A Component Library for Vue 3

1 lines 2.19 kB
{"version":3,"file":"EventEmitter.mjs","sources":["../../../../../../packages/upload-sdk/src/upload-core/EventEmitter.ts"],"sourcesContent":["export class EventEmitter<T extends string> {\n private events: Map<T, Set<any>>;\n constructor() {\n this.events = new Map();\n }\n\n on(event: T, listener: any) {\n if (!this.events.has(event)) {\n this.events.set(event, new Set());\n }\n this.events.get(event)!.add(listener);\n }\n\n off(event: T, listener: any) {\n if (!this.events.has(event)) {\n return;\n }\n this.events.get(event)!.delete(listener);\n }\n\n once(event: T, listener: any) {\n const onceListener = (...args: any[]) => {\n listener(...args);\n this.off(event, onceListener);\n };\n this.on(event, onceListener);\n }\n\n emit(event: T, ...args: any[]) {\n if (!this.events.has(event)) {\n return;\n }\n this.events.get(event)!.forEach((listener) => {\n listener(...args);\n });\n }\n}\n"],"names":[],"mappings":"AAAO,MAAM,YAAY,CAAC;AAC1B,EAAE,WAAW,GAAG;AAChB,IAAI,IAAI,CAAC,MAAM,mBAAmB,IAAI,GAAG,EAAE,CAAC;AAC5C,GAAG;AACH,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE;AACtB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACjC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,kBAAkB,IAAI,GAAG,EAAE,CAAC,CAAC;AACxD,KAAK;AACL,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE;AACvB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACjC,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC5C,GAAG;AACH,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE;AACxB,IAAI,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,KAAK;AACtC,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;AACxB,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACpC,KAAK,CAAC;AACN,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACjC,GAAG;AACH,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;AACvB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACjC,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK;AACjD,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;AACxB,KAAK,CAAC,CAAC;AACP,GAAG;AACH;;;;"}