{"version":3,"sources":["jsdelivr-header.js","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/cart/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/shippingRegion/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/shippingProvider/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/payment/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/getSearch/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/api/getProduct/index.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/helpers/medusaClient.ts","/npm/@react-test-storefront/medusa-api@0.0.4/src/index.ts"],"names":[],"mappings":"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","file":"/npm/@react-test-storefront/medusa-api@0.0.4/lib/index.cjs.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@react-test-storefront/medusa-api@0.0.4/lib/index.cjs.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/* eslint-disable camelcase */\nimport {\n  Cart,\n  AddToCartParams,\n  AddToCartResponse,\n  Context,\n  GetCartParams,\n  UpdateItemParams,\n  RemoveItemParams,\n  UpdateCartParams,\n  CreateCartBody\n} from '../../types';\n\nconst getCart = async (\n  context: Context,\n  params: GetCartParams,\n): Promise<Cart> => {\n  let res = null;\n  try {\n    res = await context.client.get(`/carts/${params.cartId}`);\n  } catch (err) {\n    console.log('Error while getting the cart', err);\n  }\n  return res?.data?.cart || null;\n};\n\nconst createCart = async (\n  context: Context,\n  body: CreateCartBody,\n): Promise<Cart> => {\n  let res = null;\n\n  try {\n    res = await context.client.post('/carts', body);\n  } catch (err) {\n    console.log('Error while creating cart', err);\n  }\n\n  return res?.data?.cart || null;\n};\n\nconst addToCart = async (\n  context: Context,\n  params: AddToCartParams,\n): Promise<AddToCartResponse> => {\n  const { currentCart, quantity, product } = params;\n  const cartId = currentCart.id;\n  const body = {\n    variant_id: product.id,\n    quantity\n  };\n\n  let res = null;\n  try {\n    res = await context.client.post(`/carts/${cartId}/line-items`, body);\n  } catch (error) {\n    console.log('Error while adding to cart', error);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nconst updateItemQty = async (\n  context: Context,\n  params: UpdateItemParams,\n): Promise<Cart> => {\n  const { currentCart, product, quantity } = params;\n  const cartId = currentCart.id;\n  const body = {\n    quantity\n  };\n  let res = null;\n  try {\n    res = await context.client.post(`/carts/${cartId}/line-items/${product.id}`, body);\n  } catch (error) {\n    console.log('Error while updating item quantity', error);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nconst removeItem = async (\n  context: Context,\n  params: RemoveItemParams,\n): Promise<Cart> => {\n  const { currentCart, product } = params;\n  const cartId = currentCart.id;\n\n  let res = null;\n  try {\n    res = await context.client.delete(`/carts/${cartId}/line-items/${product.id}`);\n  } catch (err) {\n    console.log('Error while removing item', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nconst updateCart = async (\n  context: Context,\n  params: UpdateCartParams,\n): Promise<Cart> => {\n  const { currentCart, body } = params;\n  const cartId = currentCart.id;\n  let res = null;\n  try {\n    res = await context.client.post(`/carts/${cartId}`, body);\n  } catch (err) {\n    console.log('Error while updating the cart', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nexport { addToCart, getCart, createCart, updateItemQty, removeItem, updateCart };\n","/* eslint-disable camelcase */\nimport {\n  Cart,\n  Context,\n} from '../../types';\n\nconst getShippingRegion = async (context: Context): Promise<Cart> => {\n  let res = null;\n  try {\n    res = await context.client.get('/regions');\n  } catch (err) {\n    console.log('Error while updating the cart', err);\n  }\n\n  return res?.data?.regions || [];\n};\n\nexport { getShippingRegion };\n","/* eslint-disable camelcase */\nimport {\n  Cart,\n  Context,\n} from '../../types';\n\nconst getShippingProvider = async (context: Context, {\n  is_return,\n  // product_ids,\n  region_id,\n}): Promise<Cart> => {\n  let res = null;\n  try {\n    const searchProps = new URLSearchParams();\n    searchProps.append('is_return', is_return);\n    // searchProps.append('product_ids', product_ids);\n    searchProps.append('region_id', region_id);\n    res = await context.client.get(`/shipping-options?${searchProps.toString()}`);\n  } catch (err) {\n    console.log('Error while updating the cart', err);\n  }\n\n  return res?.data?.shipping_options || [];\n};\n\nconst setShippingProvider = async (context: Context, {\n  currentCart,\n  shippingMethod\n}): Promise<Cart> => {\n  let res = null;\n  try {\n    const body = {\n      option_id: shippingMethod\n    };\n    res = await context.client.post(`/carts/${currentCart.id}/shipping-methods`, body);\n  } catch (err) {\n    console.log('Error while updating the cart', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nexport { getShippingProvider, setShippingProvider };\n","import { CurrentCart, Context, Cart, SelectPaymentParams, DeletePaymentParams } from '../../types';\n\nconst initPaymentSessions = async (\n  context: Context,\n  params: CurrentCart,\n): Promise<Cart> => {\n  const { currentCart } = params;\n  const cartId = currentCart.id;\n  let res = null;\n\n  try {\n    res = await context.client.post(`/carts/${cartId}/payment-sessions`);\n  } catch (err) {\n    console.log('Error while creating a payment session', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nconst selectPaymentSessions = async (\n  context: Context,\n  params: SelectPaymentParams,\n): Promise<Cart> => {\n  const { currentCart, paymentId } = params;\n  const cartId = currentCart.id;\n  let res = null;\n\n  const body = {\n    provider_id: paymentId\n  };\n  try {\n    res = await context.client.post(`/carts/${cartId}/payment-session`, body);\n  } catch (err) {\n    console.log('Error while creating a payment session', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\nconst updatePaymentSessions = async (\n  context: Context,\n  params: SelectPaymentParams,\n): Promise<Cart> => {\n  const { currentCart, paymentId } = params;\n  const cartId = currentCart.id;\n  let res = null;\n\n  const body = {\n    provider_id: paymentId\n  };\n  try {\n    res = await context.client.post(`/carts/${cartId}/payment-session`, body);\n  } catch (err) {\n    console.log('Error while creating a payment session', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\nconst removePaymentSessions = async (\n  context: Context,\n  params: DeletePaymentParams,\n): Promise<Cart> => {\n  const { currentCart, providerId } = params;\n  const cartId = currentCart.id;\n  let res = null;\n\n  try {\n    res = await context.client.delete(`/carts/${cartId}/payment-sessions/${providerId}`);\n  } catch (err) {\n    console.log('Error while deleting a payment session', err);\n  }\n\n  return res?.data?.cart || currentCart;\n};\n\nconst placeOrder = async (\n  context: Context,\n  params: CurrentCart,\n): Promise<Cart> => {\n  const { currentCart } = params;\n  const cartId = currentCart.id;\n  let res = null;\n\n  try {\n    res = await context.client.post(`/carts/${cartId}/complete`);\n  } catch (err) {\n    console.log('Error while placing order', err);\n  }\n\n  return res?.data?.data || null;\n};\n\nexport { initPaymentSessions, selectPaymentSessions, updatePaymentSessions, removePaymentSessions, placeOrder };\n\n","import { getSearchParams, getSearchResponse, Context } from '../../types';\n\nconst getSearch = async (context: Context, params: getSearchParams): Promise<getSearchResponse> => {\n  const res = await context.client.get('/products', { data: params });\n\n  if (res.status === 200) {\n    return res.data;\n  }\n  return [];\n};\n\nexport default getSearch;\n","import { getProductParams, getProductResponse, Context } from '../../types';\n\nconst getProduct = async (context: Context, params: getProductParams): Promise<getProductResponse> => {\n  const urlParams = new URLSearchParams();\n  Object.keys(params).forEach((key) => {\n    if (key === 'slug') {\n      // Use handle instead of slug\n      urlParams.append('handle', params[key]);\n    } else {\n      urlParams.append(key, params[key]);\n    }\n  });\n\n  const res = await context.client.get(`/products?${urlParams ? urlParams.toString() : ''}`);\n\n  if (res.status === 200) {\n    return res.data?.products?.length > 0 ? res.data.products[0] : null;\n  }\n  return null;\n};\n\nexport default getProduct;\n","import axios from 'axios';\n\nexport const medusaClient = ({ apiUrl = null }: { apiUrl: string }) => {\n  const baseURL = apiUrl || 'http://localhost:9000';\n\n  const client = axios.create({\n    baseURL,\n    headers: {\n      // Authorization: 'AUTH TOKEN',\n      'Content-Type': 'application/json'\n    }\n\n  });\n\n  return client;\n};\n","import { apiClientFactory } from '@react-test-storefront/core';\nimport * as api from './api';\nimport type { Setttings } from './types';\nimport { medusaClient } from './helpers/medusaClient';\n\nfunction onCreate(settings: Setttings) {\n  // Init api client\n  const client = medusaClient({ apiUrl: settings.apiUrl });\n\n  return {\n    config: settings,\n    client,\n  };\n}\n\nconst { createApiClient } = apiClientFactory({\n  onCreate,\n  api,\n});\n\nexport { createApiClient };\nexport * from './types';\n"]}