hiddifypanel 10.80.0.dev8__py3-none-any.whl → 10.80.0.dev10__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 (46) hide show
  1. hiddifypanel/VERSION +1 -1
  2. hiddifypanel/VERSION.py +1 -1
  3. hiddifypanel/apps/__init__.py +0 -0
  4. hiddifypanel/apps/asgi_app.py +7 -0
  5. hiddifypanel/apps/celery_app.py +3 -0
  6. hiddifypanel/apps/wsgi_app.py +5 -0
  7. hiddifypanel/base.py +43 -129
  8. hiddifypanel/base_setup.py +82 -0
  9. hiddifypanel/cache.py +1 -1
  10. hiddifypanel/celery.py +45 -0
  11. hiddifypanel/database.py +7 -0
  12. hiddifypanel/panel/__init__.py +8 -8
  13. hiddifypanel/panel/cli.py +11 -2
  14. hiddifypanel/panel/commercial/restapi/v2/admin/system_actions.py +5 -1
  15. hiddifypanel/panel/commercial/restapi/v2/admin/user_api.py +2 -1
  16. hiddifypanel/panel/hlogger.py +32 -0
  17. hiddifypanel/panel/node/__init__.py +9 -0
  18. hiddifypanel/panel/node/a.py +14 -0
  19. hiddifypanel/panel/node/hello.py +15 -0
  20. hiddifypanel/panel/node/test.proto +13 -0
  21. hiddifypanel/panel/node/test_grpc.py +40 -0
  22. hiddifypanel/panel/node/test_pb2.py +40 -0
  23. hiddifypanel/panel/node/test_pb2.pyi +17 -0
  24. hiddifypanel/panel/node/test_pb2_grpc.py +97 -0
  25. hiddifypanel/panel/usage.py +13 -3
  26. hiddifypanel/templates/fake.html +0 -320
  27. hiddifypanel/translations/en/LC_MESSAGES/messages.mo +0 -0
  28. hiddifypanel/translations/en/LC_MESSAGES/messages.po +0 -545
  29. hiddifypanel/translations/fa/LC_MESSAGES/messages.mo +0 -0
  30. hiddifypanel/translations/fa/LC_MESSAGES/messages.po +0 -555
  31. hiddifypanel/translations/pt/LC_MESSAGES/messages.mo +0 -0
  32. hiddifypanel/translations/pt/LC_MESSAGES/messages.po +0 -546
  33. hiddifypanel/translations/ru/LC_MESSAGES/messages.mo +0 -0
  34. hiddifypanel/translations/ru/LC_MESSAGES/messages.po +0 -552
  35. hiddifypanel/translations/zh/LC_MESSAGES/messages.mo +0 -0
  36. hiddifypanel/translations/zh/LC_MESSAGES/messages.po +0 -513
  37. hiddifypanel/translations.i18n/en.json +1 -310
  38. hiddifypanel/translations.i18n/fa.json +1 -310
  39. hiddifypanel/translations.i18n/pt.json +1 -310
  40. hiddifypanel/translations.i18n/ru.json +1 -310
  41. hiddifypanel/translations.i18n/zh.json +1 -310
  42. {hiddifypanel-10.80.0.dev8.dist-info → hiddifypanel-10.80.0.dev10.dist-info}/METADATA +11 -6
  43. {hiddifypanel-10.80.0.dev8.dist-info → hiddifypanel-10.80.0.dev10.dist-info}/RECORD +46 -31
  44. {hiddifypanel-10.80.0.dev8.dist-info → hiddifypanel-10.80.0.dev10.dist-info}/LICENSE.md +0 -0
  45. {hiddifypanel-10.80.0.dev8.dist-info → hiddifypanel-10.80.0.dev10.dist-info}/WHEEL +0 -0
  46. {hiddifypanel-10.80.0.dev8.dist-info → hiddifypanel-10.80.0.dev10.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,17 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Optional as _Optional
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class HelloRequest(_message.Message):
8
+ __slots__ = ("req",)
9
+ REQ_FIELD_NUMBER: _ClassVar[int]
10
+ req: str
11
+ def __init__(self, req: _Optional[str] = ...) -> None: ...
12
+
13
+ class HelloResponse(_message.Message):
14
+ __slots__ = ("res",)
15
+ RES_FIELD_NUMBER: _ClassVar[int]
16
+ res: str
17
+ def __init__(self, res: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,97 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from hiddifypanel.panel.node import test_pb2 as hiddifypanel_dot_panel_dot_node_dot_test__pb2
7
+
8
+ GRPC_GENERATED_VERSION = '1.67.1'
9
+ GRPC_VERSION = grpc.__version__
10
+ _version_not_supported = False
11
+
12
+ try:
13
+ from grpc._utilities import first_version_is_lower
14
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
15
+ except ImportError:
16
+ _version_not_supported = True
17
+
18
+ if _version_not_supported:
19
+ raise RuntimeError(
20
+ f'The grpc package installed is at version {GRPC_VERSION},'
21
+ + f' but the generated code in hiddifypanel/panel/node/test_pb2_grpc.py depends on'
22
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
23
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
24
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
25
+ )
26
+
27
+
28
+ class HelloStub(object):
29
+ """Missing associated documentation comment in .proto file."""
30
+
31
+ def __init__(self, channel):
32
+ """Constructor.
33
+
34
+ Args:
35
+ channel: A grpc.Channel.
36
+ """
37
+ self.SayHello = channel.unary_unary(
38
+ '/Hello/SayHello',
39
+ request_serializer=hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloRequest.SerializeToString,
40
+ response_deserializer=hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloResponse.FromString,
41
+ )
42
+
43
+
44
+ class HelloServicer(object):
45
+ """Missing associated documentation comment in .proto file."""
46
+
47
+ def SayHello(self, request, context):
48
+ """Missing associated documentation comment in .proto file."""
49
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
50
+ context.set_details('Method not implemented!')
51
+ raise NotImplementedError('Method not implemented!')
52
+
53
+
54
+ def add_HelloServicer_to_server(servicer, server):
55
+ rpc_method_handlers = {
56
+ 'SayHello': grpc.unary_unary_rpc_method_handler(
57
+ servicer.SayHello,
58
+ request_deserializer=hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloRequest.FromString,
59
+ response_serializer=hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloResponse.SerializeToString,
60
+ ),
61
+ }
62
+ generic_handler = grpc.method_handlers_generic_handler(
63
+ 'Hello', rpc_method_handlers)
64
+ server.add_generic_rpc_handlers((generic_handler,))
65
+ server.add_registered_method_handlers('Hello', rpc_method_handlers)
66
+
67
+
68
+ # This class is part of an EXPERIMENTAL API.
69
+ class Hello(object):
70
+ """Missing associated documentation comment in .proto file."""
71
+
72
+ @staticmethod
73
+ def SayHello(request,
74
+ target,
75
+ options=(),
76
+ channel_credentials=None,
77
+ call_credentials=None,
78
+ insecure=False,
79
+ compression=None,
80
+ wait_for_ready=None,
81
+ timeout=None,
82
+ metadata=None):
83
+ return grpc.experimental.unary_unary(
84
+ request,
85
+ target,
86
+ '/Hello/SayHello',
87
+ hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloRequest.SerializeToString,
88
+ hiddifypanel_dot_panel_dot_node_dot_test__pb2.HelloResponse.FromString,
89
+ options,
90
+ channel_credentials,
91
+ insecure,
92
+ call_credentials,
93
+ compression,
94
+ wait_for_ready,
95
+ timeout,
96
+ metadata,
97
+ )
@@ -11,16 +11,18 @@ from hiddifypanel import cache, hutils
11
11
  from loguru import logger
12
12
  to_gig_d = 1024**3
13
13
 
14
+ from celery import shared_task
14
15
 
16
+ @shared_task(ignore_result=False)
15
17
  def update_local_usage():
16
18
  lock_key = "lock-update-local-usage"
17
19
  if not cache.redis_client.set(lock_key, "locked", nx=True, ex=600):
18
20
  return {"msg": "last update task is not finished yet."}
19
21
  try:
20
- res = user_driver.get_users_usage(reset=True)
21
- # cache.redis_client.delete(lock_key)
22
+ res=update_local_usage_not_lock()
22
23
  cache.redis_client.set(lock_key, "locked", nx=False, ex=60)
23
- return _add_users_usage(res, child_id=0)
24
+
25
+ return res
24
26
  except Exception as e:
25
27
  cache.redis_client.set(lock_key, "locked", nx=False, ex=60)
26
28
  logger.exception("Exception in update usage")
@@ -28,6 +30,14 @@ def update_local_usage():
28
30
  return {"msg": f"Exception in update usage: {e}"}
29
31
 
30
32
  # return {"status": 'success', "comments":res}
33
+ def update_local_usage_not_lock():
34
+
35
+ try:
36
+ res = user_driver.get_users_usage(reset=True)
37
+ return _add_users_usage(res, child_id=0)
38
+ except Exception as e:
39
+ raise
40
+
31
41
 
32
42
 
33
43
  def add_users_usage_uuid(uuids_bytes: Dict[str, Dict], child_id, sync=False):
@@ -1,320 +0,0 @@
1
- {{_("config.dbvalues.label")}}
2
- {{_("config.dbvalues.description")}}
3
- {{_("config.create_easysetup_link.label")}}
4
- {{_("config.create_easysetup_link.description")}}
5
- {{_("config.wireguard_enable.label")}}
6
- {{_("config.wireguard_enable.description")}}
7
- {{_("config.wireguard_port.label")}}
8
- {{_("config.wireguard_port.description")}}
9
- {{_("config.wireguard_ipv6.label")}}
10
- {{_("config.wireguard_ipv6.description")}}
11
- {{_("config.wireguard_ipv4.label")}}
12
- {{_("config.wireguard_ipv4.description")}}
13
- {{_("config.wireguard_private_key.label")}}
14
- {{_("config.wireguard_private_key.description")}}
15
- {{_("config.wireguard_public_key.label")}}
16
- {{_("config.wireguard_public_key.description")}}
17
- {{_("config.wireguard_noise_trick.label")}}
18
- {{_("config.wireguard_noise_trick.description")}}
19
- {{_("config.ssh_server_redis_url.label")}}
20
- {{_("config.ssh_server_redis_url.description")}}
21
- {{_("config.ssh_server_port.label")}}
22
- {{_("config.ssh_server_port.description")}}
23
- {{_("config.ssh_server_enable.label")}}
24
- {{_("config.ssh_server_enable.description")}}
25
- {{_("config.first_setup.label")}}
26
- {{_("config.first_setup.description")}}
27
- {{_("config.core_type.label")}}
28
- {{_("config.core_type.description")}}
29
- {{_("config.warp_enable.label")}}
30
- {{_("config.warp_enable.description")}}
31
- {{_("config.warp_mode.label")}}
32
- {{_("config.warp_mode.description")}}
33
- {{_("config.warp_plus_code.label")}}
34
- {{_("config.warp_plus_code.description")}}
35
- {{_("config.warp_sites.label")}}
36
- {{_("config.warp_sites.description")}}
37
- {{_("config.dns_server.label")}}
38
- {{_("config.dns_server.description")}}
39
- {{_("config.reality_fallback_domain.label")}}
40
- {{_("config.reality_fallback_domain.description")}}
41
- {{_("config.reality_server_names.label")}}
42
- {{_("config.reality_server_names.description")}}
43
- {{_("config.reality_short_ids.label")}}
44
- {{_("config.reality_short_ids.description")}}
45
- {{_("config.reality_private_key.label")}}
46
- {{_("config.reality_private_key.description")}}
47
- {{_("config.reality_public_key.label")}}
48
- {{_("config.reality_public_key.description")}}
49
- {{_("config.reality_port.label")}}
50
- {{_("config.reality_port.description")}}
51
- {{_("config.restls1_2_domain.label")}}
52
- {{_("config.restls1_2_domain.description")}}
53
- {{_("config.restls1_3_domain.label")}}
54
- {{_("config.restls1_3_domain.description")}}
55
- {{_("config.show_usage_in_sublink.label")}}
56
- {{_("config.show_usage_in_sublink.description")}}
57
- {{_("config.cloudflare.label")}}
58
- {{_("config.cloudflare.description")}}
59
- {{_("config.license.label")}}
60
- {{_("config.license.description")}}
61
- {{_("config.country.label")}}
62
- {{_("config.country.description")}}
63
- {{_("config.package_mode.label")}}
64
- {{_("config.package_mode.description")}}
65
- {{_("config.utls.label")}}
66
- {{_("config.utls.description")}}
67
- {{_("config.telegram_bot_token.label")}}
68
- {{_("config.telegram_bot_token.description")}}
69
- {{_("config.is_parent.label")}}
70
- {{_("config.is_parent.description")}}
71
- {{_("config.parent_panel.label")}}
72
- {{_("config.parent_panel.description")}}
73
- {{_("config.parent_domain.label")}}
74
- {{_("config.parent_domain.description")}}
75
- {{_("config.parent_admin_proxy_path.label")}}
76
- {{_("config.parent_admin_proxy_path.description")}}
77
- {{_("config.panel_mode.label")}}
78
- {{_("config.panel_mode.description")}}
79
- {{_("config.log_level.label")}}
80
- {{_("config.log_level.description")}}
81
- {{_("config.unique_id.label")}}
82
- {{_("config.unique_id.description")}}
83
- {{_("config.last_hash.label")}}
84
- {{_("config.last_hash.description")}}
85
- {{_("config.cdn_forced_host.label")}}
86
- {{_("config.cdn_forced_host.description")}}
87
- {{_("config.lang.label")}}
88
- {{_("config.lang.description")}}
89
- {{_("config.admin_lang.label")}}
90
- {{_("config.admin_lang.description")}}
91
- {{_("config.admin_secret.label")}}
92
- {{_("config.admin_secret.description")}}
93
- {{_("config.tls_ports.label")}}
94
- {{_("config.tls_ports.description")}}
95
- {{_("config.tls_fragment_enable.label")}}
96
- {{_("config.tls_fragment_enable.description")}}
97
- {{_("config.tls_fragment_size.label")}}
98
- {{_("config.tls_fragment_size.description")}}
99
- {{_("config.tls_fragment_sleep.label")}}
100
- {{_("config.tls_fragment_sleep.description")}}
101
- {{_("config.tls_mixed_case.label")}}
102
- {{_("config.tls_mixed_case.description")}}
103
- {{_("config.tls_padding_enable.label")}}
104
- {{_("config.tls_padding_enable.description")}}
105
- {{_("config.tls_padding_length.label")}}
106
- {{_("config.tls_padding_length.description")}}
107
- {{_("config.mux_enable.label")}}
108
- {{_("config.mux_enable.description")}}
109
- {{_("config.mux_protocol.label")}}
110
- {{_("config.mux_protocol.description")}}
111
- {{_("config.mux_max_connections.label")}}
112
- {{_("config.mux_max_connections.description")}}
113
- {{_("config.mux_min_streams.label")}}
114
- {{_("config.mux_min_streams.description")}}
115
- {{_("config.mux_max_streams.label")}}
116
- {{_("config.mux_max_streams.description")}}
117
- {{_("config.mux_padding_enable.label")}}
118
- {{_("config.mux_padding_enable.description")}}
119
- {{_("config.mux_brutal_enable.label")}}
120
- {{_("config.mux_brutal_enable.description")}}
121
- {{_("config.mux_brutal_up_mbps.label")}}
122
- {{_("config.mux_brutal_up_mbps.description")}}
123
- {{_("config.mux_brutal_down_mbps.label")}}
124
- {{_("config.mux_brutal_down_mbps.description")}}
125
- {{_("config.http_ports.label")}}
126
- {{_("config.http_ports.description")}}
127
- {{_("config.kcp_ports.label")}}
128
- {{_("config.kcp_ports.description")}}
129
- {{_("config.kcp_enable.label")}}
130
- {{_("config.kcp_enable.description")}}
131
- {{_("config.decoy_domain.label")}}
132
- {{_("config.decoy_domain.description")}}
133
- {{_("config.proxy_path.label")}}
134
- {{_("config.proxy_path.description")}}
135
- {{_("config.proxy_path_admin.label")}}
136
- {{_("config.proxy_path_admin.description")}}
137
- {{_("config.proxy_path_client.label")}}
138
- {{_("config.proxy_path_client.description")}}
139
- {{_("config.firewall.label")}}
140
- {{_("config.firewall.description")}}
141
- {{_("config.netdata.label")}}
142
- {{_("config.netdata.description")}}
143
- {{_("config.http_proxy_enable.label")}}
144
- {{_("config.http_proxy_enable.description")}}
145
- {{_("config.block_iran_sites.label")}}
146
- {{_("config.block_iran_sites.description")}}
147
- {{_("config.allow_invalid_sni.label")}}
148
- {{_("config.allow_invalid_sni.description")}}
149
- {{_("config.auto_update.label")}}
150
- {{_("config.auto_update.description")}}
151
- {{_("config.speed_test.label")}}
152
- {{_("config.speed_test.description")}}
153
- {{_("config.only_ipv4.label")}}
154
- {{_("config.only_ipv4.description")}}
155
- {{_("config.shared_secret.label")}}
156
- {{_("config.shared_secret.description")}}
157
- {{_("config.telegram_enable.label")}}
158
- {{_("config.telegram_enable.description")}}
159
- {{_("config.telegram_adtag.label")}}
160
- {{_("config.telegram_adtag.description")}}
161
- {{_("config.telegram_lib.label")}}
162
- {{_("config.telegram_lib.description")}}
163
- {{_("config.telegram_fakedomain.label")}}
164
- {{_("config.telegram_fakedomain.description")}}
165
- {{_("config.v2ray_enable.label")}}
166
- {{_("config.v2ray_enable.description")}}
167
- {{_("config.torrent_block.label")}}
168
- {{_("config.torrent_block.description")}}
169
- {{_("config.tuic_enable.label")}}
170
- {{_("config.tuic_enable.description")}}
171
- {{_("config.tuic_port.label")}}
172
- {{_("config.tuic_port.description")}}
173
- {{_("config.hysteria_enable.label")}}
174
- {{_("config.hysteria_enable.description")}}
175
- {{_("config.hysteria_port.label")}}
176
- {{_("config.hysteria_port.description")}}
177
- {{_("config.hysteria_obfs_enable.label")}}
178
- {{_("config.hysteria_obfs_enable.description")}}
179
- {{_("config.hysteria_up_mbps.label")}}
180
- {{_("config.hysteria_up_mbps.description")}}
181
- {{_("config.hysteria_down_mbps.label")}}
182
- {{_("config.hysteria_down_mbps.description")}}
183
- {{_("config.shadowsocks2022_enable.label")}}
184
- {{_("config.shadowsocks2022_enable.description")}}
185
- {{_("config.shadowsocks2022_method.label")}}
186
- {{_("config.shadowsocks2022_method.description")}}
187
- {{_("config.shadowsocks2022_port.label")}}
188
- {{_("config.shadowsocks2022_port.description")}}
189
- {{_("config.ssfaketls_enable.label")}}
190
- {{_("config.ssfaketls_enable.description")}}
191
- {{_("config.ssfaketls_fakedomain.label")}}
192
- {{_("config.ssfaketls_fakedomain.description")}}
193
- {{_("config.shadowtls_enable.label")}}
194
- {{_("config.shadowtls_enable.description")}}
195
- {{_("config.shadowtls_fakedomain.label")}}
196
- {{_("config.shadowtls_fakedomain.description")}}
197
- {{_("config.ssr_enable.label")}}
198
- {{_("config.ssr_enable.description")}}
199
- {{_("config.ssr_fakedomain.label")}}
200
- {{_("config.ssr_fakedomain.description")}}
201
- {{_("config.vmess_enable.label")}}
202
- {{_("config.vmess_enable.description")}}
203
- {{_("config.domain_fronting_domain.label")}}
204
- {{_("config.domain_fronting_domain.description")}}
205
- {{_("config.domain_fronting_http_enable.label")}}
206
- {{_("config.domain_fronting_http_enable.description")}}
207
- {{_("config.domain_fronting_tls_enable.label")}}
208
- {{_("config.domain_fronting_tls_enable.description")}}
209
- {{_("config.ws_enable.label")}}
210
- {{_("config.ws_enable.description")}}
211
- {{_("config.grpc_enable.label")}}
212
- {{_("config.grpc_enable.description")}}
213
- {{_("config.httpupgrade_enable.label")}}
214
- {{_("config.httpupgrade_enable.description")}}
215
- {{_("config.splithttp_enable.label")}}
216
- {{_("config.splithttp_enable.description")}}
217
- {{_("config.vless_enable.label")}}
218
- {{_("config.vless_enable.description")}}
219
- {{_("config.trojan_enable.label")}}
220
- {{_("config.trojan_enable.description")}}
221
- {{_("config.reality_enable.label")}}
222
- {{_("config.reality_enable.description")}}
223
- {{_("config.tcp_enable.label")}}
224
- {{_("config.tcp_enable.description")}}
225
- {{_("config.quic_enable.label")}}
226
- {{_("config.quic_enable.description")}}
227
- {{_("config.xtls_enable.label")}}
228
- {{_("config.xtls_enable.description")}}
229
- {{_("config.h2_enable.label")}}
230
- {{_("config.h2_enable.description")}}
231
- {{_("config.db_version.label")}}
232
- {{_("config.db_version.description")}}
233
- {{_("config.last_priodic_usage_check.label")}}
234
- {{_("config.last_priodic_usage_check.description")}}
235
- {{_("config.branding_title.label")}}
236
- {{_("config.branding_title.description")}}
237
- {{_("config.branding_site.label")}}
238
- {{_("config.branding_site.description")}}
239
- {{_("config.branding_freetext.label")}}
240
- {{_("config.branding_freetext.description")}}
241
- {{_("config.not_found.label")}}
242
- {{_("config.not_found.description")}}
243
- {{_("config.path_vmess.label")}}
244
- {{_("config.path_vmess.description")}}
245
- {{_("config.path_vless.label")}}
246
- {{_("config.path_vless.description")}}
247
- {{_("config.path_trojan.label")}}
248
- {{_("config.path_trojan.description")}}
249
- {{_("config.path_v2ray.label")}}
250
- {{_("config.path_v2ray.description")}}
251
- {{_("config.path_ss.label")}}
252
- {{_("config.path_ss.description")}}
253
- {{_("config.path_splithttp.label")}}
254
- {{_("config.path_splithttp.description")}}
255
- {{_("config.path_httpupgrade.label")}}
256
- {{_("config.path_httpupgrade.description")}}
257
- {{_("config.path_ws.label")}}
258
- {{_("config.path_ws.description")}}
259
- {{_("config.path_tcp.label")}}
260
- {{_("config.path_tcp.description")}}
261
- {{_("config.path_grpc.label")}}
262
- {{_("config.path_grpc.description")}}
263
- {{_("config.sub_full_singbox_enable.label")}}
264
- {{_("config.sub_full_singbox_enable.description")}}
265
- {{_("config.sub_singbox_ssh_enable.label")}}
266
- {{_("config.sub_singbox_ssh_enable.description")}}
267
- {{_("config.sub_full_xray_json_enable.label")}}
268
- {{_("config.sub_full_xray_json_enable.description")}}
269
- {{_("config.sub_full_links_enable.label")}}
270
- {{_("config.sub_full_links_enable.description")}}
271
- {{_("config.sub_full_links_b64_enable.label")}}
272
- {{_("config.sub_full_links_b64_enable.description")}}
273
- {{_("config.sub_full_clash_enable.label")}}
274
- {{_("config.sub_full_clash_enable.description")}}
275
- {{_("config.sub_full_clash_meta_enable.label")}}
276
- {{_("config.sub_full_clash_meta_enable.description")}}
277
- {{_("config.hiddifycli_enable.label")}}
278
- {{_("config.hiddifycli_enable.description")}}
279
-
280
- {{_("config.admin.label")}}{{_("config.admin.description")}}
281
- {{_("config.branding.label")}}{{_("config.branding.description")}}
282
- {{_("config.general.label")}}{{_("config.general.description")}}
283
- {{_("config.proxies.label")}}{{_("config.proxies.description")}}
284
- {{_("config.domain_fronting.label")}}{{_("config.domain_fronting.description")}}
285
- {{_("config.telegram.label")}}{{_("config.telegram.description")}}
286
- {{_("config.http.label")}}{{_("config.http.description")}}
287
- {{_("config.tls.label")}}{{_("config.tls.description")}}
288
- {{_("config.mux.label")}}{{_("config.mux.description")}}
289
- {{_("config.tls_trick.label")}}{{_("config.tls_trick.description")}}
290
- {{_("config.ssh.label")}}{{_("config.ssh.description")}}
291
- {{_("config.ssfaketls.label")}}{{_("config.ssfaketls.description")}}
292
- {{_("config.shadowtls.label")}}{{_("config.shadowtls.description")}}
293
- {{_("config.restls.label")}}{{_("config.restls.description")}}
294
- {{_("config.tuic.label")}}{{_("config.tuic.description")}}
295
- {{_("config.hysteria.label")}}{{_("config.hysteria.description")}}
296
- {{_("config.ssr.label")}}{{_("config.ssr.description")}}
297
- {{_("config.kcp.label")}}{{_("config.kcp.description")}}
298
- {{_("config.hidden.label")}}{{_("config.hidden.description")}}
299
- {{_("config.advanced.label")}}{{_("config.advanced.description")}}
300
- {{_("config.too_advanced.label")}}{{_("config.too_advanced.description")}}
301
- {{_("config.warp.label")}}{{_("config.warp.description")}}
302
- {{_("config.reality.label")}}{{_("config.reality.description")}}
303
- {{_("config.wireguard.label")}}{{_("config.wireguard.description")}}
304
- {{_("config.shadowsocks.label")}}{{_("config.shadowsocks.description")}}
305
-
306
- {{_("direct")}}
307
- {{_("sub_link_only")}}
308
- {{_("cdn")}}
309
- {{_("auto_cdn_ip")}}
310
- {{_("relay")}}
311
- {{_("reality")}}
312
- {{_("old_xtls_direct")}}
313
- {{_("worker")}}
314
- {{_("fake")}}
315
-
316
- {{_("no_reset")}}
317
- {{_("monthly")}}
318
- {{_("weekly")}}
319
- {{_("daily")}}
320
-