extractLatestVersions function
Implementation
Map<String, LatestVersionInfo> extractLatestVersions(
Map<String, dynamic> definitions,
) {
final latest = <String, LatestVersionInfo>{};
final re = RegExp(r'^(v\d+)([A-Z][A-Za-z0-9]*?)(V\d+)?$');
for (final k in definitions.keys) {
final m = re.firstMatch(k);
if (m == null) continue;
final full = m.group(0)!;
final base = m.group(2)!;
final suf = m.group(3);
final formatted = '${base[0].toLowerCase()}${base.substring(1)}${suf ?? ''}';
final prev = latest[base];
if (prev == null || (suf ?? '').compareTo(prev.versionSuffix ?? '') > 0) {
latest[base] = LatestVersionInfo(full, formatted, suf);
}
}
return latest;
}