diff --git a/src/app/experience/page.tsx b/src/app/experience/page.tsx index 35acff1..75057e8 100644 --- a/src/app/experience/page.tsx +++ b/src/app/experience/page.tsx @@ -43,7 +43,7 @@ export default function ExperiencePage() { description="Royal Victoria sits at one of Tunis' most magical locations—Victory Square at the entrance to the historic Medina. From your window, experience the vibrant markets, cultural landmarks, and authentic Tunisian life that has flourished for centuries in these ancient streets." background={{ variant: "plain" }} tag="Location & Discovery" - tagIcon={MapPin} + tagIcon={Landmark} tagAnimation="slide-up" buttons={[ { text: "Explore Nearby", href: "#location" }, @@ -52,19 +52,16 @@ export default function ExperiencePage() { buttonAnimation="slide-up" mediaItems={[ { - imageSrc: "http://img.b2bpic.net/free-photo/woman-selecting-accessories-jewelry-section_107420-96188.jpg", - imageAlt: "porte de france medina entrance historic gate tunis" + imageSrc: "http://img.b2bpic.net/free-photo/woman-selecting-accessories-jewelry-section_107420-96188.jpg", imageAlt: "porte de france medina entrance historic gate tunis" }, { - imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-man-taking-pictures_1163-3392.jpg?_wi=4", - imageAlt: "luxury hotel balcony overlooking historic square medina" + imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-man-taking-pictures_1163-3392.jpg", imageAlt: "luxury hotel balcony overlooking historic square medina" } ]} mediaAnimation="slide-up" rating={5} ratingText="Guests love the authentic Medina location" ariaLabel="Hero section - Royal Victoria Experience" - useInvertedBackground={false} /> @@ -78,28 +75,23 @@ export default function ExperiencePage() { features={[ { icon: Landmark, - title: "Souks of the Medina", - description: "Explore the vibrant markets and traditional shops of the historic Medina just steps from our doors." + title: "Souks of the Medina", description: "Explore the vibrant markets and traditional shops of the historic Medina just steps from our doors." }, { icon: Building, - title: "Historic Mosques", - description: "Discover centuries-old Islamic architecture and cultural landmarks within walking distance." + title: "Historic Mosques", description: "Discover centuries-old Islamic architecture and cultural landmarks within walking distance." }, { icon: Coffee, - title: "Authentic Cafés", - description: "Experience traditional Tunisian coffee culture and connect with locals in neighborhood cafés." + title: "Authentic Cafés", description: "Experience traditional Tunisian coffee culture and connect with locals in neighborhood cafés." }, { icon: Building, - title: "Colonial Architecture", - description: "Wander through streets lined with beautiful colonial-era buildings preserving Tunis' rich history." + title: "Colonial Architecture", description: "Wander through streets lined with beautiful colonial-era buildings preserving Tunis' rich history." } ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Location section" /> @@ -114,23 +106,19 @@ export default function ExperiencePage() { features={[ { icon: Wheat, - title: "Traditional Tunisian Breakfast", - description: "Authentic local specialties including fresh pastries, traditional bread, and regional delicacies." + title: "Traditional Tunisian Breakfast", description: "Authentic local specialties including fresh pastries, traditional bread, and regional delicacies." }, { icon: Leaf, - title: "Fresh Local Ingredients", - description: "Sourced from nearby markets to ensure quality, freshness, and authentic Tunisian flavors." + title: "Fresh Local Ingredients", description: "Sourced from nearby markets to ensure quality, freshness, and authentic Tunisian flavors." }, { icon: Heart, - title: "Warm Service Every Morning", - description: "Our staff welcomes you each morning with genuine hospitality and attentive care." + title: "Warm Service Every Morning", description: "Our staff welcomes you each morning with genuine hospitality and attentive care." } ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Dining section" /> @@ -142,25 +130,20 @@ export default function ExperiencePage() { author="Sarah Johnson, Travel Enthusiast" avatars={[ { - src: "http://img.b2bpic.net/free-photo/smiling-businessman-standing-airport-terminal_107420-85070.jpg", - alt: "Sarah Johnson" + src: "http://img.b2bpic.net/free-photo/smiling-businessman-standing-airport-terminal_107420-85070.jpg", alt: "Sarah Johnson" }, { - src: "http://img.b2bpic.net/free-photo/confident-african-american-businessman-brown-classic-jacket-with-crossing-arms-isolated-dark-background_613910-6555.jpg", - alt: "Guest avatar 2" + src: "http://img.b2bpic.net/free-photo/confident-african-american-businessman-brown-classic-jacket-with-crossing-arms-isolated-dark-background_613910-6555.jpg", alt: "Guest avatar 2" }, { - src: "http://img.b2bpic.net/free-photo/portrait-beautiful-afro-american-woman_23-2148332136.jpg", - alt: "Guest avatar 3" + src: "http://img.b2bpic.net/free-photo/portrait-beautiful-afro-american-woman_23-2148332136.jpg", alt: "Guest avatar 3" }, { - src: "http://img.b2bpic.net/free-photo/joyful-young-bald-call-center-man-showing-empty-hands-isolated-orange_141793-84087.jpg", - alt: "Guest avatar 4" + src: "http://img.b2bpic.net/free-photo/joyful-young-bald-call-center-man-showing-empty-hands-isolated-orange_141793-84087.jpg", alt: "Guest avatar 4" } ]} ratingAnimation="slide-up" avatarsAnimation="slide-up" - useInvertedBackground={false} ariaLabel="Guest testimonial section" /> @@ -173,7 +156,6 @@ export default function ExperiencePage() { tagIcon={Crown} tagAnimation="slide-up" background={{ variant: "plain" }} - useInvertedBackground={false} inputPlaceholder="Enter your email" buttonText="Get Exclusive Offers" termsText="We respect your privacy. Unsubscribe anytime." @@ -185,8 +167,7 @@ export default function ExperiencePage() { @@ -74,27 +71,22 @@ export default function HistoryPage() { metrics={[ { icon: Building2, - label: "Former British Consulate", - value: "1600s" + label: "Former British Consulate", value: "1600s" }, { - icon: Globe, - label: "Diplomatic Embassy Era", - value: "1800s" + icon: Landmark, + label: "Diplomatic Embassy Era", value: "1800s" }, { icon: Lock, - label: "Historic Preservation", - value: "1900s" + label: "Historic Preservation", value: "1900s" }, { icon: Heart, - label: "Welcoming Guests", - value: "Today" + label: "Welcoming Guests", value: "Today" } ]} metricsAnimation="slide-up" - useInvertedBackground={false} ariaLabel="History timeline section" /> @@ -109,28 +101,23 @@ export default function HistoryPage() { features={[ { icon: Building, - title: "Colonial Architecture", - description: "The building exemplifies the finest colonial-era architectural styles, with careful preservation maintaining original details and character while adding modern comfort." + title: "Colonial Architecture", description: "The building exemplifies the finest colonial-era architectural styles, with careful preservation maintaining original details and character while adding modern comfort." }, { - icon: Globe, - title: "Diplomatic Legacy", - description: "Served as the seat of British diplomatic missions, hosting important government officials, cultural leaders, and international dignitaries throughout its diplomatic chapter." + icon: Landmark, + title: "Diplomatic Legacy", description: "Served as the seat of British diplomatic missions, hosting important government officials, cultural leaders, and international dignitaries throughout its diplomatic chapter." }, { - icon: MapPin, - title: "Strategic Location", - description: "Positioned at Victory Square overlooking the Porte de France, Royal Victoria has always commanded one of Tunis' most prestigious and historically significant locations." + icon: Landmark, + title: "Strategic Location", description: "Positioned at Victory Square overlooking the Porte de France, Royal Victoria has always commanded one of Tunis' most prestigious and historically significant locations." }, { icon: Coffee, - title: "Cultural Crossroads", - description: "The hotel represents the intersection of British elegance, Tunisian hospitality, and Mediterranean culture—a unique synthesis reflected in every aspect of the guest experience." + title: "Cultural Crossroads", description: "The hotel represents the intersection of British elegance, Tunisian hospitality, and Mediterranean culture—a unique synthesis reflected in every aspect of the guest experience." } ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Heritage stories section" /> @@ -143,7 +130,6 @@ export default function HistoryPage() { tagIcon={Crown} tagAnimation="slide-up" background={{ variant: "plain" }} - useInvertedBackground={false} inputPlaceholder="Enter your email" buttonText="Get Exclusive Offers" termsText="We respect your privacy. Unsubscribe anytime." @@ -155,8 +141,7 @@ export default function HistoryPage() { @@ -113,28 +104,19 @@ export default function HomePage() { title="An Iconic Stay in the Heart of Tunis" metrics={[ { - icon: MapPin, - label: "Gateway to the Medina", - value: "Steps Away", - }, + icon: Clock, + label: "Gateway to the Medina", value: "Steps Away"}, { icon: Clock, - label: "Years of Heritage", - value: "Centuries", - }, + label: "Years of Heritage", value: "Centuries"}, { icon: Users, - label: "Welcoming Staff", - value: "Always", - }, + label: "Welcoming Staff", value: "Always"}, { icon: Utensils, - label: "Guest Rating", - value: "4.5+", - }, + label: "Guest Rating", value: "4.5+"}, ]} metricsAnimation="slide-up" - useInvertedBackground={false} ariaLabel="About metrics section" /> @@ -149,38 +131,25 @@ export default function HomePage() { features={[ { icon: Building2, - title: "Historic Character", - description: "Former British embassy with centuries of stories woven into every corner and architectural detail.", - }, + title: "Historic Character", description: "Former British embassy with centuries of stories woven into every corner and architectural detail."}, { - icon: MapPin, - title: "Perfect Location", - description: "Steps from the Medina, souks, and historic landmarks at the vibrant gateway to Tunis' cultural heart.", - }, + icon: Landmark, + title: "Perfect Location", description: "Steps from the Medina, souks, and historic landmarks at the vibrant gateway to Tunis' cultural heart."}, { icon: Coffee, - title: "Exceptional Breakfast", - description: "Guests consistently praise our generous local buffet with fresh bread, pastries, and traditional Tunisian flavors.", - }, + title: "Exceptional Breakfast", description: "Guests consistently praise our generous local buffet with fresh bread, pastries, and traditional Tunisian flavors."}, { icon: Users, - title: "Welcoming Staff", - description: "Friendly, attentive service that makes guests feel immediately at home in a warm, authentic atmosphere.", - }, + title: "Welcoming Staff", description: "Friendly, attentive service that makes guests feel immediately at home in a warm, authentic atmosphere."}, { icon: Sparkles, - title: "Authentic Atmosphere", - description: "A stay immersed in genuine Tunisian culture and heritage, not generic hospitality.", - }, + title: "Authentic Atmosphere", description: "A stay immersed in genuine Tunisian culture and heritage, not generic hospitality."}, { icon: Star, - title: "Luxury in History", - description: "Modern comfort seamlessly blended with the elegance of a preserved historic building.", - }, + title: "Luxury in History", description: "Modern comfort seamlessly blended with the elegance of a preserved historic building."}, ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Features section - Why guests love Royal Victoria" /> @@ -194,31 +163,15 @@ export default function HomePage() { tagAnimation="slide-up" products={[ { - id: "classic", - name: "Classic Room", - price: "€89", - imageSrc: "http://img.b2bpic.net/free-photo/portrait-loving-couple-watching-movie-together-balcony-morning-with-curtains-foreground-young-man-resting-with-his-amazing-tanned-girlfriend-bed-holding-laptop-with-sea-views_197531-3206.jpg?_wi=1", - imageAlt: "Classic room with historic charm and modern comfort", - }, + id: "classic", name: "Classic Room", price: "€89", imageSrc: "http://img.b2bpic.net/free-photo/portrait-loving-couple-watching-movie-together-balcony-morning-with-curtains-foreground-young-man-resting-with-his-amazing-tanned-girlfriend-bed-holding-laptop-with-sea-views_197531-3206.jpg", imageAlt: "Classic room with historic charm and modern comfort"}, { - id: "superior", - name: "Superior Room", - price: "€129", - imageSrc: "http://img.b2bpic.net/free-photo/portrait-loving-couple-watching-movie-together-balcony-morning-with-curtains-foreground-young-man-resting-with-his-amazing-tanned-girlfriend-bed-holding-laptop-with-sea-views_197531-3206.jpg?_wi=2", - imageAlt: "Spacious superior room with additional seating", - }, + id: "superior", name: "Superior Room", price: "€129", imageSrc: "http://img.b2bpic.net/free-photo/portrait-loving-couple-watching-movie-together-balcony-morning-with-curtains-foreground-young-man-resting-with-his-amazing-tanned-girlfriend-bed-holding-laptop-with-sea-views_197531-3206.jpg", imageAlt: "Spacious superior room with additional seating"}, { - id: "balcony", - name: "Balcony Room", - price: "€159", - imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-man-taking-pictures_1163-3392.jpg?_wi=2", - imageAlt: "Private balcony room overlooking Victory Square", - }, + id: "balcony", name: "Balcony Room", price: "€159", imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-man-taking-pictures_1163-3392.jpg", imageAlt: "Private balcony room overlooking Victory Square"}, ]} gridVariant="three-columns-all-equal-width" animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Rooms section" /> @@ -233,23 +186,16 @@ export default function HomePage() { features={[ { icon: Wheat, - title: "Traditional Tunisian Breakfast", - description: "Authentic local specialties including fresh pastries, traditional bread, and regional delicacies.", - }, + title: "Traditional Tunisian Breakfast", description: "Authentic local specialties including fresh pastries, traditional bread, and regional delicacies."}, { icon: Leaf, - title: "Fresh Local Ingredients", - description: "Sourced from nearby markets to ensure quality, freshness, and authentic Tunisian flavors.", - }, + title: "Fresh Local Ingredients", description: "Sourced from nearby markets to ensure quality, freshness, and authentic Tunisian flavors."}, { icon: Heart, - title: "Warm Service Every Morning", - description: "Our staff welcomes you each morning with genuine hospitality and attentive care.", - }, + title: "Warm Service Every Morning", description: "Our staff welcomes you each morning with genuine hospitality and attentive care."}, ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Dining section" /> @@ -259,33 +205,24 @@ export default function HomePage() { title="At the Gateway of the Medina" description="Royal Victoria sits at one of the most historic locations in Tunis — Victory Square, beside the famous Porte de France. From here you can explore the city's most authentic experiences." tag="Location & Exploration" - tagIcon={MapPin} + tagIcon={Landmark} tagAnimation="slide-up" features={[ { icon: Landmark, - title: "Souks of the Medina", - description: "Explore the vibrant markets and traditional shops of the historic Medina just steps from our doors.", - }, + title: "Souks of the Medina", description: "Explore the vibrant markets and traditional shops of the historic Medina just steps from our doors."}, { icon: Building, - title: "Historic Mosques", - description: "Discover centuries-old Islamic architecture and cultural landmarks within walking distance.", - }, + title: "Historic Mosques", description: "Discover centuries-old Islamic architecture and cultural landmarks within walking distance."}, { icon: Coffee, - title: "Authentic Cafés", - description: "Experience traditional Tunisian coffee culture and connect with locals in neighborhood cafés.", - }, + title: "Authentic Cafés", description: "Experience traditional Tunisian coffee culture and connect with locals in neighborhood cafés."}, { icon: Building2, - title: "Colonial Architecture", - description: "Wander through streets lined with beautiful colonial-era buildings preserving Tunis' rich history.", - }, + title: "Colonial Architecture", description: "Wander through streets lined with beautiful colonial-era buildings preserving Tunis' rich history."}, ]} animationType="slide-up" textboxLayout="default" - useInvertedBackground={false} ariaLabel="Location section" /> @@ -297,25 +234,16 @@ export default function HomePage() { author="Sarah Johnson, Travel Enthusiast" avatars={[ { - src: "http://img.b2bpic.net/free-photo/smiling-businessman-standing-airport-terminal_107420-85070.jpg", - alt: "Sarah Johnson", - }, + src: "http://img.b2bpic.net/free-photo/smiling-businessman-standing-airport-terminal_107420-85070.jpg", alt: "Sarah Johnson"}, { - src: "http://img.b2bpic.net/free-photo/confident-african-american-businessman-brown-classic-jacket-with-crossing-arms-isolated-dark-background_613910-6555.jpg", - alt: "Guest avatar 2", - }, + src: "http://img.b2bpic.net/free-photo/confident-african-american-businessman-brown-classic-jacket-with-crossing-arms-isolated-dark-background_613910-6555.jpg", alt: "Guest avatar 2"}, { - src: "http://img.b2bpic.net/free-photo/portrait-beautiful-afro-american-woman_23-2148332136.jpg", - alt: "Guest avatar 3", - }, + src: "http://img.b2bpic.net/free-photo/portrait-beautiful-afro-american-woman_23-2148332136.jpg", alt: "Guest avatar 3"}, { - src: "http://img.b2bpic.net/free-photo/joyful-young-bald-call-center-man-showing-empty-hands-isolated-orange_141793-84087.jpg", - alt: "Guest avatar 4", - }, + src: "http://img.b2bpic.net/free-photo/joyful-young-bald-call-center-man-showing-empty-hands-isolated-orange_141793-84087.jpg", alt: "Guest avatar 4"}, ]} ratingAnimation="slide-up" avatarsAnimation="slide-up" - useInvertedBackground={false} ariaLabel="Guest testimonial section" /> @@ -326,27 +254,18 @@ export default function HomePage() { metrics={[ { icon: Building2, - label: "Former British Consulate", - value: "1600s", - }, + label: "Former British Consulate", value: "1600s"}, { icon: Sparkles, - label: "Diplomatic Embassy Era", - value: "1800s", - }, + label: "Diplomatic Embassy Era", value: "1800s"}, { - icon: MapPin, - label: "Historic Preservation", - value: "1900s", - }, + icon: Landmark, + label: "Historic Preservation", value: "1900s"}, { icon: Heart, - label: "Welcoming Guests", - value: "Today", - }, + label: "Welcoming Guests", value: "Today"}, ]} metricsAnimation="slide-up" - useInvertedBackground={false} ariaLabel="History metrics section" /> @@ -359,7 +278,6 @@ export default function HomePage() { tagIcon={Star} tagAnimation="slide-up" background={{ variant: "plain" }} - useInvertedBackground={false} inputPlaceholder="Enter your email" buttonText="Get Exclusive Offers" termsText="We respect your privacy. Unsubscribe anytime." diff --git a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx index f214190..feacaa5 100644 --- a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx +++ b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx @@ -1,51 +1,44 @@ -"use client"; +import React, { SVGProps } from 'react'; -import { memo } from "react"; -import useSvgTextLogo from "./useSvgTextLogo"; -import { cls } from "@/lib/utils"; - -interface SvgTextLogoProps { - logoText: string; - adjustHeightFactor?: number; - verticalAlign?: "top" | "center"; +interface SvgTextLogoProps extends SVGProps { + text?: string; + fontSize?: number; + fontWeight?: number; + letterSpacing?: number; + fill?: string; className?: string; } -const SvgTextLogo = memo(function SvgTextLogo({ - logoText, - adjustHeightFactor, - verticalAlign = "top", - className = "", -}) { - const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor); - +const SvgTextLogo: React.FC = ({ + text = 'LOGO', + fontSize = 48, + fontWeight = 700, + letterSpacing = 2, + fill = '#000000', + className = '', + ...props +}) => { return ( - {logoText} + {text} ); -}); +}; -SvgTextLogo.displayName = "SvgTextLogo"; - -export default SvgTextLogo; +export default SvgTextLogo; \ No newline at end of file