feat(backend): search finds word prefixes, earlier versions and deleted messages, with filters and cursor paging
This commit is contained in:
1 parent
42b4e1d7e6
commit
d45c96c259
5 files changed
+377
-88
No files matched your search
@@ -4,7 +4,7 @@ import asyncpg
|
||||
from dishka.integrations.fastapi import DishkaRoute, FromDishka
|
||||
from fastapi import APIRouter, Query
|
||||
|
||||
from utils.search.models import SearchFilters, SearchHit
|
||||
from utils.search.models import SearchFilters, SearchPage
|
||||
from utils.search.repository import search_messages
|
||||
|
||||
router = APIRouter(prefix="/api/search", tags=["search"], route_class=DishkaRoute)
|
||||
@@ -13,5 +13,5 @@ router = APIRouter(prefix="/api/search", tags=["search"], route_class=DishkaRout
|
||||
@router.get("")
|
||||
async def search(
|
||||
pool: FromDishka[asyncpg.Pool], filters: Annotated[SearchFilters, Query()]
|
||||
) -> list[SearchHit]:
|
||||
) -> SearchPage:
|
||||
return await search_messages(pool, filters)
|
||||
Reference in new issue
Block a user