UNPKG

@shopify/shop-minis-react

Version:

React component library for Shopify Shop Minis with Tailwind CSS v4 support (source-only, requires TypeScript)

39 lines (31 loc) 936 B
import {useMemo} from 'react' import {useShopActions} from '../../internal/useShopActions' import {useShopActionsDataFetching} from '../../internal/useShopActionsDataFetching' import {DataHookOptionsBase, DataHookReturnsBase, Product} from '../../types' export interface UseProductsParams extends DataHookOptionsBase { /** * The product IDs to fetch. */ ids: string[] } interface UseProductsReturns extends DataHookReturnsBase { /** * The products returned from the query. */ products: Product[] | null } export const useProducts = (params: UseProductsParams): UseProductsReturns => { const {getProducts} = useShopActions() const {skip = false, ...restParams} = params const {data, ...rest} = useShopActionsDataFetching(getProducts, restParams, { skip, hook: 'useProducts', }) const products = useMemo(() => { return data ?? null }, [data]) return { ...rest, products, } }