sanitizeScreenName function

String sanitizeScreenName(
  1. String screen
)

Filesystem-safe slug for a host-supplied screen name.

Implementation

String sanitizeScreenName(String screen) {
  var s = screen.trim();
  if (s.isEmpty) s = kUnknownScreen;
  final raw = s;
  var slug = s
      .toLowerCase()
      .replaceAll(RegExp(r'[^a-z0-9]+'), '_')
      .replaceAll(RegExp(r'_+'), '_')
      .replaceAll(RegExp(r'^_+|_+$'), '');
  if (slug.isEmpty) slug = kUnknownScreen;
  if (slug.length > kMaxSlugLength) slug = slug.substring(0, kMaxSlugLength);
  return '${slug}_h${cacheShortHash(raw)}';
}