evnty 1.0.16 → 1.0.18

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/build/index.cjs CHANGED
@@ -9,10 +9,18 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- Dismiss: ()=>Dismiss,
13
- Event: ()=>Event,
14
- once: ()=>once,
15
- default: ()=>createEvent
12
+ Dismiss: function() {
13
+ return Dismiss;
14
+ },
15
+ Event: function() {
16
+ return Event;
17
+ },
18
+ once: function() {
19
+ return once;
20
+ },
21
+ default: function() {
22
+ return createEvent;
23
+ }
16
24
  });
17
25
  class FunctionExt extends Function {
18
26
  constructor(func){
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["type MaybePromise<T> = Promise<T> | PromiseLike<T> | T;\n\nexport interface Unsubscribe {\n (): void;\n}\n\nexport interface Listener<T extends any[]> {\n (...args: T): void;\n}\n\nexport interface Dispose {\n (): void;\n}\n\nexport interface Filter<T extends any[]> {\n (...args: T): MaybePromise<boolean>;\n}\n\nexport interface Mapper<T extends any[], R> {\n (...args: T): R;\n}\n\nexport interface Reducer<T extends any[], R> {\n (value: R, ...args: T): R;\n}\n\nexport type Listeners<T extends any[]> = Listener<T>[];\n\nclass FunctionExt extends Function {\n constructor(func: Function) {\n super();\n return Object.setPrototypeOf(func, new.target.prototype);\n }\n}\n\nexport interface Dismiss {\n (): Promise<void> | void;\n}\n\nexport class Dismiss extends FunctionExt {\n constructor(dismiss: Unsubscribe) {\n super(dismiss);\n }\n async after(process: () => MaybePromise<any>) {\n await process();\n this();\n }\n afterTimes(count: number) {\n return () => {\n if (!--count) {\n this();\n }\n };\n }\n}\n\nconst eventEmitter = async <A extends any[]>(listeners: () => Listeners<A>, ...args: A) => {\n return Promise.allSettled(listeners().map((listener) => listener(...args)));\n};\n\nexport interface Event<T extends any[]> {\n (...args: T): Promise<void> | void;\n}\n\ntype EventTypes<T extends Event<any>[]> = T extends Event<infer E>[] ? E : never;\n\nexport class Event<T extends any[]> extends FunctionExt {\n static merge<E extends Event<unknown[]>[], ET extends any[] = EventTypes<E>>(...events: E) {\n const mergedEvent = new Event<ET>();\n events.forEach((event) => event.on((...args: ET) => mergedEvent(...args)));\n return mergedEvent;\n }\n\n static interval(interval: number) {\n let timerId: any = 0;\n let counter = 0;\n const intervalEvent = new Event<[number]>(() => clearInterval(timerId));\n timerId = setInterval(() => intervalEvent(counter++), interval);\n return intervalEvent;\n }\n\n private listeners: Listeners<T>;\n readonly dispose: Dispose;\n\n constructor(dispose?: Dispose) {\n const fn: (...args: T) => Promise<void> = eventEmitter.bind(null, () => this.listeners);\n super(fn);\n this.listeners = [];\n this.dispose = () => {\n this.clear();\n dispose && dispose();\n };\n }\n\n get size(): number {\n return this.listeners.length;\n }\n\n lacks(listener: Listener<T>): boolean {\n return this.listeners.indexOf(listener) === -1;\n }\n\n has(listener: Listener<T>): boolean {\n return this.listeners.indexOf(listener) !== -1;\n }\n\n off(listener: Listener<T>): void {\n let index = this.listeners.indexOf(listener);\n while (~index) {\n this.listeners.splice(index, 1);\n index = this.listeners.indexOf(listener);\n }\n }\n\n on(listener: Listener<T>): Dismiss {\n this.listeners.push(listener);\n return new Dismiss(() => this.off(listener));\n }\n\n once(listener: Listener<T>): Dismiss {\n const oneTimeListener = (...args: T) => {\n this.off(oneTimeListener);\n listener(...args);\n };\n return this.on(oneTimeListener);\n }\n\n clear() {\n this.listeners = [];\n }\n\n toPromise(): Promise<T> {\n return new Promise((resolve) => this.once((...args) => resolve(args)));\n }\n\n filter(filter: Filter<T>) {\n const dispose = this.on(async (...args) => {\n if (filteredEvent.size > 0 && (await filter(...args))) {\n filteredEvent(...args);\n }\n });\n const filteredEvent = new Event(dispose);\n return filteredEvent;\n }\n\n map<R>(mapper: Mapper<T, R>) {\n const dispose = this.on(async (...args) => {\n if (mappedEvent.size > 0) {\n const value = await mapper(...args);\n mappedEvent(value);\n }\n });\n const mappedEvent = new Event(dispose);\n return mappedEvent;\n }\n\n reduce<R>(reducer: Reducer<T, R>, init: R) {\n let value = init;\n const dispose = this.on(async (...args) => {\n if (reducedEvent.size > 0) {\n value = await reducer(value, ...args);\n reducedEvent(value);\n }\n });\n const reducedEvent = new Event(dispose);\n return reducedEvent;\n }\n}\n\nexport const once = <T extends any[]>(event: Event<T>): Promise<T> => {\n return new Promise((resolve) => event.once((...args) => resolve(args)));\n};\n\nexport default function createEvent<T extends any[]>() {\n return new Event<T>();\n}\n"],"names":["Dismiss","Event","once","createEvent","FunctionExt","Function","constructor","func","Object","setPrototypeOf","prototype","dismiss","after","process","afterTimes","count","eventEmitter","listeners","args","Promise","allSettled","map","listener","merge","events","mergedEvent","forEach","event","on","interval","timerId","counter","intervalEvent","clearInterval","setInterval","dispose","fn","bind","clear","size","length","lacks","indexOf","has","off","index","splice","push","oneTimeListener","toPromise","resolve","filter","filteredEvent","mapper","mappedEvent","value","reduce","reducer","init","reducedEvent"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["type MaybePromise<T> = Promise<T> | PromiseLike<T> | T;\n\nexport interface Unsubscribe {\n (): void;\n}\n\nexport interface Listener<T extends any[]> {\n (...args: T): void;\n}\n\nexport interface Dispose {\n (): void;\n}\n\nexport interface Filter<T extends any[]> {\n (...args: T): MaybePromise<boolean>;\n}\n\nexport interface Mapper<T extends any[], R> {\n (...args: T): R;\n}\n\nexport interface Reducer<T extends any[], R> {\n (value: R, ...args: T): R;\n}\n\nexport type Listeners<T extends any[]> = Listener<T>[];\n\nclass FunctionExt extends Function {\n constructor(func: Function) {\n super();\n return Object.setPrototypeOf(func, new.target.prototype);\n }\n}\n\nexport interface Dismiss {\n (): Promise<void> | void;\n}\n\nexport class Dismiss extends FunctionExt {\n constructor(dismiss: Unsubscribe) {\n super(dismiss);\n }\n async after(process: () => MaybePromise<any>) {\n await process();\n this();\n }\n afterTimes(count: number) {\n return () => {\n if (!--count) {\n this();\n }\n };\n }\n}\n\nconst eventEmitter = async <A extends any[]>(listeners: () => Listeners<A>, ...args: A) => {\n return Promise.allSettled(listeners().map((listener) => listener(...args)));\n};\n\nexport interface Event<T extends any[]> {\n (...args: T): Promise<void> | void;\n}\n\ntype EventTypes<T extends Event<any>[]> = T extends Event<infer E>[] ? E : never;\n\nexport class Event<T extends any[]> extends FunctionExt {\n static merge<E extends Event<unknown[]>[], ET extends any[] = EventTypes<E>>(...events: E) {\n const mergedEvent = new Event<ET>();\n events.forEach((event) => event.on((...args: ET) => mergedEvent(...args)));\n return mergedEvent;\n }\n\n static interval(interval: number) {\n let timerId: any = 0;\n let counter = 0;\n const intervalEvent = new Event<[number]>(() => clearInterval(timerId));\n timerId = setInterval(() => intervalEvent(counter++), interval);\n return intervalEvent;\n }\n\n private listeners: Listeners<T>;\n readonly dispose: Dispose;\n\n constructor(dispose?: Dispose) {\n const fn: (...args: T) => Promise<void> = eventEmitter.bind(null, () => this.listeners);\n super(fn);\n this.listeners = [];\n this.dispose = () => {\n this.clear();\n dispose && dispose();\n };\n }\n\n get size(): number {\n return this.listeners.length;\n }\n\n lacks(listener: Listener<T>): boolean {\n return this.listeners.indexOf(listener) === -1;\n }\n\n has(listener: Listener<T>): boolean {\n return this.listeners.indexOf(listener) !== -1;\n }\n\n off(listener: Listener<T>): void {\n let index = this.listeners.indexOf(listener);\n while (~index) {\n this.listeners.splice(index, 1);\n index = this.listeners.indexOf(listener);\n }\n }\n\n on(listener: Listener<T>): Dismiss {\n this.listeners.push(listener);\n return new Dismiss(() => this.off(listener));\n }\n\n once(listener: Listener<T>): Dismiss {\n const oneTimeListener = (...args: T) => {\n this.off(oneTimeListener);\n listener(...args);\n };\n return this.on(oneTimeListener);\n }\n\n clear() {\n this.listeners = [];\n }\n\n toPromise(): Promise<T> {\n return new Promise((resolve) => this.once((...args) => resolve(args)));\n }\n\n filter(filter: Filter<T>) {\n const dispose = this.on(async (...args) => {\n if (filteredEvent.size > 0 && (await filter(...args))) {\n filteredEvent(...args);\n }\n });\n const filteredEvent = new Event(dispose);\n return filteredEvent;\n }\n\n map<R>(mapper: Mapper<T, R>) {\n const dispose = this.on(async (...args) => {\n if (mappedEvent.size > 0) {\n const value = await mapper(...args);\n mappedEvent(value);\n }\n });\n const mappedEvent = new Event(dispose);\n return mappedEvent;\n }\n\n reduce<R>(reducer: Reducer<T, R>, init: R) {\n let value = init;\n const dispose = this.on(async (...args) => {\n if (reducedEvent.size > 0) {\n value = await reducer(value, ...args);\n reducedEvent(value);\n }\n });\n const reducedEvent = new Event(dispose);\n return reducedEvent;\n }\n}\n\nexport const once = <T extends any[]>(event: Event<T>): Promise<T> => {\n return new Promise((resolve) => event.once((...args) => resolve(args)));\n};\n\nexport default function createEvent<T extends any[]>() {\n return new Event<T>();\n}\n"],"names":["Dismiss","Event","once","createEvent","FunctionExt","Function","constructor","func","Object","setPrototypeOf","prototype","dismiss","after","process","afterTimes","count","eventEmitter","listeners","args","Promise","allSettled","map","listener","merge","events","mergedEvent","forEach","event","on","interval","timerId","counter","intervalEvent","clearInterval","setInterval","dispose","fn","bind","clear","size","length","lacks","indexOf","has","off","index","splice","push","oneTimeListener","toPromise","resolve","filter","filteredEvent","mapper","mappedEvent","value","reduce","reducer","init","reducedEvent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "evnty",
3
3
  "description": "0-Deps, simple, fast, for browser and node js anonymous event library",
4
- "version": "1.0.16",
4
+ "version": "1.0.18",
5
5
  "type": "module",
6
6
  "types": "build/index.d.ts",
7
7
  "main": "build/index.cjs",