@carbon/icons-react
Version:
React components for icons in digital and software products using the Carbon Design System
79 lines (73 loc) • 2.65 kB
JavaScript
/**
* Copyright IBM Corp. 2016, 2023
*
* This source code is licensed under the Apache-2.0 license found in the
* LICENSE file in the root directory of this source tree.
*
* Code generated by @carbon/icon-build-helpers. DO NOT EDIT.
*/
;
var iconHelpers = require('@carbon/icon-helpers');
var PropTypes = require('prop-types');
var React = require('react');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
/**
* Copyright IBM Corp. 2019, 2023
*
* This source code is licensed under the Apache-2.0 license found in the
* LICENSE file in the root directory of this source tree.
*/
const Icon = /*#__PURE__*/React__default["default"].forwardRef(function Icon({
className,
children,
tabIndex,
xmlns = 'http://www.w3.org/2000/svg',
preserveAspectRatio = 'xMidYMid meet',
...rest
}, ref) {
const {
tabindex,
...attrs
} = iconHelpers.getAttributes({
...rest,
tabindex: tabIndex
});
const props = attrs;
if (className) {
props.className = className;
}
if (tabindex !== undefined && tabindex !== null) {
if (typeof tabindex === 'number') {
props.tabIndex = tabindex;
} else {
props.tabIndex = Number(tabIndex);
}
}
if (ref) {
props.ref = ref;
}
if (xmlns) {
props.xmlns = xmlns;
}
if (preserveAspectRatio) {
props.preserveAspectRatio = preserveAspectRatio;
}
return /*#__PURE__*/React__default["default"].createElement('svg', props, children);
});
Icon.displayName = 'Icon';
Icon.propTypes = {
'aria-hidden': PropTypes__default["default"].oneOfType([PropTypes__default["default"].bool, PropTypes__default["default"].oneOf(['true', 'false'])]),
'aria-label': PropTypes__default["default"].string,
'aria-labelledby': PropTypes__default["default"].string,
children: PropTypes__default["default"].node,
className: PropTypes__default["default"].string,
height: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
preserveAspectRatio: PropTypes__default["default"].string,
tabIndex: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
viewBox: PropTypes__default["default"].string,
width: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
xmlns: PropTypes__default["default"].string
};
module.exports = Icon;