'use client' import { useState } from 'react' import { Note } from '@/lib/types' import { NoteCard } from './note-card' import { ChevronDown, ChevronUp, Pin } from 'lucide-react' import { useLanguage } from '@/lib/i18n' interface FavoritesSectionProps { pinnedNotes: Note[] onEdit?: (note: Note, readOnly?: boolean) => void isLoading?: boolean } export function FavoritesSection({ pinnedNotes, onEdit, isLoading }: FavoritesSectionProps) { const [isCollapsed, setIsCollapsed] = useState(false) const { t } = useLanguage() if (isLoading) { return ( {[1, 2, 3].map((i) => ( ))} ) } if (pinnedNotes.length === 0) { return null } return ( setIsCollapsed(!isCollapsed)} onKeyDown={(e) => { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault() setIsCollapsed(!isCollapsed) } }} className="w-full flex items-center justify-between gap-2 mb-4 px-2 py-2 hover:bg-accent rounded-lg transition-colors min-h-[44px]" aria-expanded={!isCollapsed} aria-label={t('favorites.toggleSection') || 'Toggle pinned notes section'} > 📌 {t('notes.pinnedNotes')} ({pinnedNotes.length}) {isCollapsed ? ( ) : ( )} {/* Collapsible Content */} {!isCollapsed && ( {pinnedNotes.map((note) => ( ))} )} ) }