aboutsummaryrefslogtreecommitdiff
path: root/src/routes/events
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-05-24 13:22:34 +0000
committerFuwn <[email protected]>2026-05-24 13:22:34 +0000
commit56a7a7851b09cb30a5cd543c8cb4f926109b4290 (patch)
treea620f908405fa48fd601580c5a48432831ec5c33 /src/routes/events
parentfix(layout): preserve list panel when clicking action buttons in summary (diff)
downloaddue.moe-56a7a7851b09cb30a5cd543c8cb4f926109b4290.tar.xz
due.moe-56a7a7851b09cb30a5cd543c8cb4f926109b4290.zip
refactor(locale): move hardcoded UI strings into english locale
Adds optional namespaces (common, errors, commandPalette, headTitle, notifications, schedule, events, home, reader, routes, badgePreview, badgeWall) and extends existing ones (settings.*, lists.*, tools.*, user.*, hololive.*) on the Locale interface. New fields are optional so japanese.ts can omit them; svelte-i18n's fallbackLocale handles the runtime miss. HeadTitle gains an optional routeKey prop for type-safe lookup. defaultActions becomes a factory so the command palette re-reads locale on language toggle. The existing JP feedback translation in routes/settings is preserved via japanese.ts. Out of scope (kept hardcoded): service-worker.ts, app.html, Landing*.svelte, tools.ts registry, Easter Event 2025 pages.
Diffstat (limited to 'src/routes/events')
-rw-r--r--src/routes/events/+page.svelte7
-rw-r--r--src/routes/events/group/[group]/+page.svelte23
-rw-r--r--src/routes/events/groups/+page.svelte11
3 files changed, 22 insertions, 19 deletions
diff --git a/src/routes/events/+page.svelte b/src/routes/events/+page.svelte
index 88a3da9e..0474852b 100644
--- a/src/routes/events/+page.svelte
+++ b/src/routes/events/+page.svelte
@@ -4,13 +4,14 @@ import Event from "$lib/Events/Event.svelte";
import Message from "$lib/Loading/Message.svelte";
import root from "$lib/Utility/root";
+import locale from "$stores/locale";
</script>
{#await fetch(root(`/api/events`))}
- <Message message="Loading events ..." />
+ <Message message={$locale().events?.loadingEvents} />
{:then eventsResponse}
{#await eventsResponse.json()}
- <Message message="Parsing events ..." />
+ <Message message={$locale().events?.parsingEvents} />
{:then events}
{#if events}
{#each events as rawEvent, i}
@@ -22,6 +23,6 @@ import root from "$lib/Utility/root";
{/each}
{/if}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error parsing events.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorParsingEvents}</Message>
{/await}
{/await}
diff --git a/src/routes/events/group/[group]/+page.svelte b/src/routes/events/group/[group]/+page.svelte
index c02c1b51..34db0fae 100644
--- a/src/routes/events/group/[group]/+page.svelte
+++ b/src/routes/events/group/[group]/+page.svelte
@@ -7,6 +7,7 @@ import root from "$lib/Utility/root";
import { onMount } from "svelte";
import Group from "$lib/Events/Group.svelte";
import Event from "$lib/Events/Event.svelte";
+import locale from "$stores/locale";
import type { PageData } from "./$types";
export let data: PageData;
@@ -23,16 +24,16 @@ const asEvent = (event: unknown) => event as EventType;
</script>
{#await groupsResponse}
- <Message message="Loading group ..." />
+ <Message message={$locale().events?.loadingGroup} />
{:then group}
{#if group}
{#await group.json()}
- <Message message="Parsing group ..." />
+ <Message message={$locale().events?.parsingGroup} />
{:then json}
{#if json === null}
<Message message="" loader="ripple" slot>
- This group may not exist. Please
- <a href={'#'} onclick={() => location.reload()}>try again</a> later.
+ {$locale().events?.groupNotExistPrefix}
+ <a href={'#'} onclick={() => location.reload()}>{$locale().common?.tryAgain}</a>{$locale().events?.groupNotExistSuffix}
</Message>
{:else}
{@const group = asGroup(json)}
@@ -42,13 +43,13 @@ const asEvent = (event: unknown) => event as EventType;
<Spacer />
<details open>
- <summary>Events</summary>
+ <summary>{$locale().events?.summary}</summary>
{#await fetch(root(`/api/events?group=${data.group}`))}
- <Message message="Loading events ..." />
+ <Message message={$locale().events?.loadingEvents} />
{:then eventsResponse}
{#await eventsResponse.json()}
- <Message message="Parsing events ..." />
+ <Message message={$locale().events?.parsingEvents} />
{:then events}
{#if events}
{#each events as rawEvent, i}
@@ -60,17 +61,17 @@ const asEvent = (event: unknown) => event as EventType;
{/each}
{/if}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error parsing events.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorParsingEvents}</Message>
{/await}
{/await}
</details>
{/if}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error parsing group.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorParsingGroup}</Message>
{/await}
{:else}
- <Message message="Parsing groups ..." />
+ <Message message={$locale().events?.parsingGroups} />
{/if}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error loading group.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorLoadingGroup}</Message>
{/await}
diff --git a/src/routes/events/groups/+page.svelte b/src/routes/events/groups/+page.svelte
index b6181ad8..198c637b 100644
--- a/src/routes/events/groups/+page.svelte
+++ b/src/routes/events/groups/+page.svelte
@@ -5,6 +5,7 @@ import Message from "$lib/Loading/Message.svelte";
import root from "$lib/Utility/root";
import { onMount } from "svelte";
import Group from "$lib/Events/Group.svelte";
+import locale from "$stores/locale";
let groupsResponse: Promise<Response>;
@@ -16,11 +17,11 @@ const asGroup = (group: unknown) => group as GroupType;
</script>
{#await groupsResponse}
- <Message message="Loading groups ..." />
+ <Message message={$locale().events?.loadingGroups} />
{:then groups}
{#if groups}
{#await groups.json()}
- <Message message="Parsing groups ..." />
+ <Message message={$locale().events?.parsingGroups} />
{:then json}
{#each json as rawGroup, i}
{@const group = asGroup(rawGroup)}
@@ -34,11 +35,11 @@ const asGroup = (group: unknown) => group as GroupType;
{/if}
{/each}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error parsing groups.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorParsingGroups}</Message>
{/await}
{:else}
- <Message message="Parsing groups ..." />
+ <Message message={$locale().events?.parsingGroups} />
{/if}
{:catch}
- <Message message="" loader="ripple" slot withReload>Error loading groups.</Message>
+ <Message message="" loader="ripple" slot withReload>{$locale().events?.errorLoadingGroups}</Message>
{/await}