diff --git a/packages/cart/src/joiner-config.ts b/packages/cart/src/joiner-config.ts index 2ed36ce06b..840fed9661 100644 --- a/packages/cart/src/joiner-config.ts +++ b/packages/cart/src/joiner-config.ts @@ -1,10 +1,26 @@ import { Modules } from "@medusajs/modules-sdk" import { ModuleJoinerConfig } from "@medusajs/types" import { MapToConfig } from "@medusajs/utils" -import { Cart } from "@models" +import { + Address, + Cart, + LineItem, + LineItemAdjustment, + LineItemTaxLine, + ShippingMethod, + ShippingMethodAdjustment, + ShippingMethodTaxLine, +} from "@models" export const LinkableKeys = { cart_id: Cart.name, + line_item_id: LineItem.name, + shipping_method_id: ShippingMethod.name, + address_id: Address.name, + line_item_adjustment_id: LineItemAdjustment.name, + shipping_method_adjustment_id: ShippingMethodAdjustment.name, + line_item_tax_line_id: LineItemTaxLine.name, + shipping_method_tax_line_id: ShippingMethodTaxLine.name, } const entityLinkableKeysMap: MapToConfig = {} @@ -22,10 +38,61 @@ export const joinerConfig: ModuleJoinerConfig = { serviceName: Modules.CART, primaryKeys: ["id"], linkableKeys: LinkableKeys, - alias: { - name: ["cart", "carts"], - args: { - entity: Cart.name, + alias: [ + { + name: ["cart", "carts"], + args: { + entity: Cart.name, + }, }, - }, + { + name: ["line_item", "line_items"], + args: { + entity: LineItem.name, + methodSuffix: "LineItems", + }, + }, + { + name: ["shipping_method", "shipping_methods"], + args: { + entity: ShippingMethod.name, + methodSuffix: "ShippingMethods", + }, + }, + { + name: ["address", "addresses"], + args: { + entity: Address.name, + methodSuffix: "Addresses", + }, + }, + { + name: ["line_item_adjustment", "line_item_adjustments"], + args: { + entity: LineItemAdjustment.name, + methodSuffix: "LineItemAdjustments", + }, + }, + { + name: ["shipping_method_adjustment", "shipping_method_adjustments"], + args: { + entity: ShippingMethodAdjustment.name, + methodSuffix: "ShippingMethodAdjustments", + }, + }, + { + name: ["line_item_tax_line", "line_item_tax_lines"], + args: { + entity: LineItemTaxLine.name, + methodSuffix: "LineItemTaxLines", + }, + }, + { + name: ["shipping_method_tax_line", "shipping_method_tax_lines"], + args: { + entity: ShippingMethodTaxLine.name, + methodSuffix: "ShippingMethodTaxLines", + }, + }, + ], }