diff --git a/packages/web/src/app/[domain]/repos/[id]/page.tsx b/packages/web/src/app/[domain]/repos/[id]/page.tsx
index 93289206..db14e50c 100644
--- a/packages/web/src/app/[domain]/repos/[id]/page.tsx
+++ b/packages/web/src/app/[domain]/repos/[id]/page.tsx
@@ -102,7 +102,7 @@ export default async function RepoDetailPage({ params }: { params: Promise<{ id:
-
+
@@ -121,7 +121,7 @@ export default async function RepoDetailPage({ params }: { params: Promise<{ id:
- {repo.indexedAt ? : "Never"}
+ {repo.indexedAt ? : "Never"}
@@ -140,7 +140,7 @@ export default async function RepoDetailPage({ params }: { params: Promise<{ id:
- {nextIndexAttempt ? : "-"}
+ {nextIndexAttempt ? : "-"}
diff --git a/packages/web/src/app/[domain]/repos/layout.tsx b/packages/web/src/app/[domain]/repos/layout.tsx
index f119d94f..675fdf94 100644
--- a/packages/web/src/app/[domain]/repos/layout.tsx
+++ b/packages/web/src/app/[domain]/repos/layout.tsx
@@ -1,4 +1,11 @@
+import { InfoIcon } from "lucide-react";
import { NavigationMenu } from "../components/navigationMenu";
+import { SINGLE_TENANT_ORG_DOMAIN } from "@/lib/constants";
+import Link from "next/link";
+import { getCurrentUserRole, getReposStats } from "@/actions";
+import { isServiceError } from "@/lib/utils";
+import { ServiceErrorException } from "@/lib/serviceError";
+import { OrgRole } from "@sourcebot/db";
interface LayoutProps {
children: React.ReactNode;
@@ -12,9 +19,22 @@ export default async function Layout(
const { domain } = params;
const { children } = props;
+ const repoStats = await getReposStats();
+ if (isServiceError(repoStats)) {
+ throw new ServiceErrorException(repoStats);
+ }
+
+ const userRoleInOrg = await getCurrentUserRole(domain);
+
return (
+ {(repoStats.numberOfRepos === 0 && userRoleInOrg === OrgRole.OWNER) && (
+
+
+ No repositories configured. Create a connection to get started.
+
+ )}
diff --git a/packages/web/src/app/[domain]/settings/connections/[id]/page.tsx b/packages/web/src/app/[domain]/settings/connections/[id]/page.tsx
index a4792f4e..5db0d28c 100644
--- a/packages/web/src/app/[domain]/settings/connections/[id]/page.tsx
+++ b/packages/web/src/app/[domain]/settings/connections/[id]/page.tsx
@@ -121,7 +121,7 @@ export default async function ConnectionDetailPage(props: ConnectionDetailPagePr
-
+
@@ -159,7 +159,7 @@ export default async function ConnectionDetailPage(props: ConnectionDetailPagePr
- {nextSyncAttempt ? : "-"}
+ {nextSyncAttempt ? : "-"}
diff --git a/packages/web/src/app/[domain]/settings/connections/components/connectionsTable.tsx b/packages/web/src/app/[domain]/settings/connections/components/connectionsTable.tsx
index cae2d9c4..db161124 100644
--- a/packages/web/src/app/[domain]/settings/connections/components/connectionsTable.tsx
+++ b/packages/web/src/app/[domain]/settings/connections/components/connectionsTable.tsx
@@ -88,6 +88,7 @@ export const columns: ColumnDef
[] = [