INNER CODE UNIT · TypeScript
value
margelo/react-native-blurhash · src/utils.ts:36
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)
throw new Error(`blurhash length mismatch: length is ${blurhash.length} but it should be ${4 + 2 * numX * numY}`);
}
export function isBlurhashValid(blurhash: string): { isValid: true } | { isValid: false; errorReason: string } {
try {