import { type FC } from 'react'; import LogoImage from '@/assets/images/logo.svg'; import { DocumentText, Element3, ElementEqual, Home2, Logout, Messages3, MessageText, NotificationStatus, People, Printer, Receipt21, MoneyRecive, ShieldSecurity, Teacher, User, } from 'iconsax-react'; import SideBarItem from './SidebarItem'; import { useLocation } from 'react-router-dom'; import { Paths } from '../config/Paths'; import { useSharedStore } from './store/useSharedStore'; import { clx } from '../helpers/utils'; import { t } from '../locale'; import { useGetDashboardCounts } from '@/pages/dashboard/hooks/useDashboardData'; const SideBar: FC = () => { const { openSidebar, setOpenSidebar } = useSharedStore(); const location = useLocation(); const { data: dashboardCounts } = useGetDashboardCounts(); const counts = dashboardCounts?.data; const isActive = (name: string) => { return location.pathname.includes(name); }; const iconSizeSideBar = 20; return ( <> {openSidebar && (
setOpenSidebar(false)} /> )}
{t('sidebar.menu')}
} title={t('sidebar.mainPage')} isActive={isActive('/home')} link={Paths.home} activeName='' /> } title={'سفارشات'} isActive={isActive('order')} link={Paths.order.list} activeName={['view_orders', 'view_assigned_orders']} badge={counts?.ordersCount} /> } title={'پیش فاکتور'} isActive={isActive('/invoice')} link={Paths.perfomaInvoice.list} activeName='view_invoices' badge={counts?.invoicesCount} /> } title={'درخواست ها'} isActive={isActive('requests')} link={Paths.requests.list} activeName='view_requests' badge={counts?.requestsCount} /> } title={'پرداخت‌ها'} isActive={isActive('/payments')} link={Paths.payments.list} activeName='manage_payments' badge={counts?.paymentsCount} /> } title={'مشتریان'} isActive={isActive('users')} link={Paths.users.list} activeName='view_users' /> } title={'فرم ساز'} isActive={isActive('print')} link={Paths.print.list} activeName='view_print_form' /> } title={'ادمین'} isActive={isActive('admin')} link={Paths.admin.list} activeName='manage_admins' /> } title={'نقش‌ها'} isActive={isActive('role')} link={Paths.role.list} activeName='manage_roles' /> } title={'محصولات'} isActive={isActive('product')} link={Paths.product.list} activeName='manage_products' />
{t('sidebar.other')}
} title={t('sidebar.tickets')} isActive={isActive('/tickets')} link={Paths.tickets.list} activeName='manage_tickets' /> } title={t('sidebar.announcement')} isActive={isActive('/announcement')} link={Paths.announcement.list} activeName='manage_announcements' /> } title={t('sidebar.criticisms')} isActive={isActive('/criticisms')} link={Paths.criticisms.list} activeName='manage_criticisms' /> } title={t('sidebar.learning')} isActive={isActive('/learning')} link={Paths.learning.list} activeName='manage_learnings' />
} title={t('sidebar.logout')} isActive={isActive('logout')} link={`#`} activeName='' isLogout />
); }; export default SideBar;