import { useState, useEffect, useCallback } from 'react'; import { pb } from '@/services/pocketbase'; import type { Ticket } from '@/types/Ticket'; export const useTickets = () => { const [tickets, setTickets] = useState([]); const [isLoading, setIsLoading] = useState(true); const [error, setError] = useState(null); const fetchTickets = useCallback(async () => { setIsLoading(true); setError(null); try { const records = await pb.collection('aegis_tickets').getFullList({ sort: '-created', // Du plus récent au plus ancien }); setTickets(records); } catch (err) { console.error("Erreur lors de la récupération des tickets :", err); setError("Impossible de charger l'historique de vos requêtes."); } finally { setIsLoading(false); } }, []); useEffect(() => { fetchTickets(); }, [fetchTickets]); return { tickets, isLoading, error, refetch: fetchTickets }; };