update
This commit is contained in:
42
client/app/composables/use-event-bus.ts
Normal file
42
client/app/composables/use-event-bus.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
import type { ChadClient, Consumer, Producer } from '#shared/types'
|
||||
import type { EventType } from 'mitt'
|
||||
import mitt from 'mitt'
|
||||
|
||||
export interface AppEvents extends Record<EventType, unknown> {
|
||||
'socket:connected': void
|
||||
'socket:disconnected': void
|
||||
'socket:authenticated': { socketId: string }
|
||||
|
||||
'client:added': ChadClient
|
||||
'client:removed': ChadClient
|
||||
'client:updated': { socketId: string, oldClient: ChadClient, updatedClient: Partial<ChadClient> }
|
||||
|
||||
'consumer:added': Consumer
|
||||
'consumer:removed': Consumer
|
||||
'consumer:paused': Consumer
|
||||
'consumer:resumed': Consumer
|
||||
|
||||
'producer:added': Producer
|
||||
'producer:removed': Producer
|
||||
'producer:paused': Producer
|
||||
'producer:resumed': Producer
|
||||
|
||||
'audio:muted': void
|
||||
'audio:unmuted': void
|
||||
'output:muted': void
|
||||
'output:unmuted': void
|
||||
'video:enabled': void
|
||||
'video:disabled': void
|
||||
'share:enabled': void
|
||||
'share:disabled': void
|
||||
}
|
||||
|
||||
const emitter = mitt<AppEvents>()
|
||||
|
||||
export function useEventBus() {
|
||||
return {
|
||||
emit: emitter.emit,
|
||||
on: emitter.on,
|
||||
off: emitter.off,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user