|
@@ -8,6 +8,8 @@ function($, _) {
|
|
|
var kbn = {};
|
|
var kbn = {};
|
|
|
kbn.valueFormats = {};
|
|
kbn.valueFormats = {};
|
|
|
|
|
|
|
|
|
|
+ ///// HELPER FUNCTIONS /////
|
|
|
|
|
+
|
|
|
kbn.round_interval = function(interval) {
|
|
kbn.round_interval = function(interval) {
|
|
|
switch (true) {
|
|
switch (true) {
|
|
|
// 0.5s
|
|
// 0.5s
|
|
@@ -170,6 +172,33 @@ function($, _) {
|
|
|
].join(';') + '"></div>';
|
|
].join(';') + '"></div>';
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+ kbn.slugifyForUrl = function(str) {
|
|
|
|
|
+ return str
|
|
|
|
|
+ .toLowerCase()
|
|
|
|
|
+ .replace(/[^\w ]+/g,'')
|
|
|
|
|
+ .replace(/ +/g,'-');
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ kbn.exportSeriesListToCsv = function(seriesList) {
|
|
|
|
|
+ var text = 'Series;Time;Value\n';
|
|
|
|
|
+ _.each(seriesList, function(series) {
|
|
|
|
|
+ _.each(series.datapoints, function(dp) {
|
|
|
|
|
+ text += series.alias + ';' + new Date(dp[1]).toISOString() + ';' + dp[0] + '\n';
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ var blob = new Blob([text], { type: "text/csv;charset=utf-8" });
|
|
|
|
|
+ window.saveAs(blob, 'grafana_data_export.csv');
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ kbn.stringToJsRegex = function(str) {
|
|
|
|
|
+ if (str[0] !== '/') {
|
|
|
|
|
+ return new RegExp(str);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ var match = str.match(new RegExp('^/(.*?)/(g?i?m?y?)$'));
|
|
|
|
|
+ return new RegExp(match[1], match[2]);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
kbn.valueFormats.percent = function(size, decimals) {
|
|
kbn.valueFormats.percent = function(size, decimals) {
|
|
|
return kbn.toFixed(size, decimals) + '%';
|
|
return kbn.toFixed(size, decimals) + '%';
|
|
|
};
|
|
};
|
|
@@ -354,32 +383,7 @@ function($, _) {
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
- kbn.slugifyForUrl = function(str) {
|
|
|
|
|
- return str
|
|
|
|
|
- .toLowerCase()
|
|
|
|
|
- .replace(/[^\w ]+/g,'')
|
|
|
|
|
- .replace(/ +/g,'-');
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
- kbn.exportSeriesListToCsv = function(seriesList) {
|
|
|
|
|
- var text = 'Series;Time;Value\n';
|
|
|
|
|
- _.each(seriesList, function(series) {
|
|
|
|
|
- _.each(series.datapoints, function(dp) {
|
|
|
|
|
- text += series.alias + ';' + new Date(dp[1]).toISOString() + ';' + dp[0] + '\n';
|
|
|
|
|
- });
|
|
|
|
|
- });
|
|
|
|
|
- var blob = new Blob([text], { type: "text/csv;charset=utf-8" });
|
|
|
|
|
- window.saveAs(blob, 'grafana_data_export.csv');
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
- kbn.stringToJsRegex = function(str) {
|
|
|
|
|
- if (str[0] !== '/') {
|
|
|
|
|
- return new RegExp(str);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- var match = str.match(new RegExp('^/(.*?)/(g?i?m?y?)$'));
|
|
|
|
|
- return new RegExp(match[1], match[2]);
|
|
|
|
|
- };
|
|
|
|
|
|
|
+ ///// FORMAT MENU /////
|
|
|
|
|
|
|
|
kbn.getUnitFormats = function() {
|
|
kbn.getUnitFormats = function() {
|
|
|
return [
|
|
return [
|