پرتوپرتو

تقویم (Calendar)

کامپوننت پایه تقویم با پشتیبانی از تقویم شمسی و میلادی

معرفی

کامپوننت Calendar یک تقویم پایه است که از تقویم شمسی (جلالی) و میلادی پشتیبانی می‌کند. این کامپوننت به‌طور مستقل یا به‌عنوان بخشی از DatePicker استفاده می‌شود.

توجه: برای اکثر موارد استفاده در فرم‌ها، کامپوننت Date Picker که لایه‌ای بر روی Calendar است، پیشنهاد می‌شود.

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

  • وقتی کاربر باید تاریخ تایپ کند — از DatePicker استفاده کنید
  • برای نمایش رویدادها — Calendar فقط انتخاب تاریخ است، نه تقویم رویداد
خرداد ۱۴۰۵

زمین بازی

با تغییر تنظیمات زیر، پیش‌نمایش زنده را مشاهده کنید.

زمین بازی
June 2026
تنظیمات
ظاهر
کد این نمونه به‌صورت خودکار قابل تولید نیست — برای کد آماده‌ی copy/paste به بخش «استفاده» در بالای صفحه مراجعه کنید.

استفاده

import { Calendar } from '@parto-system-design/ui'
import { useState } from 'react'

export default function MyComponent() {
  const [selected, setSelected] = useState<Date>()

  return <Calendar mode="single" selected={selected} onSelect={setSelected} />
}

حالت‌ها و انواع

تقویم شمسی

خرداد ۱۴۰۵

تقویم میلادی

<Calendar mode="single" usePersianCalendar={false} />

انتخاب محدوده

<Calendar mode="range" usePersianCalendar />

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

بکنید

  • از Calendar زمانی استفاده کنید که نیاز به نمایش تقویم به‌صورت inline (بدون popover) دارید - برای تقویم شمسی، usePersianCalendar={true} را فعال کنید - از mode="range" برای انتخاب بازه تاریخی استفاده کنید

نکنید

  • برای انتخاب تاریخ در فرم‌ها از Calendar مستقیماً استفاده نکنید — از DatePicker که لایه‌ای بر روی Calendar است استفاده کنید - Calendar را برای نمایش رویدادها استفاده نکنید — این کامپوننت فقط برای انتخاب تاریخ طراحی شده است - بدون تعیین mode از Calendar استفاده نکنید

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

Prop

Type

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

  • پیمایش کامل با کیبورد (Arrow keys، Enter، Escape)
  • aria-selected برای روز انتخاب‌شده
  • aria-disabled برای روزهای غیرفعال
  • ساختار شبکه روزها با role="gridcell"

مرتبط

  • Date Picker — کامپوننت کامل انتخاب بازه تاریخ (پیشنهادی)
  • Popover — برای قرار دادن Calendar داخل popup
  • Form — برای استفاده در فرم‌ها با اعتبارسنجی

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

  • DatePicker — اگر نیاز به انتخاب تاریخ در فرم با input field و popover دارید، از DatePicker استفاده کنید
  • DateRangePicker — اگر نیاز به انتخاب بازه تاریخی با label و امکانات بیشتر دارید، از DateRangePicker استفاده کنید
  • PeriodSelector — اگر فقط نیاز به دوره‌های از پیش تعریف‌شده دارید (۷ روز، ۳۰ روز)، PeriodSelector ساده‌تر است