diff --git a/web/src/app/admin/connector/[ccPairId]/page.tsx b/web/src/app/admin/connector/[ccPairId]/page.tsx
index 984f9454e..3f26179ce 100644
--- a/web/src/app/admin/connector/[ccPairId]/page.tsx
+++ b/web/src/app/admin/connector/[ccPairId]/page.tsx
@@ -46,6 +46,7 @@ import { IndexAttemptSnapshot } from "@/lib/types";
import { Spinner } from "@/components/Spinner";
import { Callout } from "@/components/ui/callout";
import { FiAlertCircle } from "react-icons/fi";
+import { Card, CardHeader } from "@/components/ui/card";
// synchronize these validations with the SQLAlchemy connector class until we have a
// centralized schema for both frontend and backend
@@ -385,18 +386,6 @@ function Main({ ccPairId }: { ccPairId: number }) {
status={ccPair.last_index_attempt_status || "not_started"}
ccPairStatus={ccPair.status}
/>
-
- {!ccPair.last_successful_index_time ? (
-
- No successful index
-
- ) : ccPair.access_type == "sync" && !ccPair.last_time_perm_sync ? (
-
- Syncing
-
- ) : (
- <>>
- )}
@@ -417,6 +406,29 @@ function Main({ ccPairId }: { ccPairId: number }) {
)}
+ {(!ccPair.last_successful_index_time ||
+ (ccPair.access_type === "sync" && !ccPair.last_time_perm_sync)) && (
+
+
+
+
+
+
+ {!ccPair.last_successful_index_time
+ ? "No Successful Indexing"
+ : "Permissions Sync In Progress"}
+
+
+ {!ccPair.last_successful_index_time
+ ? "This connector has never been successfully indexed. Documents from this connector will not appear in search results until indexing completes successfully."
+ : "Permissions synchronization is still in progress for this connector. Some documents may not appear in search results until this process completes."}
+
+
+
+
+
+ )}
+
{ccPair.deletion_failure_message &&
ccPair.status === ConnectorCredentialPairStatus.DELETING && (
<>
diff --git a/web/src/app/admin/indexing/status/CCPairIndexingStatusTable.tsx b/web/src/app/admin/indexing/status/CCPairIndexingStatusTable.tsx
index 119c7e367..236e5f78c 100644
--- a/web/src/app/admin/indexing/status/CCPairIndexingStatusTable.tsx
+++ b/web/src/app/admin/indexing/status/CCPairIndexingStatusTable.tsx
@@ -80,7 +80,7 @@ function SummaryRow({
- Complete Connectors
+ Ready Connectors
{summary.complete}/{summary.count}
@@ -218,25 +218,6 @@ border border-border dark:border-neutral-700
{ccPairsIndexingStatus.name}
-
- {!ccPairsIndexingStatus.last_success && (
-
-
-
-
- Has not been successfully indexed yet
-
-
-
- This connector has not been successfully indexed yet.
-
-
-
- )}
@@ -256,7 +237,7 @@ border border-border dark:border-neutral-700
-
+
diff --git a/web/src/components/credentials/actions/ModifyCredential.tsx b/web/src/components/credentials/actions/ModifyCredential.tsx
index a9ead3f3b..84019dc77 100644
--- a/web/src/components/credentials/actions/ModifyCredential.tsx
+++ b/web/src/components/credentials/actions/ModifyCredential.tsx
@@ -15,6 +15,7 @@ import {
Credential,
} from "@/lib/connectors/credentials";
import { Connector } from "@/lib/connectors/connectors";
+import { ConfirmEntityModal } from "@/components/modals/ConfirmEntityModal";
const CredentialSelectionTable = ({
credentials,
@@ -188,35 +189,16 @@ export default function ModifyCredential({
return (
<>
{confirmDeletionCredential != null && (
- setConfirmDeletionCredential(null)}
- className="max-w-sm"
- >
- <>
-
- Are you sure you want to delete this credential? You cannot delete
- credentials that are linked to live connectors.
-
-
- {
- await onDeleteCredential(confirmDeletionCredential);
- setConfirmDeletionCredential(null);
- }}
- >
- Yes
-
- setConfirmDeletionCredential(null)}
- className="rounded py-1.5 px-2 bg-background-150 text-text-800"
- >
- {" "}
- No
-
-
- >
-
+ setConfirmDeletionCredential(null)}
+ onSubmit={async () => {
+ await onDeleteCredential(confirmDeletionCredential);
+ setConfirmDeletionCredential(null);
+ }}
+ additionalDetails="You cannot delete credentials that are linked to live connectors."
+ />
)}