21 lines
569 B
TypeScript

import { createAsyncThunk } from '@reduxjs/toolkit';
import { getProductsApi, GetProductsResponse } from '@api';
export const getProductsByCategoryThunk = createAsyncThunk<
GetProductsResponse,
string | undefined,
{ rejectValue: string }
>(
'search/getProductsByCategory',
async (categoryId, { rejectWithValue }) => {
try {
const response = await getProductsApi(categoryId);
return response;
} catch (error: any) {
return rejectWithValue(
error?.response?.data?.message || 'Failed to fetch products',
);
}
},
);