<commit_before>import React from 'react';
import styled from 'styled-components';
import { NavLink } from 'react-router-dom';

import { link, linkHover } from 'common/styles/colors';
import { fastEaseQuad } from 'common/styles/animation';

const plainStyles = `
  text-decoration: none;
  color: inherit;
`;

const linkStyles = `
  transition: all ${fastEaseQuad};
  color: ${link};
  &:hover,
  &:focus {
    color: ${linkHover};
  }
`;

export const Anchor = styled.a`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;

export const ExternalAnchor = styled.a.attrs({
  target: '_blank',
  rel: 'external noopener noreferrer',
})`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;

export const RouterLink = styled(({ plainLink, colorHover, bgColor, bgColorHover, ...rest }) => <NavLink {...rest} />)`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;<commit_msg>fix: remove unwanted dom attr<commit_after>import React from 'react';
import styled, { css } from 'styled-components';
import { NavLink } from 'react-router-dom';

import { link, linkHover } from 'common/styles/colors';
import { fastEaseQuad } from 'common/styles/animation';

const plainStyles = css`
  text-decoration: none;
  color: inherit;
`;

const linkStyles = css`
  transition: all ${fastEaseQuad};
  color: ${link};
  &:hover,
  &:focus {
    color: ${linkHover};
  }
`;

export const Anchor = styled.a`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;

export const ExternalAnchor = styled.a.attrs({
  target: '_blank',
  rel: 'external noopener noreferrer',
})`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;

export const RouterLink = styled(({ plainLink, colorHover, bgColor, bgColorHover, isOffCanvas, ...rest }) => <NavLink {...rest} />)`
  ${({ plainLink }) => plainLink ? plainStyles : linkStyles}
  cursor: pointer;
`;
{'fraction_non_alphanumeric': 0.16091370558375634, 'fraction_numerical': 0.0, 'mean_word_length': 4.429752066115703, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6793989', 'n_tokens_mistral': 653, 'n_tokens_neox': 662, 'n_words': 170}