Skip to content

Commit f21250e

Browse files
Fix: Conditionally render payment method selector
1 parent 15a5b3a commit f21250e

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

src/components/PaymentMethodSelector.tsx

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
import { useState } from 'react';
2+
import { useState, useEffect } from 'react';
33
import { Dialog, DialogContent, DialogHeader, DialogTitle } from '@/components/ui/dialog';
44
import { Button } from '@/components/ui/button';
55
import { Card, CardContent } from '@/components/ui/card';
@@ -26,6 +26,19 @@ export const PaymentMethodSelector = ({
2626
}: PaymentMethodSelectorProps) => {
2727
const [selectedCardId, setSelectedCardId] = useState<string | null>(null);
2828

29+
// Si aucune carte n'est disponible et le dialog s'ouvre, rediriger vers l'ajout d'une nouvelle carte
30+
useEffect(() => {
31+
if (open && paymentMethods.length === 0 && !loading) {
32+
onOpenChange(false); // Fermer le dialog
33+
onAddNewCard(); // Rediriger vers l'ajout d'une nouvelle carte
34+
}
35+
}, [open, paymentMethods.length, loading, onOpenChange, onAddNewCard]);
36+
37+
// Ne pas afficher le dialog s'il n'y a pas de cartes
38+
if (paymentMethods.length === 0) {
39+
return null;
40+
}
41+
2942
const handleSelectCard = (cardId: string) => {
3043
setSelectedCardId(cardId);
3144
};

0 commit comments

Comments
 (0)