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