mirror of
https://github.com/grafana/grafana.git
synced 2024-11-25 18:30:41 -06:00
Merge pull request #3230 from utkarshcmu/time-units
Added currency units, time units, tests
This commit is contained in:
commit
0f867a3484
@ -341,6 +341,8 @@ function($, _) {
|
||||
// Currencies
|
||||
kbn.valueFormats.currencyUSD = kbn.formatBuilders.currency('$');
|
||||
kbn.valueFormats.currencyGBP = kbn.formatBuilders.currency('£');
|
||||
kbn.valueFormats.currencyEUR = kbn.formatBuilders.currency('€');
|
||||
kbn.valueFormats.currencyJPY = kbn.formatBuilders.currency('¥');
|
||||
|
||||
// Data
|
||||
kbn.valueFormats.bits = kbn.formatBuilders.binarySIPrefix('b');
|
||||
@ -430,7 +432,7 @@ function($, _) {
|
||||
kbn.valueFormats.s = function(size, decimals, scaledDecimals) {
|
||||
if (size === null) { return ""; }
|
||||
|
||||
if (Math.abs(size) < 600) {
|
||||
if (Math.abs(size) < 60) {
|
||||
return kbn.toFixed(size, decimals) + " s";
|
||||
}
|
||||
// Less than 1 hour, devide in minutes
|
||||
@ -487,6 +489,57 @@ function($, _) {
|
||||
}
|
||||
};
|
||||
|
||||
kbn.valueFormats.m = function(size, decimals, scaledDecimals) {
|
||||
if (size === null) { return ""; }
|
||||
|
||||
if (Math.abs(size) < 60) {
|
||||
return kbn.toFixed(size, decimals) + " min";
|
||||
}
|
||||
else if (Math.abs(size) < 1440) {
|
||||
return kbn.toFixedScaled(size / 60, decimals, scaledDecimals, 2, " hour");
|
||||
}
|
||||
else if (Math.abs(size) < 10080) {
|
||||
return kbn.toFixedScaled(size / 1440, decimals, scaledDecimals, 3, " day");
|
||||
}
|
||||
else if (Math.abs(size) < 604800) {
|
||||
return kbn.toFixedScaled(size / 10080, decimals, scaledDecimals, 4, " week");
|
||||
}
|
||||
else {
|
||||
return kbn.toFixedScaled(size / 5.25948e5, decimals, scaledDecimals, 5, " year");
|
||||
}
|
||||
};
|
||||
|
||||
kbn.valueFormats.h = function(size, decimals, scaledDecimals) {
|
||||
if (size === null) { return ""; }
|
||||
|
||||
if (Math.abs(size) < 24) {
|
||||
return kbn.toFixed(size, decimals) + " hour";
|
||||
}
|
||||
else if (Math.abs(size) < 168) {
|
||||
return kbn.toFixedScaled(size / 24, decimals, scaledDecimals, 2, " day");
|
||||
}
|
||||
else if (Math.abs(size) < 8760) {
|
||||
return kbn.toFixedScaled(size / 168, decimals, scaledDecimals, 3, " week");
|
||||
}
|
||||
else {
|
||||
return kbn.toFixedScaled(size / 8760, decimals, scaledDecimals, 4, " year");
|
||||
}
|
||||
};
|
||||
|
||||
kbn.valueFormats.d = function(size, decimals, scaledDecimals) {
|
||||
if (size === null) { return ""; }
|
||||
|
||||
if (Math.abs(size) < 7) {
|
||||
return kbn.toFixed(size, decimals) + " day";
|
||||
}
|
||||
else if (Math.abs(size) < 365) {
|
||||
return kbn.toFixedScaled(size / 7, decimals, scaledDecimals, 2, " week");
|
||||
}
|
||||
else {
|
||||
return kbn.toFixedScaled(size / 365, decimals, scaledDecimals, 3, " year");
|
||||
}
|
||||
};
|
||||
|
||||
///// FORMAT MENU /////
|
||||
|
||||
kbn.getUnitFormats = function() {
|
||||
@ -508,6 +561,8 @@ function($, _) {
|
||||
submenu: [
|
||||
{text: 'Dollars ($)', value: 'currencyUSD'},
|
||||
{text: 'Pounds (£)', value: 'currencyGBP'},
|
||||
{text: 'Euro (€)', value: 'currencyEUR'},
|
||||
{text: 'Yen (¥)', value: 'currencyJPY'},
|
||||
]
|
||||
},
|
||||
{
|
||||
@ -518,6 +573,9 @@ function($, _) {
|
||||
{text: 'microseconds (µs)', value: 'µs' },
|
||||
{text: 'milliseconds (ms)', value: 'ms' },
|
||||
{text: 'seconds (s)', value: 's' },
|
||||
{text: 'minutes (m)', value: 'm' },
|
||||
{text: 'hours (h)', value: 'h' },
|
||||
{text: 'days (d)', value: 'd' },
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -68,6 +68,27 @@ define([
|
||||
describeValueFormat('wps', 789000000, 1000000, -1, '789M wps');
|
||||
describeValueFormat('iops', 11000000000, 1000000000, -1, '11B iops');
|
||||
|
||||
describeValueFormat('s', 24, 1, 0, '24 s');
|
||||
describeValueFormat('s', 246, 1, 0, '4.1 min');
|
||||
describeValueFormat('s', 24567, 100, 0, '6.82 hour');
|
||||
describeValueFormat('s', 24567890, 10000, 0, '40.62 week');
|
||||
describeValueFormat('s', 24567890000, 1000000, 0, '778.53 year');
|
||||
|
||||
describeValueFormat('m', 24, 1, 0, '24 min');
|
||||
describeValueFormat('m', 246, 10, 0, '4.1 hour');
|
||||
describeValueFormat('m', 6545, 10, 0, '4.55 day');
|
||||
describeValueFormat('m', 24567, 100, 0, '2.44 week');
|
||||
describeValueFormat('m', 24567892, 10000, 0, '46.7 year');
|
||||
|
||||
describeValueFormat('h', 21, 1, 0, '21 hour');
|
||||
describeValueFormat('h', 145, 1, 0, '6.04 day');
|
||||
describeValueFormat('h', 1234, 100, 0, '7.3 week');
|
||||
describeValueFormat('h', 9458, 1000, 0, '1.08 year');
|
||||
|
||||
describeValueFormat('d', 3, 1, 0, '3 day');
|
||||
describeValueFormat('d', 245, 100, 0, '35 week');
|
||||
describeValueFormat('d', 2456, 10, 0, '6.73 year');
|
||||
|
||||
describe('kbn.toFixed and negative decimals', function() {
|
||||
it('should treat as zero decimals', function() {
|
||||
var str = kbn.toFixed(186.123, -2);
|
||||
|
Loading…
Reference in New Issue
Block a user