From db97de67116044b8883df4ad6e48046c47b2ee62 Mon Sep 17 00:00:00 2001 From: ncoronel Date: Mon, 21 Sep 2026 11:19:38 -0300 Subject: [PATCH] feat(event-detail): disable cancel button when no items are selected --- .../pages/event-detail-page/event-detail-page.component.html | 2 +- .../pages/event-detail-page/event-detail-page.component.ts | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/app/features/store/pages/event-detail-page/event-detail-page.component.html b/src/app/features/store/pages/event-detail-page/event-detail-page.component.html index 036b09e..3417bf6 100644 --- a/src/app/features/store/pages/event-detail-page/event-detail-page.component.html +++ b/src/app/features/store/pages/event-detail-page/event-detail-page.component.html @@ -95,7 +95,7 @@
Total{{ formatPrice(total()) }}
- Cancelar + Cancelar {{ submitting() ? 'Procesando…' : 'Comprar' }} diff --git a/src/app/features/store/pages/event-detail-page/event-detail-page.component.ts b/src/app/features/store/pages/event-detail-page/event-detail-page.component.ts index ddaf9ec..125dafd 100644 --- a/src/app/features/store/pages/event-detail-page/event-detail-page.component.ts +++ b/src/app/features/store/pages/event-detail-page/event-detail-page.component.ts @@ -56,6 +56,9 @@ export class EventDetailPageComponent { const choice = this.resolveChoice(product); return sum + (choice ? choice.price * this.quantityFor(product.id) : 0); }, 0)); + protected readonly hasSelectedItems = computed(() => + Object.values(this.quantities()).some((quantity) => quantity > 0), + ); constructor() { this.route.paramMap.pipe( @@ -131,7 +134,7 @@ export class EventDetailPageComponent { } protected cancel(): void { - void this.router.navigate(['/']); + this.quantities.set({}); } protected async buyNow(): Promise {