All files / components deletionModal.js

0% Statements 0/10
0% Branches 0/8
0% Functions 0/3
0% Lines 0/10

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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56                                                                                                               
import React, { Component } from 'react';
import { Modal, Button } from 'react-bootstrap';
 
class DeletionModal extends Component {
 
    constructor(props) {
        super(props);
 
        this.deleteHandler = this.deleteHandler.bind(this);
 
        this.state = {
            isDeleting: false,
        };
    }
 
    deleteHandler() {
        return this.setState({
            isDeleting: true,
        }, () => {
            return this.props.deleteHandler().then(() => {
                this.setState({
                    isDeleting: false,
                });
            });
        })
    }
 
    render() {
        return (
            <Modal onHide={this.props.closeHandler} >
                <Modal.Header>
                    <Modal.Title>Confirmation</Modal.Title>
                </Modal.Header>
                <Modal.Body>
                    <p>
                        Do you want to delete the selected row with id: {this.props.idToDelete}?
                    </p>
                </Modal.Body>
                <Modal.Footer>
                    {this.state.isDeleting &&
                    <span className="icon-spinner"></span>
                    }
                    {!this.state.isDeleting &&
                    <Button onClick={this.props.closeHandler} id="modalCancel">No</Button>
                    }
                    {!this.state.isDeleting &&
                    <Button onClick={this.deleteHandler} bsStyle="defaultBlue" id="modalConfirm">Yes</Button>
                    }
                </Modal.Footer>
            </Modal>
        );
    }
}
 
export default DeletionModal;