This commit is contained in:
amirhosein.ashourloo
2026-09-16 21:53:35 +03:30
parent 6f7e24d21b
commit 8855e09c23
23 changed files with 373 additions and 60 deletions
+3 -58
View File
@@ -1,60 +1,5 @@
import { About } from "@/components/About";
import { ContactCta } from "@/components/ContactCta";
import { Hero } from "@/components/Hero";
import { Marquee } from "@/components/Marquee";
import { News } from "@/components/News";
import { Projects } from "@/components/Projects";
import { Services } from "@/components/Services";
import { SiteFooter } from "@/components/SiteFooter";
import { SiteHeader } from "@/components/SiteHeader";
import { contact, site } from "@/data/site";
import { getRecentNews, getRecentPortfolios, toDisplayNewsItem, toDisplayProject } from "@/lib/api";
import { OmniyatHome } from "@/components/omniyat/OmniyatHome";
export const revalidate = 300; // keep in sync with api.ts PAGE_REVALIDATE_SECONDS
const organizationJsonLd = {
"@context": "https://schema.org",
"@type": "Organization",
name: site.name,
url: site.url,
slogan: site.tagline,
foundingDate: "2000",
address: {
"@type": "PostalAddress",
addressLocality: "قم",
addressCountry: "IR",
streetAddress: contact.address,
},
telephone: contact.phoneLinks,
email: contact.email,
sameAs: [contact.instagramUrl],
};
export default async function HomePage() {
const [portfolios, newsPosts] = await Promise.all([getRecentPortfolios(12), getRecentNews(3)]);
const displayProjects = portfolios.map(toDisplayProject);
const displayNews = newsPosts.map(toDisplayNewsItem);
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationJsonLd) }}
/>
<SiteHeader />
<main>
<Hero />
<About />
<Marquee />
<Projects projects={displayProjects} />
<Services />
<News items={displayNews} />
<ContactCta />
</main>
<SiteFooter />
</>
);
export default function HomePage() {
return <OmniyatHome />;
}