diff --git a/styleguide.config.js b/styleguide.config.js index bbaeb5e359de86814abc69d7d34a64421d32f5f8..18efe3b1dd8b1856882cd945a5d694b4748aa527 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 cf91776ece71409c24e3efa18999d0c8c24b417c..4aa149ad2cbf750326137fc79ccd7e7685271ad3 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)