'use client'; import { useState } from 'react'; import { Button } from '@/components/ui/button'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { AlertTriangle } from 'lucide-react'; import { campaignService } from '@/lib/services'; import { Campaign } from '@/types'; interface DeleteCampaignModalProps { isOpen: boolean; onClose: () => void; onSuccess: () => void; campaign: Campaign | null; } export default function DeleteCampaignModal({ isOpen, onClose, onSuccess, campaign }: DeleteCampaignModalProps) { const [loading, setLoading] = useState(false); const [error, setError] = useState(''); const handleDelete = async () => { if (!campaign) return; setLoading(true); setError(''); try { await campaignService.delete(campaign.id); onSuccess(); } catch (err) { setError('Erreur lors de la suppression de la campagne'); console.error(err); } finally { setLoading(false); } }; if (!campaign) return null; return ( Supprimer la campagne Cette action est irréversible. Toutes les données associées à cette campagne seront définitivement supprimées.
{error && (

{error}

)}

Campagne à supprimer :

Titre : {campaign.title}

Description : {campaign.description}

⚠️ Cette action supprimera également toutes les propositions et participants associés à cette campagne.

); }