From 3cf68d462698a5a03ba10c44c8cd7b9ee539f2d1 Mon Sep 17 00:00:00 2001
From: Alf Eaton <eaton.alf@gmail.com>
Date: Fri, 8 Sep 2017 09:13:57 +0100
Subject: [PATCH] Standardise webpack configs

Move webpack configs to a single location, in xpub-styleguide.
Use localIdentName to add module and original class names to the class name.
---
 styleguide.config.js |   1 -
 webpack.config.js    | 113 +------------------------------------------
 2 files changed, 2 insertions(+), 112 deletions(-)

diff --git a/styleguide.config.js b/styleguide.config.js
index bbaeb5e35..18efe3b1d 100644
--- a/styleguide.config.js
+++ b/styleguide.config.js
@@ -8,7 +8,6 @@ module.exports = {
     faker: 'faker',
   },
   skipComponentsWithoutExample: true,
-  webpackConfig: require('./webpack.config.js'),
   theme: {
     fontFamily: {
       base: '"Fira Sans", sans-serif'
diff --git a/webpack.config.js b/webpack.config.js
index cf91776ec..4aa149ad2 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -1,112 +1,3 @@
-process.env.BABEL_ENV = 'development'
-process.env.NODE_ENV = 'development'
+const webpackConfig = require('xpub-styleguide/src/webpack-config')
 
-const path = require('path')
-const nodeExternals = require('webpack-node-externals')
-
-const include = [
-  path.join(__dirname, 'src'),
-  /xpub-[^/]+\/src/,
-]
-
-module.exports = {
-  entry: './src/index.js',
-  output: {
-    filename: 'index.js',
-    path: path.join(__dirname, 'dist')
-  },
-  devtool: 'cheap-module-source-map',
-  externals: [nodeExternals({
-    whitelist: [/\.(?!js$).{1,5}$/i]
-  })],
-  resolve: {
-    symlinks: false
-  },
-  module: {
-    rules: [
-      {
-        oneOf: [
-          // ES6 modules
-          {
-            test: /\.js$/,
-            include,
-            loader: 'babel-loader',
-            options: {
-              presets: [
-                ['env', { modules: false }],
-                'react',
-                'stage-2'
-              ],
-              cacheDirectory: true,
-            },
-          },
-
-          // CSS modules
-          {
-            test: /\.local\.css$/,
-            include,
-            use: [
-              'style-loader',
-              {
-                loader: 'css-loader',
-                options: {
-                  modules: true,
-                }
-              }
-            ],
-          },
-
-          // SCSS modules
-          {
-            test: /\.local\.scss$/,
-            include,
-            use: [
-              'style-loader',
-              {
-                loader: 'css-loader',
-                options: {
-                  modules: true,
-                  importLoaders: 1
-                }
-              },
-              'sass-loader'
-            ],
-          },
-
-          // global CSS
-          {
-            test: /\.css$/,
-            use: [
-              'style-loader',
-              'css-loader'
-            ],
-          },
-
-          // global SCSS
-          {
-            test: /\.scss$/,
-            use: [
-              'style-loader',
-              {
-                loader: 'css-loader',
-                options: {
-                  importLoaders: 1
-                }
-              },
-              'sass-loader'
-            ],
-          },
-
-          // Files
-          {
-            exclude: [/\.js$/, /\.html$/, /\.json$/],
-            loader: 'file-loader',
-            options: {
-              name: 'static/media/[name].[hash:8].[ext]',
-            }
-          }
-        ]
-      }
-    ]
-  }
-}
+module.exports = webpackConfig(__dirname)
-- 
GitLab