hiddifypanel 10.70.9__py3-none-any.whl → 10.80.0.dev1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. hiddifypanel/VERSION +1 -1
  2. hiddifypanel/VERSION.py +5 -2
  3. hiddifypanel/__init__.py +5 -1
  4. hiddifypanel/auth.py +8 -3
  5. hiddifypanel/base.py +26 -23
  6. hiddifypanel/cache.py +2 -1
  7. hiddifypanel/drivers/ssh_liberty_bridge_api.py +2 -1
  8. hiddifypanel/drivers/wireguard_api.py +1 -1
  9. hiddifypanel/hutils/crypto.py +27 -0
  10. hiddifypanel/hutils/flask.py +5 -3
  11. hiddifypanel/hutils/network/cf_api.py +5 -5
  12. hiddifypanel/hutils/proxy/clash.py +1 -1
  13. hiddifypanel/hutils/proxy/shared.py +8 -12
  14. hiddifypanel/hutils/proxy/singbox.py +3 -1
  15. hiddifypanel/hutils/proxy/xray.py +1 -1
  16. hiddifypanel/models/admin.py +1 -1
  17. hiddifypanel/models/base_account.py +3 -0
  18. hiddifypanel/models/config.py +1 -1
  19. hiddifypanel/models/config_enum.py +13 -0
  20. hiddifypanel/models/user.py +2 -2
  21. hiddifypanel/panel/admin/AdminstratorAdmin.py +9 -2
  22. hiddifypanel/panel/admin/ProxyAdmin.py +4 -0
  23. hiddifypanel/panel/admin/QuickSetup.py +40 -9
  24. hiddifypanel/panel/admin/SettingAdmin.py +6 -0
  25. hiddifypanel/panel/admin/UserAdmin.py +10 -8
  26. hiddifypanel/panel/admin/adminlte.py +1 -1
  27. hiddifypanel/panel/cli.py +3 -1
  28. hiddifypanel/panel/commercial/restapi/v2/user/apps_api.py +76 -6
  29. hiddifypanel/panel/common.py +6 -3
  30. hiddifypanel/panel/common_bp/login.py +14 -8
  31. hiddifypanel/panel/init_db.py +139 -62
  32. hiddifypanel/panel/user/templates/base_singbox_config.json.j2 +16 -0
  33. hiddifypanel/panel/user/templates/home/home.html +1 -2
  34. hiddifypanel/panel/user/templates/home/multi.html +1 -2
  35. hiddifypanel/panel/user/user.py +1 -1
  36. hiddifypanel/static/apps-icon/singbox.ico +0 -0
  37. hiddifypanel/templates/fake.html +320 -0
  38. hiddifypanel/translations/en/LC_MESSAGES/messages.mo +0 -0
  39. hiddifypanel/translations/en/LC_MESSAGES/messages.po +50 -24
  40. hiddifypanel/translations/fa/LC_MESSAGES/messages.mo +0 -0
  41. hiddifypanel/translations/fa/LC_MESSAGES/messages.po +47 -25
  42. hiddifypanel/translations/pt/LC_MESSAGES/messages.mo +0 -0
  43. hiddifypanel/translations/pt/LC_MESSAGES/messages.po +41 -18
  44. hiddifypanel/translations/ru/LC_MESSAGES/messages.mo +0 -0
  45. hiddifypanel/translations/ru/LC_MESSAGES/messages.po +56 -29
  46. hiddifypanel/translations/zh/LC_MESSAGES/messages.mo +0 -0
  47. hiddifypanel/translations/zh/LC_MESSAGES/messages.po +34 -14
  48. hiddifypanel/translations.i18n/en.json +27 -11
  49. hiddifypanel/translations.i18n/fa.json +26 -10
  50. hiddifypanel/translations.i18n/fr.json +26 -8
  51. hiddifypanel/translations.i18n/my.json +1266 -0
  52. hiddifypanel/translations.i18n/pt.json +21 -5
  53. hiddifypanel/translations.i18n/ru.json +29 -13
  54. hiddifypanel/translations.i18n/zh.json +20 -4
  55. hiddifypanel-10.80.0.dev1.dist-info/METADATA +130 -0
  56. {hiddifypanel-10.70.9.dist-info → hiddifypanel-10.80.0.dev1.dist-info}/RECORD +111 -110
  57. {hiddifypanel-10.70.9.dist-info → hiddifypanel-10.80.0.dev1.dist-info}/WHEEL +1 -2
  58. hiddifypanel-10.80.0.dev1.dist-info/entry_points.txt +3 -0
  59. hiddifypanel-10.70.9.dist-info/METADATA +0 -144
  60. hiddifypanel-10.70.9.dist-info/entry_points.txt +0 -2
  61. hiddifypanel-10.70.9.dist-info/top_level.txt +0 -1
  62. {hiddifypanel-10.70.9.dist-info → hiddifypanel-10.80.0.dev1.dist-info}/LICENSE.md +0 -0
