hiddifypanel 11.0.9__py3-none-any.whl → 11.0.11__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.
- hiddifypanel/VERSION +1 -1
- hiddifypanel/VERSION.py +2 -2
- hiddifypanel/hutils/proxy/shared.py +7 -8
- hiddifypanel/hutils/proxy/xray.py +5 -4
- hiddifypanel/hutils/proxy/xrayjson.py +13 -14
- hiddifypanel/panel/admin/UserAdmin.py +55 -1
- hiddifypanel/panel/init_db.py +1 -1
- hiddifypanel/translations/en/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/en/LC_MESSAGES/messages.po +9 -0
- hiddifypanel/translations/fa/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/fa/LC_MESSAGES/messages.po +9 -0
- hiddifypanel/translations/my/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/pt/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/pt/LC_MESSAGES/messages.po +9 -0
- hiddifypanel/translations/ru/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/ru/LC_MESSAGES/messages.po +9 -0
- hiddifypanel/translations/zh/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/zh/LC_MESSAGES/messages.po +9 -0
- hiddifypanel/translations.i18n/en.json +3 -0
- hiddifypanel/translations.i18n/fa.json +3 -0
- hiddifypanel/translations.i18n/pt.json +3 -0
- hiddifypanel/translations.i18n/ru.json +3 -0
- hiddifypanel/translations.i18n/zh.json +3 -0
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/METADATA +1 -1
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/RECORD +29 -29
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/WHEEL +0 -0
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/entry_points.txt +0 -0
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/licenses/LICENSE.md +0 -0
- {hiddifypanel-11.0.9.dist-info → hiddifypanel-11.0.11.dist-info}/top_level.txt +0 -0
hiddifypanel/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
11.0.
|
1
|
+
11.0.11
|
hiddifypanel/VERSION.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# import importlib.metadata
|
2
2
|
from datetime import datetime
|
3
3
|
|
4
|
-
__version__ = '11.0.
|
5
|
-
__release_time__= datetime.strptime('2025-07-
|
4
|
+
__version__ = '11.0.11'
|
5
|
+
__release_time__= datetime.strptime('2025-07-12T21:13:54','%Y-%m-%dT%H:%M:%S')
|
6
6
|
is_released_version=True
|
@@ -296,15 +296,14 @@ def sni_host_server_extractor(domain_db: Domain, hconfigs):
|
|
296
296
|
|
297
297
|
return base
|
298
298
|
|
299
|
-
def put_default_header(
|
300
|
-
|
301
|
-
|
302
|
-
parmas['headers']={}
|
299
|
+
def put_default_header(params:dict):
|
300
|
+
if not isinstance(params.get('headers'),dict):
|
301
|
+
params['headers']={}
|
303
302
|
|
304
|
-
if not
|
305
|
-
|
306
|
-
if not
|
307
|
-
|
303
|
+
if not params['headers'].get('User-Agent'):
|
304
|
+
params['headers']['User-Agent']=hconfig(ConfigEnum.default_useragent_string)
|
305
|
+
if not params['headers'].get('Pragma'):
|
306
|
+
params['headers']['Pragma']="no-cache"
|
308
307
|
|
309
308
|
|
310
309
|
|
@@ -151,11 +151,12 @@ def to_link(proxy: dict) -> str | dict:
|
|
151
151
|
q['core']='xray'
|
152
152
|
_add_xhttp_extra(q,proxy)
|
153
153
|
if proxy['l3'] != 'quic':
|
154
|
-
if proxy.get('
|
155
|
-
q['headerType']='http'
|
156
|
-
else:
|
154
|
+
if proxy.get('params',{}).get('headers',{}).get("type",'')=='none' or proxy['l3'] != ProxyL3.http:
|
157
155
|
q['headerType']='none'
|
158
|
-
|
156
|
+
else:
|
157
|
+
# if proxy.get('l3') != ProxyL3.reality and (proxy.get('transport') in {ProxyTransport.tcp, ProxyTransport.httpupgrade, ProxyTransport.xhttp}) and proxy['proto'] in [ProxyProto.vless, ProxyProto.trojan]:
|
158
|
+
q['headerType']='http'
|
159
|
+
|
159
160
|
if proxy['mode'] == 'Fake' or proxy['allow_insecure']:
|
160
161
|
q['allowInsecure']='true'
|
161
162
|
q['insecure']='true'
|
@@ -291,7 +291,12 @@ def add_stream_settings(base: dict, proxy: dict):
|
|
291
291
|
|
292
292
|
|
293
293
|
def add_tcp_stream(ss: dict, proxy: dict):
|
294
|
-
|
294
|
+
|
295
|
+
if proxy.get('params',{}).get('headers',{}).get("type",'')=='none' or proxy['l3'] != ProxyL3.http:
|
296
|
+
ss['tcpSettings'] = {
|
297
|
+
'header':{'type':'none'}
|
298
|
+
}
|
299
|
+
else:
|
295
300
|
ss['tcpSettings'] = {
|
296
301
|
'header': {
|
297
302
|
'type': 'http',
|
@@ -299,24 +304,18 @@ def add_tcp_stream(ss: dict, proxy: dict):
|
|
299
304
|
'path': [proxy['path']],
|
300
305
|
'method': 'GET',
|
301
306
|
"headers": {
|
302
|
-
"Host": proxy.get('host'),
|
303
|
-
"User-Agent":
|
304
|
-
"Accept-Encoding": "gzip, deflate",
|
305
|
-
"Connection": "keep-alive",
|
306
|
-
"Pragma":
|
307
|
+
"Host": [proxy.get('host')],
|
308
|
+
"User-Agent": [proxy.get('params',{}).get('headers',{}).get('User-Agent')],
|
309
|
+
"Accept-Encoding": ["gzip, deflate"],
|
310
|
+
"Connection": ["keep-alive"],
|
311
|
+
"Pragma": proxy.get('params',{}).get('headers',{}).get('Pragma')
|
307
312
|
},
|
308
313
|
|
309
314
|
}
|
310
315
|
}
|
311
316
|
}
|
312
|
-
|
313
|
-
|
314
|
-
ss['tcpSettings'] = {
|
315
|
-
'header': {
|
316
|
-
'type': 'none'
|
317
|
-
}
|
318
|
-
# 'acceptProxyProtocol': False
|
319
|
-
}
|
317
|
+
# ss['tcpSettings']['header']['request']['headers']
|
318
|
+
|
320
319
|
|
321
320
|
|
322
321
|
def add_http_stream(ss: dict, proxy: dict):
|
@@ -11,7 +11,7 @@ from flask_babel import lazy_gettext as _
|
|
11
11
|
from flask import g, request # type: ignore
|
12
12
|
from markupsafe import Markup
|
13
13
|
from sqlalchemy import desc, func
|
14
|
-
|
14
|
+
from flask_admin.contrib.sqla import form, filters as sqla_filters, tools
|
15
15
|
from hiddifypanel.hutils.flask import hurl_for
|
16
16
|
from wtforms.validators import Regexp, ValidationError
|
17
17
|
from flask import current_app
|
@@ -432,3 +432,57 @@ class UserAdmin(AdminLTEModelView):
|
|
432
432
|
# abort(403)
|
433
433
|
|
434
434
|
return query
|
435
|
+
|
436
|
+
|
437
|
+
@action('disable', 'Disable', 'Are you sure you want to disable selected users?')
|
438
|
+
def action_disable(self, ids):
|
439
|
+
query = tools.get_query_for_ids(self.get_query(), self.model, ids)
|
440
|
+
count = query.update({'enable': False})
|
441
|
+
|
442
|
+
self.session.commit()
|
443
|
+
hutils.flask.flash(_('%(count)s records were successfully disabled.', count=count), 'success')
|
444
|
+
self.apply(query.all())
|
445
|
+
|
446
|
+
@action('enable', 'Enable', 'Are you sure you want to enable selected users?')
|
447
|
+
def action_enable(self, ids):
|
448
|
+
query = tools.get_query_for_ids(self.get_query(), self.model, ids)
|
449
|
+
count = query.update({'enable': True})
|
450
|
+
|
451
|
+
self.session.commit()
|
452
|
+
hutils.flask.flash(_('%(count)s records were successfully enabled.', count=count), 'success')
|
453
|
+
self.apply(query.all())
|
454
|
+
|
455
|
+
@action('delete', 'Delete', 'Are you sure you want to delete selected users?')
|
456
|
+
def action_delete(self, ids):
|
457
|
+
query = tools.get_query_for_ids(self.get_query(), self.model, ids)
|
458
|
+
count = query.update({'enable': False})
|
459
|
+
self.session.commit()
|
460
|
+
self.apply(query.all())
|
461
|
+
count =query.delete()
|
462
|
+
self.session.commit()
|
463
|
+
hutils.flask.flash(_('%(count)s records were successfully deleted.', count=count), 'success')
|
464
|
+
|
465
|
+
@action('reset usage', 'Reset Usage', 'Are you sure you want to reset usage of selected users?')
|
466
|
+
def action_reset_usage(self, ids):
|
467
|
+
query = tools.get_query_for_ids(self.get_query(), self.model, ids)
|
468
|
+
count = query.update({'current_usage': 0})
|
469
|
+
self.session.commit()
|
470
|
+
hutils.flask.flash(_('%(count)s records were successfully reset usage.', count=count), 'success')
|
471
|
+
self.apply(query.all())
|
472
|
+
|
473
|
+
@action('reset day', 'Reset Day', 'Are you sure you want to reset day of selected users?')
|
474
|
+
def action_reset_days(self, ids):
|
475
|
+
query = tools.get_query_for_ids(self.get_query(), self.model, ids)
|
476
|
+
count = query.update({'start_date': None})
|
477
|
+
self.session.commit()
|
478
|
+
hutils.flask.flash(_('%(count)s records were successfully reset days.', count=count), 'success')
|
479
|
+
self.apply(query.all())
|
480
|
+
|
481
|
+
def apply(self,users):
|
482
|
+
for user in users:
|
483
|
+
|
484
|
+
if user.is_active:
|
485
|
+
user_driver.add_client(user)
|
486
|
+
else:
|
487
|
+
user_driver.remove_client(user)
|
488
|
+
hiddify.quick_apply_users()
|
hiddifypanel/panel/init_db.py
CHANGED
@@ -652,7 +652,7 @@ def make_proxy_rows(cfgs):
|
|
652
652
|
# if not is_exist:
|
653
653
|
params_list=[('',{})]
|
654
654
|
|
655
|
-
if transport=="xhttp" and l3
|
655
|
+
if transport=="xhttp" and l3 not in [ProxyL3.reality,ProxyL3.http]:
|
656
656
|
params_list=[]
|
657
657
|
# for up in ['http/1.1"','h2','h3']:
|
658
658
|
if l3=="http":
|
Binary file
|
@@ -9,12 +9,21 @@ msgstr ""
|
|
9
9
|
" Search\n"
|
10
10
|
" Settings"
|
11
11
|
|
12
|
+
msgid "%(count)s records were successfully deleted."
|
13
|
+
msgstr "%(count)s records were successfully deleted."
|
14
|
+
|
12
15
|
msgid "%(count)s records were successfully disabled."
|
13
16
|
msgstr "%(count)s Records were successfully disabled."
|
14
17
|
|
15
18
|
msgid "%(count)s records were successfully enabled."
|
16
19
|
msgstr "%(count)s Records were successfully enabled."
|
17
20
|
|
21
|
+
msgid "%(count)s records were successfully reset days."
|
22
|
+
msgstr "%(count)s records were successfully reset days."
|
23
|
+
|
24
|
+
msgid "%(count)s records were successfully reset usage."
|
25
|
+
msgstr "%(count)s records were successfully reset usage."
|
26
|
+
|
18
27
|
msgid "%(expire_days)s days"
|
19
28
|
msgstr "%(expire_days)s Days"
|
20
29
|
|
Binary file
|
@@ -9,12 +9,21 @@ msgstr ""
|
|
9
9
|
" جستجو کردن\n"
|
10
10
|
"تنظیمات"
|
11
11
|
|
12
|
+
msgid "%(count)s records were successfully deleted."
|
13
|
+
msgstr ""
|
14
|
+
|
12
15
|
msgid "%(count)s records were successfully disabled."
|
13
16
|
msgstr "%(count)s رکورد با موفقیت غیرفعال شد."
|
14
17
|
|
15
18
|
msgid "%(count)s records were successfully enabled."
|
16
19
|
msgstr "%(count)s رکوردها با موفقیت فعال شد."
|
17
20
|
|
21
|
+
msgid "%(count)s records were successfully reset days."
|
22
|
+
msgstr ""
|
23
|
+
|
24
|
+
msgid "%(count)s records were successfully reset usage."
|
25
|
+
msgstr ""
|
26
|
+
|
18
27
|
msgid "%(expire_days)s days"
|
19
28
|
msgstr "%(expire_days)s روز"
|
20
29
|
|
Binary file
|
Binary file
|
@@ -9,12 +9,21 @@ msgstr ""
|
|
9
9
|
" Procurar\n"
|
10
10
|
"Configurações"
|
11
11
|
|
12
|
+
msgid "%(count)s records were successfully deleted."
|
13
|
+
msgstr ""
|
14
|
+
|
12
15
|
msgid "%(count)s records were successfully disabled."
|
13
16
|
msgstr "%(count)s registros foram desativados com sucesso."
|
14
17
|
|
15
18
|
msgid "%(count)s records were successfully enabled."
|
16
19
|
msgstr "%(count)s registros foram ativados com sucesso."
|
17
20
|
|
21
|
+
msgid "%(count)s records were successfully reset days."
|
22
|
+
msgstr ""
|
23
|
+
|
24
|
+
msgid "%(count)s records were successfully reset usage."
|
25
|
+
msgstr ""
|
26
|
+
|
18
27
|
msgid "%(expire_days)s days"
|
19
28
|
msgstr "%(expire_days)s dias"
|
20
29
|
|
Binary file
|
@@ -9,12 +9,21 @@ msgstr ""
|
|
9
9
|
" Поиск\n"
|
10
10
|
"Настройки"
|
11
11
|
|
12
|
+
msgid "%(count)s records were successfully deleted."
|
13
|
+
msgstr ""
|
14
|
+
|
12
15
|
msgid "%(count)s records were successfully disabled."
|
13
16
|
msgstr "%(count)s записей были успешно отключены."
|
14
17
|
|
15
18
|
msgid "%(count)s records were successfully enabled."
|
16
19
|
msgstr "%(count)s записей были успешно включены."
|
17
20
|
|
21
|
+
msgid "%(count)s records were successfully reset days."
|
22
|
+
msgstr ""
|
23
|
+
|
24
|
+
msgid "%(count)s records were successfully reset usage."
|
25
|
+
msgstr ""
|
26
|
+
|
18
27
|
msgid "%(expire_days)s days"
|
19
28
|
msgstr "%(expire_days)s дней"
|
20
29
|
|
Binary file
|
@@ -7,12 +7,21 @@ msgid ""
|
|
7
7
|
" Settings"
|
8
8
|
msgstr " 搜索<inlang-LineFeed>设置"
|
9
9
|
|
10
|
+
msgid "%(count)s records were successfully deleted."
|
11
|
+
msgstr ""
|
12
|
+
|
10
13
|
msgid "%(count)s records were successfully disabled."
|
11
14
|
msgstr "%(count)s 条记录已成功禁用。"
|
12
15
|
|
13
16
|
msgid "%(count)s records were successfully enabled."
|
14
17
|
msgstr "%(count)s 条记录已成功启用。"
|
15
18
|
|
19
|
+
msgid "%(count)s records were successfully reset days."
|
20
|
+
msgstr ""
|
21
|
+
|
22
|
+
msgid "%(count)s records were successfully reset usage."
|
23
|
+
msgstr ""
|
24
|
+
|
16
25
|
msgid "%(expire_days)s days"
|
17
26
|
msgstr "%(expire_days)s 天"
|
18
27
|
|
@@ -1,7 +1,10 @@
|
|
1
1
|
{
|
2
2
|
" Search\n Settings": " Search\n Settings",
|
3
|
+
"%(count)s records were successfully deleted.": "%(count)s records were successfully deleted.",
|
3
4
|
"%(count)s records were successfully disabled.": "%(count)s Records were successfully disabled.",
|
4
5
|
"%(count)s records were successfully enabled.": "%(count)s Records were successfully enabled.",
|
6
|
+
"%(count)s records were successfully reset days.": "%(count)s records were successfully reset days.",
|
7
|
+
"%(count)s records were successfully reset usage.": "%(count)s records were successfully reset usage.",
|
5
8
|
"%(expire_days)s days": "%(expire_days)s Days",
|
6
9
|
"%(placeholder)s": "%(placeholder)s",
|
7
10
|
"0 - Last day": "Last Day",
|
@@ -1,7 +1,10 @@
|
|
1
1
|
{
|
2
2
|
" Search\n Settings": " جستجو کردن\nتنظیمات",
|
3
|
+
"%(count)s records were successfully deleted.": "",
|
3
4
|
"%(count)s records were successfully disabled.": "%(count)s رکورد با موفقیت غیرفعال شد.",
|
4
5
|
"%(count)s records were successfully enabled.": "%(count)s رکوردها با موفقیت فعال شد.",
|
6
|
+
"%(count)s records were successfully reset days.": "",
|
7
|
+
"%(count)s records were successfully reset usage.": "",
|
5
8
|
"%(expire_days)s days": "%(expire_days)s روز",
|
6
9
|
"%(placeholder)s": "%(placeholder)s",
|
7
10
|
"0 - Last day": "آخرین روز",
|
@@ -1,7 +1,10 @@
|
|
1
1
|
{
|
2
2
|
" Search\n Settings": " Procurar\nConfigurações",
|
3
|
+
"%(count)s records were successfully deleted.": "",
|
3
4
|
"%(count)s records were successfully disabled.": "%(count)s registros foram desativados com sucesso.",
|
4
5
|
"%(count)s records were successfully enabled.": "%(count)s registros foram ativados com sucesso.",
|
6
|
+
"%(count)s records were successfully reset days.": "",
|
7
|
+
"%(count)s records were successfully reset usage.": "",
|
5
8
|
"%(expire_days)s days": "%(expire_days)s dias",
|
6
9
|
"%(placeholder)s": "%(placeholder)s",
|
7
10
|
"0 - Last day": "Último dia",
|
@@ -1,7 +1,10 @@
|
|
1
1
|
{
|
2
2
|
" Search\n Settings": " Поиск\nНастройки",
|
3
|
+
"%(count)s records were successfully deleted.": "",
|
3
4
|
"%(count)s records were successfully disabled.": "%(count)s записей были успешно отключены.",
|
4
5
|
"%(count)s records were successfully enabled.": "%(count)s записей были успешно включены.",
|
6
|
+
"%(count)s records were successfully reset days.": "",
|
7
|
+
"%(count)s records were successfully reset usage.": "",
|
5
8
|
"%(expire_days)s days": "%(expire_days)s дней",
|
6
9
|
"%(placeholder)s": "%(placeholder)s",
|
7
10
|
"0 - Last day": "Последний день",
|
@@ -1,7 +1,10 @@
|
|
1
1
|
{
|
2
2
|
" Search\n Settings": " 搜索<inlang-LineFeed>设置",
|
3
|
+
"%(count)s records were successfully deleted.": "",
|
3
4
|
"%(count)s records were successfully disabled.": "%(count)s 条记录已成功禁用。",
|
4
5
|
"%(count)s records were successfully enabled.": "%(count)s 条记录已成功启用。",
|
6
|
+
"%(count)s records were successfully reset days.": "",
|
7
|
+
"%(count)s records were successfully reset usage.": "",
|
5
8
|
"%(expire_days)s days": "%(expire_days)s 天",
|
6
9
|
"%(placeholder)s": "%(placeholder)s",
|
7
10
|
"0 - Last day": "最后一天",
|
@@ -1,6 +1,6 @@
|
|
1
1
|
hiddifypanel/Events.py,sha256=AlnRdjVul0jP-NCT4-zoaQgowoOo-JhdQB4ytetAFKA,723
|
2
|
-
hiddifypanel/VERSION,sha256=
|
3
|
-
hiddifypanel/VERSION.py,sha256=
|
2
|
+
hiddifypanel/VERSION,sha256=Zvld67Z7jUvyvLRTH3vKfVzHZ3Yy7x9YBcyjaRcLbZA,8
|
3
|
+
hiddifypanel/VERSION.py,sha256=TamzsGw_L6qmp_cZei7lxWDXlxrIg3mwASZOx5PQr-Q,187
|
4
4
|
hiddifypanel/__init__.py,sha256=kigwDO8d9jXyPZLvJAWd6zo-GX3pG_xWf-q2aStz80Y,377
|
5
5
|
hiddifypanel/__main__.py,sha256=IVchnXpK6bm8T3N--mN17HBQNLMeLAjyP7iwzULexB4,218
|
6
6
|
hiddifypanel/auth.py,sha256=LJmH4ROqZv5ej_4m1b0xvbEw2meJTzDR1mFCDm523kE,8041
|
@@ -44,11 +44,11 @@ hiddifypanel/hutils/node/parent.py,sha256=UbyfvfP4fTSn6HN9oZDjYsKYIejiqW6eApKIfP
|
|
44
44
|
hiddifypanel/hutils/node/shared.py,sha256=FDSj3e-i3pb3mEv5vcUeX0Km1nxYg1CeAruIq7RwFmU,2540
|
45
45
|
hiddifypanel/hutils/proxy/__init__.py,sha256=V2dGkYT3tji__5YOSmKOMChFYXtlENe1fX6eHqK70Pc,129
|
46
46
|
hiddifypanel/hutils/proxy/clash.py,sha256=JiT3wj48b9ezCGxZoEp5FrhvwfmNKslcF5GMoH9-8OU,7061
|
47
|
-
hiddifypanel/hutils/proxy/shared.py,sha256=
|
47
|
+
hiddifypanel/hutils/proxy/shared.py,sha256=JRUNhBbxcASAFZrQCwc83hBF5ZATCCrYtX1zlGUx9v8,24248
|
48
48
|
hiddifypanel/hutils/proxy/singbox.py,sha256=Fmmzoake-gpnRB5yfTyQvd1dB-10WKwhJt4vhiKzJZQ,11722
|
49
49
|
hiddifypanel/hutils/proxy/wireguard.py,sha256=gij01BYXII-RxAh3Yky0o3yce20HJKeHtu1KNwb0Uzk,934
|
50
|
-
hiddifypanel/hutils/proxy/xray.py,sha256=
|
51
|
-
hiddifypanel/hutils/proxy/xrayjson.py,sha256=
|
50
|
+
hiddifypanel/hutils/proxy/xray.py,sha256=IypJKIGxZnjrJ1SsXa-412uWdJtmCcEavZMCyIPHH7U,11793
|
51
|
+
hiddifypanel/hutils/proxy/xrayjson.py,sha256=0N2NCeKUpcejHNn_fx0uXtmHGPQuPETDBny_8Le4Ob0,16602
|
52
52
|
hiddifypanel/models/__init__.py,sha256=PngFjQL9WvQP4EioNHRz1tTeyIgLoNvZ7WpmAhwKHnU,677
|
53
53
|
hiddifypanel/models/admin.py,sha256=bbvpbquyPTmRjqwVT4zVC3bIF39zZYv8snlOR5XIF90,7517
|
54
54
|
hiddifypanel/models/base_account.py,sha256=jVO4haLwTsiE7u4fWoDhhRZ_NjbO7hVJhry8k-Vnrzk,3507
|
@@ -72,7 +72,7 @@ hiddifypanel/panel/common.py,sha256=pMxdgt37ubIZroFBuvHfN5qXNp8kytVTIzVxzZA_X_I,
|
|
72
72
|
hiddifypanel/panel/custom_widgets.py,sha256=ojnLz-kAa1juZVW1JoCy8FAjvWNORKNpFIb8OnY0lLw,3767
|
73
73
|
hiddifypanel/panel/hiddify.py,sha256=nwLTMYa_LyNuS26BPOO8jfyrslHX2MbQxN0o4lxCTd4,15687
|
74
74
|
hiddifypanel/panel/hlogger.py,sha256=1AQQCs1lg0Y1AYIASRjxWAdFE92HENeg3z1rFycOoY0,1215
|
75
|
-
hiddifypanel/panel/init_db.py,sha256=
|
75
|
+
hiddifypanel/panel/init_db.py,sha256=nhb5hGryptfbbGD9vs9NhIk32GFGE73IbgSNDa78Q3E,39520
|
76
76
|
hiddifypanel/panel/run_commander.py,sha256=cXCFVvZ6iTzab3EOZ-Eq3aOeIqfgzgt2ppNaxm_3OJI,3205
|
77
77
|
hiddifypanel/panel/usage.py,sha256=kQAz9nfHt3Mcfa8kLHdrpD408DZEFDT7T1xFV6MlDQE,11991
|
78
78
|
hiddifypanel/panel/admin/Actions.py,sha256=o_ENbphriVrbRJkx9nvrkpaliuMIfp34sscMkZJ3P5s,8578
|
@@ -86,7 +86,7 @@ hiddifypanel/panel/admin/ProxyAdmin.py,sha256=HtuYHkZ8LCrYtjF2xO2i7lyw_KtOTBYCPu
|
|
86
86
|
hiddifypanel/panel/admin/QuickSetup.py,sha256=7ysSAlS7yJerstTDWhuhEwGyoTqpkry2-SfEbuP1VuY,12689
|
87
87
|
hiddifypanel/panel/admin/SettingAdmin.py,sha256=PLu9SEffkMu_GfgRJ5VGjIdaU_8AvkGs5KlskqjRxxI,20434
|
88
88
|
hiddifypanel/panel/admin/Terminal.py,sha256=rzZWRjMhjVnAvC65rfE3HJT3boUDznI6fl-htzKp7sI,1712
|
89
|
-
hiddifypanel/panel/admin/UserAdmin.py,sha256=
|
89
|
+
hiddifypanel/panel/admin/UserAdmin.py,sha256=SasWk0Lt2II70QrFE90dc83b41icONATxqvw-isu5XE,21068
|
90
90
|
hiddifypanel/panel/admin/__init__.py,sha256=hb0A2HuK_nBZRCNPumwahXX-25FMxODKYlNbk2ItF08,3015
|
91
91
|
hiddifypanel/panel/admin/adminlte.py,sha256=TrUUu6WYUM-rpgvW2C2KBq3bXkvKe3Pa3cEPjpWCJuk,758
|
92
92
|
hiddifypanel/panel/admin/commercial_info.py,sha256=_fBJcR6zTlMs5Wx4NQJYxq5LvMHY8qfoh73-eCNJyb8,278
|
@@ -842,28 +842,28 @@ hiddifypanel/templates/redirect.html,sha256=K9x_O4P96vEkqBhOXIhoGrWw1KIqd2bL0BjI
|
|
842
842
|
hiddifypanel/templates/static.html,sha256=jp6q4wtx-k2A_cjqJoNiMS7Ee30arE45qI3ev4d5ky4,165
|
843
843
|
hiddifypanel/templates/hiddify-flask-admin/actions.html,sha256=2NeITe2e-lPKCk_o511tCIqVtrPu8LYHE1wTCtrFUrI,1331
|
844
844
|
hiddifypanel/templates/hiddify-flask-admin/list.html,sha256=MBGrTqZpzNLe4sZy0RozvXNr8seFUQc2C6v88BJtNWc,11095
|
845
|
-
hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=
|
846
|
-
hiddifypanel/translations/en/LC_MESSAGES/messages.po,sha256=
|
847
|
-
hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=
|
848
|
-
hiddifypanel/translations/fa/LC_MESSAGES/messages.po,sha256=
|
849
|
-
hiddifypanel/translations/my/LC_MESSAGES/messages.mo,sha256=
|
845
|
+
hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=Q4f8pDlINJyhlyHflxfeHXiYwnAV7sQVn9hUz_918vU,81676
|
846
|
+
hiddifypanel/translations/en/LC_MESSAGES/messages.po,sha256=tH2xN-ZD2QMyAkGBrqdPc5xMbotaDvfNhoQgGieHmAA,85045
|
847
|
+
hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=rzywk0j4KEfZalyMnxK9FHCQUa-K_zGnqObfPsZct04,104622
|
848
|
+
hiddifypanel/translations/fa/LC_MESSAGES/messages.po,sha256=UFCQQk8Xp5UVh18jqTn9h8ofc5rCBGRRorVCxLNAXfU,109594
|
849
|
+
hiddifypanel/translations/my/LC_MESSAGES/messages.mo,sha256=w-eurbAH_9t7t4B15ihJsGK1g3adCvGJ58s4woqynsI,139090
|
850
850
|
hiddifypanel/translations/my/LC_MESSAGES/messages.po,sha256=PvYBwQWXaUpAoqy90oow-sH-ZyPE7Fm_l-3FrXT_vEA,141985
|
851
|
-
hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=
|
852
|
-
hiddifypanel/translations/pt/LC_MESSAGES/messages.po,sha256=
|
853
|
-
hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=
|
854
|
-
hiddifypanel/translations/ru/LC_MESSAGES/messages.po,sha256=
|
855
|
-
hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=
|
856
|
-
hiddifypanel/translations/zh/LC_MESSAGES/messages.po,sha256=
|
857
|
-
hiddifypanel/translations.i18n/en.json,sha256=
|
858
|
-
hiddifypanel/translations.i18n/fa.json,sha256=
|
851
|
+
hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=KpqVNpjlluw2wrl3aPxgxiSZb2RtYIciG79zzwFPMPU,80947
|
852
|
+
hiddifypanel/translations/pt/LC_MESSAGES/messages.po,sha256=pv73X2o2Iu6uPB4p0KQZf3bZDXit8BkF6vpld6WnfGU,86182
|
853
|
+
hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=yLpgxIqXNS_0f4n6jJOLGq-XMSRlf-B6cT7TJFmoHdA,108744
|
854
|
+
hiddifypanel/translations/ru/LC_MESSAGES/messages.po,sha256=0icV7NCGDwDWIDvKtxnRCK77TXKxopHAFAHjSoOirbE,114185
|
855
|
+
hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=S0_Mc4Yvmq6zu152rMcn9Z6bCRSnYnFgFszAsj3Tgdw,75446
|
856
|
+
hiddifypanel/translations/zh/LC_MESSAGES/messages.po,sha256=z_dw_uNhx9bGyBwS_0-r-mNYERcx4zY9GgGU_K-GnNs,80292
|
857
|
+
hiddifypanel/translations.i18n/en.json,sha256=S8ZMPi2KAoylyfAHTFd6ZeI-pcx87GLmEI0SbbI-jpk,73876
|
858
|
+
hiddifypanel/translations.i18n/fa.json,sha256=LFB3fkM7BSRXFH9T0K70xNXJsNuIr8HOtqxDxjd38mQ,98435
|
859
859
|
hiddifypanel/translations.i18n/fr.json,sha256=mAZvPzYQhQ1zleLr21cxeB99mb8gvoJBlw7_8AsJgQc,80895
|
860
860
|
hiddifypanel/translations.i18n/my.json,sha256=FWUSUOcHAmVBaq7KL2aX5W8ywsElsy_Dj_ZHuT2EMpE,137466
|
861
|
-
hiddifypanel/translations.i18n/pt.json,sha256=
|
862
|
-
hiddifypanel/translations.i18n/ru.json,sha256=
|
863
|
-
hiddifypanel/translations.i18n/zh.json,sha256=
|
864
|
-
hiddifypanel-11.0.
|
865
|
-
hiddifypanel-11.0.
|
866
|
-
hiddifypanel-11.0.
|
867
|
-
hiddifypanel-11.0.
|
868
|
-
hiddifypanel-11.0.
|
869
|
-
hiddifypanel-11.0.
|
861
|
+
hiddifypanel/translations.i18n/pt.json,sha256=0GA2ZmV-xd1ljoKzRikMynV3ViZqE-t05MoG3jTi9QA,75209
|
862
|
+
hiddifypanel/translations.i18n/ru.json,sha256=YQtSRYSo-CLs8Cetwf-dFGikQzGZqNJrYoM24pymkK8,102996
|
863
|
+
hiddifypanel/translations.i18n/zh.json,sha256=toVy3NEw0n7MS4ZbRZd-5Fh_n1wGlZsviUZf8XPZ6CE,69742
|
864
|
+
hiddifypanel-11.0.11.dist-info/licenses/LICENSE.md,sha256=oDrt-cUsyiDGnRPjEJh-3dH2ddAuK_bIVBD8ntkOtZw,19807
|
865
|
+
hiddifypanel-11.0.11.dist-info/METADATA,sha256=8HSIL4UNrmQodi4HVLWFf4tYFl5Roh0yg4nVmYvG3DM,25625
|
866
|
+
hiddifypanel-11.0.11.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
867
|
+
hiddifypanel-11.0.11.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
|
868
|
+
hiddifypanel-11.0.11.dist-info/top_level.txt,sha256=rv-b3qFWUZQTBy0kyBfsr7L6tPpeO7AaQlLHXn-HI5M,13
|
869
|
+
hiddifypanel-11.0.11.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|