diff --git a/src/app/api/brandsApi.js b/src/app/api/brandsApi.js
index 1ab6866..3e7ebd2 100644
--- a/src/app/api/brandsApi.js
+++ b/src/app/api/brandsApi.js
@@ -7,7 +7,7 @@ export const brandsApi = baseApi.injectEndpoints({
const queryParams = new URLSearchParams();
if (params.type) queryParams.append("type", params.type);
if (params.page) queryParams.append("page", params.page);
- if (params.limit) queryParams.append("limit", params.limit);
+ if (params.perPage) queryParams.append("perPage", params.perPage);
const queryString = queryParams.toString();
return `/brands${queryString ? `?${queryString}` : ""}`;
},
@@ -25,10 +25,10 @@ export const brandsApi = baseApi.injectEndpoints({
return `/brands/${params}/products`;
}
- const { id, page = 1, limit = 24, sorting, min_price, max_price } = params;
+ const { id, page = 1, perPage = 12, sorting, min_price, max_price } = params;
const urlParams = new URLSearchParams();
urlParams.append("page", page);
- urlParams.append("limit", limit);
+ urlParams.append("perPage", perPage);
if (sorting) urlParams.append("sorting", sorting);
if (min_price) urlParams.append("min_price", min_price);
if (max_price) urlParams.append("max_price", max_price);
diff --git a/src/app/api/categories.js b/src/app/api/categories.js
index 4cc07ba..74c4c51 100644
--- a/src/app/api/categories.js
+++ b/src/app/api/categories.js
@@ -7,10 +7,10 @@ export const categoriesApi = baseApi.injectEndpoints({
}),
getCategoryProducts: builder.query({
- query: ({ categoryId, page = 1, limit = 24, brands, min_price, max_price, sorting }) => {
+ query: ({ categoryId, page = 1, perPage = 12, brands, min_price, max_price, sorting }) => {
const params = new URLSearchParams();
params.append("page", page);
- params.append("limit", limit);
+ params.append("perPage", perPage);
if (brands) params.append("brands", brands);
if (min_price) params.append("min_price", min_price);
if (max_price) params.append("max_price", max_price);
@@ -41,7 +41,7 @@ export const categoriesApi = baseApi.injectEndpoints({
getAllCategoryProductsPaginated: builder.query({
async queryFn(
- { category, page = 1, limit = 24, brands, min_price, max_price, sorting },
+ { category, page = 1, perPage = 12, brands, min_price, max_price, sorting },
_queryApi,
_extraOptions,
baseQuery
@@ -58,7 +58,7 @@ export const categoriesApi = baseApi.injectEndpoints({
if (categoryIds.length === 1) {
const params = new URLSearchParams();
params.append("page", page);
- params.append("limit", limit);
+ params.append("perPage", perPage);
if (brands) params.append("brands", brands);
if (min_price) params.append("min_price", min_price);
if (max_price) params.append("max_price", max_price);
@@ -86,7 +86,7 @@ export const categoriesApi = baseApi.injectEndpoints({
const requests = categoryIds.map((categoryId) => {
const params = new URLSearchParams();
params.append("page", page);
- params.append("limit", limit);
+ params.append("perPage", perPage);
if (brands) params.append("brands", brands);
if (min_price) params.append("min_price", min_price);
if (max_price) params.append("max_price", max_price);
diff --git a/src/app/api/channelsApi.js b/src/app/api/channelsApi.js
index b05ff41..2d9e519 100644
--- a/src/app/api/channelsApi.js
+++ b/src/app/api/channelsApi.js
@@ -8,14 +8,14 @@ export const channelsApi = baseApi.injectEndpoints({
const {
channelId,
page = 1,
- limit = 24,
+ perPage = 24,
min_price,
max_price,
sorting,
} = params;
const urlParams = new URLSearchParams();
urlParams.append("page", page);
- urlParams.append("limit", limit);
+ urlParams.append("perPage", perPage);
if (min_price) urlParams.append("min_price", min_price);
if (max_price) urlParams.append("max_price", max_price);
if (sorting) urlParams.append("sorting", sorting);
@@ -31,7 +31,7 @@ export const channelsApi = baseApi.injectEndpoints({
query: (params = {}) => {
const queryParams = new URLSearchParams();
if (params.page) queryParams.append("page", params.page);
- if (params.limit) queryParams.append("limit", params.limit);
+ if (params.perPage) queryParams.append("perPage", params.perPage);
if (params.search) queryParams.append("search", params.search);
const queryString = queryParams.toString();
return `/channels${queryString ? `?${queryString}` : ""}`;
diff --git a/src/app/api/collectionsApi.js b/src/app/api/collectionsApi.js
index 9019aab..8f0f1e3 100644
--- a/src/app/api/collectionsApi.js
+++ b/src/app/api/collectionsApi.js
@@ -19,17 +19,17 @@ export const collectionsApi = baseApi.injectEndpoints({
}),
checkCollectionHasProducts: builder.query({
- query: (collectionId) => `/collections/${collectionId}/products?limit=1`,
+ query: (collectionId) => `/collections/${collectionId}/products`,
transformResponse: (response) => ({
hasProducts: response.data && response.data.length > 0,
}),
}),
getCollectionProductsPaginated: builder.query({
- query: ({ collectionId, page = 1, limit = 24, brands, min_price, max_price, sorting }) => {
+ query: ({ collectionId, page = 1, perPage = 24, brands, min_price, max_price, sorting }) => {
const params = new URLSearchParams();
params.append("page", page);
- params.append("limit", limit);
+ params.append("perPage", perPage);
if (brands) params.append("brands", brands);
if (min_price) params.append("min_price", min_price);
if (max_price) params.append("max_price", max_price);
diff --git a/src/components/Checkout/index.jsx b/src/components/Checkout/index.jsx
index bff0206..dcd733f 100644
--- a/src/components/Checkout/index.jsx
+++ b/src/components/Checkout/index.jsx
@@ -174,11 +174,11 @@ const Checkout = ({
}
>
{payment.name}
-
+ {/*
{payment.name === "Nagt"
? t("checkout.payment_in_cash_upon_delivery_of_the_order")
: t("checkout.payment_by_card")}
-
+ */}
))}
diff --git a/src/components/Footer/index.jsx b/src/components/Footer/index.jsx
index fe2c143..2e5fd2b 100644
--- a/src/components/Footer/index.jsx
+++ b/src/components/Footer/index.jsx
@@ -94,7 +94,6 @@ const Footer = () => {
/>
-
diff --git a/src/components/HomeBrands/HomeBrands.module.scss b/src/components/HomeBrands/HomeBrands.module.scss
index 71c05e9..146a8aa 100644
--- a/src/components/HomeBrands/HomeBrands.module.scss
+++ b/src/components/HomeBrands/HomeBrands.module.scss
@@ -7,23 +7,15 @@
}
}
-.brandsScroll {
- display: flex;
- gap: 12px;
- overflow-x: auto;
+.brandsSwiper {
padding-bottom: 8px;
-
- /* Hide scrollbar for Webkit */
- &::-webkit-scrollbar {
- display: none;
- }
- /* Hide scrollbar for Firefox, IE, Edge */
- -ms-overflow-style: none;
- scrollbar-width: none;
+}
+
+.brandSlide {
+ width: auto;
}
.brandCard {
- flex: 0 0 auto;
width: 122px;
height: 50px;
background: #ffffff;
@@ -56,37 +48,8 @@
height: 100%;
}
-.allButton {
- flex: 0 0 auto;
- width: 122px;
- height: 67.6px;
- background: #ffffff;
- border: 1px solid #e5e7eb;
- border-radius: 8px;
- display: flex;
- align-items: center;
- justify-content: center;
- cursor: pointer;
- transition: all 0.2s ease;
- gap: 4px;
- color: #111827;
- font-weight: 600;
- font-size: 14px;
-
- &:hover {
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
- transform: translateY(-1px);
- color: #aaaaaa;
- }
-
- svg {
- font-size: 16px;
- }
-}
-
@media screen and (max-width: 768px) {
- .brandCard, .allButton {
+ .brandCard {
width: 100px;
- // height: 79.2px;
}
}
diff --git a/src/components/HomeBrands/index.jsx b/src/components/HomeBrands/index.jsx
index b7ff7d2..427a9d5 100644
--- a/src/components/HomeBrands/index.jsx
+++ b/src/components/HomeBrands/index.jsx
@@ -1,77 +1,67 @@
-import React, { useMemo } from 'react';
+import React from 'react';
import { useNavigate } from 'react-router-dom';
-import { useTranslation } from 'react-i18next';
import { useGetBrandsQuery } from '../../app/api/brandsApi';
+import { Swiper, SwiperSlide } from 'swiper/react';
+import { Autoplay } from 'swiper/modules';
+import 'swiper/css';
import styles from './HomeBrands.module.scss';
import { Logo } from '../Icons';
-import { IoIosArrowForward } from 'react-icons/io';
const HomeBrands = () => {
- const { t, i18n } = useTranslation();
const navigate = useNavigate();
- // We fetch a larger amount so we have enough to shuffle.
- const { data: brandsData, isLoading } = useGetBrandsQuery({ limit: 50 });
-
- const randomBrands = useMemo(() => {
- if (!brandsData) return [];
- // Create a shallow copy and shuffle it
- const shuffled = [...brandsData].sort(() => 0.5 - Math.random());
- // Pick the first 9 brands
- return shuffled.slice(0, 8);
- }, [brandsData]);
+ // Fetch brands.
+ const { data: brandsData, isLoading } = useGetBrandsQuery({ limit: 100 });
if (isLoading || !brandsData || brandsData.length === 0) return null;
- // "Еще" in ru, "Hemmesi" in tm, "More" in en
- const getMoreText = () => {
- const lang = i18n.language;
- if (lang === 'ru') return 'Еще';
- if (lang === 'en') return 'More';
- return 'Hemmesi';
- };
-
return (
- {t("category.total")}: {totalItems} {t("category.items")} -
++ {t("category.total")}: {totalItems} {t("category.items")} +
+ > + )}