text: // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
  
  import React, { Component, PropTypes } from 'react';
  import classnames from 'classnames';
  import CSSClassnames from '../../../utils/CSSClassnames';
  import Intl from '../../../utils/Intl';
  import Props from '../../../utils/Props';
  
  const CLASS_ROOT = CSSClassnames.CONTROL_ICON;
  const COLOR_INDEX = CSSClassnames.COLOR_INDEX;
  
  export default class Icon extends Component {
    render () {
      const { className, colorIndex } = this.props;
      let { a11yTitle, size, responsive } = this.props;
      let { intl } = this.context;
  
      const classes = classnames(
        CLASS_ROOT,
        `${CLASS_ROOT}-alarm`,
        className,
        {
          [`${CLASS_ROOT}--${size}`]: size,
          [`${CLASS_ROOT}--responsive`]: responsive,
          [`${COLOR_INDEX}-${colorIndex}`]: colorIndex
        }
      );
  
      a11yTitle = a11yTitle || Intl.getMessage(intl, 'alarm');
  
      const restProps = Props.omit(this.props, Object.keys(Icon.propTypes));
      return <svg {...restProps} version="1.1" viewBox="0 0 24 24" width="24px" height="24px" role="img" className={classes} aria-label={a11yTitle}><path fill="none" stroke="#000000" strokeWidth="2" d="M21,13 C21,17.971 16.971,22 12,22 C7.029,22 3,17.971 3,13 C3,8.029 7.029,4 12,4 C16.971,4 21,8.029 21,13 L21,13 Z M5.5,19.5 L2,23 L5.5,19.5 Z M18.5,19.5 L22,23 L18.5,19.5 Z M9,4 C8.29078014,2.90780142 6.88179669,2 5,2 C2.90070922,2 1,3.90070922 1,6 C1,7.88179669 1.90780142,9.29078014 3,10 M21,10 C22.0921986,9.29078014 23,7.88179669 23,6 C23,3.90070922 21.0992908,2 19,2 C17.1182033,2 15.7092199,2.90780142 15,4 M12,8 L12,13 L15,16"/></svg>;
    }
  };
  
  Icon.contextTypes = {
    intl: PropTypes.object
  };
  
  Icon.defaultProps = {
    responsive: true
  };
  
  Icon.displayName = 'Alarm';
  
  Icon.icon = true;
  
  Icon.propTypes = {
    a11yTitle: PropTypes.string,
    colorIndex: PropTypes.string,
    size: PropTypes.oneOf(['small', 'medium', 'large', 'xlarge', 'huge']),
    responsive: PropTypes.bool
  };
  
  