Youtube music and video downloader

Result.jsx 1.0KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import React, { PropTypes } from 'react';
  2. import Video from './Video';
  3. _ = lodash;
  4. const iconsClasses = {
  5. view: "eye",
  6. like: "thumbs-o-up",
  7. dislike: "thumbs-o-down",
  8. comment: "comments-o",
  9. favorite: "star-o"
  10. };
  11. const Result = ({ click, result }) =>
  12. <a className="result-link" onClick={click}>
  13. <img src={result.thumb.url} alt="thumbnail" className="result-thumb"
  14. height={result.thumb.height / 2} width={result.thumb.width / 2}/>
  15. <div className="result-info">
  16. <div className="result-head" title={result.title}>
  17. <div className="result-title">{result.title}</div>
  18. <div className="result-duration">{result.duration}</div>
  19. </div>
  20. <div className="result-stats">
  21. { _.map(result.stats, (e, k) =>
  22. <div key={k} className={`result-${k.slice(0, -5)}s`} title={e}>
  23. <i className={`fa fa-${iconsClasses[k.slice(0, -5)]}`}/> {e}
  24. </div>
  25. ) }
  26. </div>
  27. </div>
  28. </a>;
  29. Result.propTypes = {
  30. result: PropTypes.instanceOf(Video).isRequired,
  31. click: PropTypes.func
  32. };
  33. export default Result;