⚝
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 :
ChunkTemplate.js
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const { Tapable, SyncWaterfallHook, SyncHook } = require("tapable"); /** @typedef {import("./ModuleTemplate")} ModuleTemplate */ /** @typedef {import("./Chunk")} Chunk */ /** @typedef {import("./Module")} Module} */ /** @typedef {import("./Dependency").DependencyTemplate} DependencyTemplate} */ /** @typedef {import("./util/createHash").Hash} Hash} */ /** * @typedef {Object} RenderManifestOptions * @property {Chunk} chunk the chunk used to render * @property {string} hash * @property {string} fullHash * @property {TODO} outputOptions * @property {{javascript: ModuleTemplate, webassembly: ModuleTemplate}} moduleTemplates * @property {Map<TODO, TODO>} dependencyTemplates */ module.exports = class ChunkTemplate extends Tapable { constructor(outputOptions) { super(); this.outputOptions = outputOptions || {}; this.hooks = { /** @type {SyncWaterfallHook<TODO[], RenderManifestOptions>} */ renderManifest: new SyncWaterfallHook(["result", "options"]), modules: new SyncWaterfallHook([ "source", "chunk", "moduleTemplate", "dependencyTemplates" ]), render: new SyncWaterfallHook([ "source", "chunk", "moduleTemplate", "dependencyTemplates" ]), renderWithEntry: new SyncWaterfallHook(["source", "chunk"]), hash: new SyncHook(["hash"]), hashForChunk: new SyncHook(["hash", "chunk"]) }; } /** * * @param {RenderManifestOptions} options render manifest options * @returns {TODO[]} returns render manifest */ getRenderManifest(options) { const result = []; this.hooks.renderManifest.call(result, options); return result; } /** * Updates hash with information from this template * @param {Hash} hash the hash to update * @returns {void} */ updateHash(hash) { hash.update("ChunkTemplate"); hash.update("2"); this.hooks.hash.call(hash); } /** * TODO webpack 5: remove moduleTemplate and dependencyTemplates * Updates hash with chunk-specific information from this template * @param {Hash} hash the hash to update * @param {Chunk} chunk the chunk * @param {ModuleTemplate} moduleTemplate ModuleTemplate instance for render * @param {Map<Function, DependencyTemplate>} dependencyTemplates dependency templates * @returns {void} */ updateHashForChunk(hash, chunk, moduleTemplate, dependencyTemplates) { this.updateHash(hash); this.hooks.hashForChunk.call(hash, chunk); } };