Spaces:
Build error
Build error
File size: 1,415 Bytes
75fefa7 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
import { AnimatePresence, motion } from "motion/react";
import AnimatedWidth from "@/components/shared/layout/animated-width";
import ArrowRight from "@/components/app/(home)/sections/hero-input/_svg/ArrowRight";
import Button from "@/components/shared/button/Button";
export default function HeroInputSubmitButton({
dirty,
buttonText = "Re-imagine Site",
disabled = false,
}: {
dirty: boolean;
buttonText?: string;
disabled?: boolean;
}) {
return (
<Button
className={`hero-input-button !p-0 ${disabled ? 'bg-gray-400 hover:bg-gray-400 cursor-wait' : 'bg-heat-100 hover:bg-heat-200'}`}
size="large"
variant="primary"
disabled={disabled}
>
<AnimatedWidth>
<AnimatePresence initial={false} mode="popLayout">
<motion.div
animate={{ opacity: 1, x: 0, filter: "blur(0px)" }}
exit={{ opacity: 0, x: -10, filter: "blur(2px)" }}
initial={{ opacity: 0, x: 10, filter: "blur(2px)" }}
key={dirty ? "dirty" : "clean"}
>
{dirty ? (
<div className="py-8 w-126 text-center text-white">
{buttonText}
</div>
) : (
<div className="w-60 py-8 flex-center">
<ArrowRight />
</div>
)}
</motion.div>
</AnimatePresence>
</AnimatedWidth>
</Button>
);
}
|