Files
async-programming-promises/node_modules/nanoid/async/random.js
2019-10-23 07:41:03 -05:00

28 lines
597 B
JavaScript

var crypto = require('crypto')
if (crypto.randomFill) {
module.exports = function (bytes) {
return new Promise(function (resolve, reject) {
crypto.randomFill(Buffer.allocUnsafe(bytes), function (err, buf) {
if (err) {
reject(err)
} else {
resolve(buf)
}
})
})
}
} else {
module.exports = function (bytes) {
return new Promise(function (resolve, reject) {
crypto.randomBytes(bytes, function (err, buf) {
if (err) {
reject(err)
} else {
resolve(buf)
}
})
})
}
}