X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=rollup.config.mjs;h=8ca037fb9f24753c042ee475b786197d2c36d51e;hb=aa7d6d9568ce5ec481a0a230f4ae24c9ee9d44fa;hp=890bc33a0b9ff7eeed53c7cf24d4b6a226367083;hpb=65b0c151a66f8b6d99a30a2565cd9bb00576baeb;p=e-mobility-charging-stations-simulator.git diff --git a/rollup.config.mjs b/rollup.config.mjs index 890bc33a..8ca037fb 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -1,34 +1,24 @@ +/* eslint-disable n/no-unpublished-import */ import json from '@rollup/plugin-json'; +import terser from '@rollup/plugin-terser'; +import typescript from '@rollup/plugin-typescript'; import analyze from 'rollup-plugin-analyzer'; import copy from 'rollup-plugin-copy'; import del from 'rollup-plugin-delete'; -import { terser } from 'rollup-plugin-terser'; -import ts from 'rollup-plugin-ts'; const isDevelopmentBuild = process.env.BUILD === 'development'; +const isAnalyzeBuild = process.env.ANALYZE; export default { input: ['src/start.ts', 'src/charging-station/ChargingStationWorker.ts'], + strictDeprecations: true, output: [ { dir: 'dist', - format: 'es', + format: 'esm', 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 })] }), + ...(isDevelopmentBuild && { sourcemap: true }), + ...(!isDevelopmentBuild && { plugins: [terser({ maxWorkers: 2 })] }), }, ], external: [ @@ -36,48 +26,49 @@ export default { '@mikro-orm/reflection', 'ajv', 'ajv-formats', - 'async_hooks', 'basic-ftp', 'chalk', - 'crypto', - 'fs', - 'http', 'http-status-codes', 'just-clone', 'just-merge', - 'mnemonist/lru-map-with-delete', + 'mnemonist/lru-map-with-delete.js', 'moment', 'mongodb', - 'path', - 'perf_hooks', + 'node:async_hooks', + 'node:crypto', + 'node:fs', + 'node:http', + 'node:path', + 'node:perf_hooks', + 'node:stream', + 'node:url', + 'node:util', + 'node:worker_threads', 'poolifier', - 'proper-lockfile', 'tar', - 'url', 'winston', 'winston-daily-rotate-file', - 'winston/lib/winston/transports', - 'worker_threads', + 'winston/lib/winston/transports/index.js', 'ws', ], plugins: [ json(), - ts({ + typescript({ tsconfig: 'tsconfig.json', - browserslist: false, }), del({ targets: [ 'dist/*', '!dist/assets', 'dist/assets/*.json', - 'dist/assets/station-templates', 'dist/assets/json-schemas', + 'dist/assets/station-templates', + 'dist/assets/ui-protocol', ], }), copy({ targets: [{ src: 'src/assets', dest: 'dist/' }], }), - isDevelopmentBuild && analyze(), + isAnalyzeBuild && analyze(), ], };