slugifyCurriculumTitle function
Derives a URL-safe, collision-resistant slug from a curriculum title.
Implementation
@visibleForTesting
String slugifyCurriculumTitle(String title, {String suffix = ''}) {
final base = title
.toLowerCase()
.replaceAll(RegExp(r'[^a-z0-9]+'), '-')
.replaceAll(RegExp(r'^-+|-+$'), '');
final safe = base.isEmpty ? 'curriculum' : base;
final trimmed = safe.length > 40 ? safe.substring(0, 40) : safe;
return suffix.isEmpty
? trimmed
: '${trimmed.replaceAll(RegExp(r'-+$'), '')}-$suffix';
}