You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
import crypto from 'crypto'; import URLSearchParams from './classes/URLSearchParams.js' import FormData from './classes/FormData.js'
const ALPHA = 'abcdefghijklmnopqrstuvwxyz'
const DIGIT = '0123456789';
const ALPHABET = { DIGIT, ALPHA, ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT }
const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { let str = ''; const {length} = alphabet; const randomValues = new Uint32Array(size); crypto.randomFillSync(randomValues); for (let i = 0; i < size; i++) { str += alphabet[randomValues[i] % length]; }
return str; }
export default { isNode: true, classes: { URLSearchParams, FormData, Blob: typeof Blob !== 'undefined' && Blob || null }, ALPHABET, generateString, protocols: [ 'http', 'https', 'file', 'data' ] };
|