From d1d9f00b1bd660842addf5e6b1d1b64c852a9eea Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Sun, 5 Nov 2023 17:16:09 +0800 Subject: added hover prefixer --- .../webpack/lib/ids/NaturalModuleIdsPlugin.js | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js (limited to 'node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js') diff --git a/node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js b/node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js new file mode 100644 index 00000000..962bcff3 --- /dev/null +++ b/node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js @@ -0,0 +1,39 @@ +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Florent Cailhol @ooflorent +*/ + +"use strict"; + +const { + compareModulesByPreOrderIndexOrIdentifier +} = require("../util/comparators"); +const { + assignAscendingModuleIds, + getUsedModuleIdsAndModules +} = require("./IdHelpers"); + +/** @typedef {import("../Compiler")} Compiler */ +/** @typedef {import("../Module")} Module */ + +class NaturalModuleIdsPlugin { + /** + * Apply the plugin + * @param {Compiler} compiler the compiler instance + * @returns {void} + */ + apply(compiler) { + compiler.hooks.compilation.tap("NaturalModuleIdsPlugin", compilation => { + compilation.hooks.moduleIds.tap("NaturalModuleIdsPlugin", modules => { + const [usedIds, modulesInNaturalOrder] = + getUsedModuleIdsAndModules(compilation); + modulesInNaturalOrder.sort( + compareModulesByPreOrderIndexOrIdentifier(compilation.moduleGraph) + ); + assignAscendingModuleIds(usedIds, modulesInNaturalOrder, compilation); + }); + }); + } +} + +module.exports = NaturalModuleIdsPlugin; -- cgit v1.2.3