1
1
import EventEmitter from 'node:events' ;
2
2
import type { CommandKit } from '../CommandKit' ;
3
3
import type { AsyncFunction , GenericFunction } from '../context/async-context' ;
4
- import { runInEventWorkerContext } from '../app/events/EventWorkerContext' ;
5
4
6
5
export type ListenerFunction = GenericFunction | AsyncFunction ;
7
6
@@ -21,24 +20,15 @@ export class CommandKitEventsChannel {
21
20
}
22
21
23
22
public on ( namespace : string , event : string , listener : ListenerFunction ) {
24
- this . emitter . on (
25
- `${ namespace } :${ event } ` ,
26
- this . prepareListener ( namespace , event , listener ) ,
27
- ) ;
23
+ this . emitter . on ( `${ namespace } :${ event } ` , listener ) ;
28
24
}
29
25
30
26
public off ( namespace : string , event : string , listener : ListenerFunction ) {
31
- this . emitter . off (
32
- `${ namespace } :${ event } ` ,
33
- this . prepareListener ( namespace , event , listener ) ,
34
- ) ;
27
+ this . emitter . off ( `${ namespace } :${ event } ` , listener ) ;
35
28
}
36
29
37
30
public once ( namespace : string , event : string , listener : ListenerFunction ) {
38
- this . emitter . once (
39
- `${ namespace } :${ event } ` ,
40
- this . prepareListener ( namespace , event , listener ) ,
41
- ) ;
31
+ this . emitter . once ( `${ namespace } :${ event } ` , listener ) ;
42
32
}
43
33
44
34
public emit ( namespace : string , event : string , ...args : any [ ] ) {
@@ -54,28 +44,4 @@ export class CommandKitEventsChannel {
54
44
this . emitter . removeAllListeners ( namespace ) ;
55
45
}
56
46
}
57
-
58
- private prepareListener < L extends ListenerFunction > (
59
- namespace : string ,
60
- event : string ,
61
- listener : L ,
62
- ) : L {
63
- return ( ( ...args ) => {
64
- return runInEventWorkerContext (
65
- {
66
- arguments : args ,
67
- commandkit : this . commandkit ,
68
- data : {
69
- event,
70
- namespace,
71
- listeners : [ ] ,
72
- path : `virtual:${ namespace } /${ event } ` ,
73
- } ,
74
- event,
75
- namespace,
76
- } ,
77
- ( ) => listener ( ...args ) ,
78
- ) ;
79
- } ) as L ;
80
- }
81
47
}
0 commit comments