UNPKG

blo

Version:

blo is a small and fast library to generate Ethereum identicons.

22 lines (21 loc) 673 B
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const RANDOM_SCALE = 1 / (1 << 31 >>> 0); function nextRandom(rseed) { const t = rseed[0] ^ rseed[0] << 11; rseed[0] = rseed[1]; rseed[1] = rseed[2]; rseed[2] = rseed[3]; rseed[3] = (rseed[3] ^ rseed[3] >> 19 ^ t ^ t >> 8) >>> 0; return rseed[3] * RANDOM_SCALE; } function randSeed(seed) { const rseed = new Uint32Array([0, 0, 0, 0]); for (let i = 0; i < seed.length; i++) { rseed[i % 4] = (rseed[i % 4] << 5) - rseed[i % 4] + seed.charCodeAt(i); } return rseed; } exports.nextRandom = nextRandom; exports.randSeed = randSeed; //# sourceMappingURL=random.js.map