UNPKG

@konkonam/nuxt-shopify

Version:

Easily integrate shopify with nuxt 3 and 4 🚀

36 lines (35 loc) • 1.07 kB
import { createApiUrl, createStoreDomain } from "./client.js"; const MOCK_STORE_DOMAIN = "https://mock.shop"; export const createStorefrontConfig = (config) => { if (!config?.clients?.storefront) { throw new Error("Could not create storefront client"); } const { name, logger, clients: { storefront: { apiVersion, headers, publicAccessToken, privateAccessToken, mock } } } = config; if (!name || !publicAccessToken && !privateAccessToken || publicAccessToken && privateAccessToken) { throw new Error("Could not create storefront client"); } const apiUrl = mock ? createApiUrl(MOCK_STORE_DOMAIN, apiVersion) : createApiUrl(createStoreDomain(name), apiVersion); return { storeDomain: createStoreDomain(name), apiUrl, apiVersion, logger, headers: { ...publicAccessToken ? { "X-Shopify-Storefront-Access-Token": publicAccessToken } : {}, ...privateAccessToken ? { "Shopify-Private-Access-Token": privateAccessToken } : {}, ...headers } }; };