123456789101112131415161718192021222324252627282930313233343536373839404142 |
- module.exports = options => ({
- terserOptions: {
- compress: {
- // turn off flags with small gains to speed up minification
- arrows: false,
- collapse_vars: false, // 0.3kb
- comparisons: false,
- computed_props: false,
- hoist_funs: false,
- hoist_props: false,
- hoist_vars: false,
- inline: false,
- loops: false,
- negate_iife: false,
- properties: false,
- reduce_funcs: false,
- reduce_vars: false,
- switches: false,
- toplevel: false,
- typeofs: false,
- // a few flags with noticeable gains/speed ratio
- // numbers based on out of the box vendor bundle
- booleans: true, // 0.7kb
- if_return: true, // 0.4kb
- sequences: true, // 0.7kb
- unused: true, // 2.3kb
- // required features to drop conditional branches
- conditionals: true,
- dead_code: true,
- evaluate: true
- },
- mangle: {
- safari10: true
- }
- },
- sourceMap: options.productionSourceMap,
- cache: true,
- parallel: options.parallel,
- extractComments: false
- })
|