Adjusting the text display

pull/5767/head
2dust 2024-09-23 17:17:12 +08:00
parent 4d330cedac
commit cc428618e5
21 changed files with 93 additions and 93 deletions

View File

@ -5,12 +5,12 @@
VMess = 1, VMess = 1,
Custom = 2, Custom = 2,
Shadowsocks = 3, Shadowsocks = 3,
Socks = 4, SOCKS = 4,
VLESS = 5, VLESS = 5,
Trojan = 6, Trojan = 6,
Hysteria2 = 7, Hysteria2 = 7,
Tuic = 8, TUIC = 8,
Wireguard = 9, WireGuard = 9,
Http = 10 HTTP = 10
} }
} }

View File

@ -137,25 +137,25 @@
{ {
{EConfigType.VMess,"vmess://"}, {EConfigType.VMess,"vmess://"},
{EConfigType.Shadowsocks,"ss://"}, {EConfigType.Shadowsocks,"ss://"},
{EConfigType.Socks,"socks://"}, {EConfigType.SOCKS,"socks://"},
{EConfigType.VLESS,"vless://"}, {EConfigType.VLESS,"vless://"},
{EConfigType.Trojan,"trojan://"}, {EConfigType.Trojan,"trojan://"},
{EConfigType.Hysteria2,"hysteria2://"}, {EConfigType.Hysteria2,"hysteria2://"},
{EConfigType.Tuic,"tuic://"}, {EConfigType.TUIC,"tuic://"},
{EConfigType.Wireguard,"wireguard://"} {EConfigType.WireGuard,"wireguard://"}
}; };
public static readonly Dictionary<EConfigType, string> ProtocolTypes = new() public static readonly Dictionary<EConfigType, string> ProtocolTypes = new()
{ {
{EConfigType.VMess,"vmess"}, {EConfigType.VMess,"vmess"},
{EConfigType.Shadowsocks,"shadowsocks"}, {EConfigType.Shadowsocks,"shadowsocks"},
{EConfigType.Socks,"socks"}, {EConfigType.SOCKS,"socks"},
{EConfigType.Http,"http"}, {EConfigType.HTTP,"http"},
{EConfigType.VLESS,"vless"}, {EConfigType.VLESS,"vless"},
{EConfigType.Trojan,"trojan"}, {EConfigType.Trojan,"trojan"},
{EConfigType.Hysteria2,"hysteria2"}, {EConfigType.Hysteria2,"hysteria2"},
{EConfigType.Tuic,"tuic"}, {EConfigType.TUIC,"tuic"},
{EConfigType.Wireguard,"wireguard"} {EConfigType.WireGuard,"wireguard"}
}; };
public static readonly List<string> VmessSecurities = new() { "aes-128-gcm", "chacha20-poly1305", "auto", "none", "zero" }; public static readonly List<string> VmessSecurities = new() { "aes-128-gcm", "chacha20-poly1305", "auto", "none", "zero" };

View File

