انتقل إلى المحتوى

تقويم الأحداث

احصل على Ritla UI

شهر كامل بأحداثه كشرائح ملونة، أو قائمة بما هو قادم مجمّعة حسب اليوم.

المعاينة

«معكوس» هو المحتوى الإنجليزي نفسه من اليمين إلى اليسار، ليفصل خطأ الاتجاه عن خطأ الترجمة.

المعاينةالكود
إنجليزيمعكوسعربي
← RTL

التثبيت

  1. أضف المكوّن

    npx ritla add event-calendar

    ويعمل أيضًا مع shadcn: npx shadcn@latest add @ritla/event-calendar

  2. الاعتماديات التي يضيفها

    @phosphor-icons/react

  3. أو انسخه يدويًا

    التثبيت اليدوي ينسخ مصدر المكوّن إلى مشروعك. المصدر يأتي مع ترخيص Ritla UI، وأداة سطر الأوامر هي الطريق الأقصر إلى الملفات نفسها.

الاستخدام

event-calendar.tsx
import { EventCalendar } from "@/components/ui/event-calendar";<EventCalendar  events={[{ id: "rent", date: "2026-09-01", title: "Rent due", tone: "warning" }]}  actions={<Button size="sm">Add event</Button>}/>

أمثلة

قائمة القادم

العناصر القادمة مجمّعة حسب اليوم، بشريط لوني ومبلغ في النهاية.

إنجليزيمعكوسعربي
← RTL

مرجع الخصائص

EventCalendar

الخاصيةالنوعالافتراضيالوصف
eventsCalendarEvent[]لا يوجدالأحداث: id وdate بصيغة YYYY-MM-DD وtitle وtone.
month / defaultMonthDateلا يوجدالشهر المعروض، متحكَّم به أو أولي.
onMonthChange(month: Date) => voidلا يوجدعند الانتقال إلى شهر آخر.
todayDatenew Date()اليوم المميّز بالدائرة.
weekStartsOnnumber0أول يوم في الأسبوع: 0 الأحد كما في Figma، و6 السبت.
actionsReactNodeلا يوجدفي نهاية صف العنوان: مبدّل العرض وزر إضافة حدث.
onEventClick(event: CalendarEvent) => voidلا يوجديجعل كل شريحة زرًا.
maxEventsnumber3عدد الشرائح في اليوم قبل «+N أخرى».

CalendarEvent.tone

الخاصيةالنوعالافتراضيالوصف
tone"brand" | "warning" | "success" | "danger" | "neutral""brand"خاصية Tone في _Event chip.

EventAgenda

الخاصيةالنوعالافتراضيالوصف
headingReactNodeلا يوجدالعنوان، مثل «القادم».
descriptionReactNodeلا يوجدالنص الداعم.
eventsAgendaEvent[]لا يوجدالأحداث مع time وkind وamount وamountTone.

إمكانية الوصول

لوحة المفاتيح

المفاتيح مكتوبة للاتجاه من اليسار إلى اليمين. في الاتجاه من اليمين يتبادل السهمان دورهما: السهم المتجه مع اتجاه القراءة ينقلك إلى الأمام.

المفتاحما يفعله
Tabينتقل بين أزرار الشهر السابق والتالي واليوم، ثم الأحداث إن كانت أزرارًا.

ARIA

  • الشبكة جدول باسم الشهر، ورؤوس الأعمدة بأسماء الأيام كاملة في abbr.
  • كل يوم يقرأ تاريخه كاملًا، واليوم الحالي aria-current="date".
  • على الهاتف تصبح الشرائح نقاطًا، ويبقى عنوان كل حدث نصًا لقارئ الشاشة.
  • اسم الشهر يُعلَن عند تغييره.

ملاحظات العربية والاتجاه

ينعكس

  • الأسبوع يبدأ من اليمين في العربية، وأزرار السابق والتالي تنعكس.
  • شريط اللون في القائمة في بداية السطر والمبلغ في نهايته.

لا ينعكس

  • ترتيب الأسابيع من الأعلى إلى الأسفل.
الأرقام
أرقام الأيام والشهر تتبع إعداد الأرقام في RitlaProvider.
الخط العربي
أسماء الأيام المختصرة بلا «ال» («أحد»، «اثنين») لتتسع العمود.
النص ثنائي الاتجاه
عناوين الأحداث dir="auto"، والمبالغ معزولة.