Add e-payment UI, checkout payment result, and legacy migrate domain lookup.
Wire Mellat settings in business dashboard, customer bank return page with payment details, and super-admin migrate modal domain confirmation. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
a11f9643bb
commit
cc94b929e0
@@ -0,0 +1,79 @@
|
||||
import { Play, PlusCircle, FolderTree, Settings } from 'lucide-react'
|
||||
import { SectionCard } from '../components/SectionCard'
|
||||
import { Breadcrumbs } from '../components/Breadcrumbs'
|
||||
import { PageTitle } from '../components/PageTitle'
|
||||
import { useT } from '../i18n/useT'
|
||||
import type { BusinessMessageKey } from '../i18n/messages'
|
||||
import styles from '../components/PageContent.module.css'
|
||||
|
||||
const videoSections: {
|
||||
icon: typeof Play
|
||||
titleKey: BusinessMessageKey
|
||||
descKey: BusinessMessageKey
|
||||
linkKey: BusinessMessageKey
|
||||
href: string
|
||||
}[] = [
|
||||
{
|
||||
icon: Play,
|
||||
titleKey: 'nav.videos.list',
|
||||
descKey: 'video.card.list.desc',
|
||||
linkKey: 'video.card.list.link',
|
||||
href: '/videos/list',
|
||||
},
|
||||
{
|
||||
icon: PlusCircle,
|
||||
titleKey: 'nav.videos.new',
|
||||
descKey: 'video.card.new.desc',
|
||||
linkKey: 'video.card.new.link',
|
||||
href: '/videos/new',
|
||||
},
|
||||
{
|
||||
icon: FolderTree,
|
||||
titleKey: 'video.card.categories.title',
|
||||
descKey: 'video.card.categories.desc',
|
||||
linkKey: 'video.card.categories.link',
|
||||
href: '/videos/categories',
|
||||
},
|
||||
{
|
||||
icon: Settings,
|
||||
titleKey: 'nav.videos.settings',
|
||||
descKey: 'video.card.settings.desc',
|
||||
linkKey: 'video.card.settings.link',
|
||||
href: '/videos/settings',
|
||||
},
|
||||
]
|
||||
|
||||
export function VideoPage() {
|
||||
const t = useT()
|
||||
|
||||
return (
|
||||
<main className={styles.content}>
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: 'Dashboard', href: '/' },
|
||||
{ label: 'Content', href: '/content' },
|
||||
{ label: 'Videos' },
|
||||
]}
|
||||
/>
|
||||
<div className={styles.pageHeader}>
|
||||
<div>
|
||||
<PageTitle en="VIDEOS">{t('title.videos')}</PageTitle>
|
||||
<p className={styles.pageSubtitle}>{t('video.page.subtitle')}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className={styles.gridHome}>
|
||||
{videoSections.map((section) => (
|
||||
<SectionCard
|
||||
key={section.href}
|
||||
icon={section.icon}
|
||||
title={t(section.titleKey)}
|
||||
description={t(section.descKey)}
|
||||
linkText={t(section.linkKey)}
|
||||
href={section.href}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
</main>
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user