Spaces:
Build error
Build error
import { forwardRef } from 'react' | |
import { generate } from './utils' | |
import type { AbstractNode } from './utils' | |
export type IconData = { | |
name: string | |
icon: AbstractNode | |
} | |
export type IconBaseProps = { | |
data: IconData | |
className?: string | |
onClick?: React.MouseEventHandler<SVGElement> | |
style?: React.CSSProperties | |
} | |
const IconBase = forwardRef<React.MutableRefObject<HTMLOrSVGElement>, IconBaseProps>((props, ref) => { | |
const { data, className, onClick, style, ...restProps } = props | |
return generate(data.icon, `svg-${data.name}`, { | |
className, | |
onClick, | |
style, | |
'data-icon': data.name, | |
'aria-hidden': 'true', | |
...restProps, | |
'ref': ref, | |
}) | |
}) | |
export default IconBase | |