fix: medal upgrade broken in app in some situations (#7147)

This commit is contained in:
Calum H.
2026-08-14 16:45:40 +01:00
committed by GitHub
parent 4dbea80e65
commit f948b5d358
@@ -61,13 +61,17 @@ const customer = ref<any>(null)
const paymentMethods = ref<any[]>([]) const paymentMethods = ref<any[]>([])
const selectedCurrency = ref<string>('USD') const selectedCurrency = ref<string>('USD')
const pyroProducts = (props.products as Labrinth.Billing.Internal.Product[]) const pyroProducts = computed(() =>
.filter((p) => p?.metadata?.type === 'pyro' || p?.metadata?.type === 'medal') (props.products as Labrinth.Billing.Internal.Product[])
.sort((a, b) => { .filter((p) => p?.metadata?.type === 'pyro' || p?.metadata?.type === 'medal')
const aRam = a?.metadata?.type === 'pyro' || a?.metadata?.type === 'medal' ? a.metadata.ram : 0 .sort((a, b) => {
const bRam = b?.metadata?.type === 'pyro' || b?.metadata?.type === 'medal' ? b.metadata.ram : 0 const aRam =
return aRam - bRam a?.metadata?.type === 'pyro' || a?.metadata?.type === 'medal' ? a.metadata.ram : 0
}) const bRam =
b?.metadata?.type === 'pyro' || b?.metadata?.type === 'medal' ? b.metadata.ram : 0
return aRam - bRam
}),
)
function handleError(err: unknown) { function handleError(err: unknown) {
debug('Purchase modal error:', err) debug('Purchase modal error:', err)
@@ -120,7 +124,7 @@ const subscription = ref<Labrinth.Billing.Internal.UserSubscription | null>(null
const pendingDowngradeBody = ref<Labrinth.Billing.Internal.EditSubscriptionRequest | null>(null) const pendingDowngradeBody = ref<Labrinth.Billing.Internal.EditSubscriptionRequest | null>(null)
const currentPlanFromSubscription = computed<Labrinth.Billing.Internal.Product | undefined>(() => { const currentPlanFromSubscription = computed<Labrinth.Billing.Internal.Product | undefined>(() => {
return subscription.value return subscription.value
? (pyroProducts.find((p) => ? (pyroProducts.value.find((p) =>
p.prices.some((price) => price.id === subscription.value?.price_id), p.prices.some((price) => price.id === subscription.value?.price_id),
) ?? undefined) ) ?? undefined)
: undefined : undefined