Gérard Le Cloerec a5de31ae17 feat: disable Wishlist
chore: setup commerce & next config
fix: replace all call to bigcommerce from aquilacms provider
feat add validation to input in signup
2021-04-07 08:46:40 +02:00

42 lines
956 B
TypeScript

import getCartCookie from '../../utils/get-cart-cookie'
import type { CartHandlers } from '..'
import { AquilacmsCart } from '../../../types'
import { normalizeCart } from '../../../lib/normalize'
const updateItem: CartHandlers['updateItem'] = async ({
res,
body: { cartId, itemId, item },
config,
}) => {
if (!cartId || !itemId || !item) {
return res.status(400).json({
data: null,
errors: [{ message: 'Invalid request' }],
})
}
const options = {
method: 'PUT',
body: JSON.stringify({
item: {
_id: itemId,
quantity: item.quantity,
},
cartId,
}),
}
const result: AquilacmsCart = await config.storeApiFetch(
'/v2/cart/updateqty',
options
)
// Update the cart cookie
res.setHeader(
'Set-Cookie',
getCartCookie(config.cartCookie, cartId, config.cartCookieMaxAge)
)
res.status(200).json({ data: normalizeCart(result) })
}
export default updateItem