Updated mutation types

This commit is contained in:
Luis Alvarez
2021-03-31 15:48:11 -06:00
parent 06dee5fcab
commit 543054225f
5 changed files with 18 additions and 13 deletions

View File

@@ -3,17 +3,13 @@ import type { MutationHook } from '@commerce/utils/types'
import { CommerceError } from '@commerce/utils/errors'
import useAddItem, { UseAddItem } from '@commerce/cart/use-add-item'
import { normalizeCart } from '../lib/normalize'
import type {
Cart,
BigcommerceCart,
CartItemBody,
AddCartItemBody,
} from '../types'
import type { BigcommerceCart, AddItemHook } from '../types/cart'
import useCart from './use-cart'
export default useAddItem as UseAddItem<typeof handler>
export const handler: MutationHook<Cart, {}, CartItemBody> = {
// export const handler: MutationHook<Cart, {}, CartItemBody> = {
export const handler: MutationHook<AddItemHook> = {
fetchOptions: {
url: '/api/bigcommerce/cart',
method: 'POST',
@@ -28,7 +24,7 @@ export const handler: MutationHook<Cart, {}, CartItemBody> = {
})
}
const data = await fetch<BigcommerceCart, AddCartItemBody>({
const data = await fetch<BigcommerceCart>({
...options,
body: { item },
})

View File

@@ -45,7 +45,13 @@ export type CartItemBody = Core.CartItemBody & {
export type CartHooks = Core.CartHooks & {
getCart: { data: Cart | null }
addItem: { data: Cart; body: { item: CartItemBody } }
addItem: {
data: Cart
body: { item: CartItemBody }
input: CartItemBody
fetchInput: CartItemBody
actionInput: CartItemBody
}
updateItem: { data: Cart; body: { item: CartItemBody } }
removeItem: { data: Cart | null }
}