🚚 Rename sendEvent to emit

This commit is contained in:
Rune Harlyk
2026-01-03 18:10:37 +01:00
committed by nikguin04
parent 5295ad56c8
commit bfac75c8fb
5 changed files with 24 additions and 26 deletions
+7 -7
View File
@@ -168,7 +168,7 @@ function createWebSocket() {
} }
} }
function unsubscribe_event(event_type: SocketEvent, listener: (data: unknown) => void) { function unsubscribeEvent(event_type: SocketEvent, listener: (data: unknown) => void) {
const message_listeners_totag = event_listeners.get(event_type) const message_listeners_totag = event_listeners.get(event_type)
if (!message_listeners_totag) return if (!message_listeners_totag) return
@@ -180,7 +180,7 @@ function createWebSocket() {
unresponsiveTimeoutId = setTimeout(() => disconnect('unresponsive'), reconnectTimeoutTime) unresponsiveTimeoutId = setTimeout(() => disconnect('unresponsive'), reconnectTimeoutTime)
} }
function sendEvent<T>(event: MessageFns<T>, data: T) { function emit<T>(event: MessageFns<T>, data: T) {
if (!ws || ws.readyState !== WebSocket.OPEN) return if (!ws || ws.readyState !== WebSocket.OPEN) return
const type = getNameFromMessageType(event) const type = getNameFromMessageType(event)
const wsm = Message.create() as Record<string, unknown> const wsm = Message.create() as Record<string, unknown>
@@ -221,7 +221,7 @@ function createWebSocket() {
send(Message.create({ pingmsg: {} })) send(Message.create({ pingmsg: {} }))
} }
function sendRequest( function request(
data: CorrelationRequestData, data: CorrelationRequestData,
resolve: (r: CorrelationResponse) => void, resolve: (r: CorrelationResponse) => void,
reject: (e: Error) => void reject: (e: Error) => void
@@ -240,14 +240,14 @@ function createWebSocket() {
function flushQueuedRequests() { function flushQueuedRequests() {
for (const [, { data, resolve, reject }] of queued_requests) { for (const [, { data, resolve, reject }] of queued_requests) {
sendRequest(data, resolve, reject) request(data, resolve, reject)
} }
queued_requests.clear() queued_requests.clear()
} }
return { return {
subscribe, subscribe,
sendEvent, emit,
init, init,
on: <MT>(event_type: MessageFns<MT>, listener: (data: MT) => void): (() => void) => { on: <MT>(event_type: MessageFns<MT>, listener: (data: MT) => void): (() => void) => {
const tag = getTagFromMessageType(event_type) const tag = getTagFromMessageType(event_type)
@@ -272,13 +272,13 @@ function createWebSocket() {
} }
listeners.add(listener) listeners.add(listener)
return () => { return () => {
unsubscribe_event(event_type, listener) unsubscribeEvent(event_type, listener)
} }
}, },
request: (data: CorrelationRequestData): Promise<CorrelationResponse> => { request: (data: CorrelationRequestData): Promise<CorrelationResponse> => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (ws && ws.readyState === WebSocket.OPEN) { if (ws && ws.readyState === WebSocket.OPEN) {
sendRequest(data, resolve, reject) request(data, resolve, reject)
} else { } else {
const key = getRequestKey(data) const key = getRequestKey(data)
const existing = queued_requests.get(key) const existing = queued_requests.get(key)
+5 -7
View File
@@ -47,15 +47,13 @@
addEventListeners() addEventListeners()
input.subscribe(data => input.subscribe(data => throttler.throttle(() => socket.emit(ControllerData, data), 100))
throttler.throttle(() => socket.sendEvent(ControllerData, data), 100) mode.subscribe(data => socket.emit(ModeData, data))
) walkGait.subscribe(data => socket.emit(WalkGaitData, data))
mode.subscribe(data => socket.sendEvent(ModeData, data))
walkGait.subscribe(data => socket.sendEvent(WalkGaitData, data))
servoAnglesOut.subscribe(data => servoAnglesOut.subscribe(data =>
throttler.throttle(() => socket.sendEvent(AnglesData, data), 100) throttler.throttle(() => socket.emit(AnglesData, data), 100)
) )
kinematicData.subscribe(data => socket.sendEvent(KinematicData, data)) kinematicData.subscribe(data => socket.emit(KinematicData, data))
}) })
onDestroy(() => { onDestroy(() => {
@@ -14,7 +14,7 @@
onMount(() => { onMount(() => {
let unsub = socket.on(PeripheralSettingsData, handleSettings) let unsub = socket.on(PeripheralSettingsData, handleSettings)
socket.sendEvent(PeripheralSettingsDataRequest, {}) socket.emit(PeripheralSettingsDataRequest, {})
return unsub return unsub
}) })
@@ -33,7 +33,7 @@
}, },
onConfirm: () => { onConfirm: () => {
modals.close() modals.close()
socket.sendEvent(PeripheralSettingsData, settings) socket.emit(PeripheralSettingsData, settings)
} }
}) })
} }
@@ -12,16 +12,16 @@
const throttler = new Throttler() const throttler = new Throttler()
const activateServo = () => { const activateServo = () => {
socket.sendEvent(ServoStateData, ServoStateData.create({ active: true })) socket.emit(ServoStateData, ServoStateData.create({ active: true }))
} }
const deactivateServo = () => { const deactivateServo = () => {
socket.sendEvent(ServoStateData, ServoStateData.create({ active: false })) socket.emit(ServoStateData, ServoStateData.create({ active: false }))
} }
const updatePWM = () => { const updatePWM = () => {
throttler.throttle(() => { throttler.throttle(() => {
socket.sendEvent(ServoPWMData, ServoPWMData.create({ servoId: servoId, servoPwm: pwm })) socket.emit(ServoPWMData, ServoPWMData.create({ servoId: servoId, servoPwm: pwm }))
}, 10) }, 10)
} }
+7 -7
View File
@@ -98,7 +98,7 @@ describe.sequential('WebSocket Integration Tests', () => {
unsubscribe() unsubscribe()
}) })
it('should send IMU data from client to server using sendEvent', async () => { it('should send IMU data from client to server using emit', async () => {
let serverReceivedData: any = null let serverReceivedData: any = null
// Connect socket // Connect socket
@@ -157,8 +157,8 @@ describe.sequential('WebSocket Integration Tests', () => {
bmpTemp: 22, bmpTemp: 22,
pressure: 23 pressure: 23
}) })
socket.sendEvent(IMUData, imuData) socket.emit(IMUData, imuData)
console.log('Client: sendEvent called') console.log('Client: emit called')
}, 150) }, 150)
}) })
@@ -175,7 +175,7 @@ describe.sequential('WebSocket Integration Tests', () => {
expect(serverReceivedData?.imu.pressure).toBe(23) expect(serverReceivedData?.imu.pressure).toBe(23)
}) })
it('should fail to serialize data on sendEvent', async () => { it('should fail to serialize data on emit', async () => {
// Connect socket // Connect socket
socket.init(`ws://localhost:${TEST_PORT}`) socket.init(`ws://localhost:${TEST_PORT}`)
@@ -190,11 +190,11 @@ describe.sequential('WebSocket Integration Tests', () => {
// Send any invalid message type // Send any invalid message type
const wsm = Message.create() const wsm = Message.create()
try { try {
socket.sendEvent(Message as any, wsm) socket.emit(Message as any, wsm)
clearTimeout(timeout) clearTimeout(timeout)
reject(new Error('Expected sendEvent to throw, but it did not')) reject(new Error('Expected emit to throw, but it did not'))
} catch (e) { } catch (e) {
console.log('Client: sendEvent correctly threw error:', e) console.log('Client: emit correctly threw error:', e)
clearTimeout(timeout) clearTimeout(timeout)
resolve() resolve()
} }