diff --git a/src/shared/SideBar.tsx b/src/shared/SideBar.tsx
index 830b4cb..e65794c 100644
--- a/src/shared/SideBar.tsx
+++ b/src/shared/SideBar.tsx
@@ -1,173 +1,151 @@
-import { type FC, useEffect } from 'react'
-import LogoImage from '../assets/images/logo.svg'
-import LogoSmall from '../assets/images/logo-small.png'
-import { useTranslation } from 'react-i18next'
-import { DocumentText, Home2, Logout, People, Setting2, TicketDiscount, Calendar, Security, Card, SecurityUser, TruckFast, Element3, Star1, NotificationBing, SmsEdit } from 'iconsax-react'
-import SideBarItem from './SideBarItem'
-import { useLocation } from 'react-router-dom'
-import { Pages } from '../config/Pages'
-import { useSharedStore } from './store/sharedStore'
-import { clx } from '../helpers/utils'
-import ProductsSubMenu from './components/ProductsSubMenu'
-import OrdersSubMenu from './components/OrdersSubMenu'
-import CustomersSubMenu from './components/CustomersSubMenu'
-import DiscountSubMenu from './components/DiscountSubMenu'
-import { SideBarItemHasSubMenu } from '../config/SideBarSubMenu'
-import { usePermissions } from '@/hooks/usePermissions'
-import { PermissionEnum } from '@/pages/roles/enum/Enum'
-import Skeleton from 'react-loading-skeleton'
+import { usePermissions } from "@/hooks/usePermissions";
+import { PermissionEnum } from "@/pages/roles/enum/Enum";
+import { Calendar, Card, DocumentText, Element3, Home2, Logout, People, Security, SecurityUser, Setting2, SmsEdit, Star1, TicketDiscount, TruckFast } from "iconsax-react";
+import { type FC, useEffect } from "react";
+import { useTranslation } from "react-i18next";
+import Skeleton from "react-loading-skeleton";
+import { useLocation } from "react-router-dom";
+import LogoSmall from "../assets/images/logo-small.png";
+import LogoImage from "../assets/images/logo.svg";
+import { Pages } from "../config/Pages";
+import { SideBarItemHasSubMenu } from "../config/SideBarSubMenu";
+import { clx } from "../helpers/utils";
+import CustomersSubMenu from "./components/CustomersSubMenu";
+import DiscountSubMenu from "./components/DiscountSubMenu";
+import OrdersSubMenu from "./components/OrdersSubMenu";
+import ProductsSubMenu from "./components/ProductsSubMenu";
+import SideBarItem from "./SideBarItem";
+import { useSharedStore } from "./store/sharedStore";
const SideBar: FC = () => {
+ const { t } = useTranslation("global");
+ const { openSidebar, setOpenSidebar, hasSubMenu, setSubMenuName, setSubtMenu, subMenuName } = useSharedStore();
+ const location = useLocation();
+ const { checkPermission, isLoading } = usePermissions();
- const { t } = useTranslation('global')
- const { openSidebar, setOpenSidebar, hasSubMenu, setSubMenuName, setSubtMenu, subMenuName } = useSharedStore()
- const location = useLocation()
- const { checkPermission, isLoading } = usePermissions()
+ const isActive = (name: string) => {
+ return location.pathname.includes(name);
+ };
- const isActive = (name: string) => {
- return location.pathname.includes(name)
+ useEffect(() => {
+ const split = location.pathname.split("/");
+
+ if (SideBarItemHasSubMenu.includes(split[1])) {
+ setSubMenuName(split[1]);
+ setSubtMenu(true);
+ } else {
+ setSubMenuName("");
+ setSubtMenu(false);
}
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [location.pathname]);
- useEffect(() => {
- const split = location.pathname.split('/')
+ const iconSizeSideBar = 20;
- if (SideBarItemHasSubMenu.includes(split[1])) {
- setSubMenuName(split[1])
- setSubtMenu(true)
- } else {
- setSubMenuName('')
- setSubtMenu(false)
- }
- // eslint-disable-next-line react-hooks/exhaustive-deps
- }, [location.pathname])
+ return (
+ <>
+ {openSidebar &&
setOpenSidebar(false)} />}
+
+
{!hasSubMenu ?

:

}
- const iconSizeSideBar = 20
+
+
{t("sidebar.menu")}
-
- return (
- <>
- {
- openSidebar &&
setOpenSidebar(false)} />
- }
-
-
- {
- !hasSubMenu ?
-

- :
-

- }
+ {isLoading ? (
+
+ {Array.from({ length: 8 }).map((_, index) => (
+
+ ))}
+
+ ) : (
+
+ {checkPermission(PermissionEnum.MANAGE_REPORTS) && (
+
}
+ title={t("sidebar.mainpage")}
+ isActive={isActive("dashboard")}
+ link={Pages.dashboard}
+ activeName=""
+ />
+ )}
-
-
- {t('sidebar.menu')}
-
+ {checkPermission(PermissionEnum.MANAGE_ORDERS) && (
+
}
+ title={t("sidebar.orders")}
+ isActive={isActive("orders")}
+ link={Pages.orders.list}
+ name="orders"
+ activeName="orders"
+ />
+ )}
- {isLoading ? (
-
- {Array.from({ length: 8 }).map((_, index) => (
-
- ))}
-
- ) : (
-
- {checkPermission(PermissionEnum.MANAGE_REPORTS) && (
- }
- title={t('sidebar.mainpage')}
- isActive={isActive('dashboard')}
- link={Pages.dashboard}
- activeName=''
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_FOODS) && (
+ }
+ title={t("sidebar.foods")}
+ isActive={isActive("products")}
+ link={Pages.products.list}
+ activeName="products"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_ORDERS) && (
- }
- title={t('sidebar.orders')}
- isActive={isActive('orders')}
- link={Pages.orders.list}
- name='orders'
- activeName='orders'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_SCHEDULES) && (
+ }
+ title={t("sidebar.schedule")}
+ isActive={isActive("schedule")}
+ link={Pages.schedule.list}
+ name="schedule"
+ activeName="schedule"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_FOODS) && (
- }
- title={t('sidebar.foods')}
- isActive={isActive('products')}
- link={Pages.products.list}
- activeName='products'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_PAYMENTS) && (
+ }
+ title={t("sidebar.payment_methods")}
+ isActive={isActive("payment_methods")}
+ link={Pages.payment_methods.list}
+ name="payment_methods"
+ activeName="payment_methods"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_SCHEDULES) && (
- }
- title={t('sidebar.schedule')}
- isActive={isActive('schedule')}
- link={Pages.schedule.list}
- name='schedule'
- activeName='schedule'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_USERS) && (
+ }
+ title={t("sidebar.customers")}
+ isActive={isActive("customers")}
+ link={Pages.customers.list}
+ name="customers"
+ activeName="customers"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_PAYMENTS) && (
- }
- title={t('sidebar.payment_methods')}
- isActive={isActive('payment_methods')}
- link={Pages.payment_methods.list}
- name='payment_methods'
- activeName='payment_methods'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_REVIEWS) && (
+ }
+ title={t("sidebar.reviews")}
+ isActive={isActive("reviews")}
+ link={Pages.reviews.list}
+ name="reviews"
+ activeName="reviews"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_USERS) && (
- }
- title={t('sidebar.customers')}
- isActive={isActive('customers')}
- link={Pages.customers.list}
- name='customers'
- activeName='customers'
- />
- )}
-
- {checkPermission(PermissionEnum.MANAGE_REVIEWS) && (
- }
- title={t('sidebar.reviews')}
- isActive={isActive('reviews')}
- link={Pages.reviews.list}
- name='reviews'
- activeName='reviews'
- />
- )}
-
- {checkPermission(PermissionEnum.MANAGE_PAGER) && (
+ {/* {checkPermission(PermissionEnum.MANAGE_PAGER) && (
}
title={t('sidebar.pagers')}
@@ -176,53 +154,53 @@ const SideBar: FC = () => {
name='pagers'
activeName='pagers'
/>
- )}
+ )} */}
- {checkPermission(PermissionEnum.MANAGE_ADMINS) && (
- }
- title={t('sidebar.admins')}
- isActive={isActive('admins')}
- link={Pages.admins.list}
- name='admins'
- activeName='admins'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_ADMINS) && (
+ }
+ title={t("sidebar.admins")}
+ isActive={isActive("admins")}
+ link={Pages.admins.list}
+ name="admins"
+ activeName="admins"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_DELIVERY) && (
- }
- title={t('sidebar.shipment_methods')}
- isActive={isActive('shipment_methods')}
- link={Pages.shipment_methods.list}
- name='shipment_methods'
- activeName='shipment_methods'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_DELIVERY) && (
+ }
+ title={t("sidebar.shipment_methods")}
+ isActive={isActive("shipment_methods")}
+ link={Pages.shipment_methods.list}
+ name="shipment_methods"
+ activeName="shipment_methods"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_COUPONS) && (
- }
- title={t('sidebar.discount')}
- isActive={isActive('discounts')}
- link={Pages.coupons.list}
- name='discounts'
- activeName='discounts'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_COUPONS) && (
+ }
+ title={t("sidebar.discount")}
+ isActive={isActive("discounts")}
+ link={Pages.coupons.list}
+ name="discounts"
+ activeName="discounts"
+ />
+ )}
- {checkPermission(PermissionEnum.MANAGE_ROLES) && (
- }
- title={t('sidebar.roles')}
- isActive={isActive('roles')}
- link={Pages.roles.list}
- name='roles'
- activeName='roles'
- />
- )}
+ {checkPermission(PermissionEnum.MANAGE_ROLES) && (
+ }
+ title={t("sidebar.roles")}
+ isActive={isActive("roles")}
+ link={Pages.roles.list}
+ name="roles"
+ activeName="roles"
+ />
+ )}
- {/* {
+ {/* {
checkPermission(PermissionEnum.MANAGE_SETTINGS) && (
}
@@ -234,34 +212,23 @@ const SideBar: FC = () => {
/>
)
} */}
-
- )}
+
+ )}
-
- {t('sidebar.other')}
-
+
{t("sidebar.other")}
- {isLoading ? (
-
- ) : (
-
- {/* {checkPermission(PermissionEnum.VIEW_REPORTS) && (
+ {isLoading ? (
+
+ ) : (
+
+ {/* {checkPermission(PermissionEnum.VIEW_REPORTS) && (
}
title={t('sidebar.statistics')}
@@ -270,7 +237,7 @@ const SideBar: FC = () => {
activeName='statistics'
/>
)} */}
- {/* {checkPermission(PermissionEnum.MANAGE_CONTACTS) && (
+ {/* {checkPermission(PermissionEnum.MANAGE_CONTACTS) && (
}
title={t('sidebar.comments')}
@@ -280,93 +247,78 @@ const SideBar: FC = () => {
/>
)} */}
- {checkPermission(PermissionEnum.MANAGE_REPORTS) && (
- }
- title={t('sidebar.reports')}
- isActive={isActive('reports')}
- link={Pages.reports.list}
- activeName='reports'
- />
- )}
-
- )}
-
-
- {isLoading ? (
-
- ) : (
- <>
-
- {checkPermission(PermissionEnum.MANAGE_SETTINGS) && (
- }
- title={t('sidebar.setting')}
- isActive={isActive('setting')}
- link={Pages.setting}
- activeName='settings'
- />
- )}
-
-
- }
- title={t('sidebar.logout')}
- isActive={isActive('logout')}
- link={`#`}
- isLogout
- activeName=''
- />
-
- >
- )}
-
-
+ {checkPermission(PermissionEnum.MANAGE_REPORTS) && (
+
}
+ title={t("sidebar.reports")}
+ isActive={isActive("reports")}
+ link={Pages.reports.list}
+ activeName="reports"
+ />
+ )}
+ )}
- {
- hasSubMenu && (openSidebar || window.innerWidth > 1139) &&
-
- {
- subMenuName === 'products' ?
-
- : subMenuName === 'orders' ?
-
- : subMenuName === 'customers' ?
-
- : subMenuName === 'discounts' ?
-
- : null
- }
+
+ {isLoading ? (
+
+ ) : (
+ <>
+
+ {checkPermission(PermissionEnum.MANAGE_SETTINGS) && (
+ }
+ title={t("sidebar.setting")}
+ isActive={isActive("setting")}
+ link={Pages.setting}
+ activeName="settings"
+ />
+ )}
+
+
+ }
+ title={t("sidebar.logout")}
+ isActive={isActive("logout")}
+ link={`#`}
+ isLogout
+ activeName=""
+ />
+
+ >
+ )}
+
+
+
-export default SideBar
\ No newline at end of file
+ {hasSubMenu && (openSidebar || window.innerWidth > 1139) && (
+
+ {subMenuName === "products" ? (
+
+ ) : subMenuName === "orders" ? (
+
+ ) : subMenuName === "customers" ? (
+
+ ) : subMenuName === "discounts" ? (
+
+ ) : null}
+
+ )}
+ >
+ );
+};
+
+export default SideBar;