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:
priyanshuvish
2025-09-23 20:13:31 +05:30
parent 5f5ddb1cd6
commit e78c8672e9
158 changed files with 2444 additions and 2093 deletions

View File

@@ -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}