@plasmicpkgs/commerce-shopify 0.0.189 → 0.0.191

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,17 +1,9 @@
1
1
  import registerGlobalContext from '@plasmicapp/host/registerGlobalContext';
2
+ import { FetcherError, ValidationError, CommerceError, useCart, useCommerce as useCommerce$1, getCommerceProvider as getCommerceProvider$1, CartActionsProvider, globalActionsRegistrations } from '@plasmicpkgs/commerce';
2
3
  import React, { useMemo, useCallback } from 'react';
3
- import { FetcherError, ValidationError, CommerceError, useCart, useCommerce as useCommerce$1, getCommerceProvider as getCommerceProvider$1, globalActionsRegistrations, CartActionsProvider } from '@plasmicpkgs/commerce';
4
4
  import Cookies from 'js-cookie';
5
5
  import debounce from 'debounce';
6
6
 
7
- /*
8
- Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src
9
- Changes: Removed store domain and api token
10
- */
11
- var SHOPIFY_CHECKOUT_ID_COOKIE = 'shopify_checkoutId';
12
- var SHOPIFY_CHECKOUT_URL_COOKIE = 'shopify_checkoutUrl';
13
- var SHOPIFY_COOKIE_EXPIRE = 30;
14
-
15
7
  function _regeneratorRuntime() {
16
8
  _regeneratorRuntime = function () {
17
9
  return e;
@@ -370,6 +362,14 @@ function _objectWithoutPropertiesLoose(source, excluded) {
370
362
  return target;
371
363
  }
372
364
 
365
+ /*
366
+ Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src
367
+ Changes: Removed store domain and api token
368
+ */
369
+ var SHOPIFY_CHECKOUT_ID_COOKIE = 'shopify_checkoutId';
370
+ var SHOPIFY_CHECKOUT_URL_COOKIE = 'shopify_checkoutUrl';
371
+ var SHOPIFY_COOKIE_EXPIRE = 30;
372
+
373
373
  function getError(errors, status) {
374
374
  var _errors;
375
375
  errors = (_errors = errors) != null ? _errors : [{
@@ -1740,7 +1740,7 @@ var getCommerceProvider = function getCommerceProvider(storeDomain, accessToken)
1740
1740
  };
1741
1741
 
1742
1742
  var globalContextName = "plasmic-commerce-shopify-provider";
1743
- var commerceProviderMeta = {
1743
+ var commerceProviderMeta = /*#__PURE__*/_extends({
1744
1744
  name: globalContextName,
1745
1745
  displayName: "Shopify Provider",
1746
1746
  props: {
@@ -1752,12 +1752,14 @@ var commerceProviderMeta = {
1752
1752
  type: "string",
1753
1753
  defaultValue: "ef7d41c7bf7e1c214074d0d3047bcd7b"
1754
1754
  }
1755
- },
1756
- unstable__globalActions: globalActionsRegistrations,
1755
+ }
1756
+ }, {
1757
+ globalActions: globalActionsRegistrations
1758
+ }, {
1757
1759
  description: "Your store domain usually looks like **storename.myshopify.com**.\n\nFor your access token, get it by following [this video](https://www.youtube.com/watch?v=wB_6cM7tdv4).\n\nSee also the [getting started video](https://www.youtube.com/watch?v=1OJ_gXmta2Q).",
1758
1760
  importPath: "@plasmicpkgs/commerce-shopify",
1759
1761
  importName: "CommerceProviderComponent"
1760
- };
1762
+ });
1761
1763
  function CommerceProviderComponent(props) {
1762
1764
  var storeDomain = props.storeDomain,
1763
1765
  accessToken = props.accessToken,
@@ -1 +1 @@
1
- {"version":3,"file":"commerce-shopify.esm.js","sources":["../src/const.ts","../src/utils/handle-fetch-response.ts","../src/utils/get-sort-variables.ts","../src/utils/get-search-variables.ts","../src/utils/get-checkout-id.ts","../src/utils/queries/get-checkout-query.ts","../src/utils/mutations/checkout-create.ts","../src/utils/checkout-create.ts","../src/utils/colors.ts","../src/utils/normalize.ts","../src/utils/throw-user-errors.ts","../src/utils/checkout-to-cart.ts","../src/utils/queries/get-collection-query.ts","../src/utils/queries/get-all-collections-query.ts","../src/utils/queries/get-product-query.ts","../src/utils/queries/get-all-products-query.ts","../src/utils/queries/get-all-product-vendors-query.ts","../src/utils/queries/get-collection-products-query.ts","../src/utils/mutations/checkout-line-item-add.ts","../src/utils/mutations/checkout-line-item-update.ts","../src/utils/mutations/checkout-line-item-remove.ts","../src/product/use-search.tsx","../src/product/use-product.tsx","../src/cart/use-cart.tsx","../src/cart/use-add-item.tsx","../src/cart/use-remove-item.tsx","../src/cart/use-update-item.tsx","../src/site/use-categories.tsx","../src/site/use-brands.tsx","../src/fetcher.ts","../src/provider.ts","../src/shopify.tsx","../src/registerCommerceProvider.tsx","../src/index.tsx"],"sourcesContent":["/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: Removed store domain and api token\n*/\nexport const SHOPIFY_CHECKOUT_ID_COOKIE = 'shopify_checkoutId'\n\nexport const SHOPIFY_CHECKOUT_URL_COOKIE = 'shopify_checkoutUrl'\n\nexport const SHOPIFY_CUSTOMER_TOKEN_COOKIE = 'shopify_customerToken'\n\nexport const SHOPIFY_COOKIE_EXPIRE = 30\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { FetcherError } from '@plasmicpkgs/commerce'\n\nexport function getError(errors: any[] | null, status: number) {\n errors = errors ?? [{ message: 'Failed to fetch Shopify API' }]\n return new FetcherError({ errors, status })\n}\n\nexport async function getAsyncError(res: Response) {\n const data = await res.json()\n return getError(data.errors, res.status)\n}\n\nconst handleFetchResponse = async (res: Response) => {\n if (res.ok) {\n const { data, errors } = await res.json()\n\n if (errors && errors.length) {\n throw getError(errors, res.status)\n }\n\n return data\n }\n\n throw await getAsyncError(res)\n}\n\nexport default handleFetchResponse\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getSortVariables = (sort?: string, isCategory: boolean = false) => {\n let output = {}\n switch (sort) {\n case 'price-asc':\n output = {\n sortKey: 'PRICE',\n reverse: false,\n }\n break\n case 'price-desc':\n output = {\n sortKey: 'PRICE',\n reverse: true,\n }\n break\n case 'trending-desc':\n output = {\n sortKey: 'BEST_SELLING',\n reverse: false,\n }\n break\n case 'latest-desc':\n output = {\n sortKey: isCategory ? 'CREATED' : 'CREATED_AT',\n reverse: true,\n }\n break\n }\n return output\n}\n\nexport default getSortVariables\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Added count as a parameter\n*/\nimport { SearchProductsBody } from \"@plasmicpkgs/commerce\";\nimport getSortVariables from \"./get-sort-variables\";\n\nexport const getSearchVariables = ({\n brandId,\n search,\n categoryId,\n sort,\n locale,\n count,\n}: SearchProductsBody) => {\n let query = \"\";\n\n const searchQuery = `${search}*`;\n if (search) {\n query += `product_type:${searchQuery} OR title:${searchQuery} OR tag:${searchQuery}`;\n }\n\n if (brandId) {\n query += `${search ? \"AND \" : \"\"}vendor:${brandId}`;\n }\n\n return {\n categoryId,\n query,\n ...getSortVariables(sort, !!categoryId),\n ...(locale && {\n locale,\n }),\n first: count,\n };\n};\n\nexport default getSearchVariables;\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport Cookies from 'js-cookie'\nimport { SHOPIFY_CHECKOUT_ID_COOKIE } from '../const'\n\nconst getCheckoutId = (id?: string) => {\n return id ?? Cookies.get(SHOPIFY_CHECKOUT_ID_COOKIE);\n}\n\nexport default getCheckoutId\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nexport const checkoutDetailsFragment = /* GraphQL */ `\n fragment checkoutDetails on Checkout {\n id\n webUrl\n subtotalPriceV2 {\n amount\n currencyCode\n }\n totalTaxV2 {\n amount\n currencyCode\n }\n totalPriceV2 {\n amount\n currencyCode\n }\n completedAt\n createdAt\n taxesIncluded\n lineItems(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n variant {\n id\n sku\n title\n selectedOptions {\n name\n value\n }\n image {\n originalSrc\n altText\n width\n height\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n product {\n id\n handle\n }\n }\n quantity\n }\n }\n }\n }\n`;\n\nconst getCheckoutQuery = /* GraphQL */ `\n query getCheckout($checkoutId: ID!) {\n node(id: $checkoutId) {\n ...checkoutDetails\n }\n }\n ${checkoutDetailsFragment}\n`;\nexport default getCheckoutQuery;\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutCreateMutation = /* GraphQL */ `\n mutation checkoutCreate($input: CheckoutCreateInput = {}) {\n checkoutCreate(input: $input) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutCreateMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added sameSite and secure to the cookie options to allow third-party cookies.\n\t We need this to make work on the studio\n*/\nimport Cookies from 'js-cookie'\n\nimport {\n SHOPIFY_CHECKOUT_ID_COOKIE,\n SHOPIFY_CHECKOUT_URL_COOKIE,\n SHOPIFY_COOKIE_EXPIRE,\n} from '../const'\n\nimport checkoutCreateMutation from './mutations/checkout-create'\nimport {\n CheckoutCreatePayload,\n CheckoutLineItemInput,\n Mutation,\n MutationCheckoutCreateArgs,\n} from '../schema'\nimport { FetcherOptions } from '@plasmicpkgs/commerce'\n\nexport const checkoutCreate = async (\n fetch: <T = any, B = Body>(options: FetcherOptions<B>) => Promise<T>,\n lineItems: CheckoutLineItemInput[]\n): Promise<CheckoutCreatePayload> => {\n const { checkoutCreate } = await fetch<Mutation, MutationCheckoutCreateArgs>({\n query: checkoutCreateMutation,\n variables: {\n input: { lineItems },\n },\n })\n\n const checkout = checkoutCreate?.checkout\n if (checkout) {\n const checkoutId = checkout?.id\n const options: Cookies.CookieAttributes = {\n expires: SHOPIFY_COOKIE_EXPIRE,\n sameSite: \"none\",\n secure: true\n }\n Cookies.set(SHOPIFY_CHECKOUT_ID_COOKIE, checkoutId, options);\n if (checkout?.webUrl) {\n Cookies.set(SHOPIFY_CHECKOUT_URL_COOKIE, checkout.webUrl, options)\n }\n }\n\n return checkoutCreate!\n}\n\nexport default checkoutCreate\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nexport const colorMap: Record<string, string> = {\n aliceblue: '#F0F8FF',\n antiquewhite: '#FAEBD7',\n aqua: '#00FFFF',\n aquamarine: '#7FFFD4',\n azure: '#F0FFFF',\n beige: '#F5F5DC',\n bisque: '#FFE4C4',\n black: '#000000',\n blanchedalmond: '#FFEBCD',\n blue: '#0000FF',\n blueviolet: '#8A2BE2',\n brown: '#A52A2A',\n burlywood: '#DEB887',\n burgandy: '#800020',\n burgundy: '#800020',\n cadetblue: '#5F9EA0',\n chartreuse: '#7FFF00',\n chocolate: '#D2691E',\n coral: '#FF7F50',\n cornflowerblue: '#6495ED',\n cornsilk: '#FFF8DC',\n crimson: '#DC143C',\n cyan: '#00FFFF',\n darkblue: '#00008B',\n darkcyan: '#008B8B',\n darkgoldenrod: '#B8860B',\n darkgray: '#A9A9A9',\n darkgreen: '#006400',\n darkgrey: '#A9A9A9',\n darkkhaki: '#BDB76B',\n darkmagenta: '#8B008B',\n darkolivegreen: '#556B2F',\n darkorange: '#FF8C00',\n darkorchid: '#9932CC',\n darkred: '#8B0000',\n darksalmon: '#E9967A',\n darkseagreen: '#8FBC8F',\n darkslateblue: '#483D8B',\n darkslategray: '#2F4F4F',\n darkslategrey: '#2F4F4F',\n darkturquoise: '#00CED1',\n darkviolet: '#9400D3',\n deeppink: '#FF1493',\n deepskyblue: '#00BFFF',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1E90FF',\n firebrick: '#B22222',\n floralwhite: '#FFFAF0',\n forestgreen: '#228B22',\n fuchsia: '#FF00FF',\n gainsboro: '#DCDCDC',\n ghostwhite: '#F8F8FF',\n gold: '#FFD700',\n goldenrod: '#DAA520',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#ADFF2F',\n grey: '#808080',\n honeydew: '#F0FFF0',\n hotpink: '#FF69B4',\n indianred: '#CD5C5C',\n indigo: '#4B0082',\n ivory: '#FFFFF0',\n khaki: '#F0E68C',\n lavender: '#E6E6FA',\n lavenderblush: '#FFF0F5',\n lawngreen: '#7CFC00',\n lemonchiffon: '#FFFACD',\n lightblue: '#ADD8E6',\n lightcoral: '#F08080',\n lightcyan: '#E0FFFF',\n lightgoldenrodyellow: '#FAFAD2',\n lightgray: '#D3D3D3',\n lightgreen: '#90EE90',\n lightgrey: '#D3D3D3',\n lightpink: '#FFB6C1',\n lightsalmon: '#FFA07A',\n lightseagreen: '#20B2AA',\n lightskyblue: '#87CEFA',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#B0C4DE',\n lightyellow: '#FFFFE0',\n lime: '#00FF00',\n limegreen: '#32CD32',\n linen: '#FAF0E6',\n magenta: '#FF00FF',\n maroon: '#800000',\n mediumaquamarine: '#66CDAA',\n mediumblue: '#0000CD',\n mediumorchid: '#BA55D3',\n mediumpurple: '#9370DB',\n mediumseagreen: '#3CB371',\n mediumslateblue: '#7B68EE',\n mediumspringgreen: '#00FA9A',\n mediumturquoise: '#48D1CC',\n mediumvioletred: '#C71585',\n midnightblue: '#191970',\n mintcream: '#F5FFFA',\n mistyrose: '#FFE4E1',\n moccasin: '#FFE4B5',\n navajowhite: '#FFDEAD',\n navy: '#000080',\n oldlace: '#FDF5E6',\n olive: '#808000',\n olivedrab: '#6B8E23',\n orange: '#FFA500',\n orangered: '#FF4500',\n orchid: '#DA70D6',\n palegoldenrod: '#EEE8AA',\n palegreen: '#98FB98',\n paleturquoise: '#AFEEEE',\n palevioletred: '#DB7093',\n papayawhip: '#FFEFD5',\n peachpuff: '#FFDAB9',\n peru: '#CD853F',\n pink: '#FFC0CB',\n plum: '#DDA0DD',\n powderblue: '#B0E0E6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#FF0000',\n rosybrown: '#BC8F8F',\n royalblue: '#4169E1',\n saddlebrown: '#8B4513',\n salmon: '#FA8072',\n sandybrown: '#F4A460',\n seagreen: '#2E8B57',\n seashell: '#FFF5EE',\n sienna: '#A0522D',\n silver: '#C0C0C0',\n skyblue: '#87CEEB',\n slateblue: '#6A5ACD',\n slategray: '#708090',\n slategrey: '#708090',\n spacegrey: '#65737e',\n spacegray: '#65737e',\n snow: '#FFFAFA',\n springgreen: '#00FF7F',\n steelblue: '#4682B4',\n tan: '#D2B48C',\n teal: '#008080',\n thistle: '#D8BFD8',\n tomato: '#FF6347',\n turquoise: '#40E0D0',\n violet: '#EE82EE',\n wheat: '#F5DEB3',\n white: '#FFFFFF',\n whitesmoke: '#F5F5F5',\n yellow: '#FFFF00',\n yellowgreen: '#9ACD32',\n}\n","/* eslint-disable */\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - When a product doesn't have a variant, Shopify sets the default variant title as \"Default Title\"\n Changed to \"Default Variant\" to have the same default title as the Swell provider.\n*/\nimport type { Page } from \"../types/page\";\nimport type { Product } from \"@plasmicpkgs/commerce\";\nimport type { Cart, LineItem } from \"../types/cart\";\n\nimport {\n Product as ShopifyProduct,\n Checkout,\n CheckoutLineItemEdge,\n SelectedOption,\n Image,\n ImageConnection,\n ProductVariantConnection,\n MoneyV2,\n ProductOption,\n Page as ShopifyPage,\n PageEdge,\n Collection,\n} from \"../schema\";\nimport { colorMap } from \"./colors\";\nimport { Category } from \"../types/site\";\n\nconst money = ({ amount, currencyCode }: MoneyV2) => {\n return {\n value: +amount,\n currencyCode,\n };\n};\n\nconst isDefaultOption = (selectedOption: SelectedOption) =>\n selectedOption.name === \"Title\";\n\nconst normalizeProductOption = ({\n id,\n name: displayName,\n values,\n}: ProductOption) => {\n return {\n __typename: \"MultipleChoiceOption\",\n id,\n displayName: displayName.toLowerCase(),\n values: values.map((value) => {\n let output: any = {\n label: value,\n };\n if (displayName.match(/colou?r/gi)) {\n const mapedColor = colorMap[value.toLowerCase().replace(/ /g, \"\")];\n if (mapedColor) {\n output = {\n ...output,\n hexColors: [mapedColor],\n };\n }\n }\n return output;\n }),\n };\n};\n\nconst normalizeImage = ({ originalSrc: url, ...rest }: Image) => ({\n url,\n ...rest,\n});\n\nconst normalizeProductImages = ({ edges }: ImageConnection) =>\n edges?.map(({ node }) => normalizeImage(node));\n\nconst normalizeProductVariants = ({ edges }: ProductVariantConnection) => {\n return edges?.map(\n ({\n node: {\n id,\n selectedOptions,\n sku,\n title,\n priceV2,\n compareAtPriceV2,\n requiresShipping,\n availableForSale,\n },\n }) => {\n return {\n id,\n name: selectedOptions.some((o) => !isDefaultOption(o))\n ? title\n : \"Default variant\",\n sku: sku ?? id,\n price: +priceV2.amount,\n listPrice: +compareAtPriceV2?.amount,\n requiresShipping,\n availableForSale,\n options: selectedOptions.map(({ name, value }: SelectedOption) => {\n const options = normalizeProductOption({\n id,\n name,\n values: [value],\n });\n\n return options;\n }),\n };\n }\n );\n};\n\nexport function normalizeProduct({\n id,\n title: name,\n vendor,\n images,\n variants,\n description,\n descriptionHtml,\n handle,\n priceRange,\n options,\n metafields,\n ...rest\n}: any): Product {\n return {\n id,\n name,\n vendor,\n path: `/${handle}`,\n slug: handle?.replace(/^\\/+|\\/+$/g, \"\"),\n price: money(priceRange?.minVariantPrice),\n images: normalizeProductImages(images),\n variants: variants ? normalizeProductVariants(variants) : [],\n options: options\n ? options\n .filter((o: any) => !isDefaultOption(o)) // By default Shopify adds a 'Title' name when there's only one option. We don't need it. https://community.shopify.com/c/Shopify-APIs-SDKs/Adding-new-product-variant-is-automatically-adding-quot-Default/td-p/358095\n .map((o: any) => normalizeProductOption(o))\n : [],\n ...(description && { description }),\n ...(descriptionHtml && { descriptionHtml }),\n ...rest,\n };\n}\n\nexport function normalizeCart(checkout: any): Cart {\n return {\n id: checkout.id,\n url: checkout.webUrl,\n customerId: \"\",\n email: \"\",\n createdAt: checkout.createdAt,\n currency: {\n code: checkout.totalPriceV2?.currencyCode,\n },\n taxesIncluded: checkout.taxesIncluded,\n lineItems: checkout.lineItems?.edges.map(normalizeLineItem),\n lineItemsSubtotalPrice: +checkout.subtotalPriceV2?.amount,\n subtotalPrice: +checkout.subtotalPriceV2?.amount,\n totalPrice: +checkout.totalPriceV2?.amount,\n discounts: [],\n };\n}\n\nfunction normalizeLineItem({\n node: { id, title, variant, quantity },\n}: CheckoutLineItemEdge): LineItem {\n return {\n id,\n variantId: String(variant?.id),\n productId: String(variant?.product.id),\n name: `${title}`,\n quantity,\n variant: {\n id: String(variant?.id),\n sku: variant?.sku ?? \"\",\n name: variant?.title!,\n image: {\n url: variant?.image?.originalSrc || \"/product-img-placeholder.svg\",\n },\n requiresShipping: variant?.requiresShipping ?? false,\n price: variant?.priceV2?.amount,\n listPrice: variant?.compareAtPriceV2?.amount,\n },\n path: String(variant?.product?.handle),\n discounts: [],\n options: variant?.title == \"Default Title\" ? [] : variant?.selectedOptions,\n };\n}\n/*\nexport const normalizePage = (\n { title: name, handle, ...page }: ShopifyPage,\n locale: string = 'en-US'\n): Page => ({\n ...page,\n url: `/${locale}/${handle}`,\n name,\n})\n\nexport const normalizePages = (edges: PageEdge[], locale?: string): Page[] =>\n edges?.map((edge) => normalizePage(edge.node, locale))\n*/\nexport const normalizeCategory = ({\n title: name,\n handle,\n id,\n products,\n image,\n}: Collection): Category => ({\n id,\n name,\n slug: handle,\n path: `/${handle}`,\n isEmpty: products.edges.length === 0,\n images: image ? [normalizeImage(image)] : undefined,\n});\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { ValidationError } from '@plasmicpkgs/commerce'\n\nimport {\n CheckoutErrorCode,\n CheckoutUserError,\n CustomerErrorCode,\n CustomerUserError,\n} from '../schema'\n\nexport type UserErrors = Array<CheckoutUserError | CustomerUserError>\n\nexport type UserErrorCode =\n | CustomerErrorCode\n | CheckoutErrorCode\n | null\n | undefined\n\nconst getCustomMessage = (code: UserErrorCode, message: string) => {\n switch (code) {\n case 'UNIDENTIFIED_CUSTOMER':\n message = 'Cannot find an account that matches the provided credentials'\n break\n }\n return message\n}\n\nexport const throwUserErrors = (errors?: UserErrors) => {\n if (errors && errors.length) {\n throw new ValidationError({\n errors: errors.map(({ code, message }) => ({\n code: code ?? 'validation_error',\n message: getCustomMessage(code, message),\n })),\n })\n }\n}\n\nexport default throwUserErrors\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport type { Cart } from '../types/cart'\nimport { CommerceError } from '@plasmicpkgs/commerce'\n\nimport {\n CheckoutLineItemsAddPayload,\n CheckoutLineItemsRemovePayload,\n CheckoutLineItemsUpdatePayload,\n CheckoutCreatePayload,\n CheckoutUserError,\n Checkout,\n Maybe,\n} from '../schema'\n\nimport { normalizeCart } from './normalize'\nimport throwUserErrors from './throw-user-errors'\n\nexport type CheckoutQuery = {\n checkout: Checkout\n checkoutUserErrors?: Array<CheckoutUserError>\n}\n\nexport type CheckoutPayload =\n | CheckoutLineItemsAddPayload\n | CheckoutLineItemsUpdatePayload\n | CheckoutLineItemsRemovePayload\n | CheckoutCreatePayload\n | CheckoutQuery\n\nconst checkoutToCart = (checkoutPayload?: Maybe<CheckoutPayload>): Cart => {\n throwUserErrors(checkoutPayload?.checkoutUserErrors)\n\n if (!checkoutPayload?.checkout) {\n throw new CommerceError({\n message: 'Missing checkout object from response',\n })\n }\n\n return normalizeCart(checkoutPayload?.checkout)\n}\n\nexport default checkoutToCart\n","export const simpleProductConnection = `\nfragment simpleProductConnection on ProductConnection {\n edges {\n node {\n id\n }\n }\n}\n`;\n\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Fetch image.\n*/\nexport const collectionFieldsFragment = `\n fragment collectionFieldsFragment on Collection {\n id\n title\n handle\n image {\n originalSrc\n altText\n width\n height\n }\n products(first: $first) {\n ...simpleProductConnection\n }\n }\n ${simpleProductConnection}\n`;\n\nexport const getCollectionQueryById = /* GraphQL */ `\n query getSiteCollection($id: ID, $handle: String, $first: Int = 1) {\n collection(id: $id, handle: $handle) {\n ...collectionFieldsFragment\n }\n }\n ${collectionFieldsFragment}\n`;\n","import { collectionFieldsFragment } from \"./get-collection-query\"\n\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getSiteCollectionsQuery = /* GraphQL */ `\n query getSiteCollections($first: Int!) {\n collections(first: $first) {\n edges {\n node {\n ...collectionFieldsFragment\n }\n }\n }\n }\n\n ${collectionFieldsFragment}\n`\nexport default getSiteCollectionsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: Added query by product id\n*/\n\nconst productFieldsFragment = `\n fragment productFields on Product {\n id\n handle\n availableForSale\n title\n productType\n vendor\n description\n descriptionHtml\n options {\n id\n name\n values\n }\n priceRange {\n maxVariantPrice {\n amount\n currencyCode\n }\n minVariantPrice {\n amount\n currencyCode\n }\n }\n variants(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n sku\n availableForSale\n requiresShipping\n selectedOptions {\n name\n value\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n }\n }\n }\n images(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n originalSrc\n altText\n width\n height\n }\n }\n }\n }\n`\n\nexport const getProductQueryBySlug = /* GraphQL */ `\n query getProductBySlug($slug: String!) {\n productByHandle(handle: $slug) {\n ...productFields\n }\n }\n\n ${productFieldsFragment}\n`\n\n\nexport const getProductQueryById = /* GraphQL */ `\n query getProductById($id: ID!) {\n product(id: $id) {\n ...productFields\n }\n }\n\n ${productFieldsFragment}\n`\n\nexport default getProductQueryBySlug;","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added variants info to the query\n*/\nexport const productConnectionFragment = /* GraphQL */ `\n fragment productConnection on ProductConnection {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n handle\n title\n vendor\n handle\n description\n descriptionHtml\n priceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n options {\n id\n name\n values\n }\n variants(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n sku\n availableForSale\n requiresShipping\n selectedOptions {\n name\n value\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n }\n }\n }\n images(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n originalSrc\n altText\n width\n height\n }\n }\n }\n }\n }\n }\n`\n\nconst getAllProductsQuery = /* GraphQL */ `\n query getAllProducts(\n $first: Int = 250\n $query: String = \"\"\n $sortKey: ProductSortKeys = RELEVANCE\n $reverse: Boolean = false\n ) {\n products(\n first: $first\n sortKey: $sortKey\n reverse: $reverse\n query: $query\n ) {\n ...productConnection\n }\n }\n\n ${productConnectionFragment}\n`\nexport default getAllProductsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getAllProductVendors = /* GraphQL */ `\n query getAllProductVendors($first: Int = 250, $cursor: String) {\n products(first: $first, after: $cursor) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n vendor\n }\n cursor\n }\n }\n }\n`\nexport default getAllProductVendors\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { productConnectionFragment } from './get-all-products-query'\n\nconst getCollectionProductsQuery = /* GraphQL */ `\n query getProductsFromCollection(\n $categoryId: ID!\n $first: Int = 250\n $sortKey: ProductCollectionSortKeys = RELEVANCE\n $reverse: Boolean = false\n ) {\n node(id: $categoryId) {\n id\n ... on Collection {\n products(first: $first, sortKey: $sortKey, reverse: $reverse) {\n ...productConnection\n }\n }\n }\n }\n ${productConnectionFragment}\n`\nexport default getCollectionProductsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemAddMutation = /* GraphQL */ `\n mutation checkoutLineItemAdd(\n $checkoutId: ID!\n $lineItems: [CheckoutLineItemInput!]!\n ) {\n checkoutLineItemsAdd(checkoutId: $checkoutId, lineItems: $lineItems) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemAddMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemUpdateMutation = /* GraphQL */ `\n mutation checkoutLineItemUpdate(\n $checkoutId: ID!\n $lineItems: [CheckoutLineItemUpdateInput!]!\n ) {\n checkoutLineItemsUpdate(checkoutId: $checkoutId, lineItems: $lineItems) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemUpdateMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemRemoveMutation = /* GraphQL */ `\n mutation checkoutLineItemRemove($checkoutId: ID!, $lineItemIds: [ID!]!) {\n checkoutLineItemsRemove(\n checkoutId: $checkoutId\n lineItemIds: $lineItemIds\n ) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemRemoveMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Added count as a parameter to input\n*/\nimport { SWRHook, useSearch, UseSearch } from \"@plasmicpkgs/commerce\";\n\nimport {\n CollectionEdge,\n GetAllProductsQuery,\n GetProductsFromCollectionQueryVariables,\n Product as ShopifyProduct,\n ProductEdge,\n} from \"../schema\";\n\nimport {\n getAllProductsQuery,\n getCollectionProductsQuery,\n getSearchVariables,\n normalizeProduct,\n} from \"../utils\";\n\nimport type { SearchProductsHook } from \"@plasmicpkgs/commerce\";\n\nexport type SearchProductsInput = {\n search?: string;\n categoryId?: number;\n brandId?: number;\n sort?: string;\n locale?: string;\n count?: number;\n};\n\nconst useSearchTyped: UseSearch<typeof handler> = useSearch;\nexport default useSearchTyped;\n\nexport const handler: SWRHook<SearchProductsHook> = {\n fetchOptions: {\n query: getAllProductsQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { categoryId, brandId } = input;\n const method = options?.method;\n const variables = getSearchVariables(input);\n let products;\n\n // change the query to getCollectionProductsQuery when categoryId is set\n if (categoryId) {\n const data = await fetch<\n CollectionEdge,\n GetProductsFromCollectionQueryVariables\n >({\n query: getCollectionProductsQuery,\n method,\n variables: {\n ...variables,\n first: undefined,\n },\n });\n // filter on client when brandId & categoryId are set since is not available on collection product query\n products = brandId\n ? data.node?.products?.edges\n ?.filter(\n ({ node: { vendor } }: ProductEdge) =>\n vendor.replace(/\\s+/g, \"-\").toLowerCase() ===\n `${brandId}`.toLowerCase()\n )\n .slice(0, input.count)\n : data.node?.products?.edges.slice(0, input.count);\n } else {\n const data = await fetch<GetAllProductsQuery>({\n query: options.query,\n method,\n variables,\n });\n products = data.products?.edges;\n }\n\n return {\n products: products?.map(({ node }) =>\n normalizeProduct(node as ShopifyProduct)\n ),\n found: !!products?.length,\n };\n },\n useHook:\n ({ useData }) =>\n (input = {}) => {\n return useData({\n input: [\n [\"search\", input.search],\n [\"categoryId\", input.categoryId],\n [\"brandId\", input.brandId],\n [\"sort\", input.sort],\n [\"locale\", input.locale],\n [\"count\", input.count],\n ],\n swrOptions: {\n revalidateOnFocus: false,\n ...input.swrOptions,\n },\n });\n },\n};\n","import { SWRHook } from '@plasmicpkgs/commerce'\nimport { useProduct, UseProduct } from '@plasmicpkgs/commerce'\n\nimport {\n GetProductByIdQuery,\n GetProductBySlugQuery,\n} from '../schema'\n\nimport {\n getProductQuery,\n normalizeProduct,\n} from '../utils'\n\nimport type { GetProductHook } from '@plasmicpkgs/commerce'\nimport { getProductQueryById } from '../utils/queries/get-product-query'\n\nexport type GetProductInput = {\n id?: string\n}\n\nexport default useProduct as UseProduct<typeof handler>\n\nexport const handler: SWRHook<GetProductHook> = {\n fetchOptions: {\n query: getProductQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { id } = input\n if (!id) {\n return null\n }\n\n let product = null;\n if (id.startsWith(\"gid://shopify\")) {\n const data = await fetch<GetProductByIdQuery>({\n query: getProductQueryById,\n variables: { id }\n });\n product = data.product;\n } else {\n const data = await fetch<GetProductBySlugQuery>({\n query: options.query,\n variables: { slug: id }\n });\n\n if (data.productByHandle) {\n product = data.productByHandle;\n }\n }\n\n return product ? normalizeProduct(product) : null;\n },\n useHook:\n ({ useData }) =>\n (input = {}) => {\n return useData({\n input: [\n ['id', input.id],\n ],\n swrOptions: {\n revalidateOnFocus: false,\n ...input.swrOptions,\n },\n })\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useMemo } from 'react'\nimport { useCart as useCommerceCart, UseCart } from '@plasmicpkgs/commerce'\n\nimport { SWRHook } from '@plasmicpkgs/commerce'\nimport { checkoutToCart } from '../utils'\nimport getCheckoutQuery from '../utils/queries/get-checkout-query'\nimport { GetCartHook } from '../types/cart'\nimport Cookies from 'js-cookie'\n\nimport {\n SHOPIFY_CHECKOUT_ID_COOKIE,\n SHOPIFY_CHECKOUT_URL_COOKIE,\n} from '../const'\n\nexport default useCommerceCart as UseCart<typeof handler>\n\nexport const handler: SWRHook<GetCartHook> = {\n fetchOptions: {\n query: getCheckoutQuery,\n },\n async fetcher({ input: { cartId }, options, fetch }) {\n if (cartId) {\n const { node: checkout } = await fetch({\n ...options,\n variables: {\n checkoutId: cartId,\n },\n })\n if (checkout?.completedAt) {\n Cookies.remove(SHOPIFY_CHECKOUT_ID_COOKIE)\n Cookies.remove(SHOPIFY_CHECKOUT_URL_COOKIE)\n return null\n } else {\n return checkoutToCart({\n checkout,\n })\n }\n }\n return null\n },\n useHook:\n ({ useData }) =>\n (input) => {\n const response = useData({\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n })\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.lineItems.length ?? 0) <= 0\n },\n enumerable: true,\n },\n }),\n [response]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useCallback } from 'react'\nimport type { MutationHook } from '@plasmicpkgs/commerce';\nimport { CommerceError } from '@plasmicpkgs/commerce';\nimport { useAddItem, UseAddItem } from '@plasmicpkgs/commerce';\nimport type { AddItemHook } from '../types/cart'\nimport useCart from './use-cart'\n\nimport {\n checkoutLineItemAddMutation,\n getCheckoutId,\n checkoutToCart,\n checkoutCreate,\n} from '../utils'\nimport { Mutation, MutationCheckoutLineItemsAddArgs } from '../schema'\n\nexport default useAddItem as UseAddItem<typeof handler>\n\nexport const handler: MutationHook<AddItemHook> = {\n fetchOptions: {\n query: checkoutLineItemAddMutation,\n },\n async fetcher({ input: item, options, fetch }) {\n if (\n item.quantity &&\n (!Number.isInteger(item.quantity) || item.quantity! < 1)\n ) {\n throw new CommerceError({\n message: 'The item quantity has to be a valid integer greater than 0',\n })\n }\n\n const lineItems = [\n {\n variantId: item.variantId,\n quantity: item.quantity ?? 1,\n },\n ]\n\n let checkoutId = getCheckoutId()\n if (!checkoutId) {\n return checkoutToCart(await checkoutCreate(fetch, lineItems))\n } else {\n const { checkoutLineItemsAdd } = await fetch<\n Mutation,\n MutationCheckoutLineItemsAddArgs\n >({\n ...options,\n variables: {\n checkoutId,\n lineItems,\n },\n })\n return checkoutToCart(checkoutLineItemsAdd)\n }\n },\n useHook:\n ({ fetch }) =>\n () => {\n const { mutate } = useCart()\n return useCallback(\n async function addItem(input) {\n const data = await fetch({ input })\n await mutate(data, false)\n return data\n },\n [fetch, mutate]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useCallback } from 'react'\nimport type {\n MutationHookContext,\n HookFetcherContext,\n} from '@plasmicpkgs/commerce'\nimport { ValidationError } from '@plasmicpkgs/commerce'\nimport { useRemoveItem, \n UseRemoveItem,\n} from '@plasmicpkgs/commerce'\nimport type { Cart, LineItem, RemoveItemHook } from '../types/cart'\nimport useCart from './use-cart'\n\nexport type RemoveItemFn<T = any> = T extends LineItem\n ? (input?: RemoveItemActionInput<T>) => Promise<Cart | null | undefined>\n : (input: RemoveItemActionInput<T>) => Promise<Cart | null>\n\nexport type RemoveItemActionInput<T = any> = T extends LineItem\n ? Partial<RemoveItemHook['actionInput']>\n : RemoveItemHook['actionInput']\n\nexport default useRemoveItem as UseRemoveItem<typeof handler>\n\nimport {\n checkoutLineItemRemoveMutation,\n getCheckoutId,\n checkoutToCart,\n} from '../utils'\n\nimport { Mutation, MutationCheckoutLineItemsRemoveArgs } from '../schema'\n\nexport const handler = {\n fetchOptions: {\n query: checkoutLineItemRemoveMutation,\n },\n async fetcher({\n input: { itemId },\n options,\n fetch,\n }: HookFetcherContext<RemoveItemHook>) {\n const data = await fetch<Mutation, MutationCheckoutLineItemsRemoveArgs>({\n ...options,\n variables: { checkoutId: getCheckoutId(), lineItemIds: [itemId] },\n })\n return checkoutToCart(data.checkoutLineItemsRemove)\n },\n useHook:\n ({ fetch }: MutationHookContext<RemoveItemHook>) =>\n <T extends LineItem | undefined = undefined>(ctx: { item?: T } = {}) => {\n const { item } = ctx\n const { mutate } = useCart()\n const removeItem: RemoveItemFn<LineItem> = async (input) => {\n const itemId = input?.id ?? item?.id\n\n if (!itemId) {\n throw new ValidationError({\n message: 'Invalid input used for this operation',\n })\n }\n\n const data = await fetch({ input: { itemId } })\n await mutate(data, false)\n return data\n }\n\n return useCallback(removeItem as RemoveItemFn<T>, [fetch, mutate])\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport type {\n HookFetcherContext,\n MutationHookContext,\n} from \"@plasmicpkgs/commerce\";\nimport {\n useUpdateItem,\n UseUpdateItem,\n ValidationError,\n} from \"@plasmicpkgs/commerce\";\nimport debounce from \"debounce\";\nimport { useCallback } from \"react\";\n\nimport { Mutation, MutationCheckoutLineItemsUpdateArgs } from \"../schema\";\nimport type { LineItem, UpdateItemHook } from \"../types/cart\";\nimport {\n checkoutLineItemUpdateMutation,\n checkoutToCart,\n getCheckoutId,\n} from \"../utils\";\nimport useCart from \"./use-cart\";\nimport { handler as removeItemHandler } from \"./use-remove-item\";\n\nexport type UpdateItemActionInput<T = any> = T extends LineItem\n ? Partial<UpdateItemHook[\"actionInput\"]>\n : UpdateItemHook[\"actionInput\"];\n\nexport default useUpdateItem as UseUpdateItem<typeof handler>;\n\nexport const handler = {\n fetchOptions: {\n query: checkoutLineItemUpdateMutation,\n },\n async fetcher({\n input: { itemId, item },\n options,\n fetch,\n }: HookFetcherContext<UpdateItemHook>) {\n if (Number.isInteger(item.quantity)) {\n // Also allow the update hook to remove an item if the quantity is lower than 1\n if (item.quantity! < 1) {\n return removeItemHandler.fetcher({\n options: removeItemHandler.fetchOptions,\n input: { itemId },\n fetch,\n });\n }\n } else if (item.quantity) {\n throw new ValidationError({\n message: \"The item quantity has to be a valid integer\",\n });\n }\n const { checkoutLineItemsUpdate } = await fetch<\n Mutation,\n MutationCheckoutLineItemsUpdateArgs\n >({\n ...options,\n variables: {\n checkoutId: getCheckoutId(),\n lineItems: [\n {\n id: itemId,\n quantity: item.quantity,\n },\n ],\n },\n });\n\n return checkoutToCart(checkoutLineItemsUpdate);\n },\n useHook:\n ({ fetch }: MutationHookContext<UpdateItemHook>) =>\n <T extends LineItem | undefined = undefined>(\n ctx: {\n item?: T;\n wait?: number;\n } = {}\n ) => {\n const { item } = ctx;\n const { mutate } = useCart() as any;\n\n return useCallback(\n debounce(async (input: UpdateItemActionInput<T>) => {\n const itemId = input.id ?? item?.id;\n if (!itemId || input.quantity == null) {\n throw new ValidationError({\n message: \"Invalid input used for this operation\",\n });\n }\n\n const data = await fetch({\n input: {\n item: {\n quantity: input.quantity,\n },\n itemId,\n },\n });\n await mutate(data, false);\n return data;\n }, ctx.wait ?? 500),\n [fetch, mutate]\n );\n },\n};\n","import { SWRHook, UseCategories, useCategories } from \"@plasmicpkgs/commerce\";\nimport { useMemo } from \"react\";\nimport { CollectionEdge } from \"../schema\";\nimport { GetCategoriesHook } from \"../types/site\";\nimport { getSiteCollectionsQuery, normalizeCategory } from \"../utils\";\nimport { getCollectionQueryById } from \"../utils/queries/get-collection-query\";\n\nexport default useCategories as UseCategories<typeof handler>;\n\nexport const handler: SWRHook<GetCategoriesHook> = {\n fetchOptions: {\n query: getSiteCollectionsQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { categoryId } = input;\n\n if (!categoryId) {\n const data = await fetch({\n query: options.query,\n variables: {\n first: 250,\n },\n });\n return (\n data?.collections?.edges?.map(({ node }: CollectionEdge) =>\n normalizeCategory(node)\n ) ?? []\n );\n } else {\n const data = await fetch({\n query: getCollectionQueryById,\n variables: {\n ...(categoryId.startsWith(\"gid://\")\n ? { id: categoryId }\n : { handle: categoryId }),\n },\n });\n return !!data?.collection ? [normalizeCategory(data?.collection)] : [];\n }\n },\n useHook: ({ useData }) => (input) => {\n const response = useData({\n input: [[\"categoryId\", input?.categoryId]],\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n });\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.length ?? 0) <= 0;\n },\n enumerable: true,\n },\n }),\n [response]\n );\n },\n};\n","import { SWRHook } from '@plasmicpkgs/commerce'\nimport { UseBrands, useBrands } from '@plasmicpkgs/commerce'\nimport { useMemo } from \"react\";\nimport { CollectionEdge, GetAllProductVendorsQuery, GetAllProductVendorsQueryVariables } from \"../schema\";\nimport { GetBrandsHook } from \"../types/site\"\nimport { getAllProductVendors, normalizeCategory } from \"../utils\"\n\nexport default useBrands as UseBrands<typeof handler>\n\nexport const handler: SWRHook<GetBrandsHook> = {\n fetchOptions: {\n query: getAllProductVendors,\n },\n async fetcher({ input, options, fetch }) {\n const data = await fetch<\n GetAllProductVendorsQuery,\n GetAllProductVendorsQueryVariables\n >({\n query: getAllProductVendors,\n variables: {\n first: 250,\n },\n });\n\n let vendorsStrings = data.products.edges.map(({ node: { vendor } }) => vendor)\n return Array.from((new Set(vendorsStrings)).values()).map((v) => {\n const id = v.replace(/\\s+/g, '-').toLowerCase()\n return {\n entityId: id,\n name: v,\n path: `brands/${id}`,\n }\n })\n },\n useHook:\n ({ useData }) =>\n (input) => {\n const response = useData({\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n })\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.length ?? 0) <= 0\n },\n enumerable: true,\n },\n }),\n [response]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Before: The storeDomain and accessToken were defined at build time. \n So this file just implemented a fetcher with these parameters defined.\n - Now: The storeDomain and accessToken are defined at runtime. \n So we have to get the fetcher using these parameters.\n*/\nimport { Fetcher } from '@plasmicpkgs/commerce'\nimport { handleFetchResponse } from './utils'\n\nexport const getFetcher: \n (storeDomain: string, accessToken: string) => Fetcher =\n (storeDomain, accessToken) => {\n return async ({\n url = `https://${storeDomain}/api/2022-04/graphql.json`,\n method = 'POST',\n variables,\n query,\n }) => {\n const { locale, ...vars } = variables ?? {}\n return handleFetchResponse(\n await fetch(url, {\n method,\n body: JSON.stringify({ query, variables: vars }),\n headers: {\n 'X-Shopify-Storefront-Access-Token': accessToken,\n 'Content-Type': 'application/json',\n ...(locale && {\n 'Accept-Language': locale,\n }),\n },\n })\n )\n }\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Removed authentication, customer and wishlist hooks.\n - Added storeDomain and accessToken parameters.\n*/\nimport { SHOPIFY_CHECKOUT_ID_COOKIE } from './const'\nimport { handler as useSearch } from './product/use-search'\nimport { handler as useProduct } from './product/use-product'\nimport { handler as useCart } from './cart/use-cart'\nimport { handler as useAddItem } from './cart/use-add-item'\nimport { handler as useUpdateItem } from './cart/use-update-item'\nimport { handler as useRemoveItem } from './cart/use-remove-item'\nimport { handler as useCategories } from './site/use-categories'\nimport { handler as useBrands } from './site/use-brands'\nimport { getFetcher } from './fetcher'\nimport { Fetcher } from '@plasmicpkgs/commerce'\n\nexport const getShopifyProvider = (storeDomain: string, accessToken: string) => (\n {\n locale: 'en-us',\n cartCookie: SHOPIFY_CHECKOUT_ID_COOKIE,\n cart: { useCart, useAddItem, useUpdateItem, useRemoveItem },\n fetcher: getFetcher(storeDomain, accessToken),\n products: { useSearch, useProduct },\n site: { useCategories, useBrands }\n }\n)\n\nexport type ShopifyProvider = {\n locale: string;\n cartCookie: string;\n fetcher: Fetcher;\n cart: {\n useCart: typeof useCart;\n useAddItem: typeof useAddItem;\n useUpdateItem: typeof useUpdateItem;\n useRemoveItem: typeof useRemoveItem\n };\n products: {\n useSearch: typeof useSearch\n useProduct: typeof useProduct\n };\n site: {\n useCategories: typeof useCategories\n useBrands: typeof useBrands\n }\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added storeDomain and accessToken parameters.\n*/\nimport {\n getCommerceProvider as getCoreCommerceProvider,\n useCommerce as useCoreCommerce,\n} from '@plasmicpkgs/commerce'\nimport { getShopifyProvider, ShopifyProvider } from './provider'\n\nexport type { ShopifyProvider }\n\nexport const useCommerce = () => useCoreCommerce<ShopifyProvider>()\n\nexport const getCommerceProvider = (storeDomain: string, accessToken: string) => \n getCoreCommerceProvider(getShopifyProvider(storeDomain, accessToken))\n\n","import { GlobalContextMeta } from \"@plasmicapp/host\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport React from \"react\";\nimport { Registerable } from \"./registerable\";\nimport { getCommerceProvider } from \"./shopify\";\nimport {\n CartActionsProvider,\n globalActionsRegistrations,\n} from \"@plasmicpkgs/commerce\";\n\ninterface CommerceProviderProps {\n children?: React.ReactNode;\n storeDomain: string;\n accessToken: string;\n}\n\nconst globalContextName = \"plasmic-commerce-shopify-provider\";\n\nexport const commerceProviderMeta: GlobalContextMeta<CommerceProviderProps> = {\n name: globalContextName,\n displayName: \"Shopify Provider\",\n props: {\n storeDomain: {\n type: \"string\",\n defaultValue: \"next-js-store.myshopify.com\",\n },\n accessToken: {\n type: \"string\",\n defaultValue: \"ef7d41c7bf7e1c214074d0d3047bcd7b\",\n },\n },\n unstable__globalActions: globalActionsRegistrations as any,\n description: `Your store domain usually looks like **storename.myshopify.com**.\n\nFor your access token, get it by following [this video](https://www.youtube.com/watch?v=wB_6cM7tdv4).\n\nSee also the [getting started video](https://www.youtube.com/watch?v=1OJ_gXmta2Q).`,\n importPath: \"@plasmicpkgs/commerce-shopify\",\n importName: \"CommerceProviderComponent\",\n};\n\nexport function CommerceProviderComponent(props: CommerceProviderProps) {\n const { storeDomain, accessToken, children } = props;\n\n const CommerceProvider = React.useMemo(\n () => getCommerceProvider(storeDomain, accessToken),\n [storeDomain, accessToken]\n );\n\n return (\n <CommerceProvider>\n <CartActionsProvider globalContextName={globalContextName}>\n {children}\n </CartActionsProvider>\n </CommerceProvider>\n );\n}\n\nexport function registerCommerceProvider(\n loader?: Registerable,\n customCommerceProviderMeta?: GlobalContextMeta<CommerceProviderProps>\n) {\n const doRegisterComponent: typeof registerGlobalContext = (...args) =>\n loader\n ? loader.registerGlobalContext(...args)\n : registerGlobalContext(...args);\n doRegisterComponent(\n CommerceProviderComponent,\n customCommerceProviderMeta ?? commerceProviderMeta\n );\n}\n","import { Registerable } from \"./registerable\";\nimport { registerCommerceProvider } from \"./registerCommerceProvider\";\nexport * from \"./registerable\";\nexport * from \"./registerCommerceProvider\";\nexport * from \"./shopify\";\n\nexport function registerAll(loader?: Registerable) {\n registerCommerceProvider(loader);\n}\n"],"names":["SHOPIFY_CHECKOUT_ID_COOKIE","SHOPIFY_CHECKOUT_URL_COOKIE","SHOPIFY_COOKIE_EXPIRE","getError","errors","status","_errors","message","FetcherError","getAsyncError","_x","_getAsyncError","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee2","res","data","wrap","_callee2$","_context2","prev","next","json","sent","abrupt","stop","handleFetchResponse","_ref","_callee","_yield$res$json","_callee$","_context","ok","length","_x2","getSortVariables","sort","isCategory","output","sortKey","reverse","getSearchVariables","brandId","search","categoryId","locale","count","query","searchQuery","_extends","first","getCheckoutId","id","Cookies","get","checkoutDetailsFragment","getCheckoutQuery","checkoutCreateMutation","checkoutCreate","fetch","lineItems","_yield$fetch","checkout","checkoutId","options","variables","input","expires","sameSite","secure","set","webUrl","colorMap","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burgandy","burgundy","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","spacegrey","spacegray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","money","amount","currencyCode","value","isDefaultOption","selectedOption","name","normalizeProductOption","_ref2","displayName","values","__typename","toLowerCase","map","label","match","mapedColor","replace","hexColors","normalizeImage","_ref3","url","originalSrc","rest","_objectWithoutPropertiesLoose","_excluded","normalizeProductImages","_ref4","edges","_ref5","node","normalizeProductVariants","_ref6","_ref7","_ref7$node","selectedOptions","sku","title","priceV2","compareAtPriceV2","requiresShipping","availableForSale","some","o","price","listPrice","_ref8","normalizeProduct","_ref9","vendor","images","variants","description","descriptionHtml","handle","priceRange","metafields","_excluded2","path","slug","minVariantPrice","filter","normalizeCart","customerId","email","createdAt","currency","code","_checkout$totalPriceV","totalPriceV2","taxesIncluded","_checkout$lineItems","normalizeLineItem","lineItemsSubtotalPrice","_checkout$subtotalPri","subtotalPriceV2","subtotalPrice","_checkout$subtotalPri2","totalPrice","_checkout$totalPriceV2","discounts","_ref10","_ref10$node","variant","quantity","variantId","String","productId","product","_variant$sku","image","_variant$image","_variant$requiresShip","_variant$priceV","_variant$compareAtPri","_variant$product","normalizeCategory","_ref11","products","isEmpty","undefined","getCustomMessage","throwUserErrors","ValidationError","checkoutToCart","checkoutPayload","checkoutUserErrors","CommerceError","simpleProductConnection","collectionFieldsFragment","getCollectionQueryById","getSiteCollectionsQuery","productFieldsFragment","getProductQueryBySlug","getProductQueryById","productConnectionFragment","getAllProductsQuery","getAllProductVendors","getCollectionProductsQuery","checkoutLineItemAddMutation","checkoutLineItemUpdateMutation","checkoutLineItemRemoveMutation","handler","fetchOptions","fetcher","method","_data$node","slice","_data$node2","_data$products","_products","found","_products2","useHook","useData","swrOptions","revalidateOnFocus","getProductQuery","startsWith","productByHandle","cartId","completedAt","remove","response","useMemo","Object","create","_response$data$lineIt","_response$data","enumerable","item","Number","isInteger","_item$quantity","t0","t1","checkoutLineItemsAdd","_useCart","useCart","mutate","useCallback","_addItem","addItem","itemId","lineItemIds","checkoutLineItemsRemove","ctx","_ctx","removeItem","_input$id","_ref$input","removeItemHandler","checkoutLineItemsUpdate","debounce","_ctx$wait","wait","_data$collections$edg","_data$collections","collections","collection","_response$data$length","vendorsStrings","Array","from","Set","v","entityId","getFetcher","storeDomain","accessToken","_ref$url","_ref$method","vars","body","JSON","stringify","headers","getShopifyProvider","cartCookie","cart","useAddItem","useUpdateItem","useRemoveItem","useSearch","useProduct","site","useCategories","useBrands","useCommerce","useCoreCommerce","getCommerceProvider","getCoreCommerceProvider","globalContextName","commerceProviderMeta","props","type","defaultValue","unstable__globalActions","globalActionsRegistrations","importPath","importName","CommerceProviderComponent","children","CommerceProvider","React","CartActionsProvider","registerCommerceProvider","loader","customCommerceProviderMeta","doRegisterComponent","registerGlobalContext","registerAll"],"mappings":"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"}
1
+ {"version":3,"file":"commerce-shopify.esm.js","sources":["../src/const.ts","../src/utils/handle-fetch-response.ts","../src/utils/get-sort-variables.ts","../src/utils/get-search-variables.ts","../src/utils/get-checkout-id.ts","../src/utils/queries/get-checkout-query.ts","../src/utils/mutations/checkout-create.ts","../src/utils/checkout-create.ts","../src/utils/colors.ts","../src/utils/normalize.ts","../src/utils/throw-user-errors.ts","../src/utils/checkout-to-cart.ts","../src/utils/queries/get-collection-query.ts","../src/utils/queries/get-all-collections-query.ts","../src/utils/queries/get-product-query.ts","../src/utils/queries/get-all-products-query.ts","../src/utils/queries/get-all-product-vendors-query.ts","../src/utils/queries/get-collection-products-query.ts","../src/utils/mutations/checkout-line-item-add.ts","../src/utils/mutations/checkout-line-item-update.ts","../src/utils/mutations/checkout-line-item-remove.ts","../src/product/use-search.tsx","../src/product/use-product.tsx","../src/cart/use-cart.tsx","../src/cart/use-add-item.tsx","../src/cart/use-remove-item.tsx","../src/cart/use-update-item.tsx","../src/site/use-categories.tsx","../src/site/use-brands.tsx","../src/fetcher.ts","../src/provider.ts","../src/shopify.tsx","../src/registerCommerceProvider.tsx","../src/index.tsx"],"sourcesContent":["/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: Removed store domain and api token\n*/\nexport const SHOPIFY_CHECKOUT_ID_COOKIE = 'shopify_checkoutId'\n\nexport const SHOPIFY_CHECKOUT_URL_COOKIE = 'shopify_checkoutUrl'\n\nexport const SHOPIFY_CUSTOMER_TOKEN_COOKIE = 'shopify_customerToken'\n\nexport const SHOPIFY_COOKIE_EXPIRE = 30\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { FetcherError } from '@plasmicpkgs/commerce'\n\nexport function getError(errors: any[] | null, status: number) {\n errors = errors ?? [{ message: 'Failed to fetch Shopify API' }]\n return new FetcherError({ errors, status })\n}\n\nexport async function getAsyncError(res: Response) {\n const data = await res.json()\n return getError(data.errors, res.status)\n}\n\nconst handleFetchResponse = async (res: Response) => {\n if (res.ok) {\n const { data, errors } = await res.json()\n\n if (errors && errors.length) {\n throw getError(errors, res.status)\n }\n\n return data\n }\n\n throw await getAsyncError(res)\n}\n\nexport default handleFetchResponse\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getSortVariables = (sort?: string, isCategory: boolean = false) => {\n let output = {}\n switch (sort) {\n case 'price-asc':\n output = {\n sortKey: 'PRICE',\n reverse: false,\n }\n break\n case 'price-desc':\n output = {\n sortKey: 'PRICE',\n reverse: true,\n }\n break\n case 'trending-desc':\n output = {\n sortKey: 'BEST_SELLING',\n reverse: false,\n }\n break\n case 'latest-desc':\n output = {\n sortKey: isCategory ? 'CREATED' : 'CREATED_AT',\n reverse: true,\n }\n break\n }\n return output\n}\n\nexport default getSortVariables\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Added count as a parameter\n*/\nimport { SearchProductsBody } from \"@plasmicpkgs/commerce\";\nimport getSortVariables from \"./get-sort-variables\";\n\nexport const getSearchVariables = ({\n brandId,\n search,\n categoryId,\n sort,\n locale,\n count,\n}: SearchProductsBody) => {\n let query = \"\";\n\n const searchQuery = `${search}*`;\n if (search) {\n query += `product_type:${searchQuery} OR title:${searchQuery} OR tag:${searchQuery}`;\n }\n\n if (brandId) {\n query += `${search ? \"AND \" : \"\"}vendor:${brandId}`;\n }\n\n return {\n categoryId,\n query,\n ...getSortVariables(sort, !!categoryId),\n ...(locale && {\n locale,\n }),\n first: count,\n };\n};\n\nexport default getSearchVariables;\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport Cookies from 'js-cookie'\nimport { SHOPIFY_CHECKOUT_ID_COOKIE } from '../const'\n\nconst getCheckoutId = (id?: string) => {\n return id ?? Cookies.get(SHOPIFY_CHECKOUT_ID_COOKIE);\n}\n\nexport default getCheckoutId\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nexport const checkoutDetailsFragment = /* GraphQL */ `\n fragment checkoutDetails on Checkout {\n id\n webUrl\n subtotalPriceV2 {\n amount\n currencyCode\n }\n totalTaxV2 {\n amount\n currencyCode\n }\n totalPriceV2 {\n amount\n currencyCode\n }\n completedAt\n createdAt\n taxesIncluded\n lineItems(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n variant {\n id\n sku\n title\n selectedOptions {\n name\n value\n }\n image {\n originalSrc\n altText\n width\n height\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n product {\n id\n handle\n }\n }\n quantity\n }\n }\n }\n }\n`;\n\nconst getCheckoutQuery = /* GraphQL */ `\n query getCheckout($checkoutId: ID!) {\n node(id: $checkoutId) {\n ...checkoutDetails\n }\n }\n ${checkoutDetailsFragment}\n`;\nexport default getCheckoutQuery;\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutCreateMutation = /* GraphQL */ `\n mutation checkoutCreate($input: CheckoutCreateInput = {}) {\n checkoutCreate(input: $input) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutCreateMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added sameSite and secure to the cookie options to allow third-party cookies.\n\t We need this to make work on the studio\n*/\nimport Cookies from 'js-cookie'\n\nimport {\n SHOPIFY_CHECKOUT_ID_COOKIE,\n SHOPIFY_CHECKOUT_URL_COOKIE,\n SHOPIFY_COOKIE_EXPIRE,\n} from '../const'\n\nimport checkoutCreateMutation from './mutations/checkout-create'\nimport {\n CheckoutCreatePayload,\n CheckoutLineItemInput,\n Mutation,\n MutationCheckoutCreateArgs,\n} from '../schema'\nimport { FetcherOptions } from '@plasmicpkgs/commerce'\n\nexport const checkoutCreate = async (\n fetch: <T = any, B = Body>(options: FetcherOptions<B>) => Promise<T>,\n lineItems: CheckoutLineItemInput[]\n): Promise<CheckoutCreatePayload> => {\n const { checkoutCreate } = await fetch<Mutation, MutationCheckoutCreateArgs>({\n query: checkoutCreateMutation,\n variables: {\n input: { lineItems },\n },\n })\n\n const checkout = checkoutCreate?.checkout\n if (checkout) {\n const checkoutId = checkout?.id\n const options: Cookies.CookieAttributes = {\n expires: SHOPIFY_COOKIE_EXPIRE,\n sameSite: \"none\",\n secure: true\n }\n Cookies.set(SHOPIFY_CHECKOUT_ID_COOKIE, checkoutId, options);\n if (checkout?.webUrl) {\n Cookies.set(SHOPIFY_CHECKOUT_URL_COOKIE, checkout.webUrl, options)\n }\n }\n\n return checkoutCreate!\n}\n\nexport default checkoutCreate\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nexport const colorMap: Record<string, string> = {\n aliceblue: '#F0F8FF',\n antiquewhite: '#FAEBD7',\n aqua: '#00FFFF',\n aquamarine: '#7FFFD4',\n azure: '#F0FFFF',\n beige: '#F5F5DC',\n bisque: '#FFE4C4',\n black: '#000000',\n blanchedalmond: '#FFEBCD',\n blue: '#0000FF',\n blueviolet: '#8A2BE2',\n brown: '#A52A2A',\n burlywood: '#DEB887',\n burgandy: '#800020',\n burgundy: '#800020',\n cadetblue: '#5F9EA0',\n chartreuse: '#7FFF00',\n chocolate: '#D2691E',\n coral: '#FF7F50',\n cornflowerblue: '#6495ED',\n cornsilk: '#FFF8DC',\n crimson: '#DC143C',\n cyan: '#00FFFF',\n darkblue: '#00008B',\n darkcyan: '#008B8B',\n darkgoldenrod: '#B8860B',\n darkgray: '#A9A9A9',\n darkgreen: '#006400',\n darkgrey: '#A9A9A9',\n darkkhaki: '#BDB76B',\n darkmagenta: '#8B008B',\n darkolivegreen: '#556B2F',\n darkorange: '#FF8C00',\n darkorchid: '#9932CC',\n darkred: '#8B0000',\n darksalmon: '#E9967A',\n darkseagreen: '#8FBC8F',\n darkslateblue: '#483D8B',\n darkslategray: '#2F4F4F',\n darkslategrey: '#2F4F4F',\n darkturquoise: '#00CED1',\n darkviolet: '#9400D3',\n deeppink: '#FF1493',\n deepskyblue: '#00BFFF',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1E90FF',\n firebrick: '#B22222',\n floralwhite: '#FFFAF0',\n forestgreen: '#228B22',\n fuchsia: '#FF00FF',\n gainsboro: '#DCDCDC',\n ghostwhite: '#F8F8FF',\n gold: '#FFD700',\n goldenrod: '#DAA520',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#ADFF2F',\n grey: '#808080',\n honeydew: '#F0FFF0',\n hotpink: '#FF69B4',\n indianred: '#CD5C5C',\n indigo: '#4B0082',\n ivory: '#FFFFF0',\n khaki: '#F0E68C',\n lavender: '#E6E6FA',\n lavenderblush: '#FFF0F5',\n lawngreen: '#7CFC00',\n lemonchiffon: '#FFFACD',\n lightblue: '#ADD8E6',\n lightcoral: '#F08080',\n lightcyan: '#E0FFFF',\n lightgoldenrodyellow: '#FAFAD2',\n lightgray: '#D3D3D3',\n lightgreen: '#90EE90',\n lightgrey: '#D3D3D3',\n lightpink: '#FFB6C1',\n lightsalmon: '#FFA07A',\n lightseagreen: '#20B2AA',\n lightskyblue: '#87CEFA',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#B0C4DE',\n lightyellow: '#FFFFE0',\n lime: '#00FF00',\n limegreen: '#32CD32',\n linen: '#FAF0E6',\n magenta: '#FF00FF',\n maroon: '#800000',\n mediumaquamarine: '#66CDAA',\n mediumblue: '#0000CD',\n mediumorchid: '#BA55D3',\n mediumpurple: '#9370DB',\n mediumseagreen: '#3CB371',\n mediumslateblue: '#7B68EE',\n mediumspringgreen: '#00FA9A',\n mediumturquoise: '#48D1CC',\n mediumvioletred: '#C71585',\n midnightblue: '#191970',\n mintcream: '#F5FFFA',\n mistyrose: '#FFE4E1',\n moccasin: '#FFE4B5',\n navajowhite: '#FFDEAD',\n navy: '#000080',\n oldlace: '#FDF5E6',\n olive: '#808000',\n olivedrab: '#6B8E23',\n orange: '#FFA500',\n orangered: '#FF4500',\n orchid: '#DA70D6',\n palegoldenrod: '#EEE8AA',\n palegreen: '#98FB98',\n paleturquoise: '#AFEEEE',\n palevioletred: '#DB7093',\n papayawhip: '#FFEFD5',\n peachpuff: '#FFDAB9',\n peru: '#CD853F',\n pink: '#FFC0CB',\n plum: '#DDA0DD',\n powderblue: '#B0E0E6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#FF0000',\n rosybrown: '#BC8F8F',\n royalblue: '#4169E1',\n saddlebrown: '#8B4513',\n salmon: '#FA8072',\n sandybrown: '#F4A460',\n seagreen: '#2E8B57',\n seashell: '#FFF5EE',\n sienna: '#A0522D',\n silver: '#C0C0C0',\n skyblue: '#87CEEB',\n slateblue: '#6A5ACD',\n slategray: '#708090',\n slategrey: '#708090',\n spacegrey: '#65737e',\n spacegray: '#65737e',\n snow: '#FFFAFA',\n springgreen: '#00FF7F',\n steelblue: '#4682B4',\n tan: '#D2B48C',\n teal: '#008080',\n thistle: '#D8BFD8',\n tomato: '#FF6347',\n turquoise: '#40E0D0',\n violet: '#EE82EE',\n wheat: '#F5DEB3',\n white: '#FFFFFF',\n whitesmoke: '#F5F5F5',\n yellow: '#FFFF00',\n yellowgreen: '#9ACD32',\n}\n","/* eslint-disable */\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - When a product doesn't have a variant, Shopify sets the default variant title as \"Default Title\"\n Changed to \"Default Variant\" to have the same default title as the Swell provider.\n*/\nimport type { Page } from \"../types/page\";\nimport type { Product } from \"@plasmicpkgs/commerce\";\nimport type { Cart, LineItem } from \"../types/cart\";\n\nimport {\n Product as ShopifyProduct,\n Checkout,\n CheckoutLineItemEdge,\n SelectedOption,\n Image,\n ImageConnection,\n ProductVariantConnection,\n MoneyV2,\n ProductOption,\n Page as ShopifyPage,\n PageEdge,\n Collection,\n} from \"../schema\";\nimport { colorMap } from \"./colors\";\nimport { Category } from \"../types/site\";\n\nconst money = ({ amount, currencyCode }: MoneyV2) => {\n return {\n value: +amount,\n currencyCode,\n };\n};\n\nconst isDefaultOption = (selectedOption: SelectedOption) =>\n selectedOption.name === \"Title\";\n\nconst normalizeProductOption = ({\n id,\n name: displayName,\n values,\n}: ProductOption) => {\n return {\n __typename: \"MultipleChoiceOption\",\n id,\n displayName: displayName.toLowerCase(),\n values: values.map((value) => {\n let output: any = {\n label: value,\n };\n if (displayName.match(/colou?r/gi)) {\n const mapedColor = colorMap[value.toLowerCase().replace(/ /g, \"\")];\n if (mapedColor) {\n output = {\n ...output,\n hexColors: [mapedColor],\n };\n }\n }\n return output;\n }),\n };\n};\n\nconst normalizeImage = ({ originalSrc: url, ...rest }: Image) => ({\n url,\n ...rest,\n});\n\nconst normalizeProductImages = ({ edges }: ImageConnection) =>\n edges?.map(({ node }) => normalizeImage(node));\n\nconst normalizeProductVariants = ({ edges }: ProductVariantConnection) => {\n return edges?.map(\n ({\n node: {\n id,\n selectedOptions,\n sku,\n title,\n priceV2,\n compareAtPriceV2,\n requiresShipping,\n availableForSale,\n },\n }) => {\n return {\n id,\n name: selectedOptions.some((o) => !isDefaultOption(o))\n ? title\n : \"Default variant\",\n sku: sku ?? id,\n price: +priceV2.amount,\n listPrice: +compareAtPriceV2?.amount,\n requiresShipping,\n availableForSale,\n options: selectedOptions.map(({ name, value }: SelectedOption) => {\n const options = normalizeProductOption({\n id,\n name,\n values: [value],\n });\n\n return options;\n }),\n };\n }\n );\n};\n\nexport function normalizeProduct({\n id,\n title: name,\n vendor,\n images,\n variants,\n description,\n descriptionHtml,\n handle,\n priceRange,\n options,\n metafields,\n ...rest\n}: any): Product {\n return {\n id,\n name,\n vendor,\n path: `/${handle}`,\n slug: handle?.replace(/^\\/+|\\/+$/g, \"\"),\n price: money(priceRange?.minVariantPrice),\n images: normalizeProductImages(images),\n variants: variants ? normalizeProductVariants(variants) : [],\n options: options\n ? options\n .filter((o: any) => !isDefaultOption(o)) // By default Shopify adds a 'Title' name when there's only one option. We don't need it. https://community.shopify.com/c/Shopify-APIs-SDKs/Adding-new-product-variant-is-automatically-adding-quot-Default/td-p/358095\n .map((o: any) => normalizeProductOption(o))\n : [],\n ...(description && { description }),\n ...(descriptionHtml && { descriptionHtml }),\n ...rest,\n };\n}\n\nexport function normalizeCart(checkout: any): Cart {\n return {\n id: checkout.id,\n url: checkout.webUrl,\n customerId: \"\",\n email: \"\",\n createdAt: checkout.createdAt,\n currency: {\n code: checkout.totalPriceV2?.currencyCode,\n },\n taxesIncluded: checkout.taxesIncluded,\n lineItems: checkout.lineItems?.edges.map(normalizeLineItem),\n lineItemsSubtotalPrice: +checkout.subtotalPriceV2?.amount,\n subtotalPrice: +checkout.subtotalPriceV2?.amount,\n totalPrice: +checkout.totalPriceV2?.amount,\n discounts: [],\n };\n}\n\nfunction normalizeLineItem({\n node: { id, title, variant, quantity },\n}: CheckoutLineItemEdge): LineItem {\n return {\n id,\n variantId: String(variant?.id),\n productId: String(variant?.product.id),\n name: `${title}`,\n quantity,\n variant: {\n id: String(variant?.id),\n sku: variant?.sku ?? \"\",\n name: variant?.title!,\n image: {\n url: variant?.image?.originalSrc || \"/product-img-placeholder.svg\",\n },\n requiresShipping: variant?.requiresShipping ?? false,\n price: variant?.priceV2?.amount,\n listPrice: variant?.compareAtPriceV2?.amount,\n },\n path: String(variant?.product?.handle),\n discounts: [],\n options: variant?.title == \"Default Title\" ? [] : variant?.selectedOptions,\n };\n}\n/*\nexport const normalizePage = (\n { title: name, handle, ...page }: ShopifyPage,\n locale: string = 'en-US'\n): Page => ({\n ...page,\n url: `/${locale}/${handle}`,\n name,\n})\n\nexport const normalizePages = (edges: PageEdge[], locale?: string): Page[] =>\n edges?.map((edge) => normalizePage(edge.node, locale))\n*/\nexport const normalizeCategory = ({\n title: name,\n handle,\n id,\n products,\n image,\n}: Collection): Category => ({\n id,\n name,\n slug: handle,\n path: `/${handle}`,\n isEmpty: products.edges.length === 0,\n images: image ? [normalizeImage(image)] : undefined,\n});\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { ValidationError } from '@plasmicpkgs/commerce'\n\nimport {\n CheckoutErrorCode,\n CheckoutUserError,\n CustomerErrorCode,\n CustomerUserError,\n} from '../schema'\n\nexport type UserErrors = Array<CheckoutUserError | CustomerUserError>\n\nexport type UserErrorCode =\n | CustomerErrorCode\n | CheckoutErrorCode\n | null\n | undefined\n\nconst getCustomMessage = (code: UserErrorCode, message: string) => {\n switch (code) {\n case 'UNIDENTIFIED_CUSTOMER':\n message = 'Cannot find an account that matches the provided credentials'\n break\n }\n return message\n}\n\nexport const throwUserErrors = (errors?: UserErrors) => {\n if (errors && errors.length) {\n throw new ValidationError({\n errors: errors.map(({ code, message }) => ({\n code: code ?? 'validation_error',\n message: getCustomMessage(code, message),\n })),\n })\n }\n}\n\nexport default throwUserErrors\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport type { Cart } from '../types/cart'\nimport { CommerceError } from '@plasmicpkgs/commerce'\n\nimport {\n CheckoutLineItemsAddPayload,\n CheckoutLineItemsRemovePayload,\n CheckoutLineItemsUpdatePayload,\n CheckoutCreatePayload,\n CheckoutUserError,\n Checkout,\n Maybe,\n} from '../schema'\n\nimport { normalizeCart } from './normalize'\nimport throwUserErrors from './throw-user-errors'\n\nexport type CheckoutQuery = {\n checkout: Checkout\n checkoutUserErrors?: Array<CheckoutUserError>\n}\n\nexport type CheckoutPayload =\n | CheckoutLineItemsAddPayload\n | CheckoutLineItemsUpdatePayload\n | CheckoutLineItemsRemovePayload\n | CheckoutCreatePayload\n | CheckoutQuery\n\nconst checkoutToCart = (checkoutPayload?: Maybe<CheckoutPayload>): Cart => {\n throwUserErrors(checkoutPayload?.checkoutUserErrors)\n\n if (!checkoutPayload?.checkout) {\n throw new CommerceError({\n message: 'Missing checkout object from response',\n })\n }\n\n return normalizeCart(checkoutPayload?.checkout)\n}\n\nexport default checkoutToCart\n","export const simpleProductConnection = `\nfragment simpleProductConnection on ProductConnection {\n edges {\n node {\n id\n }\n }\n}\n`;\n\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Fetch image.\n*/\nexport const collectionFieldsFragment = `\n fragment collectionFieldsFragment on Collection {\n id\n title\n handle\n image {\n originalSrc\n altText\n width\n height\n }\n products(first: $first) {\n ...simpleProductConnection\n }\n }\n ${simpleProductConnection}\n`;\n\nexport const getCollectionQueryById = /* GraphQL */ `\n query getSiteCollection($id: ID, $handle: String, $first: Int = 1) {\n collection(id: $id, handle: $handle) {\n ...collectionFieldsFragment\n }\n }\n ${collectionFieldsFragment}\n`;\n","import { collectionFieldsFragment } from \"./get-collection-query\"\n\n/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getSiteCollectionsQuery = /* GraphQL */ `\n query getSiteCollections($first: Int!) {\n collections(first: $first) {\n edges {\n node {\n ...collectionFieldsFragment\n }\n }\n }\n }\n\n ${collectionFieldsFragment}\n`\nexport default getSiteCollectionsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: Added query by product id\n*/\n\nconst productFieldsFragment = `\n fragment productFields on Product {\n id\n handle\n availableForSale\n title\n productType\n vendor\n description\n descriptionHtml\n options {\n id\n name\n values\n }\n priceRange {\n maxVariantPrice {\n amount\n currencyCode\n }\n minVariantPrice {\n amount\n currencyCode\n }\n }\n variants(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n sku\n availableForSale\n requiresShipping\n selectedOptions {\n name\n value\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n }\n }\n }\n images(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n originalSrc\n altText\n width\n height\n }\n }\n }\n }\n`\n\nexport const getProductQueryBySlug = /* GraphQL */ `\n query getProductBySlug($slug: String!) {\n productByHandle(handle: $slug) {\n ...productFields\n }\n }\n\n ${productFieldsFragment}\n`\n\n\nexport const getProductQueryById = /* GraphQL */ `\n query getProductById($id: ID!) {\n product(id: $id) {\n ...productFields\n }\n }\n\n ${productFieldsFragment}\n`\n\nexport default getProductQueryBySlug;","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added variants info to the query\n*/\nexport const productConnectionFragment = /* GraphQL */ `\n fragment productConnection on ProductConnection {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n handle\n title\n vendor\n handle\n description\n descriptionHtml\n priceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n options {\n id\n name\n values\n }\n variants(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n id\n title\n sku\n availableForSale\n requiresShipping\n selectedOptions {\n name\n value\n }\n priceV2 {\n amount\n currencyCode\n }\n compareAtPriceV2 {\n amount\n currencyCode\n }\n }\n }\n }\n images(first: 250) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n originalSrc\n altText\n width\n height\n }\n }\n }\n }\n }\n }\n`\n\nconst getAllProductsQuery = /* GraphQL */ `\n query getAllProducts(\n $first: Int = 250\n $query: String = \"\"\n $sortKey: ProductSortKeys = RELEVANCE\n $reverse: Boolean = false\n ) {\n products(\n first: $first\n sortKey: $sortKey\n reverse: $reverse\n query: $query\n ) {\n ...productConnection\n }\n }\n\n ${productConnectionFragment}\n`\nexport default getAllProductsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nconst getAllProductVendors = /* GraphQL */ `\n query getAllProductVendors($first: Int = 250, $cursor: String) {\n products(first: $first, after: $cursor) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n }\n edges {\n node {\n vendor\n }\n cursor\n }\n }\n }\n`\nexport default getAllProductVendors\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { productConnectionFragment } from './get-all-products-query'\n\nconst getCollectionProductsQuery = /* GraphQL */ `\n query getProductsFromCollection(\n $categoryId: ID!\n $first: Int = 250\n $sortKey: ProductCollectionSortKeys = RELEVANCE\n $reverse: Boolean = false\n ) {\n node(id: $categoryId) {\n id\n ... on Collection {\n products(first: $first, sortKey: $sortKey, reverse: $reverse) {\n ...productConnection\n }\n }\n }\n }\n ${productConnectionFragment}\n`\nexport default getCollectionProductsQuery\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemAddMutation = /* GraphQL */ `\n mutation checkoutLineItemAdd(\n $checkoutId: ID!\n $lineItems: [CheckoutLineItemInput!]!\n ) {\n checkoutLineItemsAdd(checkoutId: $checkoutId, lineItems: $lineItems) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemAddMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemUpdateMutation = /* GraphQL */ `\n mutation checkoutLineItemUpdate(\n $checkoutId: ID!\n $lineItems: [CheckoutLineItemUpdateInput!]!\n ) {\n checkoutLineItemsUpdate(checkoutId: $checkoutId, lineItems: $lineItems) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemUpdateMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { checkoutDetailsFragment } from '../queries/get-checkout-query'\n\nconst checkoutLineItemRemoveMutation = /* GraphQL */ `\n mutation checkoutLineItemRemove($checkoutId: ID!, $lineItemIds: [ID!]!) {\n checkoutLineItemsRemove(\n checkoutId: $checkoutId\n lineItemIds: $lineItemIds\n ) {\n checkoutUserErrors {\n code\n field\n message\n }\n checkout {\n ...checkoutDetails\n }\n }\n }\n ${checkoutDetailsFragment}\n`\nexport default checkoutLineItemRemoveMutation\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Added count as a parameter to input\n*/\nimport { SWRHook, useSearch, UseSearch } from \"@plasmicpkgs/commerce\";\n\nimport {\n CollectionEdge,\n GetAllProductsQuery,\n GetProductsFromCollectionQueryVariables,\n Product as ShopifyProduct,\n ProductEdge,\n} from \"../schema\";\n\nimport {\n getAllProductsQuery,\n getCollectionProductsQuery,\n getSearchVariables,\n normalizeProduct,\n} from \"../utils\";\n\nimport type { SearchProductsHook } from \"@plasmicpkgs/commerce\";\n\nexport type SearchProductsInput = {\n search?: string;\n categoryId?: number;\n brandId?: number;\n sort?: string;\n locale?: string;\n count?: number;\n};\n\nconst useSearchTyped: UseSearch<typeof handler> = useSearch;\nexport default useSearchTyped;\n\nexport const handler: SWRHook<SearchProductsHook> = {\n fetchOptions: {\n query: getAllProductsQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { categoryId, brandId } = input;\n const method = options?.method;\n const variables = getSearchVariables(input);\n let products;\n\n // change the query to getCollectionProductsQuery when categoryId is set\n if (categoryId) {\n const data = await fetch<\n CollectionEdge,\n GetProductsFromCollectionQueryVariables\n >({\n query: getCollectionProductsQuery,\n method,\n variables: {\n ...variables,\n first: undefined,\n },\n });\n // filter on client when brandId & categoryId are set since is not available on collection product query\n products = brandId\n ? data.node?.products?.edges\n ?.filter(\n ({ node: { vendor } }: ProductEdge) =>\n vendor.replace(/\\s+/g, \"-\").toLowerCase() ===\n `${brandId}`.toLowerCase()\n )\n .slice(0, input.count)\n : data.node?.products?.edges.slice(0, input.count);\n } else {\n const data = await fetch<GetAllProductsQuery>({\n query: options.query,\n method,\n variables,\n });\n products = data.products?.edges;\n }\n\n return {\n products: products?.map(({ node }) =>\n normalizeProduct(node as ShopifyProduct)\n ),\n found: !!products?.length,\n };\n },\n useHook:\n ({ useData }) =>\n (input = {}) => {\n return useData({\n input: [\n [\"search\", input.search],\n [\"categoryId\", input.categoryId],\n [\"brandId\", input.brandId],\n [\"sort\", input.sort],\n [\"locale\", input.locale],\n [\"count\", input.count],\n ],\n swrOptions: {\n revalidateOnFocus: false,\n ...input.swrOptions,\n },\n });\n },\n};\n","import { SWRHook } from '@plasmicpkgs/commerce'\nimport { useProduct, UseProduct } from '@plasmicpkgs/commerce'\n\nimport {\n GetProductByIdQuery,\n GetProductBySlugQuery,\n} from '../schema'\n\nimport {\n getProductQuery,\n normalizeProduct,\n} from '../utils'\n\nimport type { GetProductHook } from '@plasmicpkgs/commerce'\nimport { getProductQueryById } from '../utils/queries/get-product-query'\n\nexport type GetProductInput = {\n id?: string\n}\n\nexport default useProduct as UseProduct<typeof handler>\n\nexport const handler: SWRHook<GetProductHook> = {\n fetchOptions: {\n query: getProductQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { id } = input\n if (!id) {\n return null\n }\n\n let product = null;\n if (id.startsWith(\"gid://shopify\")) {\n const data = await fetch<GetProductByIdQuery>({\n query: getProductQueryById,\n variables: { id }\n });\n product = data.product;\n } else {\n const data = await fetch<GetProductBySlugQuery>({\n query: options.query,\n variables: { slug: id }\n });\n\n if (data.productByHandle) {\n product = data.productByHandle;\n }\n }\n\n return product ? normalizeProduct(product) : null;\n },\n useHook:\n ({ useData }) =>\n (input = {}) => {\n return useData({\n input: [\n ['id', input.id],\n ],\n swrOptions: {\n revalidateOnFocus: false,\n ...input.swrOptions,\n },\n })\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useMemo } from 'react'\nimport { useCart as useCommerceCart, UseCart } from '@plasmicpkgs/commerce'\n\nimport { SWRHook } from '@plasmicpkgs/commerce'\nimport { checkoutToCart } from '../utils'\nimport getCheckoutQuery from '../utils/queries/get-checkout-query'\nimport { GetCartHook } from '../types/cart'\nimport Cookies from 'js-cookie'\n\nimport {\n SHOPIFY_CHECKOUT_ID_COOKIE,\n SHOPIFY_CHECKOUT_URL_COOKIE,\n} from '../const'\n\nexport default useCommerceCart as UseCart<typeof handler>\n\nexport const handler: SWRHook<GetCartHook> = {\n fetchOptions: {\n query: getCheckoutQuery,\n },\n async fetcher({ input: { cartId }, options, fetch }) {\n if (cartId) {\n const { node: checkout } = await fetch({\n ...options,\n variables: {\n checkoutId: cartId,\n },\n })\n if (checkout?.completedAt) {\n Cookies.remove(SHOPIFY_CHECKOUT_ID_COOKIE)\n Cookies.remove(SHOPIFY_CHECKOUT_URL_COOKIE)\n return null\n } else {\n return checkoutToCart({\n checkout,\n })\n }\n }\n return null\n },\n useHook:\n ({ useData }) =>\n (input) => {\n const response = useData({\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n })\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.lineItems.length ?? 0) <= 0\n },\n enumerable: true,\n },\n }),\n [response]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useCallback } from 'react'\nimport type { MutationHook } from '@plasmicpkgs/commerce';\nimport { CommerceError } from '@plasmicpkgs/commerce';\nimport { useAddItem, UseAddItem } from '@plasmicpkgs/commerce';\nimport type { AddItemHook } from '../types/cart'\nimport useCart from './use-cart'\n\nimport {\n checkoutLineItemAddMutation,\n getCheckoutId,\n checkoutToCart,\n checkoutCreate,\n} from '../utils'\nimport { Mutation, MutationCheckoutLineItemsAddArgs } from '../schema'\n\nexport default useAddItem as UseAddItem<typeof handler>\n\nexport const handler: MutationHook<AddItemHook> = {\n fetchOptions: {\n query: checkoutLineItemAddMutation,\n },\n async fetcher({ input: item, options, fetch }) {\n if (\n item.quantity &&\n (!Number.isInteger(item.quantity) || item.quantity! < 1)\n ) {\n throw new CommerceError({\n message: 'The item quantity has to be a valid integer greater than 0',\n })\n }\n\n const lineItems = [\n {\n variantId: item.variantId,\n quantity: item.quantity ?? 1,\n },\n ]\n\n let checkoutId = getCheckoutId()\n if (!checkoutId) {\n return checkoutToCart(await checkoutCreate(fetch, lineItems))\n } else {\n const { checkoutLineItemsAdd } = await fetch<\n Mutation,\n MutationCheckoutLineItemsAddArgs\n >({\n ...options,\n variables: {\n checkoutId,\n lineItems,\n },\n })\n return checkoutToCart(checkoutLineItemsAdd)\n }\n },\n useHook:\n ({ fetch }) =>\n () => {\n const { mutate } = useCart()\n return useCallback(\n async function addItem(input) {\n const data = await fetch({ input })\n await mutate(data, false)\n return data\n },\n [fetch, mutate]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport { useCallback } from 'react'\nimport type {\n MutationHookContext,\n HookFetcherContext,\n} from '@plasmicpkgs/commerce'\nimport { ValidationError } from '@plasmicpkgs/commerce'\nimport { useRemoveItem, \n UseRemoveItem,\n} from '@plasmicpkgs/commerce'\nimport type { Cart, LineItem, RemoveItemHook } from '../types/cart'\nimport useCart from './use-cart'\n\nexport type RemoveItemFn<T = any> = T extends LineItem\n ? (input?: RemoveItemActionInput<T>) => Promise<Cart | null | undefined>\n : (input: RemoveItemActionInput<T>) => Promise<Cart | null>\n\nexport type RemoveItemActionInput<T = any> = T extends LineItem\n ? Partial<RemoveItemHook['actionInput']>\n : RemoveItemHook['actionInput']\n\nexport default useRemoveItem as UseRemoveItem<typeof handler>\n\nimport {\n checkoutLineItemRemoveMutation,\n getCheckoutId,\n checkoutToCart,\n} from '../utils'\n\nimport { Mutation, MutationCheckoutLineItemsRemoveArgs } from '../schema'\n\nexport const handler = {\n fetchOptions: {\n query: checkoutLineItemRemoveMutation,\n },\n async fetcher({\n input: { itemId },\n options,\n fetch,\n }: HookFetcherContext<RemoveItemHook>) {\n const data = await fetch<Mutation, MutationCheckoutLineItemsRemoveArgs>({\n ...options,\n variables: { checkoutId: getCheckoutId(), lineItemIds: [itemId] },\n })\n return checkoutToCart(data.checkoutLineItemsRemove)\n },\n useHook:\n ({ fetch }: MutationHookContext<RemoveItemHook>) =>\n <T extends LineItem | undefined = undefined>(ctx: { item?: T } = {}) => {\n const { item } = ctx\n const { mutate } = useCart()\n const removeItem: RemoveItemFn<LineItem> = async (input) => {\n const itemId = input?.id ?? item?.id\n\n if (!itemId) {\n throw new ValidationError({\n message: 'Invalid input used for this operation',\n })\n }\n\n const data = await fetch({ input: { itemId } })\n await mutate(data, false)\n return data\n }\n\n return useCallback(removeItem as RemoveItemFn<T>, [fetch, mutate])\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: None\n*/\nimport type {\n HookFetcherContext,\n MutationHookContext,\n} from \"@plasmicpkgs/commerce\";\nimport {\n useUpdateItem,\n UseUpdateItem,\n ValidationError,\n} from \"@plasmicpkgs/commerce\";\nimport debounce from \"debounce\";\nimport { useCallback } from \"react\";\n\nimport { Mutation, MutationCheckoutLineItemsUpdateArgs } from \"../schema\";\nimport type { LineItem, UpdateItemHook } from \"../types/cart\";\nimport {\n checkoutLineItemUpdateMutation,\n checkoutToCart,\n getCheckoutId,\n} from \"../utils\";\nimport useCart from \"./use-cart\";\nimport { handler as removeItemHandler } from \"./use-remove-item\";\n\nexport type UpdateItemActionInput<T = any> = T extends LineItem\n ? Partial<UpdateItemHook[\"actionInput\"]>\n : UpdateItemHook[\"actionInput\"];\n\nexport default useUpdateItem as UseUpdateItem<typeof handler>;\n\nexport const handler = {\n fetchOptions: {\n query: checkoutLineItemUpdateMutation,\n },\n async fetcher({\n input: { itemId, item },\n options,\n fetch,\n }: HookFetcherContext<UpdateItemHook>) {\n if (Number.isInteger(item.quantity)) {\n // Also allow the update hook to remove an item if the quantity is lower than 1\n if (item.quantity! < 1) {\n return removeItemHandler.fetcher({\n options: removeItemHandler.fetchOptions,\n input: { itemId },\n fetch,\n });\n }\n } else if (item.quantity) {\n throw new ValidationError({\n message: \"The item quantity has to be a valid integer\",\n });\n }\n const { checkoutLineItemsUpdate } = await fetch<\n Mutation,\n MutationCheckoutLineItemsUpdateArgs\n >({\n ...options,\n variables: {\n checkoutId: getCheckoutId(),\n lineItems: [\n {\n id: itemId,\n quantity: item.quantity,\n },\n ],\n },\n });\n\n return checkoutToCart(checkoutLineItemsUpdate);\n },\n useHook:\n ({ fetch }: MutationHookContext<UpdateItemHook>) =>\n <T extends LineItem | undefined = undefined>(\n ctx: {\n item?: T;\n wait?: number;\n } = {}\n ) => {\n const { item } = ctx;\n const { mutate } = useCart() as any;\n\n return useCallback(\n debounce(async (input: UpdateItemActionInput<T>) => {\n const itemId = input.id ?? item?.id;\n if (!itemId || input.quantity == null) {\n throw new ValidationError({\n message: \"Invalid input used for this operation\",\n });\n }\n\n const data = await fetch({\n input: {\n item: {\n quantity: input.quantity,\n },\n itemId,\n },\n });\n await mutate(data, false);\n return data;\n }, ctx.wait ?? 500),\n [fetch, mutate]\n );\n },\n};\n","import { SWRHook, UseCategories, useCategories } from \"@plasmicpkgs/commerce\";\nimport { useMemo } from \"react\";\nimport { CollectionEdge } from \"../schema\";\nimport { GetCategoriesHook } from \"../types/site\";\nimport { getSiteCollectionsQuery, normalizeCategory } from \"../utils\";\nimport { getCollectionQueryById } from \"../utils/queries/get-collection-query\";\n\nexport default useCategories as UseCategories<typeof handler>;\n\nexport const handler: SWRHook<GetCategoriesHook> = {\n fetchOptions: {\n query: getSiteCollectionsQuery,\n },\n async fetcher({ input, options, fetch }) {\n const { categoryId } = input;\n\n if (!categoryId) {\n const data = await fetch({\n query: options.query,\n variables: {\n first: 250,\n },\n });\n return (\n data?.collections?.edges?.map(({ node }: CollectionEdge) =>\n normalizeCategory(node)\n ) ?? []\n );\n } else {\n const data = await fetch({\n query: getCollectionQueryById,\n variables: {\n ...(categoryId.startsWith(\"gid://\")\n ? { id: categoryId }\n : { handle: categoryId }),\n },\n });\n return !!data?.collection ? [normalizeCategory(data?.collection)] : [];\n }\n },\n useHook: ({ useData }) => (input) => {\n const response = useData({\n input: [[\"categoryId\", input?.categoryId]],\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n });\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.length ?? 0) <= 0;\n },\n enumerable: true,\n },\n }),\n [response]\n );\n },\n};\n","import { SWRHook } from '@plasmicpkgs/commerce'\nimport { UseBrands, useBrands } from '@plasmicpkgs/commerce'\nimport { useMemo } from \"react\";\nimport { CollectionEdge, GetAllProductVendorsQuery, GetAllProductVendorsQueryVariables } from \"../schema\";\nimport { GetBrandsHook } from \"../types/site\"\nimport { getAllProductVendors, normalizeCategory } from \"../utils\"\n\nexport default useBrands as UseBrands<typeof handler>\n\nexport const handler: SWRHook<GetBrandsHook> = {\n fetchOptions: {\n query: getAllProductVendors,\n },\n async fetcher({ input, options, fetch }) {\n const data = await fetch<\n GetAllProductVendorsQuery,\n GetAllProductVendorsQueryVariables\n >({\n query: getAllProductVendors,\n variables: {\n first: 250,\n },\n });\n\n let vendorsStrings = data.products.edges.map(({ node: { vendor } }) => vendor)\n return Array.from((new Set(vendorsStrings)).values()).map((v) => {\n const id = v.replace(/\\s+/g, '-').toLowerCase()\n return {\n entityId: id,\n name: v,\n path: `brands/${id}`,\n }\n })\n },\n useHook:\n ({ useData }) =>\n (input) => {\n const response = useData({\n swrOptions: { revalidateOnFocus: false, ...input?.swrOptions },\n })\n return useMemo(\n () =>\n Object.create(response, {\n isEmpty: {\n get() {\n return (response.data?.length ?? 0) <= 0\n },\n enumerable: true,\n },\n }),\n [response]\n )\n },\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Before: The storeDomain and accessToken were defined at build time. \n So this file just implemented a fetcher with these parameters defined.\n - Now: The storeDomain and accessToken are defined at runtime. \n So we have to get the fetcher using these parameters.\n*/\nimport { Fetcher } from '@plasmicpkgs/commerce'\nimport { handleFetchResponse } from './utils'\n\nexport const getFetcher: \n (storeDomain: string, accessToken: string) => Fetcher =\n (storeDomain, accessToken) => {\n return async ({\n url = `https://${storeDomain}/api/2022-04/graphql.json`,\n method = 'POST',\n variables,\n query,\n }) => {\n const { locale, ...vars } = variables ?? {}\n return handleFetchResponse(\n await fetch(url, {\n method,\n body: JSON.stringify({ query, variables: vars }),\n headers: {\n 'X-Shopify-Storefront-Access-Token': accessToken,\n 'Content-Type': 'application/json',\n ...(locale && {\n 'Accept-Language': locale,\n }),\n },\n })\n )\n }\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes:\n - Removed authentication, customer and wishlist hooks.\n - Added storeDomain and accessToken parameters.\n*/\nimport { SHOPIFY_CHECKOUT_ID_COOKIE } from './const'\nimport { handler as useSearch } from './product/use-search'\nimport { handler as useProduct } from './product/use-product'\nimport { handler as useCart } from './cart/use-cart'\nimport { handler as useAddItem } from './cart/use-add-item'\nimport { handler as useUpdateItem } from './cart/use-update-item'\nimport { handler as useRemoveItem } from './cart/use-remove-item'\nimport { handler as useCategories } from './site/use-categories'\nimport { handler as useBrands } from './site/use-brands'\nimport { getFetcher } from './fetcher'\nimport { Fetcher } from '@plasmicpkgs/commerce'\n\nexport const getShopifyProvider = (storeDomain: string, accessToken: string) => (\n {\n locale: 'en-us',\n cartCookie: SHOPIFY_CHECKOUT_ID_COOKIE,\n cart: { useCart, useAddItem, useUpdateItem, useRemoveItem },\n fetcher: getFetcher(storeDomain, accessToken),\n products: { useSearch, useProduct },\n site: { useCategories, useBrands }\n }\n)\n\nexport type ShopifyProvider = {\n locale: string;\n cartCookie: string;\n fetcher: Fetcher;\n cart: {\n useCart: typeof useCart;\n useAddItem: typeof useAddItem;\n useUpdateItem: typeof useUpdateItem;\n useRemoveItem: typeof useRemoveItem\n };\n products: {\n useSearch: typeof useSearch\n useProduct: typeof useProduct\n };\n site: {\n useCategories: typeof useCategories\n useBrands: typeof useBrands\n }\n}\n","/*\n Forked from https://github.com/vercel/commerce/tree/main/packages/shopify/src\n Changes: \n - Added storeDomain and accessToken parameters.\n*/\nimport {\n getCommerceProvider as getCoreCommerceProvider,\n useCommerce as useCoreCommerce,\n} from '@plasmicpkgs/commerce'\nimport { getShopifyProvider, ShopifyProvider } from './provider'\n\nexport type { ShopifyProvider }\n\nexport const useCommerce = () => useCoreCommerce<ShopifyProvider>()\n\nexport const getCommerceProvider = (storeDomain: string, accessToken: string) => \n getCoreCommerceProvider(getShopifyProvider(storeDomain, accessToken))\n\n","import { GlobalContextMeta } from \"@plasmicapp/host\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n CartActionsProvider,\n globalActionsRegistrations,\n} from \"@plasmicpkgs/commerce\";\nimport React from \"react\";\nimport { Registerable } from \"./registerable\";\nimport { getCommerceProvider } from \"./shopify\";\n\ninterface CommerceProviderProps {\n children?: React.ReactNode;\n storeDomain: string;\n accessToken: string;\n}\n\nconst globalContextName = \"plasmic-commerce-shopify-provider\";\n\nexport const commerceProviderMeta: GlobalContextMeta<CommerceProviderProps> = {\n name: globalContextName,\n displayName: \"Shopify Provider\",\n props: {\n storeDomain: {\n type: \"string\",\n defaultValue: \"next-js-store.myshopify.com\",\n },\n accessToken: {\n type: \"string\",\n defaultValue: \"ef7d41c7bf7e1c214074d0d3047bcd7b\",\n },\n },\n ...{ globalActions: globalActionsRegistrations },\n description: `Your store domain usually looks like **storename.myshopify.com**.\n\nFor your access token, get it by following [this video](https://www.youtube.com/watch?v=wB_6cM7tdv4).\n\nSee also the [getting started video](https://www.youtube.com/watch?v=1OJ_gXmta2Q).`,\n importPath: \"@plasmicpkgs/commerce-shopify\",\n importName: \"CommerceProviderComponent\",\n};\n\nexport function CommerceProviderComponent(props: CommerceProviderProps) {\n const { storeDomain, accessToken, children } = props;\n\n const CommerceProvider = React.useMemo(\n () => getCommerceProvider(storeDomain, accessToken),\n [storeDomain, accessToken]\n );\n\n return (\n <CommerceProvider>\n <CartActionsProvider globalContextName={globalContextName}>\n {children}\n </CartActionsProvider>\n </CommerceProvider>\n );\n}\n\nexport function registerCommerceProvider(\n loader?: Registerable,\n customCommerceProviderMeta?: GlobalContextMeta<CommerceProviderProps>\n) {\n const doRegisterComponent: typeof registerGlobalContext = (...args) =>\n loader\n ? loader.registerGlobalContext(...args)\n : registerGlobalContext(...args);\n doRegisterComponent(\n CommerceProviderComponent,\n customCommerceProviderMeta ?? commerceProviderMeta\n );\n}\n","import { Registerable } from \"./registerable\";\nimport { registerCommerceProvider } from \"./registerCommerceProvider\";\nexport * from \"./registerable\";\nexport * from \"./registerCommerceProvider\";\nexport * from \"./shopify\";\n\nexport function registerAll(loader?: Registerable) {\n registerCommerceProvider(loader);\n}\n"],"names":["SHOPIFY_CHECKOUT_ID_COOKIE","SHOPIFY_CHECKOUT_URL_COOKIE","SHOPIFY_COOKIE_EXPIRE","getError","errors","status","_errors","message","FetcherError","getAsyncError","_x","_getAsyncError","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee2","res","data","wrap","_callee2$","_context2","prev","next","json","sent","abrupt","stop","handleFetchResponse","_ref","_callee","_yield$res$json","_callee$","_context","ok","length","_x2","getSortVariables","sort","isCategory","output","sortKey","reverse","getSearchVariables","brandId","search","categoryId","locale","count","query","searchQuery","_extends","first","getCheckoutId","id","Cookies","get","checkoutDetailsFragment","getCheckoutQuery","checkoutCreateMutation","checkoutCreate","fetch","lineItems","_yield$fetch","checkout","checkoutId","options","variables","input","expires","sameSite","secure","set","webUrl","colorMap","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burgandy","burgundy","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","spacegrey","spacegray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","money","amount","currencyCode","value","isDefaultOption","selectedOption","name","normalizeProductOption","_ref2","displayName","values","__typename","toLowerCase","map","label","match","mapedColor","replace","hexColors","normalizeImage","_ref3","url","originalSrc","rest","_objectWithoutPropertiesLoose","_excluded","normalizeProductImages","_ref4","edges","_ref5","node","normalizeProductVariants","_ref6","_ref7","_ref7$node","selectedOptions","sku","title","priceV2","compareAtPriceV2","requiresShipping","availableForSale","some","o","price","listPrice","_ref8","normalizeProduct","_ref9","vendor","images","variants","description","descriptionHtml","handle","priceRange","metafields","_excluded2","path","slug","minVariantPrice","filter","normalizeCart","customerId","email","createdAt","currency","code","_checkout$totalPriceV","totalPriceV2","taxesIncluded","_checkout$lineItems","normalizeLineItem","lineItemsSubtotalPrice","_checkout$subtotalPri","subtotalPriceV2","subtotalPrice","_checkout$subtotalPri2","totalPrice","_checkout$totalPriceV2","discounts","_ref10","_ref10$node","variant","quantity","variantId","String","productId","product","_variant$sku","image","_variant$image","_variant$requiresShip","_variant$priceV","_variant$compareAtPri","_variant$product","normalizeCategory","_ref11","products","isEmpty","undefined","getCustomMessage","throwUserErrors","ValidationError","checkoutToCart","checkoutPayload","checkoutUserErrors","CommerceError","simpleProductConnection","collectionFieldsFragment","getCollectionQueryById","getSiteCollectionsQuery","productFieldsFragment","getProductQueryBySlug","getProductQueryById","productConnectionFragment","getAllProductsQuery","getAllProductVendors","getCollectionProductsQuery","checkoutLineItemAddMutation","checkoutLineItemUpdateMutation","checkoutLineItemRemoveMutation","handler","fetchOptions","fetcher","method","_data$node","slice","_data$node2","_data$products","_products","found","_products2","useHook","useData","swrOptions","revalidateOnFocus","getProductQuery","startsWith","productByHandle","cartId","completedAt","remove","response","useMemo","Object","create","_response$data$lineIt","_response$data","enumerable","item","Number","isInteger","_item$quantity","t0","t1","checkoutLineItemsAdd","_useCart","useCart","mutate","useCallback","_addItem","addItem","itemId","lineItemIds","checkoutLineItemsRemove","ctx","_ctx","removeItem","_input$id","_ref$input","removeItemHandler","checkoutLineItemsUpdate","debounce","_ctx$wait","wait","_data$collections$edg","_data$collections","collections","collection","_response$data$length","vendorsStrings","Array","from","Set","v","entityId","getFetcher","storeDomain","accessToken","_ref$url","_ref$method","vars","body","JSON","stringify","headers","getShopifyProvider","cartCookie","cart","useAddItem","useUpdateItem","useRemoveItem","useSearch","useProduct","site","useCategories","useBrands","useCommerce","useCoreCommerce","getCommerceProvider","getCoreCommerceProvider","globalContextName","commerceProviderMeta","props","type","defaultValue","globalActions","globalActionsRegistrations","importPath","importName","CommerceProviderComponent","children","CommerceProvider","React","CartActionsProvider","registerCommerceProvider","loader","customCommerceProviderMeta","doRegisterComponent","registerGlobalContext","registerAll"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicpkgs/commerce-shopify",
3
- "version": "0.0.189",
3
+ "version": "0.0.191",
4
4
  "description": "Plasmic registration calls for shopify commerce provider",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "analyze": "size-limit --why"
19
19
  },
20
20
  "devDependencies": {
21
- "@plasmicapp/host": "1.0.184",
21
+ "@plasmicapp/host": "1.0.186",
22
22
  "@size-limit/preset-small-lib": "^4.11.0",
23
23
  "@types/debounce": "^1.2.3",
24
24
  "@types/js-cookie": "^3.0.1",
@@ -33,10 +33,10 @@
33
33
  "react": ">=16.8.0"
34
34
  },
35
35
  "dependencies": {
36
- "@plasmicpkgs/commerce": "0.0.182",
36
+ "@plasmicpkgs/commerce": "0.0.184",
37
37
  "@types/react": "^18.0.27",
38
38
  "debounce": "^1.2.1",
39
39
  "js-cookie": "^3.0.5"
40
40
  },
41
- "gitHead": "a8f605abed1743390d128368cf18d42f967f9b8b"
41
+ "gitHead": "c8e66753e8f375487f4dc60f29897496fe889e51"
42
42
  }