| Server IP : 173.236.223.38 / Your IP : 216.73.216.33 Web Server : Apache System : Linux vps62975 6.8.0-83-generic #83~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Sep 9 18:19:47 UTC 2 x86_64 User : invmicvps ( 6727287) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/nodejs/webpack/lib/dependencies/ |
Upload File : |
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
"use strict";
const Dependency = require("../Dependency");
const CriticalDependencyWarning = require("./CriticalDependencyWarning");
const regExpToString = r => (r ? r + "" : "");
class ContextDependency extends Dependency {
// options: { request, recursive, regExp, include, exclude, mode, chunkName, groupOptions }
constructor(options) {
super();
this.options = options;
this.userRequest = this.options.request;
/** @type {false | string} */
this.critical = false;
this.hadGlobalOrStickyRegExp = false;
if (this.options.regExp.global || this.options.regExp.sticky) {
this.options.regExp = null;
this.hadGlobalOrStickyRegExp = true;
}
}
getResourceIdentifier() {
return (
`context${this.options.request} ${this.options.recursive} ` +
`${regExpToString(this.options.regExp)} ${regExpToString(
this.options.include
)} ${regExpToString(this.options.exclude)} ` +
`${this.options.mode} ${this.options.chunkName} ` +
`${JSON.stringify(this.options.groupOptions)}`
);
}
getWarnings() {
let warnings = super.getWarnings() || [];
if (this.critical) {
warnings.push(new CriticalDependencyWarning(this.critical));
}
if (this.hadGlobalOrStickyRegExp) {
warnings.push(
new CriticalDependencyWarning(
"Contexts can't use RegExps with the 'g' or 'y' flags."
)
);
}
return warnings;
}
}
// TODO remove in webpack 5
Object.defineProperty(ContextDependency.prototype, "async", {
configurable: false,
get() {
throw new Error(
"ContextDependency.async was removed. Use ContextDependency.options.mode instead."
);
},
set() {
throw new Error(
"ContextDependency.async was removed. Pass options.mode to constructor instead"
);
}
});
module.exports = ContextDependency;