⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.1
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
invoice
/
node_modules
/
webpack
/
lib
/
View File Name :
LibManifestPlugin.js
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const path = require("path"); const asyncLib = require("neo-async"); const SingleEntryDependency = require("./dependencies/SingleEntryDependency"); class LibManifestPlugin { constructor(options) { this.options = options; } apply(compiler) { compiler.hooks.emit.tapAsync( "LibManifestPlugin", (compilation, callback) => { asyncLib.forEach( compilation.chunks, (chunk, callback) => { if (!chunk.isOnlyInitial()) { callback(); return; } const targetPath = compilation.getPath(this.options.path, { hash: compilation.hash, chunk }); const name = this.options.name && compilation.getPath(this.options.name, { hash: compilation.hash, chunk }); const manifest = { name, type: this.options.type, content: Array.from(chunk.modulesIterable, module => { if ( this.options.entryOnly && !module.reasons.some( r => r.dependency instanceof SingleEntryDependency ) ) { return; } if (module.libIdent) { const ident = module.libIdent({ context: this.options.context || compiler.options.context }); if (ident) { return { ident, data: { id: module.id, buildMeta: module.buildMeta } }; } } }) .filter(Boolean) .reduce((obj, item) => { obj[item.ident] = item.data; return obj; }, Object.create(null)) }; // Apply formatting to content if format flag is true; const manifestContent = this.options.format ? JSON.stringify(manifest, null, 2) : JSON.stringify(manifest); const content = Buffer.from(manifestContent, "utf8"); compiler.outputFileSystem.mkdirp(path.dirname(targetPath), err => { if (err) return callback(err); compiler.outputFileSystem.writeFile( targetPath, content, callback ); }); }, callback ); } ); } } module.exports = LibManifestPlugin;