diff --git a/apps/client/src/features/search/services/search-service.ts b/apps/client/src/features/search/services/search-service.ts index 417e3f11..5e52ddf7 100644 --- a/apps/client/src/features/search/services/search-service.ts +++ b/apps/client/src/features/search/services/search-service.ts @@ -10,8 +10,8 @@ import { export async function searchPage( params: IPageSearchParams, ): Promise { - const req = await api.post("/search", params); - return req.data; + const req = await api.post<{ items: IPageSearch[] }>("/search", params); + return req.data.items; } export async function searchSuggestions( @@ -24,13 +24,13 @@ export async function searchSuggestions( export async function searchShare( params: IPageSearchParams, ): Promise { - const req = await api.post("/search/share-search", params); - return req.data; + const req = await api.post<{ items: IPageSearch[] }>("/search/share-search", params); + return req.data.items; } export async function searchAttachments( params: IPageSearchParams, ): Promise { - const req = await api.post("/search-attachments", params); - return req.data; + const req = await api.post<{ items: IAttachmentSearch[] }>("/search-attachments", params); + return req.data.items; } diff --git a/apps/server/src/core/search/search.service.ts b/apps/server/src/core/search/search.service.ts index 376f5c9f..53a1f27e 100644 --- a/apps/server/src/core/search/search.service.ts +++ b/apps/server/src/core/search/search.service.ts @@ -26,11 +26,11 @@ export class SearchService { userId?: string; workspaceId: string; }, - ): Promise { + ): Promise<{ items: SearchResponseDto[] }> { const { query } = searchParams; if (query.length < 1) { - return; + return { items: [] }; } const searchQuery = tsquery(query.trim() + '*'); @@ -62,7 +62,7 @@ export class SearchService { ) .where('deletedAt', 'is', null) .orderBy('rank', 'desc') - .limit(searchParams.limit | 25) + .limit(searchParams.limit || 25) .offset(searchParams.offset || 0); if (!searchParams.shareId) { @@ -86,7 +86,7 @@ export class SearchService { const shareId = searchParams.shareId; const share = await this.shareRepo.findById(shareId); if (!share || share.workspaceId !== opts.workspaceId) { - return []; + return { items: [] }; } const pageIdsToSearch = []; @@ -108,10 +108,10 @@ export class SearchService { .where('id', 'in', pageIdsToSearch) .where('workspaceId', '=', opts.workspaceId); } else { - return []; + return { items: [] }; } } else { - return []; + return { items: [] }; } //@ts-ignore @@ -127,7 +127,7 @@ export class SearchService { return result; }); - return searchResults; + return { items: searchResults }; } async searchSuggestions( diff --git a/apps/server/src/ee b/apps/server/src/ee index 98888322..b363767b 160000 --- a/apps/server/src/ee +++ b/apps/server/src/ee @@ -1 +1 @@ -Subproject commit 9888832270c5f7a7aca4a01a36a072f4d4787e37 +Subproject commit b363767b69a531ebc85826c909c4c36c6dd60873