2024-08-03 09:51:45 -05:00
|
|
|
class CommandEvents {
|
|
|
|
|
eventTarget;
|
|
|
|
|
|
|
|
|
|
constructor() {
|
|
|
|
|
this.eventTarget = new EventTarget();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Method to emit events
|
2024-08-11 22:14:36 -05:00
|
|
|
emit(eventName: string, info?: any) {
|
|
|
|
|
const event = new CustomEvent(eventName, { detail: info });
|
2024-08-03 09:51:45 -05:00
|
|
|
this.eventTarget.dispatchEvent(event);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Method to listen for events
|
2024-08-11 22:14:36 -05:00
|
|
|
on(eventName: string, callback: (info?: any) => void) {
|
|
|
|
|
this.eventTarget.addEventListener(eventName, (infoF?: any) => {
|
|
|
|
|
callback(infoF.detail);
|
2024-08-03 09:51:45 -05:00
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const events = new CommandEvents();
|
|
|
|
|
export default events;
|