@shopify/shop-minis-react
Version:
React component library for Shopify Shop Minis with Tailwind CSS v4 support (source-only, requires TypeScript)
41 lines (35 loc) • 973 B
text/typescript
import {useShopActionInfiniteQuery} from '../../internal/reactQuery'
import {useShopActions} from '../../internal/useShopActions'
import {
PaginatedDataHookOptionsBase,
PaginatedDataHookReturnsBase,
ProductReview,
} from '../../types'
export interface UseProductReviewsParams extends PaginatedDataHookOptionsBase {
/**
* The product ID to fetch reviews for.
*/
id: string
}
interface UseProductReviewsReturns extends PaginatedDataHookReturnsBase {
/**
* The product reviews returned from the query.
*/
reviews: ProductReview[] | null
}
export const useProductReviews = (
params: UseProductReviewsParams
): UseProductReviewsReturns => {
const {getProductReviews} = useShopActions()
const {id, skip = false, ...restParams} = params
const {data, ...rest} = useShopActionInfiniteQuery(
['productReviews', id, restParams],
getProductReviews,
{id, ...restParams},
{skip}
)
return {
...rest,
reviews: data,
}
}