diff --git a/src/assets/fonts/iransans/IRANSans(FaNum).ttf b/src/assets/fonts/iransans/IRANSans(FaNum).ttf
new file mode 100644
index 0000000..b703642
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans(FaNum).ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans(FaNum)_Bold.ttf b/src/assets/fonts/iransans/IRANSans(FaNum)_Bold.ttf
new file mode 100644
index 0000000..640b340
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans(FaNum)_Bold.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans(FaNum)_Light.ttf b/src/assets/fonts/iransans/IRANSans(FaNum)_Light.ttf
new file mode 100644
index 0000000..44e4c8a
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans(FaNum)_Light.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans(FaNum)_Medium.ttf b/src/assets/fonts/iransans/IRANSans(FaNum)_Medium.ttf
new file mode 100644
index 0000000..0c34cda
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans(FaNum)_Medium.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans(FaNum)_UltraLight.ttf b/src/assets/fonts/iransans/IRANSans(FaNum)_UltraLight.ttf
new file mode 100644
index 0000000..d3ebe15
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans(FaNum)_UltraLight.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans.ttf b/src/assets/fonts/iransans/IRANSans.ttf
new file mode 100644
index 0000000..320211c
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansX-Bold.ttf b/src/assets/fonts/iransans/IRANSansX-Bold.ttf
new file mode 100644
index 0000000..1d57a9a
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansX-Bold.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansX-Regular.ttf b/src/assets/fonts/iransans/IRANSansX-Regular.ttf
new file mode 100644
index 0000000..69cf084
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansX-Regular.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansXFaNum-Bold.ttf b/src/assets/fonts/iransans/IRANSansXFaNum-Bold.ttf
new file mode 100644
index 0000000..0bea395
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansXFaNum-Bold.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansXFaNum-Regular.ttf b/src/assets/fonts/iransans/IRANSansXFaNum-Regular.ttf
new file mode 100644
index 0000000..86f5b80
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansXFaNum-Regular.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansXNoEn-Bold.ttf b/src/assets/fonts/iransans/IRANSansXNoEn-Bold.ttf
new file mode 100644
index 0000000..088872c
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansXNoEn-Bold.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSansXNoEn-Regular.ttf b/src/assets/fonts/iransans/IRANSansXNoEn-Regular.ttf
new file mode 100644
index 0000000..aff9823
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSansXNoEn-Regular.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans_Black.ttf b/src/assets/fonts/iransans/IRANSans_Black.ttf
new file mode 100644
index 0000000..5fb4340
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans_Black.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans_Bold.ttf b/src/assets/fonts/iransans/IRANSans_Bold.ttf
new file mode 100644
index 0000000..dfa64eb
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans_Bold.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans_Light.ttf b/src/assets/fonts/iransans/IRANSans_Light.ttf
new file mode 100644
index 0000000..f91be8e
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans_Light.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans_Medium.ttf b/src/assets/fonts/iransans/IRANSans_Medium.ttf
new file mode 100644
index 0000000..403019f
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans_Medium.ttf differ
diff --git a/src/assets/fonts/iransans/IRANSans_UltraLight.ttf b/src/assets/fonts/iransans/IRANSans_UltraLight.ttf
new file mode 100644
index 0000000..8f06c90
Binary files /dev/null and b/src/assets/fonts/iransans/IRANSans_UltraLight.ttf differ
diff --git a/src/assets/hero.png b/src/assets/hero.png
deleted file mode 100644
index 02251f4..0000000
Binary files a/src/assets/hero.png and /dev/null differ
diff --git a/src/assets/images/winsoo.svg b/src/assets/images/winsoo.svg
new file mode 100644
index 0000000..cf488d1
--- /dev/null
+++ b/src/assets/images/winsoo.svg
@@ -0,0 +1,14 @@
+
diff --git a/src/assets/react.svg b/src/assets/react.svg
deleted file mode 100644
index 6c87de9..0000000
--- a/src/assets/react.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/assets/vite.svg b/src/assets/vite.svg
deleted file mode 100644
index 5101b67..0000000
--- a/src/assets/vite.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/src/components/layout/AdminLayout.tsx b/src/components/layout/AdminLayout.tsx
index 7209d76..849b89a 100644
--- a/src/components/layout/AdminLayout.tsx
+++ b/src/components/layout/AdminLayout.tsx
@@ -1,8 +1,9 @@
-import { Layout, Menu, Typography, theme } from 'antd';
-import { Home, UserRound, MonitorPlay } from 'lucide';
-import type { ReactNode } from 'react';
-import { useNavigate, useLocation } from 'react-router-dom';
-import LucideIcon from '../ui/LucideIcon';
+import { Drawer, Layout, Menu, Typography, theme } from "antd";
+import { useEffect, useState } from "react";
+import type { ReactNode } from "react";
+import { useNavigate, useLocation } from "react-router-dom";
+import winsooLogo from "../../assets/images/winsoo.svg";
+import { getSidebarMenuItems } from "../../constants/navigation";
const { Header, Content, Sider } = Layout;
const { Title } = Typography;
@@ -15,56 +16,123 @@ const AdminLayout = ({ children }: AdminLayoutProps) => {
const navigate = useNavigate();
const location = useLocation();
const {
- token: { colorBgContainer, borderRadiusLG },
+ token: { borderRadiusLG },
} = theme.useToken();
+ const [mobileOpen, setMobileOpen] = useState(false);
+ const [isMobile, setIsMobile] = useState(false);
- const items = [
- {
- key: '/profile',
- icon: ,
- label: 'پروفایل کاربر',
- },
- {
- key: '/billboards',
- icon: ,
- label: 'بیلبوردها',
- },
- {
- key: '/future',
- icon: ,
- label: 'بخشهای آینده',
- },
- ];
+ const items = getSidebarMenuItems();
+
+ useEffect(() => {
+ const handleResize = () => {
+ setIsMobile(window.innerWidth < 992);
+ };
+
+ handleResize();
+ window.addEventListener("resize", handleResize);
+ return () => window.removeEventListener("resize", handleResize);
+ }, []);
+
+ const handleNavigate = (key: string) => {
+ navigate(key);
+ if (isMobile) {
+ setMobileOpen(false);
+ }
+ };
+
+ const sidebarContent = (
+ <>
+
+

+
+