| Server IP : 82.148.16.210 / Your IP : 216.73.216.19 Web Server : nginx/1.29.5 System : Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64 User : root ( 0) PHP Version : 7.4.33 Disable Function : 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /usr/share/nodejs/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;
};