Skip to content
Snippets Groups Projects
webpack.config.js 937 B
const path = require('path');
const BundleTracker = require('webpack-bundle-tracker');

module.exports = {
  mode: "production",
  context: __dirname,
  entry: {
    base: {
      import: path.resolve("static_src", "base.js"),
      dependOn: "shared",
    },
    view_group_lectures: {
      import: path.resolve("static_src", "view_group_lectures.js"),
      dependOn: "shared",
    },
    view_lecture: {
      import: path.resolve("static_src", "view_lecture.js"),
      dependOn: "shared",
    },
    shared: ["jquery"],
  },
  output: {
    path: path.resolve(__dirname, "shared", "static", "shared"),
    filename: "[name].js",  // Whitenoise takes care of hashes for us
  },
  module: {
    rules: [
      {
        test: /\.css$/i,
        use: ["style-loader", "css-loader"],
      },
    ],
  },
  optimization: {
    runtimeChunk: "single",
  },
  plugins: [
    new BundleTracker({filename: './webpack-stats.json'})
  ],
};