sanitizeXrayJson function
dynamic
sanitizeXrayJson(
- dynamic params
Implementation
dynamic sanitizeXrayJson(dynamic params) {
if (params is XrayJsonModel) {
return sanitizeXrayJson(params.toJson());
}
if (params is Map) {
final source = Map<String, dynamic>.fromEntries(
params.entries
.map((entry) => MapEntry(entry.key.toString(), entry.value)),
);
_normalizeStreamSettingsAliases(source);
source.remove('allowInsecure');
final map = <String, dynamic>{};
source.forEach((key, value) {
final sanitized = sanitizeXrayJson(value);
if (sanitized != null) {
map[key] = sanitized;
}
});
return map.isEmpty ? null : map;
}
if (params is Iterable) {
final list = <dynamic>[];
for (final value in params) {
final sanitized = sanitizeXrayJson(value);
if (sanitized != null) {
list.add(sanitized);
}
}
return list.isEmpty ? null : list;
}
return params;
}