@sentecacommerce-theme/lib 0.12.58 → 0.12.62

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.
Files changed (115) hide show
  1. package/dist/cjs/api/myCartApi/index.js +2 -1
  2. package/dist/cjs/api/myCartApi/index.js.map +1 -1
  3. package/dist/cjs/basket/api/index.js +12 -0
  4. package/dist/cjs/basket/api/index.js.map +1 -0
  5. package/dist/cjs/basket/api/mutations/index.js +12 -0
  6. package/dist/cjs/basket/api/mutations/index.js.map +1 -0
  7. package/dist/cjs/basket/api/mutations/useReplaceBasketMutation.js +42 -0
  8. package/dist/cjs/basket/api/mutations/useReplaceBasketMutation.js.map +1 -0
  9. package/dist/cjs/basket/hooks/index.js +20 -0
  10. package/dist/cjs/basket/hooks/index.js.map +1 -0
  11. package/dist/cjs/basket/hooks/useBasketCrossSaleItems.js +57 -0
  12. package/dist/cjs/basket/hooks/useBasketCrossSaleItems.js.map +1 -0
  13. package/dist/cjs/basket/hooks/useReplaceBasket.js +8 -0
  14. package/dist/cjs/basket/hooks/useReplaceBasket.js.map +1 -0
  15. package/dist/cjs/basket/index.js +12 -0
  16. package/dist/cjs/basket/index.js.map +1 -0
  17. package/dist/cjs/index.js +132 -0
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/listing/api/queries/useAggregateQuery.js +11 -6
  20. package/dist/cjs/listing/api/queries/useAggregateQuery.js.map +1 -1
  21. package/dist/cjs/listing/utils/buildCategoryQuery.js +10 -4
  22. package/dist/cjs/listing/utils/buildCategoryQuery.js.map +1 -1
  23. package/dist/cjs/order/api/mutations/index.js +8 -0
  24. package/dist/cjs/order/api/mutations/index.js.map +1 -1
  25. package/dist/cjs/order/api/mutations/useUpdateCustomLineItemMutation.js.map +1 -1
  26. package/dist/cjs/order/api/mutations/useUpdateOrderCustomFieldMutation.js +20 -0
  27. package/dist/cjs/order/api/mutations/useUpdateOrderCustomFieldMutation.js.map +1 -0
  28. package/dist/cjs/order/hooks/index.js +8 -0
  29. package/dist/cjs/order/hooks/index.js.map +1 -1
  30. package/dist/cjs/order/hooks/useUpdateCustomLineItem.js.map +1 -1
  31. package/dist/cjs/order/hooks/useUpdateOrderCustomField.js +13 -0
  32. package/dist/cjs/order/hooks/useUpdateOrderCustomField.js.map +1 -0
  33. package/dist/cjs/user/api/queries/index.js +8 -0
  34. package/dist/cjs/user/api/queries/index.js.map +1 -1
  35. package/dist/cjs/user/api/queries/useGetMyLoyaltyCardQuery.js +24 -0
  36. package/dist/cjs/user/api/queries/useGetMyLoyaltyCardQuery.js.map +1 -0
  37. package/dist/cjs/user/api/utils/getUserToken.js +19 -0
  38. package/dist/cjs/user/api/utils/getUserToken.js.map +1 -0
  39. package/dist/cjs/user/api/utils/index.js +8 -0
  40. package/dist/cjs/user/api/utils/index.js.map +1 -1
  41. package/dist/cjs/user/hooks/index.js +16 -0
  42. package/dist/cjs/user/hooks/index.js.map +1 -1
  43. package/dist/cjs/user/hooks/useGetMyLoyaltyCard.js +13 -0
  44. package/dist/cjs/user/hooks/useGetMyLoyaltyCard.js.map +1 -0
  45. package/dist/cjs/user/hooks/useGetUserToken.js +13 -0
  46. package/dist/cjs/user/hooks/useGetUserToken.js.map +1 -0
  47. package/dist/esm/api/myCartApi/index.js +2 -1
  48. package/dist/esm/api/myCartApi/index.js.map +1 -1
  49. package/dist/esm/basket/api/index.js +2 -0
  50. package/dist/esm/basket/api/index.js.map +1 -0
  51. package/dist/esm/basket/api/mutations/index.js +2 -0
  52. package/dist/esm/basket/api/mutations/index.js.map +1 -0
  53. package/dist/esm/basket/api/mutations/useReplaceBasketMutation.js +17 -0
  54. package/dist/esm/basket/api/mutations/useReplaceBasketMutation.js.map +1 -0
  55. package/dist/esm/basket/hooks/index.js +3 -0
  56. package/dist/esm/basket/hooks/index.js.map +1 -0
  57. package/dist/esm/basket/hooks/useBasketCrossSaleItems.js +25 -0
  58. package/dist/esm/basket/hooks/useBasketCrossSaleItems.js.map +1 -0
  59. package/dist/esm/basket/hooks/useReplaceBasket.js +3 -0
  60. package/dist/esm/basket/hooks/useReplaceBasket.js.map +1 -0
  61. package/dist/esm/basket/index.js +2 -0
  62. package/dist/esm/basket/index.js.map +1 -0
  63. package/dist/esm/index.js +5 -1
  64. package/dist/esm/index.js.map +1 -1
  65. package/dist/esm/listing/api/queries/useAggregateQuery.js +8 -3
  66. package/dist/esm/listing/api/queries/useAggregateQuery.js.map +1 -1
  67. package/dist/esm/listing/utils/buildCategoryQuery.js +10 -4
  68. package/dist/esm/listing/utils/buildCategoryQuery.js.map +1 -1
  69. package/dist/esm/order/api/mutations/index.js +1 -0
  70. package/dist/esm/order/api/mutations/index.js.map +1 -1
  71. package/dist/esm/order/api/mutations/useUpdateCustomLineItemMutation.js.map +1 -1
  72. package/dist/esm/order/api/mutations/useUpdateOrderCustomFieldMutation.js +9 -0
  73. package/dist/esm/order/api/mutations/useUpdateOrderCustomFieldMutation.js.map +1 -0
  74. package/dist/esm/order/hooks/index.js +1 -0
  75. package/dist/esm/order/hooks/index.js.map +1 -1
  76. package/dist/esm/order/hooks/useUpdateCustomLineItem.js.map +1 -1
  77. package/dist/esm/order/hooks/useUpdateOrderCustomField.js +5 -0
  78. package/dist/esm/order/hooks/useUpdateOrderCustomField.js.map +1 -0
  79. package/dist/esm/user/api/queries/index.js +1 -0
  80. package/dist/esm/user/api/queries/index.js.map +1 -1
  81. package/dist/esm/user/api/queries/useGetMyLoyaltyCardQuery.js +11 -0
  82. package/dist/esm/user/api/queries/useGetMyLoyaltyCardQuery.js.map +1 -0
  83. package/dist/esm/user/api/utils/getUserToken.js +8 -0
  84. package/dist/esm/user/api/utils/getUserToken.js.map +1 -0
  85. package/dist/esm/user/api/utils/index.js +1 -0
  86. package/dist/esm/user/api/utils/index.js.map +1 -1
  87. package/dist/esm/user/hooks/index.js +2 -0
  88. package/dist/esm/user/hooks/index.js.map +1 -1
  89. package/dist/esm/user/hooks/useGetMyLoyaltyCard.js +5 -0
  90. package/dist/esm/user/hooks/useGetMyLoyaltyCard.js.map +1 -0
  91. package/dist/esm/user/hooks/useGetUserToken.js +3 -0
  92. package/dist/esm/user/hooks/useGetUserToken.js.map +1 -0
  93. package/dist/types/api/myCartApi/index.d.ts +1 -0
  94. package/dist/types/basket/api/index.d.ts +1 -0
  95. package/dist/types/basket/api/mutations/index.d.ts +1 -0
  96. package/dist/types/basket/api/mutations/useReplaceBasketMutation.d.ts +2 -0
  97. package/dist/types/basket/hooks/index.d.ts +2 -0
  98. package/dist/types/basket/hooks/useBasketCrossSaleItems.d.ts +9 -0
  99. package/dist/types/basket/hooks/useReplaceBasket.d.ts +2 -0
  100. package/dist/types/basket/index.d.ts +1 -0
  101. package/dist/types/index.d.ts +3 -0
  102. package/dist/types/order/api/mutations/index.d.ts +1 -0
  103. package/dist/types/order/api/mutations/useUpdateCustomLineItemMutation.d.ts +2 -5
  104. package/dist/types/order/api/mutations/useUpdateOrderCustomFieldMutation.d.ts +9 -0
  105. package/dist/types/order/hooks/index.d.ts +1 -0
  106. package/dist/types/order/hooks/useUpdateCustomLineItem.d.ts +2 -2
  107. package/dist/types/order/hooks/useUpdateOrderCustomField.d.ts +2 -0
  108. package/dist/types/user/api/queries/index.d.ts +1 -0
  109. package/dist/types/user/api/queries/useGetMyLoyaltyCardQuery.d.ts +5 -0
  110. package/dist/types/user/api/utils/getUserToken.d.ts +1 -0
  111. package/dist/types/user/api/utils/index.d.ts +1 -0
  112. package/dist/types/user/hooks/index.d.ts +2 -0
  113. package/dist/types/user/hooks/useGetMyLoyaltyCard.d.ts +2 -0
  114. package/dist/types/user/hooks/useGetUserToken.d.ts +1 -0
  115. package/package.json +3 -3
