@@ -4,6 +4,7 @@ const { resolve } = require('path');
44const { readFileSync, existsSync } = require ( 'fs' ) ;
55const SizePlugin = require ( 'size-plugin' ) ;
66const autoprefixer = require ( 'autoprefixer' ) ;
7+ const browserslist = require ( 'browserslist' ) ;
78const requireRelative = require ( 'require-relative' ) ;
89const MiniCssExtractPlugin = require ( 'mini-css-extract-plugin' ) ;
910const FixStyleOnlyEntriesPlugin = require ( 'webpack-fix-style-only-entries' ) ;
@@ -64,7 +65,15 @@ module.exports = function(env) {
6465 env . pkg = readJson ( resolve ( cwd , 'package.json' ) ) || { } ;
6566
6667 let babelrc = readJson ( resolve ( cwd , 'old' ) ) || { } ;
67- let browsers = env . pkg . browserslist || [ '> 0.25%' , 'IE >= 9' ] ;
68+
69+ // use browserslist config environment, config default, or default browsers
70+ // default browsers are > 0.25% global market share or Internet Explorer >= 9
71+ const browserslistDefaults = [ '> 0.25%' , 'IE >= 9' ] ;
72+ const browserlistConfig = Object ( browserslist . findConfig ( cwd ) ) ;
73+ const browsers =
74+ ( isProd ? browserlistConfig . production : browserlistConfig . development ) ||
75+ browserlistConfig . default ||
76+ browserslistDefaults ;
6877
6978 let userNodeModules = findAllNodeModules ( cwd ) ;
7079 let cliNodeModules = findAllNodeModules ( __dirname ) ;
0 commit comments