1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
8 |
|
9 | var _templateObject = _taggedTemplateLiteral(['\n display: inline-block;\n position: relative;\n user-select: none;\n color: ', ';\n width: ', ';\n height: ', ';\n'], ['\n display: inline-block;\n position: relative;\n user-select: none;\n color: ', ';\n width: ', ';\n height: ', ';\n']),
|
10 | _templateObject2 = _taggedTemplateLiteral(['\n display: block;\n height: 100%;\n visibility: hidden;\n'], ['\n display: block;\n height: 100%;\n visibility: hidden;\n']),
|
11 | _templateObject3 = _taggedTemplateLiteral(['\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n fill: currentColor;\n'], ['\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n fill: currentColor;\n']);
|
12 |
|
13 | var _styledComponents = require('styled-components');
|
14 |
|
15 | var _styledComponents2 = _interopRequireDefault(_styledComponents);
|
16 |
|
17 | var _react = require('react');
|
18 |
|
19 | var _react2 = _interopRequireDefault(_react);
|
20 |
|
21 | var _isInteger = require('lodash/isInteger');
|
22 |
|
23 | var _isInteger2 = _interopRequireDefault(_isInteger);
|
24 |
|
25 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
26 |
|
27 | function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
|
28 |
|
29 | function _taggedTemplateLiteral(strings, raw) { return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
30 |
|
31 | var Container = _styledComponents2.default.div(_templateObject, function (props) {
|
32 | return props.color || 'currentColor';
|
33 | }, function (props) {
|
34 | return props.width ? (0, _isInteger2.default)(props.width) ? props.width + 'px' : props.width : 'auto';
|
35 | }, function (props) {
|
36 | return props.height ? (0, _isInteger2.default)(props.height) ? props.height + 'px' : props.height : 'auto';
|
37 | });
|
38 |
|
39 | var Canvas = _styledComponents2.default.canvas(_templateObject2);
|
40 |
|
41 | var Icon = _styledComponents2.default.svg(_templateObject3);
|
42 |
|
43 | var IconBase = function IconBase(_ref) {
|
44 | var children = _ref.children,
|
45 | title = _ref.title,
|
46 | viewBox = _ref.viewBox,
|
47 | width = _ref.width,
|
48 | height = _ref.height,
|
49 | color = _ref.color,
|
50 | props = _objectWithoutProperties(_ref, ['children', 'title', 'viewBox', 'width', 'height', 'color']);
|
51 |
|
52 | var fragments = viewBox.split(' ');
|
53 |
|
54 | return _react2.default.createElement(
|
55 | Container,
|
56 | _extends({
|
57 | className: 'icon',
|
58 | role: 'img',
|
59 | 'aria-label': title,
|
60 | color: color,
|
61 | width: width,
|
62 | height: height
|
63 | }, props),
|
64 | _react2.default.createElement(Canvas, { width: fragments[2], height: fragments[3] }),
|
65 | _react2.default.createElement(
|
66 | Icon,
|
67 | { viewBox: viewBox },
|
68 | children
|
69 | )
|
70 | );
|
71 | };
|
72 |
|
73 | IconBase.propTypes = {
|
74 | color: _react.PropTypes.string,
|
75 | title: _react.PropTypes.string,
|
76 | width: _react.PropTypes.oneOfType([_react.PropTypes.string, _react.PropTypes.number]),
|
77 | height: _react.PropTypes.oneOfType([_react.PropTypes.string, _react.PropTypes.number]),
|
78 | children: _react.PropTypes.node.isRequired,
|
79 | viewBox: _react.PropTypes.string.isRequired
|
80 | };
|
81 |
|
82 | exports.default = IconBase; |
\ | No newline at end of file |