import { useState } from 'react'; import { FiSearch } from 'react-icons/fi'; import ProjectSingle from './ProjectSingle'; import ProjectsFilter from './ProjectsFilter'; function ProjectsGrid({ projects = [] }) { const [searchProject, setSearchProject] = useState(''); const [selectProject, setSelectProject] = useState(''); const categories = [...new Set(projects.map((p) => p.category))].sort(); const normalizedSearch = searchProject.trim().toLowerCase(); const filteredProjects = projects.filter((project) => { const matchesCategory = !selectProject || project.category === selectProject; const matchesSearch = !normalizedSearch || project.title.toLowerCase().includes(normalizedSearch); return matchesCategory && matchesSearch; }); return (

Projects portfolio

프로젝트를 검색하거나 카테고리로 필터링하세요

{ setSearchProject(e.target.value); }} className=" font-general-medium pl-3 pr-1 sm:px-4 py-2 border border-gray-200 dark:border-secondary-dark rounded-lg text-sm sm:text-md bg-secondary-light dark:bg-ternary-dark text-primary-dark dark:text-ternary-light " id="name" name="name" type="search" placeholder="프로젝트 검색" aria-label="프로젝트 검색" />
{filteredProjects.map((project) => ( ))}
); } export default ProjectsGrid;