This commit is contained in:
Kirill
2026-05-24 13:43:23 +05:00
parent 75841342c6
commit 2fe426b70a
17 changed files with 425 additions and 82 deletions
@@ -1,27 +1,13 @@
import Grid from '@mui/material/Grid'
import Link from '@mui/material/Link'
import Paper from '@mui/material/Paper'
import Stack from '@mui/material/Stack'
import Typography from '@mui/material/Typography'
import { Package, Store } from 'lucide-react'
import { Link as RouterLink } from 'react-router-dom'
import { DELIVERY_CARRIER_OPTIONS } from '@/shared/constants/delivery-carrier'
import { PICKUP_ADDRESS_FULL } from '@/shared/constants/pickup-point'
const deliveries = [
{
title: 'Самовывоз',
icon: <Store size={28} />,
lines: ['Бесплатно.', PICKUP_ADDRESS_FULL, 'Перед визитом согласуем время — чтобы заказ точно был готов к выдаче.'],
},
{
title: 'Почта / Службы доставки',
icon: <Package size={28} />,
lines: [
'Отправка в другие города.',
'Каждому заказу присваивается трек-номер для отслеживания.',
'Стоимость рассчитывается по тарифу перевозчика при оформлении.',
],
},
]
export function DeliverySection() {
return (
<Paper variant="outlined" sx={{ p: 3, borderRadius: 2 }}>
@@ -29,23 +15,51 @@ export function DeliverySection() {
Доставка
</Typography>
<Grid container spacing={2}>
{deliveries.map((d) => (
<Grid key={d.title} size={{ xs: 12, sm: 6, md: 4 }}>
<Paper variant="outlined" sx={{ p: 2, borderRadius: 2, height: '100%' }}>
<Stack spacing={1.5}>
<Stack direction="row" spacing={1} sx={{ alignItems: 'center' }}>
{d.icon}
<Typography variant="h6">{d.title}</Typography>
</Stack>
{d.lines.map((line, i) => (
<Typography key={i} variant="body2" color="text.secondary">
{line}
<Grid size={{ xs: 12, sm: 6 }}>
<Paper variant="outlined" sx={{ p: 2, borderRadius: 2, height: '100%' }}>
<Stack spacing={1.5}>
<Stack direction="row" spacing={1} sx={{ alignItems: 'center' }}>
<Store size={28} />
<Typography variant="h6">Самовывоз</Typography>
</Stack>
<Typography variant="body2" color="text.secondary">
Бесплатно.
</Typography>
<Typography variant="body2" color="text.secondary">
{PICKUP_ADDRESS_FULL}
</Typography>
<Typography variant="body2" color="text.secondary">
Перед визитом согласуем время чтобы заказ точно был готов к выдаче.
</Typography>
<Link component={RouterLink} to="/about" variant="body2">
Посмотреть на карте
</Link>
</Stack>
</Paper>
</Grid>
<Grid size={{ xs: 12, sm: 6 }}>
<Paper variant="outlined" sx={{ p: 2, borderRadius: 2, height: '100%' }}>
<Stack spacing={1.5}>
<Stack direction="row" spacing={1} sx={{ alignItems: 'center' }}>
<Package size={28} />
<Typography variant="h6">Доставка по России</Typography>
</Stack>
<Typography variant="body2" color="text.secondary">
Доступные службы доставки:
</Typography>
<Stack component="ul" spacing={0.5} sx={{ pl: 2, m: 0, listStyle: 'disc' }}>
{DELIVERY_CARRIER_OPTIONS.map((c) => (
<Typography key={c.code} component="li" variant="body2" color="text.secondary">
{c.label}
</Typography>
))}
</Stack>
</Paper>
</Grid>
))}
<Typography variant="body2" color="text.secondary">
Стоимость рассчитывается по тарифу перевозчика. Админ скорректирует цену после оформления заказа.
</Typography>
</Stack>
</Paper>
</Grid>
</Grid>
</Paper>
)