better xray support
This commit is contained in:
@@ -15,8 +15,7 @@ class SingboxOutboundGroup with _$SingboxOutboundGroup {
|
|||||||
@Default([]) List<SingboxOutboundGroupItem> items,
|
@Default([]) List<SingboxOutboundGroupItem> items,
|
||||||
}) = _SingboxOutboundGroup;
|
}) = _SingboxOutboundGroup;
|
||||||
|
|
||||||
factory SingboxOutboundGroup.fromJson(Map<String, dynamic> json) =>
|
factory SingboxOutboundGroup.fromJson(Map<String, dynamic> json) => _$SingboxOutboundGroupFromJson(json);
|
||||||
_$SingboxOutboundGroupFromJson(json);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
@@ -30,11 +29,9 @@ class SingboxOutboundGroupItem with _$SingboxOutboundGroupItem {
|
|||||||
required int urlTestDelay,
|
required int urlTestDelay,
|
||||||
}) = _SingboxOutboundGroupItem;
|
}) = _SingboxOutboundGroupItem;
|
||||||
|
|
||||||
factory SingboxOutboundGroupItem.fromJson(Map<String, dynamic> json) =>
|
factory SingboxOutboundGroupItem.fromJson(Map<String, dynamic> json) => _$SingboxOutboundGroupItemFromJson(json);
|
||||||
_$SingboxOutboundGroupItemFromJson(json);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ProxyType _typeFromJson(dynamic type) =>
|
final Map<String, ProxyType> _keyMap = Map.fromEntries(ProxyType.values.map((e) => MapEntry(e.key, e)));
|
||||||
ProxyType.values
|
|
||||||
.firstOrNullWhere((e) => e.key == (type as String?)?.toLowerCase()) ??
|
ProxyType _typeFromJson(dynamic type) => ProxyType.fromJson(type);
|
||||||
ProxyType.unknown;
|
|
||||||
|
|||||||
@@ -21,7 +21,13 @@ enum ProxyType {
|
|||||||
selector("Selector"),
|
selector("Selector"),
|
||||||
urltest("URLTest"),
|
urltest("URLTest"),
|
||||||
warp("Warp"),
|
warp("Warp"),
|
||||||
xray("XRay"),
|
|
||||||
|
xvless("XVLESS"),
|
||||||
|
xvmess("XVMess"),
|
||||||
|
xtrojan("Xtrojan"),
|
||||||
|
xfreedom("Xfragment"),
|
||||||
|
xshadowsocks("XShadowsocks"),
|
||||||
|
xsocks("XSocks"),
|
||||||
unknown("Unknown");
|
unknown("Unknown");
|
||||||
|
|
||||||
const ProxyType(this.label);
|
const ProxyType(this.label);
|
||||||
@@ -33,4 +39,6 @@ enum ProxyType {
|
|||||||
static List<ProxyType> groupValues = [selector, urltest];
|
static List<ProxyType> groupValues = [selector, urltest];
|
||||||
|
|
||||||
bool get isGroup => ProxyType.groupValues.contains(this);
|
bool get isGroup => ProxyType.groupValues.contains(this);
|
||||||
|
static final Map<String, ProxyType> _keyMap = Map.fromEntries(ProxyType.values.map((e) => MapEntry(e.key, e)));
|
||||||
|
static ProxyType fromJson(dynamic type) => _keyMap[(type as String?)?.toLowerCase()] ?? ProxyType.unknown;
|
||||||
}
|
}
|
||||||
|
|||||||
2
libcore
2
libcore
Submodule libcore updated: a100263c96...e6db5f2348
Reference in New Issue
Block a user