Spaces:
Sleeping
Sleeping
| import React from 'react'; | |
| import './FilePreview.css'; | |
| function FilePreview({ file, onRemove }) { | |
| const formatFileSize = (bytes) => { | |
| if (bytes === 0) return '0 Bytes'; | |
| const k = 1024; | |
| const sizes = ['Bytes', 'KB', 'MB', 'GB']; | |
| const i = Math.floor(Math.log(bytes) / Math.log(k)); | |
| return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i]; | |
| }; | |
| return ( | |
| <div className="file-preview"> | |
| <div className="file-info"> | |
| <span className="file-name">{file.name}</span> | |
| <span className="file-size">{formatFileSize(file.size)}</span> | |
| </div> | |
| <button className="remove-file" onClick={onRemove}> | |
| × | |
| </button> | |
| </div> | |
| ); | |
| } | |
| export default FilePreview; |