mask method
Masks the characters from start to end with mask.
Implementation
String mask({
int start = 0,
int? end,
String mask = '*',
}) {
if (this == null || this!.isEmpty) return '';
if (mask.isEmpty) {
throw ArgumentError.value(mask, 'mask', 'must not be empty');
}
final value = this!;
final safeStart = start.clamp(0, value.length).toInt();
final safeEnd =
(end ?? value.length).clamp(safeStart, value.length).toInt();
final masked = List.filled(safeEnd - safeStart, mask).join();
return '${value.substring(0, safeStart)}$masked${value.substring(safeEnd)}';
}