import { useState } from 'react'; import { useQuery } from '@tanstack/react-query'; import { FileText, Search, Loader2, AlertCircle, BookOpen } from 'lucide-react'; import { MarkdownViewer } from '@/components/docs/MarkdownViewer'; import { getDocsList, getDocContent } from '@/api/docs'; import { clsx } from 'clsx'; export default function DocsPage() { const [selectedDoc, setSelectedDoc] = useState('README.md'); const [searchTerm, setSearchTerm] = useState(''); const { data: docsList, isLoading: docsListLoading, error: docsListError } = useQuery({ queryKey: ['docsList'], queryFn: getDocsList, }); const { data: docContent, isLoading: docContentLoading, error: docContentError } = useQuery({ queryKey: ['docContent', selectedDoc], queryFn: () => getDocContent(selectedDoc), enabled: !!selectedDoc, }); return (

Aides & Documentation

Consultez la documentation technique et les guides du projet Imago.

{/* Sidebar with document list */}

Sommaire

{docsListLoading && (
)} {docsListError && (
Erreur lors du chargement de la liste.
)} {docsList?.map((doc) => ( ))}
{/* Main Content Area */}
{/* Toolbar with Search */}
{docsList?.find(d => d.name === selectedDoc)?.title || selectedDoc}
setSearchTerm(e.target.value)} className="pl-9 pr-4 py-1.5 bg-surface border border-border rounded-lg text-sm text-content-primary placeholder-content-muted focus:outline-none focus:border-brand-500 focus:ring-1 focus:ring-brand-500 w-64 transition-all" />
{/* Document Viewer */}
{docContentLoading && (
)} {docContentError && (

Impossible de charger le document. Le fichier est peut-ĂȘtre manquant.

)} {!docContentError && docContent && (
)}
); }