-
-
Notifications
You must be signed in to change notification settings - Fork 316
/
preact.config.js
35 lines (31 loc) · 1.1 KB
/
preact.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/**
* Function that mutates original webpack config.
* Supports asynchronous changes when promise is returned.
*
* @param {object} config - original webpack config.
* @param {object} env - options passed to CLI.
* @param {WebpackConfigHelpers} helpers - object with useful helpers when working with config.
**/
export default function (config, env, helpers) {
const htmlWebpackPlugin = helpers.getPluginsByName(
config,
'HtmlWebpackPlugin'
)[0];
Object.assign(htmlWebpackPlugin.plugin.options.minify, {
removeComments: false,
collapseWhitespace: false
});
htmlWebpackPlugin.plugin.options.preload = false;
htmlWebpackPlugin.plugin.options.favicon = false;
// Required for lingui-macros
// let { rule } = helpers.getLoadersByName(config, 'babel-loader')[0];
// let babelConfig = rule.options;
// babelConfig.plugins.push('macros');
if (env.isProd) {
config.devtool = false; // disable sourcemaps
// To support chunk loading in root and also /app path
config.output.publicPath = './';
// Remove the default hash append in chunk name
config.output.chunkFilename = '[name].chunk.js';
}
}