sortBy function
Implementation
List<dynamic> sortBy(List<dynamic> objects, FlutterFileUtilsSorting? by,
{bool reversed: false}) {
switch (by) {
case FlutterFileUtilsSorting.Alpha:
objects
.sort((a, b) => getBaseName(a.path).compareTo(getBaseName(b.path)));
break;
case FlutterFileUtilsSorting.Date:
objects.sort((a, b) {
return a
.statSync()
.modified
.millisecondsSinceEpoch
.compareTo(b.statSync().modified.millisecondsSinceEpoch);
});
break;
case FlutterFileUtilsSorting.Size:
objects.sort((a, b) {
return a.statSync().size.compareTo(b.statSync().size);
});
break;
case FlutterFileUtilsSorting.Type:
objects.sort((a, b) {
return pathlib.extension(a.path).compareTo(pathlib.extension(b.path));
});
break;
default:
objects
.sort((a, b) => getBaseName(a.path).compareTo(getBaseName(b.path)));
}
if (reversed == true) {
return objects.reversed.toList();
}
return objects;
}