UNPKG

monday-ui-react-core

Version:

Official monday.com UI resources for application development in React.js

29 lines (27 loc) 796 B
import React, { forwardRef } from "react"; import "./FontIcon.scss"; import classNames from "classnames"; const FontIcon = forwardRef( ( { className, onClick, "aria-label": iconLabel, tabIndex, icon, role = "img", "aria-hidden": ariaHidden }, iconRef ) => { const isIconFunction = typeof icon === "function"; const iconClassName = isIconFunction ? "" : icon; return ( // eslint-disable-next-line jsx-a11y/click-events-have-key-events <span aria-hidden={ariaHidden} className={classNames(className, "fa", iconClassName)} onClick={onClick} ref={iconRef} aria-label={iconLabel} tabIndex={tabIndex} role={role} > {isIconFunction && icon()} </span> ); } ); export default FontIcon;