Sha256: 27d831b549e49202662d5bfb5ca4ffa86b3fb800f74beac60532bcb7caee9848

Contents?: true

Size: 1.62 KB

Versions: 6

Compression:

Stored size: 1.62 KB

Contents

/* eslint comma-dangle: ["error",
 {"functions": "never", "arrays": "only-multiline", "objects":
 "only-multiline"} ] */

const webpack = require('webpack');
const { resolve } = require('path');
const ManifestPlugin = require('webpack-manifest-plugin');
const webpackConfigLoader = require('react-on-rails/webpackConfigLoader');

const configPath = resolve('..', 'config', 'webpack');
const { env, paths, publicPath } = webpackConfigLoader(configPath);

const devBuild = env !== 'production';

const config = {

  context: resolve(__dirname),

  entry: [
    'es5-shim/es5-shim',
    'es5-shim/es5-sham',
    'babel-polyfill',
    './app/bundles/HelloWorld/startup/registration',
  ],

  output: {
    filename: 'webpack-bundle.js',
    path: resolve('..', paths.output, paths.assets),
  },

  resolve: {
    extensions: ['.js', '.jsx'],
  },


  plugins: [
    new webpack.EnvironmentPlugin(JSON.parse(JSON.stringify(env))),
    new ManifestPlugin({ fileName: paths.manifest, publicPath, writeToFileEmit: true }),
  ],

  module: {
    rules: [
      {
        test: require.resolve('react'),
        use: {
          loader: 'imports-loader',
          options: {
            shim: 'es5-shim/es5-shim',
            sham: 'es5-shim/es5-sham',
          }
        },
      },
      {
        test: /\.jsx?$/,
        use: 'babel-loader',
        exclude: /node_modules/,
      },
    ],
  },
};

module.exports = config;

if (devBuild) {
  console.log('Webpack dev build for Rails'); // eslint-disable-line no-console
  module.exports.devtool = 'eval-source-map';
} else {
  console.log('Webpack production build for Rails'); // eslint-disable-line no-console
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
react_on_rails-8.0.0.beta.2 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js
react_on_rails-8.0.0.beta.1 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js
react_on_rails-7.1.0.beta.3 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js
react_on_rails-7.1.0.beta.2 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js
react_on_rails-7.1.0.beta.1 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js
react_on_rails-7.0.2 lib/generators/react_on_rails/templates/base/base/client/webpack.config.js