import { useEffect, useState } from 'react'; import { fetchIconCategories } from '../services/api'; function IconSelector({ onSelect }) { const [categories, setCategories] = useState({}); const [selectedCategory, setSelectedCategory] = useState(''); const [selectedIcon, setSelectedIcon] = useState(''); useEffect(() => { fetchIconCategories().then(setCategories); }, []); const handleCategoryChange = (e) => { const category = e.target.value; setSelectedCategory(category); setSelectedIcon(''); onSelect(''); }; const handleIconClick = (url) => { setSelectedIcon(url); onSelect(url); }; return (
{selectedCategory && (
{categories[selectedCategory].map((url) => ( handleIconClick(url)} style={{ width: 32, height: 32, cursor: 'pointer', border: url === selectedIcon ? '2px solid #1976d2' : '2px solid transparent', borderRadius: 4, backgroundColor: '#fff', }} /> ))}
{selectedIcon && (

Selected: {selectedIcon.split('/').pop()}

)}
)}
); } export default IconSelector;