You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
4.9 KiB

  1. import React from 'react'
  2. import Link from 'next/link'
  3. import * as Icon from 'react-feather'
  4. import { useSelector } from 'react-redux'
  5. import AddToCartBtn from '@/components/Shop/AddToCartBtn'
  6. import NumberFormat from 'react-number-format';
  7. const ProductCard = function ({ ygp, yamalube, helmet, apparel, accessories, backend, ...props }) {
  8. const products = useSelector((state) => state.products)
  9. console.log(ygp)
  10. const Product = ygp.map((data) => {
  11. return (
  12. <div className="col-lg-3 col-md-6 col-sm-6" key={ygp.id}>
  13. <div className="single-products">
  14. <div className="products-image">
  15. <img src={`${backend}${data.img["url"]}`} />
  16. <ul>
  17. <li>
  18. <a href="#">
  19. <Icon.Search />
  20. </a>
  21. </li>
  22. <li>
  23. <a href="#">
  24. <Icon.Heart />
  25. </a>
  26. </li>
  27. <li>
  28. <Link href="/products/[id]" as={`/products/${ygp.id}`}>
  29. <a>
  30. <Icon.Link />
  31. </a>
  32. </Link>
  33. </li>
  34. </ul>
  35. </div>
  36. <div className="products-content">
  37. <h3>
  38. <Link href={"/yamaha/Product/Motor_Detail?s="+data.id}>
  39. <a>{data.name}</a>
  40. </Link>
  41. </h3>
  42. <span><NumberFormat value={data.price2} displayType={'text'} thousandSeparator={true} prefix={'Rp.'} /></span>
  43. <ul>
  44. <li><i className="flaticon-star-1"></i></li>
  45. <li><i className="flaticon-star-1"></i></li>
  46. <li><i className="flaticon-star-1"></i></li>
  47. <li><i className="flaticon-star-1"></i></li>
  48. <li><i className="flaticon-star-1"></i></li>
  49. </ul>
  50. <AddToCartBtn {...ygp} />
  51. </div>
  52. </div>
  53. </div>
  54. );
  55. })
  56. return (
  57. <div className="shop-area ptb-80">
  58. <div className="container">
  59. <div className="woocommerce-topbar">
  60. <div className="row align-items-center">
  61. <div className="col-lg-9 col-md-7 col-sm-7">
  62. <div className="woocommerce-result-count">
  63. <p>Showing 1-8 of 14 results</p>
  64. </div>
  65. </div>
  66. <div className="col-lg-3 col-md-5 col-sm-5">
  67. <div className="woocommerce-topbar-ordering">
  68. <select className="form-select">
  69. <option value="1">Sort by Popularity</option>
  70. <option value="2">Sort by Average Rating</option>
  71. <option value="3">Sort by Latest</option>
  72. <option value="4">Sort by price: Low to High</option>
  73. <option value="5">Sort by price: High to Low</option>
  74. <option value="6">Sort by New</option>
  75. </select>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. <div className="row justify-content-md-center">
  81. {Product}
  82. {/* Pagination */}
  83. <div className="col-lg-12 col-md-12 col-sm-12">
  84. <div className="pagination-area">
  85. <nav aria-label="Page navigation">
  86. <ul className="pagination justify-content-center">
  87. <li className="page-item"><a className="page-link" href="#">Prev</a></li>
  88. <li className="page-item active"><a className="page-link" href="#">1</a></li>
  89. <li className="page-item"><a className="page-link" href="#">2</a></li>
  90. <li className="page-item"><a className="page-link" href="#">3</a></li>
  91. <li className="page-item"><a className="page-link" href="#">Next</a></li>
  92. </ul>
  93. </nav>
  94. </div>
  95. </div>
  96. </div>
  97. </div>
  98. </div>
  99. )
  100. }
  101. export default ProductCard;