import { NotFound } from "@/app/[domain]/components/notFound" import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, } from "@/components/ui/breadcrumb" import { TabSwitcher } from "@/components/ui/tab-switcher" import { Tabs, TabsContent } from "@/components/ui/tabs" import { ConnectionIcon } from "../components/connectionIcon" import { Header } from "../../components/header" import { ConfigSetting } from "./components/configSetting" import { DeleteConnectionSetting } from "./components/deleteConnectionSetting" import { DisplayNameSetting } from "./components/displayNameSetting" import { RepoList } from "./components/repoList" import { getConnectionByDomain } from "@/data/connection" import { Overview } from "./components/overview" import { getOrgMembership } from "@/actions" import { isServiceError } from "@/lib/utils" import { notFound } from "next/navigation" import { OrgRole } from "@sourcebot/db" interface ConnectionManagementPageProps { params: { domain: string id: string }, searchParams: { tab: string } } export default async function ConnectionManagementPage({ params, searchParams }: ConnectionManagementPageProps) { const connection = await getConnectionByDomain(Number(params.id), params.domain); if (!connection) { return } const membership = await getOrgMembership(params.domain); if (isServiceError(membership)) { return notFound(); } const isOwner = membership.role === OrgRole.OWNER; const currentTab = searchParams.tab || "overview"; return (
Connections {connection.name}

{connection.name}

Overview

Linked Repositories

) }