From 2d874544b26bdc2c8b926929ae03cc0f05d55685 Mon Sep 17 00:00:00 2001 From: Anthony Johnson Date: Fri, 26 Jul 2019 15:35:35 -0600 Subject: [PATCH] Run webpack js through Prettier JS formatter Uses Prettier with no options. I'm fine accepting this as the default style for our Javascript and autoformatting src/js/*.js as well. I left those changes out for now. --- webpack.common.js | 68 +++++++++++++++++++++++++---------------------- webpack.dev.js | 29 +++++++++----------- webpack.prod.js | 14 +++++----- 3 files changed, 56 insertions(+), 55 deletions(-) diff --git a/webpack.common.js b/webpack.common.js index d32659eb..6ffc9002 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -1,48 +1,52 @@ -const path = require('path'); -const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const path = require("path"); +const MiniCssExtractPlugin = require("mini-css-extract-plugin"); module.exports = { - entry: './src/index.js', + entry: "./src/index.js", output: { - filename: 'js/theme.js', - path: path.resolve(__dirname, 'sphinx_rtd_theme/static') + filename: "js/theme.js", + path: path.resolve(__dirname, "sphinx_rtd_theme/static") }, module: { rules: [ { - test: require.resolve('./src/theme.js'), - use: 'imports-loader?this=>window' + test: require.resolve("./src/theme.js"), + use: "imports-loader?this=>window" }, { test: /\.sass$/, - use: [{ - loader: MiniCssExtractPlugin.loader - }, - { - loader: "css-loader" - }, - { - loader: "sass-loader?indentedSyntax", - options: { - includePaths: [ - 'node_modules/bourbon/app/assets/stylesheets', - 'node_modules/bourbon-neat/app/assets/stylesheets', - 'node_modules/font-awesome/scss', - 'node_modules/wyrm/sass' - ] + use: [ + { + loader: MiniCssExtractPlugin.loader + }, + { + loader: "css-loader" + }, + { + loader: "sass-loader?indentedSyntax", + options: { + includePaths: [ + "node_modules/bourbon/app/assets/stylesheets", + "node_modules/bourbon-neat/app/assets/stylesheets", + "node_modules/font-awesome/scss", + "node_modules/wyrm/sass" + ] + } } - }] + ] }, { test: /\.(woff(2)?|ttf|eot|svg)(\?v=\d+\.\d+\.\d+)?$/, - use: [{ - loader: 'file-loader', - options: { - name: '[name].[ext]?[hash]', - outputPath: 'fonts/', - publicPath: '../fonts/', + use: [ + { + loader: "file-loader", + options: { + name: "[name].[ext]?[hash]", + outputPath: "fonts/", + publicPath: "../fonts/" + } } - }] + ] } ] }, @@ -50,7 +54,7 @@ module.exports = { new MiniCssExtractPlugin({ // Options similar to the same options in webpackOptions.output // both options are optional - filename: 'css/theme.css' + filename: "css/theme.css" }) - ], + ] }; diff --git a/webpack.dev.js b/webpack.dev.js index 58e00fda..ec8c2d67 100644 --- a/webpack.dev.js +++ b/webpack.dev.js @@ -1,34 +1,31 @@ -const path = require('path'); -const merge = require('webpack-merge'); -const exec = require('child_process').exec; -const WatchPlugin = require('webpack-watch-files-plugin').default; -const ShellPlugin = require('webpack-shell-plugin'); -const common = require('./webpack.common.js'); +const path = require("path"); +const merge = require("webpack-merge"); +const exec = require("child_process").exec; +const WatchPlugin = require("webpack-watch-files-plugin").default; +const ShellPlugin = require("webpack-shell-plugin"); +const common = require("./webpack.common.js"); module.exports = merge(common, { - mode: 'development', + mode: "development", watch: true, devServer: { - contentBase: path.join(__dirname, 'docs/build/html'), + contentBase: path.join(__dirname, "docs/build/html"), watchContentBase: true, compress: false, port: 1919, hot: false, liveReload: true, - publicPath: '/_static/' + publicPath: "/_static/" }, plugins: [ new WatchPlugin({ - files: [ - './docs/**/*.rst', - './docs/**/*.py', - ] + files: ["./docs/**/*.rst", "./docs/**/*.py"] }), new ShellPlugin({ - onBuildEnd: ['make -C docs clean html'], + onBuildEnd: ["make -C docs clean html"], // dev=false here to force every build to trigger make, the default is // first build only. - dev: false, - }), + dev: false + }) ] }); diff --git a/webpack.prod.js b/webpack.prod.js index a58d4f5a..fbd3bf75 100644 --- a/webpack.prod.js +++ b/webpack.prod.js @@ -1,11 +1,11 @@ -const merge = require('webpack-merge'); -const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); -const TerserPlugin = require('terser-webpack-plugin'); -const common = require('./webpack.common.js'); +const merge = require("webpack-merge"); +const OptimizeCssAssetsPlugin = require("optimize-css-assets-webpack-plugin"); +const TerserPlugin = require("terser-webpack-plugin"); +const common = require("./webpack.common.js"); module.exports = merge(common, { - mode: 'production', + mode: "production", optimization: { - minimizer: [new TerserPlugin(), new OptimizeCssAssetsPlugin({})], - }, + minimizer: [new TerserPlugin(), new OptimizeCssAssetsPlugin({})] + } });