Documentation / @ripl/core / EventBus
Class: EventBus<TEventMap> ​
Defined in: packages/core/src/core/event-bus.ts:77
A typed pub/sub event system with parent-chain bubbling, disposable subscriptions, and self-filtering.
Extends ​
Extended by ​
Type Parameters ​
| Type Parameter | Default type |
|---|---|
TEventMap extends EventMap | EventMap |
Constructors ​
Constructor ​
new EventBus<
TEventMap>():EventBus<TEventMap>
Returns ​
EventBus<TEventMap>
Inherited from ​
Properties ​
| Property | Modifier | Type | Inherited from | Defined in |
|---|---|---|---|---|
parent? | public | EventBus<TEventMap> | - | packages/core/src/core/event-bus.ts:79 |
defaultKey | readonly | typeof defaultKey | Disposer.defaultKey | packages/core/src/core/disposer.ts:10 |
Methods ​
destroy() ​
destroy():
void
Defined in: packages/core/src/core/event-bus.ts:155
Emits a destroyed event, clears all listeners, and disposes retained resources.
Returns ​
void
dispose() ​
protecteddispose(key?):void
Defined in: packages/core/src/core/disposer.ts:24
Disposes all resources under the given key, or all resources if no key is provided.
Parameters ​
| Parameter | Type |
|---|---|
key? | PropertyKey |
Returns ​
void
Inherited from ​
emit() ​
Call Signature ​
emit<
TEvent>(event):TEvent
Defined in: packages/core/src/core/event-bus.ts:127
Emits an event, invoking all matching handlers and bubbling to the parent if applicable.
Type Parameters ​
| Type Parameter | Default type |
|---|---|
TEvent extends Event<undefined> | Event<undefined> |
Parameters ​
| Parameter | Type |
|---|---|
event | TEvent |
Returns ​
TEvent
Call Signature ​
emit<
TEvent>(type,data):Event<TEventMap[TEvent]>
Defined in: packages/core/src/core/event-bus.ts:128
Emits an event, invoking all matching handlers and bubbling to the parent if applicable.
Type Parameters ​
| Type Parameter |
|---|
TEvent extends string | number | symbol |
Parameters ​
| Parameter | Type |
|---|---|
type | TEvent |
data | TEventMap[TEvent] |
Returns ​
Event<TEventMap[TEvent]>
has() ​
has(
type):boolean
Defined in: packages/core/src/core/event-bus.ts:84
Returns whether there are any listeners registered for the given event type.
Parameters ​
| Parameter | Type |
|---|---|
type | keyof TEventMap |
Returns ​
boolean
off() ​
off<
TEvent>(type,handler):void
Defined in: packages/core/src/core/event-bus.ts:102
Removes a previously registered handler for the given event type.
Type Parameters ​
| Type Parameter |
|---|
TEvent extends string | number | symbol |
Parameters ​
| Parameter | Type |
|---|---|
type | TEvent |
handler | EventHandler<TEventMap[TEvent]> |
Returns ​
void
on() ​
on<
TEvent>(type,handler,options?):Disposable
Defined in: packages/core/src/core/event-bus.ts:89
Subscribes a handler to the given event type and returns a disposable for cleanup.
Type Parameters ​
| Type Parameter |
|---|
TEvent extends string | number | symbol |
Parameters ​
| Parameter | Type |
|---|---|
type | TEvent |
handler | EventHandler<TEventMap[TEvent]> |
options? | EventSubscriptionOptions |
Returns ​
once() ​
once<
TEvent>(type,handler,options?):Disposable
Defined in: packages/core/src/core/event-bus.ts:117
Subscribes a handler that is automatically removed after it fires once.
Type Parameters ​
| Type Parameter |
|---|
TEvent extends string | number | symbol |
Parameters ​
| Parameter | Type |
|---|---|
type | TEvent |
handler | EventHandler<TEventMap[TEvent]> |
options? | EventSubscriptionOptions |
Returns ​
retain() ​
protectedretain(value,key?):void
Defined in: packages/core/src/core/disposer.ts:13
Registers a disposable resource under an optional key for later cleanup.
Parameters ​
| Parameter | Type | Default value |
|---|---|---|
value | Disposable | undefined |
key | PropertyKey | Disposer.defaultKey |
Returns ​
void