11import { MoreHorizontal } from 'lucide-react'
22
3+ import { DropdownMenuItemTooltip } from 'components/ui/DropdownMenuItemTooltip'
34import { OrganizationPaymentMethod } from 'data/organizations/organization-payment-methods-query'
45import { BASE_PATH } from 'lib/constants'
56import {
@@ -62,7 +63,7 @@ const CreditCard = ({
6263 { isExpired && < Badge variant = "destructive" > Expired</ Badge > }
6364 { isActive && < Badge variant = "brand" > Active</ Badge > }
6465
65- { canUpdatePaymentMethods && ! isActive && (
66+ { canUpdatePaymentMethods && (
6667 < DropdownMenu >
6768 < DropdownMenuTrigger asChild >
6869 < Button
@@ -72,8 +73,8 @@ const CreditCard = ({
7273 aria-label = "More options"
7374 />
7475 </ DropdownMenuTrigger >
75- < DropdownMenuContent align = "end" >
76- { paymentMethodType === 'card' && (
76+ < DropdownMenuContent align = "end" className = "w-36" >
77+ { paymentMethodType === 'card' && ! isActive && (
7778 < >
7879 < DropdownMenuItem
7980 key = "make-default"
@@ -84,12 +85,20 @@ const CreditCard = ({
8485 < DropdownMenuSeparator />
8586 </ >
8687 ) }
87- < DropdownMenuItem
88+ < DropdownMenuItemTooltip
8889 key = "delete-method"
90+ disabled = { isActive }
91+ className = "!pointer-events-auto"
8992 onClick = { ( ) => setSelectedMethodToDelete ?.( paymentMethod ) }
93+ tooltip = { {
94+ content : {
95+ side : 'left' ,
96+ text : isActive ? 'Unable to delete a card that is currently active' : undefined ,
97+ } ,
98+ } }
9099 >
91100 < p > Delete card</ p >
92- </ DropdownMenuItem >
101+ </ DropdownMenuItemTooltip >
93102 </ DropdownMenuContent >
94103 </ DropdownMenu >
95104 ) }
0 commit comments