/opt/canhelp/apps/api/src/lib
Edit: /opt/canhelp/apps/api/src/lib/nameUtils.ts (709B)
/**
* Returns "FirstName L." — shortens last name to initial + dot.
* Used when displaying other users' names (privacy: don't expose full last name).
*/
export function abbrevName(
firstName?: string | null,
lastName?: string | null,
fallback?: string | null,
): string {
if (firstName?.trim()) {
const l = lastName?.trim()
return l ? `${firstName.trim()} ${l[0].toUpperCase()}.` : firstName.trim()
}
if (fallback?.trim()) {
// fallback may be a full name "John Smith" — abbreviate it too
const parts = fallback.trim().split(/\s+/)
if (parts.length >= 2 && parts[1]) {
return `${parts[0]} ${parts[1][0].toUpperCase()}.`
}
return parts[0]
}
return ''
}