Businesses can choose product vs store item sourcing, with store as the default when the store module is enabled, and rename the FA special-products section. Co-authored-by: Cursor <cursoragent@cursor.com>
109 lines
2.7 KiB
TypeScript
109 lines
2.7 KiB
TypeScript
import {
|
|
Mail,
|
|
BellRing,
|
|
CircleHelp,
|
|
Award,
|
|
Image,
|
|
Images,
|
|
Settings,
|
|
Sparkles,
|
|
} 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 websiteSections: {
|
|
icon: typeof Images
|
|
titleKey: BusinessMessageKey
|
|
descKey: BusinessMessageKey
|
|
linkKey: BusinessMessageKey
|
|
href: string
|
|
}[] = [
|
|
{
|
|
icon: Image,
|
|
titleKey: 'nav.website.staticImages',
|
|
descKey: 'website.card.staticImages.desc',
|
|
linkKey: 'website.card.staticImages.link',
|
|
href: '/website/static-images',
|
|
},
|
|
{
|
|
icon: Sparkles,
|
|
titleKey: 'nav.website.specialItems',
|
|
descKey: 'website.card.specialItems.desc',
|
|
linkKey: 'website.card.specialItems.link',
|
|
href: '/website/special-items',
|
|
},
|
|
{
|
|
icon: Mail,
|
|
titleKey: 'nav.website.contact',
|
|
descKey: 'website.card.contact.desc',
|
|
linkKey: 'website.card.contact.link',
|
|
href: '/website/contact',
|
|
},
|
|
{
|
|
icon: BellRing,
|
|
titleKey: 'nav.website.subscriptions',
|
|
descKey: 'website.card.subscriptions.desc',
|
|
linkKey: 'website.card.subscriptions.link',
|
|
href: '/website/subscriptions',
|
|
},
|
|
{
|
|
icon: CircleHelp,
|
|
titleKey: 'nav.website.faq',
|
|
descKey: 'website.card.faq.desc',
|
|
linkKey: 'website.card.faq.link',
|
|
href: '/website/faq',
|
|
},
|
|
{
|
|
icon: Award,
|
|
titleKey: 'nav.website.badges',
|
|
descKey: 'website.card.badges.desc',
|
|
linkKey: 'website.card.badges.link',
|
|
href: '/website/badges',
|
|
},
|
|
{
|
|
icon: Settings,
|
|
titleKey: 'nav.website.settings',
|
|
descKey: 'website.card.settings.desc',
|
|
linkKey: 'website.card.settings.link',
|
|
href: '/website/settings',
|
|
},
|
|
]
|
|
|
|
export function WebsitePage() {
|
|
const t = useT()
|
|
|
|
return (
|
|
<main className={styles.content}>
|
|
<Breadcrumbs
|
|
items={[
|
|
{ label: 'Dashboard', href: '/' },
|
|
{ label: 'Website' },
|
|
]}
|
|
/>
|
|
<div className={styles.pageHeader}>
|
|
<div>
|
|
<PageTitle en="WEBSITE">{t('title.website')}</PageTitle>
|
|
<p className={styles.pageSubtitle}>{t('website.page.subtitle')}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div className={styles.gridHome}>
|
|
{websiteSections.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>
|
|
)
|
|
}
|