Added initial version of useAddItem

This commit is contained in:
cond0r
2021-02-18 15:04:46 +02:00
parent 7f0c1eb66c
commit 89cc3d0608
8 changed files with 65 additions and 75 deletions

View File

@@ -1,12 +1,12 @@
import { Cart } from '@commerce/types'
import { CommerceError, ValidationError } from '@commerce/utils/errors'
import { ValidationError } from '@commerce/utils/errors'
import { normalizeCart } from '@framework/utils/normalize'
import { Checkout, Maybe, UserError } from '@framework/schema'
import { Checkout, UserError } from '@framework/schema'
const checkoutToCart = (checkoutResponse?: {
const checkoutToCart = (checkoutResponse: {
checkout: Checkout
userErrors?: UserError[]
}): Maybe<Cart> => {
}): Cart => {
const checkout = checkoutResponse?.checkout
const userErrors = checkoutResponse?.userErrors
@@ -16,12 +16,6 @@ const checkoutToCart = (checkoutResponse?: {
})
}
if (!checkout) {
throw new CommerceError({
message: 'Missing checkout details from response cart Response',
})
}
return normalizeCart(checkout)
}

View File

@@ -5,22 +5,22 @@ import { FetchCartInput } from '@commerce/cart/use-cart'
const fetcher: HookFetcherFn<Cart | null, FetchCartInput> = async ({
options,
input: { cartId },
input: { cartId: checkoutId },
fetch,
}) => {
let checkout
if (cartId) {
if (checkoutId) {
const data = await fetch({
...options,
variables: {
cartId,
checkoutId,
},
})
checkout = data?.node
}
if (checkout?.completedAt || !cartId) {
if (checkout?.completedAt || !checkoutId) {
checkout = await checkoutCreate(fetch)
}