UNPKG

@mskcc/carbon-react

Version:

Carbon react components for the MSKCC DSM

52 lines (48 loc) 1.75 kB
/** * MSKCC 2021, 2024 */ import { extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js'; import React__default from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import { Icon } from '../../Icon/MskIcon.js'; var _Icon; function HeaderName(_ref) { let { as: LinkComponent = 'a', linkProps = {}, logoSrc, children, className } = _ref; const fallbackImg = 'https://cdn.jsdelivr.net/npm/@mskcc/fundamentals@latest/dist/logo/assets/logo-arrow-sans-medium-navy.svg'; const containerClassName = cx('msk-header-product', className); const defaultProps = typeof LinkComponent === 'string' && LinkComponent === 'a' ? { href: '/' } : {}; return /*#__PURE__*/React__default.createElement("div", { className: containerClassName }, /*#__PURE__*/React__default.createElement(LinkComponent, _extends({}, defaultProps, linkProps, { className: cx('msk-header-product-link', linkProps.className) }), /*#__PURE__*/React__default.createElement("span", { className: "msk-header--product-logo-container" }, logoSrc ? /*#__PURE__*/React__default.createElement("img", { alt: "msk header", className: "msk-header-product-logo", src: logoSrc || fallbackImg }) : _Icon || (_Icon = /*#__PURE__*/React__default.createElement(Icon, { icon: "msk", className: "msk-header--product-logo" }))), /*#__PURE__*/React__default.createElement("span", { className: "msk-header-product-name" }, children))); } HeaderName.displayName = 'HeaderName'; HeaderName.propTypes = { as: PropTypes.elementType, children: PropTypes.node, className: PropTypes.string, linkProps: PropTypes.object, logoSrc: PropTypes.string }; export { HeaderName };