fixes
This commit is contained in:
@@ -133,7 +133,7 @@
|
|||||||
});
|
});
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
toast.success('Card removed');
|
toast.success('Card removed');
|
||||||
savedCardsStore = savedCardsStore.filter((c) => c.id !== card.id);
|
await savedCardsStore.invalidate();
|
||||||
} else {
|
} else {
|
||||||
toast.error('Failed to remove card');
|
toast.error('Failed to remove card');
|
||||||
}
|
}
|
||||||
@@ -169,6 +169,14 @@
|
|||||||
let buyingGiftCard = $state(false);
|
let buyingGiftCard = $state(false);
|
||||||
let purchaseResultCode = $state<string | null>(null);
|
let purchaseResultCode = $state<string | null>(null);
|
||||||
|
|
||||||
|
$effect(() => {
|
||||||
|
if (savedCardsStore.cards.length > 0 && !buySelectedCard) {
|
||||||
|
const defaultCard =
|
||||||
|
savedCardsStore.cards.find((c) => c.is_default) || savedCardsStore.cards[0];
|
||||||
|
buySelectedCard = defaultCard.id;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
function parseExpiryParts(value: string): { month: number; year: number } | null {
|
function parseExpiryParts(value: string): { month: number; year: number } | null {
|
||||||
if (!/^\d{2}\/\d{2}$/.test(value)) return null;
|
if (!/^\d{2}\/\d{2}$/.test(value)) return null;
|
||||||
const [monthStr, yearStr] = value.split('/');
|
const [monthStr, yearStr] = value.split('/');
|
||||||
@@ -414,7 +422,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
$effect(() => {
|
$effect(() => {
|
||||||
if (savedCardsStore.length === 0 && buySelectedCard !== '') {
|
if (savedCardsStore.cards.length === 0 && buySelectedCard !== '') {
|
||||||
buySelectedCard = '';
|
buySelectedCard = '';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1804,14 +1812,14 @@
|
|||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{:else if savedCardsStore.length === 0}
|
{:else if savedCardsStore.cards.length === 0}
|
||||||
<div class="py-8 text-center">
|
<div class="py-8 text-center">
|
||||||
<p class="text-gray-500">No saved cards yet</p>
|
<p class="text-gray-500">No saved cards yet</p>
|
||||||
<Button class="mt-4" onclick={() => (showAddCard = true)}>Add a Card</Button>
|
<Button class="mt-4" onclick={() => (showAddCard = true)}>Add a Card</Button>
|
||||||
</div>
|
</div>
|
||||||
{:else}
|
{:else}
|
||||||
<div class="space-y-3">
|
<div class="space-y-3">
|
||||||
{#each savedCardsStore as card (card.id)}
|
{#each savedCardsStore.cards as card (card.id)}
|
||||||
<div class="flex items-center justify-between rounded-lg border p-4">
|
<div class="flex items-center justify-between rounded-lg border p-4">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<div
|
<div
|
||||||
@@ -2045,9 +2053,9 @@
|
|||||||
<span class="block text-xs font-semibold tracking-wider text-gray-500 uppercase"
|
<span class="block text-xs font-semibold tracking-wider text-gray-500 uppercase"
|
||||||
>Payment Method</span
|
>Payment Method</span
|
||||||
>
|
>
|
||||||
{#if savedCardsStore.length > 0}
|
{#if savedCardsStore.cards.length > 0}
|
||||||
<div class="space-y-2">
|
<div class="space-y-2">
|
||||||
{#each savedCardsStore as card (card.id)}
|
{#each savedCardsStore.cards as card (card.id)}
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
class="flex w-full items-center justify-between rounded-lg border p-3 text-left {buySelectedCard ===
|
class="flex w-full items-center justify-between rounded-lg border p-3 text-left {buySelectedCard ===
|
||||||
|
|||||||
Reference in New Issue
Block a user