import PropTypes from 'prop-types';
import React from 'react';
import Icon from '../icon';

export default function Globe({
  stroke,
  fill,
  strokeWidth,
  style: styleProp,
  ...rest // eslint-disable-line comma-dangle
}) {
  const style = {
    ...styleProp,
    ...Icon.defaultProps.style,
  };
  return (
    <svg style={style} {...rest}>
      <g stroke="none" strokeWidth={strokeWidth}>
        <g fillRule="nonzero" fill={fill}>
          <path
            d="M12.5,0.147058824 C5.66176471,0.147058824 0.147058824,5.66176471 0.147058824,12.5 C0.147058824,19.3382353 5.66176471,24.8529412 12.5,24.8529412 C19.3382353,
            24.8529412 24.8529412,19.3382353 24.8529412,12.5 C24.8529412,5.66176471 19.3382353,0.147058824 12.5,0.147058824 Z M23.4558824,11.8382353 L20,11.8382353 C19.8529412,
            9.19117647 19.0441176,6.98529412 18.0147059,5.22058824 C18.6029412,4.92647059 19.1911765,4.63235294 19.7794118,4.26470588 C21.8382353,6.17647059 23.2352941,
            8.82352941 23.4558824,11.8382353 Z M13.0882353,23.4558824 C13.0882353,23.4558824 13.0882353,23.4558824 13.0882353,23.4558824 L13.0882353,20 C14.1176471,
            20.0735294 15.0735294,20.2205882 16.1029412,20.5147059 C14.8529412,22.1323529 13.5294118,23.0882353 13.0882353,23.4558824 Z M17.2058824,20.8823529 C17.7205882,
            21.1029412 18.1617647,21.3235294 18.6029412,21.5441176 C17.5735294,22.2058824 16.4705882,22.7205882 15.2941176,23.0882353 C15.9558824,22.5 16.6176471,
            21.7647059 17.2058824,20.8823529 Z M8.89705882,20.4411765 C9.85294118,20.1470588 10.8823529,20 11.9117647,19.9264706 L11.9117647,23.3823529 C11.9117647,
            23.3823529 11.9117647,23.3823529 11.8382353,23.3823529 C11.3970588,23.0882353 10.1470588,22.1323529 8.89705882,20.4411765 Z M9.63235294,23.0882353 C8.45588235,
            22.7941176 7.35294118,22.2794118 6.32352941,21.5441176 C6.76470588,21.3235294 7.27941176,21.1029412 7.72058824,20.8823529 C8.38235294,21.7647059 9.04411765,
            22.5 9.63235294,23.0882353 Z M11.9117647,1.54411765 C11.9117647,1.54411765 11.9117647,1.54411765 11.9117647,1.54411765 L11.9852941,5.14705882 C10.8823529,
            5.14705882 9.85294118,5 8.82352941,4.63235294 C10.0735294,2.94117647 11.3970588,1.91176471 11.9117647,1.54411765 Z M7.64705882,4.26470588 C7.13235294,
            4.04411765 6.69117647,3.82352941 6.17647059,3.52941176 C7.20588235,2.79411765 8.38235294,2.27941176 9.63235294,1.91176471 C9.04411765,2.5 8.30882353,3.30882353 7.64705882,
            4.26470588 Z M16.1764706,4.63235294 C15.1470588,4.92647059 14.1176471,5.07352941 13.0882353,5.14705882 L13.0882353,1.54411765 C13.0882353,1.54411765 13.0882353,
            1.54411765 13.0882353,1.54411765 C13.5294118,1.91176471 14.9264706,2.94117647 16.1764706,4.63235294 Z M15.2941176,1.91176471 C16.5441176,2.27941176 17.7205882,
            2.79411765 18.75,3.52941176 C18.2352941,3.82352941 17.7941176,4.04411765 17.2794118,4.26470588 C16.6176471,3.30882353 15.9558824,2.5 15.2941176,1.91176471 Z M11.9117647,
            6.32352941 L11.9117647,11.8382353 L6.17647059,11.8382353 C6.32352941,9.33823529 7.13235294,7.27941176 8.16176471,5.66176471 C9.33823529,6.10294118 10.5882353,
            6.32352941 11.9117647,6.32352941 Z M11.9117647,13.0147059 L11.9117647,18.8235294 C10.6617647,18.8970588 9.41176471,19.1176471 8.23529412,19.4852941 C7.13235294,
            17.7941176 6.25,15.6617647 6.17647059,13.0147059 L11.9117647,13.0147059 Z M13.0882353,18.8235294 L13.0882353,13.0147059 L18.8235294,13.0147059 C18.75,
            15.6617647 17.7941176,17.7941176 16.7647059,19.4852941 C15.5882353,19.1176471 14.3382353,18.8970588 13.0882353,18.8235294 Z M13.0882353,11.8382353 L13.0882353,
            6.32352941 C14.4117647,6.25 15.6617647,6.02941176 16.8382353,5.66176471 C17.8676471,7.27941176 18.6764706,9.33823529 18.8235294,11.8382353 L13.0882353,
            11.8382353 Z M5.22058824,4.33823529 C5.80882353,4.70588235 6.39705882,5 6.98529412,5.22058824 C5.95588235,6.98529412 5.07352941,9.19117647 5,11.8382353 L1.54411765,
            11.8382353 C1.76470588,8.82352941 3.16176471,6.17647059 5.22058824,4.33823529 Z M1.54411765,13.0147059 L5,13.0147059 C5.07352941,15.8088235 6.02941176,
            18.1617647 7.13235294,19.9264706 C6.54411765,20.1470588 5.95588235,20.4411765 5.36764706,20.8088235 C3.16176471,18.8970588 1.69117647,16.1029412 1.54411765,
            13.0147059 Z M19.6323529,20.8088235 C19.0441176,20.4411765 18.4558824,20.1470588 17.8676471,19.9264706 C18.9705882,18.1617647 19.8529412,15.8088235 20,
            13.0147059 L23.4558824,13.0147059 C23.3088235,16.1029412 21.8382353,18.8970588 19.6323529,20.8088235 Z"
          />
        </g>
      </g>
    </svg>
  );
}

Globe.propTypes = {
  ...Icon.propTypes,
  stroke: PropTypes.string,
  fill: PropTypes.string,
  strokeWidth: PropTypes.number,
};

Globe.defaultProps = {
  ...Icon.defaultProps,
  width: 16,
  height: 16,
  viewBox: '0 0 26 26',
};
