diff --git a/src/app/contact/page.tsx b/src/app/contact/page.tsx index 3d195d9..a5c04f9 100644 --- a/src/app/contact/page.tsx +++ b/src/app/contact/page.tsx @@ -2,56 +2,10 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered"; -import HeroSplitKpi from "@/components/sections/hero/HeroSplitKpi"; -import FeatureCardOne from "@/components/sections/feature/FeatureCardOne"; -import ProductCardTwo from "@/components/sections/product/ProductCardTwo"; -import MetricCardSeven from "@/components/sections/metrics/MetricCardSeven"; -import TeamCardFive from "@/components/sections/team/TeamCardFive"; -import TestimonialCardTwo from "@/components/sections/testimonial/TestimonialCardTwo"; import ContactText from "@/components/sections/contact/ContactText"; import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal"; -import Link from "next/link"; -import { Sparkles, Zap, Award, CheckCircle, Briefcase, Star } from "lucide-react"; export default function ContactPage() { - const navItems = [ - { name: "Home", id: "/" }, - { name: "Services", id: "services" }, - { name: "Portfolio", id: "portfolio" }, - { name: "Career", id: "team" }, - { name: "Contact", id: "contact" }, - ]; - - const footerColumns = [ - { - title: "Product", - items: [ - { label: "Services", href: "/#services" }, - { label: "Portfolio", href: "/#portfolio" }, - { label: "Pricing", href: "#" }, - { label: "Documentation", href: "#" }, - ], - }, - { - title: "Company", - items: [ - { label: "About Us", href: "#" }, - { label: "Team", href: "/#team" }, - { label: "Careers", href: "/careers" }, - { label: "Blog", href: "#" }, - ], - }, - { - title: "Connect", - items: [ - { label: "Contact", href: "/#contact" }, - { label: "Twitter", href: "https://twitter.com" }, - { label: "LinkedIn", href: "https://linkedin.com" }, - { label: "GitHub", href: "https://github.com" }, - ], - }, - ]; - return ( -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
diff --git a/src/app/page.tsx b/src/app/page.tsx index ed67b78..8627619 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -46,7 +46,7 @@ export default function HomePage() { { + const svgRef = useRef(null); -interface SvgTextLogoProps { - logoText: string; - adjustHeightFactor?: number; - verticalAlign?: "top" | "center"; - className?: string; -} + useEffect(() => { + if (svgRef.current) { + const letters = text.split(''); + const radius = 80; + const cx = 100; + const cy = 100; -const SvgTextLogo = memo(function SvgTextLogo({ - logoText, - adjustHeightFactor, - verticalAlign = "top", - className = "", -}) { - const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor); + letters.forEach((letter, i) => { + const angle = (i / letters.length) * 2 * Math.PI - Math.PI / 2; + const x = cx + radius * Math.cos(angle); + const y = cy + radius * Math.sin(angle); + + const rotation = ((i / letters.length) * 360) + 90; + + const tspan = document.createElementNS('http://www.w3.org/2000/svg', 'text'); + tspan.setAttribute('x', x.toString()); + tspan.setAttribute('y', y.toString()); + tspan.setAttribute('transform', `rotate(${rotation} ${x} ${y})`); + tspan.setAttribute('text-anchor', 'middle'); + tspan.setAttribute('dominant-baseline', 'central'); + tspan.setAttribute('font-size', '16'); + tspan.setAttribute('font-weight', 'bold'); + tspan.setAttribute('fill', 'currentColor'); + tspan.textContent = letter; + + svgRef.current?.appendChild(tspan); + }); + } + + return () => { + if (svgRef.current) { + while (svgRef.current.firstChild) { + svgRef.current.removeChild(svgRef.current.firstChild); + } + } + }; + }, [text]); return ( - - {logoText} - - + width="200" + height="200" + viewBox="0 0 200 200" + className="text-current" + /> ); -}); - -SvgTextLogo.displayName = "SvgTextLogo"; +}; export default SvgTextLogo;