web/webpack.config.js
author ymh <ymh.work@gmail.com>
Tue, 22 Oct 2024 10:01:10 +0200
changeset 1569 455bdfbdd320
parent 1558 761ba7426984
child 1583 459a88818bec
permissions -rw-r--r--
upgrade metadataplayer
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1558
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
const path = require('path');
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
const webpack = require('webpack');
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
const nodeModulesPath = path.resolve(__dirname, 'node_modules');
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
module.exports = {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
  entry: [
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
    __dirname + '/src/js/index.js',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
    __dirname + '/src/css/main.scss',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
    __dirname + '/src/css/common.scss',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
    __dirname + '/src/css/vendors.scss',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
    
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
  ],
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
  output: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
    filename: 'live-polemic.js',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
    path: path.resolve(__dirname, 'res/js'),
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
  },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
  plugins: [
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
    new webpack.ProvidePlugin({
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
        $: "jquery",
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
        jQuery: "jquery",
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
    })
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
  ],
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
//  devtool: 'eval',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
  optimization: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
    minimizer: [
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
      // For webpack@5 you can use the `...` syntax to extend existing minimizers (i.e. `terser-webpack-plugin`), uncomment the next line
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
      `...`,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
      new CssMinimizerPlugin(),
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
    ],
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
    minimize: true,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
  },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
  module: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
    rules: [
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
      {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        test: /\.s?css$/,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
        exclude: [ "/res/css" ],
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
        type: 'asset/resource',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
        generator: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
          filename: '../css/[name].css'
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
        },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
        use: [
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
          'resolve-url-loader',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
          {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
            loader: 'sass-loader',
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
            options: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
              sourceMap: true,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
              // sassOptions: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
              //   includePaths: [nodeModulesPath],
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
              // },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
            }
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
          },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
        ]
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
      },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
      {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
        test: /\.(eot|ttf|woff|woff2)$/i,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
        // More information here https://webpack.js.org/guides/asset-modules/
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
        type: "asset",
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
        generator: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
          filename: '../emits/fonts/[hash][ext][query]'
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
        },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
      },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
      {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
        test: /\.(png|jpe?g|gif|svg)$/i,
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
        // More information here https://webpack.js.org/guides/asset-modules/
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
        type: "asset",
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
        generator: {
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
          filename: '../emits/images/[hash][ext][query]'
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
        },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
      },
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
    ]
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
  }
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
761ba7426984 upgrade metadataplayer and add a sitemap
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
};