Localize dashboard shell and home page.

Convert the dashboard layout (sidebar nav, header, role badges, wallet,
sign-out, language switcher) and the dashboard home page to the i18n
dictionaries, including a shared deployment-status label map. Switch their
links/router to the locale-aware helpers and add RTL-aware spacing.

Remaining dashboard page bodies and shared components still render English
copy and will be localized in follow-up commits.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
keyhan
2026-06-11 12:15:21 +03:30
parent 34993d417f
commit e0964e6528
5 changed files with 187 additions and 77 deletions
+49
View File
@@ -157,6 +157,55 @@ const fa = {
technicalTickets: 'تیکت‌های فنی',
salesTickets: 'تیکت‌های فروش',
},
dashboard: {
status: {
running: 'در حال اجرا',
pending: 'در انتظار',
building: 'در حال بیلد',
deploying: 'در حال انتشار',
failed: 'ناموفق',
build_failed: 'خطای بیلد',
cancelled: 'لغو شده',
stopped: 'متوقف',
},
home: {
welcome: 'خوش آمدی، {name}!',
overview: 'نمای کلیِ اپلیکیشن‌ها و سرویس‌های مدیریت‌شدهٔ تو.',
creditsTitle: 'اعتبارِ پیش‌پرداختِ منابع',
creditsBody:
'اگر اپی را پیش از پایان پلنت حذف کنی، می‌توانی تا زمان انقضای اعتبار، اپ جدیدی با همان منابع و بدون هزینهٔ اضافه منتشر کنی.',
fromApp: 'از اپِ «{name}»',
resourceCredit: 'اعتبارِ منابع',
remaining: '{label} باقی‌مانده',
expires: 'انقضا {date}',
cpu: 'پردازنده',
ram: 'حافظه',
replicas: 'تعداد نمونه',
db: 'دیتابیس',
dbDisk: 'دیسکِ دیتابیس',
appDisk: 'دیسکِ اپ',
useOnNewApp: 'استفاده روی اپ جدید →',
statApplications: 'اپلیکیشن‌ها',
statAppsRunning: 'اپ‌های در حال اجرا',
statManagedServices: 'سرویس‌های مدیریت‌شده',
statServicesRunning: 'سرویس‌های در حال اجرا',
appsFailed: '{n} اپلیکیشن ناموفق',
servicesFailed: '{n} سرویس ناموفق',
recentApplications: 'اپلیکیشن‌های اخیر',
newApplication: 'اپلیکیشن جدید',
noApplications: 'هنوز اپلیکیشنی نداری',
deployFirst: 'اولین اپت را منتشر کن',
viewAllApplications: 'مشاهدهٔ همهٔ {n} اپلیکیشن →',
recentServices: 'دیتابیس‌ها و سرویس‌های اخیر',
newService: 'سرویس جدید',
noServices: 'هنوز سرویس مدیریت‌شده‌ای نداری',
createServiceCta: 'ساخت دیتابیس یا سرویس',
viewAllServices: 'مشاهدهٔ همهٔ {n} سرویس →',
replica: 'نمونه',
replicaPlural: 'نمونه',
},
},
};
export type Dictionary = typeof fa;