Merge version_3 into main #4

Merged
bender merged 4 commits from version_3 into main 2026-02-17 14:49:07 +00:00
4 changed files with 12 additions and 17 deletions

View File

@@ -6,6 +6,7 @@ import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatin
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import BlogCardTwo from '@/components/sections/blog/BlogCardTwo';
import { useBlogPosts } from "@/hooks/useBlogPosts";
import Link from 'next/link';
export default function BlogPage() {
const { posts, isLoading } = useBlogPosts();
@@ -33,8 +34,6 @@ export default function BlogPage() {
{ name: "Меню", id: "/#menu" },
{ name: "Банкети", id: "/#banquets" },
{ name: "Доставка", id: "/#delivery" },
{ name: "Блог", id: "/blog" },
{ name: "Магазин", id: "/shop" },
{ name: "Контакти", id: "/#contacts" }
]}
button={{ text: "Забронювати Столик", href: "/#contacts" }}
@@ -52,7 +51,7 @@ export default function BlogPage() {
) : (
<div id="blog" data-section="blog">
<BlogCardTwo
blogs={posts}
blogs={posts.map(post => ({...post, onBlogClick: () => window.location.href = `/blog/${post.id}`}))}
title="Останні Статті"
description="Огляди та новини від нашої команди"
textboxLayout="default"

View File

@@ -9,6 +9,7 @@ import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import { Mail } from 'lucide-react';
import Link from 'next/link';
export default function LandingPage() {
return (
@@ -33,8 +34,6 @@ export default function LandingPage() {
{ name: "Меню", id: "/#menu" },
{ name: "Банкети", id: "/#banquets" },
{ name: "Доставка", id: "/#delivery" },
{ name: "Блог", id: "/blog" },
{ name: "Магазин", id: "/shop" },
{ name: "Контакти", id: "/#contacts" }
]}
button={{ text: "Забронювати Столик", href: "/#contacts" }}

View File

@@ -11,6 +11,7 @@ import ProductCart from "@/components/ecommerce/cart/ProductCart";
import { useProductDetail } from "@/hooks/useProductDetail";
import { useCart } from "@/hooks/useCart";
import { useCheckout } from "@/hooks/useCheckout";
import Link from 'next/link';
interface ProductPageProps {
params: Promise<{ id: string }>;
@@ -74,8 +75,6 @@ export default function ProductPage({ params }: ProductPageProps) {
{ name: "Меню", id: "/#menu" },
{ name: "Банкети", id: "/#banquets" },
{ name: "Доставка", id: "/#delivery" },
{ name: "Блог", id: "/blog" },
{ name: "Магазин", id: "/shop" },
{ name: "Контакти", id: "/#contacts" }
],
button: { text: "Кошик", onClick: () => setCartOpen(true) },
@@ -110,7 +109,7 @@ export default function ProductPage({ params }: ProductPageProps) {
headingFontWeight="bold"
>
<ReactLenis root>
<div id="navbar" data-section="navbar">
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay {...navbarProps} />
</div>
<div id="loading-indicator" data-section="loading-indicator">
@@ -141,7 +140,7 @@ export default function ProductPage({ params }: ProductPageProps) {
headingFontWeight="bold"
>
<ReactLenis root>
<div id="navbar" data-section="navbar">
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay {...navbarProps} />
</div>
<div id="not-found" data-section="not-found">
@@ -179,7 +178,7 @@ export default function ProductPage({ params }: ProductPageProps) {
headingFontWeight="bold"
>
<ReactLenis root>
<div id="navbar" data-section="navbar">
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay {...navbarProps} />
</div>
<div id="product-detail-card" data-section="product-detail-card">
@@ -210,7 +209,7 @@ export default function ProductPage({ params }: ProductPageProps) {
items={cartItems}
onQuantityChange={updateQuantity}
onRemove={removeItem}
total={`$${cartTotal}`}
total={`${cartTotal}`}
buttons={[
{
text: isCheckoutLoading ? "Обробка..." : "Оформити Замовлення",

View File

@@ -6,6 +6,7 @@ import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatin
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import ProductCatalog from "@/components/ecommerce/productCatalog/ProductCatalog";
import { useProductCatalog } from "@/hooks/useProductCatalog";
import Link from 'next/link';
export default function ShopPage() {
const {
@@ -24,8 +25,6 @@ export default function ShopPage() {
{ name: "Меню", id: "/#menu" },
{ name: "Банкети", id: "/#banquets" },
{ name: "Доставка", id: "/#delivery" },
{ name: "Блог", id: "/blog" },
{ name: "Магазин", id: "/shop" },
{ name: "Контакти", id: "/#contacts" }
],
button: { text: "Кошик", onClick: () => console.log('Cart button clicked on catalog page') },
@@ -60,7 +59,7 @@ export default function ShopPage() {
headingFontWeight="bold"
>
<ReactLenis root>
<div id="navbar" data-section="navbar">
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay {...navbarProps} />
</div>
<div id="loading-indicator" data-section="loading-indicator">
@@ -90,13 +89,13 @@ export default function ShopPage() {
headingFontWeight="bold"
>
<ReactLenis root>
<div id="navbar" data-section="navbar">
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay {...navbarProps} />
</div>
<div id="product-catalog" data-section="product-catalog">
<ProductCatalog
layout="page"
products={products}
products={products.map(p => ({...p, onProductClick: () => window.location.href = `/shop/${p.id}`}))}
searchValue={search}
onSearchChange={setSearch}
searchPlaceholder="Пошук товарів..."
@@ -106,7 +105,6 @@ export default function ShopPage() {
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis {...footerProps} />
}
</div>
</ReactLenis>
</ThemeProvider>