auth0-js
Version:
Auth0 headless browser sdk
26 lines (19 loc) • 604 B
JavaScript
import windowHelper from './window';
function randomString(length) {
// eslint-disable-next-line
var bytes = new Uint8Array(length);
var result = [];
var charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz-._~';
var cryptoObj = windowHelper.getWindow().crypto || windowHelper.getWindow().msCrypto;
if (!cryptoObj) {
return null;
}
var random = cryptoObj.getRandomValues(bytes);
for (var a = 0; a < random.length; a++) {
result.push(charset[random[a] % charset.length]);
}
return result.join('');
}
export default {
randomString: randomString
};