fix: error build server
This commit is contained in:
@@ -6,21 +6,22 @@ import { Suspense } from 'react'
|
|||||||
import PageLoading from '@/components/PageLoading'
|
import PageLoading from '@/components/PageLoading'
|
||||||
|
|
||||||
interface SingleProductPageProps {
|
interface SingleProductPageProps {
|
||||||
params: { id: string }
|
params: Promise<{ id: string }>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export default async function SingleProductPage({ params }: SingleProductPageProps) {
|
export default async function SingleProductPage({ params }: SingleProductPageProps) {
|
||||||
|
const { id } = await params
|
||||||
const queryClient = new QueryClient()
|
const queryClient = new QueryClient()
|
||||||
|
|
||||||
await queryClient.prefetchQuery(getProductQueryOptions(params.id))
|
await queryClient.prefetchQuery(getProductQueryOptions(id))
|
||||||
const dehydratedState = dehydrate(queryClient)
|
const dehydratedState = dehydrate(queryClient)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Layout>
|
<Layout>
|
||||||
<Suspense fallback={<PageLoading />}>
|
<Suspense fallback={<PageLoading />}>
|
||||||
<HydrationBoundary state={dehydratedState}>
|
<HydrationBoundary state={dehydratedState}>
|
||||||
<SingleProduct id={params.id} />
|
<SingleProduct id={id} />
|
||||||
</HydrationBoundary>
|
</HydrationBoundary>
|
||||||
</Suspense>
|
</Suspense>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export const useFiltersData = ({ categoryUrl }: UseFiltersDataProps) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Ref for debouncing price filter
|
// Ref for debouncing price filter
|
||||||
const priceFilterTimeoutRef = useRef<NodeJS.Timeout>();
|
const priceFilterTimeoutRef = useRef<NodeJS.Timeout | undefined>(undefined);
|
||||||
|
|
||||||
// Get filter parameters from URL
|
// Get filter parameters from URL
|
||||||
const filterParams = useMemo(
|
const filterParams = useMemo(
|
||||||
@@ -114,7 +114,7 @@ export const useFiltersData = ({ categoryUrl }: UseFiltersDataProps) => {
|
|||||||
const params = new URLSearchParams(searchParams.toString());
|
const params = new URLSearchParams(searchParams.toString());
|
||||||
|
|
||||||
Object.entries(updates).forEach(([key, value]) => {
|
Object.entries(updates).forEach(([key, value]) => {
|
||||||
if (value === null || value === "") {
|
if (value === null || value === "" || value === undefined) {
|
||||||
params.delete(key);
|
params.delete(key);
|
||||||
} else {
|
} else {
|
||||||
params.set(key, value);
|
params.set(key, value);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ export const useInfiniteProductsData = (
|
|||||||
return useInfiniteQuery<ProductsResponse>({
|
return useInfiniteQuery<ProductsResponse>({
|
||||||
queryKey: ["infinite-products", params],
|
queryKey: ["infinite-products", params],
|
||||||
queryFn: ({ pageParam = 1 }) =>
|
queryFn: ({ pageParam = 1 }) =>
|
||||||
api.getProducts({ ...params, page: pageParam }),
|
api.getProducts({ ...params, page: pageParam as number }),
|
||||||
getNextPageParam: (lastPage) => {
|
getNextPageParam: (lastPage) => {
|
||||||
const pager = lastPage.results.pager;
|
const pager = lastPage.results.pager;
|
||||||
return pager.nextPage ? pager.page + 1 : undefined;
|
return pager.nextPage ? pager.page + 1 : undefined;
|
||||||
@@ -40,7 +40,10 @@ export const useInfiniteCategoryProductsData = (
|
|||||||
return useInfiniteQuery<ProductsResponse>({
|
return useInfiniteQuery<ProductsResponse>({
|
||||||
queryKey: ["infinite-category-products", categoryUrl, params],
|
queryKey: ["infinite-category-products", categoryUrl, params],
|
||||||
queryFn: ({ pageParam = 1 }) =>
|
queryFn: ({ pageParam = 1 }) =>
|
||||||
api.getCategoryProducts(categoryUrl, { ...params, page: pageParam }),
|
api.getCategoryProducts(categoryUrl, {
|
||||||
|
...params,
|
||||||
|
page: pageParam as number,
|
||||||
|
}),
|
||||||
getNextPageParam: (lastPage) => {
|
getNextPageParam: (lastPage) => {
|
||||||
const pager = lastPage.results.pager;
|
const pager = lastPage.results.pager;
|
||||||
return pager.nextPage ? pager.page + 1 : undefined;
|
return pager.nextPage ? pager.page + 1 : undefined;
|
||||||
|
|||||||
Reference in New Issue
Block a user