پرتوپرتو

پیام متنی (Callout)

بلوک اطلاع‌رسانی برای نمایش پیام‌های اطلاعاتی، هشدار، خطا و موفقیت

معرفی

کامپوننت Callout برای نمایش پیام‌های متنی در سطح صفحه استفاده می‌شود. برخلاف Alert که بیشتر برای هشدارهای کوتاه است، Callout برای بلوک‌های اطلاعاتی بزرگ‌تر با عنوان و توضیحات مناسب است.

چه زمانی استفاده نکنیم:

  • برای اعلان‌های گذرا (transient) — از Sonner (toast) استفاده کنید
  • برای خطاهای داخل فرم — از FormMessage استفاده کنید
  • برای خطاهای سطح صفحه که نیاز به اقدام دارند — از Alert استفاده کنید

راهنما

برای مشاهده گزارش کامل اینفلوئنسرها، فیلترهای مورد نظر خود را اعمال کنید.

عملیات موفق

گزارش تحلیل احساسات با موفقیت ایجاد شد.

یادداشت

این بخش در نسخه آزمایشی است و ممکن است تغییر کند.

استفاده

import { Callout, CalloutTitle, CalloutDescription } from '@parto-system-design/ui'
<Callout>
  <CalloutTitle>توجه</CalloutTitle>
  <CalloutDescription>این یک پیام اطلاعاتی است.</CalloutDescription>
</Callout>

مثال‌ها

انواع مختلف

<div className="flex flex-col gap-4">
  <Callout variant="info">
    <CalloutTitle>اطلاعات</CalloutTitle>
    <CalloutDescription>این قابلیت به‌زودی فعال خواهد شد.</CalloutDescription>
  </Callout>

  <Callout variant="warning">
    <CalloutTitle>هشدار</CalloutTitle>
    <CalloutDescription>اعتبار حساب شما رو به اتمام است.</CalloutDescription>
  </Callout>

  <Callout variant="destructive">
    <CalloutTitle>خطا</CalloutTitle>
    <CalloutDescription>ارتباط با سرور قطع شده است.</CalloutDescription>
  </Callout>

  <Callout variant="success">
    <CalloutTitle>موفقیت</CalloutTitle>
    <CalloutDescription>تغییرات با موفقیت ذخیره شد.</CalloutDescription>
  </Callout>

  <Callout variant="neutral">
    <CalloutTitle>یادداشت</CalloutTitle>
    <CalloutDescription>این بخش در حال بروزرسانی است.</CalloutDescription>
  </Callout>
</div>

بدون آیکون

<Callout variant="info" icon={null}>
  این پیام بدون آیکون نمایش داده می‌شود.
</Callout>

با آیکون سفارشی

import { RocketIcon } from 'lucide-react'
;<Callout variant="info" icon={<RocketIcon className="size-5" />}>
  <CalloutTitle>قابلیت جدید</CalloutTitle>
  <CalloutDescription>نسخه جدید با امکانات بیشتر منتشر شد.</CalloutDescription>
</Callout>

متن ساده بدون عنوان

<Callout variant="warning">لطفاً قبل از خروج تغییرات خود را ذخیره کنید.</Callout>

Props

Callout

Prop

Type

CalloutTitle

Prop

Type

CalloutDescription

Prop

Type

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

  • حالت‌های destructive و warning دارای role="alert" هستند
  • سایر حالت‌ها دارای role="note" هستند
  • آیکون‌ها دارای aria-hidden="true" هستند

راهنمای استفاده

بکنید

  • از Callout برای بلوک‌های اطلاعاتی که کاربر باید قبل از ادامه بخواند استفاده کنید - variant مناسب را انتخاب کنید — info برای اطلاعات، warning برای هشدار، destructive برای خطا - از CalloutTitle و CalloutDescription برای ساختاردهی بهتر پیام استفاده کنید

نکنید

  • از Callout برای پیام‌های گذرا (مثل «ذخیره شد») استفاده نکنید — از Sonner استفاده کنید - بیش از ۲-۳ Callout در یک صفحه قرار ندهید — اهمیت پیام‌ها کاهش می‌یابد

کامپوننت‌های مرتبط

  • Alert — اگر نیاز به پیام کوتاه و فشرده با اقدام فوری دارید، نه بلوک اطلاعاتی بلند
  • Sonner — اگر نیاز به اعلان گذرا دارید که خودکار ناپدید شود