XrayJsonConfig constructor
XrayJsonConfig({
- required String url,
Implementation
XrayJsonConfig({required super.url}) {
final decoded = _decodeJsonConfig(url);
if (decoded is Map<String, dynamic>) {
rawConfig = decoded;
} else if (decoded is List<dynamic> &&
decoded.isNotEmpty &&
decoded.first is Map<String, dynamic>) {
rawConfig = decoded.first as Map<String, dynamic>;
} else {
throw ArgumentError('JSON config is invalid');
}
const XrayConfigValidator().validate(rawConfig);
}