@@ -101,13 +101,13 @@
101
101
  "Invalid admin link": "لینک ادمین نامعتبر است",
102
102
  "Iran": "🇮🇷 ایران",
103
103
  "It seems that you are using default domain (%(domain)s) which is not recommended.": "به نظر می‌رسد شما درحال استفاده از دامنه پیش فرض (<span class='ltr d-inline-block'>%(domain)s</span>) هستید؛ این کار توصیه نمی‌شود. لطفا از بخش دامنه‌ها آن را حذف یا تغییر دهید.",
104
- "It will override the root admin to the current user": "این گزینه باعث جایگزین شده ادمین هایی که در پنل نیستند را با ادمین فعلی یکی کند",
104
+ "It will override the root admin to the current user": "این گزینه ادمین‌ی که در فایل بکاپ هست را با ادمین فعلی جایگزین می‌کند",
105
105
  "Join our Hiddify Telegram channel to get the latest updates on Hiddify.": "در کانال تلگرام هیدیفای عضو شوید تا از آخرین آپدیت‌های ما مطلع شوید.",
106
106
  "Last Online": "آخرین اتصال",
107
107
  "Link is changed!": "ℹ️ لینک تغییر کرد!",
108
108
  "Linux": "لینوکس",
109
109
  "Max Active Users": "حداکثر کاربران فعال",
110
- "Max IPs": "حداکثر IP",
110
+ "Max IPs": "همزمان (فقط xray) IP",
111
111
  "Max Users": "حداکثر کاربران",
112
112
  "Mode": "حالت کاربر",
113
113
  "Month Usage": "استفاده ماهانه",
@@ -136,7 +136,6 @@
136
136
  "Please Wait": "لطفا صبر کنید...",
137
137
  "Please click on %(install)s to save the user page.": "روی %(install)s کلیک کنید تا صفحه کاربر ذخیره شود.",
138
138
  "Please connect your telegram account to the panel to be informed about latest news.": "لطفا اکانت تلگرام خود را به پنل متصل کنید تا از آخرین اخبار مطلع شوید",
139
- "Please connect your telegram accout to the panel to be informed about latest news.": "لطفا اکانت تلگرام خود را به پنل متصل کنید تا از آخرین وضعیت اشتراک خودتان مطلع شوید",
140
139
  "Please create an issue on Github.": "لطفاً یک مشکل در Github ایجاد کنید",
141
140
  "Please select at least one file.": "حداقل یک فایل انتخاب کنید",
142
141
  "Please select at least one record.": "حداقل یک پوشه انتخاب کنید",
@@ -207,7 +206,7 @@
207
206
  "Turn of VPN": "فیلترشکن را خاموش کنید",
208
207
  "Unified link for all application.": "لینک یکسان برای همه برنامه‌ها",
209
208
  "Upload File": "آپلود فایل",
210
- "Use HiddifyNext:": "استفاده از HiddifyNext:",
209
+ "Use HiddifyNext:": "استفاده از Hiddify:",
211
210
  "User activated!": "یوزر شما فعال شد",
212
211
  "User is inactive": "کاربر غیر فعال است",
