TaavUI Lab
Components

card

کامپوننت اصلی کارت ناوبری برای ورود به ماژول‌ها و مراحل راه‌اندازی در تم روشن.

import { TaavModuleCard } from "@repo/ui/taav/business";

کامپوننت اصلی

فقط از props رسمی TaavUI استفاده کنید. unsafeClassName و escape hatchهای مشابه فقط برای موارد نادر هستند و نباید در مثال‌های عادی دیده شوند.

ساختار استاندارد

<TaavModuleCard
  title="پروفایل کسب‌وکار"
  description="ورود اطلاعات پایه کسب‌وکار برای تنظیم قراردادها"
  href="#module-profile"
  themeMode="light"
/>

گرید کارت

import { TaavModuleCard, TaavModuleCardGrid, TaavModuleCardGridItem } from "@repo/ui/taav/business";

<TaavModuleCardGrid columns={2} gap="md">
  <TaavModuleCardGridItem>
    <TaavModuleCard title="نماینده قانونی" description="مدیریت و تنظیم قراردادها" themeMode="light" />
  </TaavModuleCardGridItem>
  <TaavModuleCardGridItem>
    <TaavModuleCard title="شرکای اصلی" description="مدیریت اطلاعات مرتبط با کسب‌وکار" themeMode="light" />
  </TaavModuleCardGridItem>
</TaavModuleCardGrid>

Props — Grid

Propنوعپیش‌فرضتوضیح
columns1 | 2 | 3 | 42تعداد ستون دسکتاپ — پیش‌فرض دو ستونه مانند ERP
gap'sm' | 'md' | 'lg' | 'xl'mdفاصله بین کارت‌ها
density'compact' | 'comfortable' | 'spacious'comfortableتراکم فاصله‌گذاری
responsivebooleantrueدر موبایل تک‌ستونه شود
children*ReactNodeکارت‌ها — ترجیحاً داخل TaavModuleCardGridItem

Props — Grid Item

Propنوعپیش‌فرضتوضیح
span1 | 2 | 3 | 41پوشش چند ستون — برای کارت full-width
responsivebooleantruespan واکنش‌گرا در breakpointهای کوچک

Props

Propنوعپیش‌فرضتوضیح
title*ReactNodeعنوان ماژول یا بخش تنظیمات (RTL، راست‌چین در هدر)
descriptionReactNodeتوضیح کوتاه زیر هدر — می‌تواند شامل وضعیت مثل «(تکمیل نشده)» باشد
eyebrowReactNodeمتن کمکی بالای توضیح
status'default' | 'active' | 'complete' | 'incomplete' | 'locked' | 'disabled' | 'warning' | 'error'defaultوضعیت بصری — از اپ پاس داده می‌شود
statusLabelReactNodeبرچسب وضعیت جداگانه (اختیاری)
icon / arrowIconReactNodeآیکون سفارشی بدنه یا فلش هدر
hrefstringلینک navigation — بدون وابستگی به Next.js Link
onClick() => voidhandler کلیک — در صورت نبود href، دکمه رندر می‌شود
disabled / loading / selectedbooleanحالت‌های تعاملی
variant'default' | 'setup' | 'imageHeader' | 'compact' | 'flat'setupالگوی بصری کارت
tone'neutral' | 'brand' | 'success' | 'warning' | 'danger' | 'info'neutralتن رنگ هدر/مرز
themeMode'auto' | 'light' | 'dark'autoتم اجباری کارت یا همگام با shell
size'sm' | 'md' | 'lg'mdاندازه تایپوگرافی و padding
width'auto' | 'full'autoعرض کارت داخل گرید
headerPattern'geometric' | 'subtle' | 'none'geometricالگوی CSS هدر — بدون asset تصویری
align'start' | 'center' | 'end'startتراز متن بدنه — پیش‌فرض راست‌چین RTL
direction'enter' | 'back'enterجهت فلش هدر (RTL)
ariaLabelstringبرچسب دسترس‌پذیری در صورت ناکافی بودن title/description

دسترسی‌پذیری

راهنمای استفاده در DastRanj / VahedYek

  • برای کارت قابل کلیک از href یا onClick استفاده کنید تا تعامل صفحه‌کلید حفظ شود.
  • عنوان و توضیح باید مسیر یا هدف کارت را به‌صورت روشن بیان کنند.
  • برای هر کارت یک عنوان معنادار و یکتا در نظر بگیرید.