Youtube music and video downloader

Result.jsx 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import React, {Component, PropTypes} from 'react';
  2. import Video from './Video';
  3. export default class Result extends Component {
  4. render() {
  5. return (
  6. <a className="result-link" onClick={this.props.click}>
  7. <img src={this.props.result.thumb.url} alt="thumbnail" className="result-thumb"
  8. height={this.props.result.thumb.height / 2}
  9. width={this.props.result.thumb.width / 2}/>
  10. <div className="result-info">
  11. <div className="result-head" title={this.props.result.title}>
  12. <div className="result-title">{this.props.result.title}</div>
  13. <div className="result-duration">{this.props.result.duration}</div>
  14. </div>
  15. <div className="result-stats">
  16. <div className="result-views" title={this.props.result.stats.viewCount}>
  17. <i className="fa fa-eye"/> {this.props.result.stats.viewCount}
  18. </div>
  19. <div className="result-likes" title={this.props.result.stats.likeCount}>
  20. <i className="fa fa-thumbs-o-up"/> {this.props.result.stats.likeCount}
  21. </div>
  22. <div className="result-dislikes" title={this.props.result.stats.dislikeCount}>
  23. <i className="fa fa-thumbs-o-down"/> {this.props.result.stats.dislikeCount}
  24. </div>
  25. <div className="result-comments" title={this.props.result.stats.commentCount}>
  26. <i className="fa fa-comments-o"/> {this.props.result.stats.commentCount}
  27. </div>
  28. <div className="result-favorites" title={this.props.result.stats.favoriteCount}>
  29. <i className="fa fa-star-o"/> {this.props.result.stats.favoriteCount}
  30. </div>
  31. </div>
  32. </div>
  33. </a>
  34. );
  35. }
  36. }
  37. Result.propTypes = {
  38. result: PropTypes.instanceOf(Video).isRequired,
  39. click: PropTypes.func
  40. };