213
212
  "V2rayNG": "نرم افزار جایگزین v2rayNG <button class='btn btn-sm btn-default' onclick='show_video('android-v2rayng')'><i class='fa-solid fa-question'></i> </button>\n<br />",
@@ -225,7 +224,6 @@
225
224
  "You can restore your configs from previously downloaded configs": "ℹ️ در این قسمت می‌توانید تنظیمات قبلی خود را (که قبلا از قسمت پشتیبان گیری دانلود کرده‌اید.) بازگردانی نمایید.",
226
225
  "You have too much users! You can have only %(active)s active users and %(total)s users": "شما کاربران زیادی دارید! شما می توانید تنها %(active)s کاربر فعال و %(total)s کاربر داشته باشید",
227
226
  "You have used this domain in: ": "شما از این دامنه در بخش زیر استفاده کرده اید: ",
228
- "You should visit this page without VPN. Your country=%(your_country)s\nexpected=%(expected_country)s": "شما باید بدون VPN از این صفحه بازدید کنید کشور شما =%(your_country)s\nانتظار می رود=%(expected_country)s",
229
227
  "Your hiddify instance information \nDomain: {} \nUsage limit: {} GB\nCurrent usage: {} GB\nExpires at: {} \nRemaining days: {} \n\n\n Happy using 🎉 🎉 🎉 \n": "اطلاعات اکانت هیدیفای شما\nدامنه : {} \nمقدار حجم مجاز : {} گیگابایت\nحجم مصرف شده : {} گیگابایت\nتاریخ انقضا : {} \nروزهای باقی ‌مانده : {} \n\n\nبا آرزوی موفقیت. 🎉 🎉 🎉 ",
230
228
  "[Admin only visible message:] You can change this message from settings": "[پیام اختصاصی ادمین]: قابل تنظیم از طریق تنظیمات",
231
229
  "actions": "عملیات",
@@ -272,7 +270,7 @@
272
270
  "waiting_for_update": "⚠️ لطفا برای اینکه مطمئن شوید تغییرات به درستی اعمال شده، حدود 5 دقیقه صبر کنید. در این فاصله لینک‌های زیر را کپی کرده و در جایی برای خود ذخیره نمایید:"
273
271
  },
274
272
  "adminuser": {
275
- "force_update_usage": "مصرف کاربر ها هر 6 دقیقه یکبار به روز می شود. برای به روز رسانی فوری <a href=\"%(link)s\" class=\"btn btn-info\"> اینجا </a> را کلیک کنید"
273
+ "force_update_usage": "ℹ️ مصرف کاربر ها هر 6 دقیقه یکبار به روز می شود. برای به روز رسانی فوری <a href=\"%(link)s\" class=\"btn btn-info\"> اینجا </a> را کلیک کنید"
276
274
  },
277
275
  "all": "همه",
278
276
  "android": "اندروید",
@@ -315,6 +313,10 @@
315
313
  "description": "توضیحات Shadowrocket",
316
314
  "title": "Shadowrocket"
317
315
  },
316
+ "singbox": {
317
+ "description": "برنامه Sing-box برنامه رسمی برای پروتکل Sing-box است.",
318
+ "title": "برنامه Sing-box"
319
+ },
318
320
  "stash": {
319
321
  "description": "توضیحات Stash",
320
322
  "title": "Stash"
@@ -541,7 +543,7 @@
541
543
  "label": "پورت‌های KCP"
542
544
  },
543
545
  "lang": {
544
- "description": "این گزینه زبان بخش کاربران را تغییر می‌دهد",
546
+ "description": "زبان رابط کاربری را برای شخصی سازی تجربه خود در ناحیه کاربری انتخاب کنید.",
545
547
  "label": "🗺️ زبان محیط کاربران"
546
548
  },
547
549
  "last_hash": {
@@ -577,7 +579,7 @@
577
579
  "label": "⬆️ آپلود (mbps) MUX Brutal"
578
580
  },
