diff --git a/plugins/shorthands.js b/plugins/shorthands.js index 9b0ab9f8..c7d68145 100644 --- a/plugins/shorthands.js +++ b/plugins/shorthands.js @@ -18,7 +18,7 @@ export default (ctx, inject) => { }) inject('formatNumber', formatNumber) inject('capitalizeString', capitalizeString) - inject('formatMoney', (number) => '$' + formatNumber(number.toFixed(2))) + inject('formatMoney', formatMoney) inject('formatVersion', (versionsArray) => formatVersions(versionsArray, ctx.store) ) @@ -189,6 +189,23 @@ export const formatNumber = (number) => { } } +export const formatMoney = (number) => { + const x = +number + if (x >= 1000000) { + return '$' + (x / 1000000).toFixed(2).toString() + 'M' + } else if (x >= 10000) { + return '$' + (x / 1000).toFixed(1).toString() + 'K' + } else { + return ( + '$' + + x + .toFixed(2) + .toString() + .replace(/\B(?=(\d{3})+(?!\d))/g, ',') + ) + } +} + export const formatBytes = (bytes, decimals = 2) => { if (bytes === 0) return '0 Bytes'