From 089f5064a3e7e0a0de482807a41f9be0dd1fe579 Mon Sep 17 00:00:00 2001 From: Sergey Bolshakov Date: Mon, 15 Dec 2025 15:12:31 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A1=D1=82=D1=80=D0=B0=D0=BD=D0=B8=D1=86?= =?UTF-8?q?=D1=8B=20=D0=BF=D1=80=D0=BE=D1=84=D0=B8=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/profile/yachts/page.tsx | 214 ++++++++++++++++++++++++++++++++ 1 file changed, 214 insertions(+) create mode 100644 src/app/profile/yachts/page.tsx diff --git a/src/app/profile/yachts/page.tsx b/src/app/profile/yachts/page.tsx new file mode 100644 index 0000000..54c5e35 --- /dev/null +++ b/src/app/profile/yachts/page.tsx @@ -0,0 +1,214 @@ +import Link from "next/link"; +import Image from "next/image"; +import ProfileSidebar from "@/app/profile/components/ProfileSidebar"; +import { MoveHorizontal, Users } from "lucide-react"; +import { getImageUrl, formatMinCost } from "@/lib/utils"; +import { Button } from "@/components/ui/button"; + +interface Yacht { + id: string; + name: string; + image: string; + length: number; + capacity: number; + minCost: number; + status: "active" | "moderation" | "archive"; +} + +// Моковые данные для демонстрации +const mockYachts: Yacht[] = [ + { + id: "1", + name: "KALLISTE", + image: "/images/yachts/yacht1.jpg", + length: 14, + capacity: 10, + minCost: 26400, + status: "active", + }, + { + id: "2", + name: "Señorita", + image: "/images/yachts/yacht2.jpg", + length: 14, + capacity: 10, + minCost: 37620, + status: "active", + }, +]; + +export default function YachtsPage() { + const yachts = mockYachts; + + return ( +
+
+ {/* Breadcrumbs */} +
+ + + Аренда яхты + + + > + + + Личный кабинет + + + > + Мои яхты +
+ +
+ {/* Sidebar */} + + + {/* Main Content */} +
+ {/* Header with Add Button */} +
+

Мои яхты

+ + + +
+ + {/* Yachts List */} +
+ {yachts.length === 0 ? ( +
+ Нет яхт в этой категории +
+ ) : ( + yachts.map((yacht, index) => ( +
+
+
+ {/* Image Section */} +
+ {yacht.name} + {/* Yacht Details Overlay */} +
+
+
+ + + { + yacht.length + }{" "} + метров + +
+
+ +
+
+ + + { + yacht.capacity + } + +
+
+
+
+ + {/* Details Section */} +
+
+
+
+

+ {yacht.name} +

+
+
+ Длина: +
+
+ { + yacht.length + }{" "} + метров +
+
+
+
+ Вместимость: +
+
+ { + yacht.capacity + }{" "} + человек +
+
+
+
+ Стоимость: +
+
+ {formatMinCost( + yacht.minCost + )}{" "} + / час +
+
+
+
+
+
+ + Посмотреть + объявление + + + Редактировать + +
+
+
+
+
+
+
+ )) + )} +
+
+
+
+
+ ); +}