20 lines
547 B
JavaScript
20 lines
547 B
JavaScript
export class Asset {
|
|
constructor(data) {
|
|
this.ticker = (data.ticker || 'UNKNOWN').toUpperCase();
|
|
this.currentPrice = data.currentPrice || 0;
|
|
this.type = (data.type || 'STOCK').toUpperCase();
|
|
}
|
|
|
|
formatCurrency(val) {
|
|
return val ? `$${val.toFixed(2)}` : 'N/A';
|
|
}
|
|
|
|
formatLargeNumber(num) {
|
|
if (!num) return 'N/A';
|
|
if (num >= 1e12) return `${(num / 1e12).toFixed(2)}T`;
|
|
if (num >= 1e9) return `${(num / 1e9).toFixed(2)}B`;
|
|
if (num >= 1e6) return `${(num / 1e6).toFixed(2)}M`;
|
|
return num.toString();
|
|
}
|
|
}
|