Asset / node_modules /entities /src /internal /decode-shared.ts
Really-amin's picture
Fix Futures analysis freshness clock skew and verify KuCoin fallback
3401f26 verified
Raw
History Blame Contribute Delete
607 Bytes
/**
* Shared base64 decode helper for generated decode data.
* Assumes global atob is available.
* @param input Input string to encode or decode.
*/
export function decodeBase64(input: string): Uint16Array {
const binary: string = atob(input);
const evenLength = binary.length & ~1; // Round down to even length
const out = new Uint16Array(evenLength / 2);
for (let index = 0, outIndex = 0; index < evenLength; index += 2) {
const lo = binary.charCodeAt(index);
const hi = binary.charCodeAt(index + 1);
out[outIndex++] = lo | (hi << 8);
}
return out;
}