Total Complexity | 2 |
Complexity/F | 2 |
Lines of Code | 17 |
Function Count | 1 |
Duplicated Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | |||
2 | import { WebSocketServer } from 'ws' |
||
3 | import { createServer, killServer } from './WS' |
||
4 | |||
5 | let port: number, |
||
6 | server: WebSocketServer|null |
||
7 | |||
8 | export default async (new_port?: number) => { |
||
9 | if(!server) { |
||
10 | port = new_port || 8000 + Math.ceil(Math.random()*500) |
||
11 | server = await createServer(port) |
||
12 | } |
||
13 | return { |
||
14 | server, port, |
||
15 | isRunning() {return Boolean(server)}, |
||
16 | shutDown: async () => { await killServer(); server=null } |
||
17 | } |
||
18 | } |