X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=rollup.config.mjs;h=f301a0871b09c655762b1ceee7495a9fa2af8dc3;hb=59497fa9684605a29f8d0757d36825c26f2d2bec;hp=d35b8c42a00cea7e12e5eaf36f5d1733d048a374;hpb=7977150f9030ac200bd87f2f9f4752fa4de14581;p=poolifier.git diff --git a/rollup.config.mjs b/rollup.config.mjs index d35b8c42..f301a087 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -1,16 +1,23 @@ import typescript from 'rollup-plugin-typescript2' +import analyze from 'rollup-plugin-analyzer' +import { terser } from 'rollup-plugin-terser' import del from 'rollup-plugin-delete' +import command from 'rollup-plugin-command' +import istanbul from 'rollup-plugin-istanbul' const isDevelopmentBuild = process.env.BUILD === 'development' +const isAnalyze = process.env.ANALYZE +const isDocumentation = process.env.DOCUMENTATION export default { input: 'src/index.ts', output: { - dir: 'lib', + ...(isDevelopmentBuild ? { dir: 'lib' } : { file: 'lib/index.js' }), format: 'cjs', sourcemap: !!isDevelopmentBuild, - preserveModules: true, - preserveModulesRoot: 'src' + ...(isDevelopmentBuild && { preserveModules: true }), + ...(isDevelopmentBuild && { preserveModulesRoot: 'src' }), + ...(!isDevelopmentBuild && { plugins: [terser({ numWorkers: 2 })] }) }, external: ['async_hooks', 'cluster', 'events', 'worker_threads'], plugins: [ @@ -19,8 +26,11 @@ export default { ? 'tsconfig.development.json' : 'tsconfig.json' }), + isDevelopmentBuild && istanbul(), del({ - targets: 'lib/*' - }) + targets: ['lib/*'] + }), + isAnalyze && analyze(), + isDocumentation && command('npm run typedoc') ] }