Task #708: تصحيح اتجاه نص أوقات الحجز (ص/م) في أزرار الأوقات

- المشكلة: نطاق الوقت مثل "8:00 ص – 9:00 ص" كان داخل عناصر dir="ltr"،
  و"ص/م" أحرف عربية RTL فيعيد المتصفح ترتيب الأجزاء فتظهر مقلوبة
  ("ص – 9:00 ص 8:00").
- الإصلاح:
  - النموذج العام (protocol-request.tsx): زر الوقت أصبح dir="rtl"
    (الصفحة عربية دائمًا).
  - protocol.tsx: قسم إدارة الأوقات وقائمة اختيار الوقت في حوار الحجز
    الداخلي أصبحا dir={isAr ? "rtl" : "ltr"} — العربية تُعرض RTL صحيحة
    والإنجليزية (AM/PM) تبقى LTR.
- لا تغييرات في الخادم أو الصيغة نفسها. tsc نظيف.
This commit is contained in:
Replit Agent
2026-07-08 17:41:09 +00:00
parent d81b32c605
commit ac57e8cb01
2 changed files with 6 additions and 3 deletions
@@ -641,7 +641,7 @@ export default function ProtocolRequestPage() {
? "border-slate-200 bg-white text-slate-600 hover:border-slate-300" ? "border-slate-200 bg-white text-slate-600 hover:border-slate-300"
: "border-slate-100 bg-slate-50 text-slate-300 cursor-not-allowed line-through" : "border-slate-100 bg-slate-50 text-slate-300 cursor-not-allowed line-through"
}`} }`}
dir="ltr" dir="rtl"
> >
{fmtSlotLabel(s.startTime, s.durationMinutes)} {fmtSlotLabel(s.startTime, s.durationMinutes)}
</button> </button>
+5 -2
View File
@@ -2541,7 +2541,10 @@ function SlotsAdminSection({
className="flex items-center justify-between gap-2 rounded-lg border border-slate-200 px-3 py-2" className="flex items-center justify-between gap-2 rounded-lg border border-slate-200 px-3 py-2"
> >
<div className="flex items-center gap-2 min-w-0"> <div className="flex items-center gap-2 min-w-0">
<span className="text-sm font-medium text-slate-700" dir="ltr"> <span
className="text-sm font-medium text-slate-700"
dir={isAr ? "rtl" : "ltr"}
>
{fmtSlotRange(s.startTime, s.durationMinutes, isAr)} {fmtSlotRange(s.startTime, s.durationMinutes, isAr)}
</span> </span>
<span <span
@@ -3138,7 +3141,7 @@ function BookingDialog({
<SelectContent> <SelectContent>
{slots.map((s) => ( {slots.map((s) => (
<SelectItem key={s.id} value={String(s.id)}> <SelectItem key={s.id} value={String(s.id)}>
<span dir="ltr"> <span dir={isAr ? "rtl" : "ltr"}>
{fmtSlotRange(s.startTime, s.durationMinutes, isAr)} {fmtSlotRange(s.startTime, s.durationMinutes, isAr)}
</span> </span>
</SelectItem> </SelectItem>