PathMeta.fromJson constructor
PathMeta.fromJson(
- Map<String, dynamic> map
)
Implementation
factory PathMeta.fromJson(Map<String, dynamic> map) {
final sizeRange = <int>[];
if (map case {'sizes': List<int> sizes_}) {
sizeRange.addAll(List<int>.from(sizes_));
}
final timeRange = <DateTime>[];
if (map case {'times': List<String> times_}) {
for (var e in times_) {
var dt = DateTime.tryParse(e);
if (dt is DateTime) timeRange.add(dt);
}
}
final envMap = <String, String>{};
if (map case {'env': Map env_}) {
final dict_ = Map<String, String>.from(env_);
envMap.addAll(dict_);
}
return PathMeta(
map['path'] ?? '',
pattern: map['pattern'] ?? '',
excludes: switch (map['excludes']) {
List value => List<String>.from(value),
_ => [],
},
sizes: sizeRange,
times: timeRange,
env: envMap,
os: map['os'] ?? '',
);
}