Sha256: e82a0c3a0f38ccba0fe17e8fdaae1ef1c62094e869474a3b78ea7453d1735539

Contents?: true

Size: 657 Bytes

Versions: 2

Compression:

Stored size: 657 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

2 entries across 2 versions & 2 rubygems

Version Path
decidim-comments-0.0.6 app/frontend/application/icon.component.jsx
decidim-0.0.6 decidim-comments/app/frontend/application/icon.component.jsx