INNER CODE UNIT · TypeScript
decode83
margelo/react-native-blurhash · src/utils.ts:31
export function decode83(str: string): number {
let value = 0;
for (let i = 0; i < str.length; i++) {
const c = str[i];
const digit = digitCharacters.indexOf(c);
value = value * 83 + digit;
}
return value;
}
function validateBlurhash(blurhash: string): void {
if (!blurhash || blurhash.length < 6) throw new Error('The blurhash string must be at least 6 characters');
const sizeFlag = decode83(blurhash[0]);
const numY = Math.floor(sizeFlag / 9) + 1;
const numX = (sizeFlag % 9) + 1;
if (blurhash.length !== 4 + 2 * numX * numY)