]> BookStack Code Mirror - bookstack/blobdiff - resources/js/services/events.ts
Search: Prevented negated terms filling in UI inputs
[bookstack] / resources / js / services / events.ts
index 7d72a9f1af5f199f0dd5a8d14552ad224cd0b219..be9fba7eca515cebd616c09acfd1995f916f65ec 100644 (file)
@@ -1,13 +1,13 @@
 import {HttpError} from "./http";
 
 export class EventManager {
-    protected listeners: Record<string, ((data: {}) => void)[]> = {};
+    protected listeners: Record<string, ((data: any) => void)[]> = {};
     protected stack: {name: string, data: {}}[] = [];
 
     /**
      * Emit a custom event for any handlers to pick-up.
      */
-    emit(eventName: string, eventData: {}): void {
+    emit(eventName: string, eventData: {} = {}): void {
         this.stack.push({name: eventName, data: eventData});
 
         const listenersToRun = this.listeners[eventName] || [];
@@ -19,7 +19,7 @@ export class EventManager {
     /**
      * Listen to a custom event and run the given callback when that event occurs.
      */
-    listen(eventName: string, callback: (data: {}) => void): void {
+    listen<T>(eventName: string, callback: (data: T) => void): void {
         if (typeof this.listeners[eventName] === 'undefined') this.listeners[eventName] = [];
         this.listeners[eventName].push(callback);
     }