Revert docker build to one OS only
[e-mobility-charging-stations-simulator.git] / rollup.config.mjs
CommitLineData
f412fe24 1import json from '@rollup/plugin-json';
cb1948a3 2import analyze from 'rollup-plugin-analyzer';
c4a19794 3import copy from 'rollup-plugin-copy';
44b07a21 4import del from 'rollup-plugin-delete';
4082efc1 5import istanbul from 'rollup-plugin-istanbul';
fc201913 6import { terser } from 'rollup-plugin-terser';
ae8ee665 7import ts from 'rollup-plugin-ts';
44b07a21 8
1d064457
JB
9const isDevelopmentBuild = process.env.BUILD === 'development';
10
44b07a21 11export default {
5a010bf0 12 input: ['src/start.ts', 'src/charging-station/ChargingStationWorker.ts'],
44a95b7f
JB
13 output: [
14 {
15 dir: 'dist',
16 format: 'es',
17 exports: 'auto',
18 sourcemap: true,
19 preserveModules: true,
20 preserveModulesRoot: 'src',
21 entryFileNames: '[name].mjs',
22 ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }),
23 },
24 {
25 dir: 'dist',
26 format: 'cjs',
27 exports: 'auto',
28 sourcemap: true,
29 preserveModules: true,
30 preserveModulesRoot: 'src',
31 entryFileNames: '[name].cjs',
32 ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }),
33 },
34 ],
e7aeea18 35 external: [
e3018bc4
JB
36 '@mikro-orm/core',
37 '@mikro-orm/reflection',
38 'ajv',
39 'ajv-draft-04',
40 'ajv-formats',
97613dc6 41 'async_hooks',
e7aeea18
JB
42 'basic-ftp',
43 'chalk',
44 'crypto',
45 'fs',
1f7fa4de 46 'http',
852a4c5f 47 'http-status-codes',
7c72977b 48 'mnemonist/lru-map-with-delete',
0bb3ee61 49 'moment',
e7aeea18
JB
50 'mongodb',
51 'path',
52 'perf_hooks',
53 'poolifier',
54 'proper-lockfile',
55 'reflect-metadata',
56 'tar',
57 'url',
58 'uuid',
e3018bc4 59 'winston',
e7aeea18 60 'winston-daily-rotate-file',
0d8140bd 61 'winston/lib/winston/transports/index.js',
e7aeea18 62 'worker_threads',
e3018bc4 63 'ws',
e7aeea18 64 ],
44b07a21 65 plugins: [
84e52c2c 66 json(),
ae8ee665
JB
67 ts({
68 tsconfig: 'tsconfig.json',
e7aeea18 69 browserslist: false,
44b07a21 70 }),
4082efc1 71 isDevelopmentBuild && istanbul(),
44b07a21 72 del({
045639f5
JB
73 targets: [
74 'dist/*',
75 '!dist/assets',
76 'dist/assets/*.json',
77 'dist/assets/station-templates',
78 'dist/assets/json-schemas',
79 ],
c4a19794
JB
80 }),
81 copy({
e7aeea18 82 targets: [{ src: 'src/assets', dest: 'dist/' }],
cb1948a3 83 }),
e7aeea18
JB
84 isDevelopmentBuild && analyze(),
85 ],
44b07a21 86};