74 lines
1.6 KiB
TypeScript
74 lines
1.6 KiB
TypeScript
|
|
import type { JSX, SVGProps } from 'react'
|
||
|
|
|
||
|
|
import { ChartIcon } from '~/components/icons/chart'
|
||
|
|
import { ChatIcon } from '~/components/icons/chat'
|
||
|
|
import { DocumentIcon } from '~/components/icons/document'
|
||
|
|
import { MedicalNotesIcon } from '~/components/icons/medical-notes'
|
||
|
|
import { ProfileIcon } from '~/components/icons/profile'
|
||
|
|
import { SettingIcon } from '~/components/icons/setting'
|
||
|
|
import { WalletIcon } from '~/components/icons/wallet'
|
||
|
|
|
||
|
|
type TMenu = {
|
||
|
|
group: string
|
||
|
|
items: {
|
||
|
|
title: string
|
||
|
|
url: string
|
||
|
|
icon: (
|
||
|
|
properties: JSX.IntrinsicAttributes & SVGProps<SVGSVGElement>,
|
||
|
|
) => JSX.Element
|
||
|
|
}[]
|
||
|
|
}
|
||
|
|
|
||
|
|
export const MENU: TMenu[] = [
|
||
|
|
{
|
||
|
|
group: 'Menu',
|
||
|
|
items: [
|
||
|
|
{
|
||
|
|
title: 'Dashboard',
|
||
|
|
url: '/admin/dashboard',
|
||
|
|
icon: ChartIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'User',
|
||
|
|
url: '/admin/dashboard/users',
|
||
|
|
icon: DocumentIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'Konten',
|
||
|
|
url: '/admin/dashboard/contents',
|
||
|
|
icon: ChatIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'Advertisement',
|
||
|
|
url: '/admin/dashboard/advertisements',
|
||
|
|
icon: MedicalNotesIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'Subscription',
|
||
|
|
url: '/admin/dashboard/subscriptions',
|
||
|
|
icon: ChartIcon,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
{
|
||
|
|
group: 'Others',
|
||
|
|
items: [
|
||
|
|
{
|
||
|
|
title: 'Data Situs',
|
||
|
|
url: '/admin/dashboard/site-data',
|
||
|
|
icon: WalletIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'Pengaturan',
|
||
|
|
url: '/admin/dashboard/settings',
|
||
|
|
icon: SettingIcon,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
title: 'Admin',
|
||
|
|
url: '/admin/dashboard/admins',
|
||
|
|
icon: ProfileIcon,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
]
|