mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-11-15 17:45:03 +03:00
Remove streamSettings for protocols that don't support it
- Frontend: Only include streamSettings in toJson() for vmess, vless, trojan, shadowsocks, and hysteria protocols - Frontend: Hide Stream tab in Advanced section for unsupported protocols - Frontend: Clear streamSettings in Advanced tab when switching to unsupported protocols - Frontend: Add CodeMirror JSON editor to config view in index page with mobile responsive design - Backend: Add normalizeStreamSettings() to clear streamSettings for tunnel, mixed, http, tun, and wireguard protocols - Backend: Apply normalization in AddInbound() and UpdateInbound() - Backend: Add omitempty JSON tag to StreamSettings field to exclude null values from Xray config
This commit is contained in:
+6
-6
@@ -11,17 +11,17 @@ import (
|
||||
type Config struct {
|
||||
LogConfig json_util.RawMessage `json:"log"`
|
||||
RouterConfig json_util.RawMessage `json:"routing"`
|
||||
DNSConfig json_util.RawMessage `json:"dns"`
|
||||
DNSConfig json_util.RawMessage `json:"dns,omitempty"`
|
||||
InboundConfigs []InboundConfig `json:"inbounds"`
|
||||
OutboundConfigs json_util.RawMessage `json:"outbounds"`
|
||||
Transport json_util.RawMessage `json:"transport"`
|
||||
Transport json_util.RawMessage `json:"transport,omitempty"`
|
||||
Policy json_util.RawMessage `json:"policy"`
|
||||
API json_util.RawMessage `json:"api"`
|
||||
Stats json_util.RawMessage `json:"stats"`
|
||||
Reverse json_util.RawMessage `json:"reverse"`
|
||||
FakeDNS json_util.RawMessage `json:"fakedns"`
|
||||
Observatory json_util.RawMessage `json:"observatory"`
|
||||
BurstObservatory json_util.RawMessage `json:"burstObservatory"`
|
||||
Reverse json_util.RawMessage `json:"reverse,omitempty"`
|
||||
FakeDNS json_util.RawMessage `json:"fakedns,omitempty"`
|
||||
Observatory json_util.RawMessage `json:"observatory,omitempty"`
|
||||
BurstObservatory json_util.RawMessage `json:"burstObservatory,omitempty"`
|
||||
Metrics json_util.RawMessage `json:"metrics"`
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -13,9 +13,9 @@ type InboundConfig struct {
|
||||
Port int `json:"port"`
|
||||
Protocol string `json:"protocol"`
|
||||
Settings json_util.RawMessage `json:"settings"`
|
||||
StreamSettings json_util.RawMessage `json:"streamSettings"`
|
||||
StreamSettings json_util.RawMessage `json:"streamSettings,omitempty"`
|
||||
Tag string `json:"tag"`
|
||||
Sniffing json_util.RawMessage `json:"sniffing"`
|
||||
Sniffing json_util.RawMessage `json:"sniffing,omitempty"`
|
||||
}
|
||||
|
||||
// Equals compares two InboundConfig instances for deep equality.
|
||||
|
||||
Reference in New Issue
Block a user