thinkful-ui
Version:
Shared UI resources for Thinkful.
39 lines (33 loc) • 930 B
JavaScript
;
var cx = require('classnames');
var PropTypes = require('prop-types');
var React = require('react');
var Icon = require('../Icon');
var NavLink = function NavLink(_ref, _ref2) {
var active = _ref.active,
className = _ref.className,
displayName = _ref.displayName,
external = _ref.external,
icon = _ref.icon,
url = _ref.url;
var user = _ref2.user;
return /*#__PURE__*/React.createElement("a", {
className: cx('tui-app-nav-link', className, {
active: active
}),
href: url,
target: external ? '_blank' : '_self'
}, displayName && /*#__PURE__*/React.createElement("span", {
className: "tui-app-nav-text"
}, displayName));
};
NavLink.contextTypes = {
user: PropTypes.object
};
NavLink.propTypes = {
active: PropTypes.bool,
displayName: PropTypes.string,
icon: PropTypes.string,
url: PropTypes.string.isRequired
};
module.exports = NavLink;