پرتوپرتو

نوار نرخ تعامل

کامپوننت ساده نمایش نرخ تعامل (بدون کارت دسته‌بندی)

معرفی

کامپوننت نوار نرخ تعامل (Engagement Rate Bar) یک نسخه ساده‌تر و فشرده‌تر از کامپوننت EngagementRate است که فقط شامل:

  • نمایش نرخ تعامل به صورت درصد با Badge رنگی
  • نوار پیشرفت تقسیم‌بندی شده با 6 سطح
  • مثلث شاخص برای نمایش موقعیت دقیق

این کامپوننت برای نمایش در فضاهای محدود (کارت‌ها، هدرها، داشبوردها) مناسب است و بخش کارت اطلاعات دسته‌بندی را ندارد.

استفاده پایه

۵.۷۱۰%
عالی
عالیضعیف

اندازه‌های مختلف نرخ تعامل

نرخ تعامل عالی (Nano Influencer)

۶.۵۰۰%
عالی
عالیضعیف

نرخ تعامل خوب (Micro Influencer)

۳.۵۰۰%
خیلی خوب
عالیضعیف

نرخ تعامل متوسط (Macro Influencer)

۱.۲۰۰%
خوب
عالیضعیف

نرخ تعامل ضعیف (Mega Influencer)

۰.۴۰۰%
متوسط
عالیضعیف

بدون متن راهنما

می‌توانید متن راهنمای "عالی" و "ضعیف" را مخفی کنید:

۴.۵۰۰%
عالی

چند زبانه

انگلیسی

5.710%
Excellent
LowExcellent

Props

EngagementRateBar

Prop

Type

موارد استفاده

نمایش در کارت

import { EngagementRateBar, Card, CardHeader, CardTitle, CardContent } from "@parto-system-design/ui";

export function ProfileCard() {
  return (
    <Card>
      <CardHeader>
        <CardTitle>نرخ تعامل</CardTitle>
      </CardHeader>
      <CardContent>
        <EngagementRateBar currentRate={0.0571} followers={7864554} locale="fa" />
      </CardContent>
    </Card>
  );
}

نمایش در هدر

import { EngagementRateBar } from "@parto-system-design/ui";

export function PageHeader() {
  return (
    <div className="flex items-center justify-between">
      <h1>داشبورد</h1>
      <div className="w-64">
        <EngagementRateBar
          currentRate={0.045}
          followers={125000}
          locale="fa"
          showHelperText={false}
        />
      </div>
    </div>
  );
}

لیست اینفلوئنسرها

import { EngagementRateBar } from "@parto-system-design/ui";

const influencers = [
  { name: "محسن یگانه", rate: 0.065, followers: 7864554 },
  { name: "علی احمدی", rate: 0.042, followers: 250000 },
  { name: "سارا محمدی", rate: 0.038, followers: 95000 },
];

export default function InfluencerList() {
  return (
    <div className="space-y-6" dir="rtl">
      {influencers.map((influencer) => (
        <div key={influencer.name} className="space-y-2">
          <h3 className="text-lg font-semibold">{influencer.name}</h3>
          <EngagementRateBar
            currentRate={influencer.rate}
            followers={influencer.followers}
            locale="fa"
          />
        </div>
      ))}
    </div>
  );
}

مقایسه نرخ‌ها

import { EngagementRateBar } from "@parto-system-design/ui";

export function CompareRates() {
  return (
    <div className="grid grid-cols-1 md:grid-cols-2 gap-6">
      <div>
        <h3>ماه جاری</h3>
        <EngagementRateBar currentRate={0.0571} followers={7864554} locale="fa" />
      </div>
      <div>
        <h3>ماه گذشته</h3>
        <EngagementRateBar currentRate={0.0489} followers={7750000} locale="fa" />
      </div>
    </div>
  );
}

تفاوت با EngagementRate

ویژگیEngagementRateEngagementRateBar
نمایش نرخ و Badge
نوار پیشرفت
مثلث شاخص
کارت دسته‌بندی
آیکون دسته
لیست معیارها
مناسب برایصفحات جزئیاتکارت‌ها و فضای محدود

ویژگی‌های کلیدی

  • فشرده: نمایش ساده و مینیمال
  • الگوریتم دقیق: همان استاندارد صنعت EngagementRate
  • سریع: بدون بخش اضافی، سبک‌تر و سریع‌تر
  • انعطاف‌پذیر: قابل استفاده در هر فضای محدود
  • چند زبانه: پشتیبانی از فارسی، عربی و انگلیسی
  • RTL: پشتیبانی کامل از راست به چپ
  • واکنش‌گرا: طراحی Responsive
  • اعداد محلی: تبدیل خودکار اعداد

نکات مهم

  • نرخ تعامل باید به صورت عدد اعشاری وارد شود (مثلاً 0.0571 برای 5.71%)
  • کامپوننت از همان الگوریتم EngagementRate استفاده می‌کند
  • برای نمایش جزئیات کامل، از EngagementRate استفاده کنید
  • برای فضاهای محدود و کارت‌ها، این کامپوننت بهینه است