2025-04-14 14:54:18 +00:00

22 lines
435 B
JavaScript

export default class WSEvent {
constructor(fn, middlewares = []) {
this.fn = fn
this.middlewares = middlewares
}
execute = async (socket, body) => {
try {
// execute middlewares
for await (const middleware of this.middlewares) {
await middleware(socket, body)
}
await this.fn(socket, body)
} catch (error) {
await this.onError(socket, body, error)
}
}
onError = async (socket, body, error) => {}
}