admin
This commit is contained in:
@@ -12,7 +12,7 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
DANAK_SERVER: "https://captain.run.danakcorp.com"
|
DANAK_SERVER: "https://captain.run.danakcorp.com"
|
||||||
APP_TOKEN: f0ced29da1a7c75252c607e6eebeb2459a70d32402d6077816688b06e5e2823b
|
APP_TOKEN: f0ced29da1a7c75252c607e6eebeb2459a70d32402d6077816688b06e5e2823b
|
||||||
CAPROVER_APP_NAME: danak-dsc
|
CAPROVER_APP_NAME: danak-admin
|
||||||
GITHUB_TOKEN: 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
|
GITHUB_TOKEN: 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
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
+1
-1
@@ -54,7 +54,7 @@ const App: FC = () => {
|
|||||||
|
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
console.log('us', isLogin);
|
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -29,4 +29,31 @@ export const Pages = {
|
|||||||
setting: "/setting",
|
setting: "/setting",
|
||||||
wallet: "/wallet",
|
wallet: "/wallet",
|
||||||
profile: "/profile",
|
profile: "/profile",
|
||||||
|
customers: {
|
||||||
|
list: "/customers/list",
|
||||||
|
},
|
||||||
|
representative: {
|
||||||
|
list: "/representatives/list",
|
||||||
|
},
|
||||||
|
developers: {
|
||||||
|
list: "/developers/list",
|
||||||
|
},
|
||||||
|
discount: {
|
||||||
|
list: "/discounts/list",
|
||||||
|
},
|
||||||
|
referralCode: {
|
||||||
|
list: "/referral-code/list",
|
||||||
|
},
|
||||||
|
users: {
|
||||||
|
list: "/users/list",
|
||||||
|
},
|
||||||
|
ads: {
|
||||||
|
list: "/ads/list",
|
||||||
|
},
|
||||||
|
blog: {
|
||||||
|
list: "/blog/list",
|
||||||
|
},
|
||||||
|
messages: {
|
||||||
|
list: "/messages/list",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -43,6 +43,18 @@
|
|||||||
"description": "توضیحات",
|
"description": "توضیحات",
|
||||||
"sidebar": {
|
"sidebar": {
|
||||||
"menu": "منو",
|
"menu": "منو",
|
||||||
|
"services": "سرویس ها",
|
||||||
|
"customers": "مشتریان",
|
||||||
|
"representatives": "نمایندگان",
|
||||||
|
"developers": "توسعه دهندگان",
|
||||||
|
"discounts": "تخفیف ها",
|
||||||
|
"code_referral": "کد ارجاع",
|
||||||
|
"users": "کاربران",
|
||||||
|
"mnage_content": "مدیریت محتوا",
|
||||||
|
"ads": "تبلیغات",
|
||||||
|
"blog": "بلاگ",
|
||||||
|
"messages": "پیام ها",
|
||||||
|
|
||||||
"mainpage": "صفحه اصلی",
|
"mainpage": "صفحه اصلی",
|
||||||
"myservice": "سرویس های من",
|
"myservice": "سرویس های من",
|
||||||
"other_service": "سایر سرویس ها",
|
"other_service": "سایر سرویس ها",
|
||||||
|
|||||||
+84
-14
@@ -1,7 +1,7 @@
|
|||||||
import { FC } from 'react'
|
import { FC } from 'react'
|
||||||
import LogoImage from '../assets/images/logo.svg'
|
import LogoImage from '../assets/images/logo.svg'
|
||||||
import { useTranslation } from 'react-i18next'
|
import { useTranslation } from 'react-i18next'
|
||||||
import { Card, DocumentText, Element3, Element4, Home2, Logout, Messages3, NotificationStatus, Receipt21, Setting2, Teacher } from 'iconsax-react'
|
import { Card, Code, CodeCircle, DocumentLike, DocumentText, Element3, Home2, Logout, Messages3, NotificationStatus, People, Profile, Receipt21, Setting2, SmsTracking, Teacher, TicketDiscount, UserSquare } from 'iconsax-react'
|
||||||
import SideBarItem from './SideBarItem'
|
import SideBarItem from './SideBarItem'
|
||||||
import { useLocation } from 'react-router-dom'
|
import { useLocation } from 'react-router-dom'
|
||||||
import { Pages } from '../config/Pages'
|
import { Pages } from '../config/Pages'
|
||||||
@@ -49,16 +49,30 @@ const SideBar: FC = () => {
|
|||||||
/>
|
/>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<Element3 variant={isActive('services') ? 'Bold' : 'Outline'} color={isActive('services') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<Element3 variant={isActive('services') ? 'Bold' : 'Outline'} color={isActive('services') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
title={t('sidebar.myservice')}
|
title={t('sidebar.services')}
|
||||||
isActive={isActive('services')}
|
isActive={isActive('services')}
|
||||||
link={Pages.services.mine}
|
link={Pages.services.mine}
|
||||||
/>
|
/>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<Element4 variant={isActive('other-service') ? 'Bold' : 'Outline'} color={isActive('other-service') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<People variant={isActive('customers') ? 'Bold' : 'Outline'} color={isActive('customers') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
title={t('sidebar.other_service')}
|
title={t('sidebar.customers')}
|
||||||
isActive={isActive('other-service')}
|
isActive={isActive('customers')}
|
||||||
link={Pages.services.other}
|
link={Pages.customers.list}
|
||||||
/>
|
/>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<UserSquare variant={isActive('representatives') ? 'Bold' : 'Outline'} color={isActive('representatives') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.representatives')}
|
||||||
|
isActive={isActive('representatives')}
|
||||||
|
link={Pages.representative.list}
|
||||||
|
/>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<CodeCircle variant={isActive('developers') ? 'Bold' : 'Outline'} color={isActive('developers') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.developers')}
|
||||||
|
isActive={isActive('developers')}
|
||||||
|
link={Pages.developers.list}
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<Receipt21 variant={isActive('receipts') ? 'Bold' : 'Outline'} color={isActive('receipts') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<Receipt21 variant={isActive('receipts') ? 'Bold' : 'Outline'} color={isActive('receipts') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
title={t('sidebar.receipt_list')}
|
title={t('sidebar.receipt_list')}
|
||||||
@@ -71,12 +85,31 @@ const SideBar: FC = () => {
|
|||||||
isActive={isActive('transactions')}
|
isActive={isActive('transactions')}
|
||||||
link={Pages.transactions}
|
link={Pages.transactions}
|
||||||
/>
|
/>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<TicketDiscount variant={isActive('discounts') ? 'Bold' : 'Outline'} color={isActive('discounts') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.discounts')}
|
||||||
|
isActive={isActive('discounts')}
|
||||||
|
link={Pages.discount.list}
|
||||||
|
/>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<Code variant={isActive('referral-code') ? 'Bold' : 'Outline'} color={isActive('referral-code') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.code_referral')}
|
||||||
|
isActive={isActive('referral-code')}
|
||||||
|
link={Pages.referralCode.list}
|
||||||
|
/>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<Profile variant={isActive('users') ? 'Bold' : 'Outline'} color={isActive('users') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.users')}
|
||||||
|
isActive={isActive('users')}
|
||||||
|
link={Pages.users.list}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className='mt-10 px-12 text-header text-sm font-normal'>
|
<div className='mt-10 px-12 text-header text-sm font-normal'>
|
||||||
{t('sidebar.other')}
|
{t('sidebar.other')}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div className='text-xs text-[#8C90A3]'>
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<Messages3 variant={isActive('tickets') ? 'Bold' : 'Outline'} color={isActive('tickets') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<Messages3 variant={isActive('tickets') ? 'Bold' : 'Outline'} color={isActive('tickets') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
@@ -85,14 +118,7 @@ const SideBar: FC = () => {
|
|||||||
link={Pages.ticket.list}
|
link={Pages.ticket.list}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className='text-xs text-[#8C90A3]'>
|
|
||||||
<SideBarItem
|
|
||||||
icon={<NotificationStatus variant={isActive('announcement') ? 'Bold' : 'Outline'} color={isActive('announcement') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
|
||||||
title={t('sidebar.announcement')}
|
|
||||||
isActive={isActive('announcement')}
|
|
||||||
link={Pages.announcement.list}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className='text-xs text-[#8C90A3]'>
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<DocumentText variant={isActive('criticisms') ? 'Bold' : 'Outline'} color={isActive('criticisms') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<DocumentText variant={isActive('criticisms') ? 'Bold' : 'Outline'} color={isActive('criticisms') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
@@ -101,6 +127,39 @@ const SideBar: FC = () => {
|
|||||||
link={Pages.criticisms}
|
link={Pages.criticisms}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div className='mt-10 px-12 text-header text-sm font-normal'>
|
||||||
|
{t('sidebar.mnage_content')}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<DocumentLike variant={isActive('ads') ? 'Bold' : 'Outline'} color={isActive('ads') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.ads')}
|
||||||
|
isActive={isActive('ads')}
|
||||||
|
link={Pages.ads.list}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<NotificationStatus variant={isActive('announcement') ? 'Bold' : 'Outline'} color={isActive('announcement') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.announcement')}
|
||||||
|
isActive={isActive('announcement')}
|
||||||
|
link={Pages.announcement.list}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<DocumentText variant={isActive('blog') ? 'Bold' : 'Outline'} color={isActive('blog') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.blog')}
|
||||||
|
isActive={isActive('blog')}
|
||||||
|
link={Pages.blog.list}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div className='text-xs text-[#8C90A3]'>
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
icon={<Teacher variant={isActive('learning') ? 'Bold' : 'Outline'} color={isActive('learning') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
icon={<Teacher variant={isActive('learning') ? 'Bold' : 'Outline'} color={isActive('learning') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
@@ -110,6 +169,17 @@ const SideBar: FC = () => {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
|
<SideBarItem
|
||||||
|
icon={<SmsTracking variant={isActive('messages') ? 'Bold' : 'Outline'} color={isActive('messages') ? 'black' : '#8C90A3'} size={iconSizeSideBar} />}
|
||||||
|
title={t('sidebar.messages')}
|
||||||
|
isActive={isActive('messages')}
|
||||||
|
link={Pages.messages.list}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div className='flex-1 items-end mt-14'>
|
<div className='flex-1 items-end mt-14'>
|
||||||
<div className='text-xs text-[#8C90A3]'>
|
<div className='text-xs text-[#8C90A3]'>
|
||||||
<SideBarItem
|
<SideBarItem
|
||||||
|
|||||||
Reference in New Issue
Block a user