feat(calendar): full i18n coverage across 17 files — DE/EN/ES/FR/IT

Calendar already had a `calendar` namespace, but ~70 strings were
hardcoded across EventForm, EventDetailModal, CustomRecurrenceBuilder,
CalendarHeader (15 block-type filter chips), QuickEventPopover, AgendaView,
EventCard, SlotSuggestions, MiniCalendar, DateStrip, ListView,
SharedEventView, the inline DetailView, and 3 routes.

- Extended namespace with `event_form.*`, `event_card.*`, `event_modal.*`,
  `agenda.*`, `recurrence.*` (custom builder + preview format),
  `weekday_short.*` / `weekday_long.*`, `header.*` (15 block-type labels +
  4 ARIA), `date_strip.*`, `mini_cal.*`, `slots.*`, `quick_event.*`,
  `list_view.*`, `detail_route.*`, `detail_view.*`, `calendars_route.*`,
  `shared_view.*` — ~172 new keys × 5 locales = ~860 translations.
- Recurrence preview formatters in EventForm + EventDetailModal +
  CustomRecurrenceBuilder all rebuilt around `recurrence.every_n_unit` /
  `weekly_with_days` / weekday-short maps.
- Locale-aware Intl.DateTimeFormat in SharedEventView (was hardcoded
  'de-DE').
- Baseline ratchet: 1753 → 1687 (66 calendar strings cleared, 16 files
  fully clean).

- validate:i18n-parity: 40 namespaces × 5 locales — 3768 keys aligned
- svelte-check: 0 new errors from i18n changes (pre-existing drift
  in unrelated modules unchanged)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-04-26 22:17:34 +02:00
parent 723a64808c
commit 4e31c8d736
22 changed files with 1429 additions and 277 deletions

View file

@ -74,19 +74,6 @@
"apps/mana/apps/web/src/lib/modules/broadcast/views/DetailView.svelte": 9,
"apps/mana/apps/web/src/lib/modules/broadcast/widgets/BroadcastsWidget.svelte": 3,
"apps/mana/apps/web/src/lib/modules/calc/ListView.svelte": 1,
"apps/mana/apps/web/src/lib/modules/calendar/components/AgendaView.svelte": 4,
"apps/mana/apps/web/src/lib/modules/calendar/components/CalendarHeader.svelte": 2,
"apps/mana/apps/web/src/lib/modules/calendar/components/CustomRecurrenceBuilder.svelte": 8,
"apps/mana/apps/web/src/lib/modules/calendar/components/DateStrip.svelte": 1,
"apps/mana/apps/web/src/lib/modules/calendar/components/EventCard.svelte": 5,
"apps/mana/apps/web/src/lib/modules/calendar/components/EventDetailModal.svelte": 4,
"apps/mana/apps/web/src/lib/modules/calendar/components/EventForm.svelte": 10,
"apps/mana/apps/web/src/lib/modules/calendar/components/MiniCalendar.svelte": 2,
"apps/mana/apps/web/src/lib/modules/calendar/components/QuickEventPopover.svelte": 6,
"apps/mana/apps/web/src/lib/modules/calendar/components/SlotSuggestions.svelte": 3,
"apps/mana/apps/web/src/lib/modules/calendar/ListView.svelte": 1,
"apps/mana/apps/web/src/lib/modules/calendar/SharedEventView.svelte": 2,
"apps/mana/apps/web/src/lib/modules/calendar/views/DetailView.svelte": 5,
"apps/mana/apps/web/src/lib/modules/cards/components/CreateDeckModal.svelte": 3,
"apps/mana/apps/web/src/lib/modules/cards/views/DetailView.svelte": 6,
"apps/mana/apps/web/src/lib/modules/chat/ListView.svelte": 1,
@ -295,9 +282,6 @@
"apps/mana/apps/web/src/routes/(app)/broadcasts/new/+page.svelte": 1,
"apps/mana/apps/web/src/routes/(app)/calc/+page.svelte": 1,
"apps/mana/apps/web/src/routes/(app)/calc/standard/+page.svelte": 2,
"apps/mana/apps/web/src/routes/(app)/calendar/+page.svelte": 1,
"apps/mana/apps/web/src/routes/(app)/calendar/calendars/+page.svelte": 6,
"apps/mana/apps/web/src/routes/(app)/calendar/event/[id]/+page.svelte": 6,
"apps/mana/apps/web/src/routes/(app)/cards/+page.svelte": 2,
"apps/mana/apps/web/src/routes/(app)/cards/decks/[id]/+page.svelte": 6,
"apps/mana/apps/web/src/routes/(app)/cards/decks/+page.svelte": 3,