UNPKG

js-file-downloader

Version:
62 lines (56 loc) 1.36 kB
const path = require('path'); const env = require('yargs').argv.env; const pkg = require('./package.json'); const libraryName = pkg.name; let plugins = [], outputFile, mode; const camelCased = function (s) { return s.replace(/-([a-z])/g, function (g) { return g[1].toUpperCase(); }); }; if (env === 'build') { mode = 'production'; outputFile = libraryName + '.min.js'; } else { mode = 'development'; outputFile = libraryName + '.js'; } const config = { mode, entry: __dirname + '/src/index.js', devtool: 'source-map', output: { path: __dirname + '/dist', filename: outputFile, library: camelCased(libraryName), libraryTarget: 'umd', libraryExport: 'default', globalObject: 'this' }, module: { rules: [ { test: /\.js$/, loader: 'string-replace-loader', options: { search: '##package_version##', replace: require('./package.json').version } }, { test: /\.js$/, loader: 'babel-loader', exclude: /(node_modules|bower_components)/ }, { test: /\.js$/, loader: 'eslint-loader', exclude: /node_modules/ } ] }, resolve: { modules: [path.resolve('./node_modules'), path.resolve('./src')], extensions: ['.json', '.js'] }, plugins }; module.exports = config;