webpack.config.js 820 B

1234567891011121314151617181920212223242526272829303132333435
  1. const path = require('path');
  2. const pkg = require('./package.json');
  3. const camelcase = require('camelcase');
  4. const process = require('process');
  5. const webpack = require('webpack');
  6. const env = process.env;
  7. const NODE_ENV = env.NODE_ENV;
  8. const MIN = env.MIN;
  9. const PROD = NODE_ENV === 'production';
  10. let config = {
  11. devtool: PROD ? false : 'inline-source-map',
  12. entry: './index.js',
  13. output: {
  14. path: path.join( __dirname ),
  15. filename: 'layout-base.js',
  16. library: camelcase( pkg.name ),
  17. libraryTarget: 'umd'
  18. },
  19. module: {
  20. rules: [
  21. { test: /\.js$/, exclude: /node_modules/, use: 'babel-loader' }
  22. ]
  23. },
  24. plugins: MIN ? [
  25. new webpack.optimize.UglifyJsPlugin({
  26. compress: {
  27. warnings: false,
  28. drop_console: false,
  29. }
  30. })
  31. ] : []
  32. };
  33. module.exports = config;