import { getAllNotes } from '@/app/actions/notes'
import { getAISettings } from '@/app/actions/ai-settings'
import { HomeClient } from '@/components/home-client'

/**
 * Page principale — Server Component.
 * Les notes et settings sont chargés côté serveur en parallèle,
 * éliminant le spinner de chargement initial et améliorant le TTI.
 */
export default async function HomePage() {
  // Charge notes + settings en parallèle côté serveur
  const [allNotes, settings] = await Promise.all([
    getAllNotes(),
    getAISettings(),
  ])

  const notesViewMode =
    settings?.notesViewMode === 'masonry'
      ? 'masonry' as const
      : settings?.notesViewMode === 'tabs' || settings?.notesViewMode === 'list'
        ? 'tabs' as const
        : 'masonry' as const

  return (
    <HomeClient
      initialNotes={allNotes}
      initialSettings={{
        showRecentNotes: settings?.showRecentNotes !== false,
        notesViewMode,
      }}
    />
  )
}
