import {Breadcrumb} from '../../ui/breadcrumbs/breadcrumb'; import {BreadcrumbItem} from '../../ui/breadcrumbs/breadcrumb-item'; import {Trans} from '../../i18n/trans'; import {useNavigate} from '../../utils/hooks/use-navigate'; import {BillingPlanPanel} from './billing-plan-panel'; import {Fragment} from 'react'; import {useProducts} from '../pricing-table/use-products'; import {Link} from 'react-router-dom'; import {Button} from '../../ui/buttons/button'; import {FormattedPrice} from '../../i18n/formatted-price'; import {invalidateBillingUserQuery, useBillingUser} from './use-billing-user'; import {FormattedDate} from '../../i18n/formatted-date'; import {useResumeSubscription} from './requests/use-resume-subscription'; const previousUrl = '/billing'; export function ConfirmPlanRenewalPage() { const navigate = useNavigate(); const query = useProducts(); const {subscription} = useBillingUser(); const resumeSubscription = useResumeSubscription(); const product = subscription?.product; const price = subscription?.price; if (!query.data) { return null; } if (!subscription || !product || !price) { navigate(previousUrl); return null; } const endDate = ( ; ); const handleResumeSubscription = () => { resumeSubscription.mutate( { subscriptionId: subscription.id, }, { onSuccess: () => { invalidateBillingUserQuery(); navigate('/billing'); }, }, ); }; return ( navigate(previousUrl)}>

}>
{product.name}
); }