579
581
  "mux_enable": {
580
- "description": "<p style=\"direction:rtl\">Mux به نرم افزار سازگار نیاز دارد. Mux در Hiddify Next و Singbox و XRay سازگار نیستند.&nbsp;<a href=\"https://hiddify.com/fa/manager/basic-concepts-and-troubleshooting/How-MUX-works-and-its-usage/\" target=\"_blank\">(بیشتر بدانید)</a></p>",
582
+ "description": "<p style=\"direction:rtl\">Mux به نرم افزار سازگار نیاز دارد. Mux در Hiddify و Singbox و XRay سازگار نیستند.&nbsp;<a href=\"https://hiddify.com/fa/manager/basic-concepts-and-troubleshooting/How-MUX-works-and-its-usage/\" target=\"_blank\">(بیشتر بدانید)</a></p>",
581
583
  "label": "Ⓜ️ MUX (⚠️ ناسازگار با برخی نرم افزارها)"
582
584
  },
583
585
  "mux_max_connections": {
@@ -777,7 +779,7 @@
777
779
  "label": "🚀 تست سرعت"
778
780
  },
779
781
  "splithttp_enable": {
780
- "description": "این پروتکل اطلاعات را در کانال های جداگانه ارسال و دریافت می کند ",
782
+ "description": "<p>این پروتکل اطلاعات را در کانال های جداگانه ارسال و دریافت می کند<br />\n⚠️<strong>&nbsp;این پروتکل در برنامه های با هسته SingBox پشتیبانی نمیشود. فقط در برنامه Hiddify و برنامه های با هسته XRay پشتیبانی میشود</strong></p>",
781
783
  "label": "🈁 Split HTTP"
782
784
  },
783
785
  "ssfaketls": {
@@ -985,7 +987,7 @@
985
987
  "label": "وایرگارد"
986
988
  },
987
989
  "wireguard_enable": {
988
- "description": "<p>WireGuard پروتکل مبتنی بر UDP است. (⚠️ فقط در <a href=\"https://github.com/hiddify/hiddify-next\" target=\"_blank\">Hiddify Next</a> کار می کند)</p>",
990
+ "description": "<p>WireGuard پروتکل مبتنی بر UDP است. (⚠️ فقط در <a href=\"https://github.com/hiddify/hiddify-app\" target=\"_blank\">Hiddify</a> کار می کند)</p>",
989
991
  "label": "🐉 وایرگارد"
990
992
  },
991
993
  "wireguard_ipv4": {
@@ -1072,6 +1074,11 @@
1072
1074
  },
1073
1075
  "log": "📄 لاگ",
1074
1076
  "login": {
1077
+ "button": "ورود",
1078
+ "password": {
1079
+ "description": "برای امنیت بیشتر، باید رمز عبور خود را وارد کنید.",
1080
+ "label": "رمز عبور"
1081
+ },
1075
1082
  "secret": {
1076
1083
  "description": "برای دسترسی به این صفحه، لطفا کد مخفی (UUID) خود را وارد کنید.",
1077
1084
  "label": "کد مخفی (UUID)"
@@ -1238,9 +1245,18 @@
1238
1245
  },
1239
1246
  "last_reset_time": "آخرین زمان ریست شدن حجم (روز پیش)",
1240
1247
  "name": "نام",
1248
+ "password": {
1249
+ "description": "رمز عبور برای امنیت بیشتر استفاده خواهد شد. تنها پس از وارد کردن رمز عبور می توانید وارد هیدیفای‌منیجر شوید.",
1250
+ "title": "رمز عبور",
1251
+ "validation-lenght": "برای امنیت بیشتر، رمز عبور شما باید حداقل ۸ کاراکتر داشته باشد.",
1252
+ "validation-required": "رمز عبور لازم است. لطفا برای ادامه رمز عبور خود را وارد کنید."
1253
+ },
1241
1254
  "usage_limit_GB": "⌛️ محدودیت حجم (گیگابایت)",
1242
1255
  "user_links": "لینک‌های کاربر"
1243
1256
  },
