All files / components customButtons.js

100% Statements 7/7
100% Branches 2/2
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31        20x   20x         4x 2x   2x 2x     4x                        
import React, { Component } from 'react';
 
export class CustomButtons extends Component {
  render() {
        const {buttons, row} = this.props;
 
        return (
            <React.Fragment>
                {buttons.map((button, i) => {
                    let innerButton;
 
                    if (button.renderer) {
                        innerButton = button.renderer(row.id);
                    } else {
                        const { type: iconType, name: iconName } = button.icon;
                        innerButton = <span className={`${iconType} ${iconType}-${iconName}`} onClick={button.handler(row.id)} > {button.title} </span>;
                    }
 
                    return (
                        <li className="list-inline-item" key={`${row.id}-${i}`}>
                            {innerButton}
                        </li>
                    );
                })}
            </React.Fragment>
        );
    }
}
 
export default CustomButtons;