bare-events
Advanced tools
+4
-17
@@ -19,16 +19,7 @@ import { AbortSignal } from 'bare-abort-controller' | ||
| addOnceListener<E extends keyof M, R>( | ||
| name: E, | ||
| fn: EventHandler<M[E], R> | ||
| ): this | ||
| addOnceListener<E extends keyof M, R>(name: E, fn: EventHandler<M[E], R>): this | ||
| prependListener<E extends keyof M, R>( | ||
| name: E, | ||
| fn: EventHandler<M[E], R> | ||
| ): this | ||
| prependListener<E extends keyof M, R>(name: E, fn: EventHandler<M[E], R>): this | ||
| prependOnceListener<E extends keyof M, R>( | ||
| name: E, | ||
| fn: EventHandler<M[E], R> | ||
| ): this | ||
| prependOnceListener<E extends keyof M, R>(name: E, fn: EventHandler<M[E], R>): this | ||
@@ -70,7 +61,3 @@ removeListener<E extends keyof M, R>(name: E, fn: EventHandler<M[E], R>): this | ||
| export function forward< | ||
| F extends EventMap, | ||
| E extends keyof F, | ||
| T extends Pick<F, E> | ||
| >( | ||
| export function forward<F extends EventMap, E extends keyof F, T extends Pick<F, E>>( | ||
| from: EventEmitter<F>, | ||
@@ -77,0 +64,0 @@ to: EventEmitter<T>, |
+8
-4
@@ -67,2 +67,3 @@ const errors = require('./lib/errors') | ||
| function appendListener(ctx, name, fn, once) { | ||
| if (ctx._events === undefined) ctx._events = Object.create(null) | ||
| const e = ctx._events[name] || (ctx._events[name] = new EventListener()) | ||
@@ -74,2 +75,3 @@ e.append(ctx, name, fn, once) | ||
| function prependListener(ctx, name, fn, once) { | ||
| if (ctx._events === undefined) ctx._events = Object.create(null) | ||
| const e = ctx._events[name] || (ctx._events[name] = new EventListener()) | ||
@@ -81,2 +83,3 @@ e.prepend(ctx, name, fn, once) | ||
| function removeListener(ctx, name, fn) { | ||
| if (ctx._events === undefined) return ctx | ||
| const e = ctx._events[name] | ||
@@ -141,6 +144,7 @@ if (e !== undefined) e.remove(ctx, name, fn) | ||
| emit(name, ...args) { | ||
| if (name === 'error' && this._events.error === undefined) { | ||
| if (name === 'error' && this._events !== undefined && this._events.error === undefined) { | ||
| throwUnhandledError(...args) | ||
| } | ||
| if (this._events === undefined) return false | ||
| const e = this._events[name] | ||
@@ -151,2 +155,3 @@ return e === undefined ? false : e.emit(this, name, ...args) | ||
| listeners(name) { | ||
| if (this._events === undefined) return [] | ||
| const e = this._events[name] | ||
@@ -157,2 +162,3 @@ return e === undefined ? [] : [...e.list] | ||
| listenerCount(name) { | ||
| if (this._events === undefined) return 0 | ||
| const e = this._events[name] | ||
@@ -224,5 +230,3 @@ return e === undefined ? 0 : e.list.length | ||
| return new Promise((resolve, reject) => | ||
| promises.push({ resolve, reject }) | ||
| ) | ||
| return new Promise((resolve, reject) => promises.push({ resolve, reject })) | ||
| }, | ||
@@ -229,0 +233,0 @@ |
+6
-12
@@ -16,18 +16,12 @@ module.exports = class EventEmitterError extends Error { | ||
| static OPERATION_ABORTED(cause, msg = 'Operation aborted') { | ||
| return new EventEmitterError( | ||
| msg, | ||
| 'OPERATION_ABORTED', | ||
| EventEmitterError.OPERATION_ABORTED, | ||
| { cause } | ||
| ) | ||
| return new EventEmitterError(msg, 'OPERATION_ABORTED', EventEmitterError.OPERATION_ABORTED, { | ||
| cause | ||
| }) | ||
| } | ||
| static UNHANDLED_ERROR(cause, msg = 'Unhandled error') { | ||
| return new EventEmitterError( | ||
| msg, | ||
| 'UNHANDLED_ERROR', | ||
| EventEmitterError.UNHANDLED_ERROR, | ||
| { cause } | ||
| ) | ||
| return new EventEmitterError(msg, 'UNHANDLED_ERROR', EventEmitterError.UNHANDLED_ERROR, { | ||
| cause | ||
| }) | ||
| } | ||
| } |
+2
-2
| { | ||
| "name": "bare-events", | ||
| "version": "2.8.0", | ||
| "version": "2.8.1", | ||
| "description": "Event emitters for JavaScript", | ||
@@ -50,3 +50,3 @@ "exports": { | ||
| "prettier": "^3.4.2", | ||
| "prettier-config-standard": "^7.0.0", | ||
| "prettier-config-holepunch": "^2.0.0", | ||
| "uncaughts": "^1.1.1" | ||
@@ -53,0 +53,0 @@ }, |
+2
-14
@@ -138,8 +138,3 @@ // Event state | ||
| const { | ||
| capture = false, | ||
| passive = false, | ||
| once = false, | ||
| signal = null | ||
| } = options | ||
| const { capture = false, passive = false, once = false, signal = null } = options | ||
@@ -149,10 +144,3 @@ if (signal !== null && signal.aborted) return | ||
| const listener = new EventListener( | ||
| type, | ||
| callback, | ||
| capture, | ||
| passive, | ||
| once, | ||
| signal | ||
| ) | ||
| const listener = new EventListener(type, callback, capture, passive, once, signal) | ||
@@ -159,0 +147,0 @@ const listeners = this._listeners.get(type) |
33664
0.51%684
-3.8%