mirror of
https://github.com/2dust/v2rayN.git
synced 2026-04-16 04:25:45 +00:00
Compare commits
4 commits
441d79acbe
...
d818270ece
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d818270ece | ||
|
|
8500012609 | ||
|
|
fce86e1434 | ||
|
|
70003e8a81 |
3 changed files with 19 additions and 4 deletions
|
|
@ -1,3 +1,5 @@
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
|
||||||
namespace ServiceLib.Handler.Builder;
|
namespace ServiceLib.Handler.Builder;
|
||||||
|
|
||||||
public record CoreConfigContextBuilderResult(CoreConfigContext Context, NodeValidatorResult ValidatorResult)
|
public record CoreConfigContextBuilderResult(CoreConfigContext Context, NodeValidatorResult ValidatorResult)
|
||||||
|
|
@ -309,6 +311,11 @@ public class CoreConfigContextBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
var nodeValidatorResult = NodeValidator.Validate(node, context.RunCoreType);
|
var nodeValidatorResult = NodeValidator.Validate(node, context.RunCoreType);
|
||||||
|
var msgs = new List<string>([.. nodeValidatorResult.Errors, .. nodeValidatorResult.Warnings]);
|
||||||
|
if (msgs.Count > 0)
|
||||||
|
{
|
||||||
|
Logging.SaveLog($"{node.Remarks}: {string.Join("; ", msgs)}");
|
||||||
|
}
|
||||||
if (!nodeValidatorResult.Success)
|
if (!nodeValidatorResult.Success)
|
||||||
{
|
{
|
||||||
return nodeValidatorResult;
|
return nodeValidatorResult;
|
||||||
|
|
|
||||||
|
|
@ -143,11 +143,19 @@ public class NodeValidator
|
||||||
|
|
||||||
if (item.Network == nameof(ETransport.xhttp) && !item.Extra.IsNullOrEmpty())
|
if (item.Network == nameof(ETransport.xhttp) && !item.Extra.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
if (JsonUtils.ParseJson(item.Extra) is null)
|
if (JsonUtils.ParseJson(item.Extra) is not JsonObject)
|
||||||
{
|
{
|
||||||
v.Error(string.Format(ResUI.MsgInvalidProperty, "XHTTP Extra"));
|
v.Error(string.Format(ResUI.MsgInvalidProperty, "XHTTP Extra"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!item.Finalmask.IsNullOrEmpty())
|
||||||
|
{
|
||||||
|
if (JsonUtils.ParseJson(item.Finalmask) is not JsonObject)
|
||||||
|
{
|
||||||
|
v.Error(string.Format(ResUI.MsgInvalidProperty, "Finalmask"));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string? ValidateSingboxTransport(EConfigType configType, string net)
|
private static string? ValidateSingboxTransport(EConfigType configType, string net)
|
||||||
|
|
|
||||||
|
|
@ -943,7 +943,7 @@
|
||||||
<value>Шрифт (требуется перезапуск)</value>
|
<value>Шрифт (требуется перезапуск)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsCurrentFontFamilyTip" xml:space="preserve">
|
<data name="TbSettingsCurrentFontFamilyTip" xml:space="preserve">
|
||||||
<value>Скопируйте файл шрифта TTF/TTC в каталог gui Fonts и заново откройте окно настроек</value>
|
<value>Скопируйте файл шрифта TTF/TTC в каталог guiFonts и заново откройте окно настроек</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsSocksPortTip" xml:space="preserve">
|
<data name="TbSettingsSocksPortTip" xml:space="preserve">
|
||||||
<value>PAC-порт = +3; Xray API порт = +4; mihomo API порт = +5;</value>
|
<value>PAC-порт = +3; Xray API порт = +4; mihomo API порт = +5;</value>
|
||||||
|
|
@ -1117,7 +1117,7 @@
|
||||||
<value>Пользовательский набор правил для sing-box</value>
|
<value>Пользовательский набор правил для sing-box</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NeedRebootTips" xml:space="preserve">
|
<data name="NeedRebootTips" xml:space="preserve">
|
||||||
<value>Операция успешна. Нажмите в меню настроек для перезапуска приложения.</value>
|
<value>Операция успешна. Закройте приложение, нажав «Выход» в меню трея, и запустите его заново</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuOpenTheFileLocation" xml:space="preserve">
|
<data name="menuOpenTheFileLocation" xml:space="preserve">
|
||||||
<value>Открыть место хранения</value>
|
<value>Открыть место хранения</value>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue