initialsFromName function
Returns the uppercase initials for name.
Uses the first letter of the first and last whitespace-separated parts; a
single-word name yields one initial. Returns an empty string when name
has no usable parts.
Example:
initialsFromName('Ada Lovelace'); // 'AL'
initialsFromName('Plato'); // 'P'
Implementation
String initialsFromName(String name) {
final List<String> parts = name
.trim()
.split(RegExp(r'\s+'))
.where((String s) => s.isNotEmpty)
.toList();
if (parts.isEmpty) return '';
if (parts.length == 1) return parts.first.substringSafe(0, 1).toUpperCase();
final first = parts.firstOrNull;
final last = parts.lastOrNull;
if (first == null || last == null) return '';
return '${first.substringSafe(0, 1)}${last.substringSafe(0, 1)}'.toUpperCase();
}