{"version":3,"file":"FeatureBadge.cjs","sources":["../../../../src/components/FeatureBadge/FeatureBadge.tsx"],"sourcesContent":["import { FeatureState } from '@grafana/data';\nimport { t } from '@grafana/i18n';\n\nimport { Badge, BadgeProps } from '../Badge/Badge';\n\nexport interface FeatureBadgeProps {\n  featureState: FeatureState;\n  tooltip?: string;\n}\n\n/**\n * A component for displaying information about different release stages of features, in accordance with the guidelines provided at [Grafana's Release Life Cycle](https://grafana.com/docs/release-life-cycle).\n *\n * https://developers.grafana.com/ui/latest/index.html?path=/docs/information-featurebadge--docs\n */\nexport const FeatureBadge = ({ featureState, tooltip }: FeatureBadgeProps) => {\n  const display = getPanelStateBadgeDisplayModel(featureState);\n  return <Badge text={display.text} color={display.color} icon={display.icon} tooltip={tooltip} />;\n};\n\nfunction getPanelStateBadgeDisplayModel(featureState: FeatureState): BadgeProps {\n  switch (featureState) {\n    case FeatureState.alpha:\n      return {\n        text: 'Alpha',\n        icon: 'exclamation-triangle',\n        color: 'orange',\n      };\n\n    case FeatureState.beta:\n      return {\n        text: 'Beta',\n        icon: 'rocket',\n        color: 'blue',\n      };\n\n    case FeatureState.experimental:\n      return {\n        text: t('grafana-ui.feature-badge.experimental', 'Experimental'),\n        icon: 'exclamation-triangle',\n        color: 'orange',\n      };\n\n    case FeatureState.preview:\n      return {\n        text: t('grafana-ui.feature-badge.preview', 'Preview'),\n        icon: 'rocket',\n        color: 'blue',\n      };\n\n    case FeatureState.privatePreview:\n      return {\n        text: t('grafana-ui.feature-badge.private-preview', 'Private preview'),\n        icon: 'rocket',\n        color: 'blue',\n      };\n\n    case FeatureState.new:\n      return {\n        text: t('grafana-ui.feature-badge.new', 'New!'),\n        icon: 'rocket',\n        color: 'blue',\n      };\n  }\n}\n"],"names":["jsx","Badge","FeatureState","t"],"mappings":";;;;;;;;;;AAeO,MAAM,YAAA,GAAe,CAAC,EAAE,YAAA,EAAc,SAAQ,KAAyB;AAC5E,EAAA,MAAM,OAAA,GAAU,+BAA+B,YAAY,CAAA;AAC3D,EAAA,uBAAOA,cAAA,CAACC,WAAA,EAAA,EAAM,IAAA,EAAM,OAAA,CAAQ,IAAA,EAAM,KAAA,EAAO,OAAA,CAAQ,KAAA,EAAO,IAAA,EAAM,OAAA,CAAQ,IAAA,EAAM,OAAA,EAAkB,CAAA;AAChG;AAEA,SAAS,+BAA+B,YAAA,EAAwC;AAC9E,EAAA,QAAQ,YAAA;AAAc,IACpB,KAAKC,iBAAA,CAAa,KAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAM,OAAA;AAAA,QACN,IAAA,EAAM,sBAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,IAEF,KAAKA,iBAAA,CAAa,IAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAM,MAAA;AAAA,QACN,IAAA,EAAM,QAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,IAEF,KAAKA,iBAAA,CAAa,YAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAMC,MAAA,CAAE,uCAAA,EAAyC,cAAc,CAAA;AAAA,QAC/D,IAAA,EAAM,sBAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,IAEF,KAAKD,iBAAA,CAAa,OAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAMC,MAAA,CAAE,kCAAA,EAAoC,SAAS,CAAA;AAAA,QACrD,IAAA,EAAM,QAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,IAEF,KAAKD,iBAAA,CAAa,cAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAMC,MAAA,CAAE,0CAAA,EAA4C,iBAAiB,CAAA;AAAA,QACrE,IAAA,EAAM,QAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,IAEF,KAAKD,iBAAA,CAAa,GAAA;AAChB,MAAA,OAAO;AAAA,QACL,IAAA,EAAMC,MAAA,CAAE,8BAAA,EAAgC,MAAM,CAAA;AAAA,QAC9C,IAAA,EAAM,QAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA;AAEN;;;;"}