@eggjs/eventbus-decorator 4.0.0-beta.7 → 4.0.0-beta.9
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/dist/Event.d.ts +4 -7
- package/dist/Event.js +12 -13
- package/dist/EventBus.d.ts +33 -36
- package/dist/EventBus.js +2 -5
- package/dist/EventContext.d.ts +4 -8
- package/dist/EventContext.js +9 -13
- package/dist/EventInfoUtil.d.ts +18 -22
- package/dist/EventInfoUtil.js +36 -36
- package/dist/index.d.ts +4 -6
- package/dist/index.js +5 -6
- package/dist/typed-emitter.d.ts +17 -20
- package/dist/typed-emitter.js +4 -0
- package/package.json +5 -5
package/dist/Event.d.ts
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { EventHandler } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
declare function Event<E extends keyof Events>(eventName: E): (clazz: new () => EventHandler<E>) => void;
|
|
6
|
-
//#endregion
|
|
7
|
-
export { Event, Events };
|
|
1
|
+
import type { EventHandler } from './EventBus.ts';
|
|
2
|
+
export interface Events {
|
|
3
|
+
}
|
|
4
|
+
export declare function Event<E extends keyof Events>(eventName: E): (clazz: new () => EventHandler<E>) => void;
|
package/dist/Event.js
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
+
import { AccessLevel, PrototypeUtil, SingletonProto } from '@eggjs/core-decorator';
|
|
2
|
+
import { StackUtil } from '@eggjs/tegg-common-util';
|
|
1
3
|
import { EventInfoUtil } from "./EventInfoUtil.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
};
|
|
4
|
+
export function Event(eventName) {
|
|
5
|
+
return function (clazz) {
|
|
6
|
+
EventInfoUtil.addEventName(eventName, clazz);
|
|
7
|
+
const func = SingletonProto({
|
|
8
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
9
|
+
});
|
|
10
|
+
func(clazz);
|
|
11
|
+
PrototypeUtil.setFilePath(clazz, StackUtil.getCalleeFromStack(false, 5));
|
|
12
|
+
};
|
|
12
13
|
}
|
|
13
|
-
|
|
14
|
-
//#endregion
|
|
15
|
-
export { Event };
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvRXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUluRCxNQUFNLFVBQVUsS0FBSyxDQUF5QixTQUFZO0lBQ3hELE9BQU8sVUFBUyxLQUFnQztRQUM5QyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3QyxNQUFNLElBQUksR0FBRyxjQUFjLENBQUM7WUFDMUIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNO1NBQ2hDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNaLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDLENBQUM7QUFDSixDQUFDIn0=
|
package/dist/EventBus.d.ts
CHANGED
|
@@ -1,49 +1,46 @@
|
|
|
1
|
-
import { Events } from
|
|
2
|
-
import { IEventContext } from
|
|
3
|
-
import { Arguments, TypedEventEmitter } from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
type EventName = string | symbol;
|
|
1
|
+
import type { Events } from './Event.ts';
|
|
2
|
+
import type { IEventContext } from './EventContext.ts';
|
|
3
|
+
import type { Arguments, TypedEventEmitter } from './typed-emitter.ts';
|
|
4
|
+
export type EventName = string | symbol;
|
|
5
|
+
export type { Arguments };
|
|
7
6
|
/**
|
|
8
7
|
* use `emit` to emit a event
|
|
9
8
|
*/
|
|
10
|
-
interface EventBus extends Pick<TypedEventEmitter<Events>, 'emit'> {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
export interface EventBus extends Pick<TypedEventEmitter<Events>, 'emit'> {
|
|
10
|
+
cork(corkId: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* @return true if uncorked
|
|
13
|
+
*/
|
|
14
|
+
uncork(corkId: string): boolean;
|
|
16
15
|
}
|
|
17
|
-
declare const CORK_ID: unique symbol;
|
|
18
|
-
interface ContextEventBus extends EventBus {
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
export declare const CORK_ID: unique symbol;
|
|
17
|
+
export interface ContextEventBus extends EventBus {
|
|
18
|
+
cork(): void;
|
|
19
|
+
uncork(): boolean;
|
|
21
20
|
}
|
|
22
|
-
type EventKeys = keyof Events;
|
|
21
|
+
export type EventKeys = keyof Events;
|
|
23
22
|
/**
|
|
24
23
|
* use to ensure event will happen
|
|
25
24
|
* Can not inject for now, only use for unittest
|
|
26
25
|
*/
|
|
27
|
-
interface EventWaiter {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
26
|
+
export interface EventWaiter {
|
|
27
|
+
await<E extends keyof Events>(event: E): Promise<Arguments<Events[E]>>;
|
|
28
|
+
awaitFirst<E1 extends EventKeys, E2 extends EventKeys>(e1: E1, e2: E2): Promise<{
|
|
29
|
+
event: E1 | E2;
|
|
30
|
+
args: Arguments<Events[E1] | Events[E2]>;
|
|
31
|
+
}>;
|
|
32
|
+
awaitFirst<E1 extends EventKeys, E2 extends EventKeys, E3 extends EventKeys>(e1: E1, e2: E2, e3: E3): Promise<{
|
|
33
|
+
event: E1 | E2 | E3;
|
|
34
|
+
args: Arguments<Events[E1] | Events[E2] | Events[E3]>;
|
|
35
|
+
}>;
|
|
36
|
+
awaitFirst<E1 extends EventKeys, E2 extends EventKeys, E3 extends EventKeys, E4 extends EventKeys>(e1: E1, e2: E2, e3: E3, e4: E4): Promise<{
|
|
37
|
+
event: E1 | E2 | E3 | E4;
|
|
38
|
+
args: Arguments<Events[E1] | Events[E2] | Events[E3] | Events[E4]>;
|
|
39
|
+
}>;
|
|
41
40
|
}
|
|
42
41
|
type EventHandlerWithContext<E extends keyof Events> = {
|
|
43
|
-
|
|
42
|
+
handle: (ctx: IEventContext, ...args: Arguments<Events[E]>) => ReturnType<Events[E]>;
|
|
44
43
|
};
|
|
45
|
-
type EventHandler<E extends keyof Events> = {
|
|
46
|
-
|
|
44
|
+
export type EventHandler<E extends keyof Events> = {
|
|
45
|
+
handle: Events[E];
|
|
47
46
|
} | EventHandlerWithContext<E>;
|
|
48
|
-
//#endregion
|
|
49
|
-
export { CORK_ID, ContextEventBus, EventBus, EventHandler, EventKeys, EventName, EventWaiter };
|
package/dist/EventBus.js
CHANGED
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
//#endregion
|
|
5
|
-
export { CORK_ID };
|
|
1
|
+
export const CORK_ID = Symbol.for('eventBus#corkId');
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRCdXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvRXZlbnRCdXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUJBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMifQ==
|
package/dist/EventContext.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import { Events } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
interface IEventContext {
|
|
5
|
-
eventName: keyof Events;
|
|
1
|
+
import type { Events } from './Event.ts';
|
|
2
|
+
export interface IEventContext {
|
|
3
|
+
eventName: keyof Events;
|
|
6
4
|
}
|
|
7
|
-
declare function EventContext(): (target: any, propertyKey: PropertyKey, parameterIndex: number) => void;
|
|
8
|
-
//#endregion
|
|
9
|
-
export { EventContext, IEventContext };
|
|
5
|
+
export declare function EventContext(): (target: any, propertyKey: PropertyKey, parameterIndex: number) => void;
|
package/dist/EventContext.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
1
2
|
import { EventInfoUtil } from "./EventInfoUtil.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const clazz = target.constructor;
|
|
10
|
-
EventInfoUtil.setEventHandlerContextInject(true, clazz);
|
|
11
|
-
};
|
|
3
|
+
export function EventContext() {
|
|
4
|
+
return function (target, propertyKey, parameterIndex) {
|
|
5
|
+
assert(propertyKey === 'handle', `[eventHandler ${target.name}] expect method name be handle, but now is ${String(propertyKey)}`);
|
|
6
|
+
assert(parameterIndex === 0, `[eventHandler ${target.name}] expect param EventContext be the first param`);
|
|
7
|
+
const clazz = target.constructor;
|
|
8
|
+
EventInfoUtil.setEventHandlerContextInject(true, clazz);
|
|
9
|
+
};
|
|
12
10
|
}
|
|
13
|
-
|
|
14
|
-
//#endregion
|
|
15
|
-
export { EventContext };
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0V2ZW50Q29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFJakMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBT25ELE1BQU0sVUFBVSxZQUFZO0lBQzFCLE9BQU8sVUFBUyxNQUFXLEVBQUUsV0FBd0IsRUFBRSxjQUFzQjtRQUMzRSxNQUFNLENBQUMsV0FBVyxLQUFLLFFBQVEsRUFDN0IsaUJBQWlCLE1BQU0sQ0FBQyxJQUFJLDhDQUE4QyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ25HLE1BQU0sQ0FBQyxjQUFjLEtBQUssQ0FBQyxFQUN6QixpQkFBaUIsTUFBTSxDQUFDLElBQUksZ0RBQWdELENBQUMsQ0FBQztRQUNoRixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsV0FBZ0MsQ0FBQztRQUN0RCxhQUFhLENBQUMsNEJBQTRCLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUMsQ0FBQztBQUNKLENBQUMifQ==
|
package/dist/EventInfoUtil.d.ts
CHANGED
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
declare
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
static setEventHandlerContextInject(enable: boolean, clazz: EggProtoImplClass): void;
|
|
20
|
-
static getEventHandlerContextInject(clazz: EggProtoImplClass): boolean;
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
import type { EventName } from './EventBus.ts';
|
|
3
|
+
export declare const EVENT_NAME: unique symbol;
|
|
4
|
+
export declare const EVENT_CONTEXT_INJECT: unique symbol;
|
|
5
|
+
export declare class EventInfoUtil {
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated
|
|
8
|
+
*/
|
|
9
|
+
static setEventName(eventName: EventName, clazz: EggProtoImplClass): void;
|
|
10
|
+
static addEventName(eventName: EventName, clazz: EggProtoImplClass): void;
|
|
11
|
+
static getEventNameList(clazz: EggProtoImplClass): EventName[];
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated
|
|
14
|
+
* return the last eventName which is subscribed firstly by Event decorator
|
|
15
|
+
*/
|
|
16
|
+
static getEventName(clazz: EggProtoImplClass): EventName | undefined;
|
|
17
|
+
static setEventHandlerContextInject(enable: boolean, clazz: EggProtoImplClass): void;
|
|
18
|
+
static getEventHandlerContextInject(clazz: EggProtoImplClass): boolean;
|
|
21
19
|
}
|
|
22
|
-
//#endregion
|
|
23
|
-
export { EVENT_CONTEXT_INJECT, EVENT_NAME, EventInfoUtil };
|
package/dist/EventInfoUtil.js
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { MetadataUtil } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
1
|
+
import { MetadataUtil } from '@eggjs/core-decorator';
|
|
2
|
+
export const EVENT_NAME = Symbol.for('EggPrototype#eventName');
|
|
3
|
+
export const EVENT_CONTEXT_INJECT = Symbol.for('EggPrototype#event#handler#context#inject');
|
|
4
|
+
export class EventInfoUtil {
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated
|
|
7
|
+
*/
|
|
8
|
+
static setEventName(eventName, clazz) {
|
|
9
|
+
EventInfoUtil.addEventName(eventName, clazz);
|
|
10
|
+
}
|
|
11
|
+
static addEventName(eventName, clazz) {
|
|
12
|
+
const eventNameList = MetadataUtil.initOwnArrayMetaData(EVENT_NAME, clazz, []);
|
|
13
|
+
eventNameList.push(eventName);
|
|
14
|
+
}
|
|
15
|
+
static getEventNameList(clazz) {
|
|
16
|
+
return MetadataUtil.getArrayMetaData(EVENT_NAME, clazz);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated
|
|
20
|
+
* return the last eventName which is subscribed firstly by Event decorator
|
|
21
|
+
*/
|
|
22
|
+
static getEventName(clazz) {
|
|
23
|
+
const eventNameList = MetadataUtil.initOwnArrayMetaData(EVENT_NAME, clazz, []);
|
|
24
|
+
if (eventNameList.length !== 0) {
|
|
25
|
+
return eventNameList[eventNameList.length - 1];
|
|
26
|
+
}
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
static setEventHandlerContextInject(enable, clazz) {
|
|
30
|
+
MetadataUtil.defineMetaData(EVENT_CONTEXT_INJECT, enable, clazz);
|
|
31
|
+
}
|
|
32
|
+
static getEventHandlerContextInject(clazz) {
|
|
33
|
+
return MetadataUtil.getMetaData(EVENT_CONTEXT_INJECT, clazz) ?? false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9FdmVudEluZm9VdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUtyRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQy9ELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsMkNBQTJDLENBQUMsQ0FBQztBQUU1RixNQUFNLE9BQU8sYUFBYTtJQUN4Qjs7T0FFRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBb0IsRUFBRSxLQUF3QjtRQUNoRSxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxTQUFvQixFQUFFLEtBQXdCO1FBQ2hFLE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQyxvQkFBb0IsQ0FBWSxVQUFVLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFGLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUF3QjtRQUM5QyxPQUFPLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBd0I7UUFDMUMsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLG9CQUFvQixDQUFZLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDMUYsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9CLE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNLENBQUMsNEJBQTRCLENBQUMsTUFBZSxFQUFFLEtBQXdCO1FBQzNFLFlBQVksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLENBQUMsNEJBQTRCLENBQUMsS0FBd0I7UUFDMUQsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUN4RSxDQUFDO0NBQ0YifQ==
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { EVENT_CONTEXT_INJECT, EVENT_NAME, EventInfoUtil } from "./EventInfoUtil.js";
|
|
6
|
-
export { Arguments, CORK_ID, ContextEventBus, EVENT_CONTEXT_INJECT, EVENT_NAME, Event, EventBus, EventContext, EventHandler, EventInfoUtil, EventKeys, EventName, EventWaiter, Events, IEventContext };
|
|
1
|
+
export * from './EventBus.ts';
|
|
2
|
+
export * from './Event.ts';
|
|
3
|
+
export * from './EventInfoUtil.ts';
|
|
4
|
+
export * from './EventContext.ts';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export { CORK_ID, EVENT_CONTEXT_INJECT, EVENT_NAME, Event, EventContext, EventInfoUtil };
|
|
1
|
+
export * from "./EventBus.js";
|
|
2
|
+
export * from "./Event.js";
|
|
3
|
+
export * from "./EventInfoUtil.js";
|
|
4
|
+
export * from "./EventContext.js";
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG1CQUFtQixDQUFDIn0=
|
package/dist/typed-emitter.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
type Arguments<T> = [T] extends [(...args: infer U) => any] ? U : [T] extends [void] ? [] : [T];
|
|
1
|
+
export type Arguments<T> = [T] extends [(...args: infer U) => any] ? U : [T] extends [void] ? [] : [T];
|
|
3
2
|
/**
|
|
4
3
|
* Type-safe event emitter.
|
|
5
4
|
*
|
|
@@ -18,22 +17,20 @@ type Arguments<T> = [T] extends [(...args: infer U) => any] ? U : [T] extends [v
|
|
|
18
17
|
*
|
|
19
18
|
* myEmitter.emit("error", "x") // <- Will catch this type error
|
|
20
19
|
*/
|
|
21
|
-
interface TypedEventEmitter<Events> {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
20
|
+
export interface TypedEventEmitter<Events> {
|
|
21
|
+
addListener<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
22
|
+
on<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
23
|
+
once<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
24
|
+
prependListener<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
25
|
+
prependOnceListener<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
26
|
+
off<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
27
|
+
removeAllListeners<E extends keyof Events>(event?: E): this;
|
|
28
|
+
removeListener<E extends keyof Events>(event: E, listener: Events[E]): this;
|
|
29
|
+
emit<E extends keyof Events>(event: E, ...args: Arguments<Events[E]>): boolean;
|
|
30
|
+
eventNames(): (keyof Events | string | symbol)[];
|
|
31
|
+
rawListeners<E extends keyof Events>(event: E): Function[];
|
|
32
|
+
listeners<E extends keyof Events>(event: E): Function[];
|
|
33
|
+
listenerCount<E extends keyof Events>(event: E): number;
|
|
34
|
+
getMaxListeners(): number;
|
|
35
|
+
setMaxListeners(maxListeners: number): this;
|
|
37
36
|
}
|
|
38
|
-
//#endregion
|
|
39
|
-
export { Arguments, TypedEventEmitter };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// forked from https://github.com/andywer/typed-emitter
|
|
2
|
+
// export TypedEventEmitter from 'typed-emitter'
|
|
3
|
+
export {};
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZW1pdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlZC1lbWl0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxnREFBZ0QifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/eventbus-decorator",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.9",
|
|
4
4
|
"description": "tegg eventbus decorator",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"egg",
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
"directory": "core/eventbus-decorator"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@eggjs/
|
|
33
|
-
"@eggjs/
|
|
34
|
-
"@eggjs/tegg-
|
|
32
|
+
"@eggjs/core-decorator": "4.0.0-beta.9",
|
|
33
|
+
"@eggjs/tegg-common-util": "4.0.0-beta.9",
|
|
34
|
+
"@eggjs/tegg-types": "4.0.0-beta.9"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/node": "^22.10.5",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"types": "./dist/index.d.ts",
|
|
52
52
|
"scripts": {
|
|
53
53
|
"clean": "rimraf dist",
|
|
54
|
-
"build": "tsdown",
|
|
54
|
+
"build": "tsdown && rimraf dist && tsc -b --clean && tsc",
|
|
55
55
|
"typecheck": "tsc --noEmit"
|
|
56
56
|
}
|
|
57
57
|
}
|