diff --git a/surfsense_backend/app/connectors/notion_history.py b/surfsense_backend/app/connectors/notion_history.py index 54e5d12ca..81f6642f1 100644 --- a/surfsense_backend/app/connectors/notion_history.py +++ b/surfsense_backend/app/connectors/notion_history.py @@ -66,12 +66,12 @@ class NotionHistoryConnector: while has_more: if cursor: search_params["start_cursor"] = cursor - + search_results = await self.notion.search(**search_params) - + pages.extend(search_results["results"]) has_more = search_results.get("has_more", False) - + if has_more: cursor = search_results.get("next_cursor") diff --git a/surfsense_backend/app/tasks/connector_indexers/airtable_indexer.py b/surfsense_backend/app/tasks/connector_indexers/airtable_indexer.py index f8c3c7869..cf6824db8 100644 --- a/surfsense_backend/app/tasks/connector_indexers/airtable_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/airtable_indexer.py @@ -389,10 +389,12 @@ async def index_airtable_records( logger.info( f"Successfully indexed new Airtable record {summary_content}" ) - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Airtable records processed so far") + logger.info( + f"Committing batch: {documents_indexed} Airtable records processed so far" + ) await session.commit() except Exception as e: @@ -414,7 +416,9 @@ async def index_airtable_records( ) # Final commit for any remaining documents not yet committed in batches - logger.info(f"Final commit: Total {documents_indexed} Airtable records processed") + logger.info( + f"Final commit: Total {documents_indexed} Airtable records processed" + ) await session.commit() logger.info( "Successfully committed all Airtable document changes to database" diff --git a/surfsense_backend/app/tasks/connector_indexers/clickup_indexer.py b/surfsense_backend/app/tasks/connector_indexers/clickup_indexer.py index 7a2b23ff6..97fdbb6be 100644 --- a/surfsense_backend/app/tasks/connector_indexers/clickup_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/clickup_indexer.py @@ -353,10 +353,12 @@ async def index_clickup_tasks( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new task {task_name}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} ClickUp tasks processed so far") + logger.info( + f"Committing batch: {documents_indexed} ClickUp tasks processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/confluence_indexer.py b/surfsense_backend/app/tasks/connector_indexers/confluence_indexer.py index 943880c7f..c148e0879 100644 --- a/surfsense_backend/app/tasks/connector_indexers/confluence_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/confluence_indexer.py @@ -367,10 +367,12 @@ async def index_confluence_pages( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new page {page_title}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Confluence pages processed so far") + logger.info( + f"Committing batch: {documents_indexed} Confluence pages processed so far" + ) await session.commit() except Exception as e: @@ -390,7 +392,9 @@ async def index_confluence_pages( await update_connector_last_indexed(session, connector, update_last_indexed) # Final commit for any remaining documents not yet committed in batches - logger.info(f"Final commit: Total {documents_indexed} Confluence pages processed") + logger.info( + f"Final commit: Total {documents_indexed} Confluence pages processed" + ) await session.commit() logger.info( "Successfully committed all Confluence document changes to database" diff --git a/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py b/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py index 3d4a441fd..5aa56aa3f 100644 --- a/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py @@ -461,10 +461,12 @@ async def index_discord_messages( logger.info( f"Successfully indexed new channel {guild_name}#{channel_name} with {len(formatted_messages)} messages" ) - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Discord channels processed so far") + logger.info( + f"Committing batch: {documents_indexed} Discord channels processed so far" + ) await session.commit() except Exception as e: @@ -482,7 +484,9 @@ async def index_discord_messages( await update_connector_last_indexed(session, connector, update_last_indexed) # Final commit for any remaining documents not yet committed in batches - logger.info(f"Final commit: Total {documents_indexed} Discord channels processed") + logger.info( + f"Final commit: Total {documents_indexed} Discord channels processed" + ) await session.commit() # Prepare result message diff --git a/surfsense_backend/app/tasks/connector_indexers/github_indexer.py b/surfsense_backend/app/tasks/connector_indexers/github_indexer.py index 89908d126..95897c29b 100644 --- a/surfsense_backend/app/tasks/connector_indexers/github_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/github_indexer.py @@ -380,10 +380,12 @@ async def index_github_repos( ) session.add(document) documents_processed += 1 - + # Batch commit every 10 documents if documents_processed % 10 == 0: - logger.info(f"Committing batch: {documents_processed} GitHub files processed so far") + logger.info( + f"Committing batch: {documents_processed} GitHub files processed so far" + ) await session.commit() except Exception as repo_err: diff --git a/surfsense_backend/app/tasks/connector_indexers/google_calendar_indexer.py b/surfsense_backend/app/tasks/connector_indexers/google_calendar_indexer.py index 588b965f7..d1effd8fb 100644 --- a/surfsense_backend/app/tasks/connector_indexers/google_calendar_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/google_calendar_indexer.py @@ -406,10 +406,12 @@ async def index_google_calendar_events( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new event {event_summary}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Google Calendar events processed so far") + logger.info( + f"Committing batch: {documents_indexed} Google Calendar events processed so far" + ) await session.commit() except Exception as e: @@ -428,7 +430,9 @@ async def index_google_calendar_events( await update_connector_last_indexed(session, connector, update_last_indexed) # Final commit for any remaining documents not yet committed in batches - logger.info(f"Final commit: Total {documents_indexed} Google Calendar events processed") + logger.info( + f"Final commit: Total {documents_indexed} Google Calendar events processed" + ) await session.commit() await task_logger.log_task_success( diff --git a/surfsense_backend/app/tasks/connector_indexers/google_gmail_indexer.py b/surfsense_backend/app/tasks/connector_indexers/google_gmail_indexer.py index d05d13848..e92967527 100644 --- a/surfsense_backend/app/tasks/connector_indexers/google_gmail_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/google_gmail_indexer.py @@ -323,10 +323,12 @@ async def index_google_gmail_messages( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new email {summary_content}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Gmail messages processed so far") + logger.info( + f"Committing batch: {documents_indexed} Gmail messages processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/jira_indexer.py b/surfsense_backend/app/tasks/connector_indexers/jira_indexer.py index 0f138fc8b..7347e61ca 100644 --- a/surfsense_backend/app/tasks/connector_indexers/jira_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/jira_indexer.py @@ -351,10 +351,12 @@ async def index_jira_issues( logger.info( f"Successfully indexed new issue {issue_identifier} - {issue_title}" ) - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Jira issues processed so far") + logger.info( + f"Committing batch: {documents_indexed} Jira issues processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/linear_indexer.py b/surfsense_backend/app/tasks/connector_indexers/linear_indexer.py index 4a96bd943..6100c3cd8 100644 --- a/surfsense_backend/app/tasks/connector_indexers/linear_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/linear_indexer.py @@ -370,10 +370,12 @@ async def index_linear_issues( logger.info( f"Successfully indexed new issue {issue_identifier} - {issue_title}" ) - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Linear issues processed so far") + logger.info( + f"Committing batch: {documents_indexed} Linear issues processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/luma_indexer.py b/surfsense_backend/app/tasks/connector_indexers/luma_indexer.py index 0e17d209b..a05328bb9 100644 --- a/surfsense_backend/app/tasks/connector_indexers/luma_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/luma_indexer.py @@ -437,10 +437,12 @@ async def index_luma_events( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new event {event_name}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Luma events processed so far") + logger.info( + f"Committing batch: {documents_indexed} Luma events processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py b/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py index d3ebdb649..8bac0c3ce 100644 --- a/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py @@ -356,12 +356,14 @@ async def index_notion_pages( documents_indexed += 1 logger.info(f"Successfully updated Notion page: {page_title}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} documents processed so far") + logger.info( + f"Committing batch: {documents_indexed} documents processed so far" + ) await session.commit() - + continue # Document doesn't exist - create new one @@ -411,10 +413,12 @@ async def index_notion_pages( session.add(document) documents_indexed += 1 logger.info(f"Successfully indexed new Notion page: {page_title}") - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} documents processed so far") + logger.info( + f"Committing batch: {documents_indexed} documents processed so far" + ) await session.commit() except Exception as e: diff --git a/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py b/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py index 0631b3fc4..735125834 100644 --- a/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py @@ -353,12 +353,14 @@ async def index_slack_messages( session.add(document) documents_indexed += 1 - + # Batch commit every 10 documents if documents_indexed % 10 == 0: - logger.info(f"Committing batch: {documents_indexed} Slack channels processed so far") + logger.info( + f"Committing batch: {documents_indexed} Slack channels processed so far" + ) await session.commit() - + logger.info( f"Successfully indexed new channel {channel_name} with {len(formatted_messages)} messages" ) diff --git a/surfsense_web/app/(home)/login/GoogleLoginButton.tsx b/surfsense_web/app/(home)/login/GoogleLoginButton.tsx index 4148141b9..3c8aaeb77 100644 --- a/surfsense_web/app/(home)/login/GoogleLoginButton.tsx +++ b/surfsense_web/app/(home)/login/GoogleLoginButton.tsx @@ -36,7 +36,7 @@ export function GoogleLoginButton() {

{t("welcome_back")}

-{/* + {/* { - +

{space.name}

diff --git a/surfsense_web/components/chat/ChatInputGroup.tsx b/surfsense_web/components/chat/ChatInputGroup.tsx index 0de9d7ce7..010e71cd7 100644 --- a/surfsense_web/components/chat/ChatInputGroup.tsx +++ b/surfsense_web/components/chat/ChatInputGroup.tsx @@ -208,14 +208,16 @@ const ConnectorSelector = React.memo( {getConnectorIcon(docType.type, "h-3 w-3")}
))} - {selectedLiveConnectors.slice(0, 3 - selectedDocTypes.slice(0, 2).length).map((connector) => ( -
- {getConnectorIcon(connector.connector_type, "h-3 w-3")} -
- ))} + {selectedLiveConnectors + .slice(0, 3 - selectedDocTypes.slice(0, 2).length) + .map((connector) => ( +
+ {getConnectorIcon(connector.connector_type, "h-3 w-3")} +
+ ))}
{totalSelectedCount} {totalSelectedCount === 1 ? "source" : "sources"} @@ -240,7 +242,7 @@ const ConnectorSelector = React.memo( - {(isLoading || connectorsLoading) ? ( + {isLoading || connectorsLoading ? (
@@ -293,9 +295,7 @@ const ConnectorSelector = React.memo(
-

- {connector.name} -

+

{connector.name}

{isSelected && (
@@ -590,7 +590,6 @@ const LLMSelector = React.memo(() => {

-
))} diff --git a/surfsense_web/components/sidebar/app-sidebar.tsx b/surfsense_web/components/sidebar/app-sidebar.tsx index 243f2c062..399ab8373 100644 --- a/surfsense_web/components/sidebar/app-sidebar.tsx +++ b/surfsense_web/components/sidebar/app-sidebar.tsx @@ -1,8 +1,5 @@ "use client"; -import Link from "next/link"; -import Image from "next/image"; - import { AlertCircle, BookOpen, @@ -20,6 +17,8 @@ import { Trash2, Undo2, } from "lucide-react"; +import Image from "next/image"; +import Link from "next/link"; import { memo, useMemo } from "react"; import { Logo } from "@/components/Logo"; @@ -36,7 +35,6 @@ import { SidebarMenuItem, } from "@/components/ui/sidebar"; - // Map of icon names to their components export const iconMap: Record = { BookOpen, @@ -218,21 +216,21 @@ export const AppSidebar = memo(function AppSidebar({ - -
- SurfSense logo -
-
- SurfSense - beta v0.0.8 -
- + +
+ SurfSense logo +
+
+ SurfSense + beta v0.0.8 +
+