| 1234567891011121314151617181920212223242526272829303132333435363738 | 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' ]};
 |