| 567 | } |
| 568 | |
| 569 | async function stopChild(child) { |
| 570 | if (!child || child.exitCode !== null) return |
| 571 | child.kill('SIGTERM') |
| 572 | const exited = await Promise.race([ |
| 573 | new Promise((resolvePromise) => child.once('exit', () => resolvePromise(true))), |
| 574 | sleep(1000).then(() => false) |
| 575 | ]) |
| 576 | if (!exited && child.exitCode === null) { |
| 577 | child.kill('SIGKILL') |
| 578 | await Promise.race([ |
| 579 | new Promise((resolvePromise) => child.once('exit', () => resolvePromise(true))), |
| 580 | sleep(1000) |
| 581 | ]) |
| 582 | } |
| 583 | } |
| 584 | |
| 585 | async function main() { |
| 586 | await prepareWebDist() |