Files
superset2/superset/assets/javascripts/components/InfoTooltipWithTrigger.jsx
Maxime Beauchemin 16141ecb94 [explore] improve metric(s) and groupby(s) controls (#2921)
* [explore] improve metric(s) and groupby(s) controls

- surface verbose_name, description & expression in controls
- [table viz] surface verbose name in table header

* Fixing tests

* Addressing comments

* Fixing tests (once more)
2017-06-09 11:29:55 -07:00

29 lines
787 B
JavaScript

import React from 'react';
import PropTypes from 'prop-types';
import { Tooltip, OverlayTrigger } from 'react-bootstrap';
import { slugify } from '../modules/utils';
const propTypes = {
label: PropTypes.string.isRequired,
tooltip: PropTypes.string.isRequired,
icon: PropTypes.string,
className: PropTypes.string,
};
const defaultProps = {
icon: 'question-circle-o',
};
export default function InfoTooltipWithTrigger({ label, tooltip, icon, className }) {
return (
<OverlayTrigger
placement="right"
overlay={<Tooltip id={`${slugify(label)}-tooltip`}>{tooltip}</Tooltip>}
>
<i className={`fa fa-${icon} ${className}`} />
</OverlayTrigger>
);
}
InfoTooltipWithTrigger.propTypes = propTypes;
InfoTooltipWithTrigger.defaultProps = defaultProps;