Revert docker build to one OS only
[e-mobility-charging-stations-simulator.git] / rollup.config.mjs
index 7f0e577421bfea9af77707e0ddb060b63ebd55a5..57a3190eef0211519bcfbe5892695b99dd0696c4 100644 (file)
@@ -1,32 +1,50 @@
+import json from '@rollup/plugin-json';
 import analyze from 'rollup-plugin-analyzer';
 import copy from 'rollup-plugin-copy';
 import del from 'rollup-plugin-delete';
 import istanbul from 'rollup-plugin-istanbul';
-import json from '@rollup/plugin-json';
 import { terser } from 'rollup-plugin-terser';
 import ts from 'rollup-plugin-ts';
 
 const isDevelopmentBuild = process.env.BUILD === 'development';
 
 export default {
-  input: ['src/start.ts', 'src/ui/httpd/start.ts', 'src/charging-station/ChargingStationWorker.ts'],
-  output: {
-    dir: 'dist',
-    format: 'cjs',
-    exports: 'auto',
-    sourcemap: true,
-    preserveModules: true,
-    preserveModulesRoot: 'src',
-    ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }),
-  },
+  input: ['src/start.ts', 'src/charging-station/ChargingStationWorker.ts'],
+  output: [
+    {
+      dir: 'dist',
+      format: 'es',
+      exports: 'auto',
+      sourcemap: true,
+      preserveModules: true,
+      preserveModulesRoot: 'src',
+      entryFileNames: '[name].mjs',
+      ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }),
+    },
+    {
+      dir: 'dist',
+      format: 'cjs',
+      exports: 'auto',
+      sourcemap: true,
+      preserveModules: true,
+      preserveModulesRoot: 'src',
+      entryFileNames: '[name].cjs',
+      ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }),
+    },
+  ],
   external: [
+    '@mikro-orm/core',
+    '@mikro-orm/reflection',
+    'ajv',
+    'ajv-draft-04',
+    'ajv-formats',
+    'async_hooks',
     'basic-ftp',
     'chalk',
     'crypto',
-    'express',
     'fs',
-    '@mikro-orm/core',
-    '@mikro-orm/reflection',
+    'http',
+    'http-status-codes',
     'mnemonist/lru-map-with-delete',
     'moment',
     'mongodb',
@@ -38,11 +56,11 @@ export default {
     'tar',
     'url',
     'uuid',
-    'ws',
+    'winston',
     'winston-daily-rotate-file',
     'winston/lib/winston/transports/index.js',
-    'winston',
     'worker_threads',
+    'ws',
   ],
   plugins: [
     json(),
@@ -52,7 +70,13 @@ export default {
     }),
     isDevelopmentBuild && istanbul(),
     del({
-      targets: ['dist/*', '!dist/assets', 'dist/assets/*.json', 'dist/assets/station-templates'],
+      targets: [
+        'dist/*',
+        '!dist/assets',
+        'dist/assets/*.json',
+        'dist/assets/station-templates',
+        'dist/assets/json-schemas',
+      ],
     }),
     copy({
       targets: [{ src: 'src/assets', dest: 'dist/' }],