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,gBAAiB,CAAA,EAAE,WAAa,EAAA,SAAA,EAAoB,EAAA;AAClE,EAAM,MAAA,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EAAA,MAAM,wBAAwB,MAAmB;AAE/C,IAAA,MAAM,gBAAmB,GAAA,OAAO,WAAgB,KAAA,UAAA,GAAa,aAAgB,GAAA,WAAA;AAE7E,IACE,uBAAA,GAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAU,kCACb,EAAA,QAAA,kBAAA,GAAA,CAAC,KAAI,EAAA,EAAA,uBAAA,EAAyB,EAAE,MAAA,EAAQ,gBAAiB,EAAA,EAAG,CAC9D,EAAA,CAAA;AAAA,GAEJ;AAEA,EAAO,OAAA,WAAA,KAAgB,EACrB,mBAAA,GAAA,CAAC,OAAQ,EAAA,EAAA,WAAA,EAAW,MAAC,OAAS,EAAA,qBAAA,EAC5B,QAAC,kBAAA,GAAA,CAAA,SAAA,EAAA,EAAU,SAAW,EAAA,EAAA,CAAG,WAAW,MAAO,CAAA,WAAW,CACpD,EAAA,QAAA,kBAAA,GAAA,CAAC,IAAK,EAAA,EAAA,IAAA,EAAK,eAAc,IAAK,EAAA,IAAA,EAAK,CACrC,EAAA,CAAA,EACF,CACE,GAAA,IAAA;AACN;AAEA,MAAM,SAAA,GAAY,CAAC,KAAyB,KAAA;AAC1C,EAAO,OAAA;AAAA,IACL,aAAa,GAAI,CAAA;AAAA,MACf,IAAM,EAAA;AAAA,QACJ,UAAY,EAAA,QAAA;AAAA,QACZ,QAAU,EAAA;AAAA,OACZ;AAAA,MAEA,YAAc,EAAA;AAAA,QACZ,OAAS,EAAA;AAAA;AACX,KACD;AAAA,GACH;AACF,CAAA;;;;"}