Projects.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { connect } from "react-redux";
  2. import { Link } from "react-router-dom";
  3. const Projects = ({ snippets }) => {
  4. return snippets ? (
  5. <div>
  6. <div style={{ margin: 10 }}>
  7. <div>
  8. <Link to='/cabinet'>
  9. <button className='btn_search'>Back to Cabinet</button>
  10. </Link>
  11. </div>
  12. <div>
  13. <Link to='/work'>
  14. <button className='btn_search' style={{ marginTop: 5 }}>
  15. New project
  16. </button>
  17. </Link>
  18. </div>
  19. </div>
  20. <br />
  21. <div className='snippet_block'>
  22. {snippets?.map((key, index) => (
  23. <div className='snippet'>
  24. <img src={`${process.env.PUBLIC_URL}/img/code.png`} alt='code'></img>
  25. <div className='block_content'>
  26. <p>{`Name: ${snippets?.[index]?.title}` || "Project without name"}</p>
  27. <p>{`Description: ${snippets?.[index]?.description}` || ""}</p>
  28. <div className='btn_center'>
  29. <Link to={"/project/" + snippets?.[index]?._id}>
  30. <button className='btn_search'>Open project</button>
  31. </Link>
  32. </div>
  33. </div>
  34. </div>
  35. ))}
  36. </div>
  37. </div>
  38. ) : (
  39. <div>
  40. <Link to='/'>
  41. <button className='btn_search'>Back to Main Page</button>
  42. </Link>{" "}
  43. <br /> <br />
  44. <div>
  45. <span style={{ margin: 10, fontSize: 20 }}>Loading...</span>
  46. </div>
  47. </div>
  48. );
  49. };
  50. const CProjects = connect(state => ({
  51. snippets: state?.p?.findSnippet?.payload?.data?.SnippetFind,
  52. }))(Projects);
  53. export default CProjects;