import { useEffect, useState } from "react"; import { FiSearch } from "react-icons/fi"; import { FcGoogle } from "react-icons/fc"; import { SiDuckduckgo } from "react-icons/si"; import { SiMicrosoftbing } from "react-icons/si"; export default function Search({ options, classN }) { const providers = ["google", "bing", "duckduckgo", "custom"]; const targets = ["_blank", "_parent", "_top"]; const [query, setQuery] = useState(""); function search() { if (!providers.includes(options.provider)) { return; } else { if (options.provider === "custom") { if (targets.includes(options.target)) { window.open(options.customdata.url + query, options.target); } else window.open(options.customdata.url + query, "_self"); } else { if (targets.includes(options.target)) { window.open(`https://www.${options.provider}.com/search?q=` + query, `${options.target}`); } else window.open(`https://www.${options.provider}.com/search?q=` + query, "_self"); } } setQuery(""); } if (!options || (options.provider === "custom" && !options.customdata)) { return <>; } return (
{options.provider == "google" ? ( ) : options.provider == "duckduckgo" ? ( ) : options.provider == "bing" ? ( ) : options.provider == "custom" ? ( options.customdata.abbr.length > 2 ? ( options.customdata.abbr.substring(0, 2) ) : ( options.customdata.abbr ) ) : ( "" )}
1 ? "pl-12" : "pl-10" } w-full text-sm text-gray-900 bg-gray-50 rounded-full border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 h-full`} placeholder="Search..." onChange={(s) => setQuery(s.currentTarget.value)} required />
); }