UNPKG

@grafana/ui

Version:
1 lines 2.41 kB
{"version":3,"file":"PanelDescription.mjs","sources":["../../../../src/components/PanelChrome/PanelDescription.tsx"],"sourcesContent":["import { css, cx } from '@emotion/css';\n\nimport { GrafanaTheme2 } from '@grafana/data';\n\nimport { useStyles2 } from '../../themes/ThemeContext';\nimport { Icon } from '../Icon/Icon';\nimport { Tooltip } from '../Tooltip/Tooltip';\n\nimport { TitleItem } from './TitleItem';\n\ninterface Props {\n description: string | (() => string);\n className?: string;\n}\n\nexport function PanelDescription({ description, className }: Props) {\n const styles = useStyles2(getStyles);\n\n const getDescriptionContent = (): JSX.Element => {\n // description\n const panelDescription = typeof description === 'function' ? description() : description;\n\n return (\n <div className=\"panel-info-content markdown-html\">\n <div dangerouslySetInnerHTML={{ __html: panelDescription }} />\n </div>\n );\n };\n\n return description !== '' ? (\n <Tooltip interactive content={getDescriptionContent}>\n <TitleItem className={cx(className, styles.description)}>\n <Icon name=\"info-circle\" size=\"md\" />\n </TitleItem>\n </Tooltip>\n ) : null;\n}\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n description: css({\n code: {\n whiteSpace: 'normal',\n wordWrap: 'break-word',\n },\n\n 'pre > code': {\n display: 'block',\n },\n }),\n };\n};\n"],"names":[],"mappings":";;;;;;;;AAeO,SAAS,gBAAA,CAAiB,EAAE,WAAA,EAAa,SAAA,EAAU,EAAU;AAClE,EAAA,MAAM,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EAAA,MAAM,wBAAwB,MAAmB;AAE/C,IAAA,MAAM,gBAAA,GAAmB,OAAO,WAAA,KAAgB,UAAA,GAAa,aAAY,GAAI,WAAA;AAE7E,IAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EACb,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,uBAAA,EAAyB,EAAE,MAAA,EAAQ,gBAAA,EAAiB,EAAG,CAAA,EAC9D,CAAA;AAAA,EAEJ,CAAA;AAEA,EAAA,OAAO,WAAA,KAAgB,EAAA,mBACrB,GAAA,CAAC,OAAA,EAAA,EAAQ,WAAA,EAAW,MAAC,OAAA,EAAS,qBAAA,EAC5B,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAW,EAAA,CAAG,WAAW,MAAA,CAAO,WAAW,CAAA,EACpD,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,IAAA,EAAK,eAAc,IAAA,EAAK,IAAA,EAAK,CAAA,EACrC,CAAA,EACF,CAAA,GACE,IAAA;AACN;AAEA,MAAM,SAAA,GAAY,CAAC,KAAA,KAAyB;AAC1C,EAAA,OAAO;AAAA,IACL,aAAa,GAAA,CAAI;AAAA,MACf,IAAA,EAAM;AAAA,QACJ,UAAA,EAAY,QAAA;AAAA,QACZ,QAAA,EAAU;AAAA,OACZ;AAAA,MAEA,YAAA,EAAc;AAAA,QACZ,OAAA,EAAS;AAAA;AACX,KACD;AAAA,GACH;AACF,CAAA;;;;"}