UNPKG

@techsio/storefront-data

Version:

Medusa-first storefront data layer built on TanStack Query.

44 lines (43 loc) • 2.36 kB
import { createAuthQueryKeys } from "../auth/query-keys.js"; import { createCartQueryKeys } from "../cart/query-keys.js"; import { createCatalogQueryKeys } from "../catalog/query-keys.js"; import { createCategoryQueryKeys } from "../categories/query-keys.js"; import { createCheckoutQueryKeys } from "../checkout/query-keys.js"; import { createCollectionQueryKeys } from "../collections/query-keys.js"; import { createCustomerQueryKeys } from "../customers/query-keys.js"; import { createOrderQueryKeys } from "../orders/query-keys.js"; import { createProductAttributeQueryKeys } from "../product-attributes/query-keys.js"; import { createProductListQueryKeys } from "../product-lists/query-keys.js"; import { createProductLocationAvailabilityQueryKeys } from "../product-location-availability/query-keys.js"; import { createProductQueryKeys } from "../products/query-keys.js"; import { createRegionQueryKeys } from "../regions/query-keys.js"; import { createProductReviewQueryKeys } from "../reviews/query-keys.js"; import { createCacheConfig } from "../shared/cache-config.js"; function createMedusaStorefrontQueryKeys(namespace) { return { auth: createAuthQueryKeys(namespace), cart: createCartQueryKeys(namespace), checkout: createCheckoutQueryKeys(namespace), products: createProductQueryKeys(namespace), productLists: createProductListQueryKeys(namespace), productAttributes: createProductAttributeQueryKeys(namespace), productLocationAvailability: createProductLocationAvailabilityQueryKeys(namespace), orders: createOrderQueryKeys(namespace), customers: createCustomerQueryKeys(namespace), regions: createRegionQueryKeys(namespace), categories: createCategoryQueryKeys(namespace), collections: createCollectionQueryKeys(namespace), catalog: createCatalogQueryKeys(namespace), reviews: createProductReviewQueryKeys(namespace) }; } function resolveMedusaStorefrontFoundation(config) { const namespace = config.queryKeyNamespace ?? "storefront-data"; const cacheConfig = config.cacheConfig ?? createCacheConfig(); return { namespace, cacheConfig, defaultQueryKeys: createMedusaStorefrontQueryKeys(namespace) }; } export { createMedusaStorefrontQueryKeys, resolveMedusaStorefrontFoundation };