This commit is contained in:
Mamalizz
2025-02-21 23:14:10 +03:30
63 changed files with 1464 additions and 364 deletions
@@ -7,7 +7,7 @@ import { API_ENDPOINTS, QUERY_KEYS } from "~/constants";
export type GetProductResponse = Product;
const useGetDoc = (id: string | number | undefined) => {
const useGetProduct = (id: string | number | undefined) => {
// state
@@ -22,8 +22,15 @@ const useGetDoc = (id: string | number | undefined) => {
return useQuery({
queryKey: [QUERY_KEYS.product, id],
queryFn: () => handleGetProduct(id)
queryFn: () => handleGetProduct(id),
select: (product) => {
const copyOfProduct = { ...product };
copyOfProduct.variants = copyOfProduct.variants.sort((a, b) => b.in_stock - a.in_stock);
return copyOfProduct;
}
});
};
export default useGetDoc;
export default useGetProduct;
@@ -5,7 +5,7 @@ import { API_ENDPOINTS, QUERY_KEYS } from "~/constants";
// types
export type GetProductsResponse = ApiPaginated<Product>;
export type GetProductsResponse = ApiPaginated<ProductListItem>;
export type GetProductsFilters = {
search?: string | undefined;
@@ -40,8 +40,8 @@ const useGetProducts = (params?: ComputedRef<GetProductsFilters>) => {
price_gte: params?.price_gte,
price_lte: params?.price_lte,
offset: Number(params?.page) * 9 - 9,
limit: 9,
},
limit: 9
}
}
);
@@ -51,7 +51,7 @@ const useGetProducts = (params?: ComputedRef<GetProductsFilters>) => {
return useQuery({
staleTime: 60 * 1000,
queryKey: [QUERY_KEYS.products, params],
queryFn: () => handleGetProducts(params?.value),
queryFn: () => handleGetProducts(params?.value)
});
};