1257
+ "vpn": {
1258
+ "notallowed": "لطفاً بدون استفاده از VPN از این صفحه بازدید کنید. باید از کشور %(expected_country)s به آن دسترسی داشته باشید، اما در حال حاضر از %(your_country)s به آن دسترسی دارید."
1259
+ },
1244
1260
  "weekly": "📅 هفتگی",
1245
1261
  "worker": "✴️ ورکر کلودفلر"
1246
1262
  }
@@ -101,7 +101,7 @@
101
101
  "Invalid admin link": "Lien d'administration invalide",
102
102
  "Iran": "l'Iran",
103
103
  "It seems that you are using default domain (%(domain)s) which is not recommended.": "Il semble que vous utilisiez le domaine par défaut (%(domain)s), ce qui n'est pas recommandé. Veuillez le modifier ou le supprimer de la section domaine.",
104
- "It will override the root admin to the current user": "Il remplacera l'administrateur propriétaire du fichier de sauvegarde par l'utilisateur actuel",
104
+ "It will override the root admin to the current user": "Cela remplacera l'administrateur propriétaire du fichier de sauvegarde par l'administrateur actuel.",
105
105
  "Join our Hiddify Telegram channel to get the latest updates on Hiddify.": "Rejoignez notre chaîne Hiddify Telegram pour obtenir les dernières mises à jour sur Hiddify.",
106
106
  "Last Online": "Dernière connexion",
107
107
  "Link is changed!": "ℹ️ Le lien est modifié !",
@@ -136,7 +136,6 @@
136
136
  "Please Wait": "S'il vous plaît, attendez...",
137
137
  "Please click on %(install)s to save the user page.": "Cliquez sur %(install)s pour enregistrer la page utilisateur.",
138
138
  "Please connect your telegram account to the panel to be informed about latest news.": "Veuillez connecter votre compte Telegram au panel pour être informé des dernières nouvelles",
139
- "Please connect your telegram accout to the panel to be informed about latest news.": "Veuillez connecter votre compte Telegram au panneau pour connaître le dernier statut de votre abonnement",
140
139
  "Please create an issue on Github.": "Veuillez créer un problème sur Github",
141
140
  "Please select at least one file.": "Veuillez sélectionner au moins un fichier.",
142
141
  "Please select at least one record.": "Veuillez sélectionner au moins un enregistrement.",
@@ -214,7 +213,7 @@
214
213
  "V2rayNG intro": "Veuillez installer v2rayNG à partir de l'un de ces liens : %(dl_link)s %(play_link)s.\nCopiez ensuite le lien ci-dessous et collez-le dans v2rayNG selon le tutoriel vidéo <button class='btn btn-sm btn-default' onclick='show_video('android-v2rayng')'><i class='fa-solid fa-question'></i></button> .<inlang-LineFeed><br />",
215
214
  "View in Telegram": "Afficher dans Telegram",
216
215
  "Want to enjoy more with telegram?": "ℹ️ Connectez votre compte à Telegram",
217
- "Welcome %(user)s": "Bienvenue %(utilisateur)s",
216
+ "Welcome %(user)s": "Bienvenue %(user)s",
218
217
  "Why Going to Premium?": "Pourquoi passer au Premium ?",
219
218
  "Will Start in %(days)s days": "Commencera dans %(days)s jours",
220
219
  "Windows": "les fenêtres",
@@ -225,9 +224,6 @@
225
224
  "You can restore your configs from previously downloaded configs": "ℹ️ Vous pouvez restaurer vos configurations à partir du fichier de sauvegarde précédemment téléchargé",
226
225
  "You have too much users! You can have only %(active)s active users and %(total)s users": "Vous avez trop d'utilisateurs ! Vous ne pouvez avoir que %(active)s utilisateurs actifs et %(total)s utilisateurs",
227
226
  "You have used this domain in: ": "Vous avez déjà utilisé ce domaine dans : ",
