style: format static/search/fetch.ts

This commit is contained in:
2026-06-21 02:05:03 +02:00
committed by Milas Holsting
parent 2cc6eb3224
commit b7e06810c6

View File

@@ -1,4 +1,13 @@
import type { SearchItem, SearchResponse } from "./state"; import type { SearchItem, SearchResponse } from "./state";
import {
setClearButtonState,
clearResults,
renderEmptyState,
renderSearchErrorState,
renderItems,
appendItems,
} from "./render";
import { import {
searchInput, searchInput,
searchResults, searchResults,
@@ -15,14 +24,6 @@ import {
isFetchingNextPage, isFetchingNextPage,
setFetchingNextPage, setFetchingNextPage,
} from "./state"; } from "./state";
import {
setClearButtonState,
clearResults,
renderEmptyState,
renderSearchErrorState,
renderItems,
appendItems,
} from "./render";
const parseSearchResponse = (payload: unknown): SearchResponse => { const parseSearchResponse = (payload: unknown): SearchResponse => {
if (Array.isArray(payload)) { if (Array.isArray(payload)) {
@@ -95,7 +96,7 @@ export const fetchSearchItems = (query: string): void => {
const controller = new AbortController(); const controller = new AbortController();
setActiveRequestController(controller); setActiveRequestController(controller);
fetch("/api/search?q=" + encodeURIComponent(query), { signal: controller.signal }) fetch(`/api/search?q=${encodeURIComponent(query)}`, { signal: controller.signal })
.then((res: Response) => { .then((res: Response) => {
if (!res.ok) { if (!res.ok) {
return { items: [], hasNextPage: false }; return { items: [], hasNextPage: false };
@@ -135,7 +136,7 @@ const fetchNextSearchPage = (): void => {
setFetchingNextPage(true); setFetchingNextPage(true);
fetch("/api/search?q=" + encodeURIComponent(query) + "&page=" + encodeURIComponent(String(page))) fetch(`/api/search?q=${encodeURIComponent(query)}&page=${encodeURIComponent(String(page))}`)
.then((res: Response) => { .then((res: Response) => {
if (!res.ok) { if (!res.ok) {
return { items: [], hasNextPage: false }; return { items: [], hasNextPage: false };
@@ -189,5 +190,12 @@ export const scheduleFetch = (): void => {
const query = searchInput?.value.trim() || ""; const query = searchInput?.value.trim() || "";
setClearButtonState(query !== ""); setClearButtonState(query !== "");
setFetchTimeout(window.setTimeout(() => fetchSearchItems(query), query.length >= 2 ? 240 : 80)); setFetchTimeout(
window.setTimeout(
() => {
fetchSearchItems(query);
},
query.length >= 2 ? 240 : 80,
),
);
}; };