findScript method
Find a script by name (supports fuzzy matching)
Implementation
String? findScript(String query, Map<String, String> scripts) {
// Exact match
if (scripts.containsKey(query)) return query;
// Case-insensitive match
final String lower = query.toLowerCase();
for (final String key in scripts.keys) {
if (key.toLowerCase() == lower) return key;
}
// Prefix match
final List<String> prefixMatches = scripts.keys.where((String k) => k.toLowerCase().startsWith(lower)).toList();
if (prefixMatches.length == 1) return prefixMatches.first;
// Contains match
final List<String> containsMatches = scripts.keys.where((String k) => k.toLowerCase().contains(lower)).toList();
if (containsMatches.length == 1) return containsMatches.first;
// Abbreviation match (e.g., "br" matches "build_runner", "pi" matches "pod_install")
final List<String> abbrevMatches = scripts.keys.where((String k) => _matchesAbbreviation(lower, k)).toList();
if (abbrevMatches.length == 1) return abbrevMatches.first;
return null;
}