resolveLongLivedStaticFiles static method
Implementation
static List<Pattern> resolveLongLivedStaticFiles(
Object? patterns, {
List<Pattern>? def,
APIConfig? apiConfig,
}) {
List list;
if (patterns is Iterable) {
list = patterns.toList();
} else if (patterns != null) {
list = [patterns];
} else {
if (apiConfig != null) {
list =
apiConfig
.getAsMap('cache')
?.getAsMap('long_lived_static_files')
?.getAsList('cached') ??
[];
} else {
list = [];
}
}
List<Pattern> files =
list
.map((e) {
if (e is RegExp) return e;
var s = e.toString().trim();
if (s.isEmpty) return null;
if (s.startsWith('re:')) {
return RegExp(s.substring(3));
} else if (s.startsWith('regexp:')) {
return RegExp(s.substring(7));
} else {
return s;
}
})
.nonNulls
.toList();
if (list.isEmpty) {
return def ?? [];
}
return files;
}