@grafana/ui
Version:
Grafana Components Library
58 lines (53 loc) • 1.69 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var jsxRuntime = require('react/jsx-runtime');
var data = require('@grafana/data');
var i18n = require('@grafana/i18n');
var Badge = require('../Badge/Badge.cjs');
;
const FeatureBadge = ({ featureState, tooltip }) => {
const display = getPanelStateBadgeDisplayModel(featureState);
return /* @__PURE__ */ jsxRuntime.jsx(Badge.Badge, { text: display.text, color: display.color, icon: display.icon, tooltip });
};
function getPanelStateBadgeDisplayModel(featureState) {
switch (featureState) {
case data.FeatureState.alpha:
return {
text: "Alpha",
icon: "exclamation-triangle",
color: "orange"
};
case data.FeatureState.beta:
return {
text: "Beta",
icon: "rocket",
color: "blue"
};
case data.FeatureState.experimental:
return {
text: i18n.t("grafana-ui.feature-badge.experimental", "Experimental"),
icon: "exclamation-triangle",
color: "orange"
};
case data.FeatureState.preview:
return {
text: i18n.t("grafana-ui.feature-badge.preview", "Preview"),
icon: "rocket",
color: "blue"
};
case data.FeatureState.privatePreview:
return {
text: i18n.t("grafana-ui.feature-badge.private-preview", "Private preview"),
icon: "rocket",
color: "blue"
};
case data.FeatureState.new:
return {
text: i18n.t("grafana-ui.feature-badge.new", "New!"),
icon: "rocket",
color: "blue"
};
}
}
exports.FeatureBadge = FeatureBadge;
//# sourceMappingURL=FeatureBadge.cjs.map