Files
apps-registry/workloads/ecommerce/lib/headless/client.ts
T
2026-07-19 19:37:41 -05:00

25 lines
856 B
TypeScript

import type { CatalogProvider, ProductFilters } from "@/lib/headless/types";
import { medusaCatalogProvider } from "@/lib/headless/providers/medusa";
import { mockCatalogProvider } from "@/lib/headless/providers/mock";
import { shopifyCatalogProvider } from "@/lib/headless/providers/shopify";
function provider(): CatalogProvider {
switch (process.env.HEADLESS_PROVIDER) {
case "shopify": return shopifyCatalogProvider;
case "medusa": return medusaCatalogProvider;
default: return mockCatalogProvider;
}
}
export async function getProducts(filters?: ProductFilters) {
return provider().getProducts(filters);
}
export async function getProductBySlug(slug: string) {
return provider().getProductBySlug(slug);
}
export async function searchProducts(query: string, limit?: number) {
return provider().searchProducts(query, limit);
}