/* 
  This is the about us page.
  It contains the following components:
  - PageBannerTitle
  - Facts
  - AboutBlankbase
  - JoinTheCommunity
  - TestimonialSlider
*/
import { getDictionarys } from '@/getDictionarys';
import AboutBlankbase from '@/src/components/AboutBlankbase';
import JoinTheCommunity from '@/src/components/JoinTheCommunity';
import PageBannerTitle from '@/src/components/PageBannerTitle';
import Facts from '@/src/components/page/About/Facts';
import getCMSData from '@/src/ssrapi/getCMSData';
import { AboutUsContent } from '@/src/types/StaticContent/aboutus.content.type';
import { CMSResponse } from '@/src/types/api/cms.type';
import Routes from '@/src/utils/RouteConstants';
import { notFound } from 'next/navigation';
import React from 'react';
const page: React.FC = async () => {

  // get about-us cms data from server side API
  const aboutUsCMSData = await getCMSData('about-us') as CMSResponse;

  // if no data found,  then show not found page
  if (!aboutUsCMSData?.data) {
    notFound();
  }

  // Get the about us content
  const AboutUsContent = await getDictionarys('about-us') as AboutUsContent;

  // Banner Details
  const BannerDetails = {
    BannerTitle: AboutUsContent.PAGE_BANNER.TITLE,
    BannerLink: Routes.FIND_A_HOME,
    BannerLinkText: AboutUsContent.PAGE_BANNER.FIND_A_HOME,
    EffectiveDateText: AboutUsContent.PAGE_BANNER.EFFECTIVE_DATE
  };
  return (
    <>
      <main className={`main-mt`}>
        <PageBannerTitle CommonDetails={BannerDetails} />
        <Facts FactsData={AboutUsContent.FACTS} />
        <AboutBlankbase
          AboutBlankbaseData={AboutUsContent.ABOUT_BLANKBASE}
          AboutCMSData={aboutUsCMSData?.data?.description}
        />
        <JoinTheCommunity JoinTheCommunityData={AboutUsContent?.JOIN_THE_COMMUNITY} />
      </main>
    </>
  )
}

export default page