diff --git a/eslint.config.js b/eslint.config.js index b8b8b7d..d89d552 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -5,7 +5,7 @@ import reactRefresh from "eslint-plugin-react-refresh"; import { defineConfig, globalIgnores } from "eslint/config"; export default defineConfig([ - globalIgnores(["dist"]), + globalIgnores(["dist", "coverage"]), { files: ["**/*.{js,jsx}"], extends: [ diff --git a/src/components/SEO.jsx b/src/components/SEO.jsx index dc7a651..af73b86 100644 --- a/src/components/SEO.jsx +++ b/src/components/SEO.jsx @@ -60,4 +60,5 @@ SEO.propTypes = { ogType: PropTypes.string, }; +export { SEO }; export default SEO; diff --git a/src/components/layout/Navbar.jsx b/src/components/layout/Navbar.jsx index cf9ba67..ac65c8f 100644 --- a/src/components/layout/Navbar.jsx +++ b/src/components/layout/Navbar.jsx @@ -112,7 +112,7 @@ export const Navbar = React.forwardRef( ref={combinedRef} style={{ colorScheme: "only light" }} className={cn( - "sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur @supports-[backdrop-filter]:bg-background/60 px-4 md:px-6 [&_*]:no-underline", + "sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur @supports-[backdrop-filter]:bg-background/60 px-4 md:px-6 **:no-underline", className )} {...props} @@ -138,8 +138,11 @@ export const Navbar = React.forwardRef( - {navigationLinks.map((link, index) => ( - + {navigationLinks.map((link) => ( + - {navigationLinks.map((link, index) => ( - + {navigationLinks.map((link) => ( + ({ + carouselRef, + api: api, + opts, + orientation: + orientation || (opts?.axis === "y" ? "vertical" : "horizontal"), + scrollPrev, + scrollNext, + canScrollPrev, + canScrollNext, + }), + [ + carouselRef, + api, + opts, + orientation, + scrollPrev, + scrollNext, + canScrollPrev, + canScrollNext, + ] + ); + return ( - -
+
{children} -
+
); } @@ -134,7 +146,6 @@ function CarouselItem({ className, ...props }) { return (
{ + const contextValue = React.useMemo( + () => ({ name: props.name }), + [props.name] + ); + return ( - + ); @@ -51,9 +56,10 @@ const FormItemContext = React.createContext({}); function FormItem({ className, ...props }) { const id = React.useId(); + const contextValue = React.useMemo(() => ({ id }), [id]); return ( - +
{ @@ -44,10 +44,10 @@ const FAQPage = () => { collapsible className="border rounded-lg px-4" > - {category.questions.map((item, index) => ( + {category.questions.map((item) => ( {item.question} @@ -78,9 +78,9 @@ const FAQPage = () => {
- {mythsAndFacts.map((item, index) => ( + {mythsAndFacts.map((item) => (
diff --git a/src/pages/HomePage.jsx b/src/pages/HomePage.jsx index c541062..8b7e3a7 100644 --- a/src/pages/HomePage.jsx +++ b/src/pages/HomePage.jsx @@ -2,7 +2,7 @@ import { Link } from "react-router-dom"; import { Button } from "@/components/ui/Button"; import { Badge } from "@/components/ui/Badge"; import { CTASection } from "@/components/ui/CTASection"; -import SEO from "@/components/SEO"; +import { SEO } from "@/components/SEO"; import { Award, Users, ThermometerSun } from "lucide-react"; const heroImage = new URL("/hero-work.jpg", import.meta.url).href; diff --git a/src/pages/NotFoundPage.jsx b/src/pages/NotFoundPage.jsx index c30d8da..5223d5a 100644 --- a/src/pages/NotFoundPage.jsx +++ b/src/pages/NotFoundPage.jsx @@ -1,7 +1,7 @@ import { Link } from "react-router-dom"; import { Button } from "@/components/ui/Button"; import { BarsScaleFadeIcon } from "@/components/ui/icons/BarsScaleFadeIcon"; -import SEO from "@/components/SEO"; +import { SEO } from "@/components/SEO"; import { useEffect, useState } from "react"; const NotFoundPage = () => { @@ -10,7 +10,7 @@ const NotFoundPage = () => { useEffect(() => { if (count <= 0) { - window.location.replace(basename); + globalThis.location.replace(basename); return; } diff --git a/src/pages/PortfolioPage.jsx b/src/pages/PortfolioPage.jsx index 915fe92..e014300 100644 --- a/src/pages/PortfolioPage.jsx +++ b/src/pages/PortfolioPage.jsx @@ -9,7 +9,7 @@ import { import { CTASection } from "@/components/ui/CTASection"; import Lightbox from "@/components/portfolio/Lightbox"; import SocialLinks from "@/components/portfolio/SocialLinks"; -import SEO from "@/components/SEO"; +import { SEO } from "@/components/SEO"; import { portfolioImages } from "@/data/portfolioImages"; const PortfolioPage = () => { @@ -86,9 +86,9 @@ const PortfolioPage = () => { {/* Dot indicators */}
- {portfolioImages.map((_, index) => ( + {portfolioImages.map((project, index) => (