diff --git a/src/features/profile/ui/Profile.tsx b/src/features/profile/ui/Profile.tsx
index 78a1138..1c8bb53 100644
--- a/src/features/profile/ui/Profile.tsx
+++ b/src/features/profile/ui/Profile.tsx
@@ -5,8 +5,8 @@ import { useCartId } from '@/shared/hooks/cartId';
import { removeToken } from '@/shared/lib/token';
import { Avatar, AvatarFallback, AvatarImage } from '@/shared/ui/avatar';
import { Button } from '@/shared/ui/button';
-import { userStore } from '@/widgets/welcome/lib/hook';
-import { useQueryClient } from '@tanstack/react-query';
+import { banner_api } from '@/widgets/welcome/lib/api';
+import { useQuery, useQueryClient } from '@tanstack/react-query';
import { Headset, Home, LogOut } from 'lucide-react';
import { useTranslations } from 'next-intl';
import { useEffect, useState } from 'react';
@@ -17,14 +17,22 @@ const Profile = () => {
const router = useRouter();
const t = useTranslations();
const queryClient = useQueryClient();
- const { user } = userStore();
- const { setCartId } = useCartId();
+
+ const { data: me, isError } = useQuery({
+ queryKey: ['get_me'],
+ queryFn: () => banner_api.getMe(),
+ select(data) {
+ return data.data;
+ },
+ });
useEffect(() => {
- if (user === null) {
- router.replace('/auth');
+ if (isError) {
+ router.replace('/');
}
- }, [user]);
+ }, [isError]);
+
+ const { setCartId } = useCartId();
const menuItems = [
{ id: 'overview', label: 'Umumiy', icon: Home },
@@ -73,14 +81,14 @@ const Profile = () => {
- {user?.first_name.slice(0, 1).toUpperCase()}
+ {me?.first_name.slice(0, 1).toUpperCase()}
- {user &&
- user.first_name.charAt(0).toUpperCase() +
- user.first_name.slice(1)}
+ {me &&
+ me.first_name.charAt(0).toUpperCase() +
+ me.first_name.slice(1)}
@@ -129,14 +137,14 @@ const Profile = () => {
- {user?.first_name?.slice(0, 1).toUpperCase()}
+ {me?.first_name?.slice(0, 1).toUpperCase()}
- {user &&
- user.first_name.charAt(0).toUpperCase() +
- user.first_name.slice(1)}
+ {me &&
+ me.first_name.charAt(0).toUpperCase() +
+ me.first_name.slice(1)}
diff --git a/src/shared/config/api/httpClient.ts b/src/shared/config/api/httpClient.ts
index f0bea3b..e91e17d 100644
--- a/src/shared/config/api/httpClient.ts
+++ b/src/shared/config/api/httpClient.ts
@@ -75,6 +75,7 @@ httpClient.interceptors.response.use(
} catch {
removeToken();
removeRefToken();
+ window.location.href = '/';
}
}
return Promise.reject(error);
diff --git a/src/shared/config/i18n/messages/ru.json b/src/shared/config/i18n/messages/ru.json
index 8f195cc..937a506 100644
--- a/src/shared/config/i18n/messages/ru.json
+++ b/src/shared/config/i18n/messages/ru.json
@@ -208,5 +208,6 @@
"Xatolik yuz berdi: Mahsulot omborxonada yetarli emas": "Произошла ошибка: недостаточно товаров на складе",
"Bu kategoriyada hozircha mahsulot yo‘q": "В этой категории пока нет товаров",
"Tez orada qo‘shiladi": "Скоро будет добавлено",
- "Hozirchali bu kategoriyada mahsulot yo'q": "Пока нет товаров в этой категории"
+ "Hozirchali bu kategoriyada mahsulot yo'q": "Пока нет товаров в этой категории",
+ "Kataloglar": "Каталог"
}
diff --git a/src/shared/config/i18n/messages/uz.d.json.ts b/src/shared/config/i18n/messages/uz.d.json.ts
index 6c04203..db71806 100644
--- a/src/shared/config/i18n/messages/uz.d.json.ts
+++ b/src/shared/config/i18n/messages/uz.d.json.ts
@@ -207,5 +207,7 @@ declare const messages: {
'Xatolik yuz berdi: Mahsulot omborxonada yetarli emas': 'Xatolik yuz berdi: Mahsulot omborxonada yetarli emas';
'Bu kategoriyada hozircha mahsulot yo‘q': 'Bu kategoriyada hozircha mahsulot yo‘q';
'Tez orada qo‘shiladi': 'Tez orada qo‘shiladi';
+ "Hozirchali bu kategoriyada mahsulot yo'q": "Hozirchali bu kategoriyada mahsulot yo'q";
+ Kataloglar: 'Kataloglar';
};
export default messages;
diff --git a/src/shared/config/i18n/messages/uz.json b/src/shared/config/i18n/messages/uz.json
index 005594f..869d64b 100644
--- a/src/shared/config/i18n/messages/uz.json
+++ b/src/shared/config/i18n/messages/uz.json
@@ -204,5 +204,6 @@
"Xatolik yuz berdi: Mahsulot omborxonada yetarli emas": "Xatolik yuz berdi: Mahsulot omborxonada yetarli emas",
"Bu kategoriyada hozircha mahsulot yo‘q": "Bu kategoriyada hozircha mahsulot yo‘q",
"Tez orada qo‘shiladi": "Tez orada qo‘shiladi",
- "Hozirchali bu kategoriyada mahsulot yo'q": "Hozirchali bu kategoriyada mahsulot yo'q"
+ "Hozirchali bu kategoriyada mahsulot yo'q": "Hozirchali bu kategoriyada mahsulot yo'q",
+ "Kataloglar": "Kataloglar"
}
diff --git a/src/widgets/navbar/ui/index.tsx b/src/widgets/navbar/ui/index.tsx
index 1d8ea6b..2e11af3 100644
--- a/src/widgets/navbar/ui/index.tsx
+++ b/src/widgets/navbar/ui/index.tsx
@@ -418,7 +418,7 @@ const Navbar = () => {
) : (
)}
- Kataloglar
+ {t('Kataloglar')}