1 /* eslint-disable n/no-unpublished-import */
2 import json from '@rollup/plugin-json';
3 import terser from '@rollup/plugin-terser';
4 import typescript from '@rollup/plugin-typescript';
5 import { copy } from '@web/rollup-plugin-copy';
6 import analyze from 'rollup-plugin-analyzer';
7 import del from 'rollup-plugin-delete';
9 const isDevelopmentBuild = process.env.BUILD === 'development';
10 const isAnalyzeBuild = process.env.ANALYZE;
13 input: ['src/start.ts', 'src/charging-station/ChargingStationWorker.ts'],
14 strictDeprecations: true,
20 ...(isDevelopmentBuild && { sourcemap: true }),
21 ...(!isDevelopmentBuild && { plugins: [terser({ maxWorkers: 2 })] }),
26 '@mikro-orm/reflection',
34 'mnemonist/lru-map-with-delete.js',
47 'node:worker_threads',
51 'winston-daily-rotate-file',
52 'winston/lib/winston/transports/index.js',
58 tsconfig: 'tsconfig.json',
65 'dist/assets/json-schemas',
66 'dist/assets/station-templates',
67 'dist/assets/ui-protocol',
72 patterns: 'assets/**/*.json',
74 'assets/config-template.json',
75 'assets/*config[-_]*.json',
76 'assets/idtags-template.json',
77 'assets/ui-protocol/**/*',
80 isAnalyzeBuild && analyze(),