2025-10-27 15:44:34 +03:00
|
|
|
import React, { forwardRef } from "react";
|
|
|
|
|
import { cn } from "@/lib/utils";
|
|
|
|
|
|
|
|
|
|
type BlurredIconButtonProps = React.HTMLAttributes<HTMLDivElement>;
|
|
|
|
|
|
|
|
|
|
const BlurredIconButton = forwardRef<HTMLDivElement, BlurredIconButtonProps>(
|
|
|
|
|
({ className = "", children, ...rest }, ref) => {
|
|
|
|
|
return (
|
|
|
|
|
<div
|
|
|
|
|
ref={ref}
|
|
|
|
|
className={cn(
|
|
|
|
|
"group relative inline-flex items-center justify-center",
|
|
|
|
|
className,
|
|
|
|
|
)}
|
|
|
|
|
{...rest}
|
|
|
|
|
>
|
2026-05-31 06:35:03 +03:00
|
|
|
<div className="pointer-events-none absolute inset-0 m-auto size-5 scale-95 rounded-full bg-black opacity-30 blur-md transition-all duration-200 group-hover:scale-100 group-hover:opacity-100 group-hover:blur-xl" />
|
|
|
|
|
<div className="relative z-10 cursor-pointer text-white/85 drop-shadow-[0_1px_1px_rgba(0,0,0,0.9)] hover:text-white">
|
2025-10-27 15:44:34 +03:00
|
|
|
{children}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
BlurredIconButton.displayName = "BlurredIconButton";
|
|
|
|
|
|
|
|
|
|
export default BlurredIconButton;
|