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 (
+
+
+
+
+
+
+ {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 (
+
+
+
+
+
+ );
+}