mirror of
https://github.com/apache/superset.git
synced 2026-05-07 17:04:58 +00:00
This is really just a mock up written in React to try different components. It could become scaffolding to build a prototype, or not.
53 lines
1.1 KiB
JavaScript
53 lines
1.1 KiB
JavaScript
import React from 'react';
|
|
import { OverlayTrigger, Tooltip } from 'react-bootstrap';
|
|
|
|
|
|
class Link extends React.Component {
|
|
render() {
|
|
let tooltip = (
|
|
<Tooltip id="tooltip">
|
|
{this.props.tooltip}
|
|
</Tooltip>
|
|
);
|
|
const link = (
|
|
<a
|
|
href={this.props.href}
|
|
onClick={this.props.onClick}
|
|
className={'Link ' + this.props.className}
|
|
>
|
|
{this.props.children}
|
|
</a>
|
|
);
|
|
if (this.props.tooltip) {
|
|
return (
|
|
<OverlayTrigger
|
|
overlay={tooltip}
|
|
placement={this.props.placement}
|
|
delayShow={300}
|
|
delayHide={150}
|
|
>
|
|
{link}
|
|
</OverlayTrigger>
|
|
);
|
|
}
|
|
return link;
|
|
}
|
|
}
|
|
Link.propTypes = {
|
|
className: React.PropTypes.string,
|
|
href: React.PropTypes.string,
|
|
onClick: React.PropTypes.func,
|
|
tooltip: React.PropTypes.string,
|
|
placement: React.PropTypes.string,
|
|
children: React.PropTypes.object,
|
|
};
|
|
Link.defaultProps = {
|
|
disabled: false,
|
|
href: '#',
|
|
tooltip: null,
|
|
placement: 'top',
|
|
onClick: () => {},
|
|
};
|
|
|
|
export default Link;
|