fix(link-modules): generate graphql type of read only links (#9955)
This commit is contained in:
committed by
GitHub
parent
6496789c65
commit
03f4b66b90
7
.changeset/lucky-pets-glow.md
Normal file
7
.changeset/lucky-pets-glow.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
"@medusajs/link-modules": patch
|
||||
"@medusajs/types": patch
|
||||
"@medusajs/utils": patch
|
||||
---
|
||||
|
||||
Generate graph schema with readonly links
|
||||
@@ -67,6 +67,7 @@ medusaIntegrationTestRunner({
|
||||
extends: [
|
||||
{
|
||||
serviceName: "currency",
|
||||
entity: "Currency",
|
||||
fieldAlias: {
|
||||
region: {
|
||||
path: "region_link.region",
|
||||
@@ -85,6 +86,7 @@ medusaIntegrationTestRunner({
|
||||
},
|
||||
{
|
||||
serviceName: "region",
|
||||
entity: "Region",
|
||||
fieldAlias: {
|
||||
currency: {
|
||||
path: "currency_link.currency",
|
||||
@@ -164,6 +166,7 @@ medusaIntegrationTestRunner({
|
||||
extends: [
|
||||
{
|
||||
serviceName: "product",
|
||||
entity: "ProductVariant",
|
||||
fieldAlias: {
|
||||
region: {
|
||||
path: "region_link.region",
|
||||
@@ -182,6 +185,7 @@ medusaIntegrationTestRunner({
|
||||
},
|
||||
{
|
||||
serviceName: "region",
|
||||
entity: "Region",
|
||||
fieldAlias: {
|
||||
product_variant: {
|
||||
path: "product_variant_link.product_variant",
|
||||
@@ -266,6 +270,7 @@ medusaIntegrationTestRunner({
|
||||
extends: [
|
||||
{
|
||||
serviceName: "currency",
|
||||
entity: "Currency",
|
||||
fieldAlias: {
|
||||
region: {
|
||||
path: "region_link.region",
|
||||
@@ -284,6 +289,7 @@ medusaIntegrationTestRunner({
|
||||
},
|
||||
{
|
||||
serviceName: "region",
|
||||
entity: "Region",
|
||||
fieldAlias: {
|
||||
currency: {
|
||||
path: "currency_link.currency",
|
||||
@@ -362,6 +368,7 @@ medusaIntegrationTestRunner({
|
||||
extends: [
|
||||
{
|
||||
serviceName: "currency",
|
||||
entity: "Currency",
|
||||
fieldAlias: {
|
||||
regions: {
|
||||
path: "region_link.region",
|
||||
@@ -380,6 +387,7 @@ medusaIntegrationTestRunner({
|
||||
},
|
||||
{
|
||||
serviceName: "region",
|
||||
entity: "Region",
|
||||
fieldAlias: {
|
||||
currency: {
|
||||
path: "currency_link.currency",
|
||||
|
||||
@@ -48,6 +48,7 @@ export interface JoinerServiceConfig {
|
||||
relationships?: JoinerRelationship[]
|
||||
extends?: {
|
||||
serviceName: string
|
||||
entity?: string
|
||||
relationship: JoinerRelationship
|
||||
}[]
|
||||
/**
|
||||
|
||||
@@ -198,6 +198,7 @@ export type ModuleJoinerConfig = Omit<
|
||||
relationships?: ModuleJoinerRelationship[]
|
||||
extends?: {
|
||||
serviceName: string
|
||||
entity?: string
|
||||
fieldAlias?: Record<
|
||||
string,
|
||||
| string
|
||||
|
||||
@@ -388,6 +388,7 @@ ${serviceBObj.module}: {
|
||||
extends: [
|
||||
{
|
||||
serviceName: serviceAObj.module,
|
||||
entity: serviceAObj.entity,
|
||||
fieldAlias: buildFieldAlias({
|
||||
property: serviceBObj.isList ? pluralize(aliasB) : aliasB,
|
||||
path: aliasB + "_link." + aliasB,
|
||||
@@ -405,6 +406,7 @@ ${serviceBObj.module}: {
|
||||
},
|
||||
{
|
||||
serviceName: serviceBObj.module,
|
||||
entity: serviceBObj.entity,
|
||||
fieldAlias: buildFieldAlias({
|
||||
property: serviceAObj.isList ? pluralize(aliasA) : aliasA,
|
||||
path: aliasA + "_link." + aliasA,
|
||||
@@ -482,6 +484,7 @@ ${serviceBObj.module}: {
|
||||
extends: [
|
||||
{
|
||||
serviceName: serviceAObj.module,
|
||||
entity: serviceAObj.entity,
|
||||
fieldAlias: buildFieldAlias(readOnlyLinkOptions?.shortcut),
|
||||
relationship: {
|
||||
serviceName: serviceBObj.module,
|
||||
|
||||
@@ -40,6 +40,7 @@ export const CartPaymentCollection: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
fieldAlias: {
|
||||
payment_collection: "payment_collection_link.payment_collection",
|
||||
},
|
||||
@@ -52,6 +53,7 @@ export const CartPaymentCollection: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PAYMENT,
|
||||
entity: "PaymentCollection",
|
||||
fieldAlias: {
|
||||
cart: "cart_link.cart",
|
||||
},
|
||||
|
||||
@@ -40,6 +40,7 @@ export const CartPromotion: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
fieldAlias: {
|
||||
promotions: {
|
||||
path: "cart_link.promotions",
|
||||
|
||||
@@ -52,6 +52,7 @@ export const LocationFulfillmentProvider: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.FULFILLMENT,
|
||||
entity: "FulfillmentProvider",
|
||||
relationship: {
|
||||
serviceName: LINKS.LocationFulfillmentProvider,
|
||||
primaryKey: "fulfillment_provider_id",
|
||||
|
||||
@@ -57,6 +57,7 @@ export const LocationFulfillmentSet: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.FULFILLMENT,
|
||||
entity: "FulfillmentSet",
|
||||
fieldAlias: {
|
||||
location: "locations_link.location",
|
||||
},
|
||||
|
||||
@@ -40,6 +40,7 @@ export const OrderCart: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
fieldAlias: {
|
||||
cart: "cart_link.cart",
|
||||
},
|
||||
@@ -52,6 +53,7 @@ export const OrderCart: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
fieldAlias: {
|
||||
order: "order_link.order",
|
||||
},
|
||||
|
||||
@@ -43,6 +43,7 @@ export const OrderClaimPaymentCollection: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "OrderClaim",
|
||||
fieldAlias: {
|
||||
claim_payment_collections: {
|
||||
path: "claim_payment_collections_link.payment_collection",
|
||||
@@ -58,6 +59,7 @@ export const OrderClaimPaymentCollection: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PAYMENT,
|
||||
entity: "PaymentCollection",
|
||||
fieldAlias: {
|
||||
claim: "order_claim_link.order",
|
||||
},
|
||||
|
||||
@@ -43,6 +43,7 @@ export const OrderExchangePaymentCollection: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "OrderExchange",
|
||||
fieldAlias: {
|
||||
exchange_payment_collections: {
|
||||
path: "exchange_payment_collections_link.payment_collection",
|
||||
@@ -58,6 +59,7 @@ export const OrderExchangePaymentCollection: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PAYMENT,
|
||||
entity: "PaymentCollection",
|
||||
fieldAlias: {
|
||||
exchange: "order_exchange_link.order",
|
||||
},
|
||||
|
||||
@@ -40,6 +40,7 @@ export const OrderFulfillment: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
fieldAlias: {
|
||||
fulfillments: {
|
||||
path: "fulfillment_link.fulfillments",
|
||||
@@ -56,6 +57,7 @@ export const OrderFulfillment: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.FULFILLMENT,
|
||||
entity: "Fulfillment",
|
||||
fieldAlias: {
|
||||
order: "order_link.order",
|
||||
},
|
||||
|
||||
@@ -41,6 +41,7 @@ export const OrderPaymentCollection: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
fieldAlias: {
|
||||
payment_collections: {
|
||||
path: "payment_collections_link.payment_collection",
|
||||
@@ -56,6 +57,7 @@ export const OrderPaymentCollection: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PAYMENT,
|
||||
entity: "PaymentCollection",
|
||||
fieldAlias: {
|
||||
order: "order_link.order",
|
||||
},
|
||||
|
||||
@@ -40,8 +40,12 @@ export const OrderPromotion: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
fieldAlias: {
|
||||
promotion: "promotion_link.promotion",
|
||||
promotion: {
|
||||
path: "promotion_link.promotion",
|
||||
isList: true,
|
||||
},
|
||||
},
|
||||
relationship: {
|
||||
serviceName: LINKS.OrderPromotion,
|
||||
@@ -52,6 +56,7 @@ export const OrderPromotion: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PROMOTION,
|
||||
entity: "Promotion",
|
||||
relationship: {
|
||||
serviceName: LINKS.OrderPromotion,
|
||||
primaryKey: "promotion_id",
|
||||
|
||||
@@ -18,7 +18,7 @@ export const ReturnFulfillment: ModuleJoinerConfig = {
|
||||
relationships: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
entity: "Return",
|
||||
primaryKey: "id",
|
||||
foreignKey: "return_id",
|
||||
alias: "return",
|
||||
@@ -40,6 +40,7 @@ export const ReturnFulfillment: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Return",
|
||||
fieldAlias: {
|
||||
return_fulfillments: {
|
||||
path: "return_fulfillment_link.fulfillments",
|
||||
@@ -56,6 +57,7 @@ export const ReturnFulfillment: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.FULFILLMENT,
|
||||
entity: "Fulfillment",
|
||||
relationship: {
|
||||
serviceName: LINKS.OrderFulfillment,
|
||||
primaryKey: "fulfillment_id",
|
||||
|
||||
@@ -42,6 +42,7 @@ export const ProductSalesChannel: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "Product",
|
||||
fieldAlias: {
|
||||
sales_channels: {
|
||||
path: "sales_channels_link.sales_channel",
|
||||
@@ -58,6 +59,7 @@ export const ProductSalesChannel: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
relationship: {
|
||||
serviceName: LINKS.ProductSalesChannel,
|
||||
primaryKey: "sales_channel_id",
|
||||
|
||||
@@ -49,6 +49,7 @@ export const ProductVariantInventoryItem: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "ProductVariant",
|
||||
fieldAlias: {
|
||||
inventory: "inventory_items.inventory",
|
||||
},
|
||||
@@ -62,6 +63,7 @@ export const ProductVariantInventoryItem: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.INVENTORY,
|
||||
entity: "InventoryItem",
|
||||
fieldAlias: {
|
||||
variants: {
|
||||
path: "variant_link.variant",
|
||||
|
||||
@@ -41,6 +41,7 @@ export const ProductVariantPriceSet: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "ProductVariant",
|
||||
fieldAlias: {
|
||||
price_set: "price_set_link.price_set",
|
||||
prices: {
|
||||
@@ -62,6 +63,7 @@ export const ProductVariantPriceSet: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PRICING,
|
||||
entity: "PriceSet",
|
||||
relationship: {
|
||||
serviceName: LINKS.ProductVariantPriceSet,
|
||||
primaryKey: "price_set_id",
|
||||
|
||||
@@ -42,6 +42,7 @@ export const PublishableApiKeySalesChannel: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.API_KEY,
|
||||
entity: "ApiKey",
|
||||
fieldAlias: {
|
||||
sales_channels: {
|
||||
path: "sales_channels_link.sales_channel",
|
||||
@@ -58,6 +59,7 @@ export const PublishableApiKeySalesChannel: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
fieldAlias: {
|
||||
publishable_api_keys: {
|
||||
path: "api_keys_link.api_key",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const CartCustomer: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
relationship: {
|
||||
serviceName: Modules.CUSTOMER,
|
||||
entity: "Customer",
|
||||
@@ -20,6 +21,7 @@ export const CartCustomer: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.CUSTOMER,
|
||||
entity: "Customer",
|
||||
relationship: {
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const CartProduct: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "LineItem",
|
||||
relationship: {
|
||||
serviceName: Modules.PRODUCT,
|
||||
primaryKey: "id",
|
||||
@@ -19,6 +20,7 @@ export const CartProduct: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "LineItem",
|
||||
relationship: {
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "ProductVariant",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const CartRegion: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
relationship: {
|
||||
serviceName: Modules.REGION,
|
||||
entity: "Region",
|
||||
@@ -20,6 +21,7 @@ export const CartRegion: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.REGION,
|
||||
entity: "Region",
|
||||
relationship: {
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const CartSalesChannel: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
relationship: {
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
@@ -20,6 +21,7 @@ export const CartSalesChannel: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
relationship: {
|
||||
serviceName: Modules.CART,
|
||||
entity: "Cart",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const InventoryLevelStockLocation: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.INVENTORY,
|
||||
entity: "InventoryLevel",
|
||||
relationship: {
|
||||
serviceName: Modules.STOCK_LOCATION,
|
||||
entity: "StockLocation",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const LineItemAdjustmentPromotion: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.CART,
|
||||
entity: "LineItemAdjustment",
|
||||
relationship: {
|
||||
serviceName: Modules.PROMOTION,
|
||||
entity: "Promotion",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const OrderCustomer: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
relationship: {
|
||||
serviceName: Modules.CUSTOMER,
|
||||
entity: "Customer",
|
||||
@@ -20,6 +21,7 @@ export const OrderCustomer: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.CUSTOMER,
|
||||
entity: "Customer",
|
||||
relationship: {
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const OrderProduct: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "OrderLineItem",
|
||||
relationship: {
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "Product",
|
||||
@@ -20,6 +21,7 @@ export const OrderProduct: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "OrderLineItem",
|
||||
relationship: {
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "ProductVariant",
|
||||
@@ -33,6 +35,7 @@ export const OrderProduct: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PRODUCT,
|
||||
entity: "ProductVariant",
|
||||
relationship: {
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "OrderLineItem",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const OrderRegion: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
relationship: {
|
||||
serviceName: Modules.REGION,
|
||||
entity: "Region",
|
||||
@@ -20,6 +21,7 @@ export const OrderRegion: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.REGION,
|
||||
entity: "Region",
|
||||
relationship: {
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const OrderSalesChannel: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
relationship: {
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
@@ -20,6 +21,7 @@ export const OrderSalesChannel: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
relationship: {
|
||||
serviceName: Modules.ORDER,
|
||||
entity: "Order",
|
||||
|
||||
@@ -7,6 +7,7 @@ export const StoreCurrencies: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.STORE,
|
||||
entity: "Store",
|
||||
relationship: {
|
||||
serviceName: Modules.CURRENCY,
|
||||
entity: "Currency",
|
||||
|
||||
@@ -38,6 +38,7 @@ export const RegionPaymentProvider: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.REGION,
|
||||
entity: "Region",
|
||||
fieldAlias: {
|
||||
payment_providers: {
|
||||
path: "payment_provider_link.payment_provider",
|
||||
@@ -54,6 +55,7 @@ export const RegionPaymentProvider: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PAYMENT,
|
||||
entity: "PaymentProvider",
|
||||
fieldAlias: {
|
||||
regions: {
|
||||
path: "region_link.region",
|
||||
|
||||
@@ -40,6 +40,7 @@ export const SalesChannelLocation: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.SALES_CHANNEL,
|
||||
entity: "SalesChannel",
|
||||
fieldAlias: {
|
||||
stock_locations: {
|
||||
path: "locations_link.location",
|
||||
@@ -56,6 +57,7 @@ export const SalesChannelLocation: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.STOCK_LOCATION,
|
||||
entity: "StockLocation",
|
||||
fieldAlias: {
|
||||
sales_channels: {
|
||||
path: "sales_channels_link.sales_channel",
|
||||
|
||||
@@ -41,6 +41,7 @@ export const ShippingOptionPriceSet: ModuleJoinerConfig = {
|
||||
extends: [
|
||||
{
|
||||
serviceName: Modules.FULFILLMENT,
|
||||
entity: "ShippingOption",
|
||||
fieldAlias: {
|
||||
prices: {
|
||||
path: "price_set_link.price_set.prices",
|
||||
@@ -60,6 +61,7 @@ export const ShippingOptionPriceSet: ModuleJoinerConfig = {
|
||||
},
|
||||
{
|
||||
serviceName: Modules.PRICING,
|
||||
entity: "PriceSet",
|
||||
relationship: {
|
||||
serviceName: LINKS.ShippingOptionPriceSet,
|
||||
primaryKey: "price_set_id",
|
||||
|
||||
@@ -46,11 +46,7 @@ export function generateGraphQLSchema(
|
||||
)
|
||||
}
|
||||
|
||||
/* const extJoinerConfig = MedusaModule.getJoinerConfig(
|
||||
extend.relationship.serviceName
|
||||
)*/
|
||||
|
||||
const extendedEntityName =
|
||||
let extendedEntityName =
|
||||
extendedModule[extend.serviceName].__joinerConfig.linkableKeys[
|
||||
extend.relationship.primaryKey
|
||||
]
|
||||
@@ -69,11 +65,28 @@ export function generateGraphQLSchema(
|
||||
|
||||
let type = extend.relationship.isList ? `[${entityName}]` : entityName
|
||||
if (joinerConfig?.isReadOnlyLink) {
|
||||
// TODO: In readonly, the relation ship of the extend should be applied on all entities in the module that have the relationshiop foregin key attribute
|
||||
/*type = extend.relationship.isList
|
||||
? `[${extendedEntityName}]`
|
||||
: extendedEntityName*/
|
||||
continue
|
||||
// TODO: In readonly links, the relationship of the extend where entity is undefined has to be applied on all entities in the module that have the relationshiop foreing key attribute (unkown in this context)
|
||||
if (!extend.entity) {
|
||||
continue
|
||||
}
|
||||
|
||||
const rel = extend.relationship
|
||||
const extendedService = MedusaModule.getModuleInstance(rel.serviceName)
|
||||
|
||||
const hasGraphqlSchema =
|
||||
!!extendedService[rel.serviceName].__joinerConfig.schema
|
||||
const relEntity = rel.entity
|
||||
? rel.entity
|
||||
: extendedService[rel.serviceName].__joinerConfig.linkableKeys[
|
||||
rel.primaryKey
|
||||
]
|
||||
|
||||
if (!relEntity || !hasGraphqlSchema) {
|
||||
continue
|
||||
}
|
||||
|
||||
type = rel.isList ? `[${relEntity}]` : relEntity!
|
||||
extendedEntityName = extend.entity
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -86,22 +99,6 @@ export function generateGraphQLSchema(
|
||||
? extend.relationship.isList
|
||||
: config.isList ?? extend.relationship.isList
|
||||
|
||||
// const pathSegments = path.split(",").reverse()
|
||||
|
||||
/*const relationshipMarkerIndex = pathSegments.findIndex((segment) => {
|
||||
return !!joinerConfig.relationships!.find(
|
||||
(relation) => relation.alias === targetEntityAlias
|
||||
)
|
||||
})
|
||||
|
||||
if (relationshipMarkerIndex === -1) {
|
||||
return
|
||||
}*/
|
||||
|
||||
/*const relationshipPropertyPath = pathSegments
|
||||
.slice(0, relationshipMarkerIndex + 1)
|
||||
.reverse()*/
|
||||
|
||||
const targetEntityAlias = path.split(".").pop()
|
||||
|
||||
const targetEntityRelation = joinerConfig.relationships?.find(
|
||||
|
||||
Reference in New Issue
Block a user