From 4f4dd1dbbff0a48f070c04478d51d5d5a29b2fa4 Mon Sep 17 00:00:00 2001 From: Alessandro Casazza Date: Tue, 24 Aug 2021 18:57:49 +0200 Subject: [PATCH] fix: Update shopping bag --- framework/commercelayer/cart/use-add-item.tsx | 6 ++++-- framework/commercelayer/cart/use-remove-item.tsx | 6 +++++- framework/commercelayer/cart/use-update-item.tsx | 8 +++++--- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/framework/commercelayer/cart/use-add-item.tsx b/framework/commercelayer/cart/use-add-item.tsx index 51b5eaf7d..80ea5bb9a 100644 --- a/framework/commercelayer/cart/use-add-item.tsx +++ b/framework/commercelayer/cart/use-add-item.tsx @@ -1,7 +1,6 @@ import useAddItem, { UseAddItem } from '@commerce/cart/use-add-item' import { MutationHook } from '@commerce/utils/types' import { LineItem, Order } from '@commercelayer/js-sdk' -import setCookie, { getCookie } from '@framework/api/utils/cookies' import getCredentials from '@framework/api/utils/getCredentials' import useCart from '@framework/cart/use-cart' import { useCallback } from 'react' @@ -57,9 +56,12 @@ export const handler: MutationHook = { useHook: ({ fetch }) => () => { + const { mutate } = useCart() return useCallback( async function addItem(input) { - return await fetch({ input }) + const data = await fetch({ input }) + await mutate() + return data }, [fetch] ) diff --git a/framework/commercelayer/cart/use-remove-item.tsx b/framework/commercelayer/cart/use-remove-item.tsx index c4ade3973..6c66ef300 100644 --- a/framework/commercelayer/cart/use-remove-item.tsx +++ b/framework/commercelayer/cart/use-remove-item.tsx @@ -2,6 +2,7 @@ import { MutationHook } from '@commerce/utils/types' import useRemoveItem, { UseRemoveItem } from '@commerce/cart/use-remove-item' import getCredentials from '@framework/api/utils/getCredentials' import { LineItem } from '@commercelayer/js-sdk' +import useCart from '@framework/cart/use-cart' export default useRemoveItem as UseRemoveItem @@ -20,8 +21,11 @@ export const handler: MutationHook = { useHook: ({ fetch }) => () => { + const { mutate } = useCart() return async function removeItem(input) { - return await fetch({ input }) + const data = await fetch({ input }) + await mutate() + return data } }, } diff --git a/framework/commercelayer/cart/use-update-item.tsx b/framework/commercelayer/cart/use-update-item.tsx index 4d2cfcf49..e768b2e99 100644 --- a/framework/commercelayer/cart/use-update-item.tsx +++ b/framework/commercelayer/cart/use-update-item.tsx @@ -1,7 +1,6 @@ import { MutationHook } from '@commerce/utils/types' import useUpdateItem, { UseUpdateItem } from '@commerce/cart/use-update-item' -import useCart from '@commerce/cart/use-cart' -import { useCallback } from 'react' +import useCart from '@framework/cart/use-cart' import getCredentials from '@framework/api/utils/getCredentials' import { LineItem } from '@commercelayer/js-sdk' @@ -47,8 +46,11 @@ export const handler: MutationHook = { useHook: ({ fetch }) => ({ item }) => { + const { mutate } = useCart() return async function updateItem(input) { - return await fetch({ input: { item, ...input } }) + const data = await fetch({ input: { item, ...input } }) + await mutate() + return data } }, }