All files / components/Link StyledLink.js

100% Statements 4/4
100% Branches 0/0
100% Functions 1/1
100% Lines 4/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39          13x         13x                             3x                   13x      
import styled, { css } from 'styled-components';
import { string } from 'prop-types';
import { getTextSizingStyle } from '../Typography/Text/textSelectors';
import { getLinkTypeStyle, getLinkCommonStyle } from './linkSelectors';
 
const propTypes = {
  sizing: string.isRequired,
  linktype: string.isRequired,
};
 
const StyledLink = styled.a`
  background-color: transparent;
  border: none;
  overflow: visible;
  display: inline-block;
  vertical-align: middle;
  outline: none;
  cursor: pointer;
  text-decoration: none;
  font-family: inherit;
  margin-bottom: 0;
  &:hover {
    outline: none;
    text-decoration: underline;
  }
  ${({ theme, sizing, linktype }) => css`
    ${getLinkCommonStyle(theme)}
    ${getTextSizingStyle(theme, sizing)}
    ${getLinkTypeStyle(theme, linktype, 'normal')}
    &:hover {
      ${getLinkTypeStyle(theme, linktype, 'hover')}
    }
  `}
`;
 
StyledLink.propTypes = propTypes;
 
export default StyledLink;