@ -401,13 +401,13 @@ namespace ServiceLib.Handler
{ {
EConfigType.VMess => AddVMessServer(config, item), EConfigType.VMess => AddVMessServer(config, item),
EConfigType.Shadowsocks => AddShadowsocksServer(config, item), EConfigType.Shadowsocks => AddShadowsocksServer(config, item),
EConfigType.Socks => AddSocksServer(config, item), EConfigType.SOCKS => AddSocksServer(config, item),
EConfigType.Http => AddHttpServer(config, item), EConfigType.HTTP => AddHttpServer(config, item),
EConfigType.Trojan => AddTrojanServer(config, item), EConfigType.Trojan => AddTrojanServer(config, item),
EConfigType.VLESS => AddVlessServer(config, item), EConfigType.VLESS => AddVlessServer(config, item),
EConfigType.Hysteria2 => AddHysteria2Server(config, item), EConfigType.Hysteria2 => AddHysteria2Server(config, item),
EConfigType.Tuic => AddTuicServer(config, item), EConfigType.TUIC => AddTuicServer(config, item),
EConfigType.Wireguard => AddWireguardServer(config, item), EConfigType.WireGuard => AddWireguardServer(config, item),
_ => -1, _ => -1,
}; };
return ret; return ret;
@ -739,7 +739,7 @@ namespace ServiceLib.Handler
/// <returns></returns> /// <returns></returns>
public static int AddSocksServer(Config config, ProfileItem profileItem, bool toFile = true) public static int AddSocksServer(Config config, ProfileItem profileItem, bool toFile = true)
{ {
profileItem.configType = EConfigType.Socks; profileItem.configType = EConfigType.SOCKS;
profileItem.address = profileItem.address.TrimEx(); profileItem.address = profileItem.address.TrimEx();
@ -756,7 +756,7 @@ namespace ServiceLib.Handler
/// <returns></returns> /// <returns></returns>
public static int AddHttpServer(Config config, ProfileItem profileItem, bool toFile = true) public static int AddHttpServer(Config config, ProfileItem profileItem, bool toFile = true)
{ {
profileItem.configType = EConfigType.Http; profileItem.configType = EConfigType.HTTP;
profileItem.address = profileItem.address.TrimEx(); profileItem.address = profileItem.address.TrimEx();
@ -829,7 +829,7 @@ namespace ServiceLib.Handler
/// <returns></returns> /// <returns></returns>
public static int AddTuicServer(Config config, ProfileItem profileItem, bool toFile = true) public static int AddTuicServer(Config config, ProfileItem profileItem, bool toFile = true)
{ {
profileItem.configType = EConfigType.Tuic; profileItem.configType = EConfigType.TUIC;
profileItem.coreType = ECoreType.sing_box; profileItem.coreType = ECoreType.sing_box;
profileItem.address = profileItem.address.TrimEx(); profileItem.address = profileItem.address.TrimEx();
@ -868,7 +868,7 @@ namespace ServiceLib.Handler
/// <returns></returns> /// <returns></returns>
public static int AddWireguardServer(Config config, ProfileItem profileItem, bool toFile = true) public static int AddWireguardServer(Config config, ProfileItem profileItem, bool toFile = true)
{ {
profileItem.configType = EConfigType.Wireguard; profileItem.configType = EConfigType.WireGuard;
profileItem.coreType = ECoreType.sing_box; profileItem.coreType = ECoreType.sing_box;
profileItem.address = profileItem.address.TrimEx(); profileItem.address = profileItem.address.TrimEx();
@ -1263,12 +1263,12 @@ namespace ServiceLib.Handler
{ {
EConfigType.VMess => AddVMessServer(config, profileItem, false), EConfigType.VMess => AddVMessServer(config, profileItem, false),
EConfigType.Shadowsocks => AddShadowsocksServer(config, profileItem, false), EConfigType.Shadowsocks => AddShadowsocksServer(config, profileItem, false),
EConfigType.Socks => AddSocksServer(config, profileItem, false), EConfigType.SOCKS => AddSocksServer(config, profileItem, false),
EConfigType.Trojan => AddTrojanServer(config, profileItem, false), EConfigType.Trojan => AddTrojanServer(config, profileItem, false),
EConfigType.VLESS => AddVlessServer(config, profileItem, false), EConfigType.VLESS => AddVlessServer(config, profileItem, false),
EConfigType.Hysteria2 => AddHysteria2Server(config, profileItem, false), EConfigType.Hysteria2 => AddHysteria2Server(config, profileItem, false),
EConfigType.Tuic => AddTuicServer(config, profileItem, false), EConfigType.TUIC => AddTuicServer(config, profileItem, false),
EConfigType.Wireguard => AddWireguardServer(config, profileItem, false), EConfigType.WireGuard => AddWireguardServer(config, profileItem, false),
_ => -1, _ => -1,
}; };

View File

@ -606,7 +606,7 @@ namespace ServiceLib.Handler.CoreConfig
GenOutboundMux(node, outbound); GenOutboundMux(node, outbound);
break; break;
} }
case EConfigType.Socks: case EConfigType.SOCKS:
{ {
outbound.version = "5"; outbound.version = "5";
if (Utils.IsNotEmpty(node.security) if (Utils.IsNotEmpty(node.security)
@ -617,7 +617,7 @@ namespace ServiceLib.Handler.CoreConfig
} }
break; break;
} }
case EConfigType.Http: case EConfigType.HTTP:
{ {
if (Utils.IsNotEmpty(node.security) if (Utils.IsNotEmpty(node.security)
&& Utils.IsNotEmpty(node.id)) && Utils.IsNotEmpty(node.id))
@ -667,14 +667,14 @@ namespace ServiceLib.Handler.CoreConfig
outbound.down_mbps = _config.hysteriaItem.down_mbps > 0 ? _config.hysteriaItem.down_mbps : null; outbound.down_mbps = _config.hysteriaItem.down_mbps > 0 ? _config.hysteriaItem.down_mbps : null;
break; break;
} }
case EConfigType.Tuic: case EConfigType.TUIC:
{ {
outbound.uuid = node.id; outbound.uuid = node.id;
outbound.password = node.security; outbound.password = node.security;
outbound.congestion_control = node.headerType; outbound.congestion_control = node.headerType;
break; break;
} }
case EConfigType.Wireguard: case EConfigType.WireGuard:
{ {
outbound.private_key = node.id; outbound.private_key = node.id;
outbound.peer_public_key = node.publicKey; outbound.peer_public_key = node.publicKey;
@ -1240,7 +1240,7 @@ namespace ServiceLib.Handler.CoreConfig
} }
//Tun2SocksAddress //Tun2SocksAddress
if (_config.tunModeItem.enableTun && node?.configType == EConfigType.Socks && Utils.IsDomain(node?.sni)) if (_config.tunModeItem.enableTun && node?.configType == EConfigType.SOCKS && Utils.IsDomain(node?.sni))
{ {
dns4Sbox.rules.Insert(0, new() dns4Sbox.rules.Insert(0, new()
{ {

View File

@ -110,7 +110,7 @@ namespace ServiceLib.Handler.CoreConfig
{ {
continue; continue;
} }
if (it.configType is EConfigType.Hysteria2 or EConfigType.Tuic or EConfigType.Wireguard) if (it.configType is EConfigType.Hysteria2 or EConfigType.TUIC or EConfigType.WireGuard)
{ {
continue; continue;
} }
@ -647,8 +647,8 @@ namespace ServiceLib.Handler.CoreConfig
outbound.settings.vnext = null; outbound.settings.vnext = null;
break; break;
} }
case EConfigType.Socks: case EConfigType.SOCKS:
case EConfigType.Http: case EConfigType.HTTP:
{ {
ServersItem4Ray serversItem; ServersItem4Ray serversItem;
if (outbound.settings.servers.Count <= 0) if (outbound.settings.servers.Count <= 0)
@ -1208,8 +1208,8 @@ namespace ServiceLib.Handler.CoreConfig
if (prevNode is not null if (prevNode is not null
&& prevNode.configType != EConfigType.Custom && prevNode.configType != EConfigType.Custom
&& prevNode.configType != EConfigType.Hysteria2 && prevNode.configType != EConfigType.Hysteria2
&& prevNode.configType != EConfigType.Tuic && prevNode.configType != EConfigType.TUIC
&& prevNode.configType != EConfigType.Wireguard) && prevNode.configType != EConfigType.WireGuard)
{ {
var prevOutbound = JsonUtils.Deserialize<Outbounds4Ray>(txtOutbound); var prevOutbound = JsonUtils.Deserialize<Outbounds4Ray>(txtOutbound);
GenOutbound(prevNode, prevOutbound); GenOutbound(prevNode, prevOutbound);
@ -1227,8 +1227,8 @@ namespace ServiceLib.Handler.CoreConfig
if (nextNode is not null if (nextNode is not null
&& nextNode.configType != EConfigType.Custom && nextNode.configType != EConfigType.Custom
&& nextNode.configType != EConfigType.Hysteria2 && nextNode.configType != EConfigType.Hysteria2
&& nextNode.configType != EConfigType.Tuic && nextNode.configType != EConfigType.TUIC
&& nextNode.configType != EConfigType.Wireguard) && nextNode.configType != EConfigType.WireGuard)
{ {
var nextOutbound = JsonUtils.Deserialize<Outbounds4Ray>(txtOutbound); var nextOutbound = JsonUtils.Deserialize<Outbounds4Ray>(txtOutbound);
GenOutbound(nextNode, nextOutbound); GenOutbound(nextNode, nextOutbound);

View File

@ -66,7 +66,7 @@ namespace ServiceLib.Handler
public int LoadCoreConfigSpeedtest(List<ServerTestItem> selecteds) public int LoadCoreConfigSpeedtest(List<ServerTestItem> selecteds)
{ {
int pid = -1; int pid = -1;
var coreType = selecteds.Exists(t => t.configType == EConfigType.Hysteria2 || t.configType == EConfigType.Tuic || t.configType == EConfigType.Wireguard) ? ECoreType.sing_box : ECoreType.Xray; var coreType = selecteds.Exists(t => t.configType == EConfigType.Hysteria2 || t.configType == EConfigType.TUIC || t.configType == EConfigType.WireGuard) ? ECoreType.sing_box : ECoreType.Xray;
string configPath = Utils.GetConfigPath(Global.CoreSpeedtestConfigFileName); string configPath = Utils.GetConfigPath(Global.CoreSpeedtestConfigFileName);
if (CoreConfigHandler.GenerateClientSpeedtestConfig(_config, configPath, selecteds, coreType, out string msg) != 0) if (CoreConfigHandler.GenerateClientSpeedtestConfig(_config, configPath, selecteds, coreType, out string msg) != 0)
{ {
@ -204,7 +204,7 @@ namespace ServiceLib.Handler
itemSocks = new ProfileItem() itemSocks = new ProfileItem()
{ {
coreType = preCoreType, coreType = preCoreType,
configType = EConfigType.Socks, configType = EConfigType.SOCKS,
address = Global.Loopback, address = Global.Loopback,
sni = node.address, //Tun2SocksAddress sni = node.address, //Tun2SocksAddress
port = LazyConfig.Instance.GetLocalPort(EInboundProtocol.socks) port = LazyConfig.Instance.GetLocalPort(EInboundProtocol.socks)
@ -216,7 +216,7 @@ namespace ServiceLib.Handler
itemSocks = new ProfileItem() itemSocks = new ProfileItem()
{ {
coreType = preCoreType, coreType = preCoreType,
configType = EConfigType.Socks, configType = EConfigType.SOCKS,
address = Global.Loopback, address = Global.Loopback,
port = node.preSocksPort.Value, port = node.preSocksPort.Value,
}; };

View File

@ -10,12 +10,12 @@
{ {
EConfigType.VMess => VmessFmt.ToUri(item), EConfigType.VMess => VmessFmt.ToUri(item),
EConfigType.Shadowsocks => ShadowsocksFmt.ToUri(item), EConfigType.Shadowsocks => ShadowsocksFmt.ToUri(item),
EConfigType.Socks => SocksFmt.ToUri(item), EConfigType.SOCKS => SocksFmt.ToUri(item),
EConfigType.Trojan => TrojanFmt.ToUri(item), EConfigType.Trojan => TrojanFmt.ToUri(item),
EConfigType.VLESS => VLESSFmt.ToUri(item), EConfigType.VLESS => VLESSFmt.ToUri(item),
EConfigType.Hysteria2 => Hysteria2Fmt.ToUri(item), EConfigType.Hysteria2 => Hysteria2Fmt.ToUri(item),
EConfigType.Tuic => TuicFmt.ToUri(item), EConfigType.TUIC => TuicFmt.ToUri(item),
EConfigType.Wireguard => WireguardFmt.ToUri(item), EConfigType.WireGuard => WireguardFmt.ToUri(item),
_ => null, _ => null,
}; };
@ -49,7 +49,7 @@
{ {
return ShadowsocksFmt.Resolve(str, out msg); return ShadowsocksFmt.Resolve(str, out msg);
} }
else if (str.StartsWith(Global.ProtocolShares[EConfigType.Socks])) else if (str.StartsWith(Global.ProtocolShares[EConfigType.SOCKS]))
{ {
return SocksFmt.Resolve(str, out msg); return SocksFmt.Resolve(str, out msg);
} }
@ -65,11 +65,11 @@
{ {
return Hysteria2Fmt.Resolve(str, out msg); return Hysteria2Fmt.Resolve(str, out msg);
} }
else if (str.StartsWith(Global.ProtocolShares[EConfigType.Tuic])) else if (str.StartsWith(Global.ProtocolShares[EConfigType.TUIC]))
{ {
return TuicFmt.Resolve(str, out msg); return TuicFmt.Resolve(str, out msg);
} }
else if (str.StartsWith(Global.ProtocolShares[EConfigType.Wireguard])) else if (str.StartsWith(Global.ProtocolShares[EConfigType.WireGuard]))
{ {
return WireguardFmt.Resolve(str, out msg); return WireguardFmt.Resolve(str, out msg);
} }

View File

@ -17,7 +17,7 @@
return null; return null;
} }
item.configType = EConfigType.Socks; item.configType = EConfigType.SOCKS;
return item; return item;
} }
@ -41,7 +41,7 @@
//new //new
var pw = Utils.Base64Encode($"{item.security}:{item.id}"); var pw = Utils.Base64Encode($"{item.security}:{item.id}");
url = $"{pw}@{GetIpv6(item.address)}:{item.port}"; url = $"{pw}@{GetIpv6(item.address)}:{item.port}";
url = $"{Global.ProtocolShares[EConfigType.Socks]}{url}{remark}"; url = $"{Global.ProtocolShares[EConfigType.SOCKS]}{url}{remark}";
return url; return url;
} }
@ -49,9 +49,9 @@
{ {
ProfileItem item = new() ProfileItem item = new()
{ {
configType = EConfigType.Socks configType = EConfigType.SOCKS
}; };
result = result[Global.ProtocolShares[EConfigType.Socks].Length..]; result = result[Global.ProtocolShares[EConfigType.SOCKS].Length..];
//remark //remark
int indexRemark = result.IndexOf("#"); int indexRemark = result.IndexOf("#");
if (indexRemark > 0) if (indexRemark > 0)

View File

@ -8,7 +8,7 @@
ProfileItem item = new() ProfileItem item = new()
{ {
configType = EConfigType.Tuic configType = EConfigType.TUIC
}; };
Uri url = new(str); Uri url = new(str);
@ -57,7 +57,7 @@
$"{item.id}:{item.security}", $"{item.id}:{item.security}",
GetIpv6(item.address), GetIpv6(item.address),
item.port); item.port);
url = $"{Global.ProtocolShares[EConfigType.Tuic]}{url}{query}{remark}"; url = $"{Global.ProtocolShares[EConfigType.TUIC]}{url}{query}{remark}";
return url; return url;
} }
} }

View File

@ -8,7 +8,7 @@
ProfileItem item = new() ProfileItem item = new()
{ {
configType = EConfigType.Wireguard configType = EConfigType.WireGuard
}; };
Uri url = new(str); Uri url = new(str);
@ -62,7 +62,7 @@
Utils.UrlEncode(item.id), Utils.UrlEncode(item.id),
GetIpv6(item.address), GetIpv6(item.address),
item.port); item.port);
url = $"{Global.ProtocolShares[EConfigType.Wireguard]}{url}/{query}{remark}"; url = $"{Global.ProtocolShares[EConfigType.WireGuard]}{url}/{query}{remark}";
return url; return url;
} }
} }

View File

@ -655,7 +655,7 @@ namespace ServiceLib.Resx {
} }
/// <summary> /// <summary>
/// 查找类似 Add [Http] server 的本地化字符串。 /// 查找类似 Add [HTTP] server 的本地化字符串。
/// </summary> /// </summary>
public static string menuAddHttpServer { public static string menuAddHttpServer {
get { get {
@ -700,7 +700,7 @@ namespace ServiceLib.Resx {
} }
/// <summary> /// <summary>
/// 查找类似 Add [Socks] server 的本地化字符串。 /// 查找类似 Add [SOCKS] server 的本地化字符串。
/// </summary> /// </summary>
public static string menuAddSocksServer { public static string menuAddSocksServer {
get { get {
@ -718,7 +718,7 @@ namespace ServiceLib.Resx {
} }
/// <summary> /// <summary>
/// 查找类似 Add [Tuic] server 的本地化字符串。 /// 查找类似 Add [TUIC] server 的本地化字符串。
/// </summary> /// </summary>
public static string menuAddTuicServer { public static string menuAddTuicServer {
get { get {
@ -745,7 +745,7 @@ namespace ServiceLib.Resx {
} }
/// <summary> /// <summary>
/// 查找类似 Add [Wireguard] server 的本地化字符串。 /// 查找类似 Add [WireGuard] server 的本地化字符串。
/// </summary> /// </summary>
public static string menuAddWireguardServer { public static string menuAddWireguardServer {
get { get {

View File

@ -536,7 +536,7 @@
<value>Add [Shadowsocks] server</value> <value>Add [Shadowsocks] server</value>
</data> </data>
<data name="menuAddSocksServer" xml:space="preserve"> <data name="menuAddSocksServer" xml:space="preserve">
<value>Add [Socks] server</value> <value>Add [SOCKS] server</value>
</data> </data>
<data name="menuAddTrojanServer" xml:space="preserve"> <data name="menuAddTrojanServer" xml:space="preserve">
<value>Add [Trojan] server</value> <value>Add [Trojan] server</value>
@ -1094,7 +1094,7 @@
<value>Use System Hosts</value> <value>Use System Hosts</value>
</data> </data>
<data name="menuAddTuicServer" xml:space="preserve"> <data name="menuAddTuicServer" xml:space="preserve">
<value>Add [Tuic] server</value> <value>Add [TUIC] server</value>
</data> </data>
<data name="TbHeaderType8" xml:space="preserve"> <data name="TbHeaderType8" xml:space="preserve">
<value>Congestion control</value> <value>Congestion control</value>
@ -1115,7 +1115,7 @@
<value>Enable IPv6 Address</value> <value>Enable IPv6 Address</value>
</data> </data>
<data name="menuAddWireguardServer" xml:space="preserve"> <data name="menuAddWireguardServer" xml:space="preserve">
<value>Add [Wireguard] server</value> <value>Add [WireGuard] server</value>
</data> </data>
<data name="TbPrivateKey" xml:space="preserve"> <data name="TbPrivateKey" xml:space="preserve">
<value>PrivateKey</value> <value>PrivateKey</value>
@ -1148,7 +1148,7 @@
<value>*grpc Authority</value> <value>*grpc Authority</value>
</data> </data>
<data name="menuAddHttpServer" xml:space="preserve"> <data name="menuAddHttpServer" xml:space="preserve">
<value>Add [Http] server</value> <value>Add [HTTP] server</value>
</data> </data>
<data name="TbSettingsEnableFragmentTips" xml:space="preserve"> <data name="TbSettingsEnableFragmentTips" xml:space="preserve">
<value>Use Xray and enable non-Tun mode, which conflicts with the group previous proxy</value> <value>Use Xray and enable non-Tun mode, which conflicts with the group previous proxy</value>

View File

@ -536,7 +536,7 @@
<value>Добавить сервер [Shadowsocks]</value> <value>Добавить сервер [Shadowsocks]</value>
</data> </data>
<data name="menuAddSocksServer" xml:space="preserve"> <data name="menuAddSocksServer" xml:space="preserve">
<value>Добавить сервер [Socks]</value> <value>Добавить сервер [SOCKS]</value>
</data> </data>
<data name="menuAddTrojanServer" xml:space="preserve"> <data name="menuAddTrojanServer" xml:space="preserve">
<value>Добавить сервер [Trojan]</value> <value>Добавить сервер [Trojan]</value>

View File

@ -536,7 +536,7 @@
<value>添加[Shadowsocks]服务器</value> <value>添加[Shadowsocks]服务器</value>
</data> </data>
<data name="menuAddSocksServer" xml:space="preserve"> <data name="menuAddSocksServer" xml:space="preserve">
<value>添加[Socks]服务器</value> <value>添加[SOCKS]服务器</value>
</data> </data>
<data name="menuAddTrojanServer" xml:space="preserve"> <data name="menuAddTrojanServer" xml:space="preserve">
<value>添加[Trojan]服务器</value> <value>添加[Trojan]服务器</value>
@ -1091,7 +1091,7 @@
<value>使用系统hosts</value> <value>使用系统hosts</value>
</data> </data>
<data name="menuAddTuicServer" xml:space="preserve"> <data name="menuAddTuicServer" xml:space="preserve">
<value>添加[Tuic]服务器</value> <value>添加[TUIC]服务器</value>
</data> </data>
<data name="TbHeaderType8" xml:space="preserve"> <data name="TbHeaderType8" xml:space="preserve">
<value>拥塞控制算法</value> <value>拥塞控制算法</value>
@ -1112,7 +1112,7 @@
<value>启用IPv6</value> <value>启用IPv6</value>
</data> </data>
<data name="menuAddWireguardServer" xml:space="preserve"> <data name="menuAddWireguardServer" xml:space="preserve">
<value>添加[Wireguard]服务器</value> <value>添加[WireGuard]服务器</value>
</data> </data>
<data name="TbPrivateKey" xml:space="preserve"> <data name="TbPrivateKey" xml:space="preserve">
<value>PrivateKey</value> <value>PrivateKey</value>
@ -1145,7 +1145,7 @@
<value>*grpc Authority</value> <value>*grpc Authority</value>
</data> </data>
<data name="menuAddHttpServer" xml:space="preserve"> <data name="menuAddHttpServer" xml:space="preserve">
<value>添加[Http]服务器</value> <value>添加[HTTP]服务器</value>
</data> </data>
<data name="TbSettingsEnableFragment" xml:space="preserve"> <data name="TbSettingsEnableFragment" xml:space="preserve">
<value>启用分片Fragment</value> <value>启用分片Fragment</value>

View File

@ -535,7 +535,7 @@
<value>新增[Shadowsocks]伺服器</value> <value>新增[Shadowsocks]伺服器</value>
</data> </data>
<data name="menuAddSocksServer" xml:space="preserve"> <data name="menuAddSocksServer" xml:space="preserve">
<value>新增[Socks]伺服器</value> <value>新增[SOCKS]伺服器</value>
</data> </data>
<data name="menuAddTrojanServer" xml:space="preserve"> <data name="menuAddTrojanServer" xml:space="preserve">
<value>新增[Trojan]伺服器</value> <value>新增[Trojan]伺服器</value>
@ -1082,7 +1082,7 @@
<value>IP 或 IP CIDR</value> <value>IP 或 IP CIDR</value>
</data> </data>
<data name="menuAddTuicServer" xml:space="preserve"> <data name="menuAddTuicServer" xml:space="preserve">
<value>新增[Tuic]伺服器</value> <value>新增[TUIC]伺服器</value>
</data> </data>
<data name="LvPrevProfile" xml:space="preserve"> <data name="LvPrevProfile" xml:space="preserve">
<value>前置代理別名</value> <value>前置代理別名</value>
@ -1118,7 +1118,7 @@
<value>*grpc Authority</value> <value>*grpc Authority</value>
</data> </data>
<data name="menuAddHttpServer" xml:space="preserve"> <data name="menuAddHttpServer" xml:space="preserve">
<value>新增[Http]伺服器</value> <value>新增[HTTP]伺服器</value>
</data> </data>
<data name="TbSettingsEnableFragment" xml:space="preserve"> <data name="TbSettingsEnableFragment" xml:space="preserve">
<value>啟用分片Fragment</value> <value>啟用分片Fragment</value>

View File

@ -74,8 +74,8 @@ namespace ServiceLib.ViewModels
return; return;
} }
} }
if (SelectedSource.configType != EConfigType.Socks if (SelectedSource.configType != EConfigType.SOCKS
&& SelectedSource.configType != EConfigType.Http) && SelectedSource.configType != EConfigType.HTTP)
{ {
if (Utils.IsNullOrEmpty(SelectedSource.id)) if (Utils.IsNullOrEmpty(SelectedSource.id))
{ {

View File

@ -206,11 +206,11 @@ namespace ServiceLib.ViewModels
}); });
AddSocksServerCmd = ReactiveCommand.Create(() => AddSocksServerCmd = ReactiveCommand.Create(() =>
{ {
AddServerAsync(true, EConfigType.Socks); AddServerAsync(true, EConfigType.SOCKS);
}); });
AddHttpServerCmd = ReactiveCommand.Create(() => AddHttpServerCmd = ReactiveCommand.Create(() =>
{ {
AddServerAsync(true, EConfigType.Http); AddServerAsync(true, EConfigType.HTTP);
}); });
AddTrojanServerCmd = ReactiveCommand.Create(() => AddTrojanServerCmd = ReactiveCommand.Create(() =>
{ {
@ -222,11 +222,11 @@ namespace ServiceLib.ViewModels
}); });
AddTuicServerCmd = ReactiveCommand.Create(() => AddTuicServerCmd = ReactiveCommand.Create(() =>
{ {
AddServerAsync(true, EConfigType.Tuic); AddServerAsync(true, EConfigType.TUIC);
}); });
AddWireguardServerCmd = ReactiveCommand.Create(() => AddWireguardServerCmd = ReactiveCommand.Create(() =>
{ {
AddServerAsync(true, EConfigType.Wireguard); AddServerAsync(true, EConfigType.WireGuard);
}); });
AddCustomServerCmd = ReactiveCommand.Create(() => AddCustomServerCmd = ReactiveCommand.Create(() =>
{ {

View File

@ -85,8 +85,8 @@ namespace v2rayN.Desktop.Views
}); });
break; break;
case EConfigType.Socks: case EConfigType.SOCKS:
case EConfigType.Http: case EConfigType.HTTP:
gridSocks.IsVisible = true; gridSocks.IsVisible = true;
break; break;
@ -121,7 +121,7 @@ namespace v2rayN.Desktop.Views
cmbFingerprint.SelectedValue = string.Empty; cmbFingerprint.SelectedValue = string.Empty;
break; break;
case EConfigType.Tuic: case EConfigType.TUIC:
gridTuic.IsVisible = true; gridTuic.IsVisible = true;
sepa2.IsVisible = false; sepa2.IsVisible = false;
gridTransport.IsVisible = false; gridTransport.IsVisible = false;
@ -135,7 +135,7 @@ namespace v2rayN.Desktop.Views
}); });
break; break;
case EConfigType.Wireguard: case EConfigType.WireGuard:
gridWireguard.IsVisible = true; gridWireguard.IsVisible = true;
sepa2.IsVisible = false; sepa2.IsVisible = false;
@ -168,8 +168,8 @@ namespace v2rayN.Desktop.Views
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.cmbSecurity3.SelectedValue).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.cmbSecurity3.SelectedValue).DisposeWith(disposables);
break; break;
case EConfigType.Socks: case EConfigType.SOCKS:
case EConfigType.Http: case EConfigType.HTTP:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId4.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId4.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity4.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity4.Text).DisposeWith(disposables);
break; break;
@ -190,13 +190,13 @@ namespace v2rayN.Desktop.Views
this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath7.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath7.Text).DisposeWith(disposables);
break; break;
case EConfigType.Tuic: case EConfigType.TUIC:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId8.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId8.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity8.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity8.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.headerType, v => v.cmbHeaderType8.SelectedValue).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.headerType, v => v.cmbHeaderType8.SelectedValue).DisposeWith(disposables);
break; break;
case EConfigType.Wireguard: case EConfigType.WireGuard:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId9.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.publicKey, v => v.txtPublicKey9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.publicKey, v => v.txtPublicKey9.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath9.Text).DisposeWith(disposables);

View File

@ -95,7 +95,7 @@
BorderThickness="1" BorderThickness="1"
Classes="TextArea Margin8" Classes="TextArea Margin8"
TextWrapping="Wrap" TextWrapping="Wrap"
Watermark="Http/Socks" /> Watermark="HTTP/SOCKS" />
</DockPanel> </DockPanel>
</TabItem> </TabItem>
@ -153,7 +153,7 @@
BorderThickness="1" BorderThickness="1"
Classes="TextArea Margin8" Classes="TextArea Margin8"
TextWrapping="Wrap" TextWrapping="Wrap"
Watermark="Http/Socks" /> Watermark="HTTP/SOCKS" />
<GridSplitter Grid.Column="1" HorizontalAlignment="Stretch" /> <GridSplitter Grid.Column="1" HorizontalAlignment="Stretch" />

View File

@ -79,8 +79,8 @@ namespace v2rayN.Views
}); });
break; break;
case EConfigType.Socks: case EConfigType.SOCKS:
case EConfigType.Http: case EConfigType.HTTP:
gridSocks.Visibility = Visibility.Visible; gridSocks.Visibility = Visibility.Visible;
break; break;
@ -115,7 +115,7 @@ namespace v2rayN.Views
cmbFingerprint.Text = string.Empty; cmbFingerprint.Text = string.Empty;
break; break;
case EConfigType.Tuic: case EConfigType.TUIC:
gridTuic.Visibility = Visibility.Visible; gridTuic.Visibility = Visibility.Visible;
sepa2.Visibility = Visibility.Collapsed; sepa2.Visibility = Visibility.Collapsed;
gridTransport.Visibility = Visibility.Collapsed; gridTransport.Visibility = Visibility.Collapsed;
@ -129,7 +129,7 @@ namespace v2rayN.Views
}); });
break; break;
case EConfigType.Wireguard: case EConfigType.WireGuard:
gridWireguard.Visibility = Visibility.Visible; gridWireguard.Visibility = Visibility.Visible;
sepa2.Visibility = Visibility.Collapsed; sepa2.Visibility = Visibility.Collapsed;
@ -162,8 +162,8 @@ namespace v2rayN.Views
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.cmbSecurity3.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.cmbSecurity3.Text).DisposeWith(disposables);
break; break;
case EConfigType.Socks: case EConfigType.SOCKS:
case EConfigType.Http: case EConfigType.HTTP:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId4.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId4.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity4.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity4.Text).DisposeWith(disposables);
break; break;
@ -184,13 +184,13 @@ namespace v2rayN.Views
this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath7.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath7.Text).DisposeWith(disposables);
break; break;
case EConfigType.Tuic: case EConfigType.TUIC:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId8.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId8.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity8.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.security, v => v.txtSecurity8.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.headerType, v => v.cmbHeaderType8.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.headerType, v => v.cmbHeaderType8.Text).DisposeWith(disposables);
break; break;
case EConfigType.Wireguard: case EConfigType.WireGuard:
this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.id, v => v.txtId9.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.publicKey, v => v.txtPublicKey9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.publicKey, v => v.txtPublicKey9.Text).DisposeWith(disposables);
this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath9.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.path, v => v.txtPath9.Text).DisposeWith(disposables);

View File

@ -116,7 +116,7 @@
x:Name="txtnormalDNS" x:Name="txtnormalDNS"
Margin="{StaticResource SettingItemMargin}" Margin="{StaticResource SettingItemMargin}"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
materialDesign:HintAssist.Hint="Http/Socks" materialDesign:HintAssist.Hint="HTTP/SOCKS"
AcceptsReturn="True" AcceptsReturn="True"
BorderThickness="1" BorderThickness="1"
Style="{StaticResource MaterialDesignOutlinedTextBox}" Style="{StaticResource MaterialDesignOutlinedTextBox}"
@ -185,7 +185,7 @@
x:Name="txtnormalDNS2" x:Name="txtnormalDNS2"
Grid.Column="0" Grid.Column="0"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
materialDesign:HintAssist.Hint="Http/Socks" materialDesign:HintAssist.Hint="HTTP/SOCKS"
AcceptsReturn="True" AcceptsReturn="True"
BorderThickness="1" BorderThickness="1"
Style="{StaticResource MaterialDesignOutlinedTextBox}" Style="{StaticResource MaterialDesignOutlinedTextBox}"