From bea19a263db88fef44b4356082b199fbfcc39a25 Mon Sep 17 00:00:00 2001
From: "Shishkevich D." <135337715+shishkevichd@users.noreply.github.com>
Date: Sun, 6 Apr 2025 16:40:33 +0700
Subject: Code refactoring (#2865)
* refactor: use vue inline styles in entire application
* refactor: setting row in dashboard page
* refactor: use blob for download file in text modal
* refactor: move all html templates in `web/html` folder
* refactor: `DeviceUtils` -> `MediaQueryMixin`
The transition to mixins has been made, as they can update themselves.
* chore: pretty right buttons in `outbounds` tab in xray settings
* refactor: add translations for system status
* refactor: adjust gutter spacing in setting list item
* refactor: use native `a-input-password` for password field
* chore: return old system status
with new translations
* chore: add missing translation
---
web/html/xui/form/allocate.html | 15 -
web/html/xui/form/client.html | 172 --------
web/html/xui/form/inbound.html | 133 ------
web/html/xui/form/outbound.html | 517 -----------------------
web/html/xui/form/protocol/dokodemo.html | 20 -
web/html/xui/form/protocol/http.html | 26 --
web/html/xui/form/protocol/shadowsocks.html | 50 ---
web/html/xui/form/protocol/socks.html | 34 --
web/html/xui/form/protocol/trojan.html | 50 ---
web/html/xui/form/protocol/vless.html | 50 ---
web/html/xui/form/protocol/vmess.html | 23 -
web/html/xui/form/protocol/wireguard.html | 76 ----
web/html/xui/form/reality_settings.html | 56 ---
web/html/xui/form/sniffing.html | 29 --
web/html/xui/form/stream/external_proxy.html | 29 --
web/html/xui/form/stream/stream_grpc.html | 13 -
web/html/xui/form/stream/stream_httpupgrade.html | 26 --
web/html/xui/form/stream/stream_kcp.html | 48 ---
web/html/xui/form/stream/stream_settings.html | 51 ---
web/html/xui/form/stream/stream_sockopt.html | 66 ---
web/html/xui/form/stream/stream_tcp.html | 72 ----
web/html/xui/form/stream/stream_ws.html | 29 --
web/html/xui/form/stream/stream_xhttp.html | 46 --
web/html/xui/form/tls_settings.html | 116 -----
24 files changed, 1747 deletions(-)
delete mode 100644 web/html/xui/form/allocate.html
delete mode 100644 web/html/xui/form/client.html
delete mode 100644 web/html/xui/form/inbound.html
delete mode 100644 web/html/xui/form/outbound.html
delete mode 100644 web/html/xui/form/protocol/dokodemo.html
delete mode 100644 web/html/xui/form/protocol/http.html
delete mode 100644 web/html/xui/form/protocol/shadowsocks.html
delete mode 100644 web/html/xui/form/protocol/socks.html
delete mode 100644 web/html/xui/form/protocol/trojan.html
delete mode 100644 web/html/xui/form/protocol/vless.html
delete mode 100644 web/html/xui/form/protocol/vmess.html
delete mode 100644 web/html/xui/form/protocol/wireguard.html
delete mode 100644 web/html/xui/form/reality_settings.html
delete mode 100644 web/html/xui/form/sniffing.html
delete mode 100644 web/html/xui/form/stream/external_proxy.html
delete mode 100644 web/html/xui/form/stream/stream_grpc.html
delete mode 100644 web/html/xui/form/stream/stream_httpupgrade.html
delete mode 100644 web/html/xui/form/stream/stream_kcp.html
delete mode 100644 web/html/xui/form/stream/stream_settings.html
delete mode 100644 web/html/xui/form/stream/stream_sockopt.html
delete mode 100644 web/html/xui/form/stream/stream_tcp.html
delete mode 100644 web/html/xui/form/stream/stream_ws.html
delete mode 100644 web/html/xui/form/stream/stream_xhttp.html
delete mode 100644 web/html/xui/form/tls_settings.html
(limited to 'web/html/xui/form')
diff --git a/web/html/xui/form/allocate.html b/web/html/xui/form/allocate.html
deleted file mode 100644
index aba8d5c9..00000000
--- a/web/html/xui/form/allocate.html
+++ /dev/null
@@ -1,15 +0,0 @@
-{{define "form/allocate"}}
-
-
-
- [[ s ]]
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/client.html b/web/html/xui/form/client.html
deleted file mode 100644
index 3aff67e0..00000000
--- a/web/html/xui/form/client.html
+++ /dev/null
@@ -1,172 +0,0 @@
-{{define "form/client"}}
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.emailDesc" }}
-
- {{ i18n "pages.inbounds.email" }}
-
-
-
-
-
-
-
-
-
- {{ i18n "reset" }}
-
- {{ i18n "password" }}
-
-
-
-
-
-
-
-
-
-
- {{ i18n "reset" }}
-
- ID
-
-
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
- {{ i18n "pages.inbounds.subscriptionDesc" }}
-
- Subscription
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.telegramDesc" }}
-
- Telegram ChatID
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.IPLimitDesc"}}
-
- {{ i18n "pages.inbounds.IPLimit"}}
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.IPLimitlogDesc" }}
-
- {{ i18n "pages.inbounds.IPLimitlog" }}
-
-
-
-
-
- {{ i18n "pages.inbounds.IPLimitlogclear" }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "none" }}
- [[ key ]]
-
-
-
-
-
-
- 0 {{ i18n "pages.inbounds.meansNoLimit" }}
-
- {{ i18n "pages.inbounds.totalFlow" }}
-
-
-
-
-
-
-
- [[ SizeFormatter.sizeFormat(clientStats.up) ]] /
- [[ SizeFormatter.sizeFormat(clientStats.down) ]]
- ([[ SizeFormatter.sizeFormat(clientStats.up + clientStats.down) ]])
-
-
- {{ i18n "pages.inbounds.resetTraffic" }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.leaveBlankToNeverExpire" }}
- {{ i18n "pages.inbounds.expireDate" }}
-
-
-
-
-
- Expired
-
-
-
-
- {{ i18n "pages.client.renewDesc" }}
- {{ i18n "pages.client.renew" }}
-
-
-
-
-
-
-{{end}}
\ No newline at end of file
diff --git a/web/html/xui/form/inbound.html b/web/html/xui/form/inbound.html
deleted file mode 100644
index e0521c69..00000000
--- a/web/html/xui/form/inbound.html
+++ /dev/null
@@ -1,133 +0,0 @@
-{{define "form/inbound"}}
-
-
-
-
-
-
-
-
-
-
-
- [[ p ]]
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.monitorDesc" }}
-
- {{ i18n "monitor" }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 0 {{ i18n "pages.inbounds.meansNoLimit" }}
-
- {{ i18n "pages.inbounds.totalFlow" }}
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.inbounds.leaveBlankToNeverExpire" }}
-
- {{ i18n "pages.inbounds.expireDate" }}
-
-
-
-
-
-
-
-
-
-
-
- {{template "form/vmess"}}
-
-
-
-
- {{template "form/vless"}}
-
-
-
-
- {{template "form/trojan"}}
-
-
-
-
- {{template "form/shadowsocks"}}
-
-
-
-
- {{template "form/dokodemo"}}
-
-
-
-
- {{template "form/socks"}}
-
-
-
-
- {{template "form/http"}}
-
-
-
-
- {{template "form/wireguard"}}
-
-
-
-
- {{template "form/streamSettings"}}
- {{template "form/externalProxy" }}
-
-
-
-
- {{template "form/tlsSettings"}}
-
-
-
-
-
- {{template "form/sniffing"}}
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/outbound.html b/web/html/xui/form/outbound.html
deleted file mode 100644
index 84652c3f..00000000
--- a/web/html/xui/form/outbound.html
+++ /dev/null
@@ -1,517 +0,0 @@
-{{define "form/outbound"}}
-
- {outModal.toggleJson(activeKey == '2'); }">
-
-
-
-
- [[ y ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ s ]]
-
-
-
-
-
-
- outbound.settings.fragment = checked ? new Outbound.FreedomSettings.Fragment() : {}">
-
-
-
-
-
- [[ s ]]
-
-
-
-
-
-
-
-
-
-
-
-
- outbound.settings.noises = checked ? [new Outbound.FreedomSettings.Noise()] : []">
-
-
-
-
-
-
-
-
-
-
-
- Noise [[ index + 1 ]]
- outbound.settings.delNoise(index)"
- style="color: rgb(255, 77, 79); cursor: pointer;">
-
-
-
- [[ s ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ s ]]
-
-
-
-
-
-
-
-
- [[ s ]]
-
-
-
-
- [[ s ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.xray.rules.useComma" }}
-
- {{ i18n "pages.xray.outbound.address" }}
-
-
-
-
-
-
-
-
-
- {{ i18n "reset" }}
-
- {{ i18n "pages.xray.wireguard.secretKey" }}
-
-
-
-
-
-
-
-
-
-
-
- [[ wds ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.xray.rules.useComma" }}
- Reserved
-
-
-
-
-
-
-
-
- Peer [[ index + 1 ]] outbound.settings.delPeer(index)" style="color: rgb(255, 77, 79);cursor: pointer;">
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "pages.xray.wireguard.allowedIPs" }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
-
-
- {{ i18n "none" }}
- [[ key ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ method_name ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- TCP (RAW)
- mKCP
- WebSocket
- gRPC
- HTTPUpgrade
- XHTTP
-
-
-
-
- outbound.stream.tcp.type = checked ? 'http' : 'none'">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- None
- SRTP
- uTP
- WeChat
- DTLS 1.2
- WireGuard
- DNS
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "none" }}
- TLS
- Reality
-
-
-
-
-
-
-
-
- None
- [[ key ]]
-
-
-
-
- [[ alpn ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ tag ]]
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ c ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/dokodemo.html b/web/html/xui/form/protocol/dokodemo.html
deleted file mode 100644
index 70ffe7e0..00000000
--- a/web/html/xui/form/protocol/dokodemo.html
+++ /dev/null
@@ -1,20 +0,0 @@
-{{define "form/dokodemo"}}
-
-
-
-
-
-
-
-
-
- TCP,UDP
- TCP
- UDP
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/http.html b/web/html/xui/form/protocol/http.html
deleted file mode 100644
index b4c55313..00000000
--- a/web/html/xui/form/protocol/http.html
+++ /dev/null
@@ -1,26 +0,0 @@
-{{define "form/http"}}
-
-
-
- | {{ i18n "username" }} |
- {{ i18n "password" }} |
-
-
- |
-
-
-
-
- [[ index+1 ]]
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/shadowsocks.html b/web/html/xui/form/protocol/shadowsocks.html
deleted file mode 100644
index 1190b672..00000000
--- a/web/html/xui/form/protocol/shadowsocks.html
+++ /dev/null
@@ -1,50 +0,0 @@
-{{define "form/shadowsocks"}}
-
-
-
- {{template "form/client"}}
-
-
-
-
-
-
-
- | [[ client.email ]] |
- [[ client.password ]] |
-
-
-
-
-
-
-
-
- [[ method_name ]]
-
-
-
-
-
-
- {{ i18n "reset" }}
- Password
-
-
-
-
-
-
- TCP,UDP
- TCP
- UDP
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/socks.html b/web/html/xui/form/protocol/socks.html
deleted file mode 100644
index 849ec210..00000000
--- a/web/html/xui/form/protocol/socks.html
+++ /dev/null
@@ -1,34 +0,0 @@
-{{define "form/socks"}}
-
-
-
-
-
-
-
-
- inbound.settings.auth = checked ? 'password' : 'noauth'">
-
-
-
-
- | {{ i18n "username" }} |
- {{ i18n "password" }} |
-
-
- |
-
-
-
-
- [[ index+1 ]]
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/trojan.html b/web/html/xui/form/protocol/trojan.html
deleted file mode 100644
index 09497bcd..00000000
--- a/web/html/xui/form/protocol/trojan.html
+++ /dev/null
@@ -1,50 +0,0 @@
-{{define "form/trojan"}}
-
-
- {{template "form/client"}}
-
-
-
-
-
-
-
- | [[ client.email ]] |
- [[ client.password ]] |
-
-
-
-
-
-
-
-
-
-
-
-
-
- Fallback [[ index + 1 ]] inbound.settings.delFallback(index)" style="color: rgb(255, 77, 79);cursor: pointer;">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/vless.html b/web/html/xui/form/protocol/vless.html
deleted file mode 100644
index f0c9f2e2..00000000
--- a/web/html/xui/form/protocol/vless.html
+++ /dev/null
@@ -1,50 +0,0 @@
-{{define "form/vless"}}
-
-
- {{template "form/client"}}
-
-
-
-
-
-
-
- | [[ client.email ]] |
- [[ client.id ]] |
-
-
-
-
-
-
-
-
-
-
-
-
-
- Fallback [[ index + 1 ]] inbound.settings.delFallback(index)" style="color: rgb(255, 77, 79);cursor: pointer;">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/vmess.html b/web/html/xui/form/protocol/vmess.html
deleted file mode 100644
index 3c5200ac..00000000
--- a/web/html/xui/form/protocol/vmess.html
+++ /dev/null
@@ -1,23 +0,0 @@
-{{define "form/vmess"}}
-
-
- {{template "form/client"}}
-
-
-
-
-
-
-
- | [[ client.email ]] |
- [[ client.id ]] |
- [[ client.security ]] |
-
-
-
-
-{{end}}
diff --git a/web/html/xui/form/protocol/wireguard.html b/web/html/xui/form/protocol/wireguard.html
deleted file mode 100644
index 31e2e653..00000000
--- a/web/html/xui/form/protocol/wireguard.html
+++ /dev/null
@@ -1,76 +0,0 @@
-{{define "form/wireguard"}}
-
-
-
-
-
- {{ i18n "reset" }}
-
- {{ i18n "pages.xray.wireguard.secretKey" }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Peer [[ index + 1 ]] inbound.settings.delPeer(index)" style="color: rgb(255, 77, 79);cursor: pointer;">
-
-
-
-
-
- {{ i18n "reset" }}
-
- {{ i18n "pages.xray.wireguard.secretKey" }}
-
-
-
-
-
-
-
- {{ i18n "pages.xray.wireguard.publicKey" }}
-
-
-
-
-
-
-
- {{ i18n "reset" }}
-
- {{ i18n "pages.xray.wireguard.psk" }}
-
-
-
-
-
-
-
- {{ i18n "pages.xray.wireguard.allowedIPs" }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
\ No newline at end of file
diff --git a/web/html/xui/form/reality_settings.html b/web/html/xui/form/reality_settings.html
deleted file mode 100644
index 97de0729..00000000
--- a/web/html/xui/form/reality_settings.html
+++ /dev/null
@@ -1,56 +0,0 @@
-{{define "form/realitySettings"}}
-
-
-
-
-
-
-
-
-
- [[ key ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ i18n "reset" }}
- Short IDs
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Get New Cert
-
-
-{{end}}
\ No newline at end of file
diff --git a/web/html/xui/form/sniffing.html b/web/html/xui/form/sniffing.html
deleted file mode 100644
index d8a2e85a..00000000
--- a/web/html/xui/form/sniffing.html
+++ /dev/null
@@ -1,29 +0,0 @@
-{{define "form/sniffing"}}
-
-
-
- {{ i18n "enabled" }}
-
-
- {{ i18n "pages.inbounds.noRecommendKeepDefault" }}
-
-
-
-