دکمه‌ی سه‌حالته

morph-buttonانیمیشن

یک دکمه با سه حالت عادی، در حال انجام و انجام شد، که حالت‌ها درجا محو میشن و عرضش نمی‌پره.

نصب

  1. با CLI

    اگر هنوز init نکردید، اول از راهنمای نصب پروژه را آماده کنید. بعد این دستور کامپوننت و وابستگی‌هاش را می‌نویسه.

    $ npx vibefarsi add morph-button
  2. نصب دستی

    محتوای تب «کد» را در components/animations/morph-button.tsx بگذارید.

    $ npm i lucide-react
    کپی کل فایلregistry json

استفاده

usage.tsx
1import { MorphButton } from "@/components/animations/morph-button"23<MorphButton onAction={() => subscribe(email)} loadingText="در حال ثبت…" doneText="ثبت شد">خبرم کن</MorphButton>

پراپ‌ها

پراپنوعپیش‌فرضتوضیح
onAction() => Promise<unknown> | void-تا resolve بشه، حالت «در حال انجام» می‌مونه.
loadingText / doneTextstring-متن دو حالت بعدی.
resetAfternumber2200میلی‌ثانیه تا برگشت به حالت عادی. صفر یعنی هرگز.