diff --git a/src/app/(main)/MobileNav.tsx b/src/app/(main)/MobileNav.tsx
index a1944960..934c43fa 100644
--- a/src/app/(main)/MobileNav.tsx
+++ b/src/app/(main)/MobileNav.tsx
@@ -8,6 +8,7 @@ import { Grid, IconLabel, NavMenu, NavMenuItem, Row, Text } from '@umami/react-z
import Link from 'next/link';
import { AdminNav } from './admin/AdminNav';
import { SettingsNav } from './settings/SettingsNav';
+import { MobileLanguageButton } from '@/components/input/MobileLanguageButton';
export function MobileNav() {
const { formatMessage, labels } = useMessages();
@@ -54,6 +55,7 @@ export function MobileNav() {
);
})}
+
{websiteId && }
{isAdmin && }
{isSettings && }
diff --git a/src/components/input/MobileLanguageButton.tsx b/src/components/input/MobileLanguageButton.tsx
new file mode 100644
index 00000000..e53be70e
--- /dev/null
+++ b/src/components/input/MobileLanguageButton.tsx
@@ -0,0 +1,74 @@
+import { Icon, Button, MenuTrigger, Popover, Grid, Text, Dialog, Row } from '@umami/react-zen';
+import { languages } from '@/lib/lang';
+import { useLocale } from '@/components/hooks';
+import { Globe } from 'lucide-react';
+import { ThemeButton } from '@umami/react-zen';
+
+export function MobileLanguageButton() {
+ const { locale, saveLocale } = useLocale();
+ const items = Object.keys(languages).map(key => ({ ...languages[key], value: key }));
+
+ function handleSelect(value: string) {
+ saveLocale(value);
+ }
+
+ return (
+
+
+
+
+
+
+
+
+
+ );
+}