import { fetchPageData } from "@/services/api";
import Breadcrumbs from "@/components/CommonComponent/BreadCrumbs";
import ServicesBanner from "@/components/CommonComponent/ServicesBanner";
import OurSpecialist from "@/components/CommonComponent/OurSpecialist";
import TreatmentJourney from "@/components/CommonComponent/TreatmentJourney";
import RequestCostResources from "@/components/CommonComponent/CostResources";
import Faqs from "@/components/CommonComponent/Faqs";
import LiveBooking from "@/components/CommonComponent/LiveBooking";
import CataractTypes from "@/components/CommonComponent/CataractTypes";
import { GeneralInternalMedicineCarePageProps } from "@/types/general-internal-medicine";
import CausesAndRiskFactor from "@/components/CommonComponent/CausesRiskFactor";
import SymptomsForCataract from "@/components/CommonComponent/SymptomsForCataract";
import OurTreatment from "@/components/CommonComponent/OurTreatment";
import RecoveryAftercare from "@/components/CommonComponent/RecoveryAftercare";
import GeneralTestimonials from "@/components/ReviewsAndTestimonials/GeneralTestimonial";
import MonitoringAndPrevention from "@/components/CommonComponent/MonitoringAndPrevention";
import SafetyRisks from "@/components/CommonComponent/SafetyRisks";
import { Metadata } from "next";
import { createSeo } from "@/seo/MetaSeo";
import ImplantsTechinques from "@/components/CommonComponent/ImplantsTechinques";

export async function generateMetadata(): Promise<Metadata> {
    return createSeo("pages/general-internal-medicine", "/general/general-medicine");
}

export default async function BreastReductionPage() {
    const internalMedicinePageData = await fetchPageData<GeneralInternalMedicineCarePageProps>("pages/general-internal-medicine");


    return (
        <>
            <Breadcrumbs items={internalMedicinePageData?.data?.breadcrumbs} />
            <ServicesBanner
                className="mb-16 md:mb-30"
                maxWidthClasses="md:max-w-[600px]"
                maxWidthDescriptionClasses="md:max-w-[550px] xl:max-w-[630px]"
                {...internalMedicinePageData?.data?.about_banner}
            />
            <CausesAndRiskFactor {...internalMedicinePageData?.data?.causes_risk_factors} />

            <CataractTypes {...internalMedicinePageData?.data?.what_we_offer} />
            <SymptomsForCataract {...internalMedicinePageData?.data?.symptoms_and_indications} />
            <OurSpecialist className="bg-[#F2F4F6] py-16 md:py-20 xl:py-30" {...internalMedicinePageData?.data?.homepage_meet_team} />
            <OurTreatment columns={4} {...internalMedicinePageData?.data?.treatment_we_offer} />
            <ImplantsTechinques
                columns={4}
                className="mb-16 md:mb-20 xl:mb-30"
                {...internalMedicinePageData?.data?.homepage_card_content__left_heading}
            />
            <TreatmentJourney
                showCTA={false} className="mb-16 md:mb-24 xl:mb-30"
                {...internalMedicinePageData?.data?.surgery_steps}
            />
            <RecoveryAftercare {...internalMedicinePageData?.data?.recovery_steps} />
            <SafetyRisks className="mb-16 md:mb-20 xl:mb-30" columns={2} {...internalMedicinePageData?.data?.safety_and_risks} />
            <section className="mb-16 md:mb-20 xl:mb-30">
                <div className="container">
                    <GeneralTestimonials />
                </div>
            </section>
            <MonitoringAndPrevention {...internalMedicinePageData?.data?.monitor_and_prevention} />
            <RequestCostResources {...internalMedicinePageData?.data?.clinicpage_left_content_button_with_right_image_with_points} />
            <Faqs {...internalMedicinePageData?.data?.homepage_faqs} />
            <LiveBooking {...internalMedicinePageData?.data?.live_booking} />
        </>
    )
}