UNPKG

@carbon/icons-react

Version:

React components for icons in digital and software products using the Carbon Design System

74 lines (70 loc) 1.98 kB
/** * 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. */ 'use strict'; var iconHelpers = require('@carbon/icon-helpers'); var PropTypes = require('prop-types'); var React = require('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.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.createElement('svg', props, children); }); Icon.displayName = 'Icon'; Icon.propTypes = { 'aria-hidden': PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['true', 'false'])]), 'aria-label': PropTypes.string, 'aria-labelledby': PropTypes.string, children: PropTypes.node, className: PropTypes.string, height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), preserveAspectRatio: PropTypes.string, tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), viewBox: PropTypes.string, width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), xmlns: PropTypes.string }; module.exports = Icon;