1 | import React from 'react';
|
2 | import { PropTypes } from 'prop-types';
|
3 | import { Button } from 'reactstrap';
|
4 | import Icon from '@availity/icon';
|
5 |
|
6 | const btnStyles = { fontSize: '1.4em', padding: '.2em .4em' };
|
7 |
|
8 | const FeedbackButton = ({
|
9 | onClick,
|
10 | icon,
|
11 | active,
|
12 | children,
|
13 | iconSize,
|
14 | ...rest
|
15 | }) => (
|
16 | <Button
|
17 | style={btnStyles}
|
18 | color={active === icon ? 'primary' : 'light'}
|
19 | onClick={() => onClick(icon)}
|
20 | {...rest}
|
21 | >
|
22 | <Icon data-testid="feedback-icon" name={icon} size={iconSize} />
|
23 | <span className="sr-only">{children}</span>
|
24 | </Button>
|
25 | );
|
26 |
|
27 | FeedbackButton.propTypes = {
|
28 | onClick: PropTypes.func,
|
29 | icon: PropTypes.string,
|
30 | active: PropTypes.string,
|
31 | children: PropTypes.node,
|
32 | iconSize: PropTypes.string,
|
33 | };
|
34 |
|
35 | FeedbackButton.defaultProps = {
|
36 | iconSize: '',
|
37 | };
|
38 |
|
39 | export default FeedbackButton;
|