random.ts 416 B

123456789101112131415
  1. import { Random } from "roughjs/bin/math";
  2. import { nanoid } from "nanoid";
  3. import { isTestEnv } from "./utils";
  4. let random = new Random(Date.now());
  5. let testIdBase = 0;
  6. export const randomInteger = () => Math.floor(random.next() * 2 ** 31);
  7. export const reseed = (seed: number) => {
  8. random = new Random(seed);
  9. testIdBase = 0;
  10. };
  11. export const randomId = () => (isTestEnv() ? `id${testIdBase++}` : nanoid());