index.js
3.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
import { Inter } from "next/font/google";
import HomeBanner from "@/container/Home/HomeBanner";
import AboutContent from "@/container/Home/AboutContent";
import People from "@/container/Home/People";
import ClientService from "@/container/Home/ClientService";
import AreasofExpertise from "@/container/Home/AreasofExpertise";
import HomeBlog from "@/container/Home/HomeBlog";
import PartnerSlider from "@/container/Home/PartnerSlider";
import CallBackRequest from "@/components/reuseables/CallBackRequest";
import qs from "qs";
import axios from "axios";
import { fetchBlogList } from "@/redux/slices/bloglistslice";
import { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux";
import { fetchServiceList } from "@/redux/slices/clientservice";
import Industries from "@/container/Home/Industries";
import FunctionalAreas from "@/container/Home/FunctionalAreas";
import Seo from "@/components/reuseables/Seo/Seo";
import { fetchcodeList } from "@/redux/slices/mangerslice";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
const inter = Inter({ subsets: ["latin"] });
export default function Home({homepage }) {
const dispatch = useDispatch();
// console.log("homepage", homepage);
const banner = homepage?.Banner;
const Knowledgeshack = homepage?.Knowledgeshack;
const KnowledgeTab = homepage?.KnowledgeTab;
const people = homepage?.People;
const Areas = homepage?.AreasofExpertise;
const functionarea = homepage?.FunctionalAreas;
const industry = homepage?.Industry;
const Clientel = homepage?.Clientel;
useEffect(() => {
dispatch(fetchBlogList());
dispatch(fetchServiceList());
dispatch(fetchcodeList());
}, []);
const blogData = useSelector((state) => state.bloglist.data)
const serviceData = useSelector((state) => state.servicelist.data)
const conversioncode = useSelector((state) =>state.tagmangerlist.data)
console.log(conversioncode, "data")
const seo = homepage?.seo;
return (
<>
<Seo seo={seo} />
<ConversionCode code={conversioncode} />
<HomeBanner banner={banner} />
<AboutContent Knowledges={Knowledgeshack} KnowledgeTab={KnowledgeTab} />
<People people={people} />
<ClientService service={serviceData} />
<AreasofExpertise Areas={Areas} />
<FunctionalAreas functionarea={functionarea} />
<Industries industry={industry} />
<HomeBlog data={blogData}/>
<div className="ptb-100 bg-fafafa">
<PartnerSlider Clientel={Clientel} />
</div>
<CallBackRequest />
</>
);
}
export async function getServerSideProps() {
try {
const query1 = {
populate: [
"Banner.Mobilebanner",
"Banner.BackgroundBanner",
"Banner.Desktopbanner",
"Banner.CTA",
"Knowledgeshack.Image",
"KnowledgeTab",
"KnowledgeTab.CTA",
"People.Image",
"People.peoplelist",
"whatwedo.Image",
"whatwedo.CTA",
"AreasofExpertise.Image",
"FunctionalAreas.Icon",
"Industry.Image",
"Industry.CTA",
"Clientel.logos",
"seo",
"seo.metaImage",
"seo.schema",
],
};
const query1String = qs.stringify(query1, {
encodeValuesOnly: true,
});
const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/home?${query1String}`;
console.log(`Final url: ${endpoint1}`);
const response1 = await axios.get(endpoint1);
const homepage = response1.data.data;
return {
props: { homepage },
};
} catch (error) {
console.log("Error", error);
}
}