mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-18 17:41:23 +02:00
feat(i18n): add language picker and 5-language support to all auth screens
- Add svelte-i18n and @manacore/shared-i18n to Chat, Presi, Zitare - Create LanguageSelector component for each app - Add locale files for DE, EN, IT, FR, ES in all apps - Update auth pages (login, register, forgot-password) to use shared translations - Add headerControls snippet to RegisterPage and ForgotPasswordPage - Export ZitareLogo and NutriPhiLogo from shared-branding 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
e85ef8babe
commit
eab69c512c
41 changed files with 626 additions and 142 deletions
|
|
@ -56,6 +56,8 @@
|
|||
darkBackground?: string;
|
||||
/** App slider snippet */
|
||||
appSlider?: Snippet;
|
||||
/** Header controls snippet (e.g., language selector) */
|
||||
headerControls?: Snippet;
|
||||
/** Translations for i18n support */
|
||||
translations?: Partial<ForgotPasswordTranslations>;
|
||||
}
|
||||
|
|
@ -70,6 +72,7 @@
|
|||
lightBackground = '#f5f5f5',
|
||||
darkBackground = '#121212',
|
||||
appSlider,
|
||||
headerControls,
|
||||
translations = {},
|
||||
}: Props = $props();
|
||||
|
||||
|
|
@ -138,6 +141,12 @@
|
|||
class="flex min-h-screen flex-col justify-between"
|
||||
style="background-color: {getPageBackground()}; max-width: 100vw; overflow-x: hidden;"
|
||||
>
|
||||
{#if headerControls}
|
||||
<div style="position: absolute; top: 1rem; right: 1rem; z-index: 50; opacity: 0.6; display: flex; gap: 0.75rem;">
|
||||
{@render headerControls()}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
<!-- Top Section - Logo -->
|
||||
<div class="flex flex-col items-center justify-center pt-16 pb-8">
|
||||
<div
|
||||
|
|
|
|||
|
|
@ -74,6 +74,8 @@
|
|||
darkBackground?: string;
|
||||
/** App slider snippet */
|
||||
appSlider?: Snippet;
|
||||
/** Header controls snippet (e.g., language selector) */
|
||||
headerControls?: Snippet;
|
||||
/** Translations for i18n support */
|
||||
translations?: Partial<RegisterTranslations>;
|
||||
}
|
||||
|
|
@ -89,6 +91,7 @@
|
|||
lightBackground = '#f5f5f5',
|
||||
darkBackground = '#121212',
|
||||
appSlider,
|
||||
headerControls,
|
||||
translations = {},
|
||||
}: Props = $props();
|
||||
|
||||
|
|
@ -220,6 +223,12 @@
|
|||
class="flex min-h-screen flex-col justify-between"
|
||||
style="background-color: {getPageBackground()}; max-width: 100vw; overflow-x: hidden;"
|
||||
>
|
||||
{#if headerControls}
|
||||
<div style="position: absolute; top: 1rem; right: 1rem; z-index: 50; opacity: 0.6; display: flex; gap: 0.75rem;">
|
||||
{@render headerControls()}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
<!-- Top Section - Logo -->
|
||||
<div class="flex flex-col items-center justify-center pt-16 pb-8">
|
||||
<div
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue