Flip Button Demo

PreviousNext

Demo showing a flip button.

Docs
animate-uiui

Preview

Loading preview…
registry/demo/components/buttons/flip/index.tsx
import { PlusIcon } from 'lucide-react';
import {
  FlipButton,
  FlipButtonBack,
  FlipButtonFront,
  type FlipButtonProps,
} from '@/components/animate-ui/components/buttons/flip';

interface ButtonDemoProps {
  frontVariant: FlipButtonProps['variant'];
  frontSize: FlipButtonProps['size'];
  backVariant: FlipButtonProps['variant'];
  backSize: FlipButtonProps['size'];
}

export default function ButtonDemo({
  frontVariant,
  frontSize,
  backVariant,
  backSize,
}: ButtonDemoProps) {
  return (
    <FlipButton>
      <FlipButtonFront variant={frontVariant} size={frontSize}>
        {frontSize === 'icon' ? <PlusIcon /> : 'Front Button'}
      </FlipButtonFront>
      <FlipButtonBack variant={backVariant} size={backSize}>
        {backSize === 'icon' ? <PlusIcon /> : 'Back Button'}
      </FlipButtonBack>
    </FlipButton>
  );
}

Installation

npx shadcn@latest add @animate-ui/demo-components-buttons-flip

Usage

import { DemoComponentsButtonsFlip } from "@/components/ui/demo-components-buttons-flip"
<DemoComponentsButtonsFlip />