From cac0ec16dd9400565099c4934a90d588531da8a6 Mon Sep 17 00:00:00 2001 From: cond0r Date: Sun, 6 Jun 2021 11:16:54 +0300 Subject: [PATCH] Shopify changes --- framework/shopify/api/operations/get-all-pages.ts | 4 +++- framework/shopify/api/operations/get-page.ts | 2 +- framework/shopify/product/use-search.tsx | 6 +++--- framework/shopify/utils/normalize.ts | 4 ++-- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/framework/shopify/api/operations/get-all-pages.ts b/framework/shopify/api/operations/get-all-pages.ts index ab0af9ff7..58bc6a94b 100644 --- a/framework/shopify/api/operations/get-all-pages.ts +++ b/framework/shopify/api/operations/get-all-pages.ts @@ -38,7 +38,9 @@ export default function getAllPagesOperation({ preview?: boolean query?: string } = {}): Promise { - const { fetch, locale, locales = ['en-US'] } = commerce.getConfig(config) + const { fetch, locale, locales = ['en-US', 'es'] } = commerce.getConfig( + config + ) const { data } = await fetch( query, diff --git a/framework/shopify/api/operations/get-page.ts b/framework/shopify/api/operations/get-page.ts index 67e135ebe..023ebeeb7 100644 --- a/framework/shopify/api/operations/get-page.ts +++ b/framework/shopify/api/operations/get-page.ts @@ -39,7 +39,7 @@ export default function getPageOperation({ config?: Partial preview?: boolean }): Promise { - const { fetch, locale = 'en-US' } = commerce.getConfig(config) + const { fetch, locale } = commerce.getConfig(config) const { data: { node: page }, diff --git a/framework/shopify/product/use-search.tsx b/framework/shopify/product/use-search.tsx index 9588b65a2..72dc8bb65 100644 --- a/framework/shopify/product/use-search.tsx +++ b/framework/shopify/product/use-search.tsx @@ -50,18 +50,18 @@ export const handler: SWRHook = { }) // filter on client when brandId & categoryId are set since is not available on collection product query products = brandId - ? data.node.products.edges.filter( + ? data.node?.products?.edges?.filter( ({ node: { vendor } }: ProductEdge) => vendor.replace(/\s+/g, '-').toLowerCase() === brandId ) - : data.node.products.edges + : data.node?.products?.edges } else { const data = await fetch({ query: options.query, method, variables, }) - products = data.products.edges + products = data.products?.edges } return { diff --git a/framework/shopify/utils/normalize.ts b/framework/shopify/utils/normalize.ts index e86872ef9..7a42ca085 100644 --- a/framework/shopify/utils/normalize.ts +++ b/framework/shopify/utils/normalize.ts @@ -174,14 +174,14 @@ function normalizeLineItem({ export const normalizePage = ( { title: name, handle, ...page }: ShopifyPage, - locale: string + locale: string = 'en-US' ): Page => ({ ...page, url: `/${locale}/${handle}`, name, }) -export const normalizePages = (edges: PageEdge[], locale: string): Page[] => +export const normalizePages = (edges: PageEdge[], locale?: string): Page[] => edges?.map((edge) => normalizePage(edge.node, locale)) export const normalizeCategory = ({