All files / nexshop-web-contents/src/component/contents/floating-view floating-view.js

100% Statements 6/6
100% Branches 6/6
100% Functions 2/2
100% Lines 6/6
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 421x 1x       14x 14x                         20x                                     1x      
import React, {Component} from 'react';
import PropTypes from 'prop-types';
 
export default class FloatingView extends Component {
    render() {
        let {files, onClose} = this.props;
        return (
            <div className="floating">
                <div className="floating-header">
                    <div className="floating-header__text">
                        Uploading {files.length} item{files.length > 1 ? 's' : ''}
                    </div>
                    <div className="floating-close" onClick={onClose}>
                        <div className="floating-close__icon"/>
                    </div>
                </div>
                <div className="floating-body">
                    {
                        files.map((file) => (
                            <div key={file.name} className="floating-file">
                                <div>
                                    {
                                        file.type.indexOf('image') > -1 ?
                                            <div className="floating-file__icon-image"/> :
                                            <div className="floating-file__icon-video"/>
                                    }
                                    <div className="floating-file__name">{file.name}</div>
                                </div>
                                <div className={`floating-file__${file.status === 'done' ? 'done' : 'progress'}`}/>
                            </div>
                        ))
                    }
                </div>
            </div>
        );
    }
}
 
FloatingView.propTypes = {
    files: PropTypes.array.isRequired,
    onClose: PropTypes.func.isRequired,
};