feat: Remove YouTube connector and associated components, streamline source addition process with new YouTube crawler view, and enhance connector management UI for improved user experience.

This commit is contained in:
Anish Sarkar 2025-12-31 18:17:03 +05:30
parent de63e77f78
commit 75119bf06b
13 changed files with 405 additions and 331 deletions

View file

@ -104,6 +104,11 @@ export const useConnectorDialog = () => {
setConnectingConnectorType(params.connectorType);
}
// Handle YouTube view
if (params.view === "youtube") {
// YouTube view is active - no additional state needed
}
if (params.view === "configure" && params.connector && !indexingConfig) {
const oauthConnector = OAUTH_CONNECTORS.find(c => c.id === params.connector);
if (oauthConnector && allConnectors) {
@ -177,6 +182,7 @@ export const useConnectorDialog = () => {
if (connectingConnectorType) {
setConnectingConnectorType(null);
}
// Clear YouTube view when modal is closed (handled by view param check)
}
} catch (error) {
// Invalid query params - log but don't crash
@ -270,6 +276,17 @@ export const useConnectorDialog = () => {
[searchSpaceId]
);
// Handle creating YouTube crawler (not a connector, shows view in popup)
const handleCreateYouTubeCrawler = useCallback(() => {
if (!searchSpaceId) return;
// Update URL to show YouTube view
const url = new URL(window.location.href);
url.searchParams.set("modal", "connectors");
url.searchParams.set("view", "youtube");
window.history.pushState({ modal: true }, "", url.toString());
}, [searchSpaceId]);
// Handle creating webcrawler connector
const handleCreateWebcrawler = useCallback(async () => {
if (!searchSpaceId) return;
@ -525,6 +542,15 @@ export const useConnectorDialog = () => {
router.replace(url.pathname + url.search, { scroll: false });
}, [router]);
// Handle going back from YouTube view
const handleBackFromYouTube = useCallback(() => {
const url = new URL(window.location.href);
url.searchParams.set("modal", "connectors");
url.searchParams.set("tab", "all");
url.searchParams.delete("view");
router.replace(url.pathname + url.search, { scroll: false });
}, [router]);
// Handle starting indexing
const handleStartIndexing = useCallback(async (refreshConnectors: () => void) => {
if (!indexingConfig || !searchSpaceId) return;
@ -951,6 +977,7 @@ export const useConnectorDialog = () => {
handleConnectOAuth,
handleConnectNonOAuth,
handleCreateWebcrawler,
handleCreateYouTubeCrawler,
handleSubmitConnectForm,
handleStartIndexing,
handleSkipIndexing,
@ -959,6 +986,7 @@ export const useConnectorDialog = () => {
handleDisconnectConnector,
handleBackFromEdit,
handleBackFromConnect,
handleBackFromYouTube,
connectorConfig,
setConnectorConfig,
setIndexingConnectorConfig,