mirror of
https://github.com/axios/axios.git
synced 2026-04-11 02:11:50 +08:00
* feat: implement prettier and fix all issues * fix: failing tests * fix: implement feedback from codel, ai etc * chore: dont throw in trim function Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com> * fix: incorrect fix --------- Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
38 lines
837 B
JavaScript
38 lines
837 B
JavaScript
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'],
|
|
};
|