Files

22 lines
661 B
TypeScript

/**
* Discord bot invite URL helpers.
*/
const DEFAULT_PERMISSIONS = "8"; // Administrator (Discord invite UI still shows the checklist)
export function getBotInviteUrl(clientId?: string | null): string | null {
const id =
(clientId || "").trim() ||
(process.env.DISCORD_CLIENT_ID || "").trim() ||
(process.env.NEXT_PUBLIC_DISCORD_CLIENT_ID || "").trim();
if (!id) return null;
const params = new URLSearchParams({
client_id: id,
permissions: process.env.DISCORD_BOT_PERMISSIONS?.trim() || DEFAULT_PERMISSIONS,
scope: "bot applications.commands",
});
return `https://discord.com/oauth2/authorize?${params.toString()}`;
}