Skip to content

Commit aa2fed1

Browse files
committed
Skip search requests when query is empty
1 parent 1e1e034 commit aa2fed1

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

src/api.nim

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,16 @@ proc getSearch*[T](query: Query; after=""): Future[Result[T]] {.async.} =
6767
searchMode = ("tweet_search_mode", "live")
6868
parse = parseTimeline
6969

70-
let
71-
q = genQueryParam(query)
72-
url = search ? genParams(searchParams & @[("q", q), searchMode], after)
73-
result = parse(await fetch(url), after)
74-
result.query = query
70+
let q = genQueryParam(query)
71+
if q.len == 0 or q == emptyQuery:
72+
return Result[T](beginning: true, query: query)
73+
74+
let url = search ? genParams(searchParams & @[("q", q), searchMode], after)
75+
try:
76+
result = parse(await fetch(url), after)
77+
result.query = query
78+
except InternalError:
79+
return Result[T](beginning: true, query: query)
7580

7681
proc getTweetImpl(id: string; after=""): Future[Conversation] {.async.} =
7782
let url = tweet / (id & ".json") ? genParams(cursor=after)

src/query.nim

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ const
1212
"verified", "safe"
1313
]
1414

15+
emptyQuery* = "include:nativeretweets"
16+
1517
template `@`(param: string): untyped =
1618
if param in pms: pms[param]
1719
else: ""

0 commit comments

Comments
 (0)