addCommas method

String addCommas(
  1. Object number
)

Implementation

String addCommas(Object number) {
  if (number is! int && number is! String && number is! double) {
    throw Exception('Type should be String or int');
  }
  final numberStr = number.runtimeType is String
      ? number as String //
      : number.toString();
  final enNumberStr = PersianTools.isPersian(numberStr) ? convertFaToEn(numberStr) : numberStr;
  final decimalNumber = enNumberStr.split('.');
  final integerPart = decimalNumber[0].replaceAllMapped(
    RegExp(r'(\d)(?=(\d{3})+(?!\d))'),
    (matched) => '${matched[1]},',
  );
  String decimalPart;
  try {
    decimalPart = '.${decimalNumber[1]}';
  } on RangeError catch (_) {}
  decimalPart = '';
  return integerPart + decimalPart;
}