Commit | Line | Data |
---|---|---|
653b69b4 JB |
1 | import chalk from 'chalk'; |
2 | import semVer from 'semver'; | |
3 | import packageJson from './package.json' assert { type: 'json' }; | |
1f7fa4de | 4 | |
653b69b4 | 5 | const enginesNodeVersion = packageJson.engines.node; |
1f7fa4de | 6 | |
67623aa6 | 7 | /** |
fc040c43 | 8 | * Check if the current node version match the required engines version. |
67623aa6 | 9 | */ |
653b69b4 JB |
10 | export function checkNodeVersion() { |
11 | if (semVer.satisfies(process.version, enginesNodeVersion) === false) { | |
67623aa6 JB |
12 | console.error( |
13 | chalk.red( | |
14 | `Required node version ${enginesNodeVersion} not satisfied with current version ${process.version}.` | |
15 | ) | |
16 | ); | |
ef85c95a | 17 | // eslint-disable-next-line n/no-process-exit |
67623aa6 JB |
18 | process.exit(1); |
19 | } | |
1f7fa4de | 20 | } |
67623aa6 JB |
21 | |
22 | checkNodeVersion(); |