chore: add cart links to promotions/product (#7428)

This commit is contained in:
Riqwan Thamir
2024-05-23 16:54:09 +02:00
committed by GitHub
parent e632b273b7
commit e3beaf5a29
7 changed files with 51 additions and 10 deletions

View File

@@ -0,0 +1,12 @@
import { ApplicationMethodTypeValues } from "../../promotion"
export interface BasePromotion {
id: string
code?: string
is_automatic?: boolean
application_method?: {
type?: ApplicationMethodTypeValues
value?: number
currency_code?: string
}
}

View File

@@ -1 +1,2 @@
export * from "./admin"
export * from "./store"

View File

@@ -0,0 +1,3 @@
import { BasePromotion } from "./common"
export interface StorePromotion extends BasePromotion {}

View File

@@ -23,9 +23,19 @@ export const defaultStoreCartFields = [
"original_shipping_tax_total",
"original_shipping_tax_subtotal",
"original_shipping_total",
"promotions.id",
"promotions.code",
"promotions.is_automatic",
"promotions.application_method.value",
"promotions.application_method.type",
"promotions.application_method.currency_code",
"items.id",
"items.variant_id",
"items.product_id",
"items.product.categories.id",
"items.product.tags.id",
"items.product.collection_id",
"items.product.type_id",
"items.product_title",
"items.product_description",
"items.product_subtitle",
@@ -47,6 +57,7 @@ export const defaultStoreCartFields = [
"items.tax_lines.provider_id",
"items.adjustments.id",
"items.adjustments.code",
"items.adjustments.promotion_id",
"items.adjustments.amount",
"customer.id",
"customer.email",

View File

@@ -29,26 +29,21 @@ export const CartPromotion: ModuleJoinerConfig = {
serviceName: Modules.PROMOTION,
primaryKey: "id",
foreignKey: "promotion_id",
alias: "promotion",
alias: "promotions",
},
],
extends: [
{
serviceName: Modules.CART,
fieldAlias: {
promotions: "cart_link.promotions",
},
relationship: {
serviceName: LINKS.CartPromotion,
primaryKey: "cart_id",
foreignKey: "id",
alias: "cart_link",
},
},
{
serviceName: Modules.PROMOTION,
relationship: {
serviceName: LINKS.CartPromotion,
primaryKey: "promotion_id",
foreignKey: "id",
alias: "promotion_link",
isList: true,
},
},
],

View File

@@ -3,6 +3,7 @@ export * from "./cart-product"
export * from "./cart-region"
export * from "./cart-sales-channel"
export * from "./inventory-level-stock-location"
export * from "./line-item-adjustment-promotion"
export * from "./order-customer"
export * from "./order-product"
export * from "./order-sales-channel"

View File

@@ -0,0 +1,18 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const LineItemAdjustmentPromotion: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.PROMOTION,
primaryKey: "id",
foreignKey: "promotion_id",
alias: "promotion",
},
},
],
}