// Single source of truth for the landing page content.
// BASE_DOMAIN is read at build time; falls back to ulicraft.local.
const BASE_DOMAIN = process.env.BASE_DOMAIN ?? "ulicraft.local";

export const site = {
  name: "Ulicraft",
  tagline: "LAN-party Minecraft server",
  baseDomain: BASE_DOMAIN,

  // Connect target shown to guests. No port needed — a dnsmasq SRV record
  // (_minecraft._tcp.mc.<domain>) points clients at 25565.
  serverAddress: `mc.${BASE_DOMAIN}`,

  // Drasl auth web UI + authlib-injector API root.
  authUrl: `http://auth.${BASE_DOMAIN}`,
  authlibUrl: `http://auth.${BASE_DOMAIN}/authlib-injector`,

  // packwiz modpack entrypoint.
  packwizUrl: `http://packwiz.${BASE_DOMAIN}/pack.toml`,

  // Caddy local CA root — guests import this to trust the offline asset mirror.
  caCertUrl: `http://${BASE_DOMAIN}/ca.crt`,

  // Launcher downloads. Stable filenames are symlinks created by
  // tooling/fetch-launcher.sh — keep these in sync with that script.
  launcher: {
    name: "FjordLauncherUnlocked",
    base: "/launcher/latest",
    downloads: [
      { os: "Windows", file: "fjord-windows-setup.exe", hint: "x64 installer" },
      { os: "macOS", file: "fjord-macos.dmg", hint: "Apple Silicon / Intel" },
      { os: "Linux", file: "fjord-linux-x86_64.AppImage", hint: "x86_64 AppImage" },
    ],
  },
} as const;
