hiddifypanel 10.15.0.dev4__py3-none-any.whl → 10.16.0.dev0__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 +1 -1
- hiddifypanel/drivers/xray_api.py +33 -18
- hiddifypanel/hutils/flask.py +3 -2
- hiddifypanel/panel/admin/DomainAdmin.py +4 -1
- hiddifypanel/panel/commercial/restapi/v2/user/info_api.py +1 -1
- hiddifypanel/panel/common.py +1 -2
- hiddifypanel/static/images/favicon.ico +0 -0
- hiddifypanel/templates/master.html +39 -20
- hiddifypanel/translations/en/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/fa/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/pt/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/ru/LC_MESSAGES/messages.mo +0 -0
- hiddifypanel/translations/zh/LC_MESSAGES/messages.mo +0 -0
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/METADATA +1 -1
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/RECORD +20 -20
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/LICENSE.md +0 -0
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/WHEEL +0 -0
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/entry_points.txt +0 -0
- {hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/top_level.txt +0 -0
hiddifypanel/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
10.
|
1
|
+
10.16.0.dev0
|
hiddifypanel/VERSION.py
CHANGED
hiddifypanel/drivers/xray_api.py
CHANGED
@@ -13,22 +13,32 @@ class XrayApi(DriverABS):
|
|
13
13
|
|
14
14
|
def get_enabled_users(self):
|
15
15
|
xray_client = self.get_xray_client()
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
uuid =
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
16
|
+
usages = xray_client.stats_query('user', reset=True)
|
17
|
+
res = defaultdict(int)
|
18
|
+
for use in usages:
|
19
|
+
if "user>>>" not in use.name:
|
20
|
+
continue
|
21
|
+
uuid = use.name.split(">>>")[1].split("@")[0]
|
22
|
+
res[uuid] = 1
|
23
|
+
return res
|
24
|
+
|
25
|
+
# xray_client = self.get_xray_client()
|
26
|
+
# users = User.query.all()
|
27
|
+
# t = "xtls"
|
28
|
+
# protocol = "vless"
|
29
|
+
# enabled = {}
|
30
|
+
# for u in users:
|
31
|
+
# uuid = u.uuid
|
32
|
+
# try:
|
33
|
+
# xray_client.add_client(t, f'{uuid}', f'{uuid}@hiddify.com', protocol=protocol, flow='xtls-rprx-vision', alter_id=0, cipher='chacha20_poly1305')
|
34
|
+
# xray_client.remove_client(t, f'{uuid}@hiddify.com')
|
35
|
+
# enabled[uuid] = 0
|
36
|
+
# except xtlsapi.xtlsapi.exceptions.EmailAlreadyExists as e:
|
37
|
+
# enabled[uuid] = 1
|
38
|
+
# except Exception as e:
|
39
|
+
# print(f"error {e}")
|
40
|
+
# enabled[uuid] = e
|
41
|
+
# return enabled
|
32
42
|
|
33
43
|
def get_inbound_tags(self):
|
34
44
|
try:
|
@@ -80,7 +90,9 @@ class XrayApi(DriverABS):
|
|
80
90
|
pass
|
81
91
|
|
82
92
|
def remove_client(self, user):
|
83
|
-
|
93
|
+
return self._remove_client(user.uuid)
|
94
|
+
|
95
|
+
def _remove_client(self, uuid):
|
84
96
|
xray_client = self.get_xray_client()
|
85
97
|
tags = self.get_inbound_tags()
|
86
98
|
|
@@ -101,7 +113,10 @@ class XrayApi(DriverABS):
|
|
101
113
|
if "user>>>" not in use.name:
|
102
114
|
continue
|
103
115
|
uuid = use.name.split(">>>")[1].split("@")[0]
|
104
|
-
|
116
|
+
if u := uuid_user_map.get(uuid):
|
117
|
+
res[u] += use.value
|
118
|
+
else:
|
119
|
+
self._remove_client(uuid)
|
105
120
|
return res
|
106
121
|
|
107
122
|
def get_usage_imp(self, uuid):
|
hiddifypanel/hutils/flask.py
CHANGED
@@ -2,7 +2,7 @@ from typing import List, Tuple
|
|
2
2
|
from flask import current_app, flash as flask_flash, g, request
|
3
3
|
from wtforms.validators import ValidationError
|
4
4
|
from apiflask import abort as apiflask_abort
|
5
|
-
from flask_babel import
|
5
|
+
from flask_babel import gettext as _
|
6
6
|
from flask import url_for # type: ignore
|
7
7
|
from urllib.parse import urlparse
|
8
8
|
from markupsafe import Markup
|
@@ -17,7 +17,8 @@ from hiddifypanel import hutils
|
|
17
17
|
|
18
18
|
|
19
19
|
def flash(message: str, category: str = "message"):
|
20
|
-
|
20
|
+
# if isinstance(message, LazyString)
|
21
|
+
return flask_flash(message, category)
|
21
22
|
|
22
23
|
|
23
24
|
def flash_config_success(restart_mode: ApplyMode = ApplyMode.nothing, domain_changed=True):
|
@@ -156,7 +156,10 @@ class DomainAdmin(AdminLTEModelView):
|
|
156
156
|
for td in Domain.query.filter(Domain.mode == DomainType.reality, Domain.domain != model.domain).all():
|
157
157
|
# print(td)
|
158
158
|
if td.servernames and (model.domain in td.servernames.split(",")):
|
159
|
-
raise ValidationError(_("You have used this domain in: ") + _(f"config.reality_server_names.label") +
|
159
|
+
raise ValidationError(_("You have used this domain in: ") + _(f"config.reality_server_names.label") + td.domain)
|
160
|
+
|
161
|
+
if is_created and Domain.query.filter(Domain.domain == model.domain, Domain.child_id == model.child_id).count() > 1:
|
162
|
+
raise ValidationError(_("You have used this domain in: "))
|
160
163
|
|
161
164
|
ipv4_list = hutils.network.get_ips(4)
|
162
165
|
ipv6_list = hutils.network.get_ips(6)
|
@@ -62,7 +62,7 @@ class InfoAPI(MethodView):
|
|
62
62
|
|
63
63
|
dto.doh = f"https://{request.host}/{g.proxy_path}/dns/dns-query"
|
64
64
|
dto.lang = (c['user'].lang) or Lang(hconfig(ConfigEnum.lang))
|
65
|
-
dto.brand_icon_url = "" if hconfig(ConfigEnum.branding_title) else hutils.flask.static_url_for(filename="images/
|
65
|
+
dto.brand_icon_url = "" if hconfig(ConfigEnum.branding_title) else hutils.flask.static_url_for(filename="images/favicon.ico")
|
66
66
|
# with force_locale("fa"):
|
67
67
|
dto.admin_message_html = hconfig(ConfigEnum.branding_freetext) or _("Join our Hiddify Telegram channel to get the latest updates on Hiddify.")
|
68
68
|
if not hconfig(ConfigEnum.branding_freetext) and auth.admin_session_is_exist():
|
hiddifypanel/panel/common.py
CHANGED
@@ -163,8 +163,7 @@ def init_app(app: APIFlask):
|
|
163
163
|
|
164
164
|
# setup dark mode
|
165
165
|
if request.args.get('darkmode') is not None:
|
166
|
-
session['darkmode'] = request.args.get(
|
167
|
-
'darkmode', '').lower() == 'true'
|
166
|
+
session['darkmode'] = request.args.get('darkmode', '').lower() == 'true'
|
168
167
|
g.darkmode = session.get('darkmode', False)
|
169
168
|
|
170
169
|
# setup pwa
|
Binary file
|
@@ -20,25 +20,35 @@
|
|
20
20
|
{% else %}
|
21
21
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
22
22
|
{% endif %}
|
23
|
-
<link href="{{static_url_for(filename='images/splash/iphone5_splash.png')}}"
|
23
|
+
<link href="{{static_url_for(filename='images/splash/iphone5_splash.png')}}"
|
24
|
+
media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
24
25
|
rel="apple-touch-startup-image" />
|
25
|
-
<link href="{{static_url_for(filename='images/splash/iphone6_splash.png')}}"
|
26
|
+
<link href="{{static_url_for(filename='images/splash/iphone6_splash.png')}}"
|
27
|
+
media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
26
28
|
rel="apple-touch-startup-image" />
|
27
|
-
<link href="{{static_url_for(filename='images/splash/iphoneplus_splash.png')}}"
|
29
|
+
<link href="{{static_url_for(filename='images/splash/iphoneplus_splash.png')}}"
|
30
|
+
media="(device-width: 621px) and (device-height: 1104px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"
|
28
31
|
rel="apple-touch-startup-image" />
|
29
|
-
<link href="{{static_url_for(filename='images/splash/iphonex_splash.png')}}"
|
32
|
+
<link href="{{static_url_for(filename='images/splash/iphonex_splash.png')}}"
|
33
|
+
media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"
|
30
34
|
rel="apple-touch-startup-image" />
|
31
|
-
<link href="{{static_url_for(filename='images/splash/iphonexr_splash.png')}}"
|
35
|
+
<link href="{{static_url_for(filename='images/splash/iphonexr_splash.png')}}"
|
36
|
+
media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
32
37
|
rel="apple-touch-startup-image" />
|
33
|
-
<link href="{{static_url_for(filename='images/splash/iphonexsmax_splash.png')}}"
|
38
|
+
<link href="{{static_url_for(filename='images/splash/iphonexsmax_splash.png')}}"
|
39
|
+
media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"
|
34
40
|
rel="apple-touch-startup-image" />
|
35
|
-
<link href="{{static_url_for(filename='images/splash/ipad_splash.png')}}"
|
41
|
+
<link href="{{static_url_for(filename='images/splash/ipad_splash.png')}}"
|
42
|
+
media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
36
43
|
rel="apple-touch-startup-image" />
|
37
|
-
<link href="{{static_url_for(filename='images/splash/ipadpro1_splash.png')}}"
|
44
|
+
<link href="{{static_url_for(filename='images/splash/ipadpro1_splash.png')}}"
|
45
|
+
media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
38
46
|
rel="apple-touch-startup-image" />
|
39
|
-
<link href="{{static_url_for(filename='images/splash/ipadpro3_splash.png')}}"
|
47
|
+
<link href="{{static_url_for(filename='images/splash/ipadpro3_splash.png')}}"
|
48
|
+
media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
40
49
|
rel="apple-touch-startup-image" />
|
41
|
-
<link href="{{static_url_for(filename='images/splash/ipadpro2_splash.png')}}"
|
50
|
+
<link href="{{static_url_for(filename='images/splash/ipadpro2_splash.png')}}"
|
51
|
+
media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
|
42
52
|
rel="apple-touch-startup-image" />
|
43
53
|
<link rel="icon" type="image/x-icon" href="{{ static_url_for( filename='images/favicon.ico')}}">
|
44
54
|
<link rel="manifest" href="{{ hurl_for('common_bp.LoginView:create_pwa_manifest',secret_uuid=g.account.uuid or '')}}">
|
@@ -60,7 +70,8 @@
|
|
60
70
|
<link rel="stylesheet" href="{{static_url_for(filename='plugins/datatables/extensions/Responsive/css/responsive.bootstrap4.min.css')}}"> -->
|
61
71
|
|
62
72
|
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.13.2/css/dataTables.bootstrap4.min.css">
|
63
|
-
<link rel="stylesheet" type="text/css"
|
73
|
+
<link rel="stylesheet" type="text/css"
|
74
|
+
href="https://cdn.datatables.net/responsive/2.4.0/css/responsive.bootstrap4.min.css">
|
64
75
|
|
65
76
|
<link rel="stylesheet" href="{{ static_url_for( filename='css/custom.css',version=5.23 ) }}">
|
66
77
|
{% if get_locale()=='fa' %}
|
@@ -77,7 +88,8 @@
|
|
77
88
|
|
78
89
|
</head>
|
79
90
|
|
80
|
-
<body class="hold-transition layout-fixed {{" dark-mode" if g.darkmode else "" }} {% block bodyclass
|
91
|
+
<body class="hold-transition layout-fixed {{" dark-mode" if g.darkmode else "" }} {% block bodyclass
|
92
|
+
%}sidebar-collapse{%endblock%}">
|
81
93
|
<div id="splash_screen">
|
82
94
|
<center>
|
83
95
|
|
@@ -148,12 +160,14 @@
|
|
148
160
|
</div>
|
149
161
|
|
150
162
|
<ul class="nav col-md-4 justify-content-end list-unstyled d-flex">
|
151
|
-
<li class="ms-3"><a class="text-secondary" href="https://github.com/hiddify/hiddify-manager/wiki"><i
|
163
|
+
<li class="ms-3"><a class="text-secondary" href="https://github.com/hiddify/hiddify-manager/wiki"><i
|
164
|
+
class="fa-brands fa-github"></i></a></li>
|
152
165
|
<li class="ms-3"><a class="text-danger" href="https://youtube.com/@hiddify/videos">
|
153
166
|
<i class="fa-brands fa-square-youtube fa-margin"></i> </a></li>
|
154
167
|
<li class="ms-3"><a class="text-primary" href="https://twitter.com/intent/follow?screen_name=hiddify_com">
|
155
168
|
<i class="fa-brands fa-square-twitter fa-margin"></i> </a></li>
|
156
|
-
<li class="ms-3"><a class="text-primary" href="https://t.me/hiddify"> <i
|
169
|
+
<li class="ms-3"><a class="text-primary" href="https://t.me/hiddify"> <i
|
170
|
+
class="fa-brands fa-telegram fa-margin"></i> </a></li>
|
157
171
|
</ul>
|
158
172
|
|
159
173
|
</footer>
|
@@ -163,7 +177,8 @@
|
|
163
177
|
</div>
|
164
178
|
<!-- ./wrapper -->
|
165
179
|
|
166
|
-
{#modal("guide-modal","","<video id='guide-video' controls
|
180
|
+
{#modal("guide-modal","","<video id='guide-video' controls
|
181
|
+
style='max-height: 100%; max-width: 100%;width: auto; height: auto;'>
|
167
182
|
<source id='guide-video-mp4' type='video/mp4'>
|
168
183
|
</video>")#}
|
169
184
|
|
@@ -182,8 +197,10 @@
|
|
182
197
|
<div class="btn-group">
|
183
198
|
<a id='qrcode-link' class="btn btn-primary copy-link" href=""><i class="fa-regular fa-copy"></i>
|
184
199
|
{{_("copy")}} </a>
|
185
|
-
<a id="share-link-redirect" class="btn btn-success copy-link" href=""><i
|
186
|
-
|
200
|
+
<a id="share-link-redirect" class="btn btn-success copy-link" href=""><i
|
201
|
+
class="fa-solid fa-share-from-square"></i> {{_('clickable copy')}}</a>
|
202
|
+
<a target="_blank" id="share-link-open" class="btn btn-secondary" href=""><i
|
203
|
+
class="fa-solid fa-arrow-up-right-from-square"></i> {{_('open')}}</a>
|
187
204
|
</div>
|
188
205
|
<br />
|
189
206
|
<div id="qrcode" style="margin:10px;padding:10px;"></div>
|
@@ -234,8 +251,10 @@
|
|
234
251
|
|
235
252
|
<script src="{{ static_url_for( filename='plugins/datatables/jquery.dataTables.min.js' ) }}"></script>
|
236
253
|
<script src="{{ static_url_for( filename='plugins/datatables/dataTables.bootstrap4.js' ) }}"></script>
|
237
|
-
<script
|
238
|
-
|
254
|
+
<script
|
255
|
+
src="{{ static_url_for( filename='plugins/datatables/extensions/Responsive/js/dataTables.responsive.min.js' ) }}"></script>
|
256
|
+
<script
|
257
|
+
src="{{ static_url_for( filename='plugins/datatables/extensions/Responsive/js/responsive.bootstrap4.min.js' ) }}"></script>
|
239
258
|
|
240
259
|
<!-- <script type="text/javascript" language="javascript" src="https://cdn.datatables.net/1.13.2/js/jquery.dataTables.min.js"></script>
|
241
260
|
<script type="text/javascript" language="javascript" src="https://cdn.datatables.net/1.13.2/js/dataTables.bootstrap4.min.js"></script>
|
@@ -307,7 +326,7 @@
|
|
307
326
|
position: "{{'topLeft' if get_locale()=='fa' else 'topRight'}}",
|
308
327
|
|
309
328
|
|
310
|
-
body: `{{msg}}`
|
329
|
+
body: `{{msg|safe}}`
|
311
330
|
})
|
312
331
|
{% endfor %}
|
313
332
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -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=ugMSgWn9-MHWlcme3rr6cZMGbEkkx5qhtfvBwi9QZCs,13
|
3
|
+
hiddifypanel/VERSION.py,sha256=tdP9jIvzil6bRnSJnTO1gWydyef0rHk0VwucDnYGmLE,118
|
4
4
|
hiddifypanel/__init__.py,sha256=aLukp3ORszdcH4G9J-MlxhjHN6yFlOuOE6mm-L3aG_g,266
|
5
5
|
hiddifypanel/__main__.py,sha256=IVchnXpK6bm8T3N--mN17HBQNLMeLAjyP7iwzULexB4,218
|
6
6
|
hiddifypanel/auth.py,sha256=5GUwwKCRY90RS0WTKPfqzuOYuLuwGLpNLpnKmubf7DE,7405
|
@@ -12,13 +12,13 @@ hiddifypanel/drivers/singbox_api.py,sha256=vApQU4vwMZdd71-FEnTGm8btRLoC1l0sSzAcH
|
|
12
12
|
hiddifypanel/drivers/ssh_liberty_bridge_api.py,sha256=FXoS65hydwisizC20HTJvMQR_SNx1MvZ4Fu8jSwesWw,1768
|
13
13
|
hiddifypanel/drivers/user_driver.py,sha256=vT04mM6cFMrnqt8VLlrw5iRThPDD_dHfo8Jvn-K_eyk,1914
|
14
14
|
hiddifypanel/drivers/wireguard_api.py,sha256=YsfEIZXxwPqjhK9QGInrDFdLNCyCEPg9b9oDRW0--RY,3286
|
15
|
-
hiddifypanel/drivers/xray_api.py,sha256=
|
15
|
+
hiddifypanel/drivers/xray_api.py,sha256=ZYzScPW7DNxGxQOFdG30H9wl1qOcTjkRTq5yLcgEok0,4788
|
16
16
|
hiddifypanel/hutils/__init__.py,sha256=eHFBeXrTwiW3sb0ojTJNG_J26uiwyBoZ9O-W2lQKmeo,296
|
17
17
|
hiddifypanel/hutils/auth.py,sha256=CoT25nrneWaAnRtx7qDE0v4WkdCeV3ra78VqEN48jeE,3031
|
18
18
|
hiddifypanel/hutils/convert.py,sha256=bxkbphOC9GifVMKwgmo4lpAOyJ5rdSVRnG1eEjh8tIc,2061
|
19
19
|
hiddifypanel/hutils/crypto.py,sha256=2MDnzjM_ZJdY1zJ3eCoa2v24FYzzdKKO4viOFnvmBlI,1858
|
20
20
|
hiddifypanel/hutils/encode.py,sha256=XUq7NSrV11WeVIZFyfik8sqI82R0lKRm5mqKrxNoLrQ,834
|
21
|
-
hiddifypanel/hutils/flask.py,sha256=
|
21
|
+
hiddifypanel/hutils/flask.py,sha256=o9DHfhqZPN1j7s5sVnFAFrJp0zjalVKFPQeL_w6dd9o,10584
|
22
22
|
hiddifypanel/hutils/github_issue.py,sha256=oDJU-8BgefDdls9sUzhVpohH9utrD4WZLWrb3oUwV4c,6500
|
23
23
|
hiddifypanel/hutils/model.py,sha256=ajlJ-Tx0Mq68S9y5qEj0lwlDbF2xj0niZBQyw7UU670,1320
|
24
24
|
hiddifypanel/hutils/random.py,sha256=KrsarmRNL05PYzwMxDaDyv-_QcKS0YsZR2z7BnllAqI,1789
|
@@ -60,7 +60,7 @@ hiddifypanel/panel/auth_back.py,sha256=ft2YlK1Ke87fvKTpGLIHnLVpnBRn1Stlc_-6aEzud
|
|
60
60
|
hiddifypanel/panel/auth_back2.py,sha256=8-MkPi4WAxO7gAeChQ7ceCx0QhuEQlrYazZ9qDnm_Mc,8983
|
61
61
|
hiddifypanel/panel/cf_api.py,sha256=TByR9gRiF18TGPjGmWHEwgPdB-icfczBfrf2E-8H488,1127
|
62
62
|
hiddifypanel/panel/cli.py,sha256=a2rTpUlUsjv3aEkqAK0aa8_PW3e1IzpXWaJPb4EVIyg,9368
|
63
|
-
hiddifypanel/panel/common.py,sha256=
|
63
|
+
hiddifypanel/panel/common.py,sha256=fns77UWOc5zreyqZHEOHcHc3WuEX8mZZEwRY8J0aWAo,7995
|
64
64
|
hiddifypanel/panel/custom_widgets.py,sha256=9qI_fNX8NKqB1r8ljgcaisGZaDM89_PM_rOBZbGaTYs,2506
|
65
65
|
hiddifypanel/panel/hiddify.py,sha256=K8obO2Chc8A0Dh0FwMWT2NyvPbI8eGSHY3wLpCB2XoU,14436
|
66
66
|
hiddifypanel/panel/init_db.py,sha256=5N-y7br2PBQ9hydT8kAHjB0ujlmEmBcjqF1e5n0FkFM,32667
|
@@ -71,7 +71,7 @@ hiddifypanel/panel/admin/AdminstratorAdmin.py,sha256=Y0h_mHRblguJjK0VqZoyCPcn02k
|
|
71
71
|
hiddifypanel/panel/admin/Backup.py,sha256=dp74st7OBw_j3hH-4K4tf9EyP4qGuALaJ5pTcC-SWt8,3670
|
72
72
|
hiddifypanel/panel/admin/ConfigAdmin.py,sha256=0hnLY-8BxrpVnrAcQaedWjHnRUq1X_Styi_ZCZ2ivds,2876
|
73
73
|
hiddifypanel/panel/admin/Dashboard.py,sha256=cF1pUmSqvDad_4q7G-2xfFeFht-Vq9YrneRl0V8Caeg,4179
|
74
|
-
hiddifypanel/panel/admin/DomainAdmin.py,sha256=
|
74
|
+
hiddifypanel/panel/admin/DomainAdmin.py,sha256=n6vNX58Bc7LxYwkXcAIOKf8GZuES3-AgWQzbNmth4Vo,14592
|
75
75
|
hiddifypanel/panel/admin/NodeAdmin.py,sha256=QAHQjF7e7F4KqsWNWpMt7SoLANlFEborVtWQV9OXJ2E,3102
|
76
76
|
hiddifypanel/panel/admin/ProxyAdmin.py,sha256=e-tCTfsEjqjbRezhVJvFyQZHh-uluvHFZXXwc4aFRDE,5319
|
77
77
|
hiddifypanel/panel/admin/QuickSetup.py,sha256=X8d492PLQu8vNtabh-X2R2IDZVs_5pmWeyn-Qz5_qXk,7560
|
@@ -162,7 +162,7 @@ hiddifypanel/panel/commercial/restapi/v2/parent/usage_api.py,sha256=FOvb6nFuWcuc
|
|
162
162
|
hiddifypanel/panel/commercial/restapi/v2/user/__init__.py,sha256=SxWty7krk6kt_JORT1AyQcUfgRdY_55vRb3FAxT4LB8,1230
|
163
163
|
hiddifypanel/panel/commercial/restapi/v2/user/apps_api.py,sha256=WVq8Ufjr_HpkdHG3juTD6Tfg12kE-00VRV8PrbSiqY8,20833
|
164
164
|
hiddifypanel/panel/commercial/restapi/v2/user/configs_api.py,sha256=tc2fP-neC2mbc7sRQADpLYwlIFLr5UtUjyTsOT3rVp4,4602
|
165
|
-
hiddifypanel/panel/commercial/restapi/v2/user/info_api.py,sha256=
|
165
|
+
hiddifypanel/panel/commercial/restapi/v2/user/info_api.py,sha256=Ou-3TjwLqYYECIttjSU9rpjmfjDFbgHj2_gGnwmHj5E,3918
|
166
166
|
hiddifypanel/panel/commercial/restapi/v2/user/mtproxies.py,sha256=wK6zMOw2OTVxeMkzZGVah34GYDMJa8Keq5z7jGKfFys,1676
|
167
167
|
hiddifypanel/panel/commercial/restapi/v2/user/short_api.py,sha256=rhsmDJSCiZOhX9jpJGcRS_zBVRqvjpjH3CaNaJ9gMiI,1137
|
168
168
|
hiddifypanel/panel/commercial/telegrambot/DefaultResponse.py,sha256=WgT8LuY_AsAK6QYIXWuBOmnRIDlg4rUPPokHWOrWzHQ,378
|
@@ -257,7 +257,7 @@ hiddifypanel/static/fonts/Vazir.ttf,sha256=Xpc1n9qGYzHwscPPkG4D5zR8asPnqtQsAP13v
|
|
257
257
|
hiddifypanel/static/fonts/Vazir.woff,sha256=zeOSomAuJf5MSPtfWMQlRm-bfvW6fe3TR6bKKm3wB1A,47972
|
258
258
|
hiddifypanel/static/fonts/Vazir.woff2,sha256=hiSb0YdZo_FDhmchu-X3E5e74hrd5t5TD9E9dc8SnnA,38004
|
259
259
|
hiddifypanel/static/images/WhiteLogo.png,sha256=ZvfzfBxOkmJDyaxgI8v49Hu49lFlyJe0CuHCpokiHgs,7570
|
260
|
-
hiddifypanel/static/images/favicon.ico,sha256=
|
260
|
+
hiddifypanel/static/images/favicon.ico,sha256=rqIPdpwfnqaLFqeSbP_EIiTGQwG96Wl02ghQq9JByF4,13438
|
261
261
|
hiddifypanel/static/images/hiddify-dark.png,sha256=YGz0d6SUh5NmWr45GRPqlGJSE-MiCxr6ZVhAU2JPaX4,111125
|
262
262
|
hiddifypanel/static/images/hiddify-old.png,sha256=Lq-XqNRd5QQANwv4y7orXB3v5KERJpF8auNWB2do2CA,37408
|
263
263
|
hiddifypanel/static/images/hiddify.png,sha256=oagOQAV1sbhSirE62kzzinkGOlWh9wy6w5JLOebEamU,31712
|
@@ -815,29 +815,29 @@ hiddifypanel/templates/flaskadmin-layout.html,sha256=PkF74ld3HZ-j5_nVzVxmispnmmo
|
|
815
815
|
hiddifypanel/templates/github_issue_body.j2,sha256=6Z4QF-cOAaUxDtRQXT8H4O9SrZ3TGoxgpjnfIpGbsxo,474
|
816
816
|
hiddifypanel/templates/lte-master.html,sha256=jYhcNj8SuMOPT35OEG4e1sLWm03Vq53n4ynf3SdOWj4,1585
|
817
817
|
hiddifypanel/templates/macros.html,sha256=HlnXbIMN8i37fVusBdfw0QfVkImnFpZw9zbmtpAT4p8,4139
|
818
|
-
hiddifypanel/templates/master.html,sha256=
|
818
|
+
hiddifypanel/templates/master.html,sha256=MduWpnW-_ksXxPb1fSOYJC0SKEYnAJ8i4XwX7AUZj38,21865
|
819
819
|
hiddifypanel/templates/redirect.html,sha256=K9x_O4P96vEkqBhOXIhoGrWw1KIqd2bL0BjIqmnpZi0,412
|
820
820
|
hiddifypanel/templates/static.html,sha256=jp6q4wtx-k2A_cjqJoNiMS7Ee30arE45qI3ev4d5ky4,165
|
821
821
|
hiddifypanel/templates/hiddify-flask-admin/actions.html,sha256=2NeITe2e-lPKCk_o511tCIqVtrPu8LYHE1wTCtrFUrI,1331
|
822
822
|
hiddifypanel/templates/hiddify-flask-admin/list.html,sha256=MBGrTqZpzNLe4sZy0RozvXNr8seFUQc2C6v88BJtNWc,11095
|
823
|
-
hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=
|
823
|
+
hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=rPtaWV83QXB7qyh0mFXNEtGNdct7ZOi3U5QJDDJRtFQ,74266
|
824
824
|
hiddifypanel/translations/en/LC_MESSAGES/messages.po,sha256=htfXb1yD7U4vfsyeF9ECctKBrfJOwnaAfPp8cUiZvTE,77415
|
825
|
-
hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=
|
825
|
+
hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=Ngc8IRm8Nd7aXU0ins4e0pMRtRQr74D1HfbgMkxQf7A,94799
|
826
826
|
hiddifypanel/translations/fa/LC_MESSAGES/messages.po,sha256=kfaTzdmS1eJCb0NjrHLfltd_y-FGXI2LCQxDEannE4E,99980
|
827
|
-
hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=
|
827
|
+
hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=W_2BDz65QT8a_v-j3ZTCTd8u9qufpjJ0BQSRpLrEkU0,60612
|
828
828
|
hiddifypanel/translations/pt/LC_MESSAGES/messages.po,sha256=tUp3Ed-ZBDZeD99yb7o6I76wWUU_QQT2i_cQfNV_7Zk,69869
|
829
|
-
hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=
|
829
|
+
hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=0xGRdDDqJcbQ21-FQ3upJaBc-gxZ-x93wqiK0lIJ5lg,95543
|
830
830
|
hiddifypanel/translations/ru/LC_MESSAGES/messages.po,sha256=ojNL5z1gvjgiO-5hjccCLhK0Z-CeZKrwE3yiEE4ekeg,102007
|
831
|
-
hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=
|
831
|
+
hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=ZYp6tM5CxYBykEXEkNR_vAmysGN5q_95e6mw_dn3dwY,60878
|
832
832
|
hiddifypanel/translations/zh/LC_MESSAGES/messages.po,sha256=f0fv1MW5_Okc5GixUoPv5BkV0XwM6wKrjK7khLeiv18,69040
|
833
833
|
hiddifypanel/translations.i18n/en.json,sha256=07z5rKyF0AADkYOPjJVAN9aFrbtj4V8ZAQM5wK4f4bc,67420
|
834
834
|
hiddifypanel/translations.i18n/fa.json,sha256=M5-D3rdRCbrWQqT3N4hw0OEmjfsBAIWOLeLmqSshyCw,89976
|
835
835
|
hiddifypanel/translations.i18n/pt.json,sha256=Wh72C6ToJUVXgAfB_2JqJKQjw0_Rvv7gsYIp8-Nbd8Q,60171
|
836
836
|
hiddifypanel/translations.i18n/ru.json,sha256=WNSflb5-l-CWOQ71SWhDSkgQLkJVHeZ_dehn3lRyv0s,91988
|
837
837
|
hiddifypanel/translations.i18n/zh.json,sha256=17fERyiPhWV2899MMynfIeuZL6X7u-_pWd0h5n6FJUo,59588
|
838
|
-
hiddifypanel-10.
|
839
|
-
hiddifypanel-10.
|
840
|
-
hiddifypanel-10.
|
841
|
-
hiddifypanel-10.
|
842
|
-
hiddifypanel-10.
|
843
|
-
hiddifypanel-10.
|
838
|
+
hiddifypanel-10.16.0.dev0.dist-info/LICENSE.md,sha256=oDrt-cUsyiDGnRPjEJh-3dH2ddAuK_bIVBD8ntkOtZw,19807
|
839
|
+
hiddifypanel-10.16.0.dev0.dist-info/METADATA,sha256=AQVAB0o2OqwDFJXH5Jr8OuIcqt0AiAuXFFed5Q1sa3A,4013
|
840
|
+
hiddifypanel-10.16.0.dev0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
841
|
+
hiddifypanel-10.16.0.dev0.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
|
842
|
+
hiddifypanel-10.16.0.dev0.dist-info/top_level.txt,sha256=rv-b3qFWUZQTBy0kyBfsr7L6tPpeO7AaQlLHXn-HI5M,13
|
843
|
+
hiddifypanel-10.16.0.dev0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
{hiddifypanel-10.15.0.dev4.dist-info → hiddifypanel-10.16.0.dev0.dist-info}/entry_points.txt
RENAMED
File without changes
|
File without changes
|