diff --git a/surfsense_backend/app/services/notion/tool_metadata_service.py b/surfsense_backend/app/services/notion/tool_metadata_service.py index 73b969b40..eeb8eb86a 100644 --- a/surfsense_backend/app/services/notion/tool_metadata_service.py +++ b/surfsense_backend/app/services/notion/tool_metadata_service.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -from sqlalchemy import and_, func +from sqlalchemy import and_ from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.future import select @@ -76,17 +76,14 @@ class NotionToolMetadataService: return { "accounts": [], "parent_pages": {}, - "total_pages_per_account": {}, "error": "No Notion accounts connected", } parent_pages = await self._get_parent_pages_by_account(search_space_id, accounts) - page_counts = await self._get_page_counts_by_account(search_space_id, accounts) return { "accounts": [acc.to_dict() for acc in accounts], "parent_pages": parent_pages, - "total_pages_per_account": page_counts, } async def get_update_context( @@ -183,23 +180,3 @@ class NotionToolMetadataService: ] return parent_pages - - async def _get_page_counts_by_account( - self, search_space_id: int, accounts: list[NotionAccount] - ) -> dict: - counts = {} - - for account in accounts: - result = await self._db_session.execute( - select(func.count(Document.id)).filter( - and_( - Document.search_space_id == search_space_id, - Document.connector_id == account.id, - Document.document_type == DocumentType.NOTION_CONNECTOR, - ) - ) - ) - count = result.scalar() - counts[account.id] = count - - return counts diff --git a/surfsense_web/components/tool-ui/create-notion-page.tsx b/surfsense_web/components/tool-ui/create-notion-page.tsx index 45fe1dc63..f62390e9f 100644 --- a/surfsense_web/components/tool-ui/create-notion-page.tsx +++ b/surfsense_web/components/tool-ui/create-notion-page.tsx @@ -44,7 +44,6 @@ interface InterruptResult { document_id: number; }> >; - total_pages_per_account?: Record; error?: string; }; } @@ -105,7 +104,6 @@ function ApprovalCard({ const accounts = interruptData.context?.accounts ?? []; const parentPages = interruptData.context?.parent_pages ?? {}; - const totalPagesPerAccount = interruptData.context?.total_pages_per_account ?? {}; const defaultAccountId = useMemo(() => { if (args.connector_id) return String(args.connector_id); @@ -115,7 +113,7 @@ function ApprovalCard({ const [selectedAccountId, setSelectedAccountId] = useState(defaultAccountId); const [selectedParentPageId, setSelectedParentPageId] = useState( - args.parent_page_id ? String(args.parent_page_id) : "" + args.parent_page_id ? String(args.parent_page_id) : "__none__" ); const availableParentPages = useMemo(() => { @@ -183,7 +181,7 @@ function ApprovalCard({ value={selectedAccountId} onValueChange={(value) => { setSelectedAccountId(value); - setSelectedParentPageId(""); + setSelectedParentPageId("__none__"); }} > @@ -192,13 +190,7 @@ function ApprovalCard({ {accounts.map((account) => ( -
- {account.workspace_icon} - {account.workspace_name} - - ({totalPagesPerAccount[account.id] ?? 0} pages) - -
+ {account.workspace_name}
))}
@@ -216,7 +208,7 @@ function ApprovalCard({
- None (create at root level) + None (create at root level) {availableParentPages.map((page) => ( 📄 {page.title} @@ -325,7 +317,7 @@ function ApprovalCard({ args: { ...editedArgs, connector_id: selectedAccountId ? Number(selectedAccountId) : null, - parent_page_id: selectedParentPageId || null, + parent_page_id: selectedParentPageId === "__none__" ? null : selectedParentPageId, }, }, }); @@ -359,7 +351,7 @@ function ApprovalCard({ args: { ...args, connector_id: selectedAccountId ? Number(selectedAccountId) : null, - parent_page_id: selectedParentPageId || null, + parent_page_id: selectedParentPageId === "__none__" ? null : selectedParentPageId, }, }, });