Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/webpack/lib/ |
Upload File : |
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const path = require("path"); const ParserHelpers = require("./ParserHelpers"); const ConstDependency = require("./dependencies/ConstDependency"); const NullFactory = require("./NullFactory"); class NodeStuffPlugin { constructor(options) { this.options = options; } apply(compiler) { const options = this.options; compiler.hooks.compilation.tap( "NodeStuffPlugin", (compilation, { normalModuleFactory }) => { compilation.dependencyFactories.set(ConstDependency, new NullFactory()); compilation.dependencyTemplates.set( ConstDependency, new ConstDependency.Template() ); const handler = (parser, parserOptions) => { if (parserOptions.node === false) return; let localOptions = options; if (parserOptions.node) { localOptions = Object.assign({}, localOptions, parserOptions.node); } const setConstant = (expressionName, value) => { parser.hooks.expression .for(expressionName) .tap("NodeStuffPlugin", () => { parser.state.current.addVariable( expressionName, JSON.stringify(value) ); return true; }); }; const setModuleConstant = (expressionName, fn) => { parser.hooks.expression .for(expressionName) .tap("NodeStuffPlugin", () => { parser.state.current.addVariable( expressionName, JSON.stringify(fn(parser.state.module)) ); return true; }); }; const context = compiler.context; if (localOptions.__filename) { if (localOptions.__filename === "mock") { setConstant("__filename", "/index.js"); } else { setModuleConstant("__filename", module => path.relative(context, module.resource) ); } parser.hooks.evaluateIdentifier .for("__filename") .tap("NodeStuffPlugin", expr => { if (!parser.state.module) return; const resource = parser.state.module.resource; const i = resource.indexOf("?"); return ParserHelpers.evaluateToString( i < 0 ? resource : resource.substr(0, i) )(expr); }); } if (localOptions.__dirname) { if (localOptions.__dirname === "mock") { setConstant("__dirname", "/"); } else { setModuleConstant("__dirname", module => path.relative(context, module.context) ); } parser.hooks.evaluateIdentifier .for("__dirname") .tap("NodeStuffPlugin", expr => { if (!parser.state.module) return; return ParserHelpers.evaluateToString( parser.state.module.context )(expr); }); } parser.hooks.expression .for("require.extensions") .tap( "NodeStuffPlugin", ParserHelpers.expressionIsUnsupported( parser, "require.extensions is not supported by webpack. Use a loader instead." ) ); }; normalModuleFactory.hooks.parser .for("javascript/auto") .tap("NodeStuffPlugin", handler); normalModuleFactory.hooks.parser .for("javascript/dynamic") .tap("NodeStuffPlugin", handler); } ); } } module.exports = NodeStuffPlugin;