+import { readFileSync } from 'node:fs'
+import { exit, version } from 'node:process'
+
import chalk from 'chalk'
-import semVer from 'semver'
-import packageJson from './package.json' assert { type: 'json' }
-import { version, exit } from 'node:process'
+// eslint-disable-next-line n/no-unpublished-import
+import { satisfies } from 'semver'
+
+const packageJson = JSON.parse(readFileSync('./package.json', 'utf8'))
/**
* Check if the current node version match the required engines version.
*/
export const checkNodeVersion = () => {
const enginesNodeVersion = packageJson.engines.node
- if (semVer.satisfies(version, enginesNodeVersion) === false) {
+ if (satisfies(version, enginesNodeVersion) === false) {
console.error(
chalk.red(
`Required node version ${enginesNodeVersion} not satisfied with current version ${version}`