Skip to content

Commit bbde722

Browse files
committed
use EventEmitter
1 parent be7daa3 commit bbde722

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

‎minimon-3.mjs‎

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#!/usr/bin/env node
2+
3+
import 'zx/globals'
4+
import chokidar from 'chokidar'
5+
import { EventEmitter } from 'events'
6+
7+
let node
8+
let ee = new EventEmitter()
9+
10+
chokidar
11+
.watch(['**/*.mjs', '**/*.js'], {
12+
ignoreInitial: true,
13+
ignored: ['**/node_modules/**'],
14+
})
15+
.on('all', () => {
16+
node.kill()
17+
})
18+
19+
ee.on('restart', async () => {
20+
console.log('Restarting')
21+
await start()
22+
})
23+
24+
await start()
25+
26+
async function start () {
27+
node = $`node ${process.argv[2]}`
28+
try {
29+
await node
30+
} catch {
31+
ee.emit('restart')
32+
}
33+
}

0 commit comments

Comments
 (0)