chore: complete cart part 2 (#7227)

This commit is contained in:
Carlos R. L. Rodrigues
2024-05-05 10:35:09 -03:00
committed by GitHub
parent c32a31e139
commit aba194de9a
24 changed files with 344 additions and 321 deletions

View File

@@ -0,0 +1,28 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const CartCustomer: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.CUSTOMER,
primaryKey: "id",
foreignKey: "customer_id",
alias: "customer",
},
},
{
serviceName: Modules.CUSTOMER,
relationship: {
serviceName: Modules.CART,
primaryKey: "customer_id",
foreignKey: "id",
alias: "carts",
isList: true,
},
},
],
}

View File

@@ -0,0 +1,43 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const CartProduct: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.PRODUCT,
primaryKey: "id",
foreignKey: "items.product_id",
alias: "product",
},
},
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.PRODUCT,
primaryKey: "id",
foreignKey: "items.variant_id",
alias: "variant",
args: {
methodSuffix: "Variants",
},
},
},
{
serviceName: Modules.PRODUCT,
relationship: {
serviceName: Modules.CART,
primaryKey: "variant_id",
foreignKey: "id",
alias: "cart_items",
isList: true,
args: {
methodSuffix: "LineItems",
},
},
},
],
}

View File

@@ -0,0 +1,28 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const CartRegion: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.REGION,
primaryKey: "id",
foreignKey: "region_id",
alias: "region",
},
},
{
serviceName: Modules.REGION,
relationship: {
serviceName: Modules.CART,
primaryKey: "region_id",
foreignKey: "id",
alias: "carts",
isList: true,
},
},
],
}

View File

@@ -0,0 +1,28 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const CartSalesChannel: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.CART,
relationship: {
serviceName: Modules.SALES_CHANNEL,
primaryKey: "id",
foreignKey: "sales_channel_id",
alias: "sales_channel",
},
},
{
serviceName: Modules.SALES_CHANNEL,
relationship: {
serviceName: Modules.CART,
primaryKey: "sales_channel_id",
foreignKey: "id",
alias: "carts",
isList: true,
},
},
],
}

View File

@@ -0,0 +1,7 @@
export * from "./cart-customer"
export * from "./cart-product"
export * from "./cart-region"
export * from "./cart-sales-channel"
export * from "./inventory-level-stock-location"
export * from "./order-customer"
export * from "./store-default-currency"

View File

@@ -0,0 +1,19 @@
import { ModuleJoinerConfig } from "@medusajs/types"
import { Modules } from "@medusajs/modules-sdk"
export const InventoryLevelStockLocation: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.INVENTORY,
relationship: {
serviceName: Modules.STOCK_LOCATION,
primaryKey: "id",
foreignKey: "location_id",
alias: "stock_locations",
isList: true,
},
},
],
}

View File

@@ -0,0 +1,28 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const OrderCustomer: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.ORDER,
relationship: {
serviceName: Modules.CUSTOMER,
primaryKey: "id",
foreignKey: "customer_id",
alias: "customer",
},
},
{
serviceName: Modules.CUSTOMER,
relationship: {
serviceName: Modules.ORDER,
primaryKey: "customer_id",
foreignKey: "id",
alias: "orders",
isList: true,
},
},
],
}

View File

@@ -0,0 +1,18 @@
import { Modules } from "@medusajs/modules-sdk"
import { ModuleJoinerConfig } from "@medusajs/types"
export const StoreDefaultCurrency: ModuleJoinerConfig = {
isLink: true,
isReadOnlyLink: true,
extends: [
{
serviceName: Modules.STORE,
relationship: {
serviceName: Modules.CURRENCY,
primaryKey: "code",
foreignKey: "default_currency_code",
alias: "default_currency",
},
},
],
}