"use client"; import React, { useEffect, useRef, useState } from "react"; import clsx from "clsx"; interface PropsSearch { placeholder?: string; keyword?: string; setKeyword: (value: string) => void; } export default function Search({ keyword = "", setKeyword, placeholder = "Nhập từ khóa tìm kiếm", }: PropsSearch) { const inputRef = useRef(null); const [searchTerm, setSearchTerm] = useState(keyword); useEffect(() => { const timer = setTimeout(() => { setKeyword(searchTerm.trim()); }, 600); return () => clearTimeout(timer); }, [searchTerm]); return (
inputRef.current?.focus()} className={clsx( "flex h-12 cursor-text items-center gap-2 rounded-full border bg-white px-4 transition-colors", "border-[#e1e5ed] hover:border-[#3772ff] focus-within:border-[#3772ff]", )} > setSearchTerm(e.target.value)} placeholder={placeholder} className={clsx( "flex-1", "border-none", "bg-transparent", "p-2", "text-[16px]", "font-medium", "outline-none", "placeholder:text-[#777e90]", )} />
); }