Files
restaurant-reservation-shadcn/src/entities/site-content.ts
2026-05-08 22:49:12 +03:00

169 lines
9.7 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import {
CalendarDaysIcon,
ChefHatIcon,
ClockIcon,
LeafIcon,
MapPinIcon,
SparklesIcon,
StarIcon,
UserRoundIcon,
WineIcon,
} from "lucide-react";
export const site = {
name: "Juniper Table",
tagline:
"Сезонный ресторан с открытой кухней, точным сервисом, понятной бронью и вечерними сценариями от chef counter до private dining.",
cta: "Забронировать стол",
secondaryCta: "Смотреть меню",
heroImage: "https://images.unsplash.com/photo-1559339352-11d035aa65de?auto=format&fit=crop&w=1400&q=82",
accentImage: "https://images.unsplash.com/photo-1414235077428-338989a2e8c0?auto=format&fit=crop&w=1200&q=82",
nav: [
{ href: "/menu", label: "Меню" },
{ href: "/reservations", label: "Бронь" },
{ href: "/private-events", label: "События" },
{ href: "/about", label: "Кухня" },
{ href: "/contact", label: "Контакты" },
],
} as const;
export const serviceWindows = [
{ label: "Lunch", time: "12:00-16:00", note: "короткий сет и a la carte" },
{ label: "Dinner", time: "18:00-23:00", note: "основная посадка и chef counter" },
{ label: "Late table", time: "23:00-01:00", note: "бар, десерты и легкие блюда" },
] as const;
export const highlights = [
{ title: "Chef counter", value: "18 мест", text: "Посадка у открытой кухни с отдельным темпом подачи.", icon: ChefHatIcon },
{ title: "Сезон окна", value: "6 недель", text: "Меню меняется вокруг поставок фермеров и рыбы недели.", icon: LeafIcon },
{ title: "Pairing list", value: "120 этикеток", text: "Вино, сидр, малые хозяйства и non-alcohol pairing.", icon: WineIcon },
] as const;
export const menuSections = [
{
title: "Raw and starters",
note: "легкий старт, фермерские овощи, рыба, травы",
items: ["томатный тартар", "маринованная форель", "молодая свекла"],
},
{
title: "Fire and mains",
note: "рыба, птица, сезонные гарниры, соусы на бульонах",
items: ["палтус", "утиная грудка", "цветная капуста на углях"],
},
{
title: "Dessert and cellar",
note: "не слишком сладкий финал и pairing по желанию",
items: ["медовый крем", "ревень", "чайный pairing"],
},
] as const;
export const dishes = [
{
name: "Томатный тартар с копченой рикоттой",
price: "720 ₽",
tag: "starter",
section: "Raw and starters",
text: "Сладкие томаты, базилик, зеленый перец, холодное масло и хрустящий хлеб.",
allergens: "молоко, глютен",
pairing: "пет-нат rose",
image: "https://images.unsplash.com/photo-1504674900247-0877df9cc836?auto=format&fit=crop&w=1000&q=82",
},
{
name: "Палтус, фенхель и beurre blanc",
price: "1640 ₽",
tag: "signature",
section: "Fire and mains",
text: "Нежная рыба, цитрус, молодой картофель, травы и соус на белом вине.",
allergens: "рыба, молоко",
pairing: "chablis style",
image: "https://images.unsplash.com/photo-1565299624946-b28f40a0ae38?auto=format&fit=crop&w=1000&q=82",
},
{
name: "Утиная грудка с вишней и сельдереем",
price: "1880 ₽",
tag: "main",
section: "Fire and mains",
text: "Хрустящая кожа, соус из красного вина, корень сельдерея и кислая вишня.",
allergens: "сельдерей",
pairing: "pinot noir",
image: "https://images.unsplash.com/photo-1559847844-5315695dadae?auto=format&fit=crop&w=1000&q=82",
},
{
name: "Медовый крем, тимьян и ревень",
price: "560 ₽",
tag: "dessert",
section: "Dessert and cellar",
text: "Легкий крем, соты, ревень, лимонная цедра и сухое послевкусие.",
allergens: "молоко, мед",
pairing: "oolong highball",
image: "https://images.unsplash.com/photo-1488477181946-6428a0291777?auto=format&fit=crop&w=1000&q=82",
},
] as const;
export const products = dishes;
export const tastingSets = [
{ title: "Lunch tempo", price: "1900 ₽", items: ["3 подачи", "до 16:00", "45-60 минут"] },
{ title: "Juniper tasting", price: "4900 ₽", items: ["7 подач", "chef counter", "pairing option"] },
{ title: "Private table", price: "от 12000 ₽", items: ["до 12 гостей", "персональное меню", "сомелье"] },
] as const;
export const seatingOptions = [
{ title: "Chef counter", seats: "18 мест", text: "Лучший выбор для пары или гостя, который хочет видеть кухню.", deposit: "без депозита до 4 гостей" },
{ title: "Dining room", seats: "46 мест", text: "Основной зал с тихим сервисом и свободным темпом ужина.", deposit: "депозит от 8 гостей" },
{ title: "Private room", seats: "10-18 гостей", text: "Отдельная комната для семейного или делового ужина.", deposit: "меню согласуется заранее" },
] as const;
export const eveningTimeline = [
{ time: "18:30", title: "Aperitif", text: "хост встречает гостей, уточняет ограничения и темп вечера" },
{ time: "19:00", title: "Menu choice", text: "a la carte, дегустационный сет или chef counter маршрут" },
{ time: "20:40", title: "Pairing and dessert", text: "вино, non-alcohol pairing, десерт или чайный финал" },
] as const;
export const pairingFlights = [
{ title: "Garden pairing", text: "травяной highball, сидр малой фермы, белый чай", price: "1500 ₽" },
{ title: "Cellar pairing", text: "малые винодельни, минеральные белые, легкий pinot", price: "2600 ₽" },
{ title: "No alcohol", text: "kombucha, verjus tonic, чайные настои и ягодные shrubs", price: "1100 ₽" },
] as const;
export const dietaryNotes = [
{ title: "Аллергии", text: "Укажите ограничения при бронировании. Кухня подтвердит безопасные замены до визита." },
{ title: "Vegetarian route", text: "Часть меню собирается без мяса и рыбы, но требует подтверждения кухни." },
{ title: "Kids and timing", text: "Для гостей с детьми лучше выбрать раннюю посадку и предупредить хоста заранее." },
] as const;
export const eventTypes = [
{ title: "Камерный ужин", text: "10-18 гостей, отдельный зал, сет-меню и тихий сервис.", icon: SparklesIcon },
{ title: "Wedding welcome", text: "Фуршет, raw bar, десертная станция и wine pairing.", icon: StarIcon },
{ title: "Corporate dinner", text: "Тайминг презентации, персональное меню и приватная команда зала.", icon: CalendarDaysIcon },
] as const;
export const privatePackages = [
{ title: "Family table", guests: "10-14 гостей", price: "от 85 000 ₽", details: ["set menu", "welcome drink", "общий стол"] },
{ title: "Board dinner", guests: "12-18 гостей", price: "от 140 000 ₽", details: ["private room", "presentation timing", "sommelier"] },
{ title: "Wedding evening", guests: "24-42 гостя", price: "по запросу", details: ["buyout window", "raw bar", "dessert station"] },
] as const;
export const suppliers = [
{ name: "Ферма Север", product: "зелень, корнеплоды", cadence: "2 раза в неделю" },
{ name: "Волга Рыба", product: "палтус, форель", cadence: "под меню недели" },
{ name: "Малые сады", product: "ягоды, ревень", cadence: "сезонное окно" },
] as const;
export const testimonials = [
{ name: "Анна К.", text: "Редкий ресторан, где сервис, свет и кухня работают как один вечер.", rating: "5.0" },
{ name: "Table Guide", text: "Juniper Table попадает в точку: спокойно, точно, без лишнего шума.", rating: "4.9" },
] as const;
export const contactCards = [
{ title: "Адрес", text: "Петровка, 17, Москва, вход через внутренний двор", icon: MapPinIcon },
{ title: "Часы кухни", text: "Пн-Чт 12:00-23:00, Пт-Вс 12:00-01:00", icon: ClockIcon },
{ title: "Хост", text: "+7 495 120-44-18, подтверждение брони до 20 минут", icon: UserRoundIcon },
] as const;
export const bookingRules = [
{ title: "Подтверждение", text: "Хост связывается в течение 20 минут в рабочее время." },
{ title: "Депозит", text: "Для компаний от 8 гостей депозит и меню обсуждаются заранее." },
{ title: "Ограничения", text: "Аллергии и dietary requests указываются до визита, чтобы кухня подтвердила замену." },
] as const;