ClientProductGallery | -Client | -search | -PLP | -- In the hook `useProductGalleryQuery()` from the `ProductListingPage` (`PLP`) and `Search` Pages. - | -- Products totalCount from [StorePageInfo](https://v1.faststore.dev/reference/api/objects#storepageinfo), and facets ([StoreFacet](https://v1.faststore.dev/reference/api/objects#storefacet)) from - [StoreSearchResult](https://v1.faststore.dev/reference/api/objects#storesearchresult). - | -- Frontend data from the `useSearch()` and `useLocalizedVariables()` - hooks, the latter uses `useSession()`. - | -
ServerCollectionPage | -Server | -collection | -PLP | -In the function `getStaticProps()` from `PLP`. | -- seo, breadcrumbList and meta data from the collection ([StoreCollection](https://v1.faststore.dev/reference/api/objects#storecollection)). - | -Collection `slug` that comes from URL. | -
ServerProduct | -Server | -product | -PDP | -In the function `getStaticProps()` from `PDP`. | -General product data from [StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct). | -The `locator` with `slug` key/value. | -
ClientProduct | -Client | -product | -PDP | -In the hook `useProductQuery()` from `PDP`. | -- General product data from [StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct) to update product data inside - `PDP` (product coming from `ServerProductQuery` as fallback). - | -- Frontend data from the `useSession()` hook in the locator array with - `id`, `channel`, `locale` as key/values. - | -
ClientManyProducts | -Client | -search | -- `PLP`, `Search Page`, and pages that use `ProductShelf`, and `ProductTiles` components. - | -- - In the hook `usePageProductsQuery()` from `PLP` and `Search Page`. - - - In the hook `useProductsPrefetch()` to prefetch the previous (prev) - and next (next) page from the current `PLP` or `Search Page`. - - - In the hook `useProductsQuery()`, in `ProductShelf`, `ProductTiles` - components, that can be used on multiple pages. +> ⚠️ When using both [`ServerProductQuery`](#serverproductquery) and ClientProductQuery on the PDP, remember that `ServerProductQuery` fetches the initial product data from the server, while `ClientProductQuery` updates that data based on user actions. Make sure to manage how these queries interact to ensure data accuracy. When developing API extensions, prioritize keeping the data consistent and using both queries appropriately to provide users with the most up-to-date information. - | -- General products data ([StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct)) with the `totalCount` from [StorePageInfo](https://v1.faststore.dev/reference/api/objects#storepageinfo). - | -- Frontend data from the `useLocalizedVariables()` and `useSession()` hooks. - | -
ClientShippingSimulation | -Client | -shipping | -PDP | -In the `ShippingSimulation` component. | -- General shipping simulation data with the `address` and `logisticsInfo`. - | -- Frontend `country`, and `postalCode` from `useSession()` hook, and the `items` Array of `IShippingItem` (`id`, `quantity`, and `seller`). - | -
ClientSearchSuggestions | -Client | -search | -`SearchInput` component from `GlobalSection`. | -In the `SearchInput` component. | -General search data with the `suggestions` and `products`. | -Frontend data from `useSession()` hook, and the `term` searched. | -
ClientTopSearchSuggestions | -Client | -search | -`SearchInput` component from `GlobalSection`. | -In the `SearchInput` component. | -The top searched suggestions. | -Frontend data from `useSession()` hook. | -
ClientProductGallery | -Client | -search | -PLP | -- In the hook `useProductGalleryQuery()` from the `ProductListingPage` (`PLP`) and `Search` Pages. - | -- Products totalCount from [StorePageInfo](https://v1.faststore.dev/reference/api/objects#storepageinfo), and facets ([StoreFacet](https://v1.faststore.dev/reference/api/objects#storefacet)) from - [StoreSearchResult](https://v1.faststore.dev/reference/api/objects#storesearchresult). - | -- Frontend data from the `useSearch()` and `useLocalizedVariables()` - hooks, the latter uses `useSession()`. - | -
ServerCollectionPage | -Server | -collection | -PLP | -In the function `getStaticProps()` from `PLP`. | -- seo, breadcrumbList and meta data from the collection ([StoreCollection](https://v1.faststore.dev/reference/api/objects#storecollection)). - | -Collection `slug` that comes from URL. | -
ServerProduct | -Server | -product | -PDP | -In the function `getStaticProps()` from `PDP`. | -General product data from [StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct). | -The `locator` with `slug` key/value. | -
ClientProduct | -Client | -product | -PDP | -In the hook `useProductQuery()` from `PDP`. | -- General product data from [StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct) to update product data inside - `PDP` (product coming from `ServerProductQuery` as fallback). - | -- Frontend data from the `useSession()` hook in the locator array with - `id`, `channel`, `locale` as key/values. - | -
ClientManyProducts | -Client | -search | -- `PLP`, `Search Page`, and pages that use `ProductShelf`, and `ProductTiles` components. - | -
- - In the hook `usePageProductsQuery()` from `PLP` and `Search Page`.
- - - In the hook `useProductsPrefetch()` to prefetch the previous (prev) - and next (next) page from the current `PLP` or `Search Page`. - - - In the hook `useProductsQuery()`, in `ProductShelf`, `ProductTiles` - components, that can be used on multiple pages. - - |
- - General products data ([StoreProduct](https://v1.faststore.dev/reference/api/objects#storeproduct)) with the `totalCount` from [StorePageInfo](https://v1.faststore.dev/reference/api/objects#storepageinfo). - | -- Frontend data from the `useLocalizedVariables()` and `useSession()` hooks. - | -
ClientShippingSimulation | -Client | -shipping | -PDP | -In the `ShippingSimulation` component. | -- General shipping simulation data with the `address` and `logisticsInfo`. - | -- Frontend `country`, and `postalCode` from `useSession()` hook, and the `items` Array of `IShippingItem` (`id`, `quantity`, and `seller`). - | -
ClientSearchSuggestions | -Client | -search | -`SearchInput` component from `GlobalSection`. | -In the `SearchInput` component. | -General search data with the `suggestions` and `products`. | -Frontend data from `useSession()` hook, and the `term` searched. | -
ClientTopSearchSuggestions | -Client | -search | -`SearchInput` component from `GlobalSection`. | -In the `SearchInput` component. | -The top searched suggestions. | -Frontend data from `useSession()` hook. | -
Field | +Argument | +Type | +Description | +
---|---|---|---|
key | +String! | ++ +Facet key. + + | +|
label | +String! | ++ +Facet label. + + | +|
values | +[StoreFacetValue!]! | ++ +Array with information on each facet value. + + | +|
type | +StoreFacetBoolean! | ++ +Facet type. Possible values are `BOOLEAN` and `RANGE`. + + | +|
type | +StoreFacetRange! | ++ +Facet type. + + | +