refactor: refine OCPP stack log message
[e-mobility-charging-stations-simulator.git] / build-requirements.js
index 7f36a4876c4ade6c23e0aa8548c2cb5c8be97527..839be558929cb737f192b90a24cc4152ea284cbd 100644 (file)
@@ -1,24 +1,22 @@
-const chalk = require('chalk');
-// eslint-disable-next-line node/no-unpublished-require
-const SemVer = require('semver');
-
-const enginesNodeVersion = require('./package.json').engines.node;
+import chalk from 'chalk';
+import semVer from 'semver';
+import packageJson from './package.json' assert { type: 'json' };
+import { version, exit } from 'node:process';
 
 /**
- *
+ * Check if the current node version match the required engines version.
  */
-function checkNodeVersion() {
-  if (SemVer.satisfies(process.version, enginesNodeVersion) === false) {
+export function checkNodeVersion() {
+  const enginesNodeVersion = packageJson.engines.node;
+  if (semVer.satisfies(version, enginesNodeVersion) === false) {
     console.error(
       chalk.red(
-        `Required node version ${enginesNodeVersion} not satisfied with current version ${process.version}.`
-      )
+        `Required node version ${enginesNodeVersion} not satisfied with current version ${version}.`,
+      ),
     );
-    // eslint-disable-next-line no-process-exit
-    process.exit(1);
+    // eslint-disable-next-line n/no-process-exit
+    exit(1);
   }
 }
 
 checkNodeVersion();
-
-module.exports = { checkNodeVersion };