fixed some cart style

This commit is contained in:
Jelaletdin12
2025-12-24 13:25:21 +05:00
parent 9d95438ab2
commit a143c2e18b
3 changed files with 50 additions and 5 deletions

37
src/app/api/useCart.js Normal file
View File

@@ -0,0 +1,37 @@
// hooks/useCart.js - YENİ DOSYA
import { useMemo } from 'react';
import { useGetCartQuery } from './cartApi';
export const useCart = () => {
const { data: cartData, ...rest } = useGetCartQuery(undefined, {
pollingInterval: 0,
refetchOnMountOrArgChange: false,
refetchOnFocus: false,
refetchOnReconnect: false,
});
const cartItems = useMemo(() => {
if (!cartData?.data || typeof cartData.data !== 'object') return [];
return Object.values(cartData.data).flat();
}, [cartData]);
const cartCount = useMemo(() => {
return cartItems.reduce((total, item) => {
return total + (parseInt(item.product_quantity, 10) || 0);
}, 0);
}, [cartItems]);
const getCartItem = (productId) => {
return cartItems.find(
item => item.product?.id === productId || item.product_id === productId
);
};
return {
cartData,
cartItems,
cartCount,
getCartItem,
...rest
};
};