@itwin/itwinui-react
Version:
A react component library for iTwinUI
49 lines (48 loc) • 1.3 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true,
});
Object.defineProperty(exports, 'Icon', {
enumerable: true,
get: function () {
return Icon;
},
});
const _interop_require_default = require('@swc/helpers/_/_interop_require_default');
const _interop_require_wildcard = require('@swc/helpers/_/_interop_require_wildcard');
const _react = /*#__PURE__*/ _interop_require_wildcard._(require('react'));
const _classnames = /*#__PURE__*/ _interop_require_default._(
require('classnames'),
);
const _Box = require('../../utils/components/Box.js');
const getSizeValue = (size) => {
switch (size) {
case 'small':
return 's';
case 'medium':
return 'm';
case 'large':
return 'l';
default:
return size;
}
};
const Icon = _react.forwardRef((props, ref) => {
let {
size = 'medium',
fill = 'default',
className,
padded = false,
...rest
} = props;
return _react.createElement(_Box.Box, {
as: 'span',
className: (0, _classnames.default)('iui-svg-icon', className),
'data-iui-icon-size': getSizeValue(size),
'data-iui-icon-color': fill,
'data-iui-padded': padded ? 'true' : void 0,
ref: ref,
...rest,
});
});
if ('development' === process.env.NODE_ENV) Icon.displayName = 'Icon';