Files
karma/assets/static/colors.js
Łukasz Mierzwa 0d55311a9d Replace @silenced & @inhibited filters with @status
Now that Alertmanager provides status=(unprocessed|suppressed|active) in the API it doesn't make sense to keep having separate filters for each value, merge @silenced & @inhibited into a single filter, update docs and UI
2017-05-05 13:56:48 +01:00

63 lines
1.8 KiB
JavaScript

/* exported Colors */
var Colors = (function() {
var colors,
staticColorLabels;
var specialLabels = {
"@status: unprocessed": "label-default",
"@status: active": "label-danger",
"@status: suppressed": "label-success",
};
var update = function(colorData) {
colors = colorData;
};
var getClass = function(key, value) {
var label = key + ": " + value;
if (key == "alertname") {
return "label-primary"; // special case for alertname label, which is the name of alert
} else if (specialLabels[label] !== undefined) {
return specialLabels[label];
} else if (Colors.IsStaticLabel(key)) {
return "label-info";
} else {
return "label-warning";
}
};
var getStyle = function(key, value) {
// get color data, returned as css style string
var style = "";
if (colors[key] !== undefined && colors[key][value] !== undefined) {
var c = colors[key][value];
style = "background-color: rgba(" + [c.background.red, c.background.green, c.background.blue, c.background.alpha].join(", ") + "); ";
style += "color: rgba(" + [c.font.red, c.font.green, c.font.blue, c.font.alpha].join(", ") + "); ";
}
return style;
};
var getStaticLabels = function() {
return $("#alerts").data("static-color-labels").split(" ");
};
var isStaticLabel = function(key) {
return ($.inArray(key, Colors.GetStaticLabels()) >= 0);
};
var init = function(staticColors) {
staticColorLabels = staticColors;
};
return {
Init: init,
Update: update,
Get: getStyle,
GetClass: getClass,
GetStaticLabels: getStaticLabels,
IsStaticLabel: isStaticLabel
};
})();