"use client"; import React from "react"; import { useState } from "react"; import { Input, Progress } from "@nextui-org/react"; import { SearchedDramaData } from "./requests"; import SearchedDataFormatter from "./searchFormatter"; import { PreFetchKdramaInfo } from "./cacher"; export const Searchbar = () => { const [loading, setLoading] = useState(<>); const [searchData, setSearchData] = useState(null); const [searchTitle, setSearchTitle] = useState(""); async function handleSearchInput() { setSearchData(null); setLoading( ); const data = await SearchedDramaData(searchTitle); PreFetchKdramaInfo(data); const format = await SearchedDataFormatter(data); setSearchData(format); setLoading(<>); } return (
{ if (event.target.value.trim() !== "") { setSearchTitle(event.target.value); } }} onKeyDown={async (event) => { if (event.key === "Enter" || event.code === "Enter") { await handleSearchInput(); } }} /> {loading}
{searchData}
); };