INNER CODE UNIT · TypeScript

generateUniqueCode

Hash-Studios/Prism · infra/cloudflare/worker/src/index.ts:704

async function generateUniqueCode(env: Env): Promise<string> {
  for (let i = 0; i < 10; i += 1) {
    const code = generateCode(8);
    const existing = await env.LINKS_KV.get(code);
    if (existing == null) {
      return code;
    }
  }
  return `${Date.now().toString(36)}${generateCode(2)}`.slice(0, 10);
}

function generateCode(length: number): string {
  const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
  const bytes = crypto.getRandomValues(new Uint8Array(length));
  let out = '';
  for (let i = 0; i < bytes.length; i += 1) {
    out += alphabet[bytes[i] % alphabet.length];
  }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…