aboutsummaryrefslogtreecommitdiff
path: root/themes/ananke/src/webpack.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'themes/ananke/src/webpack.config.js')
-rw-r--r--themes/ananke/src/webpack.config.js57
1 files changed, 57 insertions, 0 deletions
diff --git a/themes/ananke/src/webpack.config.js b/themes/ananke/src/webpack.config.js
new file mode 100644
index 0000000..b11656d
--- /dev/null
+++ b/themes/ananke/src/webpack.config.js
@@ -0,0 +1,57 @@
+var path = require('path');
+var ExtractTextPlugin = require('extract-text-webpack-plugin');
+var webpack = require('webpack');
+var AssetsPlugin = require('assets-webpack-plugin');
+
+module.exports = {
+ entry: {
+ app: './js/main.js'
+ },
+ module: {
+ rules: [
+ {
+ test: /\.js$/,
+ exclude: /node_modules/,
+ use: {
+ loader: 'babel-loader',
+ options: {
+ presets: ['env']
+ }
+ }
+ },
+ {
+ test: /\.css$/,
+ use: ExtractTextPlugin.extract({
+ fallback: 'style-loader',
+ use: 'css-loader?importLoaders=1!postcss-loader'
+ })
+ }
+ ]
+ },
+
+ output: {
+ path: path.join(__dirname, './../static/dist'),
+ filename: 'js/[name].[chunkhash].js'
+ },
+
+ resolve: {
+ modules: [path.resolve(__dirname, 'src'), 'node_modules']
+ },
+
+ plugins: [
+ new AssetsPlugin({
+ filename: 'webpack_assets.json',
+ path: path.join(__dirname, '../data'),
+ prettyPrint: true
+ }),
+ new ExtractTextPlugin({
+ filename: getPath => {
+ return getPath('css/[name].[contenthash].css');
+ },
+ allChunks: true
+ })
+ ],
+ watchOptions: {
+ watch: true
+ }
+};