import { fetchPageData } from "@/services/api";
import { BreastReductionPageProps } from "@/types/breast-reduction";
import Breadcrumbs from "@/components/CommonComponent/BreadCrumbs";
import ServicesBanner from "@/components/CommonComponent/ServicesBanner";
import CausesAndRiskFactor from "@/components/CommonComponent/CausesRiskFactor";
import PediatricsOurTreatment from "@/components/Ophthalmology/PediatricOurTreatment";
import AestheticSymptomsAndIndications from "@/components/Aesthetic/AestheticMedicine/AestheticSymptoms";
import OurSpecialist from "@/components/CommonComponent/OurSpecialist";
import AestheticProducts from "@/components/Aesthetic/AestheticMedicine/AestheticProducts";
import TreatmentJourney from "@/components/CommonComponent/TreatmentJourney";
import RecoveryAftercare from "@/components/CommonComponent/RecoveryAftercare";
import SafetyRisks from "@/components/CommonComponent/SafetyRisks";
import OurTreatment from "@/components/CommonComponent/OurTreatment";
import AestheticsTestimonials from "@/components/ReviewsAndTestimonials/AestheticsTestimonials";
import MonitoringAndPrevention from "@/components/CommonComponent/MonitoringAndPrevention";
import RequestCostResources from "@/components/CommonComponent/CostResources";
import Faqs from "@/components/CommonComponent/Faqs";
import LiveBooking from "@/components/CommonComponent/LiveBooking";
import { Metadata } from "next";
import { createSeo } from "@/seo/MetaSeo";

export async function generateMetadata(): Promise<Metadata> {
    return createSeo("pages/breast-reduction", "/aesthetic/aesthetic-surgery/breast-reduction");
}

export default async function BreastReductionPage() {
    const breastReductionPageData = await fetchPageData<BreastReductionPageProps>("pages/breast-reduction");


    return (
        <>
            <Breadcrumbs items={breastReductionPageData.data.breadcrumbs} />
            <ServicesBanner
                className="mb-16 md:mb-30"
                maxWidthClasses="md:max-w-[600px]"
                maxWidthDescriptionClasses="md:max-w-[550px] xl:max-w-[630px]"
                {...breastReductionPageData.data.about_banner}
            />
            <CausesAndRiskFactor {...breastReductionPageData.data.causes_risk_factors} />
            <PediatricsOurTreatment {...breastReductionPageData.data.pediatric_treatment} />
            <AestheticSymptomsAndIndications {...breastReductionPageData.data.symptoms_and_indications} />
            <OurSpecialist
                className="bg-[#F2F4F6] py-12 md:py-20 xl:py-30"
                {...breastReductionPageData.data.homepage_meet_team}
            />
            <OurTreatment columns={4} {...breastReductionPageData.data.treatment_we_offer} />
            <AestheticProducts columns={3}  {...breastReductionPageData.data.homepage_card_content__left_heading} />
            <TreatmentJourney
                showCTA={false} className="mb-16 md:mb-24 xl:mb-30"
                {...breastReductionPageData.data.surgery_steps}
            />
            <RecoveryAftercare {...breastReductionPageData.data.recovery_steps} />
            <SafetyRisks
                className="mb-16 md:mb-24 xl:mb-30" columns={2}
                {...breastReductionPageData.data.safety_and_risks}
            />
            <section className="mb-16 md:mb-20 xl:mb-30">
                <div className="container">
                    <AestheticsTestimonials />
                </div>
            </section>
            <MonitoringAndPrevention {...breastReductionPageData.data.monitor_and_prevention} />
            <RequestCostResources {...breastReductionPageData.data.clinicpage_left_content_button_with_right_image_with_points} />
            <Faqs {...breastReductionPageData.data.homepage_faqs} />
            <LiveBooking {...breastReductionPageData.data.live_booking} />
        </>
    )
}