react-font-style
Version:
React font style editor
27 lines (24 loc) • 780 B
JavaScript
import React, {Component} from 'react';
import cx from 'classnames';
import Button from './Button';
import ButtonWrap from './ButtonWrap';
import styles from './IconButton.css';
export default class IconButton extends Component {
render() {
let {props} = this;
let {className, iconName, iconClassName, label, children, isActive, ...otherProps} = props;
const buttonClassName = cx(className, {
[styles.root]: true,
[styles.isActive]: isActive,
});
const iconClass = cx(iconClassName, {[styles['icon-' + iconName]]: iconName});
return (
<ButtonWrap>
<Button {...otherProps} title={label} className={buttonClassName}>
<span className={iconClass} />
</Button>
{children}
</ButtonWrap>
);
}
}