const fs = require('fs-extra') const path = require('path') const babel = require('rollup-plugin-babel'); const { uglify } = require('rollup-plugin-uglify'); const PATH = `./.laser-lib-path` const buildPaths = [ `build`, ...fs.existsSync(PATH) ? [fs.readFileSync(PATH).toString()] : [] ] const builds = [] for (const dir of buildPaths) { builds.push( ...[ { input: 'src/Potree.js', treeshake: false, output: { file: `${dir}/potree/potree.js`, format: 'umd', name: 'Potree', sourcemap: true, } }, { input: 'src/workers/BinaryDecoderWorker.js', output: { file: `${dir}/potree/workers/BinaryDecoderWorker.js`, format: 'es', name: 'Potree', sourcemap: false } },{ input: 'src/modules/loader/2.0/DecoderWorker.js', output: { file: `${dir}/potree/workers/2.0/DecoderWorker.js`, format: 'es', name: 'Potree', sourcemap: false } },{ input: 'src/modules/loader/2.0/DecoderWorker_brotli.js', output: { file: `${dir}/potree/workers/2.0/DecoderWorker_brotli.js`, format: 'es', name: 'Potree', sourcemap: false } } ] ) } if (process.env.npm_lifecycle_script.includes('production')) { builds.forEach(item => { item.output.sourcemap = false item.plugins = [ babel({ exclude: "node_modules/**" }), // 压缩代码 uglify() ] }) } export default builds