feat(medusa): Support deleting prices from a price list by product or variant (#1555)
This commit is contained in:
committed by
GitHub
parent
ad9cfedf04
commit
fa031fd28b
@@ -6,12 +6,16 @@ import {
|
||||
AdminDeletePriceListPricesPricesReq,
|
||||
AdminPriceListDeleteRes,
|
||||
AdminPriceListDeleteBatchRes,
|
||||
AdminPriceListDeleteProductPricesRes,
|
||||
AdminPriceListDeleteVariantPricesRes,
|
||||
} from "@medusajs/medusa"
|
||||
import { Response } from "@medusajs/medusa-js"
|
||||
import { useMutation, UseMutationOptions, useQueryClient } from "react-query"
|
||||
import { useMedusa } from "../../../contexts/medusa"
|
||||
import { buildOptions } from "../../utils/buildOptions"
|
||||
import { adminPriceListKeys } from "./queries"
|
||||
import { adminProductKeys } from "../products"
|
||||
import { adminVariantKeys } from "../variants"
|
||||
|
||||
export const useAdminCreatePriceList = (
|
||||
options?: UseMutationOptions<
|
||||
@@ -118,3 +122,53 @@ export const useAdminDeletePriceListPrices = (
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
export const useAdminDeletePriceListProductPrices = (
|
||||
id: string,
|
||||
productId: string,
|
||||
options?: UseMutationOptions<
|
||||
Response<AdminPriceListDeleteProductPricesRes>,
|
||||
Error
|
||||
>
|
||||
) => {
|
||||
const { client } = useMedusa()
|
||||
const queryClient = useQueryClient()
|
||||
|
||||
return useMutation(
|
||||
() => client.admin.priceLists.deleteProductPrices(id, productId),
|
||||
buildOptions(
|
||||
queryClient,
|
||||
[
|
||||
adminPriceListKeys.detail(id),
|
||||
adminPriceListKeys.lists(),
|
||||
adminProductKeys.detail(productId)
|
||||
],
|
||||
options
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
export const useAdminDeletePriceListVariantPrices = (
|
||||
id: string,
|
||||
variantId: string,
|
||||
options?: UseMutationOptions<
|
||||
Response<AdminPriceListDeleteVariantPricesRes>,
|
||||
Error
|
||||
>
|
||||
) => {
|
||||
const { client } = useMedusa()
|
||||
const queryClient = useQueryClient()
|
||||
|
||||
return useMutation(
|
||||
() => client.admin.priceLists.deleteVariantPrices(id, variantId),
|
||||
buildOptions(
|
||||
queryClient,
|
||||
[
|
||||
adminPriceListKeys.detail(id),
|
||||
adminPriceListKeys.lists(),
|
||||
adminVariantKeys.detail(variantId)
|
||||
],
|
||||
options
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ export const adminPriceListKeys = {
|
||||
"products" as const,
|
||||
{ ...(query || {}) },
|
||||
] as const
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
type PriceListQueryKeys = typeof adminPriceListKeys
|
||||
|
||||
Reference in New Issue
Block a user