Skip to content

Commit

Permalink
chore: fix typos and remove unnecessary regexp test
Browse files Browse the repository at this point in the history
  • Loading branch information
sibiraj-s authored and jantimon committed Oct 3, 2018
1 parent 049d4d3 commit 24e4f10
Showing 1 changed file with 6 additions and 10 deletions.
16 changes: 6 additions & 10 deletions index.js
Expand Up @@ -100,14 +100,11 @@ class HtmlWebpackPlugin {
}

// `contenthash` is introduced in webpack v4.3
// which conflicts with the plugin's existing `contenthash` method, hence
// hence is renmaed to `templatehash` to avoid such conflicts
const REGEXP_CONTENTHASH = /\[(?:(\w+):)?contenthash(?::([a-z]+\d*))?(?::(\d+))?\]/ig;
if (REGEXP_CONTENTHASH.test(this.options.filename)) {
this.options.filename = this.options.filename.replace(REGEXP_CONTENTHASH, (match) => {
return match.replace('contenthash', 'templatehash');
});
}
// which conflicts with the plugin's existing `contenthash` method,
// hence it is renamed to `templatehash` to avoid conflicts
this.options.filename = this.options.filename.replace(/\[(?:(\w+):)?contenthash(?::([a-z]+\d*))?(?::(\d+))?\]/ig, (match) => {
return match.replace('contenthash', 'templatehash');
});

// Check if webpack is running in production mode
// @see https://github.com/webpack/webpack/blob/3366421f1784c449f415cda5930a8e445086f688/lib/WebpackOptionsDefaulter.js#L12-L14
Expand Down Expand Up @@ -289,11 +286,10 @@ class HtmlWebpackPlugin {
return self.options.showErrors ? prettyError(err, compiler.context).toHtml() : 'ERROR';
})
.then(html => {
const REGEXP_TEMPLATEHASH = /\[(?:(\w+):)?templatehash(?::([a-z]+\d*))?(?::(\d+))?\]/ig;
// Allow to use [templatehash] as placeholder for the html-webpack-plugin name
// See also https://survivejs.com/webpack/optimizing/adding-hashes-to-filenames/
// From https://github.com/webpack-contrib/extract-text-webpack-plugin/blob/8de6558e33487e7606e7cd7cb2adc2cccafef272/src/index.js#L212-L214
const finalOutputName = childCompilationOutputName.replace(REGEXP_TEMPLATEHASH, (_, hashType, digestType, maxLength) => {
const finalOutputName = childCompilationOutputName.replace(/\[(?:(\w+):)?templatehash(?::([a-z]+\d*))?(?::(\d+))?\]/ig, (_, hashType, digestType, maxLength) => {
return loaderUtils.getHashDigest(Buffer.from(html, 'utf8'), hashType, digestType, parseInt(maxLength, 10));
});
// Add the evaluated html code to the webpack assets
Expand Down

0 comments on commit 24e4f10

Please sign in to comment.