diff --git a/package.json b/package.json index 10b2c077..163a6b85 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "devDependencies": { "async": "2.6.0", - "copy-webpack-plugin": "4.0.1", + "copy-webpack-plugin": "^4.5.1", "eslint": "^4.16", "event-stream": "3.3.4", "exports-loader": "0.6.3", @@ -35,7 +35,9 @@ "json": "9.0.4", "rimraf": "2.6.2", "travis-after-all": "1.4.4", + "uglifyjs-webpack-plugin": "^1.2.5", "webdriverio": "4.8.0", - "webpack": "1.13.2" + "webpack": "^4.8.0", + "webpack-cli": "^2.0.15" } } diff --git a/shim/blockly_compressed_horizontal-blocks_compressed.js b/shim/blockly_compressed_horizontal-blocks_compressed.js index 71a555c6..32675cc4 100644 --- a/shim/blockly_compressed_horizontal-blocks_compressed.js +++ b/shim/blockly_compressed_horizontal-blocks_compressed.js @@ -1 +1 @@ -module.exports = require('imports?Blockly=./shim/blockly_compressed_horizontal.Blockly!exports?Blockly!../blocks_compressed'); +module.exports = require('imports-loader?Blockly=./shim/blockly_compressed_horizontal.Blockly!exports-loader?Blockly!../blocks_compressed'); diff --git a/shim/blockly_compressed_horizontal.js b/shim/blockly_compressed_horizontal.js index 94ea0f52..ed83a674 100644 --- a/shim/blockly_compressed_horizontal.js +++ b/shim/blockly_compressed_horizontal.js @@ -1 +1 @@ -module.exports = require('imports?this=>window!exports?Blockly&goog!../blockly_compressed_horizontal'); +module.exports = require('imports-loader?this=>window!exports-loader?Blockly&goog!../blockly_compressed_horizontal'); diff --git a/shim/blockly_compressed_vertical-blocks_compressed.js b/shim/blockly_compressed_vertical-blocks_compressed.js index 1aec6dee..8eec1f68 100644 --- a/shim/blockly_compressed_vertical-blocks_compressed.js +++ b/shim/blockly_compressed_vertical-blocks_compressed.js @@ -1 +1 @@ -module.exports = require('imports?Blockly=./shim/blockly_compressed_vertical.Blockly!exports?Blockly!../blocks_compressed'); +module.exports = require('imports-loader?Blockly=./shim/blockly_compressed_vertical.Blockly!exports-loader?Blockly!../blocks_compressed'); diff --git a/shim/blockly_compressed_vertical.js b/shim/blockly_compressed_vertical.js index 22a28cfb..dce46a9d 100644 --- a/shim/blockly_compressed_vertical.js +++ b/shim/blockly_compressed_vertical.js @@ -1 +1 @@ -module.exports = require('imports?this=>window!exports?Blockly&goog!../blockly_compressed_vertical'); +module.exports = require('imports-loader?this=>window!exports-loader?Blockly&goog!../blockly_compressed_vertical'); diff --git a/shim/blocks_compressed_horizontal.js b/shim/blocks_compressed_horizontal.js index 2d68d047..0c4272ae 100644 --- a/shim/blocks_compressed_horizontal.js +++ b/shim/blocks_compressed_horizontal.js @@ -1 +1 @@ -module.exports = require('imports?Blockly=./shim/blockly_compressed_horizontal-blocks_compressed!exports?Blockly!../blocks_compressed_horizontal'); +module.exports = require('imports-loader?Blockly=./shim/blockly_compressed_horizontal-blocks_compressed!exports-loader?Blockly!../blocks_compressed_horizontal'); diff --git a/shim/blocks_compressed_vertical.js b/shim/blocks_compressed_vertical.js index 5938d38e..3368c09d 100644 --- a/shim/blocks_compressed_vertical.js +++ b/shim/blocks_compressed_vertical.js @@ -1 +1 @@ -module.exports = require('imports?goog=./shim/blockly_compressed_vertical.goog,Blockly=./shim/blockly_compressed_vertical-blocks_compressed!exports?Blockly!../blocks_compressed_vertical'); +module.exports = require('imports-loader?goog=./shim/blockly_compressed_vertical.goog,Blockly=./shim/blockly_compressed_vertical-blocks_compressed!exports-loader?Blockly!../blocks_compressed_vertical'); diff --git a/shim/gh-pages.js b/shim/gh-pages.js new file mode 100644 index 00000000..36db4933 --- /dev/null +++ b/shim/gh-pages.js @@ -0,0 +1 @@ +// intentionally left empty diff --git a/shim/horizontal.js b/shim/horizontal.js index 73970e92..db666d06 100644 --- a/shim/horizontal.js +++ b/shim/horizontal.js @@ -1 +1 @@ -module.exports = require('imports?Blockly=../shim/blocks_compressed_horizontal,goog=../shim/blockly_compressed_horizontal.goog!exports?Blockly!../msg/messages'); \ No newline at end of file +module.exports = require('imports-loader?Blockly=../shim/blocks_compressed_horizontal,goog=../shim/blockly_compressed_horizontal.goog!exports-loader?Blockly!../msg/messages'); \ No newline at end of file diff --git a/shim/vertical.js b/shim/vertical.js index dcba342d..998b465f 100644 --- a/shim/vertical.js +++ b/shim/vertical.js @@ -1 +1 @@ -module.exports = require('imports?Blockly=../shim/blocks_compressed_vertical,goog=../shim/blockly_compressed_vertical.goog!exports?Blockly!../msg/messages'); \ No newline at end of file +module.exports = require('imports-loader?Blockly=../shim/blocks_compressed_vertical,goog=../shim/blockly_compressed_vertical.goog!exports-loader?Blockly!../msg/messages'); \ No newline at end of file diff --git a/webpack.config.js b/webpack.config.js index c74854d4..6d3be1d1 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,8 +5,10 @@ gracefulFs.gracefulify(realFs); var CopyWebpackPlugin = require('copy-webpack-plugin'); var path = require('path'); +var UglifyJsPlugin = require('uglifyjs-webpack-plugin'); module.exports = [{ + mode: process.env.NODE_ENV === 'production' ? 'production' : 'development', entry: { horizontal: './shim/horizontal.js', vertical: './shim/vertical.js' @@ -16,8 +18,15 @@ module.exports = [{ libraryTarget: 'commonjs2', path: path.resolve(__dirname, 'dist'), filename: '[name].js' + }, + optimization: { + minimize: false + }, + performance: { + hints: false } }, { + mode: process.env.NODE_ENV === 'production' ? 'production' : 'development', entry: { horizontal: './shim/horizontal.js', vertical: './shim/vertical.js' @@ -27,13 +36,31 @@ module.exports = [{ libraryTarget: 'umd', path: path.resolve(__dirname, 'dist', 'web'), filename: '[name].js' - } + }, + optimization: { + minimizer: [ + new UglifyJsPlugin({ + uglifyOptions: { + mangle: false + } + }) + ] + }, + plugins: [] }, { + mode: process.env.NODE_ENV === 'production' ? 'production' : 'development', + entry: './shim/gh-pages.js', output: { filename: '[name].js', path: path.resolve(__dirname, 'gh-pages') }, + optimization: { + minimize: false + }, + performance: { + hints: false + }, plugins: [ new CopyWebpackPlugin([{ from: 'node_modules/google-closure-library',