diff --git a/src/routes/[orgSlug]/events/+page.svelte b/src/routes/[orgSlug]/events/+page.svelte index da0ff0a..e1d0e80 100644 --- a/src/routes/[orgSlug]/events/+page.svelte +++ b/src/routes/[orgSlug]/events/+page.svelte @@ -339,6 +339,7 @@ {#if showCreateModal} +
e.key === "Escape" && (showCreateModal = false)} @@ -356,6 +357,7 @@ type="button" class="text-light/40 hover:text-white transition-colors" onclick={() => (showCreateModal = false)} + aria-label="Close" >
+ @@ -466,6 +469,7 @@ : 'border-transparent hover:border-light/30'}" style="background-color: {color}" onclick={() => (newEventColor = color)} + aria-label="Select color {color}" > {/each}
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/+layout.svelte b/src/routes/[orgSlug]/events/[eventSlug]/+layout.svelte index b7fdfda..006bbde 100644 --- a/src/routes/[orgSlug]/events/[eventSlug]/+layout.svelte +++ b/src/routes/[orgSlug]/events/[eventSlug]/+layout.svelte @@ -195,6 +195,8 @@
- {@render children()} + {#if children} + {@render children()} + {/if}
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/+page.svelte index 0e3aff2..619c30a 100644 --- a/src/routes/[orgSlug]/events/[eventSlug]/+page.svelte +++ b/src/routes/[orgSlug]/events/[eventSlug]/+page.svelte @@ -33,15 +33,28 @@ // Edit mode let editing = $state(false); - let editName = $state(data.event.name); - let editDescription = $state(data.event.description ?? ""); - let editStatus = $state(data.event.status); - let editStartDate = $state(data.event.start_date ?? ""); - let editEndDate = $state(data.event.end_date ?? ""); - let editVenueName = $state(data.event.venue_name ?? ""); - let editVenueAddress = $state(data.event.venue_address ?? ""); + let editName = $state(""); + let editDescription = $state(""); + let editStatus = $state("planning"); + let editStartDate = $state(""); + let editEndDate = $state(""); + let editVenueName = $state(""); + let editVenueAddress = $state(""); let saving = $state(false); + // Sync edit fields when data changes or edit mode opens + $effect(() => { + if (editing) { + editName = data.event.name; + editDescription = data.event.description ?? ""; + editStatus = data.event.status; + editStartDate = data.event.start_date ?? ""; + editEndDate = data.event.end_date ?? ""; + editVenueName = data.event.venue_name ?? ""; + editVenueAddress = data.event.venue_address ?? ""; + } + }); + // Delete confirmation let showDeleteConfirm = $state(false); let deleting = $state(false); @@ -522,6 +535,7 @@ {#if showDeleteConfirm} +
e.key === "Escape" && (showDeleteConfirm = false)}