price extension added

This commit is contained in:
amirrezaghabeli
2025-09-28 09:05:26 +03:30
parent 96a900690f
commit 7b50d7da1e
2 changed files with 31 additions and 1 deletions
+28
View File
@@ -0,0 +1,28 @@
extension PriceExtension on num {
/// Formats the number with commas every 3 digits
String get formattedPrice {
final numberString = toString();
final parts = numberString.split('.');
final integerPart = parts[0];
final decimalPart = parts.length > 1 ? '.${parts[1]}' : '';
final formattedInteger = _addCommas(integerPart);
return formattedInteger + decimalPart;
}
String _addCommas(String number) {
if (number.length <= 3) {
return number;
}
final reversed = number.split('').reversed.join('');
final chunks = <String>[];
for (int i = 0; i < reversed.length; i += 3) {
final end = (i + 3 < reversed.length) ? i + 3 : reversed.length;
chunks.add(reversed.substring(i, end));
}
return chunks.join(',').split('').reversed.join('');
}
}