UNPKG

@navinc/base-react-components

Version:
52 lines 1.81 kB
import styled from 'styled-components'; import propTypes from 'prop-types'; const variants = { xl: { fontFamily: 'postgrotesk, Averta, Helvetica, sans-serif', fontSize: '32px', lineHeight: '38px', htmlElement: 'h1', }, lg: { fontFamily: 'postgrotesk, Averta, Helvetica, sans-serif', fontSize: '24px', lineHeight: '30px', htmlElement: 'h2', }, md: { fontFamily: 'postgrotesk, Averta, Helvetica, sans-serif', fontSize: '20px', lineHeight: '30px', htmlElement: 'h3', }, sm: { fontFamily: 'postgrotesk, Roboto, Helvetica, sans-serif', fontSize: '18px', lineHeight: '28px', htmlElement: 'h4', }, }; export const Header = styled.h1.attrs(({ size }) => { var _a; return ({ as: (_a = variants[size]) === null || _a === void 0 ? void 0 : _a.htmlElement, }); }) ` font-family: ${({ size }) => { var _a, _b; return (_b = (_a = variants[size]) === null || _a === void 0 ? void 0 : _a.fontFamily) !== null && _b !== void 0 ? _b : variants.md.fontFamily; }}; margin-top: 0; margin-bottom: 0; padding: 0; color: ${({ theme }) => theme.neutral500}; font-size: ${({ size }) => { var _a, _b; return (_b = (_a = variants[size]) === null || _a === void 0 ? void 0 : _a.fontSize) !== null && _b !== void 0 ? _b : variants.md.fontSize; }}; line-height: ${({ size }) => { var _a, _b; return (_b = (_a = variants[size]) === null || _a === void 0 ? void 0 : _a.lineHeight) !== null && _b !== void 0 ? _b : variants.md.lineHeight; }}; font-weight: bold; `; Header.displayName = 'Header'; Header.propTypes = { size: propTypes.string, }; Header.defaultProps = { size: 'md', }; export default Header; //# sourceMappingURL=header.js.map