diff options
author | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
commit | bbff7403fbf46f9ad92240ac213df8d30ef31b64 (patch) | |
tree | c58400ec5124da1c7d56b01aea83309f80a56c3b /node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js | |
parent | 003fb34971cf63466184351b4db5f7c67df4f444 (diff) |
update packages
Diffstat (limited to 'node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js')
-rw-r--r-- | node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js | 68 |
1 files changed, 37 insertions, 31 deletions
diff --git a/node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js b/node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js index 54edb4ac7..867a33fe3 100644 --- a/node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js +++ b/node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js @@ -1,31 +1,37 @@ -/*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
-*/
-"use strict";
-
-const CaseSensitiveModulesWarning = require("./CaseSensitiveModulesWarning");
-
-class WarnCaseSensitiveModulesPlugin {
- apply(compiler) {
- compiler.plugin("compilation", compilation => {
- compilation.plugin("seal", () => {
- const moduleWithoutCase = Object.create(null);
- compilation.modules.forEach(module => {
- const identifier = module.identifier().toLowerCase();
- if(moduleWithoutCase[identifier]) {
- moduleWithoutCase[identifier].push(module);
- } else {
- moduleWithoutCase[identifier] = [module];
- }
- });
- Object.keys(moduleWithoutCase).forEach(key => {
- if(moduleWithoutCase[key].length > 1)
- compilation.warnings.push(new CaseSensitiveModulesWarning(moduleWithoutCase[key]));
- });
- });
- });
- }
-}
-
-module.exports = WarnCaseSensitiveModulesPlugin;
+/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ +"use strict"; + +const CaseSensitiveModulesWarning = require("./CaseSensitiveModulesWarning"); + +class WarnCaseSensitiveModulesPlugin { + apply(compiler) { + compiler.hooks.compilation.tap( + "WarnCaseSensitiveModulesPlugin", + compilation => { + compilation.hooks.seal.tap("WarnCaseSensitiveModulesPlugin", () => { + const moduleWithoutCase = new Map(); + for (const module of compilation.modules) { + const identifier = module.identifier().toLowerCase(); + const array = moduleWithoutCase.get(identifier); + if (array) { + array.push(module); + } else { + moduleWithoutCase.set(identifier, [module]); + } + } + for (const pair of moduleWithoutCase) { + const array = pair[1]; + if (array.length > 1) { + compilation.warnings.push(new CaseSensitiveModulesWarning(array)); + } + } + }); + } + ); + } +} + +module.exports = WarnCaseSensitiveModulesPlugin; |