makeID method

String makeID({
  1. dynamic withTimestamp = false,
})

Replace part of string after the first occurrence of given delimiter with the replacement string. If the string does not contain the delimiter, returns defaultValue which defaults to the original string.

Implementation

String makeID({withTimestamp = false}) {
  String resultID;
  DateTime now = DateTime.now();
  int timestamp = now.millisecondsSinceEpoch;
  String myID = this.isNotEmpty ? this : 'User';
  List<String> charArray = myID.toCharArray();

  charArray[0] == '@' ? resultID = myID : resultID = '@$myID';

  return withTimestamp == true
      ? TranslitHelper.transliterate(source: '$resultID-$timestamp').toLowerCase()
      : TranslitHelper.transliterate(source: resultID).toLowerCase();
}