♻️ refactor: Refactoring and adding multiple features

This commit is contained in:
web
2025-08-05 06:42:39 -07:00
committed by speakeloudest
parent 5a2fa2e937
commit 47d19d1b44
106 changed files with 6893 additions and 4604 deletions
+4 -11
View File
@@ -1,32 +1,25 @@
{
"ADS Config": "تنظیمات ADS",
"Announcement Management": "مدیریت اطلاعیه‌ها",
"Apple": "شناسه اپل",
"Application Management": "مدیریت برنامه",
"Auth Control": "کنترل احراز هویت",
"Coupon Management": "مدیریت کوپن",
"Dashboard": "داشبورد",
"Device": "دستگاه",
"Document Management": "مدیریت اسناد",
"Email": "ایمیل",
"Facebook": "فیس‌بوک",
"Finance": "امور مالی",
"General": "عمومی",
"GitHub": "گیت‌هاب",
"Google": "گوگل",
"Order Management": "مدیریت سفارش",
"Payment Config": "پیکربندی پرداخت",
"Phone Number": "شماره تلفن",
"Product Management": "مدیریت محصول",
"Protocol Management": "مدیریت پروتکل",
"Rule Management": "مدیریت قوانین",
"Server": "سرور",
"Server Management": "مدیریت سرور",
"Settings": "تنظیمات",
"Subscribe Management": "مدیریت اشتراک",
"Subscribe Config": "تنظیمات اشتراک",
"System Config": "پیکربندی سیستم",
"System Management": "مدیریت سیستم",
"System Tool": "ابزار سیستم",
"Telegram": "تلگرام",
"Ticket Management": "مدیریت بلیط",
"Twitter": "توییتر",
"User": "کاربر",
"User Detail": "جزئیات کاربر",
"User Management": "مدیریت کاربران"
+160
View File
@@ -0,0 +1,160 @@
{
"actions": "اقدامات",
"app": {
"appDownloadURL": "آدرس دانلود اپلیکیشن",
"appIcon": "آیکون اپلیکیشن",
"appList": "لیست برنامه‌ها",
"appName": "نام اپلیکیشن",
"backupDomains": "لیست دامنه‌های پشتیبان",
"backupDomainsDescription": "لیست دامنه‌های پشتیبان برای حل دامنه، هر دامنه در یک خط",
"batchDelete": "حذف گروهی",
"cancel": "لغو",
"communicationKey": "کلید ارتباطی",
"communicationKeyDescription": "کلیدی که برای ارتباط با مشتری استفاده می‌شود",
"config": "پیکربندی",
"configApp": "پیکربندی برنامه",
"confirm": "تأیید",
"confirmDelete": "تأیید حذف",
"create": "ایجاد",
"createApp": "ایجاد اپلیکیشن",
"createSuccess": "با موفقیت ایجاد شد",
"defaultVersion": "پیش‌فرض",
"delete": "حذف",
"deleteWarning": "این عمل قابل بازگشت نیست",
"describeDescription": "برای توصیف برنامه استفاده می‌شود، در لیست برنامه‌ها نمایش داده می‌شود",
"description": "توضیحات",
"downloadLink": "لینک دانلود",
"edit": "ویرایش",
"editApp": "ویرایش اپلیکیشن",
"encryption": "روش رمزنگاری",
"encryptionDescription": "روش رمزنگاری برای ارتباط با مشتری را انتخاب کنید. در صورت انتخاب، مشتری از این روش برای ارتباط با سرور استفاده خواهد کرد",
"nameDescription": "نام برنامه، در لیست برنامه‌ها نمایش داده می‌شود",
"platform": "پلتفرم",
"selectApp": "انتخاب برنامه",
"selectAppDescription": "برنامه‌ای را برای پیکربندی انتخاب کنید، تمام تنظیمات به برنامه انتخاب شده اعمال خواهد شد",
"startupPicture": "تصویر شروع",
"startupPictureDescription": "تصویر شروع، از تصاویر شبکه و محلی پشتیبانی می‌کند. برای تصاویر شبکه، لطفاً آدرس کامل تصویر را وارد کنید",
"startupPicturePreview": "پیش‌نمایش تصویر شروع",
"startupPictureSkip": "زمان عبور از تصویر شروع",
"startupPictureSkipDescription": "زمان نمایش تصویر شروع به ثانیه، برای عدم نمایش 0 وارد کنید",
"subscriptionProtocol": "پروتکل اشتراک",
"updateSuccess": "با موفقیت به‌روزرسانی شد",
"version": "نسخه"
},
"cancel": "لغو",
"config": {
"singleSubscriptionMode": "حالت اشتراک تکی",
"subscriptionDomain": "دامنه اشتراک",
"subscriptionDomainDescription": "برای اشتراک استفاده می‌شود؛ برای استفاده از دامنه سایت، خالی بگذارید",
"subscriptionDomainPlaceholder": "دامنه اشتراک را وارد کنید، هر خط یک دامنه",
"subscriptionPath": "مسیر اشتراک",
"subscriptionPathDescription": "برای اشتراک استفاده می‌شود؛ حتماً پس از تغییر، سیستم را برای عملکرد بهینه راه‌اندازی مجدد کنید",
"subscriptionPathPlaceholder": "وارد کنید",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد",
"wildcardResolution": "حل و فصل کاراکترهای جایگزین",
"wildcardResolutionDescription": "برای اشتراک استفاده می‌شود"
},
"confirm": "تأیید",
"confirmDelete": "آیا مطمئن هستید که می‌خواهید حذف کنید؟",
"copy": "کپی",
"copySuccess": "با موفقیت کپی شد",
"create": "ایجاد",
"createSubscribe": "ایجاد اشتراک",
"createSuccess": "ایجاد با موفقیت انجام شد",
"delete": "حذف",
"deleteSuccess": "حذف با موفقیت انجام شد",
"deleteWarning": "پس از حذف، داده‌ها قابل بازیابی نیستند. لطفاً با احتیاط ادامه دهید.",
"deviceLimit": "محدودیت دستگاه/واحد",
"edit": "ویرایش",
"editSubscribe": "ویرایش اشتراک",
"form": {
"Day": "روز",
"Hour": "ساعت",
"Minute": "دقیقه",
"Month": "ماه",
"NoLimit": "بدون محدودیت",
"Year": "سال",
"annualReset": "بازنشانی سالانه",
"basic": "پایه",
"cancel": "لغو",
"confirm": "تأیید",
"deductionRatio": "پیکربندی کسر خودکار/دستی",
"deductionRatioDescription": "برای کسر استفاده می‌شود. به طور پیش‌فرض، سیستم از یک الگوریتم محاسبه خودکار استفاده می‌کند. هنگامی که نسبت دستی ارائه می‌شود، سیستم نسبت‌ها را بر اساس زمان و نسبت ترافیک محاسبه می‌کند و اطمینان حاصل می‌کند که مجموع به ۱۰۰٪ می‌رسد.",
"description": "توضیحات",
"deviceLimit": "محدودیت دستگاه",
"discount": "تخفیف",
"discountDescription": "تعیین تخفیف بر اساس قیمت واحد",
"discountMonths": "ماه‌ها",
"discountPercent": "درصد تخفیف",
"discount_price": "قیمت تخفیف",
"duration": "مدت زمان (ماه‌ها)",
"groupId": "گروه اشتراک",
"inventory": "محدودیت اشتراک",
"monthlyReset": "بازنشانی ماهانه",
"name": "نام",
"noLimit": "بدون محدودیت",
"noReset": "بدون بازنشانی",
"pricing": "قیمت‌گذاری",
"purchaseWithDiscount": "اجازه کسر",
"purchaseWithDiscountDescription": "فعال یا غیرفعال کردن قابلیت لغو اشتراک. پس از فعال‌سازی، سیستم بر اساس قوانین و نسبت‌های تنظیم‌شده، پردازش کسر را انجام می‌دهد و مقدار باقی‌مانده به موجودی بازگردانده می‌شود.",
"quota": "محدودیت خرید",
"renewalReset": "بازنشانی تمدید",
"renewalResetDescription": "بازنشانی چرخه در زمان تمدید",
"replacement": "تنظیم مجدد قیمت (هر بار)",
"resetCycle": "چرخه بازنشانی",
"resetOn1st": "بازنشانی در روز اول",
"selectResetCycle": "لطفاً یک چرخه بازنشانی انتخاب کنید",
"selectSubscribeGroup": "گروه اشتراک را انتخاب کنید",
"selectUnitTime": "لطفاً واحد زمان را انتخاب کنید",
"server": "سرور",
"serverGroup": "گروه سرور",
"servers": "سرورها",
"speedLimit": "محدودیت سرعت (مگابیت بر ثانیه)",
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"unitTime": "واحد زمان"
},
"group": {
"actions": "اقدامات",
"cancel": "لغو",
"confirm": "تأیید",
"confirmDelete": "آیا مطمئن هستید که می‌خواهید حذف کنید؟",
"create": "ایجاد",
"createSubscribeGroup": "ایجاد گروه اشتراک",
"createSuccess": "ایجاد با موفقیت انجام شد",
"delete": "حذف",
"deleteSuccess": "حذف با موفقیت انجام شد",
"deleteWarning": "پس از حذف، داده‌ها قابل بازیابی نیستند. لطفاً با احتیاط ادامه دهید.",
"description": "توضیحات",
"edit": "ویرایش",
"editSubscribeGroup": "ویرایش گروه اشتراک",
"form": {
"cancel": "لغو",
"confirm": "تأیید",
"description": "توضیحات",
"name": "نام"
},
"name": "نام",
"title": "فهرست گروه‌های اشتراک",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد",
"updatedAt": "به‌روزرسانی در"
},
"inventory": "محدودیت اشتراک",
"name": "نام",
"quota": "محدودیت خرید/زمان",
"replacement": "تنظیم مجدد قیمت/زمان",
"sell": "فروش",
"show": "نمایش",
"sold": "تعداد اشتراک",
"subscribe": "اشتراک",
"subscribeGroup": "گروه اشتراک",
"tabs": {
"subscribe": "اشتراک",
"subscribeApp": "پیکربندی اپلیکیشن",
"subscribeConfig": "پیکربندی اشتراک",
"subscribeGroup": "گروه اشتراک"
},
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد"
}
+76 -148
View File
@@ -1,161 +1,89 @@
{
"actions": "اقدامات",
"app": {
"appDownloadURL": "آدرس دانلود اپلیکیشن",
"appIcon": "آیکون اپلیکیشن",
"appList": "لیست برنامه‌ها",
"appName": "نام اپلیکیشن",
"backupDomains": "لیست دامنه‌های پشتیبان",
"backupDomainsDescription": "لیست دامنه‌های پشتیبان برای حل دامنه، هر دامنه در یک خط",
"batchDelete": "حذف گروهی",
"actions": {
"cancel": "لغو",
"communicationKey": "کلید ارتباطی",
"communicationKeyDescription": "کلیدی که برای ارتباط با مشتری استفاده می‌شود",
"config": "پیکربندی",
"configApp": "پیکربندی برنامه",
"confirm": "تأیید",
"confirmDelete": "تأیید حذف",
"create": "ایجاد",
"createApp": "ایجاد اپلیکیشن",
"createSuccess": "با موفقیت ایجاد شد",
"defaultVersion": "پیش‌فرض",
"delete": "حذف",
"deleteWarning": "این عمل قابل بازگشت نیست",
"describeDescription": "برای توصیف برنامه استفاده می‌شود، در لیست برنامه‌ها نمایش داده می‌شود",
"description": "توضیحات",
"downloadLink": "لینک دانلود",
"edit": "ویرایش",
"editApp": "ویرایش اپلیکیشن",
"encryption": "روش رمزنگاری",
"encryptionDescription": "روش رمزنگاری برای ارتباط با مشتری را انتخاب کنید. در صورت انتخاب، مشتری از این روش برای ارتباط با سرور استفاده خواهد کرد",
"nameDescription": "نام برنامه، در لیست برنامه‌ها نمایش داده می‌شود",
"platform": "پلتفرم",
"selectApp": "انتخاب برنامه",
"selectAppDescription": "برنامه‌ای را برای پیکربندی انتخاب کنید، تمام تنظیمات به برنامه انتخاب شده اعمال خواهد شد",
"startupPicture": "تصویر شروع",
"startupPictureDescription": "تصویر شروع، از تصاویر شبکه و محلی پشتیبانی می‌کند. برای تصاویر شبکه، لطفاً آدرس کامل تصویر را وارد کنید",
"startupPicturePreview": "پیش‌نمایش تصویر شروع",
"startupPictureSkip": "زمان عبور از تصویر شروع",
"startupPictureSkipDescription": "زمان نمایش تصویر شروع به ثانیه، برای عدم نمایش 0 وارد کنید",
"subscriptionProtocol": "پروتکل اشتراک",
"updateSuccess": "با موفقیت به‌روزرسانی شد",
"version": "نسخه"
"save": "ذخیره",
"saveTemplate": "ذخیره الگو"
},
"cancel": "لغو",
"config": {
"singleSubscriptionMode": "حالت اشتراک تکی",
"singleSubscriptionModeDescription": "هنگامی که فعال شود، تمام اشتراک‌های کاربر به موجودی تبدیل می‌شوند",
"description": "مدیریت تنظیمات سیستم اشتراک",
"restrictUserAgent": "محدودیت User-Agent",
"restrictUserAgentDescription": "فعال‌سازی محدودیت‌های دسترسی بر اساس User-Agent",
"singleSubscriptionMode": "حالت اشتراک تک",
"singleSubscriptionModeDescription": "محدود کردن کاربران به یک اشتراک فعال. اشتراک‌های موجود تحت تأثیر قرار نمی‌گیرند",
"subscriptionDomain": "دامنه اشتراک",
"subscriptionDomainDescription": "برای اشتراک استفاده می‌شود؛ برای استفاده از دامنه سایت، خالی بگذارید",
"subscriptionDomainPlaceholder": "دامنه اشتراک را وارد کنید، هر خط یک دامنه",
"subscriptionDomainDescription": "دامنه سفارشی برای لینک‌های اشتراک",
"subscriptionDomainPlaceholder": "دامنه اشتراک را وارد کنید، هر کدام در یک خط",
"subscriptionPath": "مسیر اشتراک",
"subscriptionPathDescription": "برای اشتراک استفاده می‌شود؛ حتماً پس از تغییر، سیستم را برای عملکرد بهینه راه‌اندازی مجدد کنید",
"subscriptionPathPlaceholder": "وارد کنید",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد",
"wildcardResolution": "حل و فصل کاراکترهای جایگزین",
"wildcardResolutionDescription": "برای اشتراک استفاده می‌شود"
"subscriptionPathDescription": "مسیر سفارشی برای نقاط پایانی اشتراک (عملکرد بهتر پس از راه‌اندازی مجدد سیستم)",
"subscriptionPathPlaceholder": "مسیر اشتراک را وارد کنید",
"title": "پیکربندی اشتراک",
"updateError": "به‌روزرسانی ناموفق بود",
"updateSuccess": "تنظیمات با موفقیت به‌روزرسانی شد",
"userAgentWhitelist": "فهرست سفید User-Agent",
"userAgentWhitelistDescription": "User-Agent های مجاز برای دسترسی به اشتراک، هر کدام در یک خط. الگوهای داخلی به‌طور خودکار در فهرست سفید گنجانده می‌شوند",
"userAgentWhitelistPlaceholder": "User-Agent های مجاز را وارد کنید، هر کدام در یک خط",
"wildcardResolution": "حل دامنه‌های wildcard",
"wildcardResolutionDescription": "فعال‌سازی حل دامنه wildcard برای اشتراک‌ها"
},
"confirm": "تأیید",
"confirmDelete": "آیا مطمئن هستید که می‌خواهید حذف کنید؟",
"copy": "کپی",
"copySuccess": "با موفقیت کپی شد",
"create": "ایجاد",
"createSubscribe": "ایجاد اشتراک",
"createSuccess": "ایجاد با موفقیت انجام شد",
"delete": "حذف",
"deleteSuccess": "حذف با موفقیت انجام شد",
"deleteWarning": "پس از حذف، داده‌ها قابل بازیابی نیستند. لطفاً با احتیاط ادامه دهید.",
"deviceLimit": "محدودیت دستگاه/واحد",
"edit": "ویرایش",
"editSubscribe": "ویرایش اشتراک",
"form": {
"Day": "روز",
"Hour": "ساعت",
"Minute": "دقیقه",
"Month": "ماه",
"NoLimit": "بدون محدودیت",
"Year": "سال",
"annualReset": "بازنشانی سالانه",
"basic": "پایه",
"cancel": "لغو",
"confirm": "تأیید",
"deductionRatio": "پیکربندی کسر خودکار/دستی",
"deductionRatioDescription": "برای کسر استفاده می‌شود. به طور پیش‌فرض، سیستم از یک الگوریتم محاسبه خودکار استفاده می‌کند. هنگامی که نسبت دستی ارائه می‌شود، سیستم نسبت‌ها را بر اساس زمان و نسبت ترافیک محاسبه می‌کند و اطمینان حاصل می‌کند که مجموع به ۱۰۰٪ می‌رسد.",
"description": "توضیحات",
"deviceLimit": "محدودیت دستگاه",
"discount": "تخفیف",
"discountDescription": "تعیین تخفیف بر اساس قیمت واحد",
"discountMonths": "ماه‌ها",
"discountPercent": "درصد تخفیف",
"discount_price": "قیمت تخفیف",
"duration": "مدت زمان (ماه‌ها)",
"groupId": "گروه اشتراک",
"inventory": "محدودیت اشتراک",
"monthlyReset": "بازنشانی ماهانه",
"name": "نام",
"noLimit": "بدون محدودیت",
"noReset": "بدون بازنشانی",
"pricing": "قیمت‌گذاری",
"purchaseWithDiscount": "اجازه کسر",
"purchaseWithDiscountDescription": "فعال یا غیرفعال کردن قابلیت لغو اشتراک. پس از فعال‌سازی، سیستم بر اساس قوانین و نسبت‌های تنظیم‌شده، پردازش کسر را انجام می‌دهد و مقدار باقی‌مانده به موجودی بازگردانده می‌شود.",
"quota": "محدودیت خرید",
"renewalReset": "بازنشانی تمدید",
"renewalResetDescription": "بازنشانی چرخه در زمان تمدید",
"replacement": "تنظیم مجدد قیمت (هر بار)",
"resetCycle": "چرخه بازنشانی",
"resetOn1st": "بازنشانی در روز اول",
"selectResetCycle": "لطفاً یک چرخه بازنشانی انتخاب کنید",
"selectSubscribeGroup": "گروه اشتراک را انتخاب کنید",
"selectUnitTime": "لطفاً واحد زمان را انتخاب کنید",
"server": "سرور",
"serverGroup": "گروه سرور",
"servers": "سرورها",
"speedLimit": "محدودیت سرعت (مگابیت بر ثانیه)",
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"unitTime": "واحد زمان"
"description": "تنظیمات اشتراک و الگوهای مشتری را پیکربندی کنید",
"messages": {
"noClients": "هیچ الگوی مشتری وجود ندارد",
"noClientsDescription": "هنوز هیچ الگوی مشتری پیکربندی نشده است. اولین الگوی خود را برای شروع اضافه کنید."
},
"group": {
"actions": "اقدامات",
"cancel": "لغو",
"confirm": "تأیید",
"confirmDelete": "آیا مطمئن هستید که می‌خواهید حذف کنید؟",
"create": "ایجاد",
"createSubscribeGroup": "ایجاد گروه اشتراک",
"createSuccess": "ایجاد با موفقیت انجام شد",
"delete": "حذف",
"deleteSuccess": "حذف با موفقیت انجام شد",
"deleteWarning": "پس از حذف، داده‌ها قابل بازیابی نیستند. لطفاً با احتیاط ادامه دهید.",
"description": "توضیحات",
"edit": "ویرایش",
"editSubscribeGroup": "ویرایش گروه اشتراک",
"form": {
"cancel": "لغو",
"confirm": "تأیید",
"description": "توضیحات",
"name": "نام"
"protocol": {
"clients": {
"clash": {
"features": "اکوسیستم بزرگ، قوانین جامع، جامعه فعال"
},
"egern": {
"features": "مشتری مدرن iOS، عملکرد عالی"
},
"hiddify": {
"features": "چندپلتفرمی، پروتکل‌های جامع، مناسب برای مبتدیان"
},
"loon": {
"features": "مشتری پیشرفته iOS، قوانین غنی، رابط زیبا"
},
"netch": {
"features": "مشتری پروکسی متمرکز بر بازی"
},
"quantumult": {
"features": "مشتری پیشرفته iOS، قوانین انعطاف‌پذیر، اسکریپت‌های غنی"
},
"shadowrocket": {
"features": "مشتری کلاسیک iOS، پیکربندی انعطاف‌پذیر"
},
"singbox": {
"features": "هسته جدید، رابط کاربری رسمی، پشتیبانی چندپلتفرمی"
},
"stash": {
"features": "رابط کاربری مدرن موبایل، پروتکل‌های جامع"
},
"surfboard": {
"features": "رایگان، توسعه فعال، رابط مدرن"
},
"surge": {
"features": "ابزار پریمیوم iOS/Mac، ویژگی‌های قدرتمند"
},
"v2box": {
"features": "مشتری کاربرپسند V2Ray"
},
"v2rayn": {
"features": "مشتری محبوب ویندوز، پر از ویژگی"
},
"v2rayng": {
"features": "مشتری محبوب اندروید، سبک"
}
},
"name": "نام",
"title": "فهرست گروه‌های اشتراک",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد",
"updatedAt": "به‌روزرسانی در"
"description": "مدیریت الگوهای پیکربندی اشتراک برای مشتریان پروکسی",
"features": "ویژگی‌های کلیدی",
"platforms": "پلتفرم‌ها",
"subscribeTemplate": "پیکربندی الگوی اشتراک",
"templateContent": "محتوای الگو",
"templatePlaceholder": "الگوی پیکربندی مشتری را وارد کنید...",
"title": "الگوهای اشتراک مشتری"
},
"inventory": حدودیت اشتراک",
"name": "نام",
"quota": "محدودیت خرید/زمان",
"replacement": "تنظیم مجدد قیمت/زمان",
"sell": "فروش",
"show": "نمایش",
"sold": "تعداد اشتراک",
"subscribe": "اشتراک",
"subscribeGroup": "گروه اشتراک",
"tabs": {
"subscribe": "اشتراک",
"subscribeApp": "پیکربندی اپلیکیشن",
"subscribeConfig": "پیکربندی اشتراک",
"subscribeGroup": "گروه اشتراک"
},
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد"
"title": "مدیریت اشتراک"
}