{t('upgrade.billing.error')}
+ ++ {billing.cancelAtPeriodEnd + ? t('upgrade.billing.plan.canceledHint', { date: formatBillingDate(billing.currentPeriodEnd, locale, dateFnsLocale) }) + : t('upgrade.billing.plan.renewsOn', { date: formatBillingDate(billing.currentPeriodEnd, locale, dateFnsLocale) })} + {billing.amountPerPeriod > 0 && ( + + {' '}·{' '}{formatPrice(billing.amountPerPeriod, billing.currency)} + {billing.interval === 'yearly' ? t('upgrade.plans.yearly.period') : t('upgrade.plans.monthly.period')} + + )} +
++ {t('upgrade.billing.payment.card', { + brand: formatCardBrand(billing.paymentMethod.brand), + last4: billing.paymentMethod.last4, + })} +
++ {t('upgrade.billing.payment.expires', { + month: String(billing.paymentMethod.expMonth).padStart(2, '0'), + year: billing.paymentMethod.expYear, + })} +
+{t('upgrade.billing.actions.manageHint')}
+ {portalError &&{portalError}
} ++ {profile?.isLifetimePro ? t('upgrade.billing.plan.lifetimeHint') : t('upgrade.manageHint')} +
++ {trialDaysLeft === 0 + ? t('trial.banner.lastDay') + : plural(t('trial.banner.daysLeft', { days: trialDaysLeft ?? 0 }), trialDaysLeft ?? 0)} +
++ {t('trial.expired.dontLose')} +
+{t('upgrade.plans.error')}
+ +{checkoutError}
+ )} + + {/* Feature comparison */} +{t('upgrade.billing.error')}
- -- {billing.cancelAtPeriodEnd - ? t('upgrade.billing.plan.canceledHint', { date: formatBillingDate(billing.currentPeriodEnd, locale, dateFnsLocale) }) - : t('upgrade.billing.plan.renewsOn', { date: formatBillingDate(billing.currentPeriodEnd, locale, dateFnsLocale) })} - {billing.amountPerPeriod > 0 && ( - - {' '}·{' '}{formatPrice(billing.amountPerPeriod, billing.currency)} - {billing.interval === 'yearly' ? t('upgrade.plans.yearly.period') : t('upgrade.plans.monthly.period')} - - )} -
-- {t('upgrade.billing.payment.card', { - brand: formatCardBrand(billing.paymentMethod.brand), - last4: billing.paymentMethod.last4, - })} -
-- {t('upgrade.billing.payment.expires', { - month: String(billing.paymentMethod.expMonth).padStart(2, '0'), - year: billing.paymentMethod.expYear, - })} -
-{t('upgrade.billing.actions.manageHint')}
- {portalError &&{portalError}
} -- {profile?.isLifetimePro ? t('upgrade.billing.plan.lifetimeHint') : t('upgrade.manageHint')} -
-- {trialDaysLeft === 0 - ? t('trial.banner.lastDay') - : plural(t('trial.banner.daysLeft', { days: trialDaysLeft ?? 0 }), trialDaysLeft ?? 0)} -
-- {t('trial.expired.dontLose')} -
-{t('upgrade.plans.error')}
- -{checkoutError}
- )} - - {/* Feature comparison */} -