feat: switch the bundled code to ESM only
[e-mobility-charging-stations-simulator.git] / build-requirements.mjs
similarity index 52%
rename from build-requirements.js
rename to build-requirements.mjs
index 63c471312cdf8c1445ac5aa497b90867c47ff021..d3e7fe873f7ab60462052fa12d60d291424fdd7b 100644 (file)
@@ -1,14 +1,14 @@
-const chalk = require('chalk');
-// eslint-disable-next-line n/no-unpublished-require
-const SemVer = require('semver');
+import chalk from 'chalk';
+import semVer from 'semver';
+import packageJson from './package.json' assert { type: 'json' };
 
-const enginesNodeVersion = require('./package.json').engines.node;
+const enginesNodeVersion = packageJson.engines.node;
 
 /**
  * Check if the current node version match the required engines version.
  */
-function checkNodeVersion() {
-  if (SemVer.satisfies(process.version, enginesNodeVersion) === false) {
+export function checkNodeVersion() {
+  if (semVer.satisfies(process.version, enginesNodeVersion) === false) {
     console.error(
       chalk.red(
         `Required node version ${enginesNodeVersion} not satisfied with current version ${process.version}.`
@@ -20,5 +20,3 @@ function checkNodeVersion() {
 }
 
 checkNodeVersion();
-
-module.exports = { checkNodeVersion };