feat: Zaktualizuj sekcję hero, nawigację, kalkulator i formularz zgłoszenia awarii

This commit is contained in:
MichalC
2026-06-28 15:03:36 +02:00
parent 002a325dfb
commit 59808f1243
22 changed files with 1465 additions and 345 deletions
+1 -1
View File
@@ -135,7 +135,7 @@ export function Footer() {
</Link>
</li>
<li>
<Link href="/kontakt" className="hover:text-accent transition-colors">
<Link href="/zgloszenie-awarii" className="hover:text-accent transition-colors">
Zgłoś awarię / serwis
</Link>
</li>
+22 -14
View File
@@ -2,7 +2,7 @@
import { useState, useEffect } from "react";
import Link from "next/link";
import { User, ShoppingBag, Menu, Phone } from "lucide-react";
import { User, ShoppingBag, Menu, Phone, Wrench } from "lucide-react";
import { NavDropdown } from "./NavDropdown";
import { GlobalSearch } from "./GlobalSearch";
import { MobileMenu } from "./MobileMenu";
@@ -164,24 +164,24 @@ export function Header() {
sections={acSections}
align="left"
/>
<NavDropdown
label="Miasta"
sections={miastaSections}
align="left"
/>
<Link
href="/pompy-ciepla"
className="text-sm font-medium text-primary hover:text-accent transition-colors"
>
Pompy ciepła
</Link>
<NavDropdown
label="Miasta"
sections={miastaSections}
align="left"
/>
<Link
href="/realizacje"
href="/kalkulator"
className="text-sm font-medium text-primary hover:text-accent transition-colors"
>
Realizacje
Dobór urządzenia
</Link>
<Link
href="/blog"
className="text-sm font-medium text-primary hover:text-accent transition-colors"
@@ -203,11 +203,19 @@ export function Header() {
</nav>
{/* CTA Button */}
<Link href="/kontakt" className="hidden lg:flex">
<button className="btn btn-primary font-bold">
Darmowa wycena
</button>
</Link>
<div className="hidden lg:flex items-center gap-3">
<Link href="/zgloszenie-awarii">
<button className="flex items-center gap-1.5 px-4 py-2 bg-red-500 text-white rounded-xl font-bold text-sm hover:bg-red-600 transition-colors whitespace-nowrap">
<Wrench className="size-4" />
Zgłoś awarię
</button>
</Link>
<Link href="/kontakt">
<button className="btn btn-primary font-bold">
Darmowa wycena
</button>
</Link>
</div>
</div>
</header>
+25 -14
View File
@@ -100,6 +100,17 @@ export function MobileMenu({ isOpen, onClose }: MobileMenuProps) {
</div>
</details>
{/* 2. Pompy Ciepła */}
<div className="border-b border-border py-3">
<Link
href="/pompy-ciepla"
onClick={onClose}
className="text-sm font-medium text-primary hover:text-accent block"
>
Pompy ciepła
</Link>
</div>
{/* Nowa sekcja: Miasta */}
<div className="border-b border-border py-3">
<details className="collapse collapse-arrow rounded-none">
@@ -136,30 +147,19 @@ export function MobileMenu({ isOpen, onClose }: MobileMenuProps) {
</details>
</div>
{/* 2. Pompy Ciepła */}
{/* 3. Dobór urządzenia */}
<div className="border-b border-border py-3">
<Link
href="/pompy-ciepla"
href="/kalkulator"
onClick={onClose}
className="text-sm font-medium text-primary hover:text-accent block"
>
Pompy ciepła
Dobór urządzenia
</Link>
</div>
{/* 4. Realizacje */}
<div className="border-b border-border py-3">
<Link
href="/realizacje"
onClick={onClose}
className="text-sm font-medium text-primary hover:text-accent block"
>
Realizacje
</Link>
</div>
{/* 5. Blog */}
<div className="border-b border-border py-3">
<Link
@@ -192,6 +192,17 @@ export function MobileMenu({ isOpen, onClose }: MobileMenuProps) {
Kontakt
</Link>
</div>
{/* 8. Zgłoś awarię */}
<div className="border-b border-border py-3">
<Link
href="/zgloszenie-awarii"
onClick={onClose}
className="text-sm font-bold text-red-600 hover:text-red-700 block"
>
Zgłoś awarię
</Link>
</div>
</div>
</div>
+15 -15
View File
@@ -1,26 +1,26 @@
import { Clock, ShieldCheck, Shield, Percent, Star } from "lucide-react";
import { Wrench, CheckCircle, Clock, Star } from "lucide-react";
export function TrustBar() {
const items = [
{
icon: Wrench,
title: "Doświadczeni monterzy",
description: "Certyfikat F-Gaz, fachowy montaż",
},
{
icon: CheckCircle,
title: "Kompleksowa usługa",
description: "Montaż, serwis i doradztwo",
},
{
icon: Clock,
title: "Szybki termin realizacji",
description: "Ekspresowy montaż i serwis",
},
{
icon: ShieldCheck,
title: "15+ lat doświadczenia",
description: "Tysiące zrealizowanych projektów",
},
{
icon: Shield,
title: "Pełna gwarancja",
description: "Bezpieczeństwo i pewność usług",
title: "Bezpłatna wycena",
description: "Odpowiadamy w ciągu 24h",
},
{
icon: Star,
title: "Opinie Google 5.0",
description: "Zaufanie setek klientów",
title: "Estetyczny montaż",
description: "Schludna instalacja, bez bałaganu",
},
];