diff options
Diffstat (limited to 'frontend/query.ts')
-rw-r--r-- | frontend/query.ts | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/frontend/query.ts b/frontend/query.ts index e67f09a..fc68af9 100644 --- a/frontend/query.ts +++ b/frontend/query.ts @@ -22,19 +22,19 @@ export function load_bangs() { }) } -export async function process_query(default_engine: string, query: string) { +export async function process_query(engine: string, query: string) { const bang_prefix = "!" - let url: string | undefined if (query.startsWith(bang_prefix)) { - const [engine, ...query_parts] = query.substring(bang_prefix.length).split(" ") - url = await search_url(engine, query_parts.join(" ")) - } else { - url = await search_url(default_engine, query) + const [_engine, ...query_parts] = query.substring(bang_prefix.length).split(" ") + engine = _engine + query = query_parts.join(" ") } + const url = await search_url(engine, query) if (!url) return status("error", "Invalid search engine.") + document.title = `${(await bangs)[engine]?.name ?? engine}: ${query}` status("success", `Forwarding to ${url}`) - document.location.replace(url) + setTimeout(() => document.location.replace(url), 0) } async function search_url(engine: string, query: string) { |