import { useState } from "react"; import { Button } from "../components/button"; import { useIsClosing } from "../hooks"; import clsx from "clsx"; import { StoryFn } from "@storybook/react-vite"; export default { title: "Styles/Animation", // @ts-ignore decorators: [(Story: StoryFn) => ], }; export const Basic = () => { const [isOpen, setIsOpen] = useState(false); return (
{isOpen && (
Modal
)}
); }; export const InOut = () => { const { isOpen, isClosing, setIsOpen } = useIsClosing(false); const classNames = clsx([ "shadow-xl w-[300px] h-[300px]", "origin-top-left", "flex-center", isClosing ? "motion-safe:animate-fade-out" : "motion-safe:animate-fade-in", ]); return (
{isOpen &&
Modal
}
); };