INNER CODE UNIT · TypeScript

listEnabledProviders

jonwiggins/optio · apps/api/src/services/oauth/index.ts:27

export async function listEnabledProviders(): Promise<EnabledProvider[]> {
  const { listSignInProviders } = await import("../sign-in-config-service.js");
  const views = await listSignInProviders();
  const out: EnabledProvider[] = [];
  for (const name of ["github", "google", "gitlab", "oidc"] as const) {
    const view = views.find((v) => v.provider === name);
    if (view?.enabled) out.push({ name, displayName: view.displayName });
  }
  return out;
}

/** Returns providers that have their client ID configured by the environment alone. */
export function getEnabledProviders(): EnabledProvider[] {
  const result: EnabledProvider[] = [];
  if (process.env.GITHUB_OAUTH_CLIENT_ID || process.env.GITHUB_APP_CLIENT_ID) {
    result.push({ name: "github", displayName: "GitHub" });
  }
  if (process.env.GOOGLE_OAUTH_CLIENT_ID) {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…