type MessagePayload,
MessageType,
type WorkerData,
- type WorkerResponse
+ type WorkerResponse,
} from './types.js'
class WebSocketServerWorker extends ClusterWorker<WorkerData, WorkerResponse> {
private static readonly startWebSocketServer = (
workerData?: WorkerData
): WorkerResponse => {
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const { port } = workerData!
WebSocketServerWorker.wss = new WebSocketServer({ port }, () => {
console.info(
- `⚡️[ws server]: WebSocket server is started in cluster worker at ws://localhost:${port}/`
+ `⚡️[ws server]: WebSocket server is started in cluster worker at ws://localhost:${port.toString()}/`
)
})
ws.send(
JSON.stringify({
type: MessageType.echo,
- data
+ data,
})
)
break
{
type: MessageType.factorial,
data: {
- number: WebSocketServerWorker.factorial(data.number!)
- }
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ number: WebSocketServerWorker.factorial(data.number!),
+ },
},
- (_, v) => (typeof v === 'bigint' ? v.toString() : v)
+ (_, v: unknown) => (typeof v === 'bigint' ? v.toString() : v)
)
)
break
})
return {
status: true,
- port: WebSocketServerWorker.wss.options.port
+ port: WebSocketServerWorker.wss.options.port,
}
}
super(WebSocketServerWorker.startWebSocketServer, {
killHandler: () => {
WebSocketServerWorker.wss.close()
- }
+ },
})
}
}