Feat/status page i18n (#1966) master
* feat(status-page): install next-intl 4.5+ and create i18n config Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): add next-intl plugin to next.config.ts Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): add [locale] route segment and move routes Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): use useExtracted for status component strings Replace hardcoded strings in status-banner, status-monitor, status-events, and status-feed with useExtracted() i18n calls. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * feat(status-page): use useExtracted for navigation strings Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): use useExtracted for events, report, maintenance, and monitor pages Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): use useExtracted for auth, forms, and updates strings Replace hardcoded English strings with useExtracted() calls in login sections, form components, and status updates popover. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * feat(status-page): delete old messages.ts, add language switcher Remove the old messages.ts file (replaced by useExtracted), update status-tracker.tsx to use useExtracted, and add a globe-icon language switcher dropdown in the footer. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(status-page): make pathname prefix locale-aware Update usePathnamePrefix hook to include locale segment in prefix for non-default locales, ensuring internal links work correctly across all languages. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(status-page): switch message catalogs from .po to .json format Turbopack doesn't support .po imports natively. Switch to .json which next-intl handles out of the box. Create empty JSON catalogs for all supported locales as placeholders for future translations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Format fix Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * WIP Status Page static and domain specific Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * Update the extracted config and proxy fix Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * ci: apply automated fixes Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * Removed unncessary static component with ui package Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * Updated status-events with blocks component Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> * wip: i18n * fix: date-fns locale * fix: locale navigation * chore: locale switcher * chore: format theme switcher * fix: missing translations * fix: review * chore: hide locale switcher --------- Signed-off-by: Moulik Aggarwal <qwertymoulik@gmail.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: Maximilian Kaske <maximilian@kaske.org>