/
erioxis
/
web-nodejs
Обзор
Документация
Войти
/
erioxis
/
web-nodejs
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
backend/node_modules/bcrypt/promises.js
45 строк
1 KB
erioxis
lab11fix
15 дек 2025, 23:21
15 дек 2025, 23:21
70dc7ba
Код
Авторство
О чём код?
let Promise = global.Promise; /// encapsulate a method with a node-style callback in a Promise /// @param {object} 'this' of the encapsulated function /// @param {function} function to be encapsulated /// @param {Array-like} args to be passed to the called function /// @return {Promise} a Promise encapsulating the function function promise(fn, context, args) { if (!Array.isArray(args)) { args = Array.prototype.slice.call(args); } if (typeof fn !== 'function') { return Promise.reject(new Error('fn must be a function')); } return new Promise((resolve, reject) => { args.push((err, data) => { if (err) { reject(err); } else { resolve(data); } }); fn.apply(context, args); }); } /// @param {err} the error to be thrown function reject(err) { return Promise.reject(err); } /// changes the promise implementation that bcrypt uses /// @param {Promise} the implementation to use function use(promise) { Promise = promise; } module.exports = { promise, reject, use }