From f143cc6e6a59b1f958b7e25655d7c9797e64d517 Mon Sep 17 00:00:00 2001 From: kudinDmitriyUp Date: Thu, 2 Jul 2026 22:54:27 +0000 Subject: [PATCH] Bob AI: Added liquid glass button effect to hero section --- src/pages/HomePage.tsx | 138 +++--------------- src/pages/HomePage/sections/Contacto.tsx | 22 +++ src/pages/HomePage/sections/Galeria.tsx | 38 +++++ src/pages/HomePage/sections/Hero.tsx | 111 ++++++++++++++ src/pages/HomePage/sections/Opiniones.tsx | 28 ++++ .../HomePage/sections/PorQueElegirnos.tsx | 23 +++ src/pages/HomePage/sections/Productos.tsx | 30 ++++ 7 files changed, 274 insertions(+), 116 deletions(-) create mode 100644 src/pages/HomePage/sections/Contacto.tsx create mode 100644 src/pages/HomePage/sections/Galeria.tsx create mode 100644 src/pages/HomePage/sections/Hero.tsx create mode 100644 src/pages/HomePage/sections/Opiniones.tsx create mode 100644 src/pages/HomePage/sections/PorQueElegirnos.tsx create mode 100644 src/pages/HomePage/sections/Productos.tsx diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index d046532..cb64123 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -1,125 +1,31 @@ -import AboutTestimonial from '@/components/sections/about/AboutTestimonial'; -import ContactCta from '@/components/sections/contact/ContactCta'; -import FeaturesBento from '@/components/sections/features/FeaturesBento'; -import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento'; -import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel'; -import TestimonialTrustCard from '@/components/sections/testimonial/TestimonialTrustCard'; -import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; +// AUTO-GENERATED shell by per-section-migrate. +// Section bodies live in the sibling sections/ folder (one file per section). +// Edit those section files directly. Non-block content (wrappers, +// non-inlinable sections) is preserved inline; extracted section blocks +// become component refs. -export default function HomePage() { +import React from 'react'; +import HeroSection from './HomePage/sections/Hero'; +import ProductosSection from './HomePage/sections/Productos'; +import PorQueElegirnosSection from './HomePage/sections/PorQueElegirnos'; +import GaleriaSection from './HomePage/sections/Galeria'; +import OpinionesSection from './HomePage/sections/Opiniones'; +import ContactoSection from './HomePage/sections/Contacto'; + +export default function HomePage(): React.JSX.Element { return ( - <> -
- - - -
+<> + -
- - - -
+ -
- - - -
+ -
- - - -
+ -
- - - -
+ -
- - - -
+ ); -} \ No newline at end of file +} diff --git a/src/pages/HomePage/sections/Contacto.tsx b/src/pages/HomePage/sections/Contacto.tsx new file mode 100644 index 0000000..b52736c --- /dev/null +++ b/src/pages/HomePage/sections/Contacto.tsx @@ -0,0 +1,22 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "contacto" section. + +import React from 'react'; +import ContactCta from '@/components/sections/contact/ContactCta'; +import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; + +export default function ContactoSection(): React.JSX.Element { + return ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Galeria.tsx b/src/pages/HomePage/sections/Galeria.tsx new file mode 100644 index 0000000..61ae660 --- /dev/null +++ b/src/pages/HomePage/sections/Galeria.tsx @@ -0,0 +1,38 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "galeria" section. + +import React from 'react'; +import FeaturesBento from '@/components/sections/features/FeaturesBento'; +import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; + +export default function GaleriaSection(): React.JSX.Element { + return ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Hero.tsx b/src/pages/HomePage/sections/Hero.tsx new file mode 100644 index 0000000..8b87246 --- /dev/null +++ b/src/pages/HomePage/sections/Hero.tsx @@ -0,0 +1,111 @@ +/* eslint-disable */ +// @ts-nocheck — generated by catalog-eject; runtime-correct but TS strict-mode false-positives on inlined catalog body +import Button from "@/components/ui/Button"; +import HeroBackgroundSlot from "@/components/ui/HeroBackgroundSlot"; +import TextAnimation from "@/components/ui/TextAnimation"; +import ImageOrVideo from "@/components/ui/ImageOrVideo"; + +const primaryButton = { + text: "Ver Catálogo", + href: "#productos" +}; +const secondaryButton = { + text: "Contactar", + href: "#contacto" +}; +const items = [ + { + imageSrc: "http://img.b2bpic.net/free-photo/fashion-girls-city_1157-4965.jpg" + }, + { + imageSrc: "http://img.b2bpic.net/free-photo/graceful-lady-with-long-blonde-hair-having-fun-weekend-posing-with-pleasure-enthusiastic-caucasian-woman-with-tanned-skin-laughing-while-standing-near-window_197531-9221.jpg" + }, + { + imageSrc: "http://img.b2bpic.net/free-photo/man-barbershop_1303-5406.jpg" + }, + { + imageSrc: "http://img.b2bpic.net/free-photo/beautiful-model-lady-posing-black-dress_549566-282.jpg" + }, + { + imageSrc: "http://img.b2bpic.net/free-photo/female-model-sport-bra-blowing-her-hairs-two-sides_114579-21763.jpg" + }, + { + imageSrc: "http://img.b2bpic.net/free-photo/studio-portrait-beautiful-young-woman-looking-camera_1301-4449.jpg" + } +]; + +type HeroBillboardCarouselProps = { + tag: string; + title: string; + description: string; + primaryButton: { text: string; href: string }; + secondaryButton: { text: string; href: string }; + items: ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never })[]; + textAnimation: "slide-up" | "fade-blur" | "fade"; +}; + +const HeroInline = () => { + const duplicated = [...items, ...items, ...items, ...items]; + + return ( +
+ +
+
+

{"Calidad Premium"}

+
+ + + + + + +
+ +
+
+ {duplicated.map((item, i) => ( +
+ +
+ ))} +
+
+
+ ); +}; + +export default function HeroSection() { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Opiniones.tsx b/src/pages/HomePage/sections/Opiniones.tsx new file mode 100644 index 0000000..965826e --- /dev/null +++ b/src/pages/HomePage/sections/Opiniones.tsx @@ -0,0 +1,28 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "opiniones" section. + +import React from 'react'; +import TestimonialTrustCard from '@/components/sections/testimonial/TestimonialTrustCard'; +import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; + +export default function OpinionesSection(): React.JSX.Element { + return ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/PorQueElegirnos.tsx b/src/pages/HomePage/sections/PorQueElegirnos.tsx new file mode 100644 index 0000000..f589180 --- /dev/null +++ b/src/pages/HomePage/sections/PorQueElegirnos.tsx @@ -0,0 +1,23 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "por-que-elegirnos" section. + +import React from 'react'; +import AboutTestimonial from '@/components/sections/about/AboutTestimonial'; +import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; + +export default function PorQueElegirnosSection(): React.JSX.Element { + return ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Productos.tsx b/src/pages/HomePage/sections/Productos.tsx new file mode 100644 index 0000000..5090e2d --- /dev/null +++ b/src/pages/HomePage/sections/Productos.tsx @@ -0,0 +1,30 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "productos" section. + +import React from 'react'; +import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento'; +import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; + +export default function ProductosSection(): React.JSX.Element { + return ( +
+ + + +
+ ); +}