Files
8b3cbda1-59fd-43c1-8129-8b0…/src/components/shared/OverlayArrowButton.tsx
Nikolay Pecheniev b840c35fd8 Initial commit
2025-12-26 11:58:33 +02:00

32 lines
895 B
TypeScript

"use client";
import { memo } from "react";
import { ArrowUpRight } from "lucide-react";
import { cls } from "@/lib/utils";
interface OverlayArrowButtonProps {
ariaLabel?: string;
className?: string;
}
const OverlayArrowButton = memo(({
ariaLabel = "View details",
className = "",
}: OverlayArrowButtonProps) => {
return (
<div
className={cls(
"!absolute z-1 top-4 right-4 cursor-pointer card h-8 w-auto aspect-square rounded-theme flex items-center justify-center flex-shrink-0",
className
)}
aria-label={ariaLabel}
>
<ArrowUpRight className="relative z-1 h-4/10 text-foreground transition-transform duration-300 group-hover:rotate-45" strokeWidth={1.5} />
</div>
);
});
OverlayArrowButton.displayName = "OverlayArrowButton";
export default OverlayArrowButton;