| |
| |
| |
| |
| |
| |
|
|
| import { forwardRef, createElement } from 'react'; |
| import defaultAttributes from './defaultAttributes.js'; |
| import { mergeClasses } from './shared/src/utils.js'; |
|
|
| const Icon = forwardRef( |
| ({ |
| color = "currentColor", |
| size = 24, |
| strokeWidth = 2, |
| absoluteStrokeWidth, |
| className = "", |
| children, |
| iconNode, |
| ...rest |
| }, ref) => { |
| return createElement( |
| "svg", |
| { |
| ref, |
| ...defaultAttributes, |
| width: size, |
| height: size, |
| stroke: color, |
| strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth, |
| className: mergeClasses("lucide", className), |
| ...rest |
| }, |
| [ |
| ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)), |
| ...Array.isArray(children) ? children : [children] |
| ] |
| ); |
| } |
| ); |
|
|
| export { Icon as default }; |
| |
|
|