| Server IP : 14.225.204.176 / Your IP : 216.73.216.6 Web Server : nginx/1.24.0 System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64 User : root ( 0) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/node_modules/rechoir/ |
Upload File : |
var path = require('path');
var extension = require('./lib/extension');
var normalize = require('./lib/normalize');
var register = require('./lib/register');
exports.prepare = function (extensions, filepath, cwd, nothrow) {
var config, usedExtension, err, option, attempt, error;
var attempts = [];
var onlyErrors = true;
var exts = extension(filepath);
if (exts) {
exts.some(function (ext) {
usedExtension = ext;
config = normalize(extensions[ext]);
return !!config;
});
}
if (Object.keys(require.extensions).indexOf(usedExtension) !== -1) {
return true;
}
if (!config) {
if (nothrow) {
return;
}
throw new Error('No module loader found for "' + usedExtension + '".');
}
if (!cwd) {
cwd = path.dirname(path.resolve(filepath));
}
if (!Array.isArray(config)) {
config = [config];
}
for (var i in config) {
option = config[i];
attempt = register(cwd, option.module, option.register);
error = attempt instanceof Error ? attempt : null;
if (error) {
attempt = null;
}
attempts.push({
moduleName: option.module,
module: attempt,
error: error,
});
if (!error) {
onlyErrors = false;
break;
}
}
if (onlyErrors) {
err = new Error(
'Unable to use specified module loaders for "' + usedExtension + '".'
);
err.failures = attempts;
if (nothrow) {
return err;
}
throw err;
}
return attempts;
};