@@ -32,7 +32,8 @@ var myCartCacheKeys = {
32
32
  useGetShippingMethods: 'mycart-api-use-get-shippingmethods',
33
33
  useGetAllShippingMethods: 'mycart-api-use-get-all-shippingmethods',
34
34
  useGetPaymentMethods: 'mycart-api-use-get-paymentmethods',
35
- useIsExisting: 'mycart-api-is-existing'
35
+ useIsExisting: 'mycart-api-is-existing',
36
+ useGetCrossSaleItems: 'mycart-api-use-get-cross-sale-products'
36
37
  };
37
38
  exports.myCartCacheKeys = myCartCacheKeys;
38
39
  var LineItemType;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/api/myCartApi/index.ts"],"names":["BASKET_STORAGE_KEY","myCartCacheKeys","useGet","useGetCompact","useGetShippingMethods","useGetAllShippingMethods","useGetPaymentMethods","useIsExisting","LineItemType","MyCartApiFactory","instance","initialise","myCartApi","MyCartAPI","myOrdersApi","MyOrdersAPI","Object","freeze","useGetWithCookies","queryCache","cookies","get","data","setQueryData","usePrefetchCart","e","error","compact","retry","refetchOnMount","refetchOnWindowFocus","compactBasket","productId","variantId","collapseKey","parsedData","identifier","lineItems","getMyShippingMethods","getAvailableShippingMethods","enabled","getPaymentMethods","useAdd","onSuccess","query","values","addLineItem","onMutate","onError","_","__","rollback","params","product","find","p","variant","sku","quantity","offer","price","originalPrice","useAddCustom","addCustomLineItem","fields","customLineItems","useRemove","lineItemId","type","Regular","deleteLineItem","useRemoveCustom","deleteCustomLineItem","useSetQuantity","setLineItemQuantity","dto","useSetPlatformShippingMethod","setPlatformShippingMethod","useUnsetShippingMethod","unsetShippingMethods","useSync","sync","useSetMerchantsShippingMethod","setMerchantsShippingMethods","useSetShippingAddress","setShippingAddress","useSetBillingAddress","setBillingAddress","useAddDiscountCode","setDiscountCode","code","currentCode","discountCodes","c","discountCode","resource","status","codeData","name","promoCodeQueryKey","useRemoveDiscountCode","deleteDiscountCode","undefined","getInstance"],"mappings":"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","sourcesContent":["/* eslint-disable react-hooks/rules-of-hooks */\nimport {\n MyCartAPI,\n ShippingMethodsInfo,\n PaymentMethodsInfo,\n PlatformMethodUpdateDTO,\n OrderDTO,\n MerchantsMethodsUpdateDTO,\n AddressDTO,\n DiscountCodeUpdateDTO,\n LineItemDraftDTO,\n QuantityUpdateDTO,\n DiscountCodeInfoDTO,\n CustomLineItemDraftDTO,\n MyOrdersAPI,\n TaxedPriceDTO,\n CompactBasketDTO,\n} from '@sentecacommerce/sdk'\nimport {\n useQuery,\n QueryResult,\n useQueryCache,\n useMutation,\n MutationResultPair,\n QueryCache,\n} from 'react-query'\nimport { addToCart } from '../../analytics/addToCart'\n\nimport {\n readFromLocalStorage,\n writeToLocalStorage,\n getTranslatableField,\n} from '../../utils'\nimport { getSDKConfig } from '../getSDKConfig'\nimport { syncResponse, getLineItemId, onMutate } from './utils'\n\nimport { queryKey as promoCodeQueryKey } from '../../api.v2/core/misc/promo-code'\n\nexport const BASKET_STORAGE_KEY = '__BASKET__'\n\nexport const myCartCacheKeys = {\n useGet: 'mycart-api-useget',\n useGetCompact: 'mycart-api-use-get-compact',\n useGetShippingMethods: 'mycart-api-use-get-shippingmethods',\n useGetAllShippingMethods: 'mycart-api-use-get-all-shippingmethods',\n useGetPaymentMethods: 'mycart-api-use-get-paymentmethods',\n useIsExisting: 'mycart-api-is-existing',\n}\n\ntype myCartApiType = {\n readonly useGetWithCookies: (\n queryCache: QueryCache,\n cookies: any\n ) => Promise<OrderDTO>\n readonly usePrefetchCart: (\n queryCache: QueryCache\n ) => Promise<OrderDTO | { error: any }>\n readonly useGet: () => QueryResult<OrderDTO, unknown>\n readonly useGetCompact: () => QueryResult<CompactBasket, unknown>\n readonly useIsExisting: (\n productId: string,\n variantId?: string,\n collapseKey?: string\n ) => QueryResult<boolean, unknown>\n readonly useGetShippingMethods: () => QueryResult<\n ShippingMethodsInfo,\n unknown\n >\n readonly useGetAllShippingMethods: () => QueryResult<\n ShippingMethodsInfo,\n unknown\n >\n readonly useGetPaymentMethods: (data?: {\n enabled?: boolean\n }) => QueryResult<PaymentMethodsInfo, unknown>\n readonly useAdd: (\n onSuccess?: () => void,\n query?: {\n storeKey?: string | undefined\n currencyCode?: string | undefined\n languageCode?: string | undefined\n priceListKey?: string | undefined\n time?: number | undefined\n merchantKey?: string | undefined\n expand?: string | undefined\n project?: string | undefined\n }\n ) => MutationResultPair<OrderDTO, unknown, LineItemDraftDTO, unknown>\n readonly useAddCustom: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, CustomLineItemDraftDTO, unknown>\n readonly useRemove: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n { productId: string; variantId?: string; collapseKey?: string },\n unknown\n >\n readonly useRemoveCustom: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n { lineItemId: string; productId: string; variantId: string },\n unknown\n >\n readonly useSetQuantity: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n {\n productId: string\n variantId?: string\n dto: QuantityUpdateDTO\n collapseKey?: string\n },\n unknown\n >\n readonly useSync: (\n onSuccess?: (order: OrderDTO) => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n {\n query?: {\n storeKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n }\n },\n unknown\n >\n readonly useSetPlatformShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, PlatformMethodUpdateDTO, unknown>\n readonly useUnsetShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, unknown, unknown>\n readonly useSetMerchantsShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, MerchantsMethodsUpdateDTO, unknown>\n readonly useSetShippingAddress: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, AddressDTO, unknown>\n readonly useSetBillingAddress: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, AddressDTO, unknown>\n readonly useAddDiscountCode: (\n onSuccess?: () => void,\n onError?: (code: DiscountCodeInfoDTO) => void\n ) => MutationResultPair<OrderDTO, unknown, DiscountCodeUpdateDTO, unknown>\n readonly useRemoveDiscountCode: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, DiscountCodeUpdateDTO, unknown>\n}\n\nexport type CompactBasket = CompactBasketDTO & {\n totalNet: {\n amount: number\n currency: string\n }\n totalGross: {\n amount: number\n currency: string\n }\n lineItems: {\n [productId: string]: {\n // Could be collapse key or variant id\n [identifier: string]: {\n quantity?: number\n lineItemId?: string\n }\n }\n }\n customLineItems: {\n [productId: string]: {\n [identifier: string]: number\n }\n }\n}\n\nenum LineItemType {\n Regular = 'lineItems',\n Custom = 'customLineItems',\n}\n\nexport const MyCartApiFactory = (function () {\n let instance: myCartApiType\n\n function initialise(): Readonly<myCartApiType> {\n const myCartApi = new MyCartAPI(getSDKConfig())\n const myOrdersApi = new MyOrdersAPI(getSDKConfig())\n\n return Object.freeze({\n myCartCacheKeys,\n useGetWithCookies: async (queryCache, cookies) => {\n const data = await new MyCartAPI(getSDKConfig({ cookies })).get()\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n return data\n },\n usePrefetchCart: async (queryCache) => {\n const data = await myCartApi.get().catch((e) => ({ error: e }))\n if (!(data as any).error) {\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n }\n return data\n },\n useGet: () => {\n const queryCache = useQueryCache()\n return useQuery(\n myCartCacheKeys.useGet,\n async () => {\n const data = await myCartApi.get()\n\n writeToLocalStorage(BASKET_STORAGE_KEY, data.compact)\n queryCache.setQueryData(myCartCacheKeys.useGetCompact, data.compact)\n return data\n },\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetCompact: () => {\n return useQuery(myCartCacheKeys.useGetCompact, async () => {\n const compactBasket: CompactBasket = readFromLocalStorage(\n BASKET_STORAGE_KEY\n )\n\n return compactBasket\n })\n },\n useIsExisting: (\n productId: string,\n variantId?: string,\n collapseKey?: string\n ) => {\n return useQuery(\n [myCartCacheKeys.useIsExisting, productId, variantId],\n () => {\n const parsedData = readFromLocalStorage(BASKET_STORAGE_KEY)\n const identifier = (collapseKey ?? variantId) as string\n return !!parsedData?.lineItems?.[productId]?.[identifier]\n }\n )\n },\n useGetShippingMethods: () => {\n return useQuery(\n myCartCacheKeys.useGetShippingMethods,\n async () => myCartApi.getMyShippingMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetAllShippingMethods: () => {\n return useQuery(\n myCartCacheKeys.useGetAllShippingMethods,\n async () => myOrdersApi.getAvailableShippingMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetPaymentMethods: (data = {}) => {\n const { enabled } = data\n return useQuery(\n myCartCacheKeys.useGetPaymentMethods,\n async () => myCartApi.getPaymentMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n enabled,\n }\n )\n },\n useAdd: (onSuccess, query = {}) => {\n const queryCache = useQueryCache()\n\n return useMutation(async (values) => myCartApi.addLineItem(values), {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n // Analytics\n const product = data.lineItems.find(\n (p) => p.productId === params.productId\n )\n product &&\n addToCart(\n product.variant.sku,\n params.quantity,\n product.offer.price || product.offer.originalPrice\n )\n\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n true\n )\n\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useAddCustom: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => myCartApi.addCustomLineItem(values),\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n const compactBasket = data.compact as CompactBasket\n const productId = params.fields.productId as string\n const variantId = params.fields.variantId as string\n\n queryCache.setQueryData(\n [myCartCacheKeys.useIsExisting, productId, variantId],\n compactBasket.customLineItems[productId][variantId]\n )\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useRemove: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => {\n const lineItemId = getLineItemId({\n collapseKey: values?.collapseKey,\n productId: values?.productId,\n variantId: values?.variantId,\n type: LineItemType.Regular,\n })\n return myCartApi.deleteLineItem(lineItemId)\n },\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n syncResponse(queryCache, data)\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n false\n )\n onSuccess?.()\n },\n }\n )\n },\n useRemoveCustom: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => myCartApi.deleteCustomLineItem(values.lineItemId),\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n syncResponse(queryCache, data)\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n 0\n )\n onSuccess?.()\n },\n }\n )\n },\n useSetQuantity: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n async (values) => {\n const lineItemId = getLineItemId({\n collapseKey: values?.collapseKey,\n productId: values?.productId,\n variantId: values?.variantId,\n type: LineItemType.Regular,\n })\n return myCartApi.setLineItemQuantity(lineItemId, values.dto)\n },\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useSetPlatformShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n (values) => myCartApi.setPlatformShippingMethod(values),\n {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useUnsetShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(() => myCartApi.unsetShippingMethods(), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useSync: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.sync(values?.query), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.(data)\n },\n })\n },\n useSetMerchantsShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n (values) => myCartApi.setMerchantsShippingMethods(values),\n {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useSetShippingAddress: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setShippingAddress(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useSetBillingAddress: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setBillingAddress(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useAddDiscountCode: (onSuccess, onError) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setDiscountCode(values), {\n onSuccess: (data, code) => {\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n const currentCode = data.discountCodes.find(\n (c) => c.discountCode.resource?.code === code.code\n )\n\n // currentCode?.discountCode.resource\n // Not optional chained because TS doesn't recognize it can't be undefined\n if (currentCode && currentCode.status !== 'MatchesCart') {\n onError?.(currentCode)\n } else {\n const codeData = {\n code: code.code,\n name: getTranslatableField(\n currentCode?.discountCode.resource.name\n ),\n }\n writeToLocalStorage(promoCodeQueryKey, codeData)\n queryCache.setQueryData(promoCodeQueryKey, codeData)\n onSuccess?.()\n }\n },\n })\n },\n useRemoveDiscountCode: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.deleteDiscountCode(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n writeToLocalStorage(promoCodeQueryKey, undefined)\n queryCache.setQueryData(promoCodeQueryKey, undefined)\n onSuccess?.()\n },\n })\n },\n })\n }\n\n return {\n getInstance: function () {\n if (!instance) {\n instance = initialise()\n }\n\n return instance\n },\n }\n})()\n\nexport const myCartApi = MyCartApiFactory.getInstance()\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/api/myCartApi/index.ts"],"names":["BASKET_STORAGE_KEY","myCartCacheKeys","useGet","useGetCompact","useGetShippingMethods","useGetAllShippingMethods","useGetPaymentMethods","useIsExisting","useGetCrossSaleItems","LineItemType","MyCartApiFactory","instance","initialise","myCartApi","MyCartAPI","myOrdersApi","MyOrdersAPI","Object","freeze","useGetWithCookies","queryCache","cookies","get","data","setQueryData","usePrefetchCart","e","error","compact","retry","refetchOnMount","refetchOnWindowFocus","compactBasket","productId","variantId","collapseKey","parsedData","identifier","lineItems","getMyShippingMethods","getAvailableShippingMethods","enabled","getPaymentMethods","useAdd","onSuccess","query","values","addLineItem","onMutate","onError","_","__","rollback","params","product","find","p","variant","sku","quantity","offer","price","originalPrice","useAddCustom","addCustomLineItem","fields","customLineItems","useRemove","lineItemId","type","Regular","deleteLineItem","useRemoveCustom","deleteCustomLineItem","useSetQuantity","setLineItemQuantity","dto","useSetPlatformShippingMethod","setPlatformShippingMethod","useUnsetShippingMethod","unsetShippingMethods","useSync","sync","useSetMerchantsShippingMethod","setMerchantsShippingMethods","useSetShippingAddress","setShippingAddress","useSetBillingAddress","setBillingAddress","useAddDiscountCode","setDiscountCode","code","currentCode","discountCodes","c","discountCode","resource","status","codeData","name","promoCodeQueryKey","useRemoveDiscountCode","deleteDiscountCode","undefined","getInstance"],"mappings":"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","sourcesContent":["/* eslint-disable react-hooks/rules-of-hooks */\nimport {\n MyCartAPI,\n ShippingMethodsInfo,\n PaymentMethodsInfo,\n PlatformMethodUpdateDTO,\n OrderDTO,\n MerchantsMethodsUpdateDTO,\n AddressDTO,\n DiscountCodeUpdateDTO,\n LineItemDraftDTO,\n QuantityUpdateDTO,\n DiscountCodeInfoDTO,\n CustomLineItemDraftDTO,\n MyOrdersAPI,\n TaxedPriceDTO,\n CompactBasketDTO,\n} from '@sentecacommerce/sdk'\nimport {\n useQuery,\n QueryResult,\n useQueryCache,\n useMutation,\n MutationResultPair,\n QueryCache,\n} from 'react-query'\nimport { addToCart } from '../../analytics/addToCart'\n\nimport {\n readFromLocalStorage,\n writeToLocalStorage,\n getTranslatableField,\n} from '../../utils'\nimport { getSDKConfig } from '../getSDKConfig'\nimport { syncResponse, getLineItemId, onMutate } from './utils'\n\nimport { queryKey as promoCodeQueryKey } from '../../api.v2/core/misc/promo-code'\n\nexport const BASKET_STORAGE_KEY = '__BASKET__'\n\nexport const myCartCacheKeys = {\n useGet: 'mycart-api-useget',\n useGetCompact: 'mycart-api-use-get-compact',\n useGetShippingMethods: 'mycart-api-use-get-shippingmethods',\n useGetAllShippingMethods: 'mycart-api-use-get-all-shippingmethods',\n useGetPaymentMethods: 'mycart-api-use-get-paymentmethods',\n useIsExisting: 'mycart-api-is-existing',\n useGetCrossSaleItems: 'mycart-api-use-get-cross-sale-products',\n}\n\ntype myCartApiType = {\n readonly useGetWithCookies: (\n queryCache: QueryCache,\n cookies: any\n ) => Promise<OrderDTO>\n readonly usePrefetchCart: (\n queryCache: QueryCache\n ) => Promise<OrderDTO | { error: any }>\n readonly useGet: () => QueryResult<OrderDTO, unknown>\n readonly useGetCompact: () => QueryResult<CompactBasket, unknown>\n readonly useIsExisting: (\n productId: string,\n variantId?: string,\n collapseKey?: string\n ) => QueryResult<boolean, unknown>\n readonly useGetShippingMethods: () => QueryResult<\n ShippingMethodsInfo,\n unknown\n >\n readonly useGetAllShippingMethods: () => QueryResult<\n ShippingMethodsInfo,\n unknown\n >\n readonly useGetPaymentMethods: (data?: {\n enabled?: boolean\n }) => QueryResult<PaymentMethodsInfo, unknown>\n readonly useAdd: (\n onSuccess?: () => void,\n query?: {\n storeKey?: string | undefined\n currencyCode?: string | undefined\n languageCode?: string | undefined\n priceListKey?: string | undefined\n time?: number | undefined\n merchantKey?: string | undefined\n expand?: string | undefined\n project?: string | undefined\n }\n ) => MutationResultPair<OrderDTO, unknown, LineItemDraftDTO, unknown>\n readonly useAddCustom: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, CustomLineItemDraftDTO, unknown>\n readonly useRemove: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n { productId: string; variantId?: string; collapseKey?: string },\n unknown\n >\n readonly useRemoveCustom: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n { lineItemId: string; productId: string; variantId: string },\n unknown\n >\n readonly useSetQuantity: (\n onSuccess?: () => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n {\n productId: string\n variantId?: string\n dto: QuantityUpdateDTO\n collapseKey?: string\n },\n unknown\n >\n readonly useSync: (\n onSuccess?: (order: OrderDTO) => void\n ) => MutationResultPair<\n OrderDTO,\n unknown,\n {\n query?: {\n storeKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n }\n },\n unknown\n >\n readonly useSetPlatformShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, PlatformMethodUpdateDTO, unknown>\n readonly useUnsetShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, unknown, unknown>\n readonly useSetMerchantsShippingMethod: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, MerchantsMethodsUpdateDTO, unknown>\n readonly useSetShippingAddress: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, AddressDTO, unknown>\n readonly useSetBillingAddress: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, AddressDTO, unknown>\n readonly useAddDiscountCode: (\n onSuccess?: () => void,\n onError?: (code: DiscountCodeInfoDTO) => void\n ) => MutationResultPair<OrderDTO, unknown, DiscountCodeUpdateDTO, unknown>\n readonly useRemoveDiscountCode: (\n onSuccess?: () => void\n ) => MutationResultPair<OrderDTO, unknown, DiscountCodeUpdateDTO, unknown>\n}\n\nexport type CompactBasket = CompactBasketDTO & {\n totalNet: {\n amount: number\n currency: string\n }\n totalGross: {\n amount: number\n currency: string\n }\n lineItems: {\n [productId: string]: {\n // Could be collapse key or variant id\n [identifier: string]: {\n quantity?: number\n lineItemId?: string\n }\n }\n }\n customLineItems: {\n [productId: string]: {\n [identifier: string]: number\n }\n }\n}\n\nenum LineItemType {\n Regular = 'lineItems',\n Custom = 'customLineItems',\n}\n\nexport const MyCartApiFactory = (function () {\n let instance: myCartApiType\n\n function initialise(): Readonly<myCartApiType> {\n const myCartApi = new MyCartAPI(getSDKConfig())\n const myOrdersApi = new MyOrdersAPI(getSDKConfig())\n\n return Object.freeze({\n myCartCacheKeys,\n useGetWithCookies: async (queryCache, cookies) => {\n const data = await new MyCartAPI(getSDKConfig({ cookies })).get()\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n return data\n },\n usePrefetchCart: async (queryCache) => {\n const data = await myCartApi.get().catch((e) => ({ error: e }))\n if (!(data as any).error) {\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n }\n return data\n },\n useGet: () => {\n const queryCache = useQueryCache()\n return useQuery(\n myCartCacheKeys.useGet,\n async () => {\n const data = await myCartApi.get()\n\n writeToLocalStorage(BASKET_STORAGE_KEY, data.compact)\n queryCache.setQueryData(myCartCacheKeys.useGetCompact, data.compact)\n return data\n },\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetCompact: () => {\n return useQuery(myCartCacheKeys.useGetCompact, async () => {\n const compactBasket: CompactBasket = readFromLocalStorage(\n BASKET_STORAGE_KEY\n )\n\n return compactBasket\n })\n },\n useIsExisting: (\n productId: string,\n variantId?: string,\n collapseKey?: string\n ) => {\n return useQuery(\n [myCartCacheKeys.useIsExisting, productId, variantId],\n () => {\n const parsedData = readFromLocalStorage(BASKET_STORAGE_KEY)\n const identifier = (collapseKey ?? variantId) as string\n return !!parsedData?.lineItems?.[productId]?.[identifier]\n }\n )\n },\n useGetShippingMethods: () => {\n return useQuery(\n myCartCacheKeys.useGetShippingMethods,\n async () => myCartApi.getMyShippingMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetAllShippingMethods: () => {\n return useQuery(\n myCartCacheKeys.useGetAllShippingMethods,\n async () => myOrdersApi.getAvailableShippingMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n }\n )\n },\n useGetPaymentMethods: (data = {}) => {\n const { enabled } = data\n return useQuery(\n myCartCacheKeys.useGetPaymentMethods,\n async () => myCartApi.getPaymentMethods(),\n {\n retry: false,\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n enabled,\n }\n )\n },\n useAdd: (onSuccess, query = {}) => {\n const queryCache = useQueryCache()\n\n return useMutation(async (values) => myCartApi.addLineItem(values), {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n // Analytics\n const product = data.lineItems.find(\n (p) => p.productId === params.productId\n )\n product &&\n addToCart(\n product.variant.sku,\n params.quantity,\n product.offer.price || product.offer.originalPrice\n )\n\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n true\n )\n\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useAddCustom: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => myCartApi.addCustomLineItem(values),\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n const compactBasket = data.compact as CompactBasket\n const productId = params.fields.productId as string\n const variantId = params.fields.variantId as string\n\n queryCache.setQueryData(\n [myCartCacheKeys.useIsExisting, productId, variantId],\n compactBasket.customLineItems[productId][variantId]\n )\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useRemove: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => {\n const lineItemId = getLineItemId({\n collapseKey: values?.collapseKey,\n productId: values?.productId,\n variantId: values?.variantId,\n type: LineItemType.Regular,\n })\n return myCartApi.deleteLineItem(lineItemId)\n },\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n syncResponse(queryCache, data)\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n false\n )\n onSuccess?.()\n },\n }\n )\n },\n useRemoveCustom: (onSuccess) => {\n const queryCache = useQueryCache()\n\n return useMutation(\n async (values) => myCartApi.deleteCustomLineItem(values.lineItemId),\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data, params) => {\n syncResponse(queryCache, data)\n queryCache.setQueryData(\n [\n myCartCacheKeys.useIsExisting,\n params.productId,\n params.variantId,\n ],\n 0\n )\n onSuccess?.()\n },\n }\n )\n },\n useSetQuantity: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n async (values) => {\n const lineItemId = getLineItemId({\n collapseKey: values?.collapseKey,\n productId: values?.productId,\n variantId: values?.variantId,\n type: LineItemType.Regular,\n })\n return myCartApi.setLineItemQuantity(lineItemId, values.dto)\n },\n {\n onMutate: () => onMutate(queryCache),\n onError: (_, __, rollback) => rollback(),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useSetPlatformShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n (values) => myCartApi.setPlatformShippingMethod(values),\n {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useUnsetShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(() => myCartApi.unsetShippingMethods(), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useSync: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.sync(values?.query), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.(data)\n },\n })\n },\n useSetMerchantsShippingMethod: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation(\n (values) => myCartApi.setMerchantsShippingMethods(values),\n {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n }\n )\n },\n useSetShippingAddress: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setShippingAddress(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useSetBillingAddress: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setBillingAddress(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n onSuccess?.()\n },\n })\n },\n useAddDiscountCode: (onSuccess, onError) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.setDiscountCode(values), {\n onSuccess: (data, code) => {\n queryCache.setQueryData(myCartCacheKeys.useGet, data)\n const currentCode = data.discountCodes.find(\n (c) => c.discountCode.resource?.code === code.code\n )\n\n // currentCode?.discountCode.resource\n // Not optional chained because TS doesn't recognize it can't be undefined\n if (currentCode && currentCode.status !== 'MatchesCart') {\n onError?.(currentCode)\n } else {\n const codeData = {\n code: code.code,\n name: getTranslatableField(\n currentCode?.discountCode.resource.name\n ),\n }\n writeToLocalStorage(promoCodeQueryKey, codeData)\n queryCache.setQueryData(promoCodeQueryKey, codeData)\n onSuccess?.()\n }\n },\n })\n },\n useRemoveDiscountCode: (onSuccess) => {\n const queryCache = useQueryCache()\n return useMutation((values) => myCartApi.deleteDiscountCode(values), {\n onMutate: () => onMutate(queryCache),\n onSuccess: (data) => {\n syncResponse(queryCache, data)\n writeToLocalStorage(promoCodeQueryKey, undefined)\n queryCache.setQueryData(promoCodeQueryKey, undefined)\n onSuccess?.()\n },\n })\n },\n })\n }\n\n return {\n getInstance: function () {\n if (!instance) {\n instance = initialise()\n }\n\n return instance\n },\n }\n})()\n\nexport const myCartApi = MyCartApiFactory.getInstance()\n"],"file":"index.js"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _mutations = require("./mutations");
6
+
7
+ Object.keys(_mutations).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _mutations[key]) return;
10
+ exports[key] = _mutations[key];
11
+ });
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/basket/api/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './mutations'\n"],"file":"index.js"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _useReplaceBasketMutation = require("./useReplaceBasketMutation");
6
+
7
+ Object.keys(_useReplaceBasketMutation).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _useReplaceBasketMutation[key]) return;
10
+ exports[key] = _useReplaceBasketMutation[key];
11
+ });
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/basket/api/mutations/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useReplaceBasketMutation'\n"],"file":"index.js"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.useReplaceBasketMutation = void 0;
7
+
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+
12
+ var _reactQuery = require("react-query");
13
+
14
+ var _index = require("../../../index");
15
+
16
+ var useReplaceBasketMutation = function useReplaceBasketMutation() {
17
+ var queryCache = (0, _reactQuery.useQueryCache)();
18
+ return (0, _reactQuery.useMutation)( /*#__PURE__*/function () {
19
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(newBasket) {
20
+ return _regenerator["default"].wrap(function _callee$(_context) {
21
+ while (1) {
22
+ switch (_context.prev = _context.next) {
23
+ case 0:
24
+ queryCache.setQueryData(_index.myCartCacheKeys.useGet, newBasket);
25
+ queryCache.setQueryData(_index.myCartCacheKeys.useGetCompact, newBasket.compact);
26
+
27
+ case 2:
28
+ case "end":
29
+ return _context.stop();
30
+ }
31
+ }
32
+ }, _callee);
33
+ }));
34
+
35
+ return function (_x) {
36
+ return _ref.apply(this, arguments);
37
+ };
38
+ }());
39
+ };
40
+
41
+ exports.useReplaceBasketMutation = useReplaceBasketMutation;
42
+ //# sourceMappingURL=useReplaceBasketMutation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/basket/api/mutations/useReplaceBasketMutation.ts"],"names":["useReplaceBasketMutation","queryCache","newBasket","setQueryData","myCartCacheKeys","useGet","useGetCompact","compact"],"mappings":";;;;;;;;;;;AACA;;AACA;;AAEO,IAAMA,wBAAwB,GAAG,SAA3BA,wBAA2B,GAAM;AAC5C,MAAMC,UAAU,GAAG,gCAAnB;AAEA,SAAO;AAAA,6FAAY,iBAAOC,SAAP;AAAA;AAAA;AAAA;AAAA;AACjBD,cAAAA,UAAU,CAACE,YAAX,CAAwBC,uBAAgBC,MAAxC,EAAgDH,SAAhD;AACAD,cAAAA,UAAU,CAACE,YAAX,CAAwBC,uBAAgBE,aAAxC,EAAuDJ,SAAS,CAACK,OAAjE;;AAFiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAZ;;AAAA;AAAA;AAAA;AAAA,MAAP;AAID,CAPM","sourcesContent":["import React from 'react'\nimport { useMutation, useQueryCache } from 'react-query'\nimport { myCartCacheKeys, OrderDTO } from '../../../index'\n\nexport const useReplaceBasketMutation = () => {\n const queryCache = useQueryCache()\n\n return useMutation(async (newBasket: OrderDTO) => {\n queryCache.setQueryData(myCartCacheKeys.useGet, newBasket)\n queryCache.setQueryData(myCartCacheKeys.useGetCompact, newBasket.compact)\n })\n}\n"],"file":"useReplaceBasketMutation.js"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _useReplaceBasket = require("./useReplaceBasket");
6
+
7
+ Object.keys(_useReplaceBasket).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _useReplaceBasket[key]) return;
10
+ exports[key] = _useReplaceBasket[key];
11
+ });
12
+
13
+ var _useBasketCrossSaleItems = require("./useBasketCrossSaleItems");
14
+
15
+ Object.keys(_useBasketCrossSaleItems).forEach(function (key) {
16
+ if (key === "default" || key === "__esModule") return;
17
+ if (key in exports && exports[key] === _useBasketCrossSaleItems[key]) return;
18
+ exports[key] = _useBasketCrossSaleItems[key];
19
+ });
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/basket/hooks/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './useReplaceBasket'\nexport * from './useBasketCrossSaleItems'\n"],"file":"index.js"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.useBasketCrossSaleItems = void 0;
7
+
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+
12
+ var _react = require("react");
13
+
14
+ var _reactQuery = require("react-query");
15
+
16
+ var _sdk = require("@sentecacommerce/sdk");
17
+
18
+ var _index = require("../../index");
19
+
20
+ var useBasketCrossSaleItems = function useBasketCrossSaleItems() {
21
+ var crossSaleProducts = (0, _reactQuery.useQuery)(_index.myCartCacheKeys.useGetCrossSaleItems, /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
22
+ return _regenerator["default"].wrap(function _callee$(_context) {
23
+ while (1) {
24
+ switch (_context.prev = _context.next) {
25
+ case 0:
26
+ _context.next = 2;
27
+ return (0, _sdk.MyCartGetCrossSaleProducts)();
28
+
29
+ case 2:
30
+ return _context.abrupt("return", _context.sent);
31
+
32
+ case 3:
33
+ case "end":
34
+ return _context.stop();
35
+ }
36
+ }
37
+ }, _callee);
38
+ })));
39
+ return (0, _react.useMemo)(function () {
40
+ var _crossSaleProducts$da;
41
+
42
+ return crossSaleProducts == null ? void 0 : (_crossSaleProducts$da = crossSaleProducts.data) == null ? void 0 : _crossSaleProducts$da.map(function (product) {
43
+ return {
44
+ name: (0, _index.getTranslatableField)(product.name),
45
+ description: (0, _index.getTranslatableField)(product.description),
46
+ slug: (0, _index.getTranslatableField)(product.slug),
47
+ attributeRules: product.attributeRules,
48
+ attributes: product.attributes,
49
+ _id: product._id,
50
+ variants: product.variants
51
+ };
52
+ });
53
+ }, [crossSaleProducts == null ? void 0 : crossSaleProducts.data]);
54
+ };
55
+
56
+ exports.useBasketCrossSaleItems = useBasketCrossSaleItems;
57
+ //# sourceMappingURL=useBasketCrossSaleItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/basket/hooks/useBasketCrossSaleItems.ts"],"names":["useBasketCrossSaleItems","crossSaleProducts","myCartCacheKeys","useGetCrossSaleItems","data","map","product","name","description","slug","attributeRules","attributes","_id","variants"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAGO,IAAMA,uBAAuB,GAAG,SAA1BA,uBAA0B,GAAM;AAC3C,MAAMC,iBAAiB,GAAG,0BACxBC,uBAAgBC,oBADQ,6FAExB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,sCAAlB;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAFwB,GAA1B;AAKA,SAAO,oBACL;AAAA;;AAAA,WACEF,iBADF,6CACEA,iBAAiB,CAAEG,IADrB,qBACE,sBAAyBC,GAAzB,CAA6B,UAACC,OAAD;AAAA,aAAc;AACzCC,QAAAA,IAAI,EAAE,iCAAqBD,OAAO,CAACC,IAA7B,CADmC;AAEzCC,QAAAA,WAAW,EAAE,iCAAqBF,OAAO,CAACE,WAA7B,CAF4B;AAGzCC,QAAAA,IAAI,EAAE,iCAAqBH,OAAO,CAACG,IAA7B,CAHmC;AAIzCC,QAAAA,cAAc,EAAEJ,OAAO,CAACI,cAJiB;AAKzCC,QAAAA,UAAU,EAAEL,OAAO,CAACK,UALqB;AAMzCC,QAAAA,GAAG,EAAEN,OAAO,CAACM,GAN4B;AAOzCC,QAAAA,QAAQ,EAAEP,OAAO,CAACO;AAPuB,OAAd;AAAA,KAA7B,CADF;AAAA,GADK,EAWL,CAACZ,iBAAD,oBAACA,iBAAiB,CAAEG,IAApB,CAXK,CAAP;AAaD,CAnBM","sourcesContent":["import React, { useMemo } from 'react'\nimport { useQuery } from 'react-query'\nimport { MyCartGetCrossSaleProducts } from '@sentecacommerce/sdk'\nimport { getTranslatableField } from '../../index'\nimport { myCartCacheKeys } from '../../index'\n\nexport const useBasketCrossSaleItems = () => {\n const crossSaleProducts = useQuery(\n myCartCacheKeys.useGetCrossSaleItems,\n async () => await MyCartGetCrossSaleProducts()\n )\n\n return useMemo(\n () =>\n crossSaleProducts?.data?.map((product) => ({\n name: getTranslatableField(product.name),\n description: getTranslatableField(product.description),\n slug: getTranslatableField(product.slug),\n attributeRules: product.attributeRules,\n attributes: product.attributes,\n _id: product._id,\n variants: product.variants,\n })),\n [crossSaleProducts?.data]\n )\n}\n"],"file":"useBasketCrossSaleItems.js"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _api = require("../api");
6
+
7
+ exports.useReplaceBasket = _api.useReplaceBasketMutation;
8
+ //# sourceMappingURL=useReplaceBasket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/basket/hooks/useReplaceBasket.ts"],"names":[],"mappings":";;;;AAAA","sourcesContent":["import { useReplaceBasketMutation } from '../api'\nexport { useReplaceBasketMutation as useReplaceBasket }\n"],"file":"useReplaceBasket.js"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _hooks = require("./hooks");
6
+
7
+ Object.keys(_hooks).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _hooks[key]) return;
10
+ exports[key] = _hooks[key];
11
+ });
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/basket/index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './hooks'\n"],"file":"index.js"}