Sha256: 97a41896604779abe1c32774a0572422b4232b611083d7a403ce68081b7a2f17

Contents?: true

Size: 659 Bytes

Versions: 7

Compression:

Stored size: 659 Bytes

Contents

import { PropTypes } from 'react';

import assetUrl      from '../support/asset_url';

const Icon = ({ name, iconExtraClassName }) => {
  if (navigator.userAgent.match(/PhantomJS/)) {
    return <span className={`icon ${iconExtraClassName} ${name}`}>{name}</span>;
  }

  return (
    <svg className={`icon ${iconExtraClassName} ${name}`}>
      <use xmlnsXlink="http://www.w3.org/1999/xlink" xlinkHref={`${assetUrl('icons.svg')}#${name}`} />
    </svg>  
  );
};

Icon.defaultProps = {
  iconExtraClassName: 'icon--before'
};

Icon.propTypes = {
  name: PropTypes.string.isRequired,
  iconExtraClassName: PropTypes.string.isRequired
};

export default Icon;

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
decidim-comments-0.0.5 app/frontend/application/icon.component.jsx
decidim-0.0.5 decidim-comments/app/frontend/application/icon.component.jsx
decidim-0.0.4 decidim-comments/app/frontend/application/icon.component.jsx
decidim-comments-0.0.3 app/frontend/application/icon.component.jsx
decidim-0.0.3 decidim-comments/app/frontend/application/icon.component.jsx
decidim-comments-0.0.2 app/frontend/application/icon.component.jsx
decidim-0.0.2 decidim-comments/app/frontend/application/icon.component.jsx