نشان — Badge
نشان یک برچسب کوچک است که دو کار دارد: نمایش وضعیت (تأیید شده، در انتظار، رد شده) با آیکون و متن، یا نمایش شمارنده (تعداد اعلان یا پیام). وضعیتهای کپی کد، کپی کد، کپی کد و کپی کد همیشه آیکون و برچسب متنی دارند تا رنگ تنها نشانه نباشد. نشان غیرتعاملی است و برای کنش قابلکلیک از دکمه استفاده کنید.
وضعیت: beta · لایه: ۳ (کپی کد) · کد: کپی کد
import { Badge } from '@tokapps/tuk';نمونهٔ زنده
کد قابل کپی
پایه: وضعیتها
import { Badge } from '@tokapps/tuk';export function ReviewStatuses() { return ( <> <Badge status="success">تأیید شد</Badge> <Badge status="danger">رد شد</Badge> <Badge status="warning">در انتظار بررسی</Badge> <Badge status="info">پیشنویس</Badge> </> );}پیشرفته: شمارنده با سقف و متن صفحهخوان
import { Badge } from '@tokapps/tuk';export function NotificationCount({ unread }: { unread: number }) { return ( <Badge status="accent" count={unread} max={99} label="اعلان خواندهنشده" showZero /> );}کپی کد برابر کپی کد باشد، روی صفحه «۹۹+» و برای صفحهخوان «۲۵۰ اعلان خواندهنشده» خوانده میشود.
حالت خطا: وضعیت danger با متن سفارشی
در کد حالت خطا یا غیرفعال جداگانهای برای نشان تعریف نشده است؛ نمونهٔ زیر وضعیت خطا را با متن دلخواه نشان میدهد.
import { Badge } from '@tokapps/tuk';export function PaymentFailed() { return ( <Badge status="danger" size="sm"> تراکنش ناموفق بود </Badge> );}همهٔ پیکربندیها
| پراپ | نوع | پیشفرض | توضیح |
|---|---|---|---|
| کپی کد | کپی کد · کپی کد · کپی کد · کپی کد · کپی کد · کپی کد | کپی کد | کپی کد و کپی کد برچسب سادهاند؛ بقیه وضعیتاند و آیکون و برچسب دارند. |
| کپی کد | کپی کد · کپی کد | کپی کد | ارتفاع و فاصلهٔ داخلی از توکنهای کپی کد. |
| کپی کد | کپی کد | — | متن برچسب. اگر داده نشود، برای وضعیتها برچسب پیشفرض میآید: کپی کد «موفق»، کپی کد «خطا»، کپی کد «هشدار»، کپی کد «اطلاعات». |
| کپی کد | کپی کد · کپی کد | — | آیکون سفارشی. کپی کد آیکون را حذف میکند (ر.ک. نکات). |
| کپی کد | کپی کد | — | حالت شمارنده. عدد با ارقام فارسی نمایش داده میشود و آیکون ندارد. |
| کپی کد | کپی کد | کپی کد | سقف شمارنده؛ بیشتر از آن «۹۹+» نمایش داده میشود. |
| کپی کد | کپی کد | کپی کد | نمایش شمارندهٔ صفر. بدون آن، شمارندهٔ صفر یا کمتر نمایش داده نمیشود. |
| کپی کد | کپی کد | — | متن صفحهخوان برای شمارنده، مثلاً «اعلان خواندهنشده». |
| کپی کد | کپی کد · کپی کد | کپی کد | کپی کد نشان را در چاپ پنهان میکند. |
| کپی کد | کپی کد | — | کلاس روی ریشه. |
| سایر ویژگیها | کپی کد | — | روی ریشهٔ کپی کد اعمال میشوند. |
ساختار و اسلاتها
Badge (span) data-tds="badge" data-status data-size data-kind="status" | "count" data-print├─ حالت وضعیت│ ├─ span «آیکون» data-part="icon" (در صورت وجود)│ └─ span «برچسب» data-part="label"└─ حالت شمارنده ├─ bdi «عدد» data-part="count" aria-hidden (وقتی label داده شده) └─ span «متن صفحهخوان» data-tds="visually-hidden" (وقتی label داده شده)بخش ثابت: ریشهٔ کپی کد، جفت کپی کد و کپی کد در حالت وضعیت، و کپی کد برای عدد در حالت شمارنده. بخش قابلتغییر: کپی کد، کپی کد، کپی کد و توکنهای کپی کد.
همهٔ حالتها
| حالت | نشانه | نمایش |
|---|---|---|
| neutral | کپی کد | زمینهٔ کپی کد و متن کپی کد. |
| accent | کپی کد | زمینهٔ کپی کد و متن کپی کد. |
| success | کپی کد | آیکون و متن با رنگ موفقیت و زمینهٔ کپی کد. |
| danger | کپی کد | آیکون و متن با رنگ خطا و زمینهٔ کپی کد. |
| warning | کپی کد | آیکون و متن با رنگ هشدار و زمینهٔ کپی کد. |
| info | کپی کد | آیکون و متن با رنگ اطلاعات و زمینهٔ کپی کد. |
| sm / md | کپی کد یا کپی کد | ارتفاع و فاصلهٔ داخلی کوچکتر یا استاندارد. |
| شمارنده | کپی کد | حداقل عرض و کپی کد. |
| شمارندهٔ صفر | بدون رندر (کپی کد) | پنهان، مگر کپی کد فعال باشد. |
| سقف شمارنده | عدد بیشتر از کپی کد | نمایش «۹۹+» (با کپی کد پیشفرض). |
| چاپ پنهان | کپی کد | نشان در چاپ پنهان. |
hover و focus ندارد، چون غیرتعاملی است. در کد حالت بارگذاری (کپی کد) تعریف نشده است.
تغییرات مجاز برای توسعهدهنده
- وضعیت: کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد.
- اندازه: کپی کد یا کپی کد.
- حالت: وضعیت (با کپی کد و کپی کد) یا شمارنده (با کپی کد).
- شمارنده: کپی کد، کپی کد، کپی کد.
- آیکون: پیشفرض آیکون وضعیت، آیکون سفارشی با کپی کد، یا حذف با کپی کد.
- چاپ: کپی کد یا کپی کد.
- نقاط توسعه: کپی کد؛ توکنهای سطح کامپوننت کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد؛ پیامهای برچسب پیشفرض وضعیت (در کد ثابتاند و از طریق کپی کد قابل بازنویسیاند).
- variant: مقادیر کپی کد همان variantها هستند. در کد پراپ جدای کپی کد تعریف نشده است.
تغییرات ممنوع (بنیان ثابت)
- وضعیتهای کپی کد، کپی کد، کپی کد و کپی کد باید همیشه متن داشته باشند؛ حذف متن یا آیکون بهتنهایی باعث میشود رنگ تنها نشانه شود.
- نشان نباید تعاملی شود (کپی کد یا کپی کد روی آن) مگر با کامپوننت دکمه.
- عدد شمارنده باید داخل کپی کد بماند تا جهت متن اطراف نشکند.
- ساختار کپی کد و کپی کد ثابت است.
- رنگ خام یا گرادیان مجاز نیست؛ فقط توکنهای معنایی وضعیت.
RTL، کیبورد و صفحهخوان
- در RTL فاصلهها منطقیاند و آیکون قبل از متن نمایش داده میشود. عدد شمارنده با کپی کد ایزوله است.
- کیبورد: نشان فوکوس نمیگیرد و کپی کد از آن رد میشود.
- صفحهخوان: متن برچسب خوانده میشود. برای شمارنده، کپی کد بدهید تا «۳ اعلان خواندهنشده» گفته شود؛ بدون کپی کد فقط عدد خوانده میشود.
- وضعیت با متن خوانده میشود، نه با رنگ.
صدا، حرکت، چاپ و کاهش حرکت
- صدا: در کد پراپ کپی کد تعریف نشده و کامپوننت بیصداست. معادل بصری: متن و آیکون.
- حرکت: ندارد (کپی کد). در کاهش حرکت تغییری لازم نیست.
- چاپ: پیشفرض کپی کد با رنگ تکرنگ (کپی کد)؛ آیکون و متن در چاپ سیاهوسفید هم وضعیت را میرسانند؛ کپی کد.
توکنها
- معنایی: کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد.
- کامپوننتی: کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد، کپی کد.
- تایپوگرافی: کپی کد، کپی کد.
- فایل توکن: کپی کد؛ فهرست مصرفی در کپی کد.
قرارداد ARCH
- آیکون وضعیت از طریق کامپوننت کپی کد با نام معنایی وضعیت (خطا، موفق، هشدار، اطلاعات) رسم میشود؛ مسیر فایل آیکون مستند نمیشود.
- تم فقط توکنها را تغییر میدهد؛ ساختار DOM و ARIA ثابت است.
- Gesture ندارد.
نکات
- کپی کد در نوع پراپ فقط برای کپی کد و کپی کد مستند شده، اما در پیادهسازی فعلی آیکون وضعیت را برای همهٔ وضعیتها حذف میکند. تا رفع این اختلاف، از کپی کد روی وضعیتهای کپی کد، کپی کد، کپی کد و کپی کد استفاده نکنید.
- برای پیام کامل یا توضیح وضعیت از هشدار استفاده کنید.
- برای کنش قابلکلیک از دکمه استفاده کنید، نه نشان.
- برای نمایش مراحل یک فرایند زمانی، از خط زمانی استفاده کنید.