228
- "You should visit this page without VPN": {
229
- " Your country=%(your_country)s\nexpected=%(expected_country)s": "Vous devriez visiter cette page sans VPN Votre pays =%(votre_pays)s\nAttendu=%(expected_country)s"
230
- },
231
227
  "Your hiddify instance information \nDomain: {} \nUsage limit: {} GB\nCurrent usage: {} GB\nExpires at: {} \nRemaining days: {} \n\n\n Happy using 🎉 🎉 🎉 \n": "Informations sur votre instance Hiddify\nDomaine: {}\nLimite d'utilisation : {} Go\nUtilisation actuelle : {} Go\nExpire à : {}\nJours restants: {}<inlang-LineFeed><inlang-LineFeed>\nBonne chance! 🎉 🎉 🎉<inlang-LineFeed>",
232
228
  "[Admin only visible message:] You can change this message from settings": "[Message exclusif à l'administrateur] : personnalisable via les paramètres",
233
229
  "actions": "Actions",
@@ -317,6 +313,10 @@
317
313
  "description": "Shadowrocket descriptif",
318
314
  "title": "Shadowrocket"
319
315
  },
316
+ "singbox": {
317
+ "description": "L'application Sing-box est l'application officielle du protocole Sing-box.",
318
+ "title": "Application Sing-box"
319
+ },
320
320
  "stash": {
321
321
  "description": "Description de Stash ",
322
322
  "title": "Stash "
@@ -543,7 +543,7 @@
543
543
  "label": "Ports KCP"
544
544
  },
545
545
  "lang": {
546
- "description": "Choisir la langue pour la zone utilisateurs",
546
+ "description": "Sélectionnez la langue de l'interface utilisateur pour personnaliser votre expérience dans l'espace utilisateur.",
547
547
  "label": "🗺️ Langue de la zone utilisateur"
548
548
  },
549
549
  "last_hash": {
@@ -1074,6 +1074,11 @@
1074
1074
  },
1075
1075
  "log": "📄 Log",
1076
1076
  "login": {
1077
+ "button": "Se connecter",
1078
+ "password": {
1079
+ "description": "Pour plus de sécurité, vous devez entrer votre mot de passe.",
1080
+ "label": "Mot de passe"
1081
+ },
1077
1082
  "secret": {
1078
1083
  "description": "Pour accéder à cette page, veuillez entrer votre code secret (UUID)",
1079
1084
  "label": "Code secret (UUID)"
@@ -1240,9 +1245,22 @@
1240
1245
  },
1241
1246
  "last_reset_time": "Réinitialisation de la date de dernière utilisation",
1242
1247
  "name": "Nom",
1248
+ "password": {
1249
+ "description": "Le mot de passe sera utilisé pour plus de sécurité. Vous ne pouvez vous connecter à HiddifyManager qu'après avoir saisi votre mot de passe.",
1250
+ "title": "Mot de passe",
1251
+ "validation-lenght": "Votre mot de passe doit comporter au moins 8 caractères pour plus de sécurité.",
1252
+ "validation-required": "Un mot de passe est requis. Veuillez saisir votre mot de passe pour continuer."
1253
+ },
1243
1254
  "usage_limit_GB": "⌛️ Limite d'utilisation (Go)",
1244
1255
  "user_links": "Liens utilisateur"
1245
1256
  },
1257
+ "vpn": {
1258
+ "notallowed": "Veuillez visiter cette page sans utiliser de VPN. Vous devez y accéder depuis le pays %(expected_country)s, mais vous y accédez actuellement depuis %(your_country)s."
1259
+ },
1246
1260
  "weekly": "📅 Hebdomadaire",
1247
- "worker": "✴️ Cloudflare Worker"
1261
+ "worker": "✴️ Cloudflare Worker",
1262
+ "Please connect your telegram accout to the panel to be informed about latest news.": "Veuillez connecter votre compte Telegram au HiddifyManager pour être informé des dernières nouveautés.",
1263
+ "You should visit this page without VPN": {
1264
+ " Your country=%(your_country)s\nexpected=%(expected_country)s": "Veuillez visiter cette page sans utiliser de VPN. Vous devez y accéder depuis le pays %(expected_country)s, mais vous y accédez actuellement depuis %(your_country)s."
1265
+ }
1248
1266
  }