build: update volta node version
[e-mobility-charging-stations-simulator.git] / rollup.config.mjs
index 63f8acc7bbc8285c72b23f55115e481e297ebd4f..40f1d6794c150c409643c4874914fab5a0e0815c 100644 (file)
@@ -1,10 +1,12 @@
 /* eslint-disable n/no-unpublished-import */
 import * as os from 'node:os';
+import { env } from 'node:process';
 
 import json from '@rollup/plugin-json';
 import terser from '@rollup/plugin-terser';
 import typescript from '@rollup/plugin-typescript';
 import { copy } from '@web/rollup-plugin-copy';
+import { defineConfig } from 'rollup';
 import analyze from 'rollup-plugin-analyzer';
 import del from 'rollup-plugin-delete';
 
@@ -14,25 +16,26 @@ const availableParallelism = () => {
   try {
     availableParallelism = os.availableParallelism();
   } catch {
-    const numberOfCpus = os.cpus();
-    if (Array.isArray(numberOfCpus) && numberOfCpus.length > 0) {
-      availableParallelism = numberOfCpus.length;
+    const cpus = os.cpus();
+    if (Array.isArray(cpus) && cpus.length > 0) {
+      availableParallelism = cpus.length;
     }
   }
   return availableParallelism;
 };
 
-const isDevelopmentBuild = process.env.BUILD === 'development';
-const isAnalyzeBuild = process.env.ANALYZE;
+const isDevelopmentBuild = env.BUILD === 'development';
+const isAnalyzeBuild = env.ANALYZE;
+const sourceMap = !!isDevelopmentBuild;
 
-export default {
-  input: ['src/start.ts', 'src/charging-station/ChargingStationWorker.ts'],
+export default defineConfig({
+  input: ['./src/start.ts', './src/charging-station/ChargingStationWorker.ts'],
   strictDeprecations: true,
   output: [
     {
-      dir: 'dist',
+      dir: './dist',
       format: 'esm',
-      sourcemap: !!isDevelopmentBuild,
+      sourcemap: sourceMap,
       plugins: [terser({ maxWorkers: Math.floor(availableParallelism() / 2) })],
     },
   ],
@@ -43,20 +46,22 @@ export default {
     'ajv-formats',
     'basic-ftp',
     'chalk',
+    'date-fns',
+    'deep-clone',
     'http-status-codes',
-    'just-clone',
     'just-merge',
     'mnemonist/lru-map-with-delete.js',
     'mnemonist/queue.js',
-    'moment',
     'mongodb',
     'node:async_hooks',
     'node:crypto',
     'node:events',
     'node:fs',
     'node:http',
+    'node:http2',
     'node:path',
     'node:perf_hooks',
+    'node:process',
     'node:stream',
     'node:url',
     'node:util',
@@ -71,23 +76,23 @@ export default {
   plugins: [
     json(),
     typescript({
-      tsconfig: 'tsconfig.json',
+      tsconfig: './tsconfig.json',
       compilerOptions: {
-        sourceMap: !!isDevelopmentBuild,
+        sourceMap,
       },
     }),
     del({
       targets: [
-        'dist/*',
-        '!dist/assets',
-        'dist/assets/*.json',
-        'dist/assets/json-schemas',
-        'dist/assets/station-templates',
-        'dist/assets/ui-protocol',
+        './dist/*',
+        '!./dist/assets',
+        './dist/assets/*.json',
+        './dist/assets/json-schemas',
+        './dist/assets/station-templates',
+        './dist/assets/ui-protocol',
       ],
     }),
     copy({
-      rootDir: 'src',
+      rootDir: './src',
       patterns: 'assets/**/*.json',
       exclude: [
         'assets/config-template.json',
@@ -99,4 +104,4 @@ export default {
     }),
     isAnalyzeBuild && analyze(),
   ],
-};
+});