1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| import fs from 'node:fs'
| import path from 'node:path'
| import { fileURLToPath } from 'node:url'
| import { createRequire } from 'node:module'
| import { spawn } from 'node:child_process'
|
| const pkg = createRequire(import.meta.url)('../package.json')
| const __dirname = path.dirname(fileURLToPath(import.meta.url))
|
| // write .debug.env
| const envContent = Object.entries(pkg.debug.env).map(([key, val]) => `${key}=${val}`)
| fs.writeFileSync(path.join(__dirname, '.debug.env'), envContent.join('\n'))
|
| // bootstrap
| spawn(
| // TODO: terminate `npm run dev` when Debug exits.
| process.platform === 'win32' ? 'npm.cmd' : 'npm',
| ['run', 'dev'],
| {
| stdio: 'inherit',
| env: Object.assign(process.env, { VSCODE_DEBUG: 'true' }),
| },
| )
|
|