function createFallbackSuffix(length: number): string {
let suffix = ""; for (let i = 0; i < length; i += 1) {
suffix += SLUG_FALLBACK_ALPHABET[generateSecureInt(SLUG_FALLBACK_ALPHABET.length)] ?? "x";
} return suffix;
}
function createSlugBase(words = 2) { const parts = [randomChoice(SLUG_ADJECTIVES, "steady"), randomChoice(SLUG_NOUNS, "harbor")]; if (words > 2) {
parts.push(randomChoice(SLUG_NOUNS, "reef"));
} return parts.join("-");
}
function createAvailableSlug(
words: number,
isIdTaken: (id: string) => boolean,
): string | undefined { for (let attempt = 0; attempt < 12; attempt += 1) { const base = createSlugBase(words); if (!isIdTaken(base)) { return base;
} for (let i = 2; i <= 12; i += 1) { const candidate = `${base}-${i}`; if (!isIdTaken(candidate)) { return candidate;
}
}
} return undefined;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.