Files
medusa-store/integration-tests/modules/helpers/create-variant-price-set.ts
2024-09-16 06:22:24 -03:00

43 lines
931 B
TypeScript

import {
CreatePriceSetDTO,
IPricingModuleService,
MedusaContainer,
PriceSetDTO,
} from "@medusajs/types"
import { Modules } from "@medusajs/utils"
const defaultPrices = [
{
amount: 3000,
currency_code: "usd",
},
]
export const createVariantPriceSet = async ({
container,
variantId,
prices = defaultPrices,
}: {
container: MedusaContainer
variantId: string
prices?: CreatePriceSetDTO["prices"]
}): Promise<PriceSetDTO> => {
const remoteLink = container.resolve("remoteLink")
const pricingModuleService: IPricingModuleService = container.resolve(
Modules.PRICING
)
const priceSet = await pricingModuleService.createPriceSets({
prices,
})
await remoteLink.create({
[Modules.PRODUCT]: { variant_id: variantId },
[Modules.PRICING]: { price_set_id: priceSet.id },
})
return await pricingModuleService.retrievePriceSet(priceSet.id, {
relations: ["prices"],
})
}