All changes, done like fully react router uses, services, al/ml and solution page section alignment and missing section done!
This commit is contained in:
@@ -12,9 +12,9 @@ import { GridPattern } from "./GridPattern";
|
||||
import { Button } from "./ui/button";
|
||||
import { Input } from "./ui/input";
|
||||
import BlackLogo14 from "../assets/BlackLogo14";
|
||||
import { navigateTo } from "../App";
|
||||
import { useState } from "react";
|
||||
import GlobalOffices from "./GlobalOffices";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
|
||||
const footerNavigation = {
|
||||
Explore: [
|
||||
@@ -179,10 +179,13 @@ const contactInfo = [
|
||||
icon: MapPin,
|
||||
label:
|
||||
"614, Palm Spring Centre, Link Road, Malad (West), Mumbai - 400064. India.",
|
||||
url: "#",
|
||||
url: "https://www.google.com/search?q=614%2C+Palm+Spring+Centre...",
|
||||
blank: true,
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
// FooterSection component with useNavigate inside
|
||||
const FooterSection = ({
|
||||
title,
|
||||
links,
|
||||
@@ -191,35 +194,39 @@ const FooterSection = ({
|
||||
title: string;
|
||||
links: Array<{ label: string; url: string }>;
|
||||
delay?: number;
|
||||
}) => (
|
||||
<motion.div
|
||||
initial={{ opacity: 0, y: 30 }}
|
||||
whileInView={{ opacity: 1, y: 0 }}
|
||||
transition={{ duration: 0.6, delay }}
|
||||
viewport={{ once: true }}
|
||||
className="space-y-4"
|
||||
>
|
||||
<h4 className="font-semibold text-white text-lg">
|
||||
{title}
|
||||
</h4>
|
||||
<ul className="space-y-3">
|
||||
{links.map((link) => (
|
||||
<li key={link.label}>
|
||||
<a
|
||||
href={link.url || '#'}
|
||||
onClick={(e) => {
|
||||
e.preventDefault();
|
||||
navigateTo(link.url);
|
||||
}}
|
||||
className="text-[#CCCCCC] hover:text-white transition-colors duration-200 text-sm block py-1 hover:translate-x-1 transform cursor-pointer"
|
||||
>
|
||||
{link.label}
|
||||
</a>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</motion.div>
|
||||
);
|
||||
}) => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
return (
|
||||
<motion.div
|
||||
initial={{ opacity: 0, y: 30 }}
|
||||
whileInView={{ opacity: 1, y: 0 }}
|
||||
transition={{ duration: 0.6, delay }}
|
||||
viewport={{ once: true }}
|
||||
className="space-y-4"
|
||||
>
|
||||
<h4 className="font-semibold text-white text-lg">
|
||||
{title}
|
||||
</h4>
|
||||
<ul className="space-y-3">
|
||||
{links.map((link) => (
|
||||
<li key={link.label}>
|
||||
<a
|
||||
href={link.url || '#'}
|
||||
onClick={(e) => {
|
||||
e.preventDefault();
|
||||
navigate(link.url);
|
||||
}}
|
||||
className="text-[#CCCCCC] hover:text-white transition-colors duration-200 text-sm block py-1 hover:translate-x-1 transform cursor-pointer"
|
||||
>
|
||||
{link.label}
|
||||
</a>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</motion.div>
|
||||
);
|
||||
};
|
||||
|
||||
// Newsletter subscription component
|
||||
const NewsletterSection = () => {
|
||||
@@ -356,6 +363,8 @@ export const Footer = () => {
|
||||
<a
|
||||
key={contact.label}
|
||||
href={contact.url}
|
||||
target={contact.blank ? "_blank" : "_self"}
|
||||
rel={contact.blank ? "noopener noreferrer" : undefined}
|
||||
className="flex items-start gap-3 text-[#CCCCCC] hover:text-white transition-colors duration-200"
|
||||
>
|
||||
<Icon className="w-4 h-4 text-[#E5195E] mt-0.5 flex-shrink-0" />
|
||||
@@ -376,6 +385,8 @@ export const Footer = () => {
|
||||
<a
|
||||
key={social.name}
|
||||
href={social.url}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="w-10 h-10 bg-white/5 rounded-lg flex items-center justify-center text-[#CCCCCC] hover:text-white hover:bg-[#E5195E]/20 transition-all duration-200"
|
||||
aria-label={social.name}
|
||||
>
|
||||
@@ -392,7 +403,7 @@ export const Footer = () => {
|
||||
links={footerNavigation.Explore}
|
||||
delay={0.1}
|
||||
/>
|
||||
|
||||
|
||||
{/* Combined Services & Company */}
|
||||
<div className="space-y-8">
|
||||
<FooterSection
|
||||
@@ -406,7 +417,7 @@ export const Footer = () => {
|
||||
delay={0.3}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
{/* Combined AI & ML with Resources */}
|
||||
<div className="space-y-8">
|
||||
<FooterSection
|
||||
@@ -420,13 +431,13 @@ export const Footer = () => {
|
||||
delay={0.5}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
<FooterSection
|
||||
title="Solutions"
|
||||
links={footerNavigation.Solutions}
|
||||
delay={0.6}
|
||||
/>
|
||||
|
||||
|
||||
<FooterSection
|
||||
title="Hire Talent"
|
||||
links={footerNavigation.HireTalent}
|
||||
|
||||
Reference in New Issue
Block a user