UNPKG

uuid

Version:

RFC4122 (v1, v4, and v5) UUIDs

12 lines (10 loc) 323 B
import crypto from 'crypto'; const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate let poolPtr = rnds8Pool.length; export default function rng() { if (poolPtr > rnds8Pool.length - 16) { crypto.randomFillSync(rnds8Pool); poolPtr = 0; } return rnds8Pool.slice(poolPtr, poolPtr += 16); }