feat: show conversations in mobile search preview (Closes #803)
This commit is contained in:
1 parent
2406d24cb8
commit
51fe9e5af2
7 files changed
+281
-16
No files matched your search
+26
@@ -2778,6 +2778,32 @@ async def global_search_preview(
|
||||
return JSONResponse(preview)
|
||||
|
||||
|
||||
@app.get("/api/v1/repos/{owner}/{repo}/issues/{number}/preview/conversation")
|
||||
async def global_search_preview_conversation(
|
||||
owner: str,
|
||||
repo: str,
|
||||
number: int = PathParam(gt=0),
|
||||
kind: Literal["issue", "pull"] = Query(),
|
||||
page: int | None = Query(default=None, ge=1, le=100),
|
||||
limit: int = Query(default=20, ge=1, le=50),
|
||||
) -> JSONResponse:
|
||||
del kind # Issue and pull-request conversations share Gitea's issue-comments API.
|
||||
try:
|
||||
conversation = await asyncio.wait_for(
|
||||
gitea_proxy.issue_conversation_page(
|
||||
f"{owner}/{repo}", number, page, limit
|
||||
),
|
||||
timeout=GLOBAL_SEARCH_TIMEOUT_SECONDS,
|
||||
)
|
||||
except Exception:
|
||||
return JSONResponse(
|
||||
{"error": "This conversation is temporarily unavailable. Please retry."},
|
||||
status_code=503,
|
||||
headers={"Retry-After": "1"},
|
||||
)
|
||||
return JSONResponse(conversation)
|
||||
|
||||
|
||||
@app.get("/api/v1/work-route")
|
||||
async def resolve_work_route(
|
||||
kind: Literal["issue", "pull", "review", "update"] = Query(),
|
||||
|
||||
Reference in new